youtubedeep-analysi

Claude Agent SDK [Full Workshop] — Thariq Shihipar, Anthropic

2026-01-17
17 min read
3360 words

Video

Channel: @aqd2075 | Published: 2026-01-05T09:00:06-08:00


1. Executive Summary

📋

Executive Summary

핵심 메시지: Anthropic의 Claude Agent SDK는 AI 에이전트를 효과적으로 구축하기 위한 강력한 프레임워크로, Bash 도구와 파일 시스템을 활용한 컨텍스트 엔지니어링을 통해 자율적이고 유연한 AI 워크플로를 실현한다.

주요 포인트:

  1. 에이전트는 LLM 기능에서 워크플로, 그리고 자율적 시스템으로 진화하며, Claude Agent SDK는 이를 위한 '하네스(Harness)'를 제공한다.

  2. Bash 도구가 가장 강력한 도구로 강조되며, 파일 시스템을 통해 컨텍스트를 동적으로 관리하여 에이전트의 상태 유지와 검증을 가능하게 한다.

  3. 에이전트 루프(컨텍스트 수집 → 생각 → 행동 → 관찰)를 통해 자가 수정이 가능하며, 훅(Hooks)과 서브 에이전트로 복잡한 작업을 처리한다.

영상 구조 개요: 이 워크숍은 에이전트 개념 소개와 SDK 아키텍처 설명으로 시작해 라이브 코딩 데모를 통해 에이전트 루프와 도구 구현을 보여주고, Q&A로 실전 적용과 한계를 논의한다. 전체적으로 이론, 실습, 토론의 순서로 진행되어 SDK의 실용성을 강조한다.

대상 청중: AI 개발자, 소프트웨어 엔지니어, 스타트업 개발자 등 AI 에이전트와 자동화 워크플로를 구축하려는 중급 이상의 기술자들.


2. Chapter Analysis

📝

챕터별 분석

00:00 소개: 의제와 '에이전트' 정의 타리크 시히파르는 워크숍을 시작하며 Anthropic의 Claude Agent SDK(구 Claude Code SDK)를 소개한다. 그는 에이전트를 '자신의 컨텍스트를 구축하고, 자신의 궤적을 결정하며, 매우 자율적으로 작동하는 시스템'으로 정의하며, 이는 단순한 LLM 기능(분류, 단일 턴)이나 워크플로(구조화된 다단계 체인, 예: RAG)에서 한 걸음 더 나아간 개념이라고 설명한다. 그는 GPT-3 출시 이후 AI 기능이 어떻게 진화했는지 회상하며, 에이전트가 내부 도구 개발에서 반복적으로 재구축된 부분을 해결하기 위해 SDK를 만들었다고 밝힌다. 이는 에이전트가 고정된 파이프라인을 따르지 않고 자율적으로 작업을 수행할 수 있게 하여, 개발자들이 더 복잡한 AI 시스템을 효율적으로 프로토타이핑할 수 있게 한다는 점에서 중요하다. 예를 들어, Claude Code를 표준 에이전트 예시로 들며, SDK가 이를 기반으로 구축된 이유를 강조한다.

05:15 '하네스' 개념: 도구, 프롬프트, 스킬 시히파르는 에이전트의 핵심인 '하네스(Harness)'를 설명한다. 하네스는 모델 외에 도구, 프롬프트, 파일 시스템, 스킬, 서브 에이전트, 메모리를 포함하는 구조로, 단순한 모델 호출을 넘어 포괄적인 에이전트 시스템을 만든다. 그는 도구가 원자적 행동을, 스킬이 점진적 컨텍스트 공개를 담당한다고 하며, 이는 에이전트가 전문성을 내재화하고 안전하게 작동할 수 있게 한다. 예를 들어, 소프트웨어 개발, 금융, 의료, 법률 분야의 실제 사례를 들어 하네스가 어떻게 다양한 도메인에 적용되는지 보여주며, Anthropic의 '의견'으로 유닉스 기본 요소(예: Bash)와 코드 생성이 에이전트 구축의 핵심이라고 강조한다. 이는 맞춤형 도구를 만드는 대신 기존 소프트웨어를 활용해 유연성을 높인다는 점에서 혁신적이며, 개발자들이 에이전트를 더 빠르게 프로토타이핑할 수 있게 한다.

