TaskSignalProvider
내장된 작업 Tool을 번들로 제공합니다(task_write, task_update, task_complete, task_check) 그리고TaskStateProcessor단일 Agent 등록 뒤에. Tool와 프로세서를 별도로 연결하지 않고도 구조화되고 내구성 있는 작업 목록을 Agent에 추가하는 데 사용됩니다.
SignalProvider를 확장합니다. 작업 목록은 스레드 범위의 tasks 저장소 도메인(신뢰할 수 있는 원본)에 저장되고 프로세서에 의해 Agent 상태 신호 레인에 투영되므로, Prompt 캐시를 무효화하지 않으면서 관찰 Memory가 잘린 후에도 유지됩니다.
사용예사용예에 대한 직접 링크
Memory와 Mastra storage가 있는 Agent에 Provider를 등록하세요.
import { Agent } from '@mastra/core/agent'
import { TaskSignalProvider } from '@mastra/core/signals'
const agent = new Agent({
id: 'coder',
name: 'coder',
instructions: '...',
model,
memory,
signals: [new TaskSignalProvider()],
})
Agent는 자동으로 네 가지 작업 Tool을 Tool 세트에 병합하고 입력 프로세서 체인에 프로세서를 등록합니다. 다른 배선은 필요하지 않습니다.
작업 추적에는 Memory가 지원하는 스레드(threadId + resourceId)가 필요합니다. Memory가 없으면 작업 Tool은 아무 작업도 하지 않고, 작업 추적에 Agent Memory가 필요하다는 설명이 담긴 결과를 반환합니다. tasks 저장소 도메인은 기본적으로 메모리 내 저장소에 연결되므로 저장소 백엔드를 구성하지 않아도 작업 추적이 작동합니다.
생성자 매개변수생성자 매개변수에 대한 직접 링크
TaskSignalProvider생성자 인수를 사용하지 않습니다.
속성속성에 대한 직접 링크
id:
행동 양식행동 양식에 대한 직접 링크
Agent 통합Agent 통합에 대한 직접 링크
이 메서드들은 Provider가 signals에 전달될 때 Agent에 의해 자동으로 호출됩니다. 일반적으로 직접 호출하지 않습니다.
getTools()gettools에 대한 직접 링크
Tool ID가 지정된 네 개의 작업 Tool(task_write, task_update, task_complete, task_check)을 반환합니다. Agent는 이를 자체 Tool 집합에 병합합니다.
const tools = new TaskSignalProvider().getTools()
// { task_write, task_update, task_complete, task_check }
보고:Record<string, Tool>
getInputProcessors()getinputprocessors에 대한 직접 링크
Provider의 TaskStateProcessor 인스턴스를 반환합니다. Agent는 이를 입력 프로세서 체인에 등록합니다. 이 체인은 Mastra 인스턴스를 전파하여 프로세서가 tasks 저장소를 확인할 수 있게 합니다.
const [processor] = new TaskSignalProvider().getInputProcessors()
// processor instanceof TaskStateProcessor
보고:InputProcessorOrWorkflow[]