에이전틱 코딩 엔드게임: Claude Code SDK로 커스텀 에이전트 구축하기

채널 아이콘
IndyDevDan 구독자 43,800명

요약

이 영상에서는 Cloud Code SDK를 활용해 에이전틱(Agentic) 코딩의 궁극 목표인 커스텀 에이전트를 단계별로 구축하는 방법을 살펴봅니다. 단순한 Pong 에이전트로 시스템 프롬프트의 힘을 이해하고, Echo 에이전트를 통해 커스텀 툴 통합과 모델 최적화를 배웁니다. 이어서 마이크로 SDLC 기반 멀티 에이전트 오케스트레이션을 통해 플랜-빌드-리뷰-배포 워크플로우를 자동화하는 실제 예제를 제시합니다. 마지막으로 인-루프에서 아웃-루프, 제로 터치 엔지니어링(ZTE)으로 확장하는 전략을 제안합니다.

주요 키워드

Agentic engineering Cloud Code SDK System Prompt Custom Agents Tool Call Core Four MCP Server Micro SDLC Agent In-Loop/Out-Loop ZTE (Zero-Touch Engineering)

하이라이트


  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

  • Warning: htmlspecialchars() expects parameter 1 to be string, array given in /var/www/youtubetranscribeapi/public/detail.php on line 954

용어 설명

에이전틱 엔지니어링

에이전트 설계와 확장에 집중해 반복 업무를 자동화하고 커스텀 에이전트로 발전시키는 개발 접근법

시스템 프롬프트(System Prompt)

에이전트의 기본 행동 지침을 정의해 모든 사용자 입력에 일괄 적용되는 최상위 프롬프트

Core Four

에이전트 성능을 좌우하는 네 가지 제어점: 모델 선택, 시스템 프롬프트, 유저 프롬프트, 툴 세트

Cloud Code SDK

Google Cloud 환경에서 에이전트를 생성·운영하는 데 사용하는 소프트웨어 개발 키트

Tool Call Block

에이전트가 외부 툴을 호출하고 결과를 받아 처리하는 명시적 코드 블록

MCP Server

Memory Chat Protocol 서버: 에이전트의 대화 문맥을 인메모리로 유지·관리하는 서버 구현체

In-Loop vs Out-Loop

직접 대화형 처리(in-loop)와 일괄 처리(out-loop) 워크플로 전략의 차이점

Micro SDLC Agent

여러 에이전트를 이어 붙여 플랜-빌드-리뷰-배포 과정을 자동화하는 소프트웨어 개발 생명주기 모델

[00:00:00] 에이전틱 코딩과 커스텀 에이전트 개요

에이전틱 엔지니어링의 여정을 더 나은 에이전트→다수의 에이전트→커스텀 에이전트로 정리합니다. 기본 제공 에이전트의 한계와 도메인 특화 필요성을 설명하며, 이 영상에서 다룰 여덟 가지 커스텀 에이전트를 미리 소개합니다.

에이전틱 엔지니어링의 발전 경로를 소개하며, 더 나은 에이전트에서 시작해 더 많은 에이전트를 거쳐 맞춤형 에이전트까지 도달하는 과정을 설명합니다. 기존 도구들의 한계를 지적하고 맞춤형 에이전트의 필요성을 강조합니다.
기본 제공 에이전트들은 모든 사람의 코드베이스를 위해 설계되어 개별 요구사항에 부정합이 발생하며, 이로 인해 시간과 토큰 낭비가 커진다고 설명합니다. 맞춤형 에이전트를 통해 특정 도메인과 문제에 최적화할 필요성을 제시합니다.
Claude Code SDK로 구축된 8개의 독특한 맞춤형 에이전트 사례를 소개하며, 각각이 스택과 엔지니어링 라이프사이클 전반에 배포되는 방법을 보여줄 예정이라고 안내합니다.
[00:01:41] Pong 에이전트로 시스템 프롬프트 이해

단 150줄의 Pong 에이전트 예제를 통해 시스템 프롬프트를 완전히 덮어쓰는 방법을 확인합니다. 에이전트 설정, 쿼리 실행, 응답 처리, 로깅 흐름을 익히고, 시스템 프롬프트가 모든 사용자 요청에 어떻게 영향을 주는지 학습합니다.

