AX Agent 대화 서비스 고도화 계획
완료 이력
Phase 2.5~7 (v1.1.0 ~ v1.2.1)
- 에이전트 루프 엔진 (21개 도구), 10종 무드, 커스텀 프리셋
- 마크다운 렌더링 (테이블/인용/링크/취소선), 코드 블록 강화
- Code 탭 (5프리셋), DevEnvDetect/BuildRun/GitTool, Nexus 연동
- 8단계 워크플로우 시스템 프롬프트, AX.md 프로젝트 컨텍스트
Phase 7.5 (v1.2.2)
- 무지개 글로우 효과 (런처/채팅), 커스텀 UI (컨텍스트 메뉴, InputDialog)
- 설정 구조 개편 (공통 탭 통합), 다크 테마 6종 가독성 개선
- 알림 오류 수정 (ShowTips/NotifyOnComplete), ViewModel 바인딩 정비
Phase 8 (v1.5.0) — 경쟁 서비스 벤치마크 기반
| # |
기능 |
구현 내용 |
| 8-1 |
MCP 클라이언트 |
McpClientService (stdio/JSON-RPC), McpTool 래핑, 설정 UI |
| 8-2 |
모델 폴백 |
FallbackModels 순차 시도, 폴백 알림, 설정 편집 UI |
| 8-3 |
대화 분기 |
ParentId/BranchLabel, 우클릭 "여기서 분기", 사이드바 분기 아이콘 |
| 8-4 |
스플릿 뷰 |
자동 프리뷰 (에이전트 파일 수정 시), AutoPreview 설정 |
| 8-5 |
커맨드 팔레트 |
Ctrl+Shift+P, 16개 명령, 한글 초성 검색 |
| 8-6 |
토큰 관리 |
TokenEstimator (비용 추정, CJK 가중치), 상태바 비용 표시 |
| 8-7 |
에이전트 자율성 |
동적 반복 한도 (도구 15+ → 2배), 다단계 반성 |
| 8-8 |
개발자 모드 |
공통 탭, 비밀번호 보호, 스텝 승인 |
| 8-9 |
보안 감사 로그 |
AuditLogService (JSON 영속화), 설정 토글 + 폴더 열기 |
| 추가 |
다중 서버 |
RegisteredModel에 endpoint/apiKey 필드, 모델별 서버 라우팅 |
Phase 9 — 차세대 고도화 (v1.5.0) ✓ 완료
Context (2026년 3월 기준)
- Claude Code: SWE-bench 80.8%, Opus 4.6 1M 컨텍스트, 서브에이전트, MCP 표준화, 원격 트리거
- Cursor: Tab 자동완성, Multi-file 에이전트, 백그라운드 에이전트, LSP 통합
- 논문: Agentic Coding Survey (arXiv 2025), SWE-Agent v2, CodeAct, Reflexion
9-1. 코드 인텔리전스 (LSP 연동) — ✓ 완료
- 에이전트 도구:
lsp_goto_definition, lsp_find_references, lsp_symbols
- 기술: OmniSharp (C#), typescript-language-server, pyright
9-2. 병렬 에이전트 (서브에이전트) — ✓ 완료
- 구현: 메인 에이전트가 서브태스크 분할 → 서브에이전트 독립 실행 → 결과 병합
- 에이전트 도구:
spawn_agent (서브에이전트 생성), wait_agents (결과 대기)
- UI: 진행률 바에 서브에이전트 상태 표시 (메인 + 서브 N개)
9-3. 코드 시맨틱 검색 (TF-IDF) — ✓ 완료
- 에이전트 도구:
search_codebase (시맨틱 검색)
- 기술: SQLite 기반 로컬 벡터, 서버 불필요
9-4. 자동 테스트 루프 — ✓ 완료
- 에이전트 도구:
test_generate, test_run, test_analyze
- 패턴: SWE-bench — 실패 테스트 → 코드 수정 → 테스트 통과 루프
9-5. 이벤트 트리거 에이전트 — ✓ 완료
- 트리거 소스: 타이머, 파일 변경 감지, Git push/pull 이벤트
- 결과: 트레이 알림 + 로컬 리포트 파일 생성
9-6. PDF/문서 내보내기 — ✓ 완료
- 구현: 대화 → PDF, 보고서 → Word/PDF 변환
9-7. 실시간 diff 뷰어 — ✓ 완료
- 구현: 수정 전/후 비교 (라인 기반 diff, 색상 하이라이트)
- Accept/Reject 버튼으로 변경 승인/취소
Phase 10 — 지능형 에이전트 (v1.5.0) ✓ 완료
| # |
기능 |
설명 |
우선순위 |
| 10-1 |
자동 모델 선택 (Auto Router) |
질문 유형(코딩/번역/분석) 감지 → 최적 모델 자동 라우팅 |
✅ 완료 (잠금) |
| 10-2 |
에이전트 메모리 (영속 학습) |
프로젝트 규칙/코딩 선호도 자동 기억. 대화 간 유지 |
✅ 완료 |
| 10-3 |
웹훅 트리거 확장 |
Git push/PR, Jira/Slack 웹훅 → 에이전트 자동 실행 |
높음 |
| 10-4 |
멀티모달 입력 |
이미지/스크린샷 → AI 분석 (Vision API) |
✅ 완료 |
| 10-5 |
코드 검색 개선 |
TF-IDF + SQLite 영속 인덱스, 증분 업데이트, 바이그램, 스톱워드 |
✅ 완료 |
| 10-6 |
에이전트 훅 시스템 |
도구 호출 전/후 사용자 스크립트 실행 |
✅ 완료 |
Phase 11 — 생태계 확장 (v1.5.0) ✓ 완료
| # |
기능 |
설명 |
우선순위 |
| 11-1 |
스킬 시스템 |
마크다운 기반 재사용 워크플로우, 슬래시 명령 호출 |
✅ 완료 |
| 11-2 |
AI 코드 리뷰 자동화 |
Git diff → AI 리뷰 → 수정 → 테스트 닫힌 루프 |
✅ 완료 |
| 11-3 |
드래그&드롭 AI 처리 |
파일 드래그 → 자동 분석/변환/요약 |
✅ 완료 |
11-1. 스킬 시스템 — ✓ 완료
- 구현: *.skill.md 파일의 YAML 프론트매터 파싱 → 슬래시 명령어로 노출
- 스킬 폴더:
%APPDATA%\AxCopilot\skills\ + 앱 기본 폴더
- 에이전트 도구:
skill_manager (list/info/reload)
- UI: 슬래시 팝업에 스킬 아이콘(⚡) + 자동완성 통합
11-2. AI 코드 리뷰 자동화 — ✓ 완료
- 에이전트 도구:
code_review (diff_review / file_review / pr_summary)
- 정적 분석: 빈 catch, 동기 대기, 하드코딩 비밀번호, TODO/FIXME, 긴 메서드
- 리뷰 초점: all / bugs / performance / security / style
11-3. 드래그&드롭 AI 처리 — ✓ 완료
- 파일 유형 4종: 코드 (리뷰/설명/리팩토링/테스트), 문서 (요약/분석/번역), 데이터 (분석/시각화/변환), 이미지 (설명/UI리뷰)
Phase 12 — 스킬/커넥터 고도화 (v1.5.x) ✓ 완료 (주요 항목)
| # |
기능 |
상태 |
| 12-1 |
도구/커넥터 관리 UI |
✅ 완료 → Phase 16-2로 통합 |
| 12-2 |
SKILL.md 표준 호환 |
✅ 완료 → Phase 16-6으로 통합 |
| 12-3 |
스킬 시각적 편집기 |
✅ 완료 |
| 12-4 |
런타임 의존 스킬 시스템 |
✅ 완료 (v1.5.1) |
| 12-5 |
워크플로우 분석기 |
✅ 완료 (v1.5.1) |
| 12-6 |
스킬 갤러리 UI |
✅ 완료 |
| 12-7 |
스킬 가져오기/내보내기 |
✅ 완료 |
12-4. 런타임 의존 스킬 시스템 — ✓ 완료 (v1.5.1)
- RuntimeDetector: Python/Node.js 설치 여부 자동 감지 (where.exe + --version, 5분 캐시)
- SkillDefinition 확장:
Requires/IsAvailable/UnavailableHint 필드
- 고급 스킬 4종 번들: docx-creator, xlsx-analyzer, pdf-processor, pptx-creator
- 슬래시 팝업: 비가용 스킬 회색 표시 + "(Python 필요)" 힌트
12-5. 워크플로우 분석기 — ✓ 완료 (v1.5.1)
- AgentEvent 확장: ElapsedMs, InputTokens, OutputTokens, ToolInput, Iteration
- WorkflowAnalyzerWindow: 세로 타임라인 실시간 시각화 (요약 카드 4종 + 노드 클릭 상세)
- 설정 연동: 개발자 모드 → 워크플로우 시각화 토글 → Cowork/Code 실행 시 자동 열기
Phase 15 — 멀티패스 문서 엔진 + 스킬/도구 대확장 (v1.6.0) ✓ 완료
| # |
기능 |
구현 내용 |
| 15-A |
멀티패스 문서 생성 |
document_plan (개요 구조화) + document_assemble (섹션 조립). 3페이지+ 문서를 개요→섹션별 상세→조립 방식으로 품질 향상 |
| 15-B |
PPT 네이티브 생성 |
pptx_create — OpenXML 기반, Python 무의존, 5종 레이아웃, 4종 테마 |
| 15-C |
데이터 피벗/집계 |
data_pivot — CSV/JSON 그룹화·필터·정렬·집계 (LINQ 기반) |
| 15-D |
템플릿 렌더링 |
template_render — Mustache 스타일 변수 치환·반복·조건부 |
| 15-E |
이미지 분석 |
image_analyze — LLM 멀티모달 describe/OCR/데이터 추출/비교 |
| 15-F |
파일 변경 감지 |
file_watch — 폴더 감시, 상대 시간(1h/7d), 유형별 통계 |
| 15-G |
텍스트 요약 |
text_summarize — 청크 분할→핵심 추출 요약 (4종 스타일) |
| 15-H |
내장 스킬 16종 추가 |
비즈니스: email-draft, translate, compare, weekly-report. 데이터: log-analyze, sql-report, data-convert. 개발: refactor, gen-test, impact. 외부 검증: security-audit, prd-generator, adr-writer, changelog, dependency-audit, perf-audit — 총 29종 |
| 15-I |
설정 |
EnableMultiPassDocument, MultiPassThresholdPages |
도구: 34개 → 42개 (+8), 스킬: 13개 → 29개 (+16)
Phase 16 — 에이전트 지능 강화 + 개발자 경험 (v1.7.0) ✅ 완료
계획 기준: Claude Code(Plan mode, Hooks, 병렬 도구), Cursor(프로젝트 규칙, 멀티파일 diff), GitHub Copilot(반복 테스트-수정), Windsurf(자동 컨텍스트, 영속 메모리) 분석 + Reflexion/CodeAct 연구 동향 반영.
| # |
기능 |
구현 내용 |
| 16-1 |
플랜 모드 (Plan Mode) |
에이전트가 도구 실행 전 구조화된 계획 생성 → 사용자 검토/승인 → 승인 후 실행. PlanMode: off/always/auto 3모드. always=텍스트 전용 계획 생성(최대 3회 수정), auto=계획 감지 시 승인 요청 |
| 16-2 |
도구/커넥터 관리 UI |
설정 > AX Agent > 도구 탭. 52개 도구를 6개 카테고리(파일/검색, 문서 생성, 문서 품질, 코드/개발, 데이터/유틸, 시스템)별 카드로 표시. 개별 활성/비활성 토글 + MCP 서버 연결 상태 실시간 표시 |
| 16-3 |
프로젝트 규칙 시스템 |
.ax/rules/*.md YAML 프론트매터(name, description, applies-to, when) 파싱. 파일 패턴 glob 매칭, when 조건 필터링, 시스템 프롬프트 자동 주입 |
| 16-4 |
반복 테스트-수정 루프 |
TestLoopTool auto_fix 액션 — 테스트 실행→구조화된 실패 파싱(.NET/pytest)→반복 예산 자동 확장 (MaxTestFixIterations 설정) |
| 16-5 |
병렬 도구 실행 |
읽기 전용 도구(file_read, grep_tool, glob 등 12종) 자동 분류 → Task.WhenAll() 병렬 실행, 쓰기 도구는 순차 실행. EnableParallelTools 토글 |
| 16-6 |
SKILL.md 표준 완전 호환 |
외부↔내부 도구 이름 매핑 테이블 20개 (Bash→process, Read→file_read, Grep→grep_tool 등). ParseSkillFile에서 스킬 본문 자동 치환 |
설정 추가: PlanMode, EnableProjectRules, MaxTestFixIterations, EnableParallelTools, DisabledTools
Phase 16.8 — 안정화 릴리즈 (v1.7.2) ✅ 완료
- 컨텍스트 자동 압축 — 2단계 압축(도구 결과 축약 + LLM 요약), 모델별 토큰 한도 자동 인식
- 대화 이력 복원 — 앱 재시작 시 탭별 마지막 대화 자동 복원
- 런처 속도 개선 — 핫키 응답 ~230ms 단축, 애니메이션 최적화
- 스크롤 캡처 개선 — 증분 스티칭으로 중복 프레임 제거, 오버랩 감지 정확도 향상
- 검증 리팩터링 — 도구 검증을 읽기 전용으로 제한하여 품질 저하 방지
- AI 모델 호환성 가이드 — Function Calling 지원 모델 호환표 추가
- 버그 수정 6건 — 설정 비밀번호 재요구, 계획 버튼 동기화, 야간 근무 시간, 클립보드 붙여넣기, 활성 창 캡처
Phase 16.5 — 검증 강제 + 오픈소스 갭 보완 (v1.7.1) ✅ 완료
계획 기준: OpenHands(ICLR 2025), Claude Code, Cursor 에이전트 루프 비교 분석 기반.
업계 모든 에이전트 루프가 "1반복=1 LLM 호출, 검증 없음" 동일 구조임을 확인하여, AX Copilot만의 차별화 포인트로 "검증 강제"를 아키텍처 수준에서 구현.
| # |
기능 |
구현 내용 |
| 16.5-1 |
도구 실행 후 검증 강제 |
문서 생성 도구 실행 후 LLM 검증 전용 호출 자동 삽입. RunPostToolVerificationAsync(), IsDocumentCreationTool(). 대상 7종 도구 |
| 16.5-2 |
피드백 학습 컨텍스트 |
BuildFeedbackContext() — 최근 20건 대화의 좋아요/싫어요 패턴 분석 → 시스템 프롬프트 주입 |
| 16.5-3 |
Gemini 배열 스키마 수정 |
MultiReadTool.paths, UserAskTool.options에 Items 필드 추가 |
| 16.5-4 |
워크플로우/플랜 뷰어 UI 개선 |
타이틀바 드래그, 탭 가시성, 버튼 색상 개선 |
| 16.5-5 |
수정 후 재시도 |
두 번째 액션바 재시도 버튼, 슬래시 칩 워터마크 충돌 수정 |
설정 추가: EnablePostToolVerification
OpenHands 대비 갭 분석 (2026-03-31)
| # |
영역 |
OpenHands |
AX Copilot 현재 |
갭 |
보완 Phase |
| G1 |
Multi-Agent 위임 |
✅ AgentDelegateAction |
❌ 위임 패턴 없음 |
🔴 |
Phase 18 |
| G2 |
Event-Sourced State |
✅ 불변 이벤트 스트림 |
△ Observable (재실행 불가) |
🟡 |
Phase 17 |
| G3 |
SecurityAnalyzer |
✅ 위험도 자동 분류 |
△ Ask 모드 수동 |
🟢 |
Phase 17 |
| G5 |
검증 깊이 확대 |
❌ |
△ 문서만 검증 |
🟡 |
Phase 17 |
| G6 |
Reflexion 성공 시 |
❌ |
△ 실패 시에만 |
🟡 |
Phase 17 |
| G7 |
구조화 태스크 상태 |
✅ State 직렬화 |
❌ |
🟡 |
Phase 17 |
| G8 |
에이전트 리플레이 |
✅ 이벤트 리플레이 |
❌ |
🟡 |
Phase 18 |
Phase 17 — 에이전트 인프라 고도화 (v1.8.0) — 차기 개발 [2026-04-03 CC 문서 기반 전면 개정]
개발 기준: Claude Code 내부 아키텍처(훅·스킬·메모리·권한) + OpenHands 갭(G2/G5/G6/G7) 통합 보완
세부 계획은 docs/NEXT_ROADMAP.md Phase 17 참조
Group A — 에이전트 자기성찰
| # |
기능 |
설명 |
우선순위 |
갭 |
| 17-A1 |
Reflexion 강화 |
성공·실패 모두 자기평가. 반성 메모리 저장 → 동일 유형 참고 |
최고 |
G6 |
| 17-A2 |
검증 대상 확대 |
코드 생성 후 검증 강제. 구문·참조 무결성. 체크리스트 편집 |
최고 |
G5 |
Group B — 상태/이력 관리
| # |
기능 |
설명 |
우선순위 |
갭 |
| 17-B1 |
구조화된 태스크 상태 |
대화 압축 후에도 유지되는 TaskState. JSON 직렬화 영속 |
높음 |
G7 |
| 17-B2 |
Event-Sourced 이벤트 로그 |
SeqNo/ParentId/Payload. .jsonl 저장·재분석 |
높음 |
G2 |
Group C — 훅 시스템 고도화 (CC 17종 이벤트·4타입 기반)
| # |
기능 |
설명 |
우선순위 |
| 17-C1 |
훅 이벤트 확장 |
UserPromptSubmit, PreCompact/PostCompact, FileChanged, CwdChanged, SessionEnd, ConfigChange 추가 |
최고 |
| 17-C2 |
훅 타입 확장 |
type:prompt (LLM 보안검사), type:agent (에이전트 루프 검증) 추가 |
최고 |
| 17-C3 |
훅 속성·출력 고도화 |
if/once/async/statusMessage 속성. additionalContext·permissionDecision·updatedInput 출력 |
높음 |
| 17-C4 |
SessionStart 확장 |
watchPaths (파일 감시 등록), initialUserMessage, additionalContext |
중간 |
Group D — 스킬 시스템 고도화 (CC 스킬 문서 기반)
| # |
기능 |
설명 |
우선순위 |
| 17-D1 |
스킬 fork 컨텍스트 |
context:fork — 격리된 서브에이전트 컨텍스트에서 스킬 실행 |
높음 |
| 17-D2 |
경로 기반 스킬 활성화 |
paths: 프론트매터 — 해당 파일 작업 시 스킬 자동 컨텍스트 주입 |
높음 |
| 17-D3 |
스킬 범위 훅·모델 오버라이드 |
hooks: (스킬 범위 훅), model: (스킬별 모델), user-invocable:false (AI 전용) |
중간 |
Group E — 메모리/컨텍스트 고도화 (CC 메모리 문서 기반) ✅ 완료
| # |
기능 |
설명 |
우선순위 |
구현 |
| 17-E1 |
@include 지시어 |
AX.md / .ax/rules에서 @파일경로로 외부 파일 포함. 최대 5단계 |
높음 |
AxMdIncludeResolver.ResolveAsync() — AgentLoopService.Memory.cs에서 세션 시작 시 호출 |
| 17-E2 |
경로 기반 규칙 주입 |
.ax/rules/*.md의 paths: — 해당 파일 작업 시만 규칙 주입 |
높음 |
PathScopedRuleInjector — 파일 도구 결과 후 InjectPathScopedRulesAsync() 호출 |
| 17-E3 |
컨텍스트 컴팩션 + 파일 되감기 |
/compact 명령, PreCompact/PostCompact 훅, 파일 변경 되감기 |
중간 |
— (차기 Phase) |
새 파일: AgentLoopService.Memory.cs (105줄) — InjectHierarchicalMemoryAsync() + InjectPathScopedRulesAsync()
설정 추가: EnableMemorySystem (기본 true)
Group F — 권한 시스템 고도화 (CC 권한 문서 기반) ✅ 완료
| # |
기능 |
설명 |
우선순위 |
구현 |
| 17-F1 |
acceptEdits 권한 모드 |
파일 편집 자동승인 + bash/process 명령 확인 유지 |
높음 |
AgentLoopService.Permissions.cs — GetPermissionService() + EvaluateToolPermission(). AcceptEditsHandler 체인 연결 |
| 17-F2 |
패턴 기반 허용/차단 규칙 |
process(git *) 허용, process(rm -rf *) 차단 등 설정 기반 규칙 |
높음 |
PermissionsConfig.AllowRules/DenyRules → PermissionRule 변환. Execution.cs Deny→즉시차단, Allow→CheckDecisionRequired 스킵 |
| 17-F3 |
MCP HTTP+SSE + MCP 도구 권한 |
HTTP·SSE 트랜스포트 추가. mcp__서버__도구 단위 권한 규칙 |
중간 |
CheckMcpToolAllowed() 추가 — 차기 MCP 강화 시 연계 예정 |
새 파일: AgentLoopService.Permissions.cs (97줄) — PermissionDecisionService 빌드·캐시·평가
Group G — 개발자 경험 ✅ 완료
| # |
기능 |
설명 |
우선순위 |
구현 |
| 17-G1 |
멀티파일 통합 Diff 추적 |
쓰기 도구 실행 전 원본 캡처 → 성공 후 변경 기록. MultiFileDiffViewModel UI 바인딩 |
높음 |
AgentLoopService.DiffTracker.cs — CaptureOriginalFileContent() + TrackFileModificationForDiff(). Execution.cs 전·후 호출 통합 |
| 17-G2 |
도구 위험도 표시 |
ToolCall 이벤트에 [⚠ 높음]/[• 보통] 태그 표시. ToolRiskMapper 연계 |
중간 |
Execution.cs EmitEvent(ToolCall) 에 riskTag 접미사 추가. toolName17 변수로 nullable 경고 0개 달성 |
새 파일: AgentLoopService.DiffTracker.cs (99줄) — ExtractFilePathFromInput() + CaptureOriginalFileContent() + TrackFileModificationForDiff() + ResetDiffTracker()
설정 추가: EnableDiffTracker (기본 true)
Phase 18 — 멀티에이전트 팀 + 에코시스템 (v2.0) [CC 문서 기반 전면 개정]
개발 기준: CC coordinator 모드·worktree 격리·백그라운드 에이전트·타입별 메모리 + OpenHands G1/G8
세부 계획은 docs/NEXT_ROADMAP.md Phase 18 참조
Group A — 멀티에이전트 아키텍처 (CC 기반 신규)
| # |
기능 |
설명 |
우선순위 |
갭 |
| 18-A1 |
코디네이터 에이전트 모드 |
계획·라우팅 전담, 구현은 서브에이전트 위임 |
최고 |
G1 |
| 18-A2 ✅ |
Worktree 격리 서브에이전트 |
WorktreeManager 구현 완료 + DelegateAgentTool에 주입 (isolation:"worktree" 파라미터 지원) |
최고 |
— |
| 18-A3 ✅ |
에이전트 팀 위임 (delegate 도구) |
DelegateAgentTool 구현 + ToolRegistry 등록 완료. BackgroundAgentService + WorktreeManager 통합 |
최고 |
G1 |
| 18-A4 ✅ |
백그라운드 에이전트 + 완료 알림 |
BackgroundAgentService.AgentCompleted → ChatWindow 트레이 알림 연결 완료 |
높음 |
— |
Group B — 디버깅 + 생태계
| # |
기능 |
설명 |
우선순위 |
갭 |
| 18-B1 ✅ |
에이전트 리플레이/디버깅 |
AgentReplayService + ReplayTimelineViewModel 구현. WorkflowAnalyzerWindow에 "리플레이" 탭 통합 (세션 선택·재생 컨트롤·이벤트 스트림) |
높음 |
G8 |
| 18-C1 |
플러그인 갤러리 + 레지스트리 |
로컬 NAS/Git 기반 인앱 갤러리. zip 설치 |
높음 |
— |
| 18-C2 |
AI 스니펫 |
;email {수신자} {주제} 등 LLM 초안 자동 생성 |
중간 |
— |
| 18-C3 |
파라미터 퀵링크 |
jira {번호} → URL 변수 치환 |
중간 |
— |
| 18-C4 |
오프라인 AI (ONNX Runtime) |
로컬 소형 모델, 별도 배포 |
낮음 |
— |
| 18-C5 |
웹 검색 AI 요약 |
? 검색 결과 AI 요약 표시 |
낮음 |
— |