16회차에서 CrewAI 같은 에이전트 프레임워크를 '구경'했죠. 이번엔 직접 만듭니다. 핵심은 'LLM이 도구를 호출하며 여러 단계를 스스로 처리'하는 것. 만들 것: 내 비서의 '자료 자동 수집' 에이전트 — 웹검색 툴로 새 자료를 모아 '추가 초안'을 만듭니다(자동 반영은 금지, 사람이 검토 후 머지).
🔁 에이전트 루프 — 관찰·사고·행동
- 관찰 — 지금 상태/직전 도구 결과를 본다.
- 사고 — '다음에 무엇을, 어떤 도구로' 할지 LLM이 결정.
- 행동 — 코드가 그 도구를 실행하고 결과를 다시 LLM에. 목표 달성까지 반복.
🛠️ 툴/함수 호출 — LLM에 손발 달기
LLM은 글만 만들 뿐, 검색·계산은 못 합니다. '도구 목록'을 주면 LLM이 '이 도구를 이 인자로 부르자'를 정하고, 코드가 실제로 실행해 결과를 돌려줍니다. 19회차 구조화 출력의 연장이에요(어떤 도구·인자인지를 정해진 틀로 받음).
# 에이전트 골격 (의사코드)
tools = {'web_search': web_search, 'save_draft': save_draft}
state = '새 AI 도구 소식을 모아 초안을 만들어라'
while not done:
decision = ask_with_tools(state, tools) # LLM이 다음 행동·도구 선택
result = tools[decision['tool']](**decision['args']) # 코드가 실행
state = update(state, result) # 관찰 갱신 → 루프
🔌 MCP 한 줄 — 도구를 표준으로
MCP(2·8회차에서 개념)는 도구를 '표준 규격'으로 붙이는 방법입니다. 직접 만들 필요는 없고 — '도구를 표준으로 꽂으면 여러 에이전트가 재사용한다'는 것과, 있다는 사실만 알아두면 됩니다.
🧰 하네스 엔지니어링 — 모델 밖 '나머지 전부'를 설계하는 일
위에서 만든 루프는 사실 더 큰 그림의 뼈대입니다. 모델을 엔진이라고 하면, 하네스(harness)는 차체·핸들·브레이크 — 엔진을 감싸서 '실제로 달리게' 만드는 나머지 전부예요. 같은 엔진이라도 차가 다르면 완전히 다른 물건이 되죠. 이 '모델 주변 공학'을 요즘 하네스 엔지니어링이라고 부릅니다. 멀리 갈 것 없이 — 여러분이 7회차부터 쓴 Claude Code가 바로 잘 만든 하네스입니다. 같은 Claude 모델인데 채팅창과 Claude Code의 '일하는 능력'이 다른 이유가 전부 여기에 있어요.
- 컨텍스트 관리 — 모델에게 '지금 무엇을 보여줄지' 고르는 일. 컨텍스트 창은 유한하니, 대화가 길어지면 요약(컴팩션)해서 계속 일하게 한다.
- 툴 설계 — 도구의 이름·설명·에러 메시지가 곧 모델의 사용설명서. 설명 한 줄을 고쳤더니 성공률이 뛰는 일이 흔하다.
- 실패 처리 — 도구는 실패한다는 전제로: 재시도·타임아웃·대체 경로(폴백)를 코드에 심는다.
- 가드레일·권한 — 위 ⚠️ 팁의 확장. 위험 행동 앞 승인 게이트, 실험은 격리된 공간(샌드박스)에서.
- 멀티 에이전트 — 큰일은 서브에이전트로 쪼개 병렬로 시키고, 본체는 결과만 모은다(12회차 OMC가 이 패턴).
- 메모리 — 세션이 끝나도 남겨야 할 것(사용자 취향·진행 상황)을 파일·DB로 저장해 다음에 이어서.
🔧 만들 것 — 자료 수집 에이전트
- 웹검색 툴을 함수로 정의(쿼리 → 결과 리스트)
- 에이전트 루프로 새 자료 후보를 모으게 하기
- 결과를 '추가 초안 + 검토용 요약'으로 출력 — 자동 반영은 하지 않기
- 하네스 다듬기 — 검색이 실패·빈 결과일 때 재시도 1회를 넣고, 툴 설명 한 줄을 고쳐 에이전트의 선택이 어떻게 달라지는지 비교
✅ 완료 기준
- 한 번 실행으로 새 자료 초안 + 근거를 사람 개입 없이 만든다.
- 위험 행동(자동 반영·전송) 전에는 반드시 사람 승인을 거친다.
📌 21회차 핵심
- 에이전트 = 관찰·사고·행동 루프로 LLM이 도구를 써 스스로 일한다.
- 툴 호출은 구조화 출력의 연장 — 어떤 도구·인자인지를 틀로 받는다.
- 하네스 = 모델 밖 나머지 전부(컨텍스트·툴 설계·실패 처리·가드레일·메모리) — 같은 모델도 하네스가 성능을 가른다.
- 강력할수록 승인 게이트 필수 — 자율과 안전을 함께.