> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-docs-3071-org-scoped-api-keys.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# startTool

> TypeScript SDK リファレンス

> **startTool**(`opts`): [`Tool`](../interfaces/tool)

`Tool` の span を開始します。親の解決方法 (設計上の「デフォルトではフラット、ネストした場合は階層化」に対応) :

* LLM がアクティブな場合、`Tool` はその配下にネストされます。
* それ以外の場合、`Tool` は現在の Turn と同じ親の下に配置されます。

Turn と LLM のどちらもアクティブでない場合は、例外をスローします。

定義元: [src/genai/api.ts:110](https://github.com/wandb/weave/blob/8c5f077eb11c42b84000726ff20504abc728d3fb/sdks/node/src/genai/api.ts#L110)

<div id="parameters">
  ## パラメーター
</div>

<div id="opts">
  ### opts
</div>

[`ToolInit`](../interfaces/toolinit)

<div id="returns">
  ## 戻り値
</div>

[`Tool`](../interfaces/tool)

<div id="examples">
  ## 例
</div>

```ts twoslash theme={null}
// @noErrors
weave.startTool({
  name: 'get_weather',
  args: JSON.stringify({city: 'Tokyo'}),
  toolCallId: 'call_t1',
});
```

```ts twoslash theme={null}
// @noErrors
weave.startTool({
  name: 'get_weather',
  args: JSON.stringify({city: 'Tokyo'}),
  toolCallId: 'call_t1',
  startTime: new Date('2026-05-29T10:00:00.800Z'),
});
```
