# girard-acp-deux-protocoles-un-sigle-2026-08-02

## Veille

Tech-watch note by **Didier Girard** dated **August 2, 2026**, prompted by a colleague's question ("what is ACP?") to address a problem that is not terminological but **documentary**. **Three protocols compete for the acronym**, with no technical overlap whatsoever: **Agent Client Protocol** (client ↔ agent — Zed, August 2025, JSON-RPC 2.0 over stdio, Apache-2.0, "what LSP did for languages"), **Agentic Commerce Protocol** (agent ↔ merchant — OpenAI + Stripe, Sept. 29, 2025, competing with Google's **UCP** of Jan. 11, 2026 backed by **AP2**), and **Agent Communication Protocol** (agent ↔ agent — IBM Research / BeeAI, marginal but polluting searches). **The core of the note is not the disentangling but its observed failure**: the author searches "ACP" in their tech-watch knowledge base and gets **twelve results, all about the commerce protocol, zero about Zed's** — *"our watch agents had indexed the acronym without disambiguating it"*. Hence a knowledge-engineering rule: ***"a bare acronym is never indexed"*** — the entity is "Agent Client Protocol", "ACP" is **only an alias**, carried by three distinct entities. A structuring clarification follows (**MCP connects an agent to its tools, ACP connects a client to an agent; the two stack**), then the textbook case: **Buzz**, published by **Block** on July 21, 2026 under Apache-2.0 — a self-hostable workspace built on **Nostr**, where every human or agent participant is a **key pair** and every message, workflow step, or git push is a **signed event** in an append-only log. An entirely protocol-based architecture (`buzz-acp` an ACP harness over stdio, `buzz-agent` an ACP agent calling an LLM, `buzz-dev-mcp` an MCP shell + editing server), hence agent agnosticism: **Goose, Claude Code, and Codex** plug in through the same harness, and **Hermes** (Nous Research) connected to it without Block writing a single line — *"N+M instead of N×M, running in production"*. The note closes on the question of the **Claude subscription** versus third-party agents, with a five-stage 2026 timeline and a **design rule** that holds beyond this case: the line is not legal but **architectural** — ***"who is consuming, and on whose behalf"*** (an `owner-only` agent consumes your subscription on your behalf; an `anyone` agent in a shared channel routes your colleagues' requests through your account). **Verification carried out on this corpus**: the thesis holds, and more starkly than the note claims — not only is "Agent Client Protocol" **completely absent**, but the bare acronym `ACP` **is already typed as an entity** in two fiches, and the KB page `Agentic-Commerce-Protocol` **already attributes the protocol to Google** when it belongs to OpenAI + Stripe. The collision described is not a future risk: it has **already produced an attribution error** in the graph.

## Titre Article

ACP : deux protocoles, un sigle, zéro rapport

## Date

2026-08-02

## URL

*Aucune URL — texte fourni directement par l'auteur, non publié au moment de la mise en fiche. Source archivée dans `raw-data/girard-acp-deux-protocoles-un-sigle-2026-08-02.md`.*

## Keywords

ACP, Agent Client Protocol, Agentic Commerce Protocol, Agent Communication Protocol, acronym homonymy, disambiguation, documentary collision, knowledge engineering, entity alias, bare entity, indexing, duplicate trap, Zed, JetBrains, LSP, Language Server Protocol, JSON-RPC 2.0, stdio, Apache-2.0, agent registry, versioned specification, protocol governance, N+M vs N×M, editor-agent decoupling, interoperability, agent portability, MCP, Model Context Protocol, protocol stacking, OpenAI, Stripe, UCP, Universal Commerce Protocol, AP2, Agent Payments Protocol, agentic commerce, IBM Research, BeeAI, Buzz, Block, Jack Dorsey, Goose, Codex, Claude Code, Hermes, Nous Research, Nostr, key pair, signed event, append-only log, self-hosting, sovereignty, multi-agent substrate, harness, buzz-acp, buzz-agent, buzz-dev-mcp, Claude subscription, Agent SDK, claude -p, OAuth, Consumer Terms, OpenClaw, Agent SDK credits, API key, ordinary, individual use, owner-only, anyone, who consumes on whose behalf

## Authors

**Didier Girard** — auteur de la note. Écrit ici depuis la position de **praticien de la veille outillée** : le déclencheur est une question de collègue, le matériau principal est le comportement observé de sa propre base de connaissances, et la conclusion est une **règle de curation** adoptée en interne. Le texte alterne donc deux voix — l'explicateur de protocoles et l'ingénieur de la connaissance qui constate un défaut chez lui et en tire une norme.

## Ton

