@nyte-ai/plugin 0.0.0-stage → 0.0.18

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.
Files changed (134) hide show
  1. package/LICENSE +21 -0
  2. package/THIRD-PARTY-NOTICES.md +800 -0
  3. package/dist/chunks/billing-0y7dfkp2.js +146 -0
  4. package/dist/chunks/billing-2v3g7rd9.js +190 -0
  5. package/dist/chunks/billing-3j77ss7y.js +86 -0
  6. package/dist/chunks/billing-3scqmkzb.js +559 -0
  7. package/dist/chunks/billing-6z2kgtyt.js +51 -0
  8. package/dist/chunks/billing-8rjk35gr.js +444 -0
  9. package/dist/chunks/billing-9mfedmsh.js +373 -0
  10. package/dist/chunks/billing-9nn3yp18.js +176 -0
  11. package/dist/chunks/billing-9qc0eqh4.js +174 -0
  12. package/dist/chunks/billing-a9vqn66p.js +351 -0
  13. package/dist/chunks/billing-bv5zr32b.js +369 -0
  14. package/dist/chunks/billing-cy1rg619.js +302 -0
  15. package/dist/chunks/billing-ejx2hv52.js +323 -0
  16. package/dist/chunks/billing-h13r0byk.js +80 -0
  17. package/dist/chunks/billing-j643d12p.js +197 -0
  18. package/dist/chunks/billing-k2p1t25n.js +109 -0
  19. package/dist/chunks/billing-kn3d30b4.js +276 -0
  20. package/dist/chunks/billing-mvc33pv6.js +36 -0
  21. package/dist/chunks/billing-s4rrspsk.js +7 -0
  22. package/dist/chunks/billing-svrhh5a5.js +307 -0
  23. package/dist/chunks/billing-sxc70w72.js +161 -0
  24. package/dist/chunks/billing-t1qrxe16.js +41 -0
  25. package/dist/chunks/billing-tzr3cebf.js +20 -0
  26. package/dist/chunks/billing-wmcbg6fw.js +52 -0
  27. package/dist/chunks/billing-wmkxkypm.js +527 -0
  28. package/dist/chunks/billing-ye3wk5r3.js +205 -0
  29. package/dist/chunks/billing-zfpm2rt0.js +29 -0
  30. package/dist/examples/claude-code/LICENSE +21 -0
  31. package/dist/examples/claude-code/billing.d.ts +7 -0
  32. package/dist/examples/claude-code/billing.js +11 -0
  33. package/dist/examples/claude-code/claude-cli.d.ts +35 -0
  34. package/dist/examples/claude-code/claude-cli.js +15 -0
  35. package/dist/examples/claude-code/env.d.ts +1 -0
  36. package/dist/examples/claude-code/env.js +6 -0
  37. package/dist/examples/claude-code/index.d.ts +24 -0
  38. package/dist/examples/claude-code/index.js +149 -0
  39. package/dist/examples/claude-code/inert-mcp.d.ts +1 -0
  40. package/dist/examples/claude-code/inert-mcp.js +6 -0
  41. package/dist/examples/claude-code/model-catalog.d.ts +27 -0
  42. package/dist/examples/claude-code/model-catalog.js +12 -0
  43. package/dist/examples/claude-code/process.d.ts +22 -0
  44. package/dist/examples/claude-code/process.js +25 -0
  45. package/dist/examples/claude-code/replay.d.ts +4 -0
  46. package/dist/examples/claude-code/replay.js +11 -0
  47. package/dist/examples/claude-code/stream.d.ts +3 -0
  48. package/dist/examples/claude-code/stream.js +16 -0
  49. package/dist/examples/claude-code/transcript.d.ts +83 -0
  50. package/dist/examples/claude-code/transcript.js +23 -0
  51. package/dist/examples/claude-code/turn-relay.d.ts +48 -0
  52. package/dist/examples/claude-code/turn-relay.js +9 -0
  53. package/dist/examples/claude-code/wire.d.ts +372 -0
  54. package/dist/examples/claude-code/wire.js +18 -0
  55. package/dist/src/acp/connection.d.ts +24 -0
  56. package/dist/src/acp/connection.js +8 -0
  57. package/dist/src/acp/index.d.ts +54 -0
  58. package/dist/src/acp/index.js +1004 -0
  59. package/dist/src/acp/registry.d.ts +18 -0
  60. package/dist/src/acp/registry.js +8 -0
  61. package/dist/src/acp/thread.d.ts +46 -0
  62. package/dist/src/acp/thread.js +7 -0
  63. package/dist/src/acp/transcript.d.ts +8 -0
  64. package/dist/src/acp/transcript.js +11 -0
  65. package/dist/src/acp/translate.d.ts +33 -0
  66. package/dist/src/acp/translate.js +20 -0
  67. package/dist/src/approvals/approvals.d.ts +189 -0
  68. package/dist/src/approvals/approvals.js +143 -0
  69. package/dist/src/approvals/schema.d.ts +169 -0
  70. package/dist/src/approvals/schema.js +18 -0
  71. package/dist/src/bash-description.d.ts +30 -0
  72. package/dist/src/bash-description.js +18 -0
  73. package/dist/src/browser-tools.d.ts +25 -0
  74. package/dist/src/browser-tools.js +246 -0
  75. package/dist/src/canvas/canvas-compile.d.ts +48 -0
  76. package/dist/src/canvas/canvas-compile.js +8 -0
  77. package/dist/src/canvas/canvas-libraries.d.ts +32 -0
  78. package/dist/src/canvas/canvas-libraries.js +6 -0
  79. package/dist/src/canvas/canvas-preview.d.ts +107 -0
  80. package/dist/src/canvas/canvas-preview.js +12 -0
  81. package/dist/src/canvas/canvas-protocol.d.ts +184 -0
  82. package/dist/src/canvas/canvas-protocol.js +75 -0
  83. package/dist/src/canvas/canvas.d.ts +50 -0
  84. package/dist/src/canvas/canvas.js +221 -0
  85. package/dist/src/canvas/schema.d.ts +47 -0
  86. package/dist/src/canvas/schema.js +8 -0
  87. package/dist/src/claude-code-sdk/index.d.ts +35 -0
  88. package/dist/src/claude-code-sdk/index.js +368 -0
  89. package/dist/src/claude-code-sdk/session.d.ts +48 -0
  90. package/dist/src/claude-code-sdk/session.js +7 -0
  91. package/dist/src/claude-code-sdk/transcript.d.ts +19 -0
  92. package/dist/src/claude-code-sdk/transcript.js +15 -0
  93. package/dist/src/claude-code-sdk/translate.d.ts +18 -0
  94. package/dist/src/claude-code-sdk/translate.js +20 -0
  95. package/dist/src/client/mount.d.ts +44 -0
  96. package/dist/src/client/mount.js +252 -0
  97. package/dist/src/client/notifications.d.ts +35 -0
  98. package/dist/src/client/notifications.js +26 -0
  99. package/dist/src/client/presentation.d.ts +336 -0
  100. package/dist/src/client/presentation.js +373 -0
  101. package/dist/src/client/transcript-tui.d.ts +23 -0
  102. package/dist/src/client/transcript-tui.js +20 -0
  103. package/dist/src/client/transcript.d.ts +23 -0
  104. package/dist/src/client/transcript.js +51 -0
  105. package/dist/src/client.d.ts +53 -0
  106. package/dist/src/client.js +22 -0
  107. package/dist/src/codemode-runtime.d.ts +11 -0
  108. package/dist/src/codemode-runtime.js +10 -0
  109. package/dist/src/codemode-worker.d.ts +1 -0
  110. package/dist/src/codemode-worker.js +2 -0
  111. package/dist/src/codemode.d.ts +21 -0
  112. package/dist/src/codemode.js +170 -0
  113. package/dist/src/core.d.ts +43 -0
  114. package/dist/src/core.js +11 -0
  115. package/dist/src/openai-astra-context.d.ts +23 -0
  116. package/dist/src/openai-astra-context.js +14 -0
  117. package/dist/src/openai-compaction.d.ts +15 -0
  118. package/dist/src/openai-compaction.js +55 -0
  119. package/dist/src/question/client/questions-tui.d.ts +9 -0
  120. package/dist/src/question/client/questions-tui.js +19 -0
  121. package/dist/src/question/client/questions.d.ts +9 -0
  122. package/dist/src/question/client/questions.js +160 -0
  123. package/dist/src/question/question.d.ts +63 -0
  124. package/dist/src/question/question.js +9 -0
  125. package/dist/src/question/schema.d.ts +101 -0
  126. package/dist/src/question/schema.js +14 -0
  127. package/dist/src/rename.d.ts +78 -0
  128. package/dist/src/rename.js +78 -0
  129. package/dist/src/telemetry.d.ts +36 -0
  130. package/dist/src/telemetry.js +84 -0
  131. package/dist/src/web-search.d.ts +78 -0
  132. package/dist/src/web-search.js +219 -0
  133. package/package.json +190 -3
  134. package/README.md +0 -3
