Khairon 사용 매뉴얼

PDF 다운로드

Khairon 은 SpiderGen 기반 Electron 앱으로, 로컬/원격 LLM과 대화하며 프로젝트 코드를 읽고, 검색하고, 수정하고, 빌드/테스트까지 실행할 수 있는 AI 개발 어시스턴트입니다.

이 문서는 코드 기준(2026-10-14)으로 작성되었습니다. 실제 UI 라벨/동작은 빌드 버전에 따라 다를 수 있습니다.


1. 화면 구성

앱을 실행하면 다음과 같은 구조로 보입니다.

메뉴바

메뉴 항목 설명
File New Session 새 세션(대화) 생성
Open File... / Save File / Close File 파일 열기·저장·닫기 (5절의 코드 뷰어/에디터에서 사용)
Exit 앱 종료
View Session List 세션 목록 패널 표시/숨김
PreChat List 예비 채팅 리스트 패널 표시/숨김 (3-1절 참고)
Build Build Project / Simulate Project SpiderGen 프로젝트 빌드 및 시뮬레이터 실행
Option Settings... General / Lint / Indexing / Logging 탭의 앱·서버 설정 (화면 테마 포함 — 아래 참고)
AI Model... LLM Provider(모델) 등록/편집, OAuth 로그인
MCP Servers... 외부 MCP 서버 등록/편집 — AI 가 쓸 외부 도구 연결 (14절 참고)
Help About 버전 확인 — Version(설치본 버전)과 Release : AS-빌드날짜-패치번호 표시. 문의·버그 신고 때 이 Release 줄을 알려 주세요 (15절 참고)

화면 테마

Option > Settings... 의 General 탭 테마 에서 화면 색을 고를 수 있습니다 — black(기본 · 어두운 배경) · green(밝은 배경의 초록 계열). OK 를 누르면 재시작 없이 바로 바뀌고, 코드 뷰어/에디터(5절) 색도 함께 바뀝니다. 테마를 건드리지 않고 OK 를 누르면 기존 선택이 그대로 유지됩니다.


2. 세션과 작업 폴더(cwd)

한 세션 = 한 탭 = 하나의 작업 폴더(cwd) + 하나의 대화 이력입니다. Claude Code의 "한 세션당 하나의 cwd" 모델과 동일합니다.

  1. File > New Session으로 새 세션을 만듭니다.
  2. 채팅 탭 하단의 📁 폴더 선택 버튼을 눌러 작업할 프로젝트/코드 폴더를 지정합니다.
  3. 처음 선택하는 폴더는 신뢰 확인 다이얼로그가 뜹니다. "Yes"를 선택하면 해당 폴더가 trusted-folders.json에 기록되어, 다음부터는 같은 폴더를 다시 신뢰 확인 없이 사용할 수 있습니다.
  4. 폴더를 신뢰하고 나면, Option > Settings... > Indexing 에서 인덱싱을 켜 둔 경우 폴더 안 .aiassist/samples 자료의 인덱싱이 시작됩니다 (4절 참고). 프로젝트 종류와 무관하게 동작합니다. 프로젝트 소스 코드는 인덱싱하지 않으며 AI가 검색 도구로 직접 찾습니다.
  5. 주의: 대화가 한 번 시작되면(cwd가 잠기면) 같은 세션 안에서는 작업 폴더를 바꿀 수 없습니다. 다른 폴더로 작업하려면 새 세션을 만드세요.
  6. 폴더 안에 *.prj 파일이 있으면 SpiderGen 프로젝트로 자동 인식되어 폴더 표시줄에 [SpiderGen] 마크가 붙고, Build/Simulate 메뉴가 활성화됩니다.
  7. 코드가 없는 폴더도 됩니다. 회의록·기획서·정의서 같은 문서(.md/.txt/.csv와 .xlsx/.pptx/.docx)만 든 폴더를 작업 폴더로 잡고 "이 폴더 문서 전부 읽고 요약해줘"처럼 요청할 수 있습니다. 문서 안의 텍스트 검색도 됩니다(5-1절 참고).

세션 목록(좌측 패널)에서 세션 항목을 더블클릭하면 해당 세션의 대화 이력을 불러와 이어서 대화할 수 있습니다. 모든 메시지는 보낼 때마다 자동으로 로컬에 저장되므로 별도의 "저장" 조작이 필요 없습니다.

