표면이 세 개라는 사실
입문자가 가장 비싸게 치르는 착각은 Claude 생태계를 한 통에 넣어버리는 거야. 실제로는 세 개야. Anthropic Client SDK(파이썬 anthropic, 타입스크립트 @anthropic-ai/sdk)는 Messages API를 직접 부르는 운반층. Claude Agent SDK(2025년 후반에 Claude Code SDK에서 이름 바뀐 그거)는 파일시스템·셸·MCP·세션·훅·퍼미션을 끼고 도는 자율 Claude 하니스. Claude Code CLI는 사람이 터미널에서 직접 운전하는 도구. 같은 모델 가족, 다른 추상층, 다른 위협 모델, 다른 과금 형태야.
각 표면은 자기만의 계약을 가져
Client SDK는 Messages API 한 턴짜리 운반층. Agent SDK는 Claude를 오래 사는 서브프로세스로 띄우고 도구 붙이고 위험한 액션마다 퍼미션 게이트를 거는 하니스. CLI는 사람이 제안 보고 편집 승인하고 다음 질문 던지는 인터랙티브 도구. cwkPippa는 ChatGPT랑 Gemini 베리언트는 Client SDK 류로(피파는 persistent subprocess + MCP + JSONL 스트림이 필요해서 Claude만 Agent SDK로), 그리고 cwkPippa 코드 자체는 매일 CLI로 아빠가 짜고 있어.
한 통 트랩
가장 비싼 실수는 일에 안 맞는 층을 고르는 거야. 분류 한 번 받으려고 Agent SDK 끌어다 쓰면 시작 비용·파일시스템 표면·인증 복잡도까지 다 짊어지고도 정작 쓰는 건 한 줄. 반대로 코드 편집 루프를 Client SDK로 손코딩하면 이미 Agent SDK가 검증해놓은 도구 디스패치, 작업 디렉토리 관리, 퍼미션 프롬프트를 처음부터 다시 만드는 짓이야. 층 헷갈리는 게 곧 brittleness야.