10:10 라이브 코딩 설정: 에이전트 클래스와 환경 초기화 라이브 코딩을 시작하며, 시히파르는 에이전트 클래스를 초기화하는 과정을 보여준다. 그는 Python 환경을 설정하고, Anthropic API 키를 통해 Claude 모델을 연결하며, 기본 에이전트 루프를 구성한다. 이는 에이전트가 컨텍스트를 수집하고 행동을 취하는 기본 구조를 세우는 단계로, 모델이 XML 형식으로 도구 호출을 출력하도록 프롬프트를 설계한다. 그는 이 설정이 왜 중요한지 설명하며, 간단한 초기화로 복잡한 에이전트를 구축할 수 있음을 강조한다. 예를 들어, 환경 변수 설정과 클래스 정의를 통해 에이전트가 안전하게 작동하도록 샌드박싱을 언급하며, 이는 개발자들이 로컬에서 바로 테스트할 수 있게 하여 SDK의 접근성을 높인다.

15:45 '생각' 단계 구현: 행동 전에 모델이 추론하도록 함 '생각(Think)' 단계를 구현하며, 모델이 행동 전에 추론하도록 유도하는 프롬프트를 설명한다. 그는 에이전트가 문제를 분석하고 계획을 세우는 과정을 강조하며, 이는 단순한 도구 호출이 아닌 지능적 결정으로 이어진다고 한다. 예를 들어, XML 태그를 사용해 생각과 행동을 구분짓는 방법을 보여주며, 이 단계가 에이전트의 자율성을 강화한다고 설명한다. 이는 에이전트가 '스턱(stuck)' 상태를 피하고 자가 수정할 수 있게 하며, 개발자들이 모델의 추론 과정을 모니터링할 수 있게 한다. 시히파르는 이 구현이 왜 핵심인지, 즉 에이전트가 인간처럼 생각하며 행동할 수 있게 한다는 점을 강조한다.

25:20 에이전트 루프: act, observe, loop 연결 에이전트 루프를 연결하며, 컨텍스트 → 생각 → 행동 → 관찰의 사이클을 설명한다. 그는 이 루프가 에이전트의 핵심으로, 각 단계에서 피드백을 통해 자가 수정이 가능하다고 한다. 라이브 코딩으로 act 함수가 도구를 호출하고, observe가 결과를 관찰하며, loop가 반복을 제어하는 과정을 보여준다. 예를 들어, 루프가 종료 조건(예: 작업 완료)을 확인하는 방식을 설명하며, 이는 에이전트가 복잡한 작업을 지속적으로 처리할 수 있게 한다. 시히파르는 이 루프가 '예술적 직관'이 필요하다고 하며, 왜 중요한지, 즉 고정 워크플로와 달리 동적 적응을 가능하게 한다는 점을 강조한다.

33:10 도구 실행: XML 파싱과 도구 입력 처리 도구 실행 부분에서 XML 파싱을 통해 모델 출력을 처리하는 방법을 보여준다. 그는 모델이 XML 형식으로 도구 호출을 생성하면 이를 파싱해 입력을 처리한다고 설명하며, 이는 에이전트가 안전하게 도구를 사용하도록 한다. 예를 들어, 잘못된 XML을 처리하는 에러 핸들링을 코드로 구현하며, 이 과정이 왜 필수적인지, 즉 입력 검증으로 안정성을 높인다는 점을 논의한다. 시히파르는 이 구현이 에이전트의 신뢰성을 보장하며, 개발자들이 다양한 도구를 쉽게 통합할 수 있게 한다고 강조한다.