세션 이름 바꾸기 — 세션 목록의 항목을 우클릭 → Rename(또는 채팅 탭을 우클릭 → Rename Session)으로 세션에 원하는 이름을 붙일 수 있습니다. 이름을 지정하면 세션 목록·채팅 탭·세션 라벨에 모두 그 이름이 표시됩니다. 입력을 비운 채 저장하면 지정 이름이 지워지고 원래의 자동 이름(첫 메시지 미리보기)으로 돌아갑니다.

2-1. 세션 보관(Archive)

다 쓴 세션을 지우지 않고 목록에서 접어 두는 기능입니다. 보관해도 대화 내용은 그대로 남아 있어 언제든 다시 열어볼 수 있습니다.


3. 기본 대화 사용법

3-1. PreChat List (예비 채팅 리스트)

자주 쓰는 지시나 아직 보낼 준비가 안 된 메시지를 미리 적어 두었다가 필요할 때 채팅으로 보내는 패널입니다. View > PreChat List 로 엽니다.

슬래시(/) 명령

AI의 판단을 거치지 않고 사용자가 직접 실행하는 명령입니다. 채팅 입력창에 /명령 형태로 입력하면 즉시 실행됩니다. 전체 목록은 언제든 /help 로 확인할 수 있습니다.

명령 설명
/find <파일명 일부> [-n 개수] 프로젝트 전체에서 파일명을 검색합니다(find_file 직접 실행, 대소문자 무시·부분 일치). 기본 50건까지 보여주며 더 있으면 limit reached 로 알립니다 — -n 으로 개수를 바꿀 수 있습니다(최대 500). — 예: /find manager, /find .lay -n 200
/grep <검색어> [-n 개수] 프로젝트 전체에서 텍스트를 검색합니다(search_project 직접 실행). 기본 20건까지 표시하며 -n 으로 상향할 수 있습니다(최대 500). 한도에 걸리면 N+ matches (limit reached) 로 표시됩니다. — 예: /grep loadConfig, /grep sendResult -n 100
/outline <파일경로> 파일의 함수/클래스(마크다운은 헤딩) 목록을 라인 번호와 함께 보여줍니다(file_outline 직접 실행). — 예: /outline Source/mdi/AIChatView.js
/tree [경로] [뎁스] 프로젝트 폴더 구조를 들여쓰기 트리로 보여줍니다(project_tree 직접 실행). 경로·뎁스 모두 생략 가능(기본: 루트, 뎁스 3·최대 5). — 예: /tree, /tree Source 2
/open <파일경로> 파일을 코드 뷰어(Monaco, 읽기전용)로 즉시 엽니다 — 분할이 없으면 오른쪽 새 분할에 열립니다. — 예: /open Source/MenuInfo.js
/simulate 빌드된 SpiderGen 프로젝트를 시뮬레이터 창으로 실행합니다(spidergen_simulate 직접 실행). bin/index.html 이 없으면 먼저 빌드하라는 안내가 표시됩니다.
/skill <스킬이름> [요청] 지정한 스킬(6절)을 강제 발동합니다. 다른 슬래시 명령과 달리 AI를 우회하지 않습니다 — 스킬 본문(지침)을 이번 요청에 주입한 뒤 AI가 그 지침에 따라 작업을 계속합니다. AI가 스킬을 자동 발동하지 못할 때 유용합니다. 이름 없이 /skill 만 입력하면 사용 가능한 스킬 목록이 표시됩니다. 주입은 해당 턴에만 적용됩니다. — 예: /skill my_skill 로그인 화면에 적용해줘
/<스킬이름> [요청] 스킬 이름을 곧바로 슬래시 명령으로 쓸 수 있습니다 — /my_skill 로그인 화면에 적용해줘 는 /skill my_skill 로그인 화면에 적용해줘 와 동일합니다. 위 기본 명령과 이름이 겹치지 않는 모든 스킬(내장·프로젝트)에 적용되며, 기본 명령이 항상 우선합니다. 스킬에도 없는 이름이면 일반 대화로 처리됩니다.
/help 사용 가능한 슬래시 명령 전체와 스킬 목록(출처 [내장]/[프로젝트] 표기)을 즉시 보여줍니다.

