Claude Code 연동과 Hub 안정성 개선
Claude Code 제공자 동작과 Hub 데몬 안정성을 고치고, 토큰·이벤트 텔레메트리 집계를 개선했습니다.
교안에 영향
기존 문서의 Claude Code provider 사용 안내와 Hub 데몬 종료·업그레이드, 토큰 텔레메트리 설명이 일부 맞지 않게 됩니다.
요약
- Claude Code provider가 자체 도구를 선언하도록 바꾸고, 작업공간 기준 세션과 ~/.claude 및 프로젝트 설정 로드를 반영해 에이전트 작업이 가능해졌습니다. - 잘린 tool-call JSON, 빈 내용만 있는 메시지, 스트리밍 도구 호출 중간 충돌을 고쳐 strict provider와 LiteLLM 경로의 오류를 줄였습니다. - Managed Hub 데몬의 업그레이드/종료 동작을 정리하고, run.started와 토큰 텔레메트리 집계를 더 정확하게 바꿨습니다. - 로그아웃 보고와 세션 갱신 처리, 불필요한 per-token stream delta 텔레메트리 기록 방식도 개선했습니다.
바뀐 것
개선
- Managed Hub daemons가 다른 설치본의 더 새로운 Hub build를 만나면 해당 daemon으로 방향성 있게 업그레이드하도록 바꿨습니다.
- run.started는 대상 session이 확인된 뒤에만 발생하고, originating requestId와 clientId를 함께 담도록 바뀌었습니다.
- Token telemetry가 uncached input, cache reads, cache writes로 분리된 per-request buckets를 보고하도록 바뀌었습니다.
기타
- Per-token stream deltas를 telemetry에 더 이상 미러링하지 않도록 했습니다.
수정
- Claude Code provider가 Cline의 변환되지 않는 도구 정의를 받지 않고 자체 native tools를 선언하도록 고쳤습니다.
- 세션이 호스트의 cwd가 아니라 workspace directory에 고정되도록 바꿨습니다.
- ~/.claude와 project settings를 불러와 사용자가 설정한 permission rules가 적용되도록 했습니다.
- workspace 안의 file edits는 자동 승인되지만 command execution은 사용자의 Claude settings에 따라 계속 제한됩니다.
- 끝나지 않은 문자열이 있는 truncated tool-call JSON은 잘못 보정하지 않고 거부하도록 고쳤습니다.
- content가 빈 text part만 가진 메시지 때문에 strict providers가 'user message must have content'로 거부하던 문제를 고쳤습니다.
- LiteLLM의 Anthropic passthrough에서 보이던 non-zero 또는 non-contiguous indexes의 streamed tool calls 중간 충돌을 AI SDK packages 업데이트로 고쳤습니다.
- Managed Hub에서 shutdown 시 client가 연결된 상태로 hub server close failed rejection이 기록되고 비정상 종료되던 문제를 고쳤습니다.
- 거부된 refresh token으로 인한 의도치 않은 Cline 로그아웃을 실제 로그아웃으로 보고하도록 고쳤습니다.
- 시작 시 저장된 session 갱신 중 발생하는 일시적 network failure가 로그아웃으로 기록되지 않도록 바꿨습니다.