본문으로 건너뛰기

기본 제공 도구 참조

Agent는 대화 중에 AI가 자동으로 호출하는 기본 제공 도구 세트와 함께 제공됩니다. 이러한 도구는 유지 대화에서 기본적으로 사용할 수 있습니다. 스크립트 개발자는 일반적으로 직접 호출할 필요가 없습니다 — AI는 사용자 의도에 따라 올바른 도구를 선택합니다.

이러한 도구가 무엇을 할 수 있는지 이해하면 더 나은 시스템 프롬프트와 사용자 지정 도구를 작성하는 데 도움이 됩니다.

웹 데이터 가져오기

web_fetch

URL의 콘텐츠를 가져오며 HTML-텍스트 추출 및 LLM 요약 지원이 포함됩니다.

매개변수유형필수설명
urlstring대상 URL (http/https 전용)
promptstring아니요요약 프롬프트 (제공 시 LLM을 사용하여 콘텐츠를 요약)
max_lengthnumber아니요최대 콘텐츠 문자 수

동작 세부 사항:

  • 30초 요청 시간 초과
  • HTML 콘텐츠는 기본 본문 텍스트를 자동으로 추출 (탐색, 사이드바 등 제거)
  • JSON 응답은 자동으로 구문 분석됨
  • 일반 텍스트는 그대로 반환됨
  • prompt가 제공되면 가져온 콘텐츠가 요약을 위해 LLM으로 전송됨

반환 값:

{
"url": "https://example.com",
"content_type": "text/html",
"content": "Extracted body content...",
"truncated": false,
"final_url": "https://example.com/redirected"
}

검색 엔진을 쿼리하고 구조화된 검색 결과를 반환합니다.

매개변수유형필수설명
querystring검색 키워드
max_resultsnumber아니요최대 결과 수 (기본 5, 상한 10)

지원되는 검색 엔진:

엔진설명구성 필요
DuckDuckGo기본 엔진없음
BingMicrosoft Bing 검색API 키 필요
Baidu바이두 검색API 키 불필요
Google Custom SearchGoogle 맞춤 검색API 키 + CSE ID 필요

검색 엔진은 관리 페이지 → Agent → 설정에서 구성합니다.

반환 값:

[
{
"title": "Search result title",
"url": "https://example.com/result",
"snippet": "Result summary text..."
}
]

get_tab_content

지정된 탭의 렌더링된 페이지 콘텐츠를 읽고 CSS 선택자로 주석이 달린 구조화된 Markdown으로 변환합니다.

매개변수유형필수설명
tab_idnumber탭 ID
selectorstring아니요CSS 선택자, 일치하는 부분만 추출
promptstring아니요요약 프롬프트
max_lengthnumber아니요최대 콘텐츠 문자 수

web_fetch와의 차이: get_tab_content는 페이지를 브라우저가 이미 렌더링한 대로 읽는 반면(동적 JS 콘텐츠 포함), web_fetch는 새 HTTP 요청을 만듭니다.

반환 값:

{
"tab_id": 123,
"url": "https://example.com",
"title": "Page title",
"content": "Structured content...",
"truncated": false,
"used_selector": "main"
}

탭 관리

list_tabs

열려 있는 탭을 쿼리하며 여러 필터 조건을 지원합니다.

매개변수유형필수설명
url_patternstring아니요URL 정규식 일치
title_patternstring아니요제목 정규식 일치
activeboolean아니요활성 탭만 반환
window_idnumber아니요지정된 창
audibleboolean아니요오디오를 재생 중인 탭만 반환

open_tab

새 탭을 열거나 기존 탭을 탐색합니다.

매개변수유형필수설명
urlstring대상 URL
tab_idnumber아니요기존 탭의 ID (제공 시 해당 탭 탐색, 그렇지 않으면 새 탭 열기)
activeboolean아니요활성화 여부 (기본값 true)
window_idnumber아니요지정된 창
wait_until_loadedboolean아니요페이지 로딩 완료 대기 여부 (기본값 true)

close_tab

탭을 닫습니다.

매개변수유형필수설명
tab_idnumber탭 ID

activate_tab

탭을 활성화하고 해당 창에 초점을 맞춥니다.

매개변수유형필수설명
tab_idnumber탭 ID

파일 시스템 (OPFS)

opfs_write

작업 영역에 파일을 씁니다.