4. 인덱싱 (Indexing · RAG)

샘플 추가하기

AI가 참고할 자료를 늘리려면 .aiassist/samples/ 아래에 폴더를 만들어 파일을 넣습니다. 아래는 SpiderGen UI 패턴을 넣는 예시이며, 파일 종류나 폴더 구조에 정해진 형식은 없습니다.

ButtonSample/
  _desc.md          (선택) 샘플 설명
  ButtonSample.lay   레이아웃
  ButtonSample.js    스크립트

5. 코드 뷰어 / 에디터 (Monaco)

채팅 중 AI의 툴 호출 카드나 편집 카드에 표시된 파일 경로를 클릭하면 해당 파일이 Monaco 기반 뷰어로 MDI 탭에 열립니다. 세션을 새로 열어 이전 대화를 불러온 뒤에도 동일하게 클릭해서 열 수 있습니다. 채팅 본문에 인라인 코드로 표시된 파일 경로(예: AI 가 보고에서 언급한 파일 목록)도 같은 방식으로 클릭해서 열 수 있습니다.


5-1. 문서 파일 (Excel / PowerPoint / Word / PDF)

AI가 코드 파일처럼 오피스 문서와 PDF를 읽고, 오피스 문서는 고칠 수도 있습니다.


6. Skills (프로젝트별 커스텀 가이드)

Skill은 "이런 요청이 오면 이렇게 처리해라"는 작업 가이드(마크다운 문서)입니다. AI가 매 요청마다 스킬 목록(이름+설명)을 인지하고 있다가, 사용자 요청이 특정 스킬 설명과 맞아떨어지면 use_skill 도구로 본문 전체를 불러와 그 지침을 따릅니다.

내장 스킬

앱이 기본 제공하는 내장 스킬은 프로젝트 스킬과 한 목록으로 합쳐져 노출됩니다(/help 에서 [내장] 표기). 프로젝트에 같은 name 의 스킬을 만들면 프로젝트 것이 우선합니다(내장 스킬을 프로젝트 사정에 맞게 덮어쓰는 방법).

현재 내장 스킬은 create_agent 하나입니다 — "코드 조사만 하는 에이전트 만들어줘"처럼 요청하면 AI 가 이 스킬을 읽고 13절의 에이전트 정의 파일을 올바른 위치·형식으로 만들어 줍니다.

저장 위치

작업 폴더를 처음 선택하면 아래 폴더가 자동 생성됩니다.

<프로젝트폴더>/.aiassist/skills/
  my_skill.md          (사용자가 만든 스킬 — 이 프로젝트에서만)

모든 프로젝트에서 같이 쓸 스킬은 사용자 데이터 폴더(8절의 <userData>)의 skills/ 에 두면 됩니다(<userData>/skills/my_skill.md — 이 폴더는 자동으로 만들어지지 않으니 필요할 때 직접 만드세요). 이름이 겹치면 프로젝트 > 전역(<userData>/skills) > 내장 순으로 앞의 것이 쓰이고, /help 에 [프로젝트] · [전역] · [내장] 으로 출처가 표시됩니다. 전역 스킬은 작업 폴더를 선택(또는 다시 선택)할 때 읽힙니다.

스킬 파일 형식

---
name: my_skill
description: 언제 사용하는지 한 줄로 (최대 300자)
---
# 본문

여기에 단계별 지침, 예시, 주의사항 등을 자유롭게 작성합니다.

사용 방법

  1. AI에게 요청해서 만들기: 채팅창에 "이 작업 방식을 스킬로 저장해줘"처럼 요청하면 AI가 알아서 올바른 위치/형식으로 파일을 생성해줍니다.
  2. 새로 만든 스킬은 그 자리에서 바로 쓸 수 있습니다 — 재인덱싱이 필요 없습니다. 기존 스킬의 name/description을 직접 고친 경우에만 작업 폴더를 다시 선택하면 반영됩니다(본문 수정은 즉시 반영됩니다). 새로 만든 스킬의 name 이 이미 있는 스킬(전역·내장 포함)과 같으면 AI 가 그 사실을 알려 줍니다 — 바로 쓰려면 이름을 바꾸세요(전역·내장과 겹친 경우에는 작업 폴더를 다시 선택한 뒤부터 새 프로젝트 스킬이 우선합니다).
  3. 이후 대화에서 스킬 설명과 맞는 요청을 하면 AI가 자동으로 해당 스킬을 불러와 그 지침에 따라 작업합니다. AI가 자동 발동하지 못하는 경우에는 /skill <스킬이름> [요청] 으로 직접 발동할 수 있습니다(3절 슬래시 명령 참고).