42:00 'Bash' 도구: 에이전트에게 명령줄 액세스 제공 Bash 도구를 소개하며, 에이전트에게 쉘 액세스를 주는 것이 가장 강력한 도구라고 주장한다. 그는 맞춤 도구 대신 Bash를 통해 기존 소프트웨어(예: ffmpeg, grep, git)를 활용하면 유연성이 높아진다고 설명한다. 라이브 코딩으로 Bash 명령을 실행하는 함수를 구현하며, 예를 들어 파일 변환 작업에서 Bash가 어떻게 문제를 해결하는지 보여준다. 이는 에이전트가 인간 개발자처럼 작동하게 하며, 왜 중요한지, 즉 도구 개발 비용을 줄이고 복잡한 작업을 처리한다는 점을 강조한다. 시히파르는 'Bash가 전부다'라는 의견을 피력하며, SDK의 설계 철학을 드러낸다.

49:30 안전 및 권한: 'ReadOnly' vs 'ReadWrite' 파일 액세스 안전과 권한을 논의하며, ReadOnly와 ReadWrite 모드를 설명한다. 그는 '스위스 치즈 방어'처럼 다층 보안을 강조하며, 파일 시스템 액세스를 제한해 에이전트가 안전하게 작동하도록 한다. 예를 들어, ReadOnly 모드에서 에이전트가 파일을 읽기만 하고 쓰지 못하게 하는 코드를 보여주며, 이는 데이터 무결성을 보호한다. 시히파르는 이 기능이 왜 핵심인지, 즉 에이전트의 자율성과 보안을 균형 있게 맞춘다는 점을 설명하며, 프로덕션 환경에서의 중요성을 강조한다.

58:15 컨텍스트 엔지니어링: lscat을 사용한 동적 컨텍스트 구축 컨텍스트 엔지니어링을 소개하며, 파일 시스템을 통해 동적 컨텍스트를 구축하는 방법을 설명한다. 그는 프롬프트 엔지니어링 대신 lscat으로 파일을 탐색하고 내용을 로드해 상태를 관리한다고 한다. 예를 들어, 에이전트가 CLAUDE.md 파일을 생성해 미래 행동을 grounding하는 과정을 보여주며, 이는 메모리 역할을 한다. 시히파르는 이 접근이 왜 혁신적인지, 즉 파일 시스템이 검증 가능한 '지상 진리(ground truth)'를 제공한다는 점을 강조하며, 장기 작업에서의 상태 유지를 가능하게 한다.

1:05:00 '모니터': 에이전트의 사고 과정 실시간 보기 모니터 기능을 설명하며, 에이전트의 생각 과정을 실시간으로 보는 방법을 보여준다. 그는 로그와 시각화를 통해 디버깅을 용이하게 한다고 하며, 예를 들어 루프 중 생각 단계를 출력하는 코드를 구현한다. 이는 개발자들이 에이전트의 내부 상태를 이해하고 문제를 진단할 수 있게 하며, 왜 중요한지, 즉 투명성이 에이전트 개발의 핵심이라는 점을 논의한다. 시히파르는 이 도구가 프로토타이핑 속도를 높인다고 강조한다.

1:12:45 '스턱' 상태 처리: 피드백 루프와 오류 수정 '스턱' 상태를 처리하는 방법을 설명하며, 피드백 루프와 오류 수정을 통해 에이전트가 회복하도록 한다. 그는 반복 루프에서 오류를 감지하고 재시도하는 로직을 보여주며, 예를 들어 작업 실패 시 컨텍스트를 재구축하는 방식을 설명한다. 이는 에이전트의 견고성을 높이며, 왜 중요한지, 즉 자가 수정 능력이 에이전트를 실용적으로 만든다는 점을 강조한다. 시히파르는 이 기능이 복잡한 작업에서 필수적이라고 한다.

