Skip to main content
Tool 블록은 실행 중 Agent가 고를 수 있는 기능입니다. 도구는 런타임이 두 종류입니다.
  • HTTP 외부 API를 부릅니다.
  • Inline JavaScript, Python, SQL 조각을 우리 런타임의 샌드박스에서 돌립니다.

Tool마다 필요한 네 가지

  1. 이름(name) Agent가 부르는 방법. 짧고 동사형으로(refund_charge, lookup_order).
  2. 설명(description) 부를지 말지 정할 때 Agent가 읽는 한 줄. 가장 중요한 필드입니다. 이해 못 하는 도구를 Agent는 부르지 않습니다.
  3. 파라미터(parameters) 종류가 정해진 입력들. 각각 이름, 타입, 필수/선택, 자기 설명.
  4. 구현(implementation) 실제 호출. HTTP는 URL + method, Inline은 코드 본문.
Tool 인스펙터 — 이름, 설명, 실행 방식, 코드 본문, 파라미터가 차례로 놓여 있다

HTTP 도구

이렇게 정합니다.
  • Method GET, POST, PATCH, PUT, DELETE.
  • URL path 조각에 {param} 템플릿을 씁니다.
  • Headers 시크릿을 넣을 수 있습니다(아래 참고).
  • Body 템플릿 POST/PATCH/PUT 용. {param}로 채웁니다.
응답은 JSON으로 Agent에게 전달됩니다. API가 JSON이 아닌 걸 돌려주면 Tool 안에 작은 후처리기를 더할 수 있습니다.

Inline 도구

JavaScript, Python, SQL로 함수 본문을 씁니다. 파라미터는 이름 있는 변수로 알아서 들어옵니다. 반환값이 Agent가 보는 것입니다. 예를 들면 이렇습니다(JavaScript).
Inline은 적당한 CPU·메모리 예산의 샌드박스에서 돌고, 기본으로 파일시스템과 네트워크에 못 닿습니다. 필요하면 Tool 설정에서 나가는 호스트를 허용 목록에 넣으세요.

파라미터

파라미터마다 이런 걸 가집니다.
  • Type string, number, boolean, enum, object, array.
  • Description 한 줄. 값을 고를 때 Agent가 읽습니다.
  • Required / optional 필수는 늘 채워지고, 선택은 Agent가 쓸모 있다고 볼 때만 채웁니다.
  • Default Agent가 선택 파라미터를 빼면 이 값을 씁니다.
  • Enum values enum 타입에 허용되는 리터럴 목록.
드래그 핸들로 파라미터 순서를 바꿉니다. 순서는 표현에만 영향을 주고 뜻은 안 바뀝니다.

시크릿과 헤더

어떤 헤더나 바디 값이든 secret으로 표시할 수 있습니다. 시크릿은 이렇습니다.
  • 저장한 뒤 UI에 절대 안 보입니다(••••로 뜹니다).
  • 내보낸 Flow JSON에 절대 안 들어갑니다.
  • 부를 때 암호화된 워크스페이스 저장소에서 들어옵니다.
Tool 인스펙터에서 시크릿을 로테이션할 수 있습니다. 이전 실행은 그대로 되고, 새 실행은 새 값을 씁니다.

승인

위험이 큰 도구(자금 이동, 파괴적 DB 작업, 알림)는 Require approval before call을 켭니다. 멈춘 호출은 Agent가 고른 정확한 인자와 함께 Approvals 큐에 뜹니다.

Tool 테스트

Tool마다 Test 패널이 있습니다. 파라미터를 채우고 Run을 누르면 원본 응답을 봅니다. Draft 자격증명을 쓰므로 마음 놓고 여러 번 시험할 수 있습니다.