7. 메모리(Memory) 기능

프로젝트별로 지속되는 메모리 기능이 구현되어 있습니다. 같은 프로젝트 폴더로 새 세션을 열어도 이전에 저장해둔 사실/선호가 계속 유지됩니다.


8. 세션 데이터 저장 위치

모든 대화는 자동으로 로컬(Electron userData)에 저장됩니다.

<userData>/aiassist/
  sessions.json          (세션 인덱스: sessionId, projectPath, 미리보기, 생성/수정 시각, 메시지 수)
  data/
    <sessionId>.jsonl     (세션별 대화 내용, append-only)
  archive/data/
    <sessionId>.jsonl.gz  (보관한 지 7일이 지난 세션의 대화 내용 — 압축본)

보관(2-1절)한 세션은 7일이 지나면 대화 내용이 archive/data/<sessionId>.jsonl.gz 로 압축되어 옮겨집니다. 여는 방법은 똑같고(자동으로 풀어서 읽습니다), 보관을 풀면 원래 자리로 되돌아오므로 사용자가 이 파일들을 직접 손댈 일은 없습니다.

세션 목록 패널에서 세션을 지우거나 관리할 수 있습니다(우클릭 메뉴).


9. AI 모델(Provider) 설정

Option > AI Model... 메뉴에서 사용할 LLM Provider를 등록/편집합니다.

필드 설명
이름(name) 드롭다운에 표시될 식별자
API Type 모델 서버 종류 — vLLM / Ollama / Claude / OpenAI / Gemini / OpenAI 호환 서버
model 모델 이름 (예: qwen3-coder-next)
host / port API 엔드포인트
chatPath 채팅 API 경로
Max Context 모델 컨텍스트 한도(토큰, max_model_len) — 미입력 시 자동 조회 (아래 참고)
(고급) max_output_tokens 응답 한 번의 최대 출력 토큰. 보통은 컨텍스트 크기에 따라 자동(8K~32K)이므로 비워 둡니다. 설정 파일(ai-client-config.json/ai-config.json)에 직접 넣는 항목입니다
https 엔드포인트를 HTTPS로 호출할지 여부
인증 방식 API Key 또는 OAuth(계정 로그인) 중 선택 (아래 참고)
apiKey 인증 키 (API Key 방식일 때만 표시)
headers 요청에 추가할 커스텀 헤더 (한 줄에 하나, "이름": "값" 형식)
vision 이미지 입력(첨부) 지원 여부
비전 브로커 이 모델이 이미지를 못 받을 때(vision 해제) 대신 이미지를 읽어 줄 모델 — 아래 참고
스트리밍 응답을 받는 대로 보여줄지 여부. 해제하면 응답이 끝난 뒤 한 번에 표시됩니다. Claude 와 ChatGPT 구독(OAuth)은 항상 켜집니다

기본 제공 Provider(서버 관리, ai-config.json)와 사용자가 추가한 Provider(ai-client-config.json)가 함께 드롭다운에 표시됩니다. 임베딩(샘플 인덱싱용) 모델도 별도로 설정되어 있습니다.

비전 브로커 — 이미지를 못 받는 모델에 "대신 읽어 줄 모델" 지정

vision 을 지원하지 않는 모델(예: 텍스트 전용 GLM)을 쓰면서도 이미지를 활용하고 싶을 때 씁니다. 지정해 두면 첨부 이미지나 자동 UI 테스트의 화면 캡처가 도착할 때마다 브로커 모델이 먼저 그 이미지를 상세히 서술하고, 현재 모델은 그 설명 텍스트를 받아 "본 것처럼" 작업을 이어갑니다.

  1. Option > AI Model... 에서 이미지를 못 받는 모델을 선택하고 vision 체크를 해제합니다 — 해제해야 아래 셀렉트가 활성화됩니다.
  2. 비전 브로커 셀렉트에서 대신 읽어 줄 모델을 고릅니다. 목록에는 vision 이 체크된 사용자 추가 모델만 나오고(자기 자신·기본 제공 모델은 제외), "선택 안함" 이 끄기입니다. 클라우드 모델을 고르면 이미지가 외부 서비스로 전송되고 과금될 수 있습니다.
  3. 확인을 누르면 바로 적용됩니다(앱 재시작 불필요).

