freshcrate
Skin:/
Home > RAG & Memory > agent-client-protocol

agent-client-protocol

A Python implement of Agent Client Protocol (ACP, by Zed Industries)

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

<a href="https://agentclientprotocol.com/"> <img alt="Agent Client Protocol" src="https://zed.dev/img/acp/banner-dark.webp"> </a> # Agent Client Protocol (Python) Build ACP-compliant agents and clients in Python with generated schema models, asyncio transports, helper builders, and runnable demos. > Releases track the upstream ACP schema; contributions that tighten coverage or tooling are always welcome. ## Install ```bash pip install agent-client-protocol # or uv add agent-client-protocol ``` ## At a glance - **Spec parity:** Generated Pydantic models in `acp.schema` track every ACP release so payloads stay valid. - **Runtime ergonomics:** Async base classes, stdio JSON-RPC plumbing, and lifecycle helpers keep custom agents tiny. - **Examples ready:** Streaming, permissions, Gemini bridge, and duet demos live under `examples/`. - **Helper builders:** `acp.helpers` mirrors the Go/TS SDK APIs for content blocks, tool calls, and session updates. - **Contrib utilities:** Session accumulators, tool call trackers, and permission brokers share patterns from real deployments. ## Who benefits - Agent authors who need typed models, helper builders, and event-stream ergonomics for ACP-compatible assistants. - Client integrators embedding ACP parties inside Python applications or wrapping existing CLIs via stdio. - Tooling teams experimenting with permission flows, streaming UX, or Gemini bridges without re-implementing transports. See real adopters like kimi-cli in the [Use Cases list](https://agentclientprotocol.github.io/python-sdk/use-cases/). ## How to get started - Follow the [Quickstart guide](https://agentclientprotocol.github.io/python-sdk/quickstart/) for installation, echo-agent validation, editor wiring (e.g. Zed), and programmatic launch recipes. - Browse the [example gallery](https://github.com/agentclientprotocol/python-sdk/tree/main/examples) to see progressively richer integrations you can copy or extend. - Skim the [docs hub](https://agentclientprotocol.github.io/python-sdk/) for focused references on contrib helpers, releasing, and transport details. ## Quick links | Need | Link | |--------------------|------------------------------------------------------------------------| | Docs hub | <https://agentclientprotocol.github.io/python-sdk/> | | Quickstart | <https://agentclientprotocol.github.io/python-sdk/quickstart/> | | Use cases | <https://agentclientprotocol.github.io/python-sdk/use-cases/> | | Contrib helpers | <https://agentclientprotocol.github.io/python-sdk/contrib/> | | Releasing workflow | <https://agentclientprotocol.github.io/python-sdk/releasing/> | | Examples | <https://github.com/agentclientprotocol/python-sdk/tree/main/examples> | | Tests | <https://github.com/agentclientprotocol/python-sdk/tree/main/tests> | | PyPI | <https://pypi.org/project/agent-client-protocol/> | ## Project layout - `src/acp/`: runtime package (agents, clients, transports, helpers, schema bindings, contrib utilities) - `schema/`: upstream JSON schema sources (regenerate via `make gen-all`) - `docs/`: MkDocs content backing the published documentation - `examples/`: runnable scripts covering stdio orchestration patterns - `tests/`: pytest suite with golden fixtures and optional Gemini coverage ## Developer commands - `make install` provisions the `uv` virtualenv and installs pre-commit hooks. - `make check` runs Ruff formatting/linting, type analysis, dependency hygiene, and lock verification. - `make test` executes `pytest` (with doctests) inside the managed environment. - `ACP_SCHEMA_VERSION=<ref> make gen-all` refreshes protocol artifacts when the schema advances. Keep docs and examples current whenever you ship public API or transport changes, and prefer Conventional Commits (`feat:`, `fix:`, etc.) when submitting patches. ## Community & support - File issues or feature requests at <https://github.com/agentclientprotocol/python-sdk>. - Discuss ideas or get help via GitHub Discussions: <https://github.com/agentclientprotocol/python-sdk/discussions>. - Join the broader ACP conversations at <https://agentclientprotocol.com/>, the Zed community channels, or the community Zulip: <https://agentclientprotocol.zulipchat.com/>. - Shared learnings, integrations, or third-party transports are welcome additions to the documentation—open a PR!