@@ -0,0 +1,1004 @@
1
+ import {
2
+ ACP_PROVIDER2,
3
+ ACP_API2,
4
+ MIRROR_TOOL2,
5
+ mirrorArguments2,
6
+ mirrorClass2
7
+ } from "../../chunks/billing-9nn3yp18.js";
8
+ import"../../chunks/billing-svrhh5a5.js";
9
+ import {
10
+ AcpProcess2
11
+ } from "../../chunks/billing-9mfedmsh.js";
12
+ import {
13
+ registryEntries2,
14
+ installedAgents2
15
+ } from "../../chunks/billing-k2p1t25n.js";
16
+ import {
17
+ messageKey2,
18
+ userBlocks2,
19
+ transcriptText2
20
+ } from "../../chunks/billing-wmcbg6fw.js";
21
+
22
+ // src/acp/index.ts
23
+ import {
24
+ acquireSessionResources,
25
+ getCurrentSystemPrompt,
26
+ getCurrentTools,
27
+ lazyStream,
28
+ registerSessionResourceCleanup
29
+ } from "@nyte-ai/ai";
30
+ import { processEnvironment } from "@nyte-ai/core";
31
+ import { standard } from "@nyte-ai/schema";
32
+ import { Value } from "typebox/value";
33
+ // src/acp/registry-seed.json
34
+ var registry_seed_default = {
35
+ agents: [
36
+ {
37
+ id: "agoragentic-acp",
38
+ name: "Agoragentic",
39
+ distribution: {
40
+ npx: {
41
+ package: "agoragentic-mcp@1.3.0",
42
+ args: ["--acp"]
43
+ }
44
+ }
45
+ },
46
+ {
47
+ id: "amp-acp",
48
+ name: "Amp",
49
+ distribution: {
50
+ binary: {
51
+ "darwin-aarch64": {
52
+ cmd: "./amp-acp"
53
+ },
54
+ "darwin-x86_64": {
55
+ cmd: "./amp-acp"
56
+ },
57
+ "linux-aarch64": {
58
+ cmd: "./amp-acp"
59
+ },
60
+ "linux-x86_64": {
61
+ cmd: "./amp-acp"
62
+ },
63
+ "windows-x86_64": {
64
+ cmd: "amp-acp.exe"
65
+ }
66
+ }
67
+ }
68
+ },
69
+ {
70
+ id: "antigravity-acp",
71
+ name: "Google Antigravity",
72
+ distribution: {
73
+ binary: {
74
+ "darwin-aarch64": {
75
+ cmd: "./agy_acp_server.par"
76
+ },
77
+ "darwin-x86_64": {
78
+ cmd: "./agy_acp_server.par"
79
+ },
80
+ "linux-x86_64": {
81
+ cmd: "./agy_acp_server.par",
82
+ args: ["--uid="]
83
+ },
84
+ "linux-aarch64": {
85
+ cmd: "./agy_acp_server.par",
86
+ args: ["--uid="]
87
+ },
88
+ "windows-x86_64": {
89
+ cmd: "./agy_acp_server.exe"
90
+ },
91
+ "windows-aarch64": {
92
+ cmd: "./agy_acp_server.exe"
93
+ }
94
+ }
95
+ }
96
+ },
97
+ {
98
+ id: "auggie",
99
+ name: "Auggie CLI",
100
+ distribution: {
101
+ npx: {
102
+ package: "@augmentcode/auggie@0.36.0",
103
+ args: ["--acp"],
104
+ env: {
105
+ AUGMENT_DISABLE_AUTO_UPDATE: "1"
106
+ }
107
+ }
108
+ }
109
+ },
110
+ {
111
+ id: "autohand",
112
+ name: "Autohand Code",
113
+ distribution: {
114
+ npx: {
115
+ package: "@autohandai/autohand-acp@0.2.1"
116
+ }
117
+ }
118
+ },
119
+ {
120
+ id: "bob",
121
+ name: "Bob",
122
+ distribution: {
123
+ npx: {
124
+ package: "@ibm/bob@2.0.8",
125
+ args: ["acp"]
126
+ }
127
+ }
128
+ },
129
+ {
130
+ id: "claude-acp",
131
+ name: "Claude Agent",
132
+ distribution: {
133
+ npx: {
134
+ package: "@agentclientprotocol/claude-agent-acp@0.93.0"
135
+ }
136
+ }
137
+ },
138
+ {
139
+ id: "cline",
140
+ name: "Cline",
141
+ distribution: {
142
+ npx: {
143
+ package: "cline@3.0.72",
144
+ args: ["--acp"]
145
+ }
146
+ }
147
+ },
148
+ {
149
+ id: "codebuddy-code",
150
+ name: "Codebuddy Code",
151
+ distribution: {
152
+ npx: {
153
+ package: "@tencent-ai/codebuddy-code@2.168.2",
154
+ args: ["--acp"]
155
+ }
156
+ }
157
+ },
158
+ {
159
+ id: "codex-acp",
160
+ name: "Codex",
161
+ distribution: {
162
+ npx: {
163
+ package: "@agentclientprotocol/codex-acp@2.2.2"
164
+ }
165
+ }
166
+ },
167
+ {
168
+ id: "cortex-code",
169
+ name: "Cortex Code",
170
+ distribution: {
171
+ binary: {
172
+ "darwin-aarch64": {
173
+ cmd: "./coco-1.0.73+180523.e6179a031de9-darwin-arm64/cortex",
174
+ args: ["acp", "serve"]
175
+ },
176
+ "darwin-x86_64": {
177
+ cmd: "./coco-1.0.73+180523.e6179a031de9-darwin-amd64/cortex",
178
+ args: ["acp", "serve"]
179
+ },
180
+ "linux-x86_64": {
181
+ cmd: "./coco-1.0.73+180523.e6179a031de9-linux-amd64/cortex",
182
+ args: ["acp", "serve"]
183
+ },
184
+ "linux-aarch64": {
185
+ cmd: "./coco-1.0.73+180523.e6179a031de9-linux-arm64/cortex",
186
+ args: ["acp", "serve"]
187
+ },
188
+ "windows-x86_64": {
189
+ cmd: "./coco-1.0.73+180523.e6179a031de9-windows-amd64/cortex.exe",
190
+ args: ["acp", "serve"]
191
+ },
192
+ "windows-aarch64": {
193
+ cmd: "./coco-1.0.73+180523.e6179a031de9-windows-arm64/cortex.exe",
194
+ args: ["acp", "serve"]
195
+ }
196
+ }
197
+ }
198
+ },
199
+ {
200
+ id: "corust-agent",
201
+ name: "Corust Agent",
202
+ distribution: {
203
+ binary: {
204
+ "darwin-aarch64": {
205
+ cmd: "./corust-agent-acp"
206
+ },
207
+ "darwin-x86_64": {
208
+ cmd: "./corust-agent-acp"
209
+ },
210
+ "linux-x86_64": {
211
+ cmd: "./corust-agent-acp"
212
+ },
213
+ "windows-x86_64": {
214
+ cmd: "./corust-agent-acp.exe"
215
+ }
216
+ }
217
+ }
218
+ },
219
+ {
220
+ id: "crow-cli",
221
+ name: "crow-cli",
222
+ distribution: {
223
+ binary: {
224
+ "darwin-aarch64": {
225
+ cmd: "./crow-cli",
226
+ args: ["acp"]
227
+ },
228
+ "darwin-x86_64": {
229
+ cmd: "./crow-cli",
230
+ args: ["acp"]
231
+ },
232
+ "linux-aarch64": {
233
+ cmd: "./crow-cli",
234
+ args: ["acp"]
235
+ },
236
+ "linux-x86_64": {
237
+ cmd: "./crow-cli",
238
+ args: ["acp"]
239
+ },
240
+ "windows-x86_64": {
241
+ cmd: "./crow-cli.exe",
242
+ args: ["acp"]
243
+ }
244
+ }
245
+ }
246
+ },
247
+ {
248
+ id: "cursor",
249
+ name: "Cursor",
250
+ distribution: {
251
+ binary: {
252
+ "darwin-aarch64": {
253
+ cmd: "./dist-package/cursor-agent",
254
+ args: ["acp"]
255
+ },
256
+ "darwin-x86_64": {
257
+ cmd: "./dist-package/cursor-agent",
258
+ args: ["acp"]
259
+ },
260
+ "linux-aarch64": {
261
+ cmd: "./dist-package/cursor-agent",
262
+ args: ["acp"]
263
+ },
264
+ "linux-x86_64": {
265
+ cmd: "./dist-package/cursor-agent",
266
+ args: ["acp"]
267
+ },
268
+ "windows-aarch64": {
269
+ cmd: "./dist-package\\cursor-agent.cmd",
270
+ args: ["acp"]
271
+ },
272
+ "windows-x86_64": {
273
+ cmd: "./dist-package\\cursor-agent.cmd",
274
+ args: ["acp"]
275
+ }
276
+ }
277
+ }
278
+ },
279
+ {
280
+ id: "deepagents",
281
+ name: "DeepAgents",
282
+ distribution: {
283
+ npx: {
284
+ package: "deepagents-acp@0.1.7",
285
+ args: []
286
+ }
287
+ }
288
+ },
289
+ {
290
+ id: "devin",
291
+ name: "Devin",
292
+ distribution: {
293
+ binary: {
294
+ "darwin-aarch64": {
295
+ cmd: "./bin/devin",
296
+ args: ["acp"]
297
+ },
298
+ "darwin-x86_64": {
299
+ cmd: "./bin/devin",
300
+ args: ["acp"]
301
+ },
302
+ "linux-aarch64": {
303
+ cmd: "./bin/devin",
304
+ args: ["acp"]
305
+ },
306
+ "linux-x86_64": {
307
+ cmd: "./bin/devin",
308
+ args: ["acp"]
309
+ },
310
+ "windows-aarch64": {
311
+ cmd: "./bin\\devin.exe",
312
+ args: ["acp"]
313
+ },
314
+ "windows-x86_64": {
315
+ cmd: "./bin\\devin.exe",
316
+ args: ["acp"]
317
+ }
318
+ }
319
+ }
320
+ },
321
+ {
322
+ id: "dimcode",
323
+ name: "DimCode",
324
+ distribution: {
325
+ npx: {
326
+ package: "dimcode@0.5.19",
327
+ args: ["acp"]
328
+ }
329
+ }
330
+ },
331
+ {
332
+ id: "dirac",
333
+ name: "Dirac",
334
+ distribution: {
335
+ npx: {
336
+ package: "dirac-cli@0.5.21",
337
+ args: ["--acp"]
338
+ }
339
+ }
340
+ },
341
+ {
342
+ id: "factory-droid",
343
+ name: "Factory Droid",
344
+ distribution: {
345
+ npx: {
346
+ package: "droid@0.243.0",
347
+ args: ["exec", "--output-format", "acp-daemon"],
348
+ env: {
349
+ DROID_DISABLE_AUTO_UPDATE: "true",
350
+ FACTORY_DROID_AUTO_UPDATE_ENABLED: "false"
351
+ }
352
+ }
353
+ }
354
+ },
355
+ {
356
+ id: "gemini",
357
+ name: "Gemini CLI",
358
+ distribution: {
359
+ npx: {
360
+ package: "@google/gemini-cli@0.64.0",
361
+ args: ["--acp"]
362
+ }
363
+ }
364
+ },
365
+ {
366
+ id: "github-copilot-cli",
367
+ name: "Copilot",
368
+ distribution: {
369
+ npx: {
370
+ package: "@github/copilot@1.0.98",
371
+ args: ["--acp"]
372
+ }
373
+ }
374
+ },
375
+ {
376
+ id: "glm-acp-agent",
377
+ name: "GLM Agent",
378
+ distribution: {
379
+ npx: {
380
+ package: "glm-acp-agent@1.15.0"
381
+ }
382
+ }
383
+ },
384
+ {
385
+ id: "goose",
386
+ name: "goose",
387
+ distribution: {
388
+ binary: {
389
+ "darwin-aarch64": {
390
+ cmd: "./goose",
391
+ args: ["acp"]
392
+ },
393
+ "darwin-x86_64": {
394
+ cmd: "./goose",
395
+ args: ["acp"]
396
+ },
397
+ "linux-aarch64": {
398
+ cmd: "./goose",
399
+ args: ["acp"]
400
+ },
401
+ "linux-x86_64": {
402
+ cmd: "./goose",
403
+ args: ["acp"]
404
+ },
405
+ "windows-x86_64": {
406
+ cmd: "./goose-package\\goose.exe",
407
+ args: ["acp"]
408
+ }
409
+ }
410
+ }
411
+ },
412
+ {
413
+ id: "grok-build",
414
+ name: "Grok Build",
415
+ distribution: {
416
+ npx: {
417
+ package: "@xai-official/grok@1.0.62",
418
+ args: ["agent", "stdio"]
419
+ }
420
+ }
421
+ },
422
+ {
423
+ id: "harn",
424
+ name: "Harn",
425
+ distribution: {
426
+ binary: {
427
+ "darwin-aarch64": {
428
+ cmd: "./harn",
429
+ args: ["serve", "acp"]
430
+ },
431
+ "darwin-x86_64": {
432
+ cmd: "./harn",
433
+ args: ["serve", "acp"]
434
+ },
435
+ "linux-aarch64": {
436
+ cmd: "./harn",
437
+ args: ["serve", "acp"]
438
+ },
439
+ "linux-x86_64": {
440
+ cmd: "./harn",
441
+ args: ["serve", "acp"]
442
+ },
443
+ "windows-x86_64": {
444
+ cmd: "harn.exe",
445
+ args: ["serve", "acp"]
446
+ }
447
+ }
448
+ }
449
+ },
450
+ {
451
+ id: "junie",
452
+ name: "Junie",
453
+ distribution: {
454
+ binary: {
455
+ "darwin-aarch64": {
456
+ cmd: "./Applications/junie.app/Contents/MacOS/junie",
457
+ args: ["--acp=true"]
458
+ },
459
+ "darwin-x86_64": {
460
+ cmd: "./Applications/junie.app/Contents/MacOS/junie",
461
+ args: ["--acp=true"]
462
+ },
463
+ "linux-aarch64": {
464
+ cmd: "./junie-app/bin/junie",
465
+ args: ["--acp=true"]
466
+ },
467
+ "linux-x86_64": {
468
+ cmd: "./junie-app/bin/junie",
469
+ args: ["--acp=true"]
470
+ },
471
+ "windows-x86_64": {
472
+ cmd: "./junie/junie.exe",
473
+ args: ["--acp=true"]
474
+ },
475
+ "windows-aarch64": {
476
+ cmd: "./junie/junie.exe",
477
+ args: ["--acp=true"]
478
+ }
479
+ }
480
+ }
481
+ },
482
+ {
483
+ id: "kilo",
484
+ name: "Kilo",
485
+ distribution: {
486
+ binary: {
487
+ "darwin-aarch64": {
488
+ cmd: "./kilo",
489
+ args: ["acp"]
490
+ },
491
+ "darwin-x86_64": {
492
+ cmd: "./kilo",
493
+ args: ["acp"]
494
+ },
495
+ "linux-aarch64": {
496
+ cmd: "./kilo",
497
+ args: ["acp"]
498
+ },
499
+ "linux-x86_64": {
500
+ cmd: "./kilo",
501
+ args: ["acp"]
502
+ },
503
+ "windows-x86_64": {
504
+ cmd: "./kilo.exe",
505
+ args: ["acp"]
506
+ }
507
+ },
508
+ npx: {
509
+ package: "@kilocode/cli@7.8.12",
510
+ args: ["acp"]
511
+ }
512
+ }
513
+ },
514
+ {
515
+ id: "kimchi",
516
+ name: "Kimchi",
517
+ distribution: {
518
+ binary: {
519
+ "darwin-aarch64": {
520
+ cmd: "./bin/kimchi",
521
+ args: ["--mode", "acp"]
522
+ },
523
+ "darwin-x86_64": {
524
+ cmd: "./bin/kimchi",
525
+ args: ["--mode", "acp"]
526
+ },
527
+ "linux-aarch64": {
528
+ cmd: "./bin/kimchi",
529
+ args: ["--mode", "acp"]
530
+ },
531
+ "linux-x86_64": {
532
+ cmd: "./bin/kimchi",
533
+ args: ["--mode", "acp"]
534
+ },
535
+ "windows-x86_64": {
536
+ cmd: "./bin/kimchi.exe",
537
+ args: ["--mode", "acp"]
538
+ }
539
+ }
540
+ }
541
+ },
542
+ {
543
+ id: "kimi",
544
+ name: "Kimi CLI",
545
+ distribution: {
546
+ binary: {
547
+ "darwin-aarch64": {
548
+ cmd: "./kimi",
549
+ args: ["acp"]
550
+ },
551
+ "linux-aarch64": {
552
+ cmd: "./kimi",
553
+ args: ["acp"]
554
+ },
555
+ "linux-x86_64": {
556
+ cmd: "./kimi",
557
+ args: ["acp"]
558
+ },
559
+ "windows-aarch64": {
560
+ cmd: "./kimi.exe",
561
+ args: ["acp"]
562
+ },
563
+ "windows-x86_64": {
564
+ cmd: "./kimi.exe",
565
+ args: ["acp"]
566
+ }
567
+ }
568
+ }
569
+ },
570
+ {
571
+ id: "minimax-code",
572
+ name: "MiniMax Code",
573
+ distribution: {
574
+ npx: {
575
+ package: "@minimax-ai/code@0.2.7",
576
+ args: ["acp"]
577
+ }
578
+ }
579
+ },
580
+ {
581
+ id: "mistral-vibe",
582
+ name: "Mistral Vibe",
583
+ distribution: {
584
+ binary: {
585
+ "darwin-aarch64": {
586
+ cmd: "./vibe-acp"
587
+ },
588
+ "darwin-x86_64": {
589
+ cmd: "./vibe-acp"
590
+ },
591
+ "linux-aarch64": {
592
+ cmd: "./vibe-acp"
593
+ },
594
+ "linux-x86_64": {
595
+ cmd: "./vibe-acp"
596
+ },
597
+ "windows-x86_64": {
598
+ cmd: "./vibe-acp.exe"
599
+ }
600
+ }
601
+ }
602
+ },
603
+ {
604
+ id: "nova",
605
+ name: "Nova",
606
+ distribution: {
607
+ npx: {
608
+ package: "@compass-ai/nova@1.1.54",
609
+ args: ["acp"]
610
+ }
611
+ }
612
+ },
613
+ {
614
+ id: "opencode",
615
+ name: "OpenCode",
616
+ distribution: {
617
+ binary: {
618
+ "darwin-aarch64": {
619
+ cmd: "./opencode",
620
+ args: ["acp"]
621
+ },
622
+ "darwin-x86_64": {
623
+ cmd: "./opencode",
624
+ args: ["acp"]
625
+ },
626
+ "linux-aarch64": {
627
+ cmd: "./opencode",
628
+ args: ["acp"]
629
+ },
630
+ "linux-x86_64": {
631
+ cmd: "./opencode",
632
+ args: ["acp"]
633
+ },
634
+ "windows-aarch64": {
635
+ cmd: "./opencode",
636
+ args: ["acp"]
637
+ },
638
+ "windows-x86_64": {
639
+ cmd: "./opencode.exe",
640
+ args: ["acp"]
641
+ }
642
+ }
643
+ }
644
+ },
645
+ {
646
+ id: "pi-acp",
647
+ name: "pi ACP",
648
+ distribution: {
649
+ npx: {
650
+ package: "pi-acp@0.0.34"
651
+ }
652
+ }
653
+ },
654
+ {
655
+ id: "poolside",
656
+ name: "Poolside",
657
+ distribution: {
658
+ binary: {
659
+ "darwin-aarch64": {
660
+ cmd: "./pool-darwin-arm64",
661
+ args: ["acp"]
662
+ },
663
+ "darwin-x86_64": {
664
+ cmd: "./pool-darwin-amd64",
665
+ args: ["acp"]
666
+ },
667
+ "linux-aarch64": {
668
+ cmd: "./pool-linux-arm64",
669
+ args: ["acp"]
670
+ },
671
+ "linux-x86_64": {
672
+ cmd: "./pool-linux-amd64",
673
+ args: ["acp"]
674
+ },
675
+ "windows-aarch64": {
676
+ cmd: "./pool-windows-arm64.exe",
677
+ args: ["acp"]
678
+ },
679
+ "windows-x86_64": {
680
+ cmd: "./pool-windows-amd64.exe",
681
+ args: ["acp"]
682
+ }
683
+ }
684
+ }
685
+ },
686
+ {
687
+ id: "qoder",
688
+ name: "Qoder CLI",
689
+ distribution: {
690
+ npx: {
691
+ package: "@qoder-ai/qodercli@0.2.14",
692
+ args: ["--acp"]
693
+ }
694
+ }
695
+ },
696
+ {
697
+ id: "qwen-code",
698
+ name: "Qwen Code",
699
+ distribution: {
700
+ npx: {
701
+ package: "@qwen-code/qwen-code@0.25.2",
702
+ args: ["--acp", "--experimental-skills"]
703
+ }
704
+ }
705
+ },
706
+ {
707
+ id: "sigit",
708
+ name: "siGit Code",
709
+ distribution: {
710
+ binary: {
711
+ "darwin-aarch64": {
712
+ cmd: "./sigit"
713
+ },
714
+ "darwin-x86_64": {
715
+ cmd: "./sigit"
716
+ },
717
+ "linux-aarch64": {
718
+ cmd: "./sigit-linux-arm64"
719
+ },
720
+ "linux-x86_64": {
721
+ cmd: "./sigit-linux-amd64"
722
+ },
723
+ "windows-aarch64": {
724
+ cmd: "./sigit-win-arm64.exe"
725
+ },
726
+ "windows-x86_64": {
727
+ cmd: "./sigit-win-amd64.exe"
728
+ }
729
+ },
730
+ npx: {
731
+ package: "@smbcloud/sigit@1.7.0"
732
+ }
733
+ }
734
+ },
735
+ {
736
+ id: "stakpak",
737
+ name: "Stakpak",
738
+ distribution: {
739
+ binary: {
740
+ "darwin-aarch64": {
741
+ cmd: "./stakpak",
742
+ args: ["acp"]
743
+ },
744
+ "darwin-x86_64": {
745
+ cmd: "./stakpak",
746
+ args: ["acp"]
747
+ },
748
+ "linux-aarch64": {
749
+ cmd: "./stakpak",
750
+ args: ["acp"]
751
+ },
752
+ "linux-x86_64": {
753
+ cmd: "./stakpak",
754
+ args: ["acp"]
755
+ },
756
+ "windows-x86_64": {
757
+ cmd: "./stakpak.exe",
758
+ args: ["acp"]
759
+ }
760
+ }
761
+ }
762
+ },
763
+ {
764
+ id: "vtcode",
765
+ name: "VT Code",
766
+ distribution: {
767
+ binary: {
768
+ "darwin-aarch64": {
769
+ cmd: "./vtcode",
770
+ args: ["acp"],
771
+ env: {
772
+ VT_ACP_ENABLED: "1",
773
+ VT_ACP_ZED_ENABLED: "1"
774
+ }
775
+ },
776
+ "darwin-x86_64": {
777
+ cmd: "./vtcode",
778
+ args: ["acp"],
779
+ env: {
780
+ VT_ACP_ENABLED: "1",
781
+ VT_ACP_ZED_ENABLED: "1"
782
+ }
783
+ },
784
+ "linux-x86_64": {
785
+ cmd: "./vtcode",
786
+ args: ["acp"],
787
+ env: {
788
+ VT_ACP_ENABLED: "1",
789
+ VT_ACP_ZED_ENABLED: "1"
790
+ }
791
+ },
792
+ "windows-x86_64": {
793
+ cmd: "vtcode.exe",
794
+ args: ["acp"],
795
+ env: {
796
+ VT_ACP_ENABLED: "1",
797
+ VT_ACP_ZED_ENABLED: "1"
798
+ }
799
+ }
800
+ }
801
+ }
802
+ }
803
+ ]
804
+ };
805
+
806
+ // src/acp/index.ts
807
+ var NOT_RUNNING = "The agent is no longer running this turn. Send a message to continue.";
808
+ function agentModel(agent) {
809
+ return {
810
+ id: agent.id,
811
+ name: agent.name,
812
+ api: ACP_API2,
813
+ provider: ACP_PROVIDER2,
814
+ baseUrl: `process://acp/${agent.id}`,
815
+ reasoning: false,
816
+ input: ["text", "image"],
817
+ cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
818
+ contextWindow: 1e6,
819
+ maxTokens: 64000
820
+ };
821
+ }
822
+ function mirrorTool(live) {
823
+ return {
824
+ name: MIRROR_TOOL2,
825
+ description: "A tool an ACP agent ran. The agent reports the result; Nyte records it.",
826
+ parameters: standard(mirrorArguments2),
827
+ exposure: "hidden",
828
+ approval: "runtime",
829
+ replay: "safe",
830
+ class: mirrorClass2,
831
+ async execute(args, invocation) {
832
+ const thread = live.get(invocation.session.id)?.thread;
833
+ if (thread === undefined || thread.closed || args.thread !== thread.prefix)
834
+ throw new Error(NOT_RUNNING);
835
+ thread.recording(args.id);
836
+ const output = await thread.result(args.id, invocation.signal);
837
+ if (output.failed)
838
+ throw new Error(output.text === "" ? "The tool call failed." : output.text);
839
+ return { content: [{ kind: "text", text: output.text }] };
840
+ }
841
+ };
842
+ }
843
+ function acpAgents(options) {
844
+ let agents = [];
845
+ const live = new Map;
846
+ const bindings = new Map;
847
+ const forget = (entry) => {
848
+ entry.process.then((started) => started.close()).catch(() => {
849
+ return;
850
+ });
851
+ };
852
+ registerSessionResourceCleanup((id) => {
853
+ for (const [key, entry] of live) {
854
+ if (id !== undefined && key !== id)
855
+ continue;
856
+ live.delete(key);
857
+ forget(entry);
858
+ }
859
+ });
860
+ async function connect(id, model) {
861
+ const binding = bindings.get(id);
862
+ if (binding === undefined)
863
+ throw new Error("ACP agents answer inside a Nyte session.");
864
+ const { env } = binding;
865
+ const agent = agents.find((candidate) => candidate.id === model.id);
866
+ if (agent === undefined)
867
+ throw new Error(`${model.name} is not installed on this machine.`);
868
+ const key = JSON.stringify([agent.id, agent.command, env.cwd]);
869
+ let entry = live.get(id);
870
+ const started = entry?.key === key ? await entry.process.catch(() => {
871
+ return;
872
+ }) : undefined;
873
+ if (entry === undefined || started === undefined || started.closed) {
874
+ if (entry !== undefined)
875
+ forget(entry);
876
+ entry = { key, process: AcpProcess2.start(env, agent), thread: undefined, known: [] };
877
+ live.set(id, entry);
878
+ }
879
+ return { entry, binding, agent: await entry.process };
880
+ }
881
+ async function respond(model, context, signal, id) {
882
+ if (id === undefined)
883
+ throw new Error("ACP agents answer inside a Nyte session.");
884
+ const { entry, binding, agent } = await connect(id, model);
885
+ const messages = context.messages.filter((message) => message.role !== "system");
886
+ const keys = messages.map(messageKey2);
887
+ const images = await agent.images();
888
+ const first = messages.findLastIndex((message) => message.role !== "user") + 1;
889
+ const prompt = messages.slice(first).flatMap((message) => message.role === "user" ? userBlocks2(message, images) : []);
890
+ const current = entry.thread;
891
+ const continues = current !== undefined && !current.closed && entry.known.length < keys.length && entry.known.every((known, index) => keys[index] === known);
892
+ let thread;
893
+ if (continues) {
894
+ thread = current;
895
+ const answered = new Set(messages.flatMap((message) => message.role === "toolResult" ? [message.toolCallId] : []));
896
+ for (const message of messages)
897
+ if (message.role === "assistant") {
898
+ for (const block of message.content)
899
+ if (block.type === "toolCall" && answered.has(block.id) && Value.Check(mirrorArguments2, block.arguments) && block.arguments.thread === thread.prefix)
900
+ thread.skip(block.arguments.id);
901
+ }
902
+ if (prompt.length > 0)
903
+ thread.send(prompt);
904
+ } else {
905
+ if (current !== undefined)
906
+ agent.forget(current);
907
+ if (prompt.length === 0)
908
+ throw new Error(NOT_RUNNING);
909
+ thread = await agent.open(binding.env.cwd, binding.approve);
910
+ entry.thread = thread;
911
+ const history = transcriptText2(messages.slice(0, first));
912
+ thread.send(history === "" ? prompt : [{ type: "text", text: `Earlier in this conversation:
913
+
914
+ ${history}` }, ...prompt]);
915
+ }
916
+ const stream = thread.respond(model, signal);
917
+ stream.result().then((message) => {
918
+ if (entry.thread !== thread)
919
+ return;
920
+ entry.known = message.stopReason === "error" || message.stopReason === "aborted" ? [] : [...keys, messageKey2(message)];
921
+ });
922
+ return stream;
923
+ }
924
+ async function answerOnce(model, context, signal, id) {
925
+ if (id === undefined)
926
+ throw new Error("ACP agents answer inside a Nyte session.");
927
+ const { binding, agent } = await connect(id, model);
928
+ const thread = await agent.open(binding.env.cwd, binding.approve);
929
+ const system = getCurrentSystemPrompt(context.messages);
930
+ const conversation = transcriptText2(context.messages.filter((message) => message.role !== "system"));
931
+ thread.send([
932
+ {
933
+ type: "text",
934
+ text: `${system === undefined ? "" : `${system}
935
+
936
+ `}${conversation}
937
+
938
+ Answer in text only; do not use tools.`
939
+ }
940
+ ]);
941
+ const stream = thread.respond(model, signal, false);
942
+ stream.result().finally(() => agent.forget(thread));
943
+ return stream;
944
+ }
945
+ const stream = (model, context, request) => lazyStream(model, () => getCurrentTools(context.messages).length === 0 ? answerOnce(model, context, request?.signal, request?.sessionId) : respond(model, context, request?.signal, request?.sessionId));
946
+ const provider = {
947
+ id: ACP_PROVIDER2,
948
+ name: "ACP agents",
949
+ baseUrl: "process://acp",
950
+ capabilities: { steer: false },
951
+ explicitOnly: true,
952
+ auth: {
953
+ apiKey: {
954
+ name: "Installed ACP agents",
955
+ resolve: async ({ signal }) => {
956
+ signal.throwIfAborted();
957
+ return agents.length === 0 ? undefined : { auth: {}, source: "Installed ACP agents" };
958
+ }
959
+ }
960
+ },
961
+ getModels: () => agents.map(agentModel),
962
+ refreshModels: async (context) => {
963
+ if (options?.agents !== undefined) {
964
+ const found = await options.agents();
965
+ await context.publish({ update: () => agents = found });
966
+ return;
967
+ }
968
+ await processEnvironment();
969
+ const found = await installedAgents2(registryEntries2(registry_seed_default), process.env.PATH ?? "");
970
+ await context.publish({ update: () => agents = found });
971
+ },
972
+ stream: (model, context, streamOptions) => stream(model, context, {
973
+ signal: streamOptions?.signal,
974
+ sessionId: streamOptions?.sessionId
975
+ }),
976
+ streamSimple: stream
977
+ };
978
+ const plugin = {
979
+ id: "acp",
980
+ contribute: { tools: [mirrorTool(live)] },
981
+ activate(api) {
982
+ const id = api.session.id;
983
+ const binding = {
984
+ env: api.env,
985
+ approve: (call, signal) => api.approve(call, signal)
986
+ };
987
+ const release = acquireSessionResources(id);
988
+ bindings.set(id, binding);
989
+ const unbind = () => {
990
+ if (bindings.get(id) === binding)
991
+ bindings.delete(id);
992
+ release();
993
+ };
994
+ if (api.signal.aborted)
995
+ unbind();
996
+ else
997
+ api.signal.addEventListener("abort", unbind, { once: true });
998
+ }
999
+ };
1000
+ return { provider, plugin };
1001
+ }
1002
+ export {
1003
+ acpAgents
1004
+ };