사용 중 보게 되는 안내(채팅의 System 줄):

알아둘 점: 전달되는 것은 설명 텍스트라 "왼쪽 위 버튼의 정확한 색" 같은 세부는 놓칠 수 있습니다. 브로커로 고른 모델이 나중에 삭제되거나 vision 이 해제되면 설정은 "선택 안함" 으로 돌아갑니다.

컨텍스트 한도 수동 지정 (max_model_len)

모델의 컨텍스트 한도(전체 토큰 수)는 보통 자동 인식됩니다. 자동 인식이 안 되는 환경(사내 게이트웨이, 프록시 등)에서는 긴 대화에서 출력이 일찍 잘리거나 컨텍스트 초과 오류가 날 수 있으니, 이 경우 한도를 직접 지정하세요.

"my-gateway": {
    "host": "gateway.example.com",
    "port": 443,
    "chatPath": "/v1/chat/completions",
    "model": "OpenAPI",
    "max_model_len": 65536
}

ai-config.json, ai-client-config.json 모두에서 사용 가능하며, 파일을 저장하면 바로 반영됩니다.

OAuth(계정) 로그인

API 키 대신 Claude 또는 ChatGPT 계정으로 로그인해서 해당 구독으로 요청을 보낼 수 있습니다.

  1. Provider 편집 화면에서 인증 방식을 OAuth로 전환합니다.
  2. Provider 종류(claude | chatgpt)를 선택합니다.
  3. 로그인 버튼을 누르면 브라우저가 열려 해당 서비스의 로그인/권한 승인 화면으로 이동합니다.
    • Claude: 로그인 후 표시되는 코드를 복사해 입력창에 붙여넣고 "코드 적용" 버튼을 눌러 교환합니다.
    • ChatGPT: 로컬(loopback)로 인증 코드를 자동 수신해 별도 붙여넣기 없이 교환됩니다.
  4. 연결 성공 시 상태 표시가 "연결됨"으로 바뀝니다.
  5. 발급된 토큰은 암호화되어 저장되며, 앱을 재설치해도 유지됩니다.

Option > Settings...에서는 일반 옵션(모델 전환 시 대화 초기화 여부, 소스 오픈 시 수정 모드 등)과 Lint 관련 설정을 관리합니다. Lint 의 Auto Lint(edit_file 성공 후 해당 파일만 ESLint 자동 실행)는 프로젝트 package.json 에 eslint 의존성이 있어야 동작하며, 켜 두었는데 eslint 가 없으면 편집 결과에 스킵 안내가 세션당 1회 표시됩니다. AI 가 직접 호출하는 lint 도구도 마찬가지로 프로젝트에 eslint/prettier 가 설치되어 있어야 하고, 없으면 설치를 제안하는 안내를 반환합니다.


10. 명령 실행 승인 및 안전장치


11. SpiderGen 프로젝트 빌드/시뮬레이션

이 장은 SpiderGen 프로젝트로 작업할 때만 해당합니다. 작업 폴더가 SpiderGen 프로젝트(*.prj 포함)로 인식되면 빌드·시뮬레이션을 사용할 수 있습니다.

화면 동작을 자동으로 검증하려면 12절의 자동 UI 테스트를 사용하세요.


12. 자동 UI 테스트 (run_test)

이 장도 SpiderGen 프로젝트에서만 해당합니다.

채팅에서 "~ 테스트해줘" 라고 요청하면 AI가 테스트 시나리오를 세우고 시뮬레이터를 직접 조작해 단계별로 확인한 뒤 결과를 보고합니다. 모드 전환이나 사전 준비가 필요 없습니다.

요청하기

시나리오만 만들기 (실행하지 않음)

테스트를 바로 돌리지 않고 계획만 먼저 받아 검토하고 싶을 때 씁니다.

시나리오 파일

저장한 테스트 다시 돌리기

직접 조작을 녹화해서 테스트 만들기 (● Rec)

