> ## 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.

# instrumentOpenAIAgents

> TypeScript SDK リファレンス

> **instrumentOpenAIAgents**(): `Promise`\<`boolean`>

パッケージが利用可能な場合、OpenAI Agents に Weave のトレースを手動で登録します。

**注: 通常、この関数を呼び出す必要はありません。** Weave を import すると、OpenAI Agents はモジュールローダーフックを通じて自動的にインストルメントされます。この関数は、自動インストルメンテーションが機能しないエッジケース (例: 動的 import や、フックをバイパスするバンドラー) のために用意されています。

この関数は、利用側の node\_modules から @openai/agents を動的に import し、TracingProcessor の登録を試みます。パッケージがインストールされていない場合は、エラーをスローせずに false を返します。

定義元: [src/integrations/openai.agent.ts:169](https://github.com/wandb/weave/blob/8c5f077eb11c42b84000726ff20504abc728d3fb/sdks/node/src/integrations/openai.agent.ts#L169)

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

`Promise`\<`boolean`>

`Promise<boolean>` - 登録に成功した場合は `true`、`@openai/agents` を利用できない場合は `false`

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

```typescript twoslash theme={null}
// @noErrors
// ✅ 推奨: Weave を import するだけで、インストルメンテーションが自動的に行われます！
import * as weave from 'weave';
await weave.init('my-project');

// OpenAI Agents はフック経由でインストルメントされるため、手動での setup は不要です
import { Agent } from '@openai/agents';
const agent = new Agent({ ... });
await agent.run(input); // Weave で自動的にトレースされます
```

```typescript twoslash theme={null}
// @noErrors
// ⚠️ 自動フックが機能しないエッジケースでのみ必要
import { instrumentOpenAIAgents } from 'weave';

const registered = await instrumentOpenAIAgents();
if (!registered) {
  console.log('OpenAI Agents not found - install @openai/agents to enable tracing');
}
```

<div id="remarks">
  ## 備考
</div>

**自動インストルメンテーションの仕組み**: Weave を import すると、`addCJSInstrumentation()` と `addESMInstrumentation()` を通じてモジュールローダーフックが登録されます。その後、コードで `@openai/agents` を import すると、これらのフックが import を捕捉し、Weave のトレースを追加するためのパッチをモジュールに自動的に適用します。これは透過的に行われるため、特別な対応は不要です。

**この関数を使用するタイミング**: 自動インストルメンテーションが機能しない場合にのみ使用してください。たとえば、次のようなケースです。

* モジュールフックをバイパスする動的 import を使用している
* import-in-the-middle をサポートしていないバンドラーを使用している
* インストルメンテーションを実行するタイミングを明示的に制御する必要がある

**カスタム processor ロジックの代替手段**: カスタムのトレース動作が必要な場合は、
`createOpenAIAgentsTracingProcessor()` を使用して手動で登録してください：

```typescript twoslash theme={null}
// @noErrors
import { addTraceProcessor } from '@openai/agents';
import { createOpenAIAgentsTracingProcessor } from 'weave';

const processor = createOpenAIAgentsTracingProcessor();
addTraceProcessor(processor);
```