특화된 에이전트를 구축하는 코드베이스에서 8개의 맞춤형 에이전트 중 가장 간단한 퐁 에이전트부터 시작한다고 소개합니다.
퐁 에이전트의 실제 동작을 보여주며, 어떤 프롬프트를 입력해도 항상 '퐁'이라고만 응답하는 특징을 통해 맞춤형 에이전트의 핵심 개념을 설명하기 시작합니다.
퐁 에이전트가 맞춤형 에이전트 구축 시 가장 중요한 개념인 시스템 프롬프트의 중요성을 보여주는 예시라고 설명하며, Claude Code SDK에서 시스템 프롬프트를 설정하는 방법을 코드로 시연합니다.
Claude Code의 시스템 프롬프트를 완전히 덮어써서 퐁 에이전트를 만들었습니다. 이 에이전트는 단순히 '퐁'으로만 응답하는 3줄 지시사항을 가지고 있습니다.
시스템 프롬프트는 커스텀 에이전트에서 가장 중요한 요소입니다. 시스템 프롬프트는 에이전트가 실행하는 모든 사용자 프롬프트에 영향을 미치므로, 모든 작업이 시스템 프롬프트에 의해 배가됩니다.
Claude Code SDK의 작동 방식을 설명합니다. 옵션 설정, 에이전트 설정, 쿼리 실행, 응답 처리의 단계를 거치며, 모든 구성 요소가 갖춰져 있고 점진적으로 도입할 수 있습니다.
150줄의 간단한 퐁 에이전트 구조를 설명합니다. 대부분은 로깅이며, 에이전트 메시지 블록과 결과 메시지에서 특정 정보를 파싱할 수 있음을 강조합니다.
시스템 프롬프트의 강력한 영향력을 경고합니다. Claude Code 팀의 모든 노력으로 만들어진 기존 에이전트가 사라지고, 시스템 프롬프트가 완전히 새로운 제품을 만들어낸다고 설명합니다.
[00:05:11] Echo 에이전트로 툴 통합과 모델 최적화

Echo 에이전트 구조를 살펴보며 커스텀 툴을 등록하고 MCP 서버를 인메모리로 구축하는 과정을 살펴봅니다. 모델을 저사양·저비용으로 다운그레이드해 에이전트 성능과 비용을 동시에 관리하며, 지속 대화를 위해 Cloud SDK 클라이언트를 활용하는 방법을 배웁니다.

두 번째 예시인 Echo 에이전트를 소개합니다. 비슷한 구조를 가지지만 커스텀 도구가 포함되어 있으며, 도구 호출 블록과 응답이 추가된 더 복잡한 구조를 보여줍니다.
에이전트에서 나오는 고유한 요소들을 추적하는 것의 중요성을 강조합니다. 핵심 4가지 요소와 각각이 어떻게 에이전트를 제어하는지 이해하면 컴퓨팅을 이해할 수 있다고 설명합니다.
컴퓨트 확장 방법을 이해하고 에코 기능을 실습합니다. 문자열을 역순으로 대문자 변환하여 두 번 반복하는 커스텀 에이전트의 도구 기능을 테스트합니다.
에이전트를 확장하여 Echo 에이전트의 구조를 분석합니다. 메인, 도구, 시스템 프롬프트의 기본 구조와 MCP 서버가 메모리에서 구축되는 강력한 기능을 살펴봅니다.
클라우드 코드 SDK의 도구 구축 방식을 설명합니다. 데코레이터, 이름, 설명으로 구성되며, 도구 설명이 에이전트의 사용법을 안내하고 딕셔너리 전달을 통해 결정론적 코드로 작동합니다.
모델 다운그레이드와 에이전트 코딩의 핵심 요소를 다룹니다. 간단한 에이전트에는 클라우드 하이쿠 같은 빠르고 저렴한 모델을 사용하며, 12개 활용 포인트 중 핵심 4요소를 항상 분리해서 관리해야 합니다.
쿼리와 클라우드 SDK 클라이언트의 차이점을 설명합니다. 쿼리는 일회성 프롬프트용이고 SDK 클라이언트는 지속적인 대화용이며, 후속 질문으로 실습을 진행할 예정입니다.
에이전트가 평소처럼 프롬프트를 실행한 후 대화를 계속 이어가며, 후속 프롬프트로 대화를 불릿 포인트로 요약해달라고 요청하는 과정을 설명합니다.
Claude SDK 클라이언트를 사용하여 에이전트가 대화 내역을 추적하고, 여러 쿼리 호출을 통해 도구 사용 블록과 텍스트 블록을 모두 처리할 수 있다고 설명합니다.
에이전트에서 나오는 모든 메시지를 스트리밍하여 처리하고, rich 패널로 로깅하여 에이전트의 동작을 명확히 이해할 수 있도록 하는 중요성을 강조합니다.
커스텀 도구가 있는 에이전트를 실행할 때 Claude 코드에 내장된 15개의 추가 도구가 함께 포함되어 컨텍스트 윈도우를 소비한다는 문제점을 지적합니다.
Echo 에이전트는 이러한 추가 도구들이 필요 없으므로, 향후 에이전트를 더 세밀하게 제어하는 방법을 배울 것이라고 예고합니다.
Echo 시스템 프롬프트의 단순함을 언급하며, 시스템 프롬프트와 도구를 조정하는 순간 더 이상 Claude 코드 제품이 아니라 새로운 에이전트가 된다는 핵심 개념을 설명합니다.
Claude 코드 시스템 프롬프트를 완전히 덮어쓰는 방법과 시스템 프롬프트를 추가하여 확장하는 방법의 차이점을 설명합니다.
[00:11:47] 마이크로 SDLC 멀티 에이전트 오케스트레이션

