Protocol
ACP
Type
SDK
Stars
270
License
Apache-2.0
Last push
Nov 7, 2026
Source
Official

ACP TypeScript SDK ACP SDK

by agentclientprotocol• 270•
ACPSDKTypeScript

TypeScript SDK for ACP clients and agents

About ACP TypeScript SDK

ACP TypeScript SDK is an open-source ACP SDK by agentclientprotocol, written mainly in TypeScript. TypeScript SDK for ACP clients and agents. It has 270 GitHub stars and uses the Apache-2.0 license, and its code was last pushed on Nov 7, 2026.

New to ACP? Our ACP Protocol guide explains how it works and lists other projects built on it.

At a glance

Protocol
ACP
Type
SDK
Language
TypeScript
License
Apache-2.0
GitHub stars
270
Last push
Nov 7, 2026
Latest release
@agentclientprotocol/sdk 2.6.0
Released
Nov 10, 2026

Listed from public GitHub data, checked 2026-11-08. Not scanned by AgenticMart.

Questions about ACP TypeScript SDK

What is ACP TypeScript SDK?

TypeScript SDK for ACP clients and agents It is listed as a ACP SDK, maintained in the agentclientprotocol/typescript-sdk repository on GitHub.

How do I install ACP TypeScript SDK?

The project's README gives this command: npm install @agentclientprotocol/sdk. Read the README for setup steps and requirements before running it.

Is ACP TypeScript SDK an official ACP project?

Yes. It is published by the organisation that runs ACP or by its official project.

What license does ACP TypeScript SDK use?

It is published under the Apache-2.0 license. Check the license file in the repository before using it commercially.

Is ACP TypeScript SDK still maintained?

Its code was last pushed on Nov 7, 2026, and it had 270 GitHub stars when we checked on 2026-11-08. Look at recent issues and releases in the repository for a fuller picture.

README

<a href="https://agentclientprotocol.com/" > <img alt="Agent Client Protocol" src="https://zed.dev/img/acp/banner-dark.webp"> </a>

ACP TypeScript Library

The official TypeScript implementation of the Agent Client Protocol (ACP) — a standardized communication protocol between code editors and AI-powered coding agents.

Learn more at https://agentclientprotocol.com

Installation

npm install @agentclientprotocol/sdk

Choose a protocol entrypoint

ImportProvides
@agentclientprotocol/sdkStable ACP v1 (default)
@agentclientprotocol/sdk/unstableStable v1 plus unstable features
@agentclientprotocol/sdk/experimental/v2Stable features of the v2 draft
@agentclientprotocol/sdk/experimental/v2/unstableFull v2 draft, including unstable features

Each /unstable entrypoint includes the stable features for its protocol version, plus additions that may change or be removed in any SDK release. Use one entrypoint consistently for an app, its protocol types, and method constants. Directly connected in-process app pairs must use the same entrypoint.

Selecting an unstable entrypoint does not automatically advertise feature support or establish peer support: advertise and check capabilities before using them.

Upgrading an existing integration? If you use unstable features, update your protocol imports even if your application still compiles. Read the migration guide for the upgrade checklist, versioned JSON schema paths, and legacy-server changes.

Experimental ACP v2

Warning: Both v2 entrypoints remain experimental. "Stable" describes the selected feature set, not a stability guarantee for the v2 protocol or SDK API. The v2 wire protocol and these SDK APIs may change incompatibly in any release.

The default SDK import remains ACP v1. To select the stable features of the v2 draft, use:

import * as acp from "@agentclientprotocol/sdk/experimental/v2";

Browse the experimental v2 TypeScript API reference and the draft ACP v2 protocol documentation for the current SDK and protocol designs.

In v2, the extensible unions (SessionUpdate, ContentBlock, and so on) also accept variants this SDK does not know, such as ones added by a newer ACP version. Only received values can be such an UnknownVariant, so a value you build is checked field by field at any depth, and a custom variant needs a tag that starts with _. Received values pass on unchanged, for example when an agent echoes a prompt's content into its user message.

Get Started

Understand the Protocol

Start by reading the official ACP documentation to understand the core concepts and protocol specification.

Try the Examples

The examples directory contains simple implementations of both Agents and Clients in TypeScript. These examples can be run from your terminal or from an ACP Client like Zed, making them great starting points for your own integration!

Explore the API

Browse the TypeScript library reference for detailed API documentation.

If you're building an Agent, start with agent({ name }), register handlers with onRequest(methods.agent.initialize, handler) and the other method constants, then call connect(stream).

If you're building a Client, start with client({ name }), register client-side handlers with onRequest(...) and onNotification(...), then run your agent workflow with connectWith(stream, async (ctx) => ...). Call the peer with ctx.request(methods.agent.session.new, params) and the other method constants.

Study a Production Implementation

For a complete, production-ready implementation, check out the Gemini CLI Agent.

Resources

Contributing

See the main repository for contribution guidelines.

License

By contributing, you agree that your contributions will be licensed under the Apache 2.0 License.

More ACP projects

All 20 →