Tool description은 public
도구 description에 쓰는 건 도구 언급되는 매 호출에 Anthropic으로 감. 호스트네임, 내부 경로, 테이블 이름, 시크릿 힌트 포함. 배포 전 시크릿 strip — description은 private 노트 필드 X.
Side effect는 명시적 권한 필요
Read 도구(search, lookup, get)는 보통 unattended 실행 OK. Write 도구(create, modify, delete)는 human-in-the-loop 체크 받을 가치. Agent SDK가 permission 프롬프트로 네이티브 지원; Client SDK에선 너가 빌드. 어느 쪽이든 모델이 acknowledgment 없이 destructive side effect trigger 절대 X.
위험한 거 sandbox
Tool이 셸 명령 실행, 코드 실행, 파일시스템 hit하면 샌드박스에 살아 — 제한된 env vars, 작업 디렉토리 화이트리스트, 시간 예산, 출력 크기 cap. Anthropic의 code_execution이 샌드박스에서 도는 거; 너 커스텀 도구도 매치해야.
원칙: Tool엔 권한 있어. Untrusted user한테 노출된 새 API 엔드포인트 audit하듯 매 도구 audit.