**Profile**: technical clarification note, **practitioner** register, short and dense format. Neither market analysis nor position-taking — a **useful disentangling** combined with a methodological account of the author's own process. Audience: engineers, architects, and anyone maintaining a documentary corpus on these topics.

**Style**: structured in **five movements** (the three ACPs → the real risk → not to be confused with MCP → the Buzz case → the subscription question), each self-contained and separately citable. Three traits:

1. **Opening with the real question** — *"A colleague asked me this week: 'what is ACP?'"*. No abstract exposition: the problem is dated, embodied, and the answer is flagged as tricky before it is given.
2. **The admission as argument**. The note's strongest passage is the one where the author **reports a failure of their own tooling** ("twelve results, all about the wrong protocol"). This is what turns a vocabulary curiosity into an engineering problem — and what gives authority to the rule that follows. A rare register: one rarely publishes the hole in one's own setup.
3. **The operational punchline**. Each section ends with something applicable — the indexing rule, the MCP/ACP table, the `owner-only` vs `anyone` flag. No development is left untranslated into action.

**Marker phrases**: *"two protocols, one acronym, zero relation"*, *"simple question, tricky answer"*, *"a bare acronym is never indexed"*, *"a perfect duplicate trap"*, *"Zed launched the thing, then let it go"*, *"N+M instead of N×M, running in production"*, *"the distinction is not legal, it is architectural"*, *"who is consuming, and on whose behalf"*, *"better to settle it at design time than by reading the terms of service"*.

**Epistemic stance**: **cautious and well-sourced**. The author explicitly bounds their competence on the contractual part and defers to primary sources rather than their own interpretation. The text gives seven links for a short format — an unusual sourcing density for a note of this size.

## Pense-betes

