Sign in to save your progressYou can keep reading without an account, but completed lessons won't be saved.
Sign in

에이전트는 지금까지 다뤄온 구조화된 워크플로우로부터의 전환을 의미합니다. 워크플로우는 작업을 완료하는 데 필요한 정확한 단계를 알고 있을 때 완벽하지만, 에이전트는 그 단계가 무엇인지 확신할 수 없을 때 빛을 발합니다. 엄격한 순서를 정의하는 대신, Claude에게 목표와 도구 세트를 제공하고 목표를 달성하기 위해 그 도구들을 어떻게 조합할지 스스로 파악하도록 합니다.

이러한 유연성은 다양하고 예측할 수 없는 작업을 처리해야 하는 애플리케이션을 구축하는 데 에이전트를 매력적으로 만듭니다. 에이전트를 한 번 만들어 적절히 작동하는지 확인한 다음, 이를 배포하여 광범위한 문제를 해결할 수 있습니다. 하지만 이러한 유연성에는 신뢰성과 비용 측면에서 트레이드오프가 따르며, 이는 나중에 살펴보겠습니다.

도구가 에이전트를 만드는 방법

에이전트의 진정한 힘은 단순한 도구들을 예상치 못한 방식으로 조합하는 능력에 있습니다. 기본적인 날짜/시간 도구 세트를 생각해 보세요:

  • get_current_datetime - 현재 날짜와 시간을 가져옵니다
  • add_duration_to_datetime - 주어진 날짜에 시간을 더합니다
  • set_reminder - 특정 시간에 대한 알림을 생성합니다

이 도구들은 개별적으로는 단순해 보이지만, Claude는 이를 연결하여 놀랍도록 복잡한 요청을 처리할 수 있습니다:

"지금 몇 시예요?"라는 질문에는 Claude가 단순히 get_current_datetime을 호출합니다. 하지만 "11일 후는 무슨 요일이에요?"라는 질문에는 get_current_datetime에 이어 add_duration_to_datetime을 연결합니다. 다음 주 수요일에 헬스장 알림을 설정하는 경우에는 세 가지 도구를 모두 순서대로 사용할 수도 있습니다.

Claude는 더 많은 정보가 필요한 시점도 인식할 수 있습니다. "90일 보증이 언제 만료되나요?"라고 물으면, 만료일을 계산하기 전에 언제 제품을 구매했는지 물어봐야 한다는 것을 알고 있습니다.

도구는 추상적이어야 합니다

효과적인 에이전트를 구축하기 위한 핵심 인사이트는 지나치게 특화된 도구가 아니라 적절히 추상적인 도구를 제공하는 것입니다. Claude Code는 이 원칙을 완벽하게 보여줍니다.

Claude Code는 다음과 같은 범용적이고 유연한 도구에 접근할 수 있습니다:

  • bash - 모든 명령을 실행합니다
  • read - 모든 파일을 읽습니다
  • write - 모든 파일을 생성합니다
  • edit - 파일을 수정합니다
  • glob - 파일을 찾습니다
  • grep - 파일 내용을 검색합니다

특히 "코드 리팩토링" 또는 "의존성 설치"와 같은 특화된 도구는 가지고 있지 않습니다. 대신, Claude는 이러한 복잡한 작업을 수행하기 위해 기본 도구를 어떻게 사용할지 스스로 파악합니다. 이러한 추상화는 개발자가 명시적으로 계획하지 않은 수많은 프로그래밍 시나리오를 처리할 수 있게 해줍니다.

모범 사례: 조합 가능한 도구

에이전트를 설계할 때는 Claude가 창의적인 방식으로 조합할 수 있는 도구를 제공하세요. 예를 들어, 소셜 미디어 동영상 에이전트는 다음을 포함할 수 있습니다:

  • bash - 동영상 처리를 위한 FFMPEG 접근
  • generate_image - 프롬프트로부터 이미지를 생성합니다
  • text_to_speech - 텍스트를 오디오로 변환합니다
  • post_media - 소셜 플랫폼에 콘텐츠를 업로드합니다

이 도구 세트는 단순한 워크플로우(동영상을 만들어 게시하기)와, 에이전트가 먼저 샘플 이미지를 생성하고 사용자 승인을 받은 후 동영상 제작을 진행하는 더 상호작용적인 경험을 모두 가능하게 합니다.

에이전트는 사용자 피드백과 선호도에 따라 접근 방식을 조정할 수 있는데, 이는 엄격한 워크플로우로는 달성하기 어려운 것입니다. 이러한 유연성이 바로 동적이고 사용자 반응형 애플리케이션을 구축하는 데 에이전트를 강력하게 만드는 요소입니다.