매개변수유형필수설명
pathstring파일 경로
contentstring파일 내용 (데이터 URL 바이너리 지원)

opfs_read

작업 영역에서 파일을 읽습니다. 기본적으로 파일 유형이 자동 감지됩니다: 텍스트 파일은 내용을 반환하고 바이너리 파일은 blob URL을 반환합니다.

매개변수유형필수설명
pathstring파일 경로
modestring아니요"text" / "blob" / "auto"(기본값) — 특정 반환 모드 강제
offsetnumber아니요시작 줄 번호 (1부터 시작), 텍스트 모드 전용
limitnumber아니요읽을 줄 수, 텍스트 모드 전용 (텍스트가 200줄을 초과하면 페이지 매김 필요)

opfs_list

디렉터리 내용을 나열합니다.

매개변수유형필수설명
pathstring아니요디렉터리 경로 (기본값은 루트 디렉터리)

opfs_delete

파일 또는 디렉터리를 삭제합니다.

매개변수유형필수설명
pathstring파일/디렉터리 경로

사용자 상호 작용

ask_user

사용자에게 질문하며 자유 형식 입력 또는 구조화된 선택을 지원합니다.

매개변수유형필수설명
questionstring질문
optionsstring[]아니요선택 목록 (제공 시 객관식 질문이 됨)
multipleboolean아니요다중 선택 허용 여부 (기본값 false)

시간 초과: 응답 없이 5분 후 { answer: null, reason: "timeout" } 반환.

반환 값:

{ "answer": "The user's answer text" }

execute_script

페이지 또는 샌드박스에서 JavaScript 코드를 실행합니다.

매개변수유형필수설명
codestringJavaScript 코드
targetstring"page" 또는 "sandbox"
tab_idnumber아니요targetpage일 때 대상 탭 (기본값은 현재 활성 탭); 샌드박스에서는 무시됨

실행 환경 비교:

환경DOM페이지 JS확장 프로그램 blob URL가장 적합한 용도
target: "page" (항상 MAIN 세계)아니요DOM 읽기/조작, 페이지 함수 호출, 페이지 변수 읽기
target: "sandbox"아니요아니요아니요순수 계산

page 모드는 항상 페이지의 MAIN 세계에서 실행되어 페이지와 window를 공유합니다 — 따라서 확장 프로그램 자체의 blob URL에 액세스할 수 없습니다(예: opfs_read가 blob 모드에서 반환하는 주소). blob URL로 작업해야 하는 경우 SkillScript를 대신 사용하세요.

하위 에이전트

agent

복잡한 하위 작업을 처리하기 위해 독립적인 하위 에이전트를 생성합니다.

매개변수유형필수설명
promptstring하위 작업 설명
descriptionstring아니요짧은 라벨 (몇 단어, UI 표시용)
typestring아니요하위 에이전트 유형 (아래 참조), 기본값 "general"
tab_idnumber아니요하위 에이전트에 전달할 탭 ID, 하위 에이전트가 해당 탭에서 작동

하위 에이전트 유형:

type설명사용 가능한 도구
researcher정보 검색 (읽기 전용)web_search, web_fetch, 페이지 콘텐츠 읽기
page_operator브라우저 자동화탭 관리, DOM 조작, 페이지 상호 작용
general일반 목적 (기본값)모든 도구

특징:

  • 하위 에이전트는 자체 독립적인 대화 컨텍스트를 가짐
  • ask_user 또는 agent를 사용할 수 없음 (재귀 방지)
  • 하위 에이전트의 이벤트는 sub_agent_event를 통해 부모 대화로 전달됨

작업 관리

이 도구 그룹은 대화 내에서 임시 작업 목록을 관리합니다 (메모리 내, 유지되지 않음).

create_task

매개변수유형필수설명
subjectstring작업 제목
descriptionstring아니요자세한 설명

update_task

매개변수유형필수설명
task_idstring작업 ID
statusstring아니요"pending" / "in_progress" / "completed"
subjectstring아니요새 제목
descriptionstring아니요새 설명

list_tasks

매개변수 없음, 모든 작업의 간단한 목록을 반환합니다.

작업 관리 도구는 주로 AI가 복잡한 다단계 작업을 처리하는 동안 자체 진행 상황을 추적하기 위한 것입니다. 작업 데이터는 유지되지 않습니다.