C.W.K.
Stream
Lesson 04 of 08 · published

디폴트 도구 셋: free로 받는 거

~14 min · tools, default-tools, filesystem, bash

Level 0Observer
0 XP0/64 lessons0/13 achievements
0/150 XP to next level150 XP to go0% complete

Agent SDK가 자기 도구 ship

Out of the box, Agent SDK가 Claude Code가 human user한테 주는 거 mirror하는 파일시스템·셸 도구 제공 — Read, Write, Edit, Bash, Glob, Grep, WebFetch, Task, NotebookEdit 등. 모델이 다른 도구처럼 select; permission 프롬프트가 디폴트로 gate.

도구마다 자기 규율

Read가 파일 읽기(크기·offset 컨트롤 가짐). Write가 새 파일 생성. Edit가 string 교체 — 편집 전 파일 먼저 읽어야. Bash가 cwd 안 셸 명령 run. Glob가 path 매치; Grep이 콘텐츠 검색. 각각 비용·안전 영향 옵션 가짐.

화이트리스트, 블랙리스트 X

에이전트가 read와 search만 필요하면 정확히 그렇게 선언. 디폴트 셋이 의도적으로 broad; 프로덕션 에이전트는 aggressively narrow하고 이유 문서화. cwkPippa 피파가 full set 허용 — pair-programming 동반자라; customer-service 에이전트는 Bash 가지면 안 됨.

원칙: Tool 능력은 권한. Feature 플래그처럼 X, 권한처럼 audit.

Code

흔한 allowed_tools 조합·python
# Read-only 감사자
READ_ONLY = ["Read", "Grep", "Glob", "WebFetch"]

# 문서 편집자 (read + edit, no shell, no new file 생성)
DOC_EDITOR = ["Read", "Grep", "Glob", "Edit"]

# Pair 프로그래머 (full set, but no Task delegation)
PAIR_PROGRAMMER = [
    "Read", "Write", "Edit",
    "Glob", "Grep", "WebFetch",
    "Bash", "NotebookEdit",
]

# Sysadmin assistant용 just bash
SYSADMIN = ["Bash", "Read"]
Edit이 같은 세션에 사전 Read 요구·python
# Agent SDK의 Edit 도구가 파일이 이 세션에 Read 안 됐으면 거부.
# 의도적 — 변경 전 모델이 현재 콘텐츠 보게 강제.
# 너 코드가 강제 X; SDK가.
#
# 함의 — 세션 reset(새 ClaudeSDKClient)이면 모델이 재-읽기 필요.
# 정확히 세션-scoped 상태의 안전 보장.

External links

Exercise

지금 에이전트가 호출 가능한 모든 Agent SDK 도구 리스트. 각각에 대해 존재 정당화 한 문장. 정당화 못 하는 거 제거.
Hint
'모델이 필요할 수도 있어서'가 정당화면 그건 정당화 X — permission 자세 문제.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.