claude-code-acp 0.3.1__tar.gz → 0.3.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-code-acp
3
- Version: 0.3.1
3
+ Version: 0.3.2
4
4
  Summary: ACP-compatible agent for Claude Code (Python version)
5
5
  Project-URL: Homepage, https://github.com/yazelin/claude-code-acp-py
6
6
  Project-URL: Repository, https://github.com/yazelin/claude-code-acp-py
@@ -255,48 +255,52 @@ ts_claude = AcpClient(command="npx", args=["@zed-industries/claude-code-acp"])
255
255
 
256
256
  ## Architecture
257
257
 
258
+ This package provides **three ways** to use Claude:
259
+
260
+ ### Method A: Editor via ACP (ClaudeAcpAgent)
261
+
262
+ For Zed, Neovim, and other ACP-compatible editors:
263
+
264
+ ```
265
+ ┌──────────┐ ACP Protocol ┌─────────────────┐ SDK ┌────────────┐
266
+ │ Zed │ ────── stdio ───────► │ ClaudeAcpAgent │ ──────────► │ Claude CLI │
267
+ │ Editor │ │ (ACP Server) │ │ │
268
+ └──────────┘ └─────────────────┘ └────────────┘
269
+ ```
270
+
271
+ ### Method B: Python Direct (ClaudeClient)
272
+
273
+ For Python apps that want simple, direct access to Claude (**no ACP protocol**):
274
+
258
275
  ```
259
- ┌──────────────────────────────────────────────────────────────────────────────┐
260
- claude-code-acp Package
261
- ├──────────────────────────────────────────────────────────────────────────────┤
262
- │ │
263
- │ ACP SERVER (for editors) ACP CLIENT (for Python apps) │
264
- │ ───────────────────────── ──────────────────────────── │
265
- │ │
266
- │ ┌─────────────┐ ┌─────────────┐ │
267
- │ │ Zed/Neovim │ │ Your Python │ │
268
- │ │ Editor │ │ App │ │
269
- │ └──────┬──────┘ └──────┬──────┘ │
270
- │ │ │ │
271
- │ │ ACP │ uses │
272
- │ ▼ ▼ │
273
- │ ┌──────────────────┐ ┌─────────────────┐ │
274
- │ │ ClaudeAcpAgent │ │ AcpClient │───┐ │
275
- │ │ (ACP Server) │ │ (ACP Client) │ │ │
276
- │ └────────┬─────────┘ └────────┬────────┘ │ │
277
- │ │ │ │ can connect to │
278
- │ │ │ ACP │ any ACP agent │
279
- │ ▼ ▼ │ │
280
- │ ┌──────────────────┐ ┌─────────────────┐ │ │
281
- │ │ ClaudeClient │ │ claude-code-acp│◄─┘ │
282
- │ │ (Python wrapper) │ │ Gemini CLI │ │
283
- │ └────────┬─────────┘ │ Other agents │ │
284
- │ │ └─────────────────┘ │
285
- │ │ │
286
- │ ▼ │
287
- │ ┌──────────────────┐ │
288
- │ │ Claude Agent SDK │ │
289
- │ └────────┬─────────┘ │
290
- │ │ │
291
- │ ▼ │
292
- │ ┌──────────────────┐ │
293
- │ │ Claude CLI │ │
294
- │ │ (Subscription) │ │
295
- │ └──────────────────┘ │
296
- │ │
297
- └──────────────────────────────────────────────────────────────────────────────┘
276
+ ┌──────────┐ direct call ┌─────────────────┐ SDK ┌────────────┐
277
+ Python │ ──── in-process ───► ClaudeClient │ ──────────► │ Claude CLI │
278
+ │ App │ │ │ │ │
279
+ └──────────┘ └─────────────────┘ └────────────┘
298
280
  ```
299
281
 
282
+ ### Method C: Python via ACP (AcpClient)
283
+
284
+ For Python apps that want to connect to **any** ACP-compatible agent:
285
+
286
+ ```
287
+ ┌──────────┐ ACP Protocol ┌─────────────────┐
288
+ │ Python │ ────── stdio ───────► │ Any ACP Agent │
289
+ │ App │ │ │
290
+ │ │ │ • claude-code │
291
+ │ AcpClient│ │ • gemini │
292
+ │ │ │ • custom agents │
293
+ └──────────┘ └─────────────────┘
294
+ ```
295
+
296
+ ### Summary
297
+
298
+ | Component | Uses ACP? | Purpose |
299
+ |-----------|-----------|---------|
300
+ | `ClaudeAcpAgent` | Yes (Server) | Let editors connect to Claude |
301
+ | `ClaudeClient` | **No** | Simplest way for Python apps |
302
+ | `AcpClient` | Yes (Client) | Connect to any ACP agent |
303
+
300
304
  ---
301
305
 
302
306
  ## What We Built
@@ -232,48 +232,52 @@ ts_claude = AcpClient(command="npx", args=["@zed-industries/claude-code-acp"])
232
232
 