시뮬레이터를 손으로 조작한 기록을 남겨 두었다가, 그 기록대로 테스트를 만들 수 있습니다.

자주 쓰는 테스트는 스킬로 — 반복해서 돌리는 테스트는 스킬(6절)로 만들어 두면 /이름 한 번으로 실행할 수 있습니다. 스킬 본문에는 ".aiassist/tests/<파일> 시나리오로 테스트를 실행한다"와 계정 같은 파라미터만 적고, 단계와 기대값은 시나리오 파일에 두세요 — 그래야 실행 결과가 스킬 파일이 아니라 시나리오 파일에 쌓입니다.

한계: 시뮬레이터는 앱 시작 화면부터 시작하므로 AI가 화면을 이동해 가며 테스트합니다. 프로젝트가 별도 백엔드 서버를 필요로 하는 화면은 그 서버가 켜져 있지 않으면 테스트할 수 없습니다(AI가 도달 불가 사실을 보고합니다).


13. 백그라운드 위임 (서브에이전트)

큰 작업을 다른 AI 담당자에게 맡기고, 나는 대화를 계속하는 기능입니다. 별도 버튼이나 메뉴는 없습니다 — AI가 필요하다고 판단하면 스스로 사용하며, "이 작업은 위임해서 진행해줘"처럼 직접 시킬 수도 있습니다. 모든 모델(로컬·Claude·ChatGPT)에서 쓸 수 있습니다.

동작 흐름

  1. AI가 작업을 넘기면 채팅에 DELEGATE: dlg1 카드가 생기고, 담당자가 무슨 파일을 읽고 고치는지 실시간으로 흐릅니다.
  2. AI는 기다리지 않고 턴을 끝냅니다. 카드는 대화가 끝난 뒤에도 계속 진행되며, Stop 버튼으로 대화를 멈춰도 위임은 살아 있습니다.
  3. 담당자가 끝나면 말을 걸지 않아도 AI가 알아서 이어받습니다. 채팅에 ✔ 백그라운드 위임이 끝났습니다 — 완료 보고를 받아 이어갑니다. 한 줄이 뜨고, AI 가 완료 보고를 읽어 원래 요청에 맞게 다음 일을 진행합니다 — 산출물을 확인해 실제 프로젝트에 반영하고 무엇을 반영했는지 알려 주거나, 이어지는 작업을 다시 담당자에게 맡깁니다.
  4. SpiderGen 프로젝트에서 코드·화면 파일을 반영한 경우에는 이어서 빌드를 확인하고, 화면(.lay)이면 실제 로드까지 확인한 뒤 결과를 함께 알려줍니다.
  5. 산출물에 문제가 있다고 판단하면 반영하지 않고 그 사실을 알립니다.
  6. 위임이 도는 동안 다른 대화를 하고 있었다면, 진행 중인 답변이 끝난 뒤에 이어받습니다. 그 대화 중에 완료 보고가 섞여 들어가면 화면에 📨 백그라운드 위임 완료 보고를 이번 메시지에 첨부했습니다. 한 줄이 표시됩니다.

위임한 파일은 직접 고치지 마세요. 위임이 도는 사이 같은 파일을 편집기에서 고치면, AI는 그 파일을 덮어쓰지 않고 보류한 뒤 알려줍니다(고친 내용이 사라지지 않도록). 그 다음 현재 파일을 확인해 합치거나, 사용자 판단을 기다립니다.

산출물과 반영

담당자가 만든 파일은 작업 폴더(.aiassist/quality-work/<위임 id>/)에만 저장됩니다. 실제 프로젝트 파일은 담당자가 직접 건드릴 수 없고, AI가 검토한 뒤 반영(apply_files)할 때만 바뀝니다. 반영 후에는 일반 편집과 똑같이 Undo로 되돌릴 수 있습니다.

반영을 일일이 승인할 필요는 없습니다. 결과가 마음에 안 들면 Undo로 되돌리거나 "다시 해줘"라고 하면 됩니다. Undo 버튼은 그 턴에만 표시되므로, 지나간 반영을 되돌리려면 "아까 반영한 파일 되돌려줘"라고 하면 됩니다.