백엔드·프론트엔드 에이전트를 연결해 플랜-빌드-리뷰-배포 워크플로를 자동화하는 Micro SDLC 예제를 다룹니다. 에이전트 간 작업 핸드오프, 웹소켓 스트리밍, 권한·인터셉션 구조를 통해 실제 UI 상에서 멀티 에이전트를 운영하는 법을 보여줍니다.

마이크로 SDLC 에이전트 시스템을 소개하며, 백엔드, 프론트엔드, 리뷰, 스펙 등으로 구성된 코드베이스 구조를 설명합니다.
간단한 제목 업데이트 작업을 생성하고 에이전트별 작업 보드에서 한 에이전트에서 다른 에이전트로 작업을 넘기는 워크플로우를 시연합니다.
멀티 에이전트 시스템의 동작을 설명하며, 플래너 에이전트의 사고 과정, 도구 호출, 권한 시스템 등을 보여줍니다.
웹소켓을 통한 메시지 스트리밍과 도구 호출을 포함한 멀티 에이전트 오케스트레이션 시스템의 구조와 빌더 에이전트의 작동을 설명합니다.
빌드 에이전트가 처리를 시작하고 플래너 단계가 완료되었습니다. UI가 자기 자신을 업데이트하며 서버와 클라이언트를 재시작하는 과정에서 약간 불안정해 보이지만, 웹소켓이 이를 감지하고 계속 처리할 것입니다.
명세에 따라 계획이 진행되고 있으며, 리뷰 단계로 넘어갔습니다. 에이전트들이 협력하여 작업하고 이를 멋진 UI로 패키지화함으로써 이전보다 훨씬 많은 것을 할 수 있게 되었습니다.
전용 워크플로우가 계획, 빌드, 리뷰 단계별로 작업하며 각 단계를 다음으로 넘겨주는 과정을 보여줍니다. 리뷰어 에이전트와 모든 도구들이 우리를 위해 작업하는 모습을 확인할 수 있습니다.
기본 제공되는 Claude Code 도구들을 활용하고 있으며, 바퀴를 재발명할 필요가 없다는 점을 강조합니다. Claude Code SDK와 기본 Claude Code 에이전트는 출시 이후 지속적으로 사용해온 놀라운 도구입니다.
배송 단계로 넘어가며 제목이 업데이트되었습니다. 계획, 빌드, 리뷰, 배송 에이전트들이 모두 작업을 완료하고 루프 밖의 단일 프롬프트로 작업이 배송되었습니다.
Peter 프레임워크를 사용한 아웃루프 리뷰 시스템의 완벽한 예를 보여줍니다. TAC에서 이 개념을 깊이 다뤘으며, TAC 수업을 완료하지 않은 경우 먼저 완료할 것을 권장합니다. 인루프에서 아웃루프로, 최종적으로 ZTE로의 전환이 핵심입니다.
[00:15:25] 에이전트 확장 전략과 최적 도입 포인트

기본 제공 에이전트 활용 시기와 커스텀 에이전트 전환 시점을 구분합니다. 인-루프에서 아웃-루프, 제로 터치 엔지니어링(ZTE)으로 전략을 확장하며, 개인·팀·비즈니스 워크플로에서 반복 작업에 에이전트를 도입해 ROI를 극대화하는 방법을 제안합니다.