233
233
  ## Architecture
234
234
 
235
+ This package provides **three ways** to use Claude:
236
+
237
+ ### Method A: Editor via ACP (ClaudeAcpAgent)
238
+
239
+ For Zed, Neovim, and other ACP-compatible editors:
240
+
241
+ ```
242
+ ┌──────────┐ ACP Protocol ┌─────────────────┐ SDK ┌────────────┐
243
+ │ Zed │ ────── stdio ───────► │ ClaudeAcpAgent │ ──────────► │ Claude CLI │
244
+ │ Editor │ │ (ACP Server) │ │ │
245
+ └──────────┘ └─────────────────┘ └────────────┘
246
+ ```
247
+
248
+ ### Method B: Python Direct (ClaudeClient)
249
+
250
+ For Python apps that want simple, direct access to Claude (**no ACP protocol**):
251
+
235
252
  ```
236
- ┌──────────────────────────────────────────────────────────────────────────────┐
237
- claude-code-acp Package
238
- ├──────────────────────────────────────────────────────────────────────────────┤
239
- │ │
240
- │ ACP SERVER (for editors) ACP CLIENT (for Python apps) │
241
- │ ───────────────────────── ──────────────────────────── │
242
- │ │
243
- │ ┌─────────────┐ ┌─────────────┐ │
244
- │ │ Zed/Neovim │ │ Your Python │ │
245
- │ │ Editor │ │ App │ │
246
- │ └──────┬──────┘ └──────┬──────┘ │
247
- │ │ │ │
248
- │ │ ACP │ uses │
249
- │ ▼ ▼ │
250
- │ ┌──────────────────┐ ┌─────────────────┐ │
251
- │ │ ClaudeAcpAgent │ │ AcpClient │───┐ │
252
- │ │ (ACP Server) │ │ (ACP Client) │ │ │
253
- │ └────────┬─────────┘ └────────┬────────┘ │ │
254
- │ │ │ │ can connect to │
255
- │ │ │ ACP │ any ACP agent │
256
- │ ▼ ▼ │ │
257
- │ ┌──────────────────┐ ┌─────────────────┐ │ │
258
- │ │ ClaudeClient │ │ claude-code-acp│◄─┘ │
259
- │ │ (Python wrapper) │ │ Gemini CLI │ │
260
- │ └────────┬─────────┘ │ Other agents │ │
261
- │ │ └─────────────────┘ │
262
- │ │ │
263
- │ ▼ │
264
- │ ┌──────────────────┐ │
265
- │ │ Claude Agent SDK │ │
266
- │ └────────┬─────────┘ │
267
- │ │ │
268
- │ ▼ │
269
- │ ┌──────────────────┐ │
270
- │ │ Claude CLI │ │
271
- │ │ (Subscription) │ │
272
- │ └──────────────────┘ │
273
- │ │
274
- └──────────────────────────────────────────────────────────────────────────────┘
253
+ ┌──────────┐ direct call ┌─────────────────┐ SDK ┌────────────┐
254
+ Python │ ──── in-process ───► ClaudeClient │ ──────────► │ Claude CLI │
255
+ │ App │ │ │ │ │
256
+ └──────────┘ └─────────────────┘ └────────────┘
275
257
  ```
276
258
 
259
+ ### Method C: Python via ACP (AcpClient)
260
+
261
+ For Python apps that want to connect to **any** ACP-compatible agent:
262
+
263
+ ```
264
+ ┌──────────┐ ACP Protocol ┌─────────────────┐
265
+ │ Python │ ────── stdio ───────► │ Any ACP Agent │
266
+ │ App │ │ │
267
+ │ │ │ • claude-code │
268
+ │ AcpClient│ │ • gemini │
269
+ │ │ │ • custom agents │
270
+ └──────────┘ └─────────────────┘
271
+ ```
272
+
273
+ ### Summary
274
+
275
+ | Component | Uses ACP? | Purpose |
276
+ |-----------|-----------|---------|
277
+ | `ClaudeAcpAgent` | Yes (Server) | Let editors connect to Claude |
278
+ | `ClaudeClient` | **No** | Simplest way for Python apps |
279
+ | `AcpClient` | Yes (Client) | Connect to any ACP agent |
280
+
277
281
  ---
278
282
 
279
283
  ## What We Built
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "claude-code-acp"
3
- version = "0.3.1"
3
+ version = "0.3.2"
4
4
  description = "ACP-compatible agent for Claude Code (Python version)"
5
5
  authors = [
6
6
  { name = "yazelin" },
@@ -11,7 +11,7 @@ from .agent import ClaudeAcpAgent
11
11
  from .client import ClaudeClient, ClaudeEvents
12
12
  from .acp_client import AcpClient, AcpClientEvents
13
13
 
14
- __version__ = "0.3.1"
14
+ __version__ = "0.3.2"
15
15
 
16
16
  __all__ = [
17
17
  "ClaudeAcpAgent",
File without changes
File without changes