Metadata-Version: 2.4
Name: safer-sdk
Version: 0.1.8
Summary: SAFER SDK — instrument any AI agent framework with one line. Hooks for Claude SDK, OpenAI, OpenAI Agents, LangChain, Google ADK, AWS Strands, AWS Bedrock, and CrewAI.
Project-URL: Homepage, https://github.com/hashtagemy/safer
Project-URL: Documentation, https://github.com/hashtagemy/safer#readme
Project-URL: Repository, https://github.com/hashtagemy/safer
Project-URL: Issues, https://github.com/hashtagemy/safer/issues
Project-URL: Changelog, https://github.com/hashtagemy/safer/releases
Author: SAFER Contributors
Author-email: Mert Ozbas <mertozbas@gmail.com>
Maintainer-email: Mert Ozbas <mertozbas@gmail.com>
License-Expression: Apache-2.0
Keywords: agent-framework,agents,ai,anthropic,bedrock,claude,crewai,google-adk,hooks,instrumentation,langchain,llm,observability,openai,security,strands,tracing
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Monitoring
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: anyio>=4.3
Requires-Dist: httpx>=0.27
Requires-Dist: pydantic>=2.5
Requires-Dist: websockets>=12.0
Provides-Extra: all
Requires-Dist: anthropic>=0.40; extra == 'all'
Requires-Dist: boto3>=1.34; extra == 'all'
Requires-Dist: crewai>=0.55; extra == 'all'
Requires-Dist: google-adk>=1.0; extra == 'all'
Requires-Dist: langchain-core>=0.2; extra == 'all'
Requires-Dist: langchain>=0.2; extra == 'all'
Requires-Dist: openai-agents>=0.0.5; extra == 'all'
Requires-Dist: openai>=1.40; extra == 'all'
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.28; extra == 'all'
Requires-Dist: opentelemetry-sdk>=1.28; extra == 'all'
Requires-Dist: strands-agents>=1.0; extra == 'all'
Provides-Extra: bedrock
Requires-Dist: boto3>=1.34; extra == 'bedrock'
Provides-Extra: claude
Requires-Dist: anthropic>=0.40; extra == 'claude'
Provides-Extra: crewai
Requires-Dist: crewai>=0.55; extra == 'crewai'
Provides-Extra: dev
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.5; extra == 'dev'
Provides-Extra: google-adk
Requires-Dist: google-adk>=1.0; extra == 'google-adk'
Provides-Extra: langchain
Requires-Dist: langchain-core>=0.2; extra == 'langchain'
Requires-Dist: langchain>=0.2; extra == 'langchain'
Provides-Extra: openai
Requires-Dist: openai>=1.40; extra == 'openai'
Provides-Extra: openai-agents
Requires-Dist: openai-agents>=0.0.5; extra == 'openai-agents'
Requires-Dist: openai>=1.40; extra == 'openai-agents'
Provides-Extra: otel
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.28; extra == 'otel'
Requires-Dist: opentelemetry-sdk>=1.28; extra == 'otel'
Provides-Extra: otel-anthropic
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.28; extra == 'otel-anthropic'
Requires-Dist: opentelemetry-instrumentation-anthropic>=0.45b0; extra == 'otel-anthropic'
Requires-Dist: opentelemetry-sdk>=1.28; extra == 'otel-anthropic'
Provides-Extra: otel-openai
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.28; extra == 'otel-openai'
Requires-Dist: opentelemetry-instrumentation-openai>=0.45b0; extra == 'otel-openai'
Requires-Dist: opentelemetry-sdk>=1.28; extra == 'otel-openai'
Provides-Extra: strands
Requires-Dist: strands-agents>=1.0; extra == 'strands'
Description-Content-Type: text/markdown

# safer-sdk

SDK for SAFER — instrument any AI agent with one line.

```python
from safer import instrument
instrument()
```

See the main [README](../../README.md) for full docs.
