> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-drtangible-wip-test-inline-tag.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# createOtelExtension

> TypeScript SDK reference

> **createOtelExtension**(`opts?`): (`pi`) => `void`

Creates a pi coding agent extension that emits OTEL spans for the full
agent lifecycle, conforming to the GenAI semantic conventions.

When `weave.init(...)` has been called, spans are automatically exported
to the Weave trace server at `/agents/otel/v1/traces`. Otherwise, pass a
custom `tracer` in `opts`.

Defined in: [src/integrations/piCodingAgent.ts:658](https://github.com/wandb/weave/blob/7c9efdc9fe05ffcaf2430dd652ef9bc5b3ffdfaa/sdks/node/src/integrations/piCodingAgent.ts#L658)

## Parameters

### opts?

#### captureContent?

`boolean`

#### tracer?

`Tracer`

## Returns

(`pi`) => `void`

## Example

```typescript twoslash theme={null}
// @noErrors
const resourceLoader = new DefaultResourceLoader({
  extensionFactories: [createOtelExtension()],
});
```
