> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ko/llms.txt # Workflow\.tool() 그만큼`.tool()`메서드는 Tool을 선언적 단계로 추가합니다. Tool 자체의 입력 및 출력 스키마가 적용되므로 이전 단계의 출력은 Tool의 입력 스키마를 충족해야 합니다. 사용`.map()`일치하지 않는 경우 데이터를 변환합니다. Tool을 `createStep()`으로 감싸는 것과 달리 `.tool()`은 Workflow 그래프에 선언적 항목을 기록합니다. 따라서 Workflow를 이식할 수 있으며, 동일한 그래프를 직렬화하여 [동적 Workflow](https://mastra.zisheng.pro/ko/docs/workflows/dynamic-workflows)로 저장할 수 있습니다. ## 사용예 ```typescript workflow.tool(testTool).commit(); ``` ## 매개변수 **toolOrId** (`Tool | string`): Tool 인스턴스 또는 Mastra 인스턴스에 등록된 Tool의 ID입니다. ID를 전달하면 실행 시 레지스트리에서 Tool을 확인합니다. **options** (`{ retries?: number, scorers?: DynamicArgument, metadata?: StepMetadata }`): Tool 단계의 단계 수준 재시도 횟수, 채점기 및 메타데이터입니다. **stepOptions** (`{ id?: string }`): Workflow 내 단계의 호출 지점 ID입니다. 기본값은 Tool의 ID입니다. 동일한 Tool이 하나의 Workflow에 두 번 이상 나타날 때 설정하세요. ## 보고 **workflow** (`Workflow`): 메서드 체이닝을 위한 Workflow 인스턴스 ## ID로 Tool 참조 등록된 Tool을 가져오지 않고 참조하려면 문자열을 전달하세요. Workflow가 실행될 때 Tool은 Mastra 인스턴스에 등록되어야 합니다. ```typescript workflow.tool("lookup-customer", { retries: 2 }).commit(); ``` ## 지속적인 Tool 단계 `.tool()`로 구축된 Workflow는 [동적 Workflow](https://mastra.zisheng.pro/ko/docs/workflows/dynamic-workflows)에서 사용하는 것과 동일한 선언적 항목으로 직렬화됩니다. 저장소를 왕복해 유지되는 것은 `retries`와 `metadata`뿐입니다. 함수 값을 가진 `scorers` 옵션은 Workflow 저장 시 오류를 발생시킵니다. ## 관련된 - [Agent 및 Tool](https://mastra.zisheng.pro/ko/docs/workflows/agents-and-tools) - [동적 Workflow](https://mastra.zisheng.pro/ko/docs/workflows/dynamic-workflows) - [Workflow.Agent()](https://mastra.zisheng.pro/ko/reference/workflows/workflow-methods/agent)