에이전트는 컴퓨팅 스케일입니다. 자신의 도구, 제품, 서비스 전반에 걸쳐 엔지니어링 작업과 사용자, 고객을 위한 배포 방법을 이해하는 것이 중요합니다.
Claude Code SDK와 다른 에이전트 SDK들은 에이전트 내의 핵심을 제어하여 지능적으로 확장할 수 있는 강력한 툴킷입니다. 만능 작업의 경우 기본 에이전트를 사용하되, 너무 복잡하게 생각하지 말고 작업 완료를 위해 컴퓨팅을 배포하면 됩니다.
작업이 더 전문화되고 엔지니어링의 모든 측면에 에이전트를 배포할 때는 더 나은 에이전트, 더 많은 에이전트, 맞춤 에이전트가 필요합니다. 이는 깊이 생각하고 이해해야 할 코드베이스입니다.
효과적인 컴퓨팅과 에이전트 배포는 개인 워크플로우와 제품의 제약 조건을 찾는 것입니다. 스크립트 내 에이전트부터 높은 투자 수익률을 달성할 수 있는 사용자 인터페이스까지 반복 워크플로우를 고려해야 합니다.
에이전틱 엔지니어링은 모든 엔지니어를
하나의 길로 이끕니다. 더 좋은 에이전트,
더 많은 에이전트, 그리고 맞춤형 에이전트로요. 만약
프롬프트 엔지니어링과 컨텍스트
엔지니어링을 통해 단일 에이전트를 성공적으로 구축할 수 있다면,
다음 단계는 더 많은 에이전트를 추가하는 것입니다.
컴퓨팅 파워를 확장해서 영향력을 늘리는 거죠.
그 다음 하위 에이전트와 새로운 주요
에이전트에게 작업을 위임하는 법을 배우고 나면,
갈 곳은 한 곳밖에 남지 않습니다.
맞춤형 에이전트입니다. 하지만 Claude
Code, Codex CLI, 또는 Gemini CLI로는
충분하지 않은 이유가 뭘까요? 기본 제공 에이전트들은
정말 놀랍지만, 이 도구들에는 큰
문제가 있습니다. 이들은
모든 사람의 코드베이스를 위해 만들어진 것이지, 당신의 것을 위한 게 아니에요. 이런
부정합은 수백 시간과
수백만 토큰을 소모할 수 있으며, 코드베이스가
커질수록 문제는 더 심각해집니다. 이 강의는
그 방정식을 뒤집는 것에 관한 것입니다. 여기서는
맞춤형 에이전트를 마스터해서 컴퓨팅 파워가
당신의 도메인, 당신의 문제, 당신의 엣지
케이스를 위해 작동하도록 만들어봅시다. 이것이 바로
엔지니어링에서 모든 알파가 있는 곳입니다. 어렵고 구체적인
문제들, 대부분의 엔지니어와 대부분의
에이전트가 기본적으로는 해결할 수 없는 문제들에 있어요.
이 고급 강의에서는 Claude
Code SDK로 구축된 8개의
독특한 맞춤형 에이전트를 소개합니다. 각각은
스택, 제품, 그리고
엔지니어링 라이프사이클 전반에 배포하는 방법을 보여줍니다.
에이전트들이 다가오고 있습니다. 이제
베어메탈까지 가서 맞춤형 에이전트를
마스터해서 컴퓨팅 파워를
다른 사람들보다 훨씬 더 확장할 때입니다.
[음악]
앱 내부에서 특화된 에이전트를
구축하는 코드베이스에서
8개의 맞춤형 에이전트를 볼 수 있습니다. 간단한
퐁 에이전트부터 시작해봅시다.
여기 간단한 에이전트가 있는데,
맞춤형 에이전트의 가장 중요한 측면을
보여줄 것입니다. 보시다시피
간단하고 간결한 사용자 프롬프트와 에이전트
응답이 있습니다. 그리고 세션
통계도 있네요. 다시 실행해봅시다.
좋습니다. 프롬프트를 바꿔보겠습니다.
안녕하세요. 간단한 프롬프트입니다.
맞춤형 에이전트를 막 시작했어요.
안녕하다고 했더니 그냥 퐁이라고 응답하네요.
좋아요. 음, 이 코드베이스를 요약해주세요.
사용자 프롬프트가 있고, 다시 한 번
퐁 에이전트가 다시
퐁이라고 응답합니다. 무슨 일이 일어나고 있는 거죠?
뭔가 다른 걸 할 수 있냐고 물어봅시다.
퐁 말고 다른 걸 할 수 있나요?
사용자 프롬프트가 있고,
이 에이전트가 하는 일은 퐁뿐입니다. 여기서
하나 더 써보겠습니다. 그냥 핑이라고 써보겠어요.
이 우스꽝스러운 에이전트는
맞춤형 에이전트를 구축할 때 가장
중요한 개념을 담고 있습니다. 여기에 무엇을 프롬프트하든
응답은 항상 퐁입니다. 왜
그럴까요? 이 파일을 살펴봅시다.
첫 번째로 가장 중요한 개념은 다름 아닌
시스템 프롬프트입니다. Claude
Code SDK를 사용하고 있고
단 두 가지만 설정하고 있습니다.
이 에이전트의 단 두 가지 측면만
수정하고 있지만, 모든 것이 바뀝니다.
Claude 포슨을 보시면 여기 시스템
프롬프트가 있습니다. 시스템
프롬프트를 열어봅시다. 전용
시스템 프롬프트 로드 메서드가 있네요.
프롬프트 경로가 있습니다.
열어봅시다. 완전히 덮어썼네요.
Claude Code 시스템 프롬프트를 완전히 덮어쓰고
에이전트 목적이라는 제목을 붙였습니다.
그리고 간단한 3줄 지시사항이 있습니다.
당신은 퐁 에이전트입니다. 항상 정확히
퐁으로만 응답하세요. 그게 전부입니다.
시스템 프롬프트는 여러분의
커스텀 에이전트에서 가장 중요한 요소이며
예외는 없습니다. 우리는
특별히 프롬프트를 위해 핵심을 수정하고 있습니다.
이제 주목해야 할 두 가지
중요한 프롬프트가 있습니다.
시스템 프롬프트와 사용자 프롬프트입니다.
시스템 프롬프트는 에이전트가 실행하는
모든 사용자 프롬프트에 영향을 미칩니다.
모든 것에 말이죠. 따라서
여러분의 모든 작업이 시스템 프롬프트에 의해
배가됩니다. 그럼 Claude Code SDK는
어떻게 작동할까요? 핵심 아이디어를
분석해보겠습니다.
SDK는 이렇게 작동합니다. 옵션을 설정하고
에이전트를 설정합니다. 여기서는
쿼리를 실행하고 응답을
처리합니다. Claude Code SDK는
에이전트를 구성하는 강력한 도구로
진행하면서 보시게 될 것입니다.
모든 구성 요소들이 갖춰져 있고
점진적으로 도입할 수 있습니다.
마지막으로 우리는 로깅만 하고 있습니다.
그게 전부입니다. 우리 에이전트의 끝이죠.
간단한 150줄 퐁 에이전트입니다.
대부분은 단순히 로깅입니다. 우리는
에이전트를 설정하고, 에이전트에
쿼리를 보내고, 에이전트의 응답을
처리합니다. 그리고 보고할 수 있는
이 특정 블록들을 주목해 주세요.
에이전트 메시지 블록이 있고
결과 메시지가 있습니다. 그리고
진행하면서 보시게 되겠지만 이들로부터
특정 정보를 파싱할 수 있습니다.
하지만 이것이 퐁 에이전트이고
시스템 프롬프트의 힘을 보여줍니다.
Claude Code 팀이 훌륭한
에이전트를 만들기 위해 쏟아부은 모든 작업을
기억하시죠? 여러분이 알고 사랑하는
Claude Code 에이전트는 이제 사라졌습니다.
네, 시스템 프롬프트를 사용할 때는
매우 신중해야 합니다. 이제 우리에게는
새로운 제품이 있습니다. 이것은 더 이상
Claude Code가 아닙니다. 같은 모델을
사용할 수도 있지만, 시스템 프롬프트가
진정으로 에이전트를 만드는 것입니다.
물론 우리는 여전히 도구를 사용하고 있습니다.
더욱 능력 있는 커스텀 에이전트로
발전해 나가면서 보시게 되겠지만 이는 중요한 부분입니다.
두 번째 에이전트인 Echo 에이전트로 넘어가겠습니다.
Echo 에이전트 내부에서 비슷한
구조를 볼 수 있습니다. 실행할
단일 Python 스크립트가 있습니다. UV run echo agent py를
실행하면 비슷한 구조를
보게 될 것입니다, 맞죠?
Echo 에이전트가 시작되고 사용자 프롬프트,
에이전트 응답이 있습니다. 하지만 여기서는
다른 점이 있습니다. 여기서는 당연히
커스텀 도구가 있습니다. 따라서 우리
에이전트가 이 도구를 사용하겠다고 말하고
여기에 이 도구 호출 블록이 있습니다.
그리고 도구 호출의 응답과
에이전트 응답이 있습니다.
좋습니다. 이것들은 모두 우리 에이전트에서
나오는 고유한 요소들입니다.
이것들을 추적하고 싶을 것입니다,
맞죠? 핵심 4가지를 추적하세요.
핵심 4가지와 각 요소가 어떻게
흘러가고 에이전트를 제어하는지 이해하면
컴퓨트를 확장하는 방법을 이해하게 될 것입니다.
이제 에코 기능을 직접 해보겠습니다.
이 문자열을 에코하라고 말해보겠습니다.
그리고 역순으로 대문자로 변환해달라고 요청하겠습니다.
두 번 반복하도록 하겠습니다.
우리는 커스텀 에이전트가 가진 도구를 가지고 놀고 있는 것입니다.
좋습니다. 여기 사용자 프롬프트가 있습니다.
역순으로 변환하는 호출이 있습니다.
이 텍스트가 '커스텀 에이전트는 강력하다'로 나옵니다.
반복하고 대문자로 변환해달라고 요청했습니다.
우리 에이전트가 정확히 그렇게 수행했습니다.
이제 조금 더 확장해보겠습니다.
에이전트에 몇 가지 기능을 더 추가하고 있습니다.
커스텀 에이전트를 탐구하면서 말이죠.
Echo 에이전트에서 무슨 일이 일어나고 있는지 이해해봅시다.
구조는 동일합니다.
저는 항상 모든 것을 축소하는 것을 좋아합니다.
그러면 무슨 일이 일어나고 있는지 빠르게 이해할 수 있습니다.
메인이 있고, 도구가 있고,
시스템 프롬프트가 있습니다.
항상 시스템 프롬프트를 먼저 찾아보세요.
그다음 커스텀 도구를 찾아보세요.
여기 몇 가지 매개변수들이 있습니다.
그리고 특별한 것이 있습니다.
다시 한 번, 항상 클라우드 코드 옵션을 검색할 수 있습니다.
이 스크립트에는 MCP 서버가 내장되어 있습니다.
SDK MCP 서버를 생성하고 단일 도구를 전달하고 있습니다.
이것은 우리 에이전트를 위해 메모리에서 전체 MCP 서버를 구축합니다.
이는 매우 강력합니다.
에코 도구를 살펴보고 무엇을 하는지 이해해봅시다.
클라우드 코드 SDK를 위한 도구들은
이렇게 구축됩니다.
데코레이터가 있고, 이름이 있고, 설명이 있습니다.
도구의 설명이 에이전트에게 사용법을 알려준다는 점을 기억하세요.
도구에 전달되는 실제 매개변수와
실제 인수와 함께 말이죠.
딕셔너리를 전달하고 도구 내에서 원하는 작업을 수행합니다.
여기서 우리는 전통적인 결정론적 코드로 돌아갑니다.
그렇죠? 도구 호출입니다.
원하는 작업을 수행하되, 적절한 형식으로 응답해야 합니다.
여기서 우리 로그를 볼 수 있습니다.
우리가 수행했던 변환들입니다.
에이전트를 위한 간단한 예제 도구 호출입니다.
이것은 커스텀 도구 세트를 가진 커스텀 에이전트입니다.
여기서 흥미로운 점이 또 있습니다.
클라우드 하이쿠를 실행하고 있는 것을 볼 수 있습니다.
모델을 더 저렴하고 덜 지능적이지만
훨씬 빠른 모델로 다운그레이드했습니다.
맞습니다. 이것은 간단한 에이전트입니다.
강력한 지능이 필요하지 않습니다.
그래서 모델을 낮췄습니다.
각 에이전트를 진행하면서 기억해두세요.
우리가 주목하고 있는 에이전트 코딩의 12개 활용 포인트가 있습니다.
하지만 클라우드 코드 옵션을 볼 때마다
핵심 4요소를 분리하세요.
이 설정에서 핵심 4요소가 어떻게 관리될지 생각해보세요.
여기서 중요한 다른 것이 있습니다.
클라우드 SDK 클라이언트 클래스를 사용하고 있습니다.
쿼리 명령만 사용했던 퐁 에이전트와는 달리 말이죠.
좋습니다. 쿼리는 일회성 프롬프트용이고
클라우드 SDK 클라이언트는 지속적인 대화용입니다.
여기서 제가 정확히 무슨 뜻인지 보여드리겠습니다.
이걸 지우고 후속 질문으로 다시 실행해보겠습니다.
그러니까 이것을 시작하면
우리 에이전트는 평소와 같이 동일한
프롬프트를 실행하지만, 대화를
계속 이어갈 겁니다. 우리는
또 다른 후속 프롬프트를 전달할 거예요.
간결하게 우리 대화를
불릿 포인트로 요약해달라고 할 거예요.
자, 여기 결과가 나왔네요.
에이전트가 빠르게 응답하고, 후속
응답으로 간결한 요약을 1, 2, 3, 4로 정리했습니다.
우리 에이전트는 대화 내역을 계속 추적하고 있습니다.
왜냐하면 Claude SDK 클라이언트를
사용하고 있고, 우리가
여러 쿼리 호출을 작성했기 때문입니다.
여기 두 개가 있죠. 후속 프롬프트와
원본 사용자 프롬프트가요.
우리가 관심 있는 도구 사용 블록과
텍스트 블록 둘 다 있습니다.
쿼리 후에 에이전트에서 돌아오는
모든 메시지를 스트리밍하고
그냥 받아들이면 됩니다.
받아서 원하는 대로 처리하면 되죠.
여기서는 물론 깔끔한 rich 패널로
로깅하여 간결하게
에이전트에서 일어나는 일을
전달하고 있습니다. 에이전트가
무엇을 하고 있는지 모르거나,
에이전트의 관점을 이해하지 못하면
개선하고 조정하고 관리하기
어려울 거예요.
그래서 우리가 여기서 하고 있는 일입니다.
후속 프롬프트를 보면, 추가 쿼리를 실행하고
그 한 가지 응답만 찾았습니다.
도구 사용 블록을 찾고 있죠.
실제로는 여기서 텍스트 블록만
찾고 있었습니다.
이건 사실 그렇게 유용하지 않아요.
이것은 몇 가지 추가
기능을 가진 커스텀 에이전트입니다.
모델을 지정하고 작업할
커스텀 도구를 제공했습니다.
하지만 이런 에이전트를
이곳저곳에서 사용한다면
아마 주목하지 못했을 흥미로운 점이 있습니다.
같은 에이전트를 실행하고 여기 모든 걸 제거하고
그냥 사용 가능한 도구 목록을
보여달라고 하면, 여전히
Claude 코드에 내장된 도구 세트를
많이 실행하고 있습니다.
이걸 확인해보세요. 이들은 모두
클라우드 코드 도구와 우리 도구입니다.
에이전트에 들어가는 모든 것이
어느 시점에서 컨텍스트 윈도우에
포함됩니다. 15개의 추가 도구,
에이전트가 우리가 요청한
작업을 수행하기 위해 선택할 수 있는
15가지 추가 옵션이 있습니다.
하지만 우리 Echo 에이전트는
이런 도구들이 전혀 필요 없습니다.
앞으로 진행하면서
세밀하게 조정하고 에이전트를
더 잘 제어할 거예요. /context 명령어를
실행해본 적이 있다면,
에이전트에 들어가는 것이 무엇인지 이해할 겁니다.
이 15가지 도구가 컨텍스트를 소비합니다.
에이전트 마음속 공간을
소비하는 거죠. 다음 에이전트에서
이 조절 장치를 제어하는 방법을 배울 겁니다.
여기서 마지막으로 지적하고 싶은 것은
Echo 시스템 프롬프트입니다.
매우 간단하죠? 다시 말하지만,
이것은 더 이상 Claude 코드 제품이
아니라는 점을 강조하는 것이 중요합니다.
시스템 프롬프트를 건드리고
도구를 조정하기 시작하는 순간,
제품이 바뀌고 에이전트가 바뀝니다.
요청받을 때 사용합니다. 좋습니다. 여기서는 그다지 많은 일이 일어나지 않지만,
실제로는 더 이상 일어나지 않는 많은 일들이 있었습니다.
이해되시나요? 우리는 Claude 코드 시스템 프롬프트를 완전히 제거했습니다.
완전히 덮어쓴 것입니다. 이제 시스템 프롬프트를 추가할 수도 있다는 점을
말씀드리는 것이 중요합니다.
기존에 있던 것에 추가할 수 있습니다. 이것 또한 강력한 방법입니다.
이는 Claude 코드를 덮어쓰고 진정한 커스텀 에이전트를 구축하는 것보다는
Claude 코드를 확장하는 방식입니다.
좋습니다, 계속 진행해봅시다.
더 많은 제어권을 얻어봅시다. 에이전트를 확장하고
에이전트의 새로운 형태를 살펴봅시다.
이제 커스텀 마이크로 SDLC 에이전트에 도달했습니다.
이 코드베이스의 구조를 이해해봅시다.
백엔드, 프론트엔드, 리뷰, 스펙, 그리고 몇 개의 테스트 파일이 있습니다.
자, 시작해봅시다.
이미 여기서 실행 중입니다. 백엔드와 프론트엔드.
이게 정확히 무엇인지 봅시다.
아마 여기서 무슨 일이 일어나는지 이해하실 것입니다.
우리는 에이전트별 작업 보드가 있어서
한 에이전트에서 다른 에이전트로
마이크로 소프트웨어 개발 생명주기 방식으로 작업을 넘깁니다.
여기서 이미 완료된 몇 가지 작업을 볼 수 있습니다.
여기에는 오류가 발생한 것들도 있습니다.
새로운 작업을 생성해봅시다.
정말 간단하고 단순한 것을 해보겠습니다.
워크플로우를 보여주고 에이전트를 통해
사용자 인터페이스에 구축할 수 있는
기능을 보여주고 싶습니다.
제목 업데이트. 이것은 정말 간단할 것입니다.
HTML 제목과 헤더 제목을
'계획 구축 검토 그리고 배송 에이전트'로 업데이트합니다.
좋습니다.
이제 여기에 있습니다. 제목 업데이트.
이제 계획으로 끌어다 놓겠습니다.
이제 이 워크플로우가 시작될 것입니다.
백엔드에서 실행 중인 실제 에이전트에 다시 집중해봅시다.
프론트엔드를 접어두고
에이전트가 무엇을 하는지 봅시다.
여기서 차이점은
멀티 에이전트 시스템이 있다는 것입니다.
더 이상 단일 에이전트만 배포하는 것이 아닙니다.
UI 내부에서 여러 에이전트를 배포하고 있습니다.
이제 플래너 에이전트가 있습니다.
알아차리고 생각하고 있습니다.
플래너 사고, 플래너 도구 호출,
훅 인터셉션 등이 있습니다.
도구 허용. 이 안에 권한 시스템이 있습니다.
완전한 구조를 가지고 있습니다.
이제 이 코드를 업데이트하기 시작할 것입니다.
간단한 제목 변경입니다.
로켓 과학은 아니지만,
여기서 제목이 업데이트되는 것을 볼 수 있어야 합니다.
그리고 HTML 제목도 업데이트되는 것을
봐야 합니다.
스스로 작동하고 있습니다.
몇 가지 멋진 점들이 있습니다.
원하는 대로 자신만의 멀티 에이전트
오케스트레이션 시스템을 구축할 수 있습니다.
왼쪽에 메시지들이 있습니다.
웹소켓을 통해 프론트엔드로
스트리밍되는 총 메시지들입니다.
그리고 오른쪽에는 총 도구 호출이 있습니다.
좋습니다. 에이전트가 작동하고 있습니다.
계획이 증가하는 것을 볼 수 있습니다.
하지만 여기서 빌더 에이전트를 볼 수 있습니다.
이제 처리 중입니다. 정말
멋지지 않나요? 빌드 에이전트가
처리 중입니다. 플래너는 완료되었죠.
UI가 약간
불안정해 보일 수 있는데
자기 자신을 업데이트하고 있기 때문이에요.
서버와 클라이언트를
활발하게 시작하고 재시작하고 있습니다.
하지만 괜찮아요. 웹소켓이
이를 감지하고 계속
처리할 겁니다. 거기 명세를
볼 수 있죠. 우리는 그
계획에 따라 작업하고 있어요. 이제 리뷰
단계로 넘어갔네요.
리뷰 단계에 있는 걸 볼 수 있습니다.
에이전트들이 어떻게 함께
작업할 수 있는지 보는 정말 멋진 방법이고
이를 멋진 UI로 패키지화할 수 있습니다.
솔직히 이전보다 훨씬 많은 것을
할 수 있게 되었죠. 우리는 전용
워크플로우가 단계별로 작업하는 것을 가지고 있어요.
계획, 빌드, 리뷰를 거쳐
다음 단계로 넘겨주는 과정이죠.
여기서 리뷰어 에이전트와
모든 도구들을 볼 수 있고, 그것이
우리를 위해 작업하는 것을 볼 수 있어요.
우리는 기본 제공되는 Claude Code
도구들을 많이 사용하고 있어요.
바퀴를 재발명할 필요가 없다면 하지 마세요.
이 점을 확실히 해두겠습니다.
기본 Claude Code 에이전트를 실행하는
Claude Code SDK는 정말 놀라워요.
Claude Code가 출시된 이후로 계속
사용해 왔습니다. 여기서
배송 단계로 넘어간 것을 볼 수 있어요.
제목 업데이트, 그리고
무슨 일이 일어났는지 추측해 보세요.
계획, 빌드, 리뷰, 배송 에이전트들이
모두 제목을 업데이트했어요. 이 작업이
루프 밖의 단일 프롬프트로 배송되었습니다.
이것이 Peter 프레임워크를 사용한
아웃루프 리뷰 시스템의 완벽한 예입니다.
TAC에서 이 부분을 많이 다뤘어요.
TAC 수업을 완료하지 않았다면
지금 당장 이 비디오 시청을 중단하고
TAC를 완료해야 합니다.
인루프에서 아웃루프로, 최종적으로 ZTE로 전환하는 것이 핵심입니다.
[음악]
에이전트는 컴퓨팅 스케일입니다.
이를 자신의 도구, 제품,
서비스 전반에 배포하는 방법, 자신의
엔지니어링 작업과 사용자,
고객을 위한 배포 방법을
알고 싶을 거예요. Claude Code SDK와
다른 에이전트 SDK들, 이들은 모두
에이전트 내의 핵심을 제어하여 지능적으로
확장할 수 있는 강력한 툴킷입니다.
만능 작업을 하고 있다면
기본 에이전트를 사용하세요. 너무
복잡하게 생각하지 마세요. 작업을
완료하기 위해 컴퓨팅을 배포하면 됩니다.
하지만 작업이 더 전문화되고
엔지니어링의 모든 측면에 에이전트를
배포할 때, 먼저 더 나은 에이전트,
더 많은 에이전트, 그리고 맞춤 에이전트가 필요해집니다.
이는 깊이 생각하고 이해해야 할
코드베이스이며, 우리가 여기서
논의한 아이디어들을 어떻게 확장하고
사용할 수 있는지 알아야 합니다.
효과적인 컴퓨팅과 효과적인 에이전트 배포는
개인 워크플로우와 제품의
제약 조건을 찾는 것입니다.
스크립트 내의 에이전트, 데이터
스트림, 대화형 터미널에서 이익을
얻을 수 있는 반복 워크플로우부터
높은 투자 수익률을
달성할 수 있는 사용자 인터페이스까지,
팀과 비즈니스를 위한 도구의 문제를
해결하는 것을 생각해보세요. 에이전트 코딩은
더 이상 우리가 무엇을 할 수 있는지가
아니라 우리가 에이전트에게 무엇을
가르칠 수 있는지에 관한 것입니다.
이것이 컴퓨팅을 유용한 한계까지
밀어붙이는 방법입니다. 이 길을 따라
도구와 제품에 대한 엄청난 가치를
잠금 해제하세요. 더 나은 에이전트, 더 많은
에이전트, 그리고 맞춤 에이전트. 다음
Agentic Horizon 확장 수업에서 만나요.