@tutti-os/agent-acp-kit 0.1.10
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.
- package/AGENTS.md +176 -0
- package/README.md +428 -0
- package/assets/agent-acp-kit-architecture.png +0 -0
- package/dist/core/capabilities.d.ts +23 -0
- package/dist/core/capabilities.d.ts.map +1 -0
- package/dist/core/capabilities.js +2 -0
- package/dist/core/capabilities.js.map +1 -0
- package/dist/core/detection.d.ts +8 -0
- package/dist/core/detection.d.ts.map +1 -0
- package/dist/core/detection.js +2 -0
- package/dist/core/detection.js.map +1 -0
- package/dist/core/errors.d.ts +6 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +9 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/events.d.ts +51 -0
- package/dist/core/events.d.ts.map +1 -0
- package/dist/core/events.js +2 -0
- package/dist/core/events.js.map +1 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +4 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/launch-plan.d.ts +22 -0
- package/dist/core/launch-plan.d.ts.map +1 -0
- package/dist/core/launch-plan.js +2 -0
- package/dist/core/launch-plan.js.map +1 -0
- package/dist/core/mcp.d.ts +31 -0
- package/dist/core/mcp.d.ts.map +1 -0
- package/dist/core/mcp.js +37 -0
- package/dist/core/mcp.js.map +1 -0
- package/dist/core/provider-plugin.d.ts +84 -0
- package/dist/core/provider-plugin.d.ts.map +1 -0
- package/dist/core/provider-plugin.js +2 -0
- package/dist/core/provider-plugin.js.map +1 -0
- package/dist/core/redaction.d.ts +2 -0
- package/dist/core/redaction.d.ts.map +1 -0
- package/dist/core/redaction.js +9 -0
- package/dist/core/redaction.js.map +1 -0
- package/dist/core/registry.d.ts +4 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +10 -0
- package/dist/core/registry.js.map +1 -0
- package/dist/core/run-input.d.ts +30 -0
- package/dist/core/run-input.d.ts.map +1 -0
- package/dist/core/run-input.js +2 -0
- package/dist/core/run-input.js.map +1 -0
- package/dist/core/skills.d.ts +13 -0
- package/dist/core/skills.d.ts.map +1 -0
- package/dist/core/skills.js +2 -0
- package/dist/core/skills.js.map +1 -0
- package/dist/core/transport.d.ts +17 -0
- package/dist/core/transport.d.ts.map +1 -0
- package/dist/core/transport.js +2 -0
- package/dist/core/transport.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/process/cancellation.d.ts +7 -0
- package/dist/process/cancellation.d.ts.map +1 -0
- package/dist/process/cancellation.js +36 -0
- package/dist/process/cancellation.js.map +1 -0
- package/dist/process/command-resolver.d.ts +13 -0
- package/dist/process/command-resolver.d.ts.map +1 -0
- package/dist/process/command-resolver.js +63 -0
- package/dist/process/command-resolver.js.map +1 -0
- package/dist/process/env.d.ts +2 -0
- package/dist/process/env.d.ts.map +1 -0
- package/dist/process/env.js +7 -0
- package/dist/process/env.js.map +1 -0
- package/dist/process/stderr-buffer.d.ts +11 -0
- package/dist/process/stderr-buffer.d.ts.map +1 -0
- package/dist/process/stderr-buffer.js +23 -0
- package/dist/process/stderr-buffer.js.map +1 -0
- package/dist/process/supervisor.d.ts +27 -0
- package/dist/process/supervisor.d.ts.map +1 -0
- package/dist/process/supervisor.js +76 -0
- package/dist/process/supervisor.js.map +1 -0
- package/dist/providers/acp-presets/index.d.ts +3 -0
- package/dist/providers/acp-presets/index.d.ts.map +1 -0
- package/dist/providers/acp-presets/index.js +2 -0
- package/dist/providers/acp-presets/index.js.map +1 -0
- package/dist/providers/acp-presets/provider.d.ts +114 -0
- package/dist/providers/acp-presets/provider.d.ts.map +1 -0
- package/dist/providers/acp-presets/provider.js +172 -0
- package/dist/providers/acp-presets/provider.js.map +1 -0
- package/dist/providers/claude/detect.d.ts +35 -0
- package/dist/providers/claude/detect.d.ts.map +1 -0
- package/dist/providers/claude/detect.js +159 -0
- package/dist/providers/claude/detect.js.map +1 -0
- package/dist/providers/claude/index.d.ts +4 -0
- package/dist/providers/claude/index.d.ts.map +1 -0
- package/dist/providers/claude/index.js +206 -0
- package/dist/providers/claude/index.js.map +1 -0
- package/dist/providers/claude/launch-plan.d.ts +5 -0
- package/dist/providers/claude/launch-plan.d.ts.map +1 -0
- package/dist/providers/claude/launch-plan.js +38 -0
- package/dist/providers/claude/launch-plan.js.map +1 -0
- package/dist/providers/claude/parser.d.ts +3 -0
- package/dist/providers/claude/parser.d.ts.map +1 -0
- package/dist/providers/claude/parser.js +41 -0
- package/dist/providers/claude/parser.js.map +1 -0
- package/dist/providers/codex/detect.d.ts +31 -0
- package/dist/providers/codex/detect.d.ts.map +1 -0
- package/dist/providers/codex/detect.js +280 -0
- package/dist/providers/codex/detect.js.map +1 -0
- package/dist/providers/codex/index.d.ts +4 -0
- package/dist/providers/codex/index.d.ts.map +1 -0
- package/dist/providers/codex/index.js +383 -0
- package/dist/providers/codex/index.js.map +1 -0
- package/dist/providers/codex/launch-plan.d.ts +3 -0
- package/dist/providers/codex/launch-plan.d.ts.map +1 -0
- package/dist/providers/codex/launch-plan.js +40 -0
- package/dist/providers/codex/launch-plan.js.map +1 -0
- package/dist/providers/codex/parser.d.ts +32 -0
- package/dist/providers/codex/parser.d.ts.map +1 -0
- package/dist/providers/codex/parser.js +187 -0
- package/dist/providers/codex/parser.js.map +1 -0
- package/dist/providers/codex/reasoning.d.ts +2 -0
- package/dist/providers/codex/reasoning.d.ts.map +1 -0
- package/dist/providers/codex/reasoning.js +12 -0
- package/dist/providers/codex/reasoning.js.map +1 -0
- package/dist/providers/fake/index.d.ts +2 -0
- package/dist/providers/fake/index.d.ts.map +1 -0
- package/dist/providers/fake/index.js +2 -0
- package/dist/providers/fake/index.js.map +1 -0
- package/dist/providers/fake/provider.d.ts +8 -0
- package/dist/providers/fake/provider.d.ts.map +1 -0
- package/dist/providers/fake/provider.js +73 -0
- package/dist/providers/fake/provider.js.map +1 -0
- package/dist/providers/generic-acp/index.d.ts +2 -0
- package/dist/providers/generic-acp/index.d.ts.map +1 -0
- package/dist/providers/generic-acp/index.js +2 -0
- package/dist/providers/generic-acp/index.js.map +1 -0
- package/dist/providers/generic-acp/provider.d.ts +8 -0
- package/dist/providers/generic-acp/provider.d.ts.map +1 -0
- package/dist/providers/generic-acp/provider.js +93 -0
- package/dist/providers/generic-acp/provider.js.map +1 -0
- package/dist/providers/hermes/index.d.ts +2 -0
- package/dist/providers/hermes/index.d.ts.map +1 -0
- package/dist/providers/hermes/index.js +2 -0
- package/dist/providers/hermes/index.js.map +1 -0
- package/dist/providers/hermes/provider.d.ts +2 -0
- package/dist/providers/hermes/provider.d.ts.map +1 -0
- package/dist/providers/hermes/provider.js +2 -0
- package/dist/providers/hermes/provider.js.map +1 -0
- package/dist/providers/install.d.ts +87 -0
- package/dist/providers/install.d.ts.map +1 -0
- package/dist/providers/install.js +289 -0
- package/dist/providers/install.js.map +1 -0
- package/dist/providers/kimi/index.d.ts +2 -0
- package/dist/providers/kimi/index.d.ts.map +1 -0
- package/dist/providers/kimi/index.js +2 -0
- package/dist/providers/kimi/index.js.map +1 -0
- package/dist/providers/kimi/provider.d.ts +2 -0
- package/dist/providers/kimi/provider.d.ts.map +1 -0
- package/dist/providers/kimi/provider.js +2 -0
- package/dist/providers/kimi/provider.js.map +1 -0
- package/dist/providers/kiro/index.d.ts +2 -0
- package/dist/providers/kiro/index.d.ts.map +1 -0
- package/dist/providers/kiro/index.js +2 -0
- package/dist/providers/kiro/index.js.map +1 -0
- package/dist/providers/kiro/provider.d.ts +2 -0
- package/dist/providers/kiro/provider.d.ts.map +1 -0
- package/dist/providers/kiro/provider.js +2 -0
- package/dist/providers/kiro/provider.js.map +1 -0
- package/dist/runtime/control-plane.d.ts +4 -0
- package/dist/runtime/control-plane.d.ts.map +1 -0
- package/dist/runtime/control-plane.js +2 -0
- package/dist/runtime/control-plane.js.map +1 -0
- package/dist/runtime/create-runtime.d.ts +44 -0
- package/dist/runtime/create-runtime.d.ts.map +1 -0
- package/dist/runtime/create-runtime.js +445 -0
- package/dist/runtime/create-runtime.js.map +1 -0
- package/dist/runtime/detection-cache.d.ts +6 -0
- package/dist/runtime/detection-cache.d.ts.map +1 -0
- package/dist/runtime/detection-cache.js +15 -0
- package/dist/runtime/detection-cache.js.map +1 -0
- package/dist/runtime/provider-registry.d.ts +7 -0
- package/dist/runtime/provider-registry.d.ts.map +1 -0
- package/dist/runtime/provider-registry.js +19 -0
- package/dist/runtime/provider-registry.js.map +1 -0
- package/dist/skills/cleanup.d.ts +2 -0
- package/dist/skills/cleanup.d.ts.map +1 -0
- package/dist/skills/cleanup.js +5 -0
- package/dist/skills/cleanup.js.map +1 -0
- package/dist/skills/materialize.d.ts +3 -0
- package/dist/skills/materialize.d.ts.map +1 -0
- package/dist/skills/materialize.js +38 -0
- package/dist/skills/materialize.js.map +1 -0
- package/dist/skills/prompt-injection.d.ts +13 -0
- package/dist/skills/prompt-injection.d.ts.map +1 -0
- package/dist/skills/prompt-injection.js +34 -0
- package/dist/skills/prompt-injection.js.map +1 -0
- package/dist/testing/conformance.d.ts +12 -0
- package/dist/testing/conformance.d.ts.map +1 -0
- package/dist/testing/conformance.js +55 -0
- package/dist/testing/conformance.js.map +1 -0
- package/dist/testing/fake-acp-peer.d.ts +13 -0
- package/dist/testing/fake-acp-peer.d.ts.map +1 -0
- package/dist/testing/fake-acp-peer.js +72 -0
- package/dist/testing/fake-acp-peer.js.map +1 -0
- package/dist/testing/fake-provider.d.ts +8 -0
- package/dist/testing/fake-provider.d.ts.map +1 -0
- package/dist/testing/fake-provider.js +12 -0
- package/dist/testing/fake-provider.js.map +1 -0
- package/dist/testing/fixtures.d.ts +3 -0
- package/dist/testing/fixtures.d.ts.map +1 -0
- package/dist/testing/fixtures.js +6 -0
- package/dist/testing/fixtures.js.map +1 -0
- package/dist/testing/index.d.ts +6 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +5 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/transports/acp/acp-client.d.ts +4 -0
- package/dist/transports/acp/acp-client.d.ts.map +1 -0
- package/dist/transports/acp/acp-client.js +283 -0
- package/dist/transports/acp/acp-client.js.map +1 -0
- package/dist/transports/acp/acp-jsonrpc.d.ts +7 -0
- package/dist/transports/acp/acp-jsonrpc.d.ts.map +1 -0
- package/dist/transports/acp/acp-jsonrpc.js +27 -0
- package/dist/transports/acp/acp-jsonrpc.js.map +1 -0
- package/dist/transports/acp/acp-models.d.ts +11 -0
- package/dist/transports/acp/acp-models.d.ts.map +1 -0
- package/dist/transports/acp/acp-models.js +95 -0
- package/dist/transports/acp/acp-models.js.map +1 -0
- package/dist/transports/acp/acp-permissions.d.ts +5 -0
- package/dist/transports/acp/acp-permissions.d.ts.map +1 -0
- package/dist/transports/acp/acp-permissions.js +7 -0
- package/dist/transports/acp/acp-permissions.js.map +1 -0
- package/dist/transports/acp/acp-session.d.ts +7 -0
- package/dist/transports/acp/acp-session.d.ts.map +1 -0
- package/dist/transports/acp/acp-session.js +27 -0
- package/dist/transports/acp/acp-session.js.map +1 -0
- package/dist/transports/acp/acp-types.d.ts +28 -0
- package/dist/transports/acp/acp-types.d.ts.map +1 -0
- package/dist/transports/acp/acp-types.js +2 -0
- package/dist/transports/acp/acp-types.js.map +1 -0
- package/dist/transports/jsonl/jsonl-parser.d.ts +5 -0
- package/dist/transports/jsonl/jsonl-parser.d.ts.map +1 -0
- package/dist/transports/jsonl/jsonl-parser.js +27 -0
- package/dist/transports/jsonl/jsonl-parser.js.map +1 -0
- package/dist/transports/jsonl/jsonl-transport.d.ts +4 -0
- package/dist/transports/jsonl/jsonl-transport.d.ts.map +1 -0
- package/dist/transports/jsonl/jsonl-transport.js +81 -0
- package/dist/transports/jsonl/jsonl-transport.js.map +1 -0
- package/dist/transports/plain/plain-transport.d.ts +4 -0
- package/dist/transports/plain/plain-transport.d.ts.map +1 -0
- package/dist/transports/plain/plain-transport.js +52 -0
- package/dist/transports/plain/plain-transport.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { access } from "node:fs/promises";
|
|
2
|
+
import { accessSync, constants } from "node:fs";
|
|
3
|
+
import { delimiter, isAbsolute, join } from "node:path";
|
|
4
|
+
async function isExecutable(filePath) {
|
|
5
|
+
try {
|
|
6
|
+
await access(filePath, constants.X_OK);
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
catch {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
function isExecutableSync(filePath) {
|
|
14
|
+
try {
|
|
15
|
+
accessSync(filePath, constants.X_OK);
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function getCandidates(input) {
|
|
23
|
+
return [input.command, ...(input.fallbackCommands ?? [])];
|
|
24
|
+
}
|
|
25
|
+
export async function resolveCommandExecutable(input) {
|
|
26
|
+
if (input.overridePath) {
|
|
27
|
+
return input.overridePath;
|
|
28
|
+
}
|
|
29
|
+
const commands = getCandidates(input);
|
|
30
|
+
for (const command of commands) {
|
|
31
|
+
if (isAbsolute(command) && (await isExecutable(command))) {
|
|
32
|
+
return command;
|
|
33
|
+
}
|
|
34
|
+
const pathValue = input.env?.PATH ?? process.env.PATH ?? "";
|
|
35
|
+
for (const part of pathValue.split(delimiter).filter(Boolean)) {
|
|
36
|
+
const candidate = join(part, command);
|
|
37
|
+
if (await isExecutable(candidate)) {
|
|
38
|
+
return candidate;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
throw new Error(`Executable not found on PATH: ${commands.join(", ")}`);
|
|
43
|
+
}
|
|
44
|
+
export function resolveCommandExecutableSync(input) {
|
|
45
|
+
if (input.overridePath) {
|
|
46
|
+
return input.overridePath;
|
|
47
|
+
}
|
|
48
|
+
const commands = getCandidates(input);
|
|
49
|
+
for (const command of commands) {
|
|
50
|
+
if (isAbsolute(command) && isExecutableSync(command)) {
|
|
51
|
+
return command;
|
|
52
|
+
}
|
|
53
|
+
const pathValue = input.env?.PATH ?? process.env.PATH ?? "";
|
|
54
|
+
for (const part of pathValue.split(delimiter).filter(Boolean)) {
|
|
55
|
+
const candidate = join(part, command);
|
|
56
|
+
if (isExecutableSync(candidate)) {
|
|
57
|
+
return candidate;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
throw new Error(`Executable not found on PATH: ${commands.join(", ")}`);
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=command-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-resolver.js","sourceRoot":"","sources":["../../src/process/command-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/process/env.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,CAAC,UAAU,EAC1B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,MAAM,CAAC,UAAU,CAKnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/process/env.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,eAAe,CAC7B,OAA0B,EAC1B,SAAkC;IAElC,OAAO;QACL,GAAG,OAAO;QACV,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;KACrB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare class StderrBuffer {
|
|
2
|
+
private readonly maxChars;
|
|
3
|
+
private readonly secrets;
|
|
4
|
+
private value;
|
|
5
|
+
constructor(maxChars?: number, secrets?: string[]);
|
|
6
|
+
append(chunk: string): void;
|
|
7
|
+
clear(): void;
|
|
8
|
+
tail(): string;
|
|
9
|
+
redact(chunk: string): string;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=stderr-buffer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stderr-buffer.d.ts","sourceRoot":"","sources":["../../src/process/stderr-buffer.ts"],"names":[],"mappings":"AAEA,qBAAa,YAAY;IAIrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJ1B,OAAO,CAAC,KAAK,CAAM;gBAGA,QAAQ,SAAS,EACjB,OAAO,GAAE,MAAM,EAAO;IAGzC,MAAM,CAAC,KAAK,EAAE,MAAM;IAIpB,KAAK;IAIL,IAAI;IAIJ,MAAM,CAAC,KAAK,EAAE,MAAM;CAGrB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { redactSecrets } from "../core/redaction.js";
|
|
2
|
+
export class StderrBuffer {
|
|
3
|
+
maxChars;
|
|
4
|
+
secrets;
|
|
5
|
+
value = "";
|
|
6
|
+
constructor(maxChars = 16_000, secrets = []) {
|
|
7
|
+
this.maxChars = maxChars;
|
|
8
|
+
this.secrets = secrets;
|
|
9
|
+
}
|
|
10
|
+
append(chunk) {
|
|
11
|
+
this.value = `${this.value}${this.redact(chunk)}`.slice(-this.maxChars);
|
|
12
|
+
}
|
|
13
|
+
clear() {
|
|
14
|
+
this.value = "";
|
|
15
|
+
}
|
|
16
|
+
tail() {
|
|
17
|
+
return this.value;
|
|
18
|
+
}
|
|
19
|
+
redact(chunk) {
|
|
20
|
+
return redactSecrets(chunk, this.secrets);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=stderr-buffer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stderr-buffer.js","sourceRoot":"","sources":["../../src/process/stderr-buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,OAAO,YAAY;IAIJ;IACA;IAJX,KAAK,GAAG,EAAE,CAAC;IAEnB,YACmB,WAAW,MAAM,EACjB,UAAoB,EAAE;QADtB,aAAQ,GAAR,QAAQ,CAAS;QACjB,YAAO,GAAP,OAAO,CAAe;IACtC,CAAC;IAEJ,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type ChildProcessWithoutNullStreams } from "node:child_process";
|
|
2
|
+
import { StderrBuffer } from "./stderr-buffer.js";
|
|
3
|
+
export type SupervisedProcess = {
|
|
4
|
+
child: ChildProcessWithoutNullStreams;
|
|
5
|
+
stderr: StderrBuffer;
|
|
6
|
+
waitForExit(): Promise<{
|
|
7
|
+
code: number | null;
|
|
8
|
+
signal: NodeJS.Signals | null;
|
|
9
|
+
timedOut: boolean;
|
|
10
|
+
}>;
|
|
11
|
+
};
|
|
12
|
+
export declare function spawnSupervisedProcess(input: {
|
|
13
|
+
command: string;
|
|
14
|
+
args: string[];
|
|
15
|
+
cwd: string;
|
|
16
|
+
env?: Record<string, string>;
|
|
17
|
+
fallbackCommands?: string[];
|
|
18
|
+
keepStdinOpen?: boolean;
|
|
19
|
+
killAfterMs?: number;
|
|
20
|
+
overridePath?: string;
|
|
21
|
+
prompt?: string;
|
|
22
|
+
promptInput?: "stdin" | "argv";
|
|
23
|
+
redactionSecrets?: string[];
|
|
24
|
+
signal?: AbortSignal;
|
|
25
|
+
timeoutMs?: number;
|
|
26
|
+
}): SupervisedProcess;
|
|
27
|
+
//# sourceMappingURL=supervisor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../src/process/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,8BAA8B,CAAC;IACtC,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,IAAI,OAAO,CAAC;QACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;CACJ,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,qBAkFA"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { spawn, } from "node:child_process";
|
|
2
|
+
import { attachAbortSignal } from "./cancellation.js";
|
|
3
|
+
import { resolveCommandExecutableSync } from "./command-resolver.js";
|
|
4
|
+
import { mergeProcessEnv } from "./env.js";
|
|
5
|
+
import { StderrBuffer } from "./stderr-buffer.js";
|
|
6
|
+
export function spawnSupervisedProcess(input) {
|
|
7
|
+
const env = mergeProcessEnv(process.env, input.env);
|
|
8
|
+
const stderr = new StderrBuffer(16_000, [
|
|
9
|
+
...Object.values(input.env ?? {}),
|
|
10
|
+
...(input.redactionSecrets ?? []),
|
|
11
|
+
].filter(Boolean));
|
|
12
|
+
const command = resolveCommandExecutableSync({
|
|
13
|
+
command: input.command,
|
|
14
|
+
env,
|
|
15
|
+
...(input.fallbackCommands ? { fallbackCommands: input.fallbackCommands } : {}),
|
|
16
|
+
...(input.overridePath ? { overridePath: input.overridePath } : {}),
|
|
17
|
+
});
|
|
18
|
+
const child = spawn(command, input.args, {
|
|
19
|
+
cwd: input.cwd,
|
|
20
|
+
env,
|
|
21
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
22
|
+
});
|
|
23
|
+
let timedOut = false;
|
|
24
|
+
let timeout;
|
|
25
|
+
let killFallback;
|
|
26
|
+
child.stdout.setEncoding("utf8");
|
|
27
|
+
child.stderr.setEncoding("utf8");
|
|
28
|
+
child.stderr.on("data", (chunk) => stderr.append(chunk));
|
|
29
|
+
const detachAbort = attachAbortSignal(child, input.signal, input.killAfterMs ? { killAfterMs: input.killAfterMs } : undefined);
|
|
30
|
+
if (input.timeoutMs && input.timeoutMs > 0) {
|
|
31
|
+
timeout = setTimeout(() => {
|
|
32
|
+
timedOut = true;
|
|
33
|
+
if (!child.killed) {
|
|
34
|
+
child.kill("SIGTERM");
|
|
35
|
+
}
|
|
36
|
+
killFallback = setTimeout(() => {
|
|
37
|
+
if (!child.killed) {
|
|
38
|
+
child.kill("SIGKILL");
|
|
39
|
+
}
|
|
40
|
+
}, input.killAfterMs ?? 2_000);
|
|
41
|
+
}, input.timeoutMs);
|
|
42
|
+
}
|
|
43
|
+
function cleanup() {
|
|
44
|
+
detachAbort();
|
|
45
|
+
if (timeout) {
|
|
46
|
+
clearTimeout(timeout);
|
|
47
|
+
}
|
|
48
|
+
if (killFallback) {
|
|
49
|
+
clearTimeout(killFallback);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (input.promptInput === "stdin" && input.prompt && !input.keepStdinOpen) {
|
|
53
|
+
child.stdin.write(input.prompt);
|
|
54
|
+
}
|
|
55
|
+
if (!input.keepStdinOpen) {
|
|
56
|
+
child.stdin.end();
|
|
57
|
+
}
|
|
58
|
+
const processHandle = {
|
|
59
|
+
child,
|
|
60
|
+
stderr,
|
|
61
|
+
waitForExit() {
|
|
62
|
+
return new Promise((resolve, reject) => {
|
|
63
|
+
child.once("error", (error) => {
|
|
64
|
+
cleanup();
|
|
65
|
+
reject(error);
|
|
66
|
+
});
|
|
67
|
+
child.once("close", (code, signal) => {
|
|
68
|
+
cleanup();
|
|
69
|
+
resolve({ code, signal, timedOut });
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
return processHandle;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=supervisor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supervisor.js","sourceRoot":"","sources":["../../src/process/supervisor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { ACP_PROVIDER_SPECS, DEFAULT_LOCAL_AGENT_PROVIDER_IDS, createCursorProvider, createDefaultLocalAgentProviderPlugins, createDevinProvider, createGeminiProvider, createHermesProvider, createKiloProvider, createKimiProvider, createKiroProvider, createKnownAcpProvider, createMistralVibeProvider, createOpenCodeProvider, createQoderProvider, createQwenProvider, cursorProvider, devinProvider, geminiProvider, hermesProvider, kiloProvider, kimiProvider, kiroProvider, mistralVibeProvider, openCodeProvider, qoderProvider, qwenProvider, } from "./provider.js";
|
|
2
|
+
export type { AcpProviderId, AcpProviderSpec } from "./provider.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/acp-presets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,gCAAgC,EAChC,oBAAoB,EACpB,sCAAsC,EACtC,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { ACP_PROVIDER_SPECS, DEFAULT_LOCAL_AGENT_PROVIDER_IDS, createCursorProvider, createDefaultLocalAgentProviderPlugins, createDevinProvider, createGeminiProvider, createHermesProvider, createKiloProvider, createKimiProvider, createKiroProvider, createKnownAcpProvider, createMistralVibeProvider, createOpenCodeProvider, createQoderProvider, createQwenProvider, cursorProvider, devinProvider, geminiProvider, hermesProvider, kiloProvider, kimiProvider, kiroProvider, mistralVibeProvider, openCodeProvider, qoderProvider, qwenProvider, } from "./provider.js";
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/acp-presets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,gCAAgC,EAChC,oBAAoB,EACpB,sCAAsC,EACtC,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,YAAY,GACb,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import type { LocalAgentProviderPlugin } from "../../core/provider-plugin.js";
|
|
2
|
+
export type AcpProviderSpec = {
|
|
3
|
+
id: string;
|
|
4
|
+
displayName: string;
|
|
5
|
+
command: string;
|
|
6
|
+
args: readonly string[];
|
|
7
|
+
binEnvKey: string;
|
|
8
|
+
source: "acp-registry" | "open-design";
|
|
9
|
+
};
|
|
10
|
+
export declare const ACP_PROVIDER_SPECS: readonly [{
|
|
11
|
+
readonly id: "devin";
|
|
12
|
+
readonly displayName: "Devin for Terminal";
|
|
13
|
+
readonly command: "devin";
|
|
14
|
+
readonly args: readonly ["--permission-mode", "dangerous", "--respect-workspace-trust", "false", "acp"];
|
|
15
|
+
readonly binEnvKey: "DEVIN_ACP_BIN";
|
|
16
|
+
readonly source: "open-design";
|
|
17
|
+
}, {
|
|
18
|
+
readonly id: "hermes";
|
|
19
|
+
readonly displayName: "Hermes";
|
|
20
|
+
readonly command: "hermes";
|
|
21
|
+
readonly args: readonly ["acp", "--accept-hooks"];
|
|
22
|
+
readonly binEnvKey: "HERMES_ACP_BIN";
|
|
23
|
+
readonly source: "open-design";
|
|
24
|
+
}, {
|
|
25
|
+
readonly id: "kimi";
|
|
26
|
+
readonly displayName: "Kimi CLI";
|
|
27
|
+
readonly command: "kimi";
|
|
28
|
+
readonly args: readonly ["acp"];
|
|
29
|
+
readonly binEnvKey: "KIMI_ACP_BIN";
|
|
30
|
+
readonly source: "acp-registry";
|
|
31
|
+
}, {
|
|
32
|
+
readonly id: "kiro";
|
|
33
|
+
readonly displayName: "Kiro CLI";
|
|
34
|
+
readonly command: "kiro-cli";
|
|
35
|
+
readonly args: readonly ["acp"];
|
|
36
|
+
readonly binEnvKey: "KIRO_ACP_BIN";
|
|
37
|
+
readonly source: "open-design";
|
|
38
|
+
}, {
|
|
39
|
+
readonly id: "kilo";
|
|
40
|
+
readonly displayName: "Kilo";
|
|
41
|
+
readonly command: "kilo";
|
|
42
|
+
readonly args: readonly ["acp"];
|
|
43
|
+
readonly binEnvKey: "KILO_ACP_BIN";
|
|
44
|
+
readonly source: "acp-registry";
|
|
45
|
+
}, {
|
|
46
|
+
readonly id: "vibe";
|
|
47
|
+
readonly displayName: "Mistral Vibe CLI";
|
|
48
|
+
readonly command: "vibe-acp";
|
|
49
|
+
readonly args: readonly [];
|
|
50
|
+
readonly binEnvKey: "VIBE_ACP_BIN";
|
|
51
|
+
readonly source: "acp-registry";
|
|
52
|
+
}, {
|
|
53
|
+
readonly id: "cursor";
|
|
54
|
+
readonly displayName: "Cursor Agent";
|
|
55
|
+
readonly command: "cursor-agent";
|
|
56
|
+
readonly args: readonly ["acp"];
|
|
57
|
+
readonly binEnvKey: "CURSOR_ACP_BIN";
|
|
58
|
+
readonly source: "acp-registry";
|
|
59
|
+
}, {
|
|
60
|
+
readonly id: "gemini";
|
|
61
|
+
readonly displayName: "Gemini CLI";
|
|
62
|
+
readonly command: "gemini";
|
|
63
|
+
readonly args: readonly ["--acp"];
|
|
64
|
+
readonly binEnvKey: "GEMINI_ACP_BIN";
|
|
65
|
+
readonly source: "acp-registry";
|
|
66
|
+
}, {
|
|
67
|
+
readonly id: "opencode";
|
|
68
|
+
readonly displayName: "OpenCode";
|
|
69
|
+
readonly command: "opencode";
|
|
70
|
+
readonly args: readonly ["acp"];
|
|
71
|
+
readonly binEnvKey: "OPENCODE_ACP_BIN";
|
|
72
|
+
readonly source: "acp-registry";
|
|
73
|
+
}, {
|
|
74
|
+
readonly id: "qoder";
|
|
75
|
+
readonly displayName: "Qoder CLI";
|
|
76
|
+
readonly command: "qodercli";
|
|
77
|
+
readonly args: readonly ["--acp"];
|
|
78
|
+
readonly binEnvKey: "QODER_ACP_BIN";
|
|
79
|
+
readonly source: "acp-registry";
|
|
80
|
+
}, {
|
|
81
|
+
readonly id: "qwen";
|
|
82
|
+
readonly displayName: "Qwen Code";
|
|
83
|
+
readonly command: "qwen";
|
|
84
|
+
readonly args: readonly ["--acp", "--experimental-skills"];
|
|
85
|
+
readonly binEnvKey: "QWEN_ACP_BIN";
|
|
86
|
+
readonly source: "acp-registry";
|
|
87
|
+
}];
|
|
88
|
+
export type AcpProviderId = (typeof ACP_PROVIDER_SPECS)[number]["id"];
|
|
89
|
+
export declare const DEFAULT_LOCAL_AGENT_PROVIDER_IDS: readonly ["codex", "claude", ...("devin" | "hermes" | "kimi" | "kiro" | "kilo" | "vibe" | "cursor" | "gemini" | "opencode" | "qoder" | "qwen")[]];
|
|
90
|
+
export declare function createKnownAcpProvider(providerId: AcpProviderId): LocalAgentProviderPlugin<"local-agent", string>;
|
|
91
|
+
export declare function createDevinProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
92
|
+
export declare function createHermesProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
93
|
+
export declare function createKimiProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
94
|
+
export declare function createKiroProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
95
|
+
export declare function createKiloProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
96
|
+
export declare function createMistralVibeProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
97
|
+
export declare function createCursorProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
98
|
+
export declare function createGeminiProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
99
|
+
export declare function createOpenCodeProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
100
|
+
export declare function createQoderProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
101
|
+
export declare function createQwenProvider(): LocalAgentProviderPlugin<"local-agent", string>;
|
|
102
|
+
export declare function createDefaultLocalAgentProviderPlugins(): LocalAgentProviderPlugin<"local-agent", string>[];
|
|
103
|
+
export declare const devinProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
104
|
+
export declare const hermesProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
105
|
+
export declare const kimiProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
106
|
+
export declare const kiroProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
107
|
+
export declare const kiloProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
108
|
+
export declare const mistralVibeProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
109
|
+
export declare const cursorProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
110
|
+
export declare const geminiProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
111
|
+
export declare const openCodeProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
112
|
+
export declare const qoderProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
113
|
+
export declare const qwenProvider: LocalAgentProviderPlugin<"local-agent", string>;
|
|
114
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/providers/acp-presets/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAK9E,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,GAAG,aAAa,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+FgB,CAAC;AAEhD,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAEtE,eAAO,MAAM,gCAAgC,mJAInC,CAAC;AAOX,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,aAAa,GACxB,wBAAwB,CAAC,aAAa,EAAE,MAAM,CAAC,CAYjD;AAED,wBAAgB,mBAAmB,oDAElC;AAED,wBAAgB,oBAAoB,oDAEnC;AAED,wBAAgB,kBAAkB,oDAEjC;AAED,wBAAgB,kBAAkB,oDAEjC;AAED,wBAAgB,kBAAkB,oDAEjC;AAED,wBAAgB,yBAAyB,oDAExC;AAED,wBAAgB,oBAAoB,oDAEnC;AAED,wBAAgB,oBAAoB,oDAEnC;AAED,wBAAgB,sBAAsB,oDAErC;AAED,wBAAgB,mBAAmB,oDAElC;AAED,wBAAgB,kBAAkB,oDAEjC;AAED,wBAAgB,sCAAsC,IAAI,wBAAwB,CAChF,aAAa,EACb,MAAM,CACP,EAAE,CAMF;AAED,eAAO,MAAM,aAAa,iDAAwB,CAAC;AACnD,eAAO,MAAM,cAAc,iDAAyB,CAAC;AACrD,eAAO,MAAM,YAAY,iDAAuB,CAAC;AACjD,eAAO,MAAM,YAAY,iDAAuB,CAAC;AACjD,eAAO,MAAM,YAAY,iDAAuB,CAAC;AACjD,eAAO,MAAM,mBAAmB,iDAA8B,CAAC;AAC/D,eAAO,MAAM,cAAc,iDAAyB,CAAC;AACrD,eAAO,MAAM,cAAc,iDAAyB,CAAC;AACrD,eAAO,MAAM,gBAAgB,iDAA2B,CAAC;AACzD,eAAO,MAAM,aAAa,iDAAwB,CAAC;AACnD,eAAO,MAAM,YAAY,iDAAuB,CAAC"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { createClaudeProvider } from "../claude/index.js";
|
|
2
|
+
import { createCodexProvider } from "../codex/index.js";
|
|
3
|
+
import { createGenericAcpProvider } from "../generic-acp/provider.js";
|
|
4
|
+
export const ACP_PROVIDER_SPECS = [
|
|
5
|
+
{
|
|
6
|
+
id: "devin",
|
|
7
|
+
displayName: "Devin for Terminal",
|
|
8
|
+
command: "devin",
|
|
9
|
+
args: [
|
|
10
|
+
"--permission-mode",
|
|
11
|
+
"dangerous",
|
|
12
|
+
"--respect-workspace-trust",
|
|
13
|
+
"false",
|
|
14
|
+
"acp",
|
|
15
|
+
],
|
|
16
|
+
binEnvKey: "DEVIN_ACP_BIN",
|
|
17
|
+
source: "open-design",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
id: "hermes",
|
|
21
|
+
displayName: "Hermes",
|
|
22
|
+
command: "hermes",
|
|
23
|
+
args: ["acp", "--accept-hooks"],
|
|
24
|
+
binEnvKey: "HERMES_ACP_BIN",
|
|
25
|
+
source: "open-design",
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
id: "kimi",
|
|
29
|
+
displayName: "Kimi CLI",
|
|
30
|
+
command: "kimi",
|
|
31
|
+
args: ["acp"],
|
|
32
|
+
binEnvKey: "KIMI_ACP_BIN",
|
|
33
|
+
source: "acp-registry",
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
id: "kiro",
|
|
37
|
+
displayName: "Kiro CLI",
|
|
38
|
+
command: "kiro-cli",
|
|
39
|
+
args: ["acp"],
|
|
40
|
+
binEnvKey: "KIRO_ACP_BIN",
|
|
41
|
+
source: "open-design",
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
id: "kilo",
|
|
45
|
+
displayName: "Kilo",
|
|
46
|
+
command: "kilo",
|
|
47
|
+
args: ["acp"],
|
|
48
|
+
binEnvKey: "KILO_ACP_BIN",
|
|
49
|
+
source: "acp-registry",
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
id: "vibe",
|
|
53
|
+
displayName: "Mistral Vibe CLI",
|
|
54
|
+
command: "vibe-acp",
|
|
55
|
+
args: [],
|
|
56
|
+
binEnvKey: "VIBE_ACP_BIN",
|
|
57
|
+
source: "acp-registry",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: "cursor",
|
|
61
|
+
displayName: "Cursor Agent",
|
|
62
|
+
command: "cursor-agent",
|
|
63
|
+
args: ["acp"],
|
|
64
|
+
binEnvKey: "CURSOR_ACP_BIN",
|
|
65
|
+
source: "acp-registry",
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
id: "gemini",
|
|
69
|
+
displayName: "Gemini CLI",
|
|
70
|
+
command: "gemini",
|
|
71
|
+
args: ["--acp"],
|
|
72
|
+
binEnvKey: "GEMINI_ACP_BIN",
|
|
73
|
+
source: "acp-registry",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
id: "opencode",
|
|
77
|
+
displayName: "OpenCode",
|
|
78
|
+
command: "opencode",
|
|
79
|
+
args: ["acp"],
|
|
80
|
+
binEnvKey: "OPENCODE_ACP_BIN",
|
|
81
|
+
source: "acp-registry",
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
id: "qoder",
|
|
85
|
+
displayName: "Qoder CLI",
|
|
86
|
+
command: "qodercli",
|
|
87
|
+
args: ["--acp"],
|
|
88
|
+
binEnvKey: "QODER_ACP_BIN",
|
|
89
|
+
source: "acp-registry",
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
id: "qwen",
|
|
93
|
+
displayName: "Qwen Code",
|
|
94
|
+
command: "qwen",
|
|
95
|
+
args: ["--acp", "--experimental-skills"],
|
|
96
|
+
binEnvKey: "QWEN_ACP_BIN",
|
|
97
|
+
source: "acp-registry",
|
|
98
|
+
},
|
|
99
|
+
];
|
|
100
|
+
export const DEFAULT_LOCAL_AGENT_PROVIDER_IDS = [
|
|
101
|
+
"codex",
|
|
102
|
+
"claude",
|
|
103
|
+
...ACP_PROVIDER_SPECS.map((provider) => provider.id),
|
|
104
|
+
];
|
|
105
|
+
function resolveProviderCommand(spec) {
|
|
106
|
+
const override = process.env[spec.binEnvKey]?.trim();
|
|
107
|
+
return override || spec.command;
|
|
108
|
+
}
|
|
109
|
+
export function createKnownAcpProvider(providerId) {
|
|
110
|
+
const spec = ACP_PROVIDER_SPECS.find((provider) => provider.id === providerId);
|
|
111
|
+
if (!spec) {
|
|
112
|
+
throw new Error(`Unknown ACP provider id: ${providerId}`);
|
|
113
|
+
}
|
|
114
|
+
return createGenericAcpProvider({
|
|
115
|
+
args: [...spec.args],
|
|
116
|
+
command: resolveProviderCommand(spec),
|
|
117
|
+
displayName: spec.displayName,
|
|
118
|
+
providerId: spec.id,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
export function createDevinProvider() {
|
|
122
|
+
return createKnownAcpProvider("devin");
|
|
123
|
+
}
|
|
124
|
+
export function createHermesProvider() {
|
|
125
|
+
return createKnownAcpProvider("hermes");
|
|
126
|
+
}
|
|
127
|
+
export function createKimiProvider() {
|
|
128
|
+
return createKnownAcpProvider("kimi");
|
|
129
|
+
}
|
|
130
|
+
export function createKiroProvider() {
|
|
131
|
+
return createKnownAcpProvider("kiro");
|
|
132
|
+
}
|
|
133
|
+
export function createKiloProvider() {
|
|
134
|
+
return createKnownAcpProvider("kilo");
|
|
135
|
+
}
|
|
136
|
+
export function createMistralVibeProvider() {
|
|
137
|
+
return createKnownAcpProvider("vibe");
|
|
138
|
+
}
|
|
139
|
+
export function createCursorProvider() {
|
|
140
|
+
return createKnownAcpProvider("cursor");
|
|
141
|
+
}
|
|
142
|
+
export function createGeminiProvider() {
|
|
143
|
+
return createKnownAcpProvider("gemini");
|
|
144
|
+
}
|
|
145
|
+
export function createOpenCodeProvider() {
|
|
146
|
+
return createKnownAcpProvider("opencode");
|
|
147
|
+
}
|
|
148
|
+
export function createQoderProvider() {
|
|
149
|
+
return createKnownAcpProvider("qoder");
|
|
150
|
+
}
|
|
151
|
+
export function createQwenProvider() {
|
|
152
|
+
return createKnownAcpProvider("qwen");
|
|
153
|
+
}
|
|
154
|
+
export function createDefaultLocalAgentProviderPlugins() {
|
|
155
|
+
return [
|
|
156
|
+
createCodexProvider(),
|
|
157
|
+
createClaudeProvider(),
|
|
158
|
+
...ACP_PROVIDER_SPECS.map((provider) => createKnownAcpProvider(provider.id)),
|
|
159
|
+
];
|
|
160
|
+
}
|
|
161
|
+
export const devinProvider = createDevinProvider();
|
|
162
|
+
export const hermesProvider = createHermesProvider();
|
|
163
|
+
export const kimiProvider = createKimiProvider();
|
|
164
|
+
export const kiroProvider = createKiroProvider();
|
|
165
|
+
export const kiloProvider = createKiloProvider();
|
|
166
|
+
export const mistralVibeProvider = createMistralVibeProvider();
|
|
167
|
+
export const cursorProvider = createCursorProvider();
|
|
168
|
+
export const geminiProvider = createGeminiProvider();
|
|
169
|
+
export const openCodeProvider = createOpenCodeProvider();
|
|
170
|
+
export const qoderProvider = createQoderProvider();
|
|
171
|
+
export const qwenProvider = createQwenProvider();
|
|
172
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/providers/acp-presets/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { AgentModelOption } from "../../core/provider-plugin.js";
|
|
2
|
+
export declare function detectClaude(options?: {
|
|
3
|
+
command?: string;
|
|
4
|
+
cwd?: string;
|
|
5
|
+
env?: NodeJS.ProcessEnv;
|
|
6
|
+
overridePath?: string;
|
|
7
|
+
}): Promise<{
|
|
8
|
+
authState: "missing";
|
|
9
|
+
configDir: string;
|
|
10
|
+
executablePath: string;
|
|
11
|
+
models: AgentModelOption[];
|
|
12
|
+
skillsDir: string;
|
|
13
|
+
supported: boolean;
|
|
14
|
+
unsupportedReason: string;
|
|
15
|
+
version: string;
|
|
16
|
+
} | {
|
|
17
|
+
authState: "unknown";
|
|
18
|
+
configDir: string;
|
|
19
|
+
executablePath: string;
|
|
20
|
+
models: AgentModelOption[];
|
|
21
|
+
skillsDir: string;
|
|
22
|
+
supported: boolean;
|
|
23
|
+
unsupportedReason: string;
|
|
24
|
+
version: string;
|
|
25
|
+
} | {
|
|
26
|
+
authState: "unknown";
|
|
27
|
+
configDir: string;
|
|
28
|
+
executablePath: string;
|
|
29
|
+
models: AgentModelOption[];
|
|
30
|
+
skillsDir: string;
|
|
31
|
+
supported: boolean;
|
|
32
|
+
version: string;
|
|
33
|
+
unsupportedReason?: undefined;
|
|
34
|
+
}>;
|
|
35
|
+
//# sourceMappingURL=detect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/detect.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AA+GtE,wBAAsB,YAAY,CAAC,OAAO,CAAC,EAAE;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEA"}
|