1:21:20 다중 턴 복잡 작업: '연구 에이전트' 데모 구축 연구 에이전트 데모를 통해 다중 턴 작업을 보여준다. 그는 웹 검색과 데이터 수집을 결합한 에이전트를 구축하며, Bash와 파일 시스템을 사용해 결과를 저장한다고 설명한다. 예를 들어, 주제 연구에서 에이전트가 단계적으로 정보를 모으는 과정을 라이브 코딩한다. 이는 에이전트가 장기 작업을 처리할 수 있음을 증명하며, 왜 중요한지, 즉 실전 적용 가능성을 보여준다는 점을 강조한다.

1:35:10 리팩토링 패턴: '훅'과 결정론적 오버라이드 리팩토링 패턴으로 훅(Hooks)을 소개하며, 에이전트 응답을 가로채 피드백을 주입하는 방법을 설명한다. 그는 환각이나 생략 오류를 수정하기 위해 '읽기 전에 쓰지 마라' 같은 규칙을 강제한다고 하며, 예를 들어 훅이 스크립트 확인을 유도하는 코드를 보여준다. 이는 결정론성을 높이며, 왜 중요한지, 즉 모델 재훈련 없이 행동을 제어한다는 점을 강조한다. 시히파르는 이 패턴이 프로덕션 준비를 돕는다고 한다.

1:48:39 Q&A: 재현성, 헬퍼 스크립트, 비결정성 Q&A에서 재현성을 논의하며, 프로토타입을 프로덕션 코드로 변환하는 방법을 설명한다. 그는 헬퍼 스크립트와 시드 설정으로 비결정성을 관리한다고 하며, 예를 들어 랜덤성을 제어하는 팁을 공유한다. 이는 에이전트의 신뢰성을 보장하며, 왜 중요한지, 즉 상용화에서의 안정성을 강조한다.

1:50:31 Q&A: 대규모 코드베이스(5천만 줄 이상) 전략 대규모 코드베이스 전략으로, grep이나 컨텍스트 윈도우 스터핑의 한계를 지적하며, CLAUDE.md 파일과 서브디렉토리 시작을 추천한다. 그는 의미 검색의 취약성을 설명하며, 예를 들어 5천만 줄 코드에서 에이전트를 제한적으로 운영하는 방법을 논의한다. 이는 확장성을 높이며, 왜 중요한지, 즉 대형 프로젝트에서의 실용성을 강조한다.

1:52:00 마무르기와 미래 SDK 로드맵 마무르며 SDK의 미래를 논의한다. 그는 더 나은 서브 에이전트 지원과 클라우드 통합을 예고하며, 참가자들에게 실험을 권장한다. 이는 SDK의 진화를 보여주며, 왜 중요한지, 즉 지속적 발전이 에이전트 기술의 미래를 결정한다는 점을 강조한다.


3. Key Concepts

ℹ️

핵심 개념

