Teja a025a206da Anthropic agents boilerplate (#4179)
* Add initial implementation of Anthropic Agents instrumentation

- Introduced `opentelemetry-instrumentation-anthropic-agents` package for tracing LLM requests using the Anthropic Python SDK.
- Added support for capturing request and response attributes in accordance with GenAI semantic conventions.
- Included examples for both manual and zero-code instrumentation.
- Created a CHANGELOG.md to document notable changes.
- Added LICENSE and README files for package details and usage instructions.

This commit lays the groundwork for enhanced observability in applications utilizing Anthropic's capabilities.

* Enhance instrumentation for Anthropic Agents

- Added support for the `opentelemetry-instrumentation-anthropic-agents` package, enabling tracing of requests made through the Claude Agent SDK.
- Updated `pyproject.toml` and `tox.ini` to include new test environments and dependencies for the Anthropic Agents instrumentation.
- Modified GitHub workflows to incorporate linting and testing for the new instrumentation.
- Improved documentation in README files and examples to reflect changes in usage and setup.
- Introduced new examples demonstrating both manual and zero-code instrumentation approaches.

This commit strengthens observability for applications utilizing Claude Agents, ensuring comprehensive tracing and logging capabilities.

* Remove outdated entries from CHANGELOG.md for Anthropic Agents instrumentation, streamlining the document to reflect current features and improvements.

* Update Anthropic Agents instrumentation to use Claude Agent SDK

- Changed dependency from `anthropic >= 0.16.0` to `claude-agent-sdk >= 0.1.14` in `README.md`, `pyproject.toml`, and related files.
- Refactored `AnthropicAgentsInstrumentor` to align with the new SDK, including updates to initialization and logging.
- Removed unused utility functions and cleaned up test configurations to reflect the new dependency.
- Updated tests to ensure compatibility with the Claude Agent SDK.

This commit enhances the instrumentation for applications using the Claude Agent SDK, ensuring accurate tracing and logging capabilities.

* Update Python version requirements and clean up workflows for Anthropic Agents instrumentation

- Updated `tox.ini` and `pyproject.toml` to require Python 3.10 or higher, removing support for Python 3.9.
- Cleaned up GitHub workflows by removing outdated test jobs for Python 3.9 and adding new jobs for Python 3.10.
- Updated `README.md` to reflect the new dependency on `claude-agent-sdk` and removed references to the old SDK.
- Made minor code cleanups in example scripts and test files to improve readability.

These changes ensure compatibility with the latest Python versions and streamline the testing process for the Anthropic Agents instrumentation.

* Add Anirudha as a component owner for Anthropic instrumentation.

* fixing precommit errors.

* Update version comment in `version.py` to indicate future stable release

* Refactor imports in `__init__.py` for Anthropic Agents instrumentation.

* regenerate uv.lock file.

* Update uv.lock to standardize package source URLs with trailing slashes

* Rename instrumentation for Anthropic Agents to Claude Agent SDK, updating references in configuration files, workflows, and documentation. Add new files for the Claude Agent SDK instrumentation, including README, examples, and changelog. Ensure proper setup for testing and linting in CI/CD workflows.

* Update release documentation and workflows to include new instrumentation for Anthropic and Claude Agent SDK.

* Add Mike Goldsmith as a component owner for Anthropic and Claude Agent SDK instrumentation

* Revert "Merge remote-tracking branch 'upstream/main' into feat/anthropic-agents-boilerplate"

This reverts commit 7ed01ecb2d, reversing
changes made to 7e83cd7d74.

* Reapply "Merge remote-tracking branch 'upstream/main' into feat/anthropic-agents-boilerplate"

This reverts commit 7714e3c544.

* Update Python version in workflows and adjust dependencies in uv.lock.

* Fix source URLs in uv.lock to ensure proper registry formatting.
2026-02-19 20:57:06 -05:00
2026-02-19 14:37:02 -05:00
2026-02-19 14:37:02 -05:00
2026-02-19 14:37:02 -05:00
2022-09-15 23:42:49 +05:30
2026-02-19 14:37:02 -05:00
2020-04-08 13:17:31 -07:00
2021-09-27 19:58:13 +00:00
2026-02-19 20:57:06 -05:00
2026-02-19 20:57:06 -05:00

Getting Started   •   API Documentation   •   Getting In Touch (GitHub Discussions)

GitHub release (latest by date including pre-releases) Codecov Status license
Build Status 0 Build Status 1 Beta

Contributing   •   Instrumentations

OpenTelemetry Python Contrib

The Python auto-instrumentation libraries for OpenTelemetry (per OTEP 0001)

Index

Installation

This repository includes installable packages for each instrumented library. Libraries that produce telemetry data should only depend on opentelemetry-api, and defer the choice of the SDK to the application developer. Applications may depend on opentelemetry-sdk or another package that implements the API.

Please note that these libraries are currently in beta, and shouldn't generally be used in production environments.

Unless explicitly stated otherwise, any instrumentation here for a particular library is not developed or maintained by the authors of such library.

The instrumentation/ directory includes OpenTelemetry instrumentation packages, which can be installed separately as:

pip install opentelemetry-instrumentation-{integration}

To install the development versions of these packages instead, clone or fork this repo and do an editable install:

pip install -e ./instrumentation/opentelemetry-instrumentation-{integration}

Releasing

Maintainers release new versions of the packages in opentelemetry-python-contrib on a monthly cadence. See releases for all previous releases.

Contributions that enhance OTel for Python are welcome to be hosted upstream for the benefit of group collaboration. Maintainers will look for things like good documentation, good unit tests, and in general their own confidence when deciding to release a package with the stability guarantees that are implied with a 1.0 release.

To resolve this, members of the community are encouraged to commit to becoming a CODEOWNER for packages in -contrib that they feel experienced enough to maintain. CODEOWNERS can then follow the checklist below to release -contrib packages as 1.0 stable:

Releasing a package as 1.0 stable

To release a package as 1.0 stable, the package:

  • SHOULD have a CODEOWNER. To become one, submit an issue and explain why you meet the responsibilities found in CODEOWNERS.
  • MUST have unit tests that cover all supported versions of the instrumented library.
    • e.g. Instrumentation packages might use different techniques to instrument different major versions of python packages
  • MUST have clear documentation for non-obvious usages of the package
    • e.g. If an instrumentation package uses flags, a token as context, or parameters that are not typical of the BaseInstrumentor class, these are documented
  • After the release of 1.0, a CODEOWNER may no longer feel like they have the bandwidth to meet the responsibilities of maintaining the package. That's not a problem at all, life happens! However, if that is the case, we ask that the CODEOWNER please raise an issue indicating that they would like to be removed as a CODEOWNER so that they don't get pinged on future PRs. Ultimately, we hope to use that issue to find a new CODEOWNER.

Semantic Convention status of instrumentations

In our efforts to maintain optimal user experience and prevent breaking changes for transitioning into stable semantic conventions, OpenTelemetry Python is adopting the semantic convention migration plan for several instrumentations. Currently this plan is only being adopted for HTTP-related instrumentations, but will eventually cover all types. Please refer to the semconv status column of the instrumentation README of the current status of instrumentations' semantic conventions. The possible values are development, stable and migration referring to status of that particular semantic convention. Migration refers to an instrumentation that currently supports the migration plan.

Contributing

See CONTRIBUTING.md

We meet weekly on Thursday at 9AM PT. The meeting is subject to change depending on contributors' availability. Check the OpenTelemetry community calendar for specific dates and for the Zoom link.

Meeting notes are available as a public Google doc.

Maintainers

For more information about the maintainer role, see the community repository.

Approvers

For more information about the approver role, see the community repository.

Emeritus Maintainers

For more information about the emeritus role, see the community repository.

Emeritus Approvers

For more information about the emeritus role, see the community repository.

Thanks to all of our contributors!

Repo contributors
Description
OpenTelemetry instrumentation for Python modules
Readme Apache-2.0 78 MiB
Languages
Python 99.7%
Shell 0.3%