Metadata-Version: 2.4
Name: nexus-agentos
Version: 1.3.37
Summary: Agent Operating System — Production-ready multi-model agent framework with Tool-Using Agent, LLM Provider abstraction (OpenAI/DeepSeek/Anthropic), Function Calling, streaming, retry, checkpoint/resume, A2A protocol, swarm coordination, and comprehensive observability.
Project-URL: Homepage, https://github.com/agentos/agentos
Project-URL: Documentation, https://docs.agentos.dev
Project-URL: Repository, https://github.com/agentos/agentos.git
Author: AgentOS Team
License: MIT
Keywords: agent,ai,framework,function-calling,llm,multi-agent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Requires-Dist: aiosqlite>=0.20.0
Requires-Dist: fastapi>=0.100.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: openai>=1.0.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: uvicorn>=0.30.0
Provides-Extra: dev
Requires-Dist: mypy>=1.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21; extra == 'dev'
Requires-Dist: pytest-benchmark>=4.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff>=0.1; extra == 'dev'
Provides-Extra: evaluation
Requires-Dist: rouge-score>=0.1.2; extra == 'evaluation'
Requires-Dist: sentence-transformers>=2.0; extra == 'evaluation'
Provides-Extra: rag
Requires-Dist: chromadb>=0.4; extra == 'rag'
Requires-Dist: faiss-cpu>=1.7; extra == 'rag'
Requires-Dist: tiktoken>=0.5; extra == 'rag'
Description-Content-Type: text/markdown

---
AIGC:
    Label: "1"
    ContentProducer: 001191440300708461136T1XGW3
    ProduceID: 3e9b297b16411e0e0848fc0302358070_9f6cc124744311f1897e5254002afed2
    ReservedCode1: IMz08bNnClQ30HefCeW7qyiOyWeXzDuNrXHE5WRO5QkzLJqdjephTgTAmi0TrkvcT0NZ+gKPRuzSPQM4VBEYtDZfVOw9lVTsYJcGnxbUAGFnrM+V13g78mBsOnYa9BL56dEcqwICuI6mRlFWgvODbNtl8KRQ8OsZ13fBwaHtSlr9GXQUZ/plPV+ctJQ=
    ContentPropagator: 001191440300708461136T1XGW3
    PropagateID: 3e9b297b16411e0e0848fc0302358070_9f6cc124744311f1897e5254002afed2
    ReservedCode2: IMz08bNnClQ30HefCeW7qyiOyWeXzDuNrXHE5WRO5QkzLJqdjephTgTAmi0TrkvcT0NZ+gKPRuzSPQM4VBEYtDZfVOw9lVTsYJcGnxbUAGFnrM+V13g78mBsOnYa9BL56dEcqwICuI6mRlFWgvODbNtl8KRQ8OsZ13fBwaHtSlr9GXQUZ/plPV+ctJQ=
---

# AgentOS v1.0

**Production-ready multi-model agent framework.**

## Quick Start

```bash
pip install agentos
```

With an API key:
```bash
export OPENAI_API_KEY=sk-...
agentos "What's the weather in Beijing?"
```

Without an API key (mock demo mode):
```bash
agentos demo
```

## Features

- **LLM Provider**: OpenAI / DeepSeek / Anthropic, unified interface
- **Tool-Using Agent**: Autonomous multi-step reasoning with Function Calling
- **Streaming**: `run_stream()` for real-time step yielding
- **Retry & Checkpoint**: Configurable retry + JSON checkpoint/resume
- **Mock Mode**: Test without API keys
- **A2A Protocol**: Agent-to-agent communication
- **Swarm Coordination**: Multi-agent topologies

## CLI

```
agentos <task>         Run a task
agentos demo           Weather agent demo
agentos serve          Start API server
agentos version        Show version
```

## Provider Auto-Detection

| Env Var | Provider | Default Model |
|---------|----------|---------------|
| `OPENAI_API_KEY` | OpenAI | `gpt-4o-mini` |
| `DEEPSEEK_API_KEY` | DeepSeek | `deepseek-chat` |
| `ANTHROPIC_API_KEY` | Anthropic | `claude-sonnet-4` |

## Python API

```python
from agentos.llm import create_provider
from agentos.llm.base import Tool, ToolParameter
from agentos.agent import ToolAgent, ToolExecutor, AgentConfig

provider = create_provider("openai")
executor = ToolExecutor()
executor.register(
    Tool.from_function("get_weather", "Get weather", {
        "city": ToolParameter(type="string", description="City name"),
    }),
    lambda city: f"{city}: 22°C sunny",
)

agent = ToolAgent(provider, executor, config=AgentConfig())
result = agent.run("What's the weather in Tokyo?")
print(result.final_answer)
```
*（内容由AI生成，仅供参考）*