용어 정의 영상에서의 맥락
에이전트(Agent) 자신의 컨텍스트를 구축하고 궤적을 결정하며 자율적으로 작동하는 AI 시스템 에이전트가 LLM 기능과 워크플로를 넘어선 다음 단계로 소개되며, Claude Code를 예시로 든다. 자율성으로 복잡한 작업을 처리.
하네스(Harness) 에이전트를 위한 도구, 프롬프트, 파일 시스템, 스킬, 서브 에이전트, 메모리를 포함한 구조 에이전트의 '안장'처럼 모델을 포괄적으로 지원하며, 도구와 스킬의 조합으로 자율성을 강화. 실전 사례(소프트웨어, 금융 등)에서 사용.
에이전트 루프(Agent Loop) 컨텍스트 수집 → 생각 → 행동 → 관찰의 반복 사이클 에이전트의 핵심 메커니즘으로, 자가 수정과 동적 적응을 가능하게 함. 라이브 코딩에서 act, observe, loop로 구현.
Bash 도구 에이전트에게 명령줄 액세스를 제공하는 도구 가장 강력한 도구로, 기존 소프트웨어(ffmpeg, git 등)를 활용해 유연한 작업 처리. 맞춤 도구 대신 Bash를 강조.
컨텍스트 엔지니어링(Context Engineering) 파일 시스템(ls, cat)을 사용해 동적 컨텍스트 관리 프롬프트 엔지니어링의 확장으로, 파일을 메모리와 검증 수단으로 사용. CLAUDE.md 파일 생성 예시.
스킬(Skills) 점진적 컨텍스트 공개와 전문성 내재화를 위한 모듈 에이전트가 도메인 지식을 단계적으로 학습하도록 함. 스프레드시트 에이전트에서 CSV/SQL 처리 예.
훅(Hooks) 에이전트 응답을 가로채 피드백 주입으로 행동 제어 비결정성 해결과 결정론적 검증. '읽기 전에 쓰지 마라' 규칙 예시로 환각 방지.
서브 에이전트(Sub-agents) 대규모 작업을 위한 병렬 에이전트 대형 코드베이스나 스프레드시트 처리에서 데이터 분할. 병렬 처리로 확장성 향상.
모니터(Monitor) 에이전트 사고 과정 실시간 보기 도구 디버깅과 투명성 제공. 루프 중 생각 단계 출력으로 문제 진단.
ReadOnly/ReadWrite 파일 액세스 권한 모드 안전 보장: ReadOnly로 읽기만, ReadWrite로 수정. 스위스 치즈 방어 전략.

언급된 프레임워크나 모델 설명:

  • 에이전트 루프 모델: Gather Context → Think → Act → Observe의 사이클. 이는 ReAct(Reasoning and Acting) 프레임워크와 유사하나, 파일 시스템과 Bash를 통합해 더 실용적. 루프가 자가 수정과 검증을 강조하며, '예술적 직관'으로 최적화.
  • 하네스 아키텍처: 도구(Tools: 원자적 행동), 스킬(Skills: 전문성), 파일 시스템(File System: 상태 관리), 메모리(Memory: 장기 컨텍스트). 이는 에이전트를 '런타임'처럼 작동하게 하며, 유닉스 철학(Bash 중심)으로 설계.
  • 컨텍스트 엔지니어링 프레임워크: 파일 시스템을 메모리와 ground truth로 사용. ls로 탐색, cat로 로드, 파일 쓰기로 상태 저장. 이는 RAG(Retrieval-Augmented Generation)와 달리 동적이고 검증 가능.

개념 간 관계: 에이전트 루프는 하네스의 핵심으로, Bash 도구와 컨텍스트 엔지니어링을 통해 실행됨. 스킬은 루프 내 전문성을 더하고, 훅은 루프의 결정론성을 보장. 서브 에이전트는 루프를 병렬화해 대규모 작업 지원. 전체적으로 안전(ReadOnly 등)과 모니터링이 루프를 안정화하며, SDK가 이 모든 요소를 통합해 자율 에이전트를 실현.


4. Detailed Notes

📝

상세 학습 노트

배경 맥락과 중요성: Anthropic의 Claude Agent SDK는 Claude Code를 기반으로 한 프레임워크로, AI 에이전트 개발을 위한 도구 세트다. AI가 LLM 기능(단일 턴 작업)에서 워크플로(다단계 체인)로, 이제 자율 에이전트로 진화하는 시점에서 등장했다. 이는 내부 도구 개발에서 반복된 문제를 해결하며, 개발자들이 복잡한 AI 시스템을 빠르게 프로토타이핑할 수 있게 한다. 중요성은 에이전트가 자율적으로 컨텍스트를 관리하고 작업을 수행해, 소프트웨어 개발, 금융 분석, 의료 진단 등 다양한 분야에서 효율성을 높인다는 점이다. 예를 들어, 스타트업이 에이전트를 통해 시장 적합성을 빠르게 테스트할 수 있다.

