Skip to main content
Strands Agents is an open-source SDK from AWS for building AI agents. It provides a simple, code-first approach to creating agents with tools, multi-agent orchestration, and streaming support. HoneyHive integrates seamlessly with Strands—no instrumentor needed. Strands uses OpenTelemetry natively, so initializing HoneyHive first automatically captures all agent activity.

Quick Start

Zero configuration required. Just initialize HoneyHive before importing Strands and all agent runs, tool calls, and model calls are automatically traced.
To see where to initialize the tracer for your environment, including AWS Lambda and long-running servers, see Tracer Initialization.

Tested Versions

HoneyHive’s Strands integration is tested against the following versions, as of April 2026. Newer patch releases are generally safe; pin to these versions to reproduce a known-good configuration. Requires Python 3.11+.
Don’t use openinference-instrumentation-strands-agents. That SpanProcessor (from Arize/OpenInference) isn’t supported by HoneyHive’s ingestion pipeline today and its spans may be dropped or misrouted. Strands’ native OTel path shown above is the recommended and fully supported approach.

What Gets Traced

HoneyHive automatically captures:
  • Agent invocations - Every agent() call with inputs and outputs
  • LLM calls - Model requests, responses, and token usage
  • Tool executions - Each tool call with arguments and results
  • Event loop cycles - Internal agent reasoning steps
No manual instrumentation required.

Example: Agent with Tools


Example: AWS Bedrock Model Backend

Strands works with AWS Bedrock via BedrockModel. You’ll need AWS credentials configured via any standard mechanism — ~/.aws/credentials, an IAM role, or environment variables:
Use a cross-region inference profile (the us. or global. prefix on the model ID) rather than a bare model ID. Bedrock requires the prefixed form for on-demand requests to Claude models — without it, Strands will fail with a model-access error. Example: us.anthropic.claude-haiku-4-5-20251001-v1:0.

Example: Multi-Agent (Agents-as-Tools)

Strands supports wrapping agents as tools for orchestration patterns:
In HoneyHive, you’ll see the full trace hierarchy: orchestrator → specialist agent → LLM calls.

Adding Metadata

Session-Level (User Context)

Use enrich_session for metadata that applies to the entire session:

Span-Level (Agent Attributes)

Use Strands’ native trace_attributes for metadata on agent spans:
These attributes appear on all spans created by that agent (invocations, LLM calls, tool executions).

Troubleshooting

Traces not appearing

  1. Initialize HoneyHive first - Must be called before importing Strands:
  1. Check environment variables - Ensure HH_API_KEY is set
  2. Verify model credentials - Ensure your model provider credentials are configured (Anthropic API key, AWS credentials, etc.)

Enrich Your Traces

Add user IDs and custom metadata to Strands traces

Custom Spans

Create spans for business logic around agent calls

Distributed Tracing

Trace agents across service boundaries

Query Trace Data

Export traces programmatically

Resources