담당자의 마지막 답변(보고) 전문은 언제나 작업 폴더의 report.md 에 저장됩니다. 조사·분석처럼 파일이 아니라 답변이 결과인 위임도 AI 가 그 내용을 그대로 이어받고, 답변이 아주 길면 AI 가 report.md 를 이어 읽습니다. 답변 길이를 줄이고 싶으면 위임을 시킬 때 "핵심만 2천 자 이내로" 처럼 말하면 됩니다.

작업 폴더는 자동으로 지워지지 않으므로, 반영하지 않은 결과물도 나중에 직접 열어볼 수 있습니다.

에이전트 정의 파일 (담당자 지정하기)

담당자가 쓸 모델·사고 단계·도구·추가 지시를 파일로 정해 둘 수 있습니다. 작업 폴더의 .aiassist/agents/<이름>.md 에 6절 Skills 와 같은 형식(frontmatter + 본문)으로 두면, AI 가 위임할 때 description 을 보고 알맞은 담당자를 골라 씁니다. "grep_local 한테 맡겨줘"처럼 사용자가 이름을 직접 말해도 됩니다.

모든 프로젝트에서 같이 쓸 담당자는 사용자 데이터 폴더의 <userData>/agents/ 에 두면 됩니다(스킬의 전역 폴더와 같은 규칙 — 직접 만들고, 이름이 겹치면 프로젝트 것이 우선). 전역 담당자의 model 은 그 PC 의 AI Model... 에 등록된 이름이어야 합니다.

---
name: grep_local
description: 코드 조사·검색 전용 담당자. 파일을 고치지 않고 찾은 내용만 보고한다.
model: qwen-local
quality: 1
tools: read_file, search_project, list_files, find_file
maxRounds: 40
---
프로젝트 파일은 고치지 마라. 요청한 기능이 어디에 어떻게 구현돼 있는지 찾아 파일 경로와 함께 보고한다.
필드 설명
name · description 필수. description 은 AI가 이 담당자를 고르는 기준이니 한 줄로 또렷하게 적으세요
model Option > AI Model... 에 등록해 둔 모델 이름. 비워 두면 채팅과 같은 모델을 씁니다
quality 사고 단계 1~`5`. 비워 두면 채팅과 같은 단계를 씁니다
tools 담당자에게 허용할 도구를 쉼표로 나열. 기본 도구 가운데서 고르거나, 14절에서 연결한 MCP 도구(mcp__<서버>__<도구>)를 적어 담당자에게 줄 수 있습니다. MCP 도구는 위임할 때 그 서버가 연결돼 있어야 합니다(끊겨 있으면 위임이 시작되지 않고 AI 가 알려 줍니다). 비워 두면 기본 도구 전부
maxRounds 담당자가 도는 작업 횟수 상한. 모델별 상한을 넘겨 적으면 그 상한으로 줄여서 씁니다
wait true 면 기다리는 위임 — AI 가 턴을 끝내지 않고 담당자의 결과를 받아 같은 답변 안에서 이어 갑니다(아래)
profile plain 이면 코딩이 아닌 역할(검토·판단·요약 등)용 담당자 — 코딩 규칙·작업 폴더 안내가 빠지고, 본문에 적은 출력 형식을 그대로 따릅니다. 기본 도구는 읽기 전용이며, tools 에 파일을 고치는 도구를 적으면 정의가 무효입니다. 생략하면 종전 코딩 담당자
본문 담당자에게 주는 추가 지시. 기본 지시(작업 폴더 제한·보고 형식)는 그대로 유지됩니다(profile: plain 이면 본문의 형식이 우선)

기다리는 위임 (wait: true)

기본 위임은 백그라운드라 AI 가 턴을 끝내고, 끝나면 알아서 이어받습니다(위 동작 흐름). wait: true 인 담당자에게 맡기면 AI 가 그 자리에서 결과를 기다렸다가 같은 답변 안에서 다음 단계로 넘어갑니다 — "설계 검토 → 구현 → 테스트"처럼 단계를 잇는 스킬(6절)에 씁니다. 한 번에 여러 담당자를 부르면 동시에 돌고, 기다리는 동안 진행은 DELEGATE 카드가 보여 줍니다. 이때 Stop 을 누르면 담당자도 함께 멈춥니다(백그라운드 위임은 Stop 과 무관하게 계속 돕니다). 멈춘 위임은 "dlg3 이어서 해줘"처럼 다시 이어 갈 수 있습니다.