주요 주장과 지지 증거:

  1. 에이전트의 우월성: 에이전트는 워크플로와 달리 자율적이며, 자가 수정 가능. 증거: Claude Code의 내부 사용 사례에서 반복 재구축 필요성을 들어 SDK 개발 이유 설명. 에이전트가 '자신의 궤적 결정'으로 복잡 작업 처리.

  2. Bash 도구의 힘: Bash가 가장 강력한 도구로, 맞춤 도구 대신 기존 CLI 활용. 증거: ffmpeg로 파일 변환, git으로 버전 관리 예시. 유닉스 철학으로 조합 가능성 강조, 개발 비용 절감.

  3. 컨텍스트 엔지니어링의 혁신: 파일 시스템으로 동적 컨텍스트 관리. 증거: ls/cat으로 파일 탐색, CLAUDE.md로 메모리 생성 예. 파일이 ground truth로 검증 제공, 장기 작업 상태 유지.

  4. 안전과 확장성: 다층 보안과 서브 에이전트로 대규모 처리. 증거: ReadOnly 모드 예, 5천만 줄 코드베이스에서 서브디렉토리 제한 전략. 훅으로 비결정성 해결.

  5. 프로토타이핑 이점: SDK로 빠른 실험 가능. 증거: 포켓몬 API 데모에서 코드 생성 vs 도구 호출 비교, 연구 에이전트로 다중 턴 작업 시연.

단계별 방법이나 프로세스 설명:

  1. 초기화: Python 환경 설정, API 키 연결, 에이전트 클래스 정의(모델, 프롥프트 포함).

  2. 생각 단계 구현: 프롬프트로 XML 형식 추론 유도(생각 태그 → 행동 태그).

  3. 루프 구축: act(도구 호출) → observe(결과 관찰) → loop(반복, 종료 조건 확인).

  4. 도구 통합: XML 파싱으로 입력 처리, Bash 함수로 쉘 실행(샌드박싱 적용).

  5. 컨텍스트 관리: ls/cat으로 파일 로드, 쓰기로 상태 저장(CLAUDE.md 생성).

  6. 모니터링과 수정: 실시간 로그 출력, 스턱 감지 시 피드백 루프(재시도).

  7. 훅 적용: 응답 가로채 규칙 주입(예: '읽기 확인').

  8. 서브 에이전트: 병렬 인스턴스 생성으로 대형 작업 분할.

  9. 배포: 로컬 앱 또는 클라우드(Cloudflare, Modal) 샌드박스.

언급된 데이터와 통계: 구체적 숫자는 적으나, 대규모 코드베이스 예시로 5천만 줄 이상 언급. Q&A에서 재현성 위해 시드 설정 추천. 조회수 33,512회, 구독자 330K 등 영상 메타데이터. 포켓몬 API 데모에서 TypeScript SDK 생성 시간 단축 예시(명시적 숫자 없음).

인정된 한계:

  • 비결정성: 모델 출력의 랜덤성으로 재현 어려움. 해결: 훅과 시드 사용.
  • 컨텍스트 오염: 창 크기 제한으로 장기 작업 어려움. 해결: 파일 시스템 분할.
  • 대규모 코드베이스: grep/의미 검색 취약. 해결: CLAUDE.md와 서브디렉토리 제한.
  • 스턱 상태: 에이전트가 반복 오류. 해결: 피드백 루프.
  • 도구 vs 코드 생성 트레이드오프: 도구는 컨텍스트 효율, 코드 생성은 복잡 작업 적합하나 초기 비용 높음. 시히파르는 SDK가 프로토타이핑에 최적화되었으나 프로덕션 전환 필요성 인정.

5. Action Items

💡

실행 아이템

