v3.3.0
안녕하세요 서브에이전트 사용자 여러분! 👋
v3.3.0 이전에는 서브에이전트를 생성하는 것이 무한한 공간으로 보내는 것과 같았습니다. 프롬프트를 주고 운을 빌며 기다렸습니다. 실제로 어떤 지시사항을 보냈는지 알고 싶으셨나요? 안타깝게도 delegate_task는 그 비밀을 지켰습니다.
이제 task를 통해:
클릭하여 검사: 모든 task 도구 호출은 UI에서 클릭 가능합니다. 한 번의 클릭으로 전체 컨텍스트가 드러납니다.
ctx.metadata(): 서브에이전트 작업은 이제 제목, 설명, 프롬프트, 카테고리, 모델 — 필요한 모든 것을 저장합니다.
storeToolMetadata(): 도구 호출은 단순히 실행되는 것이 아니라 문서화됩니다.
위임은 더 이상 맹목적인 신뢰가 아닙니다 — 관찰 가능하고, 디버깅 가능하며, 투명합니다.
CLI: run 명령어에 --port, --attach, --session-id, --on-complete, --json 플래그 추가
Opus 4.6: anthropic-effort 훅을 통한 자동 effort=max 설정
플러그인 안전성: plugin_load_timeout_ms, safe_hook_creation, safeCreateHook()
ACP (Zed): 18배 session.prompt → promptAsync 수정
MCP 설정: ~/.claude.json과 ~/.claude/.mcp.json 모두 읽기
UserPromptSubmitHooks: 이제 모든 프롬프트에서 실행됨
압축: TODO 보존 개선
계단식 취소: 부모 삭제 시 자식 서브에이전트 취소
Windows: 여러 크래시 수정
데스크톱 앱: 크로스 플랫폼 경로 지원
마이그레이션: 시스템 모듈화
LFG ulw ulw! 🔥
cli: run 명령어를 port, attach, session-id, on-complete, json 옵션으로 확장
config: plugin_load_timeout_ms 및 safe_hook_creation 실험 플래그 추가
shared: 오류 안전 훅 생성을 위한 safeCreateHook 유틸리티 추가
플러그인 라이프사이클에 anthropic-effort 훅 등록
Opus 4.6을 위해 effort=max를 주입하는 anthropic-effort 훅 추가
mcp-loader: CLI 관리 사용자 MCP 설정을 위해 ~/.claude/.mcp.json도 읽기
look-at: isJsonParseError 임시 해결책 제거 (근본 원인 수정됨)
tools: delegate-task 및 call-omo-agent에서 session.prompt를 promptAsync로 전환
hooks: 모든 훅에서 session.prompt를 promptAsync로 전환
background-agent: session.prompt를 promptAsync로 전환
core: 호환성 shim을 promptAsync로 전환
shared: promptWithModelSuggestionRetry를 promptAsync 사용으로 전환
hooks: UserPromptSubmitHooks를 첫 프롬프트뿐만 아니라 모든 프롬프트에서 실행 (#594)
mcp-loader: ~/.claude.json에서 사용자 수준 MCP 설정 읽기 (#814)
skill-loader: 발견된 스킬을 browserProvider로 필터링 (#1563)
plan 유사 에이전트에 대해 ultrawork 주입 건너뛰기 (#1501)
migration: task_system 백업 쓰기 중지 (#1561)
파일시스템 대신 모듈을 모킹하도록 dedup 복구 테스트 재작성
CI 테스트 불안정성을 수정하기 위해 lazy storage dir 해석 사용
prompt-too-long 오류에 대한 압축 복구에 중복 제거 연결 (#96)
압축 todo 보존자 훅 등록
압축 todo 보존자 훅 추가
발명된 압축 제약 조건 회피
잘린 결과가 maxLength 제한 내에 유지되도록 보장
부모 세션이 삭제될 때 하위 작업 계단식 취소 (#114)
팩토리 패턴을 사용하도록 session-manager 테스트 업데이트
스킬 설명 문자 제한을 위해 문장 분할 대신 문자 제한 사용 (#358)
commit_footer 설정에 대해 문자열 값 허용 (#919)
데스크톱 앱 지원을 위해 도구에서 ctx.directory 대신 process.cwd() 사용
startsWith 확인 전에 resolvedPath 정규화
모든 서브에이전트 가능 에이전트를 포함하도록 ALLOWED_AGENTS 확장
boulder 연속은 이제 /stop-continuation 가드를 존중함
거짓 양성을 방지하기 위해 .sisyphus 경로 확인을 ctx.directory에 고정
플랫폼 인식 바이너리 감지 사용 (Windows에서는 where, Unix에서는 which)
CLI run 명령어에서 대시 접두사 인수 허용
ast-grep에 대해 시스템 'sg' 명령어로 폴백하지 않음
CLI run 명령어에서 대시 접두사 인수 허용
_migrations 필드에 히스토리를 저장하여 모델 마이그레이션이 한 번만 실행되도록 함
stdout.write 래퍼를 통해 인코딩/콜백 인수 명시적으로 전달
test: on-complete-hook 테스트에서 shadowed consoleErrorSpy 선언 제거
cubic 4/5 검토 문제 해결
test: CI 실패를 방지하기 위해 통합 테스트에서 SDK 및 port-utils 모킹
플러그인 로딩 완료 후 race timeout 초기화
index: 훅 생성을 safeCreateHook으로 래핑 + 방어적 옵셔널 체이닝 추가 (#1559)
config-handler: loadAllPluginComponents 주변에 timeout + 오류 경계 추가 (#1559)
잘못된 도구 호출을 방지하기 위해 도구 이름에서 공백 제거
Prometheus가 .sisyphus/*.md 계획 파일을 덮어쓸 수 있도록 허용
hooks: matcher.hooks에 대한 방어적 null 확인을 추가하여 Windows 크래시 방지 (#441)
시스템 기본값보다 사용자 구성 에이전트 모델 존중
시스템 기본값보다 사용자 구성 에이전트 모델 존중
anthropic-effort 훅에서 정의되지 않은 modelID에 대한 보호
migration: 모델 및 카테고리 헬퍼 분할 (#1561)
migration: 에이전트 및 훅 맵 추출 (#1561)
컨텍스트 윈도우 복구 훅 추출
delegate_task를 메타데이터 수정이 포함된 task 도구로 마이그레이션
Merge pull request #1620 from potb/acp-json-error
Merge pull request #1621 from code-yeongyu/fix/814-mcp-config-both-paths
Merge pull request #1616 from code-yeongyu/fix/814-user-mcp-config
Merge pull request #1618 from code-yeongyu/fix/594-user-prompt-submit-fires-once
Merge pull request #1615 from code-yeongyu/fix/1563-browser-provider-gating
Merge pull request #1584 from code-yeongyu/fix/441-matcher-hooks-undefined
Merge pull request #1614 from code-yeongyu/fix/1501-ulw-plan-loop
Merge pull request #1613 from code-yeongyu/fix/1561-dead-migration
Merge pull request #1610 from code-yeongyu/fix/96-compaction-dedup-recovery
Merge pull request #1611 from code-yeongyu/fix/1481-1483-compaction
Merge pull request #1607 from code-yeongyu/fix/358-skill-description-truncation
Merge pull request #1608 from code-yeongyu/fix/114-cascade-cancel
Merge pull request #1606 from code-yeongyu/fix/658-tools-ctx-directory
Merge pull request #1605 from code-yeongyu/fix/919-commit-footer-v2
Merge pull request #1593 from code-yeongyu/fix/prometheus-plan-overwrite
Merge pull request #1604 from code-yeongyu/fix/957-allowed-agents-dynamic
Merge pull request #1594 from code-yeongyu/fix/boulder-stop-continuation
Merge pull request #1603 from code-yeongyu/fix/1269-windows-which-detection
Merge pull request #1601 from code-yeongyu/fix/899-cli-run-dash-args
Merge pull request #1602 from code-yeongyu/fix/1365-sg-cli-path-fallback
Merge pull request #1597 from code-yeongyu/fix/899-cli-run-dash-args
Merge pull request #1595 from code-yeongyu/fix/tool-name-whitespace
Merge pull request #1592 from code-yeongyu/fix/issue-1570-onetime-migration
Merge pull request #1590 from code-yeongyu/feat/run-cli-extensions
Merge pull request #1585 from code-yeongyu/fix/1559-crash-boundary
Revert "Merge pull request #1578 from code-yeongyu/fix/user-configured-model-override"
Merge pull request #1578 from code-yeongyu/fix/user-configured-model-override
Merge pull request #1564 from code-yeongyu/feat/anthropic-effort-hook
Merge pull request #1543 from code-yeongyu/feat/task-tool-refactor
전체 변경 로그: v3.2.4...v3.3.0