Release History

VersionChangesUrgencyDate
0.10.1## What's Changed * chore(deps): bump urllib3 from 2.6.3 to 2.7.0 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/96 * chore(deps): bump pymdown-extensions from 10.16.1 to 10.21.3 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/99 * chore(deps): bump idna from 3.11 to 3.15 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotoHigh5/24/2026
0.10.0## What's Changed * chore(deps): bump uv from 0.9.7 to 0.11.6 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/88 * chore(deps-dev): bump pytest from 8.4.2 to 9.0.3 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/89 * fix: reject pending requests on EOF to prevent infinite hang by @simonrosenberg in https://github.com/agentclientprotocol/python-sdk/pull/86 * chore(High5/7/2026
0.9.0Imported from PyPI (0.9.0)Low4/21/2026
0.9.0a1## What's Changed * fix(docs): correct nested agent server entry in Quickstart uv example by @ftnext in https://github.com/agentclientprotocol/python-sdk/pull/77 * feat(examples): Add PEP 723 metadata to echo_agent for just `uv run` by @ftnext in https://github.com/agentclientprotocol/python-sdk/pull/76 * chore(deps): bump black from 25.9.0 to 26.3.1 in the uv group across 1 directory by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/79 * feat(schema): upgrade ACPLow3/19/2026
0.8.1## What's Changed * chore(deps): bump the uv group across 1 directory with 4 updates by @dependabot[bot] in https://github.com/agentclientprotocol/python-sdk/pull/65 * feat: add protocol method for `session/set_config_option` by @Nemtecl in https://github.com/agentclientprotocol/python-sdk/pull/69 ## New Contributors * @dependabot[bot] made their first contribution in https://github.com/agentclientprotocol/python-sdk/pull/65 * @Nemtecl made their first contribution in https://github.com/aLow2/13/2026
0.8.0## What's Changed * feat: bump acp schema version to 0.10.5 by @stdrc in https://github.com/agentclientprotocol/python-sdk/pull/52 * fix: remove TerminalHandle by @frostming in https://github.com/agentclientprotocol/python-sdk/pull/56 * docs: Add missing prop to settings.json in ACP quickstart, add uv example by @jacoblee93 in https://github.com/agentclientprotocol/python-sdk/pull/57 * feat: Increase default stdio buffer limit and allow configuration by @jacoblee93 in https://github.com/agenLow2/7/2026
0.7.1## What's Changed * feat: Update schema to v0.10.3, support fork_session and resume_session unstable API by @frostming in https://github.com/agentclientprotocol/python-sdk/pull/48 * fix: align create_terminal return type with runtime handle by @PsiACE in https://github.com/agentclientprotocol/python-sdk/pull/50 * chore: bump version to 0.7.1 by @PsiACE in https://github.com/agentclientprotocol/python-sdk/pull/53 **Full Changelog**: https://github.com/agentclientprotocol/python-sdk/comparLow12/28/2025
0.7.0 ## Highlights - First official release after joining the agentclientprotocol org. - Major Pythonic refactor and API polish with help from @frostming; snake_case naming and schema-driven method generation across the SDK. ## What's Changed - fix: not support 3.14 yet by @yihong0618 in https://github.com/agentclientprotocol/python-sdk/pull/23 - chore: try to support py314 by @PsiACE in https://github.com/agentclientprotocol/python-sdk/pull/24 - docs: fix all the brokeLow12/4/2025
0.6.3## What's Changed * feat: improve type annotations in RequestError methods by @2725244134 in https://github.com/PsiACE/agent-client-protocol-python/pull/17 * fix: preserve _meta during ACP serialization by @PsiACE in https://github.com/PsiACE/agent-client-protocol-python/pull/20 * feat: follow agent-client-protocol 0.6.3 by @PsiACE in https://github.com/PsiACE/agent-client-protocol-python/pull/21 ## New Contributors * @2725244134 made their first contribution in https://github.com/PsiACE/Low11/3/2025
0.6.2- follow the agent-client-protocol 0.6.x -> 0.6..2 - Add ability for agents and clients to provide information about their implementation - minor update for examplesLow10/25/2025
0.5.0### Breaking changes - `acp.helpers.embedded_text_resource` and `embedded_blob_resource` now return `TextResourceContents` / `BlobResourceContents` rather than the wrapper class. Wrap those results with `helpers.resource_block(...)` when emitting embedded resources. ### Highlights - Track upstream agent-client-protocol v0.5.0, including support for `AvailableCommandsUpdate`, `CurrentModeUpdate`, session mode metadata, and raw tool-call `rawInput` / `rawOutput` fields acLow10/25/2025
0.4.9This release brings the SDK close to production readiness — rebuilt with stronger foundations and a clearer developer experience. ## Highlights - Supervised queue/state store for deterministic IO and concurrency. - Dedicated message routers with Pydantic validation. - Optional telemetry via Logfire / OpenTelemetry integration. - New helper builders and subprocess spawners for clean embedding. - Improved documentation, examples, and test coverage. **Upstream Spec:** Regenerated againLow10/14/2025
0.4.5## What's Changed - Ergonomic type generation with well-planned naming mappings - Schema type generation accepts version input - Tracked upstream changes up to 0.4.5 - Prevented receive-loop blocking on callback-dependent requests * feat: follow 0.4.5 by @PsiACE in https://github.com/PsiACE/agent-client-protocol-python/pull/7 **Full Changelog**: https://github.com/PsiACE/agent-client-protocol-python/compare/0.3.0...0.4.5Low10/9/2025
0.3.0## What's Changed <img width="786" height="463" alt="image" src="https://github.com/user-attachments/assets/f79d744b-f03e-4674-b4a2-140b74e57257" /> - Follow: https://github.com/zed-industries/agent-client-protocol/releases/tag/v0.3.0 - Add a acp client for mini-swe-agent ## New Contributors * @PsiACE made their first contribution in https://github.com/PsiACE/agent-client-protocol-python/pull/4 **Full Changelog**: https://github.com/PsiACE/agent-client-protocol-python/compare/0.0.1Low9/30/2025
0.0.1A minimal Python SDK for the Agent Client Protocol (ACP). Build agents that talk to ACP clients (e.g. Zed) over stdio. - Package: `agent-client-protocol` (import as `acp`) - Docs: https://psiace.github.io/agent-client-protocol-python/ ## Install ```bash pip install agent-client-protocol ``` ## Minimal agent ```python import asyncio from acp import Agent, AgentSideConnection, Client, InitializeRequest, InitializeResponse, PromptRequest, PromptResponse, SessionNotification, stdLow9/6/2025

Dependencies & License Audit

Loading dependencies...

Similar Packages

astroidAn abstract syntax tree for Python with inference support.4.1.2
Mini-o3🧠 Enhance visual search with Mini-o3, providing state-of-the-art multi-turn reasoning and easy-to-use training code for advanced AI applications.main@2026-06-06
awesome-opensource-aiCurated list of the best truly open-source AI projects, models, tools, and infrastructure.main@2026-06-06
hypothesisThe property-based testing library for Pythonv6.155.2
vllmA high-throughput and memory-efficient inference and serving engine for LLMsv0.22.1

More from pypi

markitdownUtility tool for converting various files to Markdown
fastapiFastAPI framework, high performance, easy to learn, fast to code, ready for production
djangoA high-level Python web framework that encourages rapid development and clean, pragmatic design.
flaskA simple framework for building complex web applications.

More in RAG & Memory

vllmA high-throughput and memory-efficient inference and serving engine for LLMs
spiceaiA portable accelerated SQL query, search, and LLM-inference engine, written in Rust, for data-grounded AI apps and agents.
awesome-opensource-aiCurated list of the best truly open-source AI projects, models, tools, and infrastructure.
antflyNo description