컨텍스트 사용량 조회와 도구 설명 주석 지원
컨텍스트 사용량을 조회하는 메서드와 타입 주석 기반 도구 설명 지원이 추가되었습니다.
교안에 영향
기존 안내에서 connect(prompt="...") 사용 시 문자열 prompt가 전달된다는 설명은 더 이상 맞지 않았던 버그를 전제로 하면 수정이 필요합니다.
요약
- ClaudeSDKClient에 get_context_usage() 메서드가 추가되어 범주별 컨텍스트 창 사용량을 조회할 수 있습니다. - @tool 데코레이터와 create_sdk_mcp_server가 typing.Annotated를 지원해 JSON Schema에 매개변수별 설명을 넣을 수 있습니다. - ToolPermissionContext에 tool_use_id와 agent_id가 노출되어 병렬 권한 요청을 구분할 수 있습니다. - ClaudeAgentOptions에 session_id 옵션이 추가되었고, connect()의 문자열 prompt 처리와 취소 요청 처리 버그가 수정되었습니다.
바뀐 것
새 기능
- ClaudeSDKClient에 get_context_usage() 메서드가 추가되어 범주별 컨텍스트 창 사용량을 조회할 수 있습니다.
- @tool 데코레이터와 create_sdk_mcp_server가 typing.Annotated를 지원하여 매개변수별 설명을 JSON Schema에 반영할 수 있습니다.
- ToolPermissionContext에 tool_use_id와 agent_id가 노출되어 병렬 권한 요청을 구분할 수 있습니다.
- ClaudeAgentOptions에 session_id 옵션이 추가되어 사용자 지정 세션 ID를 지정할 수 있습니다.
기타
- 번들된 Claude CLI를 2.1.87로 업데이트하고 예제 테스트의 CI 시간 제한을 늘리며 오류 처리 예제의 대기 시간을 줄였습니다.
수정
- connect(prompt="...")에서 문자열 prompt가 누락되어 receive_messages()가 멈추는 문제를 수정했습니다.
- control_cancel_request 처리를 구현해 CLI가 중단한 진행 중 hook 콜백이 올바르게 취소되도록 했습니다.