- **Date / source**: **August 2, 2026**, tech-watch note by **Didier Girard**.
- **Key framing**: three protocols compete for the ACP acronym, with no technical overlap whatsoever, and the surface resemblance is maximal ("protocol", "agents", "open source", "2025-2026"). ### The disentangling | Acronym | Full name | Connects | Origin | |---|---|---|---| | ACP #1 | **Agent Client Protocol** | a **client** to an **agent** | Zed, August 2025 | | ACP #2 | **Agentic Commerce Protocol** | an **agent** to a **merchant** | OpenAI + Stripe, Sept. 29, 2025 | | ACP #3 | **Agent Communication Protocol** | an **agent** to an **agent** | IBM Research / BeeAI | An analogy that holds: ACP #1 is to the agent what **LSP** is to the language — before, N editors × M agents = N×M custom integrations; afterward, N+M suffices. And the distinction with MCP fits in two lines: **MCP** connects an agent to its **tools and data**, **ACP** connects a **client** to an **agent**; the two stack. ### The curation rule, the note's real deliverable *"A bare acronym is never indexed."* The canonical entity is the **full name**; the acronym is only an **alias**, and an alias can be carried by several entities. Directly applicable to this repository — see [`docs/reference/ontologie-kg.md`](docs/reference/ontologie-kg.md) and `scripts/entity_aliases.tsv`. ### Verification carried out on this corpus on August 2, 2026 | Note's claim | Result | |---|---| | *"Zero about Zed's protocol"* | **confirmed** — the string "Agent Client Protocol" was absent from `fiches/` and `kb/`; the gap was closed the same day by [[agentclientprotocol-introduction-2026-08-02]] | | *"Twelve results"* | **not reproducible by grep** — 3 fiches contain the token `ACP`, for 32 occurrences. The "twelve" likely comes from a semantic engine. The figure cannot be verified; the qualitative conclusion can | | Was the trap even possible? | **already armed** — the bare acronym `ACP` was typed as an **entity** in the graph, the subject of triples in two fiches, alongside a variant `Agentic Commerce Protocol (ACP)`, i.e. three entities for the same protocol | | Materialized defect | the page `kb/Agentic-Commerce-Protocol.md` read *"category: **Google** agentic commerce protocol"* and the relation `Google created → Agentic Commerce Protocol` (confidence 0.99), whereas ACP belongs to **OpenAI + Stripe** and Google's protocol is **UCP** (+ AP2) | The collision described had therefore already produced an **attribution error** in the graph. Fixed on August 2: variants normalized to `Agentic Commerce Protocol`, and symmetrically `UCP` → `Universal Commerce Protocol`, `ACS` → `Agentic Commerce Suite`. The rule wasn't preventive here, it was corrective. ### ACP #1 governance, a nuance to add The note states *"Zed launched the thing, then let it go"*. The opening move is real and verifiable (its own organization, versioned specification, public registry, JetBrains implementation), but public sources describe **shared Zed × JetBrains governance** — a registry co-launched in January 2026 —, with ACP still presented on Zed's side as its open standard and Zed 1.0's flagship feature. Openness, yes; relinquishment, no. Detail since disproved by the primary source: the number **ACP 1.2** is not corroborated, the specification's navigation showing **`v1` (Latest)** and **`v2` (Draft)**. The URL `cdn.agentclientprotocol.com/registry` remains unconfirmed. ### Buzz, the concrete case — verified and accurate Published by **Block** on **July 21, 2026**, Apache-2.0. A self-hostable workspace on **Nostr**; every human or agent participant is a **key pair** (Schnorr); every message, workflow step, and git push is a **signed event** in an append-only log. Three building blocks: **`buzz-acp`** (a harness translating Buzz events to an agent, in ACP over stdio), **`buzz-agent`** (an ACP agent calling an LLM and using MCP tools), **`buzz-dev-mcp`** (an MCP shell + editing server). Three harnesses shipped out of the box: **Goose** (Block), **Claude Code** (Anthropic), **Codex** (OpenAI). This is not "a product that uses ACP" but a demonstration that the decoupling holds: three agents from three competing vendors plugged in through the same harness, and a fourth — **Hermes** (Nous Research) — connected without Block writing a line. The N+M promise becomes an observable fact. Nuance: on Hermes's side, the public source frames the addition as an **ACP server mode** opening up Zed, JetBrains, and Neovim, the benefit for Buzz being a consequence of ACP rather than a targeted integration — which reinforces the argument. Enterprise-architecture reading: Buzz provides a sovereign, auditable multi-agent substrate, with no third-party SaaS dependency — signed log, self-hosted relay, cryptographic identities. It is the self-hosted option for the portability need analyzed in [[janakiram-agent-platform-portability-contract-2026-07-20]]. ### Claude subscription and third-party agents 2026 timeline as reported by the note, **not re-verified**: January 9, silent technical blocking of subscription OAuth tokens outside official tools → February 17-20, formalization in the docs and the Consumer Terms (the OpenClaw episode) → April 4, full enforcement → May 13-14, announcement of separate Agent SDK credits ($20 Pro / $100 Max 5x / $200 Max 20x) effective June 15 → **June 15, the change suspended the very day it took effect**. Status as reported on August 2, 2026: the Agent SDK, `claude -p`, and third-party applications draw from the subscription's limits, separate credit not existing. **Dated by construction: to be re-verified before any decision.** ### The rule that will outlast the terms of service The line drawn separates *"ordinary, individual"* usage from **routing other people's requests** via Free/Pro/Max credentials. An `owner-only` agent consumes **your** subscription **for you**; an `anyone` agent in a shared channel routes your colleagues' requests through your account, and that's the moment to switch to a usage-billed API key. The distinction is not legal but **architectural: who is consuming, and on whose behalf** — to be settled at design time. This is the **ambient authority** from [[valente-zalewski-beyond-zero-enterprise-security-ai-era-2026-07-20]] transposed from authorization to billing: an agent that inherits its human's permissions and acts on a third party's behalf poses the same boundary problem, whether accessing a document or consuming a quota.

## RésuméDe400mots

Tech-watch note from **August 2, 2026**, born from a colleague's question — *"what is ACP?"* — which the author shows has no simple answer: **three protocols compete for the acronym**, with no technical overlap whatsoever.

**Agent Client Protocol** connects **a client to an agent**. Introduced by **Zed** in August 2025, it does for agents what **LSP** did for languages: it decouples the editor from the agent. Before, N editors × M agents required **N×M** custom integrations; afterward, everyone speaks the protocol and **N+M** suffices. JSON-RPC 2.0 over stdio, Apache-2.0. The note points out that the protocol has left its creator's orbit — its own organization, an agent registry, a versioned specification, a JetBrains implementation.

**Agentic Commerce Protocol** has nothing to do with it: it connects **an agent to a merchant** (discovery, cart, payment). Announced by **OpenAI and Stripe** on September 29, 2025, it faces **Google**'s **UCP** (January 11, 2026), backed by **AP2** for payment. The stakes: the "Visa/Mastercard" layer of agentic commerce. **Agent Communication Protocol** (IBM Research / BeeAI), agent-to-agent, rounds out the picture and pollutes searches.

**The observed problem is documentary.** The author searches "ACP" in their tech-watch database: **twelve results, all about the commerce protocol, zero about Zed's**. The indexing agents had processed the acronym without disambiguating it. Hence the rule adopted: ***"a bare acronym is never indexed"*** — the entity is the full name, the acronym is only an **alias**, here carried by three distinct entities. The note dispels a related confusion in passing: **MCP** connects an agent to its **tools**, **ACP** connects a **client** to an **agent**, and the two **stack**.