알아둘 점


14. MCP 서버 연결 (외부 도구 붙이기)

MCP(Model Context Protocol) 서버는 디자인 도구·사내 시스템·파일 서버처럼 다른 프로그램이 제공하는 도구 모음입니다. 여기에 연결해 두면 AI 가 대화 도중 그 도구들을 자기 도구처럼 불러 씁니다.

Option > MCP Servers... 로 등록 창을 엽니다. 왼쪽이 등록된 서버 목록, 오른쪽이 선택한 서버의 설정입니다.

서버 등록

  1. 추가 버튼으로 항목을 만들고 Name 에 서버 이름을 적습니다. 영문·숫자·_·- 만 쓸 수 있으며, 이 이름이 도구 이름 앞에 붙습니다.
  2. 방식 을 고릅니다. 고른 방식에 필요한 칸만 표시됩니다.
    • stdio (로컬 프로세스) — 이 PC에서 서버 프로그램을 직접 실행합니다. Command(npx·node·python 또는 실행 파일 경로), Args(공백으로 구분하고 공백이 든 인자는 "따옴표"), Cwd(작업 폴더, 선택), Env(환경 변수, 한 줄에 하나 "이름": "값").
    • http (Streamable HTTP) · sse (구형 HTTP+SSE) — 이미 떠 있는 서버에 주소로 붙습니다. URL(http:// 또는 https:// 로 시작), Headers(요청 헤더, 한 줄에 하나 "Authorization": "Bearer ...").
  3. 사용 체크를 끄면 그 서버에는 접속하지 않습니다(설정은 남습니다).
  4. 호출마다 승인 을 켜면 AI 가 그 서버의 도구를 쓸 때마다 승인 카드가 뜹니다(아래 참고).
  5. Timeout 은 도구 한 번 호출의 제한 시간(ms)입니다. 비워 두면 120000(2분)입니다.
  6. 삭제 는 선택한 항목을 목록에서 지웁니다.
  7. 확인 을 누르면 저장과 동시에 접속합니다 — 앱이나 서버를 다시 시작할 필요가 없습니다.

연결 상태 확인

계정 로그인이 필요한 서버 (OAuth)

http/sse 서버 중에는 토큰 헤더 대신 계정 로그인을 요구하는 곳이 있습니다.

  1. OAuth 로그인 사용 을 체크합니다 — 체크해야 로그인·로그아웃 버튼이 활성화됩니다.
  2. 로그인 을 누르면 브라우저가 열려 그 서비스의 승인 화면으로 갑니다. 승인이 끝나면 앱이 이어받아 자동으로 접속하고, 상태 문구가 "로그인 완료" 로 바뀝니다.
  3. 발급된 토큰은 암호화되어 저장되고 만료되면 자동으로 갱신됩니다. 로그아웃 은 저장된 토큰을 지웁니다.
  4. 연결 테스트에서 ● 로그인 필요 가 나오면 이 로그인을 먼저 하면 됩니다.

채팅에서 보이는 모습

알아둘 점


15. 자동 업데이트

Khairon 은 켜져 있는 동안 새 판이 있는지 스스로 확인하고, 있으면 화면 안에서 알려 줍니다.


요약: 첫 사용 흐름

  1. File > New Session으로 세션 생성
  2. 채팅창 하단에서 작업 폴더(cwd) 선택 → 신뢰 확인
  3. 필요하면 Option > AI Model...에서 사용할 모델 등록/선택 (API 키 또는 계정 OAuth 로그인)
  4. 채팅창에 요청 입력 → AI가 필요 시 코드/샘플을 자동 참고하고, 파일 수정이나 명령 실행이 필요하면 도구를 호출(위험한 명령은 승인 요청). 결과가 마음에 안 들면 Undo로 되돌리기.
  5. 파일 경로를 클릭하면 Monaco 뷰어로 열람/편집 가능(Git 변경분은 거터에 표시)
  6. 반복되는 작업 규칙은 "스킬로 저장해줘"라고 요청해 .aiassist/skills/에 누적 → 다음부터 자동 활용. 짧은 사실/선호는 "기억해줘"라고 요청하면 .aiassist/memory.md에 누적되어 이후 세션에도 자동 반영.
  7. 세션 목록에서 언제든 이전 대화로 돌아와 이어가기