Metadata-Version: 2.4
Name: fiddler-strands
Version: 0.8.0
Summary: Fiddler SDK for Strands Agent instrumentation with OpenTelemetry
Author-email: Fiddler AI <support@fiddler.ai>
License-Expression: Apache-2.0
Project-URL: Homepage, https://fiddler.ai
Project-URL: Documentation, https://docs.fiddler.ai
Project-URL: Repository, https://github.com/fiddler-labs/fiddler-sdk
Project-URL: Issues, https://github.com/fiddler-labs/fiddler-sdk/issues
Keywords: fiddler,ai,genai,llm,monitoring,observability,instrumentation,strands,opentelemetry
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Requires-Python: >=3.11
Description-Content-Type: text/markdown
Requires-Dist: fiddler-otel<2.0.0,>=0.1.0
Requires-Dist: opentelemetry-api>=1.30.0
Requires-Dist: opentelemetry-sdk>=1.30.0
Requires-Dist: opentelemetry-instrumentation>=0.51b0
Requires-Dist: opentelemetry-exporter-otlp>=1.20.0
Requires-Dist: pydantic>=2.0
Requires-Dist: strands-agents>=1.19.0
Requires-Dist: wrapt>=1.14.0
Provides-Extra: examples
Requires-Dist: python-dotenv>=1.2.3; extra == "examples"
Requires-Dist: openai>=1.0.0; extra == "examples"
Requires-Dist: strands-agents-tools>=0.2.0; extra == "examples"

# fiddler-strands

Fiddler SDK for instrumenting [Strands Agents](https://github.com/strands-agents/sdk-python) with OpenTelemetry.
It builds on [`fiddler-otel`](https://pypi.org/project/fiddler-otel/), installed automatically, for shared span attributes and span processing.

## Install

```bash
pip install fiddler-strands
```

## Requirements

- Python 3.11, 3.12, 3.13, or 3.14
- `strands-agents >= 1.19.0` (installed automatically)

## Usage

Point the Strands OpenTelemetry exporter at your Fiddler instance. Generate an access token in Fiddler under **Settings → Credentials**.

```bash
export OTEL_EXPORTER_OTLP_ENDPOINT="https://your-instance.fiddler.ai"
export OTEL_RESOURCE_ATTRIBUTES="application.id=<APPLICATION_UUID>"
export OTEL_EXPORTER_OTLP_HEADERS="authorization=Bearer <ACCESS_TOKEN>,fiddler-application-id=<APPLICATION_UUID>"
```

Then instrument Strands before creating your agents:

```python
from strands.telemetry import StrandsTelemetry
from fiddler_strandsagents import StrandsAgentInstrumentor

telemetry = StrandsTelemetry()
telemetry.setup_otlp_exporter()
StrandsAgentInstrumentor(telemetry).instrument()
```

Helper functions such as `set_conversation_id`, `set_session_attributes`, `set_span_attributes`, and `set_llm_context` add business context to your traces.

## Documentation

- [Strands Agents Quick Start](https://docs.fiddler.ai/developers/quick-starts/strands-agent-quick-start)
- [Strands SDK Integration Guide](https://docs.fiddler.ai/integrations/agentic-ai/strands-sdk)
- [API Reference](https://docs.fiddler.ai/sdk-api/strands)
- [Release Notes](https://docs.fiddler.ai/changelog/strands-sdk)

## Support

Email [support@fiddler.ai](mailto:support@fiddler.ai) or contact your Fiddler Customer Success Manager.

## License

Apache License 2.0