즉시 실행 가능한 행동 (체크박스 리스트):

  • Anthropic API 키를 발급받아 Python 환경에서 Claude Agent SDK를 설치하고 기본 에이전트 클래스 초기화 테스트.
  • 간단한 Bash 도구를 구현해 에이전트가 ls 명령으로 파일 목록을 출력하도록 실험.
  • 에이전트 루프를 코딩해 '포켓몬 정보 검색' 같은 데모를 만들어 자가 수정 기능 확인.
  • CLAUDE.md 파일을 생성해 컨텍스트 엔지니어링 테스트, 에이전트가 이를 grounding으로 사용하도록 함.
  • 훅을 추가해 에이전트 응답에 '읽기 확인' 규칙을 주입, 환각 오류 방지 실험.
  • Q&A 전략 적용: 대규모 코드에서 서브디렉토리 시작으로 에이전트 범위 제한 테스트.

장기 적용 영역:

  • 소프트웨어 개발: 코드베이스 탐색과 리팩토링 자동화.
  • 금융/의료: 데이터 분석과 보고서 생성 워크플로.
  • 연구/법률: 다중 턴 연구 에이전트로 정보 수집과 요약.
  • 스타트업: 빠른 프로토타이핑으로 시장 적합성 테스트, 클라우드 배포(Modal, E2B)로 상용화.
  • 대규모 시스템: 서브 에이전트로 병렬 처리, 훅으로 안정성 강화.

언급된 책이나 자원:

추가 탐구 질문:

  • Bash 도구의 보안 취약점을 어떻게 완화할 수 있는가?
  • 대규모 코드베이스에서 의미 검색과 grep의 최적 조합은?
  • SDK를 다른 LLM(예: GPT)과 통합할 때의 호환성 문제는?
  • 에이전트의 에너지 소비와 비용 최적화 전략은?
  • 미래 로드맵에서 서브 에이전트의 병렬 처리 개선 방향은?

6. Feynman Explanation

💡

쉬운 설명

이 영상을 페이만 기법으로 설명하자면, 마치 자전거 타는 법을 배우는 것처럼 기본부터 시작해서 전체 그림을 그려보자. 먼저, AI가 어떻게 진화했는지 생각해봐. 초보자라면 AI를 '재미있는 장난감'으로 보지만(단일 질문에 답하는 LLM 기능), 프롬프트를 잘 짜면 '도우미'가 되고(워크플로처럼 단계별 작업), 이제 에이전트는 '독립된 일꾼'처럼 스스로 생각하고 행동해. Anthropic의 Claude Agent SDK는 이 '일꾼'을 위한 도구 상자야. 상상해봐, 에이전트를 자전거로 치면 SDK는 페달, 핸들, 브레이크를 제공하는 거지. 왜 중요한가? 과거엔 AI가 고정 레일(워크플로)만 따랐지만, 에이전트는 길을 스스로 찾아가며 장애물을 피할 수 있어. 예를 들어, 연구 에이전트가 웹 검색 후 파일에 메모하며 작업을 이어가는 거야.

핵심 개념인 '하네스(Harness)'는 에이전트의 '안장'처럼 모든 걸 묶어주는 구조야. 도구(작은 행동 단위), 프롥프트(지시서), 파일 시스템(메모장), 스킬(전문 지식), 서브 에이전트(도우미 일꾼), 메모리(기억 저장소)를 포함해. 일상 비유로, 요리사(에이전트)가 부엌(하네스)에서 칼(도구), 레시피(프롬프트), 냉장고(파일 시스템)를 쓰는 거지. 시히파르는 이 하네스가 왜 필요한지 설명하며, 단순 모델 호출만으로는 복잡 작업(금융 분석처럼)이 안 되지만, 하네스로 자율성을 준다고 해. 예를 들어, 소프트웨어 개발에서 에이전트가 코드를 수정하고 테스트하며 스스로 고치는 식이야. 이 개념들은 연결되어: 하네스가 에이전트 루프를 뒷받침하고, 루프가 도구와 스킬을 실행해.

