Agent SDK is a layered Python framework for building agentic applications with shared abstractions for agents, orchestration, tools, skills, memory, protocols, and IO.
agent_sdkis the actively documented and supported base package in this repository.- Public documentation lives in
docs/and is written in English. agent-sdk-pro/is the separate optional extension package for advanced search, team, and browser-runtime features. The public docs in this snapshot remain centered onagent_sdk.- ACP is not part of the current source tree and is not a supported protocol surface.
- Multiple agent implementations:
ReactiveAgent,PlanExecuteAgent,ToolCallingAgent,StateAgent - Nine orchestration patterns with middleware and registry support
- Provider abstraction for OpenAI, Anthropic, Gemini, local backends, LiteLLM, routing, and fallback
- Tool and sandbox capability layers with provider adapters and built-in tools
- Skills lifecycle built around discovery, activation, runtime execution, and structured
activate_skill - Session memory, semantic retrieval, and provider-facing context assembly
- Protocol support for A2A and MCP
- Unified IO contracts shared across agents, providers, memory, and protocols
Install the base package:
pip install agent-sdkInstall with selected extras:
pip install "agent-sdk[openai]"
pip install "agent-sdk[a2a-server]"
pip install "agent-sdk[chroma]"
pip install "agent-sdk[playwright]"
pip install "agent-sdk[pro]"Install the optional pro distribution directly:
pip install agent-sdk-proInstall everything exposed by the current base SDK:
pip install "agent-sdk[all]"See the full extras matrix in docs/getting-started/installation.md.
import asyncio
import os
from agent_sdk.core.agent import AgentConfig, ReactiveAgent
from agent_sdk.core.providers import OpenAIProvider, ProviderConfig
async def main() -> None:
provider = OpenAIProvider(
ProviderConfig(
api_key=os.environ["OPENAI_API_KEY"],
default_model=os.environ["OPENAI_MODEL"],
)
)
agent = ReactiveAgent(
AgentConfig(
name="assistant",
system_prompt="You are a concise and helpful assistant.",
),
provider,
)
result = await agent.run("Summarize what this SDK is for in one sentence.")
print(result.output)
asyncio.run(main())For a fuller walkthrough, see docs/getting-started/quickstart.md.
- Getting Started
- Core Agents
- Orchestration
- Providers
- Skills
- Tools And Sandboxes
- Memory
- Protocols
- IO
- API Reference
Set up a local development environment:
uv pip install -e ".[dev]"To work on the optional pro package from this repository as well:
uv pip install -e ./agent-sdk-proUseful validation commands:
python3 tools/dependency_audit.py --fail-on-issues
python3 -m compileall agent-sdk/src/agent_sdk
env UV_CACHE_DIR=/tmp/uv-cache uv run --no-sync pytest tests/unit --no-cov -q
env UV_CACHE_DIR=/tmp/uv-cache uv run --no-sync ruff check agent-sdk/src tests --select F821
env UV_CACHE_DIR=/tmp/uv-cache uv run --no-sync python tools/check_docs.py
env UV_CACHE_DIR=/tmp/uv-cache uv run --no-sync mkdocs build --strictFor repository-operating guidance, caveats, and the current truth-source order, see AGENTS.md.
Personal Agent SDK is a modular framework for creating customized AI agents. It provides the core architecture for defining agent behavior, connecting tools and skills, managing memory, and orchestrating workflows, making it easier for individuals to design agents tailored to their own needs.
2c79afe40b87399d7d5d83e1bdc44c0527a1f3a9