본문으로 건너뛰기

타입 별칭: ToolExecutionContext<TContext>

type ToolExecutionContext<TContext> = RuntimeContextField<TContext> & object;

정의 위치: packages/ai/src/types.ts:636

도구 실행 함수에 전달되는 컨텍스트로, 실행 중 커스텀 이벤트 발생과 같은 기능을 제공합니다.

타입 선언

abortSignal?

optional abortSignal?: AbortSignal;

현재 채팅 실행을 위한 abort 시그널입니다. 실행의 abortController가 발생하거나 미들웨어가 abort할 때 중단됩니다. 장시간 실행되는 도구(예: MCP callTool)는 진행 중인 작업을 취소할 수 있도록 이를 전달해야 합니다.

emitCustomEvent

emitCustomEvent: (eventName, value) => void;

도구 실행 중 커스텀 이벤트를 발생시킵니다. 이벤트는 AG-UI CUSTOM 이벤트로 실시간 클라이언트에 스트리밍됩니다.

매개변수

eventName

string

커스텀 이벤트의 이름

value

Record&lt;string, any>

이벤트 페이로드 값

반환값

void

예제

const tool = toolDefinition({ ... }).server(async (args, context) => {
context?.emitCustomEvent('progress', { step: 1, total: 3 })
// ... do work ...
context?.emitCustomEvent('progress', { step: 2, total: 3 })
// ... do more work ...
return result
})

toolCallId?

optional toolCallId?: string;

실행 중인 도구 호출의 ID

타입 매개변수

TContext

TContext = unknown