에이전트 루프는 심장처럼 뛴다: 컨텍스트 모으기(상황 파악) → 생각(계획 세우기) → 행동(도구 사용) → 관찰(결과 확인) → 반복. 자전거 페달링처럼 한 바퀴 돌 때마다 속도가 붙고 방향을 조정해. 라이브 코딩에서 act로 행동하고 observe로 결과를 보고, 루프가 멈추지 않게 하면서 자가 수정이 일어나. 왜? 고정 워크플로(컨베이어 벨트)는 한 번 틀리면 끝나지만, 루프는 오류를 고치며 나아가. 예를 들어, 파일 변환 작업에서 에이전트가 Bash로 명령 치고 결과를 확인하며 재시도해. 이 루프에 '생각' 단계를 넣어 모델이 XML로 추론하게 하니, 마치 요리사가 재료 보고 레시피 생각하는 거야. 연결: 루프가 컨텍스트 엔지니어링과 결합해 파일 시스템으로 메모리를 쌓아 장기 작업(연구처럼) 가능.

Bash 도구는 에이전트의 '만능 칼'이야. 명령줄 액세스로 ls(폴더 보기), cat(파일 읽기), ffmpeg(비디오 변환) 같은 기존 명령을 써. 맞춤 도구(특정 API 래퍼) 대신 Bash를 쓰면, 마치 부엌에서 다용도 칼로 모든 재료 자르는 거처럼 유연해. 시히파르는 'Bash가 전부다'라고 하며, 왜냐면 소프트웨어(예: git)가 이미 잘 만들어졌으니 재발명할 필요 없다고. 예: 포켓몬 API 데모에서 Bash로 스크립트 실행해 데이터 가져오고, 파일에 저장. 안전 위해 ReadOnly(읽기만)/ReadWrite(쓰기) 모드와 샌드박싱(울타리) 써. 이게 루프와 연결: 행동 단계에서 Bash 호출, 관찰로 결과 검증.

컨텍스트 엔지니어링은 '뇌' 관리법이야. 프롬프트만 짜는 대신 파일 시스템으로 동적 컨텍스트 쌓아. ls로 파일 목록 보고 cat으로 내용 로드, 에이전트가 CLAUDE.md(자기 메모장) 만들어 미래 행동 grounding. 일상으로, 여행 가방에 지도(파일) 넣고 길 찾는 거지. 왜? AI 메모리 한계(컨텍스트 윈도우)로 장기 작업 잊어버리지만, 파일은 영구적 ground truth. 예: 연구 에이전트가 검색 결과 파일에 저장해 다음 턴에서 참조. 모니터는 이 과정을 실시간 보여, 마치 대시보드로 자전거 속도 보는 거. 스턱(막힘) 시 피드백 루프로 재시도.

스킬과 서브 에이전트는 '팀워크' 개념. 스킬은 전문 지식(스프레드시트 CSV/SQL 처리)을 단계 공개, 마치 선생님이 수업처럼. 서브 에이전트는 큰 작업 분담, 5천만 줄 코드에서 각자 부분 처리. 훅은 '감독'처럼 응답 가로채 규칙(읽기 전 쓰기 금지) 주입, 환각(허상) 막아. Q&A에서 비결정성(랜덤 출력) 해결 위해 시드와 헬퍼 스크립트 써. 대규모 전략: 전체 인덱싱 피하고 서브디렉토리 시작, CLAUDE.md로 지침. 배포는 클라우드(Modal)로. 전체 연결: SDK가 이 모든 걸 통합해 에이전트가 자율 '일꾼' 되게 함. 미래 로드맵은 더 강력한 병렬 처리.


7. My Notes

Related Knowledge

Ideas

Personal Memo


Clipped: 2026-01-08T05:23:40+07:00

Back to All Posts
NEW

뉴스레터 서비스가 정식 시작되었습니다!

매주 금요일, 옵시디언으로 정리한 AI 인사이트를 메일함으로 배달해 드립니다.