diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 49c7ae8..0d6b08f 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -1968,18 +1968,18 @@ allowed-tools: process file_read grep_tool | 구분 | 내용 | |------|------| | **에이전트 채팅 화면 개편 (Phase 17-UI)** | 채팅 창 서브 바에 Plan 모드 3상태 토글 (Off / Auto / Always) 추가. 클릭 시 순환 전환, 활성 상태 색상 강조. `LlmSettings.PlanMode` 설정 연동 | -| **Reflexion 강화 (Phase 17-A)** | `ReflexionService` 확장: 자기 평가 → 전략 수정 루프 구현. 도구 실행 실패 시 반성 기반 재시도 전략 자동 선택 | -| **구조화된 이벤트 로그 (Phase 17-B)** | `AgentEventLog` JSONL 기록 시스템. `AgentLoopService`에 세션 ID 생성 + SessionStart / ToolRequest / ToolResult / SessionEnd 이벤트 기록 통합 | -| **훅 시스템 고도화 (Phase 17-C)** | `ExtendedHookRunner`: PreCompact / UserPromptSubmit / AgentThinking 훅 이벤트 추가. `asyncRewake` 속성으로 비동기 훅 완료 후 에이전트 재개 가능 | -| **스킬 시스템 고도화 (Phase 17-D)** | `PathBasedSkillActivator`: 경로 패턴 기반 스킬 자동 활성화. `SkillExtensionStore` 사이드카 패턴으로 스킬 확장 메타데이터 관리 | -| **메모리/컨텍스트 고도화 (Phase 17-E)** | `ContextCondenser` 경로 규칙 연동. `PathScopedRuleInjector`로 작업 폴더에 따른 규칙 자동 주입. `@include` 지시문 처리 | -| **권한 시스템 고도화 (Phase 17-F)** | `PermissionSystem` Chain of Responsibility 패턴. Allow/Deny 규칙 설정 UI 연동. acceptEdits 모드에서 파일 편집 도구 자동 승인 | -| **멀티파일 Diff + 자동 컨텍스트 (Phase 17-G)** | `MultiFileDiffViewModel`: 파일별 diff 추적 + 일괄 수락. `AutoContextCollector`: `@파일명` 멘션 정규식 파싱 + 자동 파일 내용 주입. `ToolRiskMapper`: 도구별 Low/Medium/High 위험도 분류 | -| **멀티에이전트 팀 (Phase 18-A)** | `DelegateAgentTool` + `BackgroundAgentService` + `WorktreeManager`. `AgentLoopService`에 `RunSubAgentAsync` 위임 연결. ToolRegistry에 자동 등록 | +| **Reflexion 강화 (Phase 17-A)** | `ReflexionService` + `ReflexionRepository`: 성공·실패 시 자기평가 기록. 동일 유형 작업 시 과거 교훈 시스템 메시지 자동 주입. `AgentLoopService.Reflexion.cs` 파셜 추가 | +| **TaskState Working Memory + 이벤트 로그 (Phase 17-B)** | `TaskStateService`: 세션 요약·참조 파일 목록 JSON 영속화. 압축 후에도 Working Memory 복원. `AgentEventLog` JSONL 기록 (SessionStart/UserMessage/ToolRequest/ToolResult/AssistantMessage/HookFired/CompactionTriggered 등). `AgentLoopService.TaskState.cs` 파셜 추가 | +| **훅 시스템 고도화 (Phase 17-C)** | `ExtendedHookRunner` — Command/Http/Prompt 3종 타입. `HookEventKind` 열거형 18종 이벤트 (SessionStart/SessionEnd/UserPromptSubmit/PreToolUse/PostToolUse/PostToolUseFailure/PreCompact/PostCompact/AgentStop 등). Prompt 모드: `{{tool_name}}` `{{tool_input}}` 변수 치환 → LLM 보안 검사 → Block 신호 탐지. `AgentLoopService.ExtendedHooks.cs` 파셜 추가 | +| **스킬 시스템 고도화 (Phase 17-D)** | `PathBasedSkillActivator`: `paths:` 프론트매터 glob 매칭으로 파일 작업 시 스킬 자동 컨텍스트 주입. `context:fork` 스킬: `SkillManagerTool.SetForkRunner()` DI 콜백 주입 → 격리된 LLM 호출. `AgentLoopService.Skills.cs` 파셜 추가 | +| **계층 메모리/컨텍스트 고도화 (Phase 17-E)** | `HierarchicalMemoryService`: Managed→User→Project→Local 4-layer AX.md 수집. `AxMdIncludeResolver`: `@파일경로` 재귀 해석 최대 5단계 (순환 참조 감지). `PathScopedRuleInjector`: `.ax/rules/*.md` paths: 프론트매터 기반 경로 범위 규칙 주입. `AgentLoopService.Memory.cs` 파셜 추가. 설정: `EnableMemorySystem` | +| **권한 시스템 고도화 (Phase 17-F)** | `PermissionDecisionService` Chain of Responsibility: DenyRuleHandler→AllowRuleHandler→AcceptEditsHandler→PlanModeHandler→BypassHandler. `AgentLoopService.Permissions.cs` 파셜 추가. `EvaluateToolPermission()`: Deny=즉시차단/Allow=확인 스킵/Ask=기존 흐름. `PermissionsConfig.AllowRules/DenyRules` 설정 기반 패턴 규칙 | +| **멀티파일 Diff 추적 + 도구 위험도 (Phase 17-G)** | `AgentLoopService.DiffTracker.cs` 파셜: `CaptureOriginalFileContent()` 쓰기 전 원본 캡처, `TrackFileModificationForDiff()` 성공 후 `MultiFileDiffViewModel` 기록. `ToolRiskMapper` 연계 ToolCall 이벤트에 `[⚠ 높음]`/`[• 보통]` 위험도 태그 추가. 설정: `EnableDiffTracker` | +| **멀티에이전트 팀 (Phase 18-A)** | `DelegateAgentTool` + `AgentLoopService.RunSubAgentAsync()` 위임 연결. ToolRegistry에 자동 등록. 서브에이전트 독립 루프 실행 지원 | | **에이전트 리플레이 (Phase 18-B)** | `AgentReplayService`: JSONL 이벤트 로그 파일 열거 + 단계별 재생. `ReplayTimelineViewModel`: 재생 UI 바인딩 ViewModel | | **플러그인 설치 서비스 (Phase 18-C)** | `PluginInstallService`: 로컬 zip 파일 기반 설치 (URL 다운로드 없음). `PluginManifest` / `InstalledPlugin` / `PluginInstallResult` 레코드. 레지스트리 JSONL 영속화 | | **사내/사외 네트워크 모드** | `AppSettings.InternalModeEnabled` (기본: 사내 모드). 사외 전환 시 비밀번호 `axgo123!` 인증 필요. `WebSearchHandler` + `HttpTool` 에서 모드 체크 적용 | -| **알림 센터 (L3-7)** | `NotificationCenterService`: 알림 타입(Info/Success/Warning/Error) + 히스토리 큐(최대 50건). `NotificationRaised` 이벤트로 UI 구독 지원. 기존 `NotificationService` 트레이 BalloonTip 위임 | +| **알림 센터 (L3-7)** | `NotificationCenterService`: 알림 타입(Info/Success/Warning/Error) + 히스토리 큐(최대 50건). `NotificationRaised` 이벤트로 UI 구독 지원 | | **플러그인 갤러리 ViewModel (L3-1)** | `PluginGalleryViewModel`: 설치된 플러그인 목록 + 설치/제거/활성화 커맨드 바인딩. `PluginItemViewModel` 래퍼 | | **파라미터 퀵링크 (L3-4)** | `QuickLinkHandler` (`ql` 프리픽스) + `UrlTemplateEngine`. `{0}`, `{query}` 플레이스홀더 치환. 설정에서 `QuickLinkEntry` 목록 관리 | | **AI 스니펫 (L3-3)** | `AiSnippetHandler` (`ai` 프리픽스) + `SnippetTemplateService`. 업무 이메일/요약/번역/코드리뷰/커밋 기본 템플릿 5종 내장. LLM 호출 후 클립보드 복사. AI 비활성화 시 항목 미표시 | diff --git a/src/AxCopilot/Assets/AX Copilot 개발자가이드.htm b/src/AxCopilot/Assets/AX Copilot 개발자가이드.htm index e26b2e0..0cbcc33 100644 --- a/src/AxCopilot/Assets/AX Copilot 개발자가이드.htm +++ b/src/AxCopilot/Assets/AX Copilot 개발자가이드.htm @@ -905,6 +905,32 @@ Ollama의 모든 모델이 도구 사용을 지원하지는 않습니다. 아래 + +
+
+
v1.8.0
+
+
+ +
+
+
diff --git a/src/AxCopilot/Assets/AX Copilot 사용가이드.htm b/src/AxCopilot/Assets/AX Copilot 사용가이드.htm index 7a34c66..01f83bd 100644 --- a/src/AxCopilot/Assets/AX Copilot 사용가이드.htm +++ b/src/AxCopilot/Assets/AX Copilot 사용가이드.htm @@ -1,4 +1,4 @@ - + @@ -344,7 +344,9 @@ td {
  • ⚡ 특수 기호 예약어
  • 📝 영문 키워드 예약어
  • 💡 유용한 팁
  • +
  • 🧠 AI 모델 호환성
  • ⚙️ 설정 기능 탭
  • +
  • 📋 버전 이력
  • @@ -737,6 +739,90 @@ td { info disk에서 드라이브 항목을 Enter하면 탐색기로 바로 열립니다.
    + + + +

    🧠 AI 모델 호환성 — 도구 사용(Function Calling) 지원 현황

    +

    +AX Agent의 Cowork/Code 탭은 도구 사용(Function Calling)을 통해 파일 읽기/쓰기, 문서 생성, 코드 실행 등을 수행합니다.
    +도구 사용을 지원하지 않는 모델에서는 Cowork/Code 기능이 정상 동작하지 않으며, Chat 탭의 일반 대화만 가능합니다. +

    + +

    ☁️ 클라우드 서비스 (모두 도구 사용 지원)

    +
    + + + + + + + + + + + + + +
    서비스모델도구 사용컨텍스트
    Claudeclaude-sonnet-4, claude-opus-4✅ 지원200K
    Claudeclaude-haiku-3.5✅ 지원200K
    Geminigemini-2.5-pro, gemini-2.5-flash✅ 지원1M
    Geminigemini-2.0-flash✅ 지원1M
    +
    + +

    🏠 Ollama 로컬 모델 — 도구 사용 지원 여부

    +

    +Ollama의 모든 모델이 도구 사용을 지원하지는 않습니다. 아래 표에서 ✅ 표시된 모델만 Cowork/Code 탭에서 사용 가능합니다. +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    모델도구 사용파라미터비고
    qwen2.5✅ 지원7B ~ 72B가장 추천 — 한국어 + 도구 사용 안정적
    qwen3✅ 지원8B ~ 32B최신 모델, 도구 지원 우수
    qwen2.5-coder✅ 지원7B ~ 32B⭐ Code 탭 추천 — 코드 특화 + 도구
    llama3.1✅ 지원8B / 70BMeta 공식 도구 지원
    llama3.3✅ 지원70B도구 호출 개선 버전
    mistral✅ 지원7B경량, 기본적인 도구 지원
    mistral-nemo✅ 지원12B도구 지원 개선
    command-r✅ 지원35BCohere, 도구 특화
    firefunction-v2✅ 지원70BFunction Calling 특화
    granite3✅ 지원2B / 8BIBM, 경량 도구 지원
    deepseek-r1❌ 미지원다양추론 특화, 도구 호출 불가
    phi3 / phi4❌ 미지원3B ~ 14B도구 미지원
    gemma2❌ 미지원9B / 27B도구 미지원
    codellama❌ 미지원7B ~ 70B코드 특화이나 도구 미지원
    llava / bakllava❌ 미지원다양비전 특화
    +
    + +

    💡 사내 환경 추천 조합

    +
    + + + + + + + + + + + + + +
    용도추천 모델VRAM설명
    Cowork (문서 작성)qwen2.5:32b 이상24GB+한국어 품질과 도구 사용 모두 우수
    Code (코드 작성)qwen2.5-coder:32b24GB+코드 특화 + 도구 지원
    경량 (GPU 부족)qwen2.5:7b 또는 granite3:8b8GB기본적인 도구 사용 가능
    최고 품질 (로컬)qwen3:32b 또는 llama3.3:70b24~48GB+대규모 문서/코드 작업에 적합
    +
    + +
    + ⚠️ 도구 미지원 모델 사용 시
    + 도구 사용을 지원하지 않는 모델을 Cowork/Code 탭에서 사용하면 400 BadRequest 에러가 발생합니다.
    + 이 경우 AX Copilot이 자동으로 일반 텍스트 응답으로 전환하지만, 파일 생성·코드 실행 등의 에이전트 기능은 사용할 수 없습니다.
    + Chat 탭의 일반 대화는 모든 모델에서 정상 동작합니다. +
    + @@ -815,6 +901,11 @@ td { + + + + + diff --git a/src/AxCopilot/Assets/guide_dev.enc b/src/AxCopilot/Assets/guide_dev.enc index e798fe5..1dd8757 100644 Binary files a/src/AxCopilot/Assets/guide_dev.enc and b/src/AxCopilot/Assets/guide_dev.enc differ diff --git a/src/AxCopilot/Assets/guide_user.enc b/src/AxCopilot/Assets/guide_user.enc index d1264f8..7b3fb03 100644 Binary files a/src/AxCopilot/Assets/guide_user.enc and b/src/AxCopilot/Assets/guide_user.enc differ