|
|
0a58419c8a
|
[Phase 17-C] 훅 시스템 고도화 — 11종 이벤트 연결 + Prompt 모드 구현
AppSettings.AgentConfig.cs:
- ExtendedHooksConfig에 4개 이벤트 추가:
preToolUse, postToolUse, postToolUseFailure, agentStop
AgentLoopService.ExtendedHooks.cs (신규, 150줄):
- RunExtendedEventAsync(): 이벤트 훅 실행, 결과(additionalContext) 시스템 메시지 주입, HookFired 이벤트 로그
- GetExtendedHooks(): 설정에서 HookEventKind별 런타임 엔트리 조회
- ConvertToRuntimeEntries(): ExtendedHookEntryConfig → ExtendedHookEntry 변환
- ApplyExtendedHookResult(): additionalContext in-place 주입 (marker 기반 교체)
ExtendedHookRunner.cs:
- RunEventAsync() / ExecuteSingleAsync()에 LlmService? llm 파라미터 추가
- RunPromptHookAsync() 신규: {{tool_name/input/output/user_message/event/session_id}} 치환
→ LLM 호출 → block/deny/차단 감지 시 Block=true 반환
- using AxCopilot.Models 추가
AgentLoopService.cs:
- SessionStart 훅 (fire-and-forget, TaskState init 직후)
- UserPromptSubmit 훅 (동기, Block=true 시 즉시 반환 "⚠ 훅 정책에 의해 차단")
- PreCompact 훅 (적극적 압축 직전, 동기)
- PostCompact 훅 × 2 (기본/적극적 압축 완료 후, fire-and-forget)
- SessionEnd + AgentStop 훅 (finally 블록, fire-and-forget)
AgentLoopService.Execution.cs:
- RunToolHooksAsync() 개선: 레거시 AgentHookRunner 유지
+ ExtendedHookRunner PreToolUse/PostToolUse/PostToolUseFailure 추가
이벤트 커버리지: 11종 완전 연결. Agent 모드는 Phase 18-A 예정.
빌드: 경고 0, 오류 0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-04 00:14:19 +09:00 |
|
|
|
b750849c9f
|
[Phase52] 7개 파일 추가 분리 — 14개 파일로 재구성
LlmService.Streaming:
- LlmService.Streaming.cs: 516 → 256줄 (Ollama/OpenAI 유지)
- LlmService.GeminiClaude.cs (신규): Gemini+Claude 스트리밍 (~260줄)
DocxSkill:
- DocxSkill.cs: 543 → 158줄 (ExecuteAsync 유지)
- DocxSkill.Builders.cs (신규): 11개 문서 빌더 헬퍼 (290줄)
ChartSkill:
- ChartSkill.cs: 537 → 174줄 (ExecuteAsync+RenderChart 유지)
- ChartSkill.Renderers.cs (신규): 7개 차트 렌더러+헬퍼+Dataset (280줄)
ScreenCaptureHandler:
- ScreenCaptureHandler.cs: 637 → 241줄 (기본 캡처 유지)
- ScreenCaptureHandler.Helpers.cs (신규): 스크롤/영역 캡처+헬퍼 (310줄)
SystemInfoHandler:
- SystemInfoHandler.cs: 509 → 352줄
- SystemInfoHandler.Helpers.cs (신규): 8개 헬퍼+StarInfoHandler (161줄)
AppSettings:
- AppSettings.cs: 564 → 309줄 (AppSettings/Launcher/CustomTheme 유지)
- AppSettings.Models.cs (신규): 14개 설정 모델 클래스 (233줄)
SkillEditorWindow:
- SkillEditorWindow.xaml.cs: 528 → 303줄
- SkillEditorWindow.PreviewSave.cs (신규): 미리보기+저장+로드 (226줄)
빌드: 경고 0, 오류 0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 21:40:56 +09:00 |
|
|
|
f5a1ba999c
|
[Phase 45] AppSettings.cs 클래스 파일 분리 (57% 감소)
31개 클래스 혼재 AppSettings.cs (1,320줄)를 3개 파일로 분리:
- AppSettings.cs → 564줄 (AppSettings·LauncherSettings·CustomThemeColors 등 17개 클래스)
- AppSettings.LlmSettings.cs → 481줄 (LlmSettings 408줄·CodeSettings)
- AppSettings.AgentConfig.cs → 284줄 (권한·훅·이벤트·모델·프리셋 등 12개 클래스)
모두 독립 top-level 클래스 (partial 불필요)
빌드: 경고 0, 오류 0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 20:10:03 +09:00 |
|