**The concrete case is Buzz**, published by **Block** on July 21, 2026 under Apache-2.0: a self-hostable workspace on **Nostr** where humans and agents share the same channels, each participant being a **key pair** and every event — message, workflow step, git push — being **signed** in an append-only log. The agent architecture is entirely protocol-based (`buzz-acp`, `buzz-agent`, `buzz-dev-mcp`), hence the agnosticism: **Goose, Claude Code, and Codex** through the same harness, and **Hermes** connected without a single line of code on Block's side. *"N+M instead of N×M, running in production."*

**The punchline concerns the Claude subscription** versus third-party agents, after a turbulent 2026 (OAuth block, separate credits announced then suspended the day they took effect). The line drawn separates **ordinary, individual** usage from **routing other people's requests**. Its formulation holds beyond this case: *"the distinction is not legal, it is architectural: **who is consuming, and on whose behalf**"* — to be settled at design time rather than by reading the terms of service.

## GrapheDeConnaissance

- Didier Girard —affirme_que→ trois protocoles distincts se partagent le sigle ACP sans aucune intersection technique (AFFIRMATION, 0.97)
- Agent Client Protocol —permet→ de relier un client à un agent, en découplant l'éditeur de l'agent (AFFIRMATION, 0.96)
- Agent Client Protocol —s_inspire_de→ Language Server Protocol (TECHNOLOGIE, 0.93)
- Zed —a_créé→ Agent Client Protocol (TECHNOLOGIE, 0.95)
- JetBrains —utilise→ Agent Client Protocol (TECHNOLOGIE, 0.92)
- Agent Client Protocol —utilise→ JSON-RPC 2.0 sur stdio (TECHNOLOGIE, 0.94)
- Agent Client Protocol —réduit→ le nombre d'intégrations de N×M à N+M (AFFIRMATION, 0.94)
- Agentic Commerce Protocol —permet→ de relier un agent à un commerçant (découverte, panier, paiement) (AFFIRMATION, 0.95)
- OpenAI —a_créé→ Agentic Commerce Protocol (TECHNOLOGIE, 0.95)
- Stripe —a_créé→ Agentic Commerce Protocol (TECHNOLOGIE, 0.93)
- Universal Commerce Protocol —concurrence→ Agentic Commerce Protocol (TECHNOLOGIE, 0.92)
- Universal Commerce Protocol —utilise→ Agent Payments Protocol (TECHNOLOGIE, 0.9)
- Agent Communication Protocol —permet→ l'interopérabilité agent-à-agent (AFFIRMATION, 0.88)
- Didier Girard —recommande→ ne jamais indexer un sigle seul : l'entité est le nom complet, le sigle n'est qu'un alias (AFFIRMATION, 0.96)
- homonymie de sigle —s_oppose_à→ la qualité d'un corpus de veille indexé automatiquement (AFFIRMATION, 0.9)
- Model Context Protocol —s_applique_à→ la liaison entre un agent et ses outils et données (AFFIRMATION, 0.95)
- Agent Client Protocol —converge_avec→ Model Context Protocol (TECHNOLOGIE, 0.9)
- Block —publie→ Buzz (TECHNOLOGIE, 0.97)
- Buzz —utilise→ Nostr (TECHNOLOGIE, 0.95)
- Buzz —utilise→ Agent Client Protocol (TECHNOLOGIE, 0.95)
- Buzz —utilise→ Model Context Protocol (TECHNOLOGIE, 0.93)
- Buzz —permet→ de brancher Goose, Claude Code et Codex par le même harnais (AFFIRMATION, 0.94)
- Buzz —permet→ un substrat multi-agent auto-hébergeable et auditable, sans dépendance SaaS tierce (AFFIRMATION, 0.9)
- Nous Research —utilise→ Agent Client Protocol (TECHNOLOGIE, 0.88)
- Didier Girard —affirme_que→ la frontière entre usage individuel et routage de requêtes d'autrui est architecturale, pas juridique — qui consomme, et pour le compte de qui (CITATION, 0.95)
- Anthropic —affirme_que→ les limites Pro et Max supposent un usage ordinaire et individuel de Claude Code et de l'Agent SDK (AFFIRMATION, 0.9)
- Anthropic —s_oppose_à→ le routage de requêtes d'utilisateurs tiers via des identifiants Free, Pro ou Max (AFFIRMATION, 0.92)

---
Canonical: https://www.thekb.eu/en/fiches/girard-acp-deux-protocoles-un-sigle-2026-08-02/
