@tickernelz/paperclip-pro-adapter-kimi-local 2026.925.0
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/LICENSE +22 -0
- package/dist/cli/format-event.d.ts +2 -0
- package/dist/cli/format-event.d.ts.map +1 -0
- package/dist/cli/format-event.js +95 -0
- package/dist/cli/format-event.js.map +1 -0
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +82 -0
- package/dist/index.js.map +1 -0
- package/dist/server/acp.d.ts +19 -0
- package/dist/server/acp.d.ts.map +1 -0
- package/dist/server/acp.js +316 -0
- package/dist/server/acp.js.map +1 -0
- package/dist/server/acp.test.d.ts +2 -0
- package/dist/server/acp.test.d.ts.map +1 -0
- package/dist/server/acp.test.js +57 -0
- package/dist/server/acp.test.js.map +1 -0
- package/dist/server/engine-availability.test.d.ts +2 -0
- package/dist/server/engine-availability.test.d.ts.map +1 -0
- package/dist/server/engine-availability.test.js +41 -0
- package/dist/server/engine-availability.test.js.map +1 -0
- package/dist/server/execute.acp-failure.test.d.ts +2 -0
- package/dist/server/execute.acp-failure.test.d.ts.map +1 -0
- package/dist/server/execute.acp-failure.test.js +22 -0
- package/dist/server/execute.acp-failure.test.js.map +1 -0
- package/dist/server/execute.d.ts +3 -0
- package/dist/server/execute.d.ts.map +1 -0
- package/dist/server/execute.js +630 -0
- package/dist/server/execute.js.map +1 -0
- package/dist/server/execute.test.d.ts +2 -0
- package/dist/server/execute.test.d.ts.map +1 -0
- package/dist/server/execute.test.js +354 -0
- package/dist/server/execute.test.js.map +1 -0
- package/dist/server/index.d.ts +8 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +66 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/parse.d.ts +66 -0
- package/dist/server/parse.d.ts.map +1 -0
- package/dist/server/parse.js +194 -0
- package/dist/server/parse.js.map +1 -0
- package/dist/server/parse.test.d.ts +2 -0
- package/dist/server/parse.test.d.ts.map +1 -0
- package/dist/server/parse.test.js +155 -0
- package/dist/server/parse.test.js.map +1 -0
- package/dist/server/skills.d.ts +4 -0
- package/dist/server/skills.d.ts.map +1 -0
- package/dist/server/skills.js +73 -0
- package/dist/server/skills.js.map +1 -0
- package/dist/server/test.d.ts +3 -0
- package/dist/server/test.d.ts.map +1 -0
- package/dist/server/test.js +306 -0
- package/dist/server/test.js.map +1 -0
- package/dist/server/test.test.d.ts +2 -0
- package/dist/server/test.test.d.ts.map +1 -0
- package/dist/server/test.test.js +126 -0
- package/dist/server/test.test.js.map +1 -0
- package/dist/server/utils.d.ts +2 -0
- package/dist/server/utils.d.ts.map +1 -0
- package/dist/server/utils.js +7 -0
- package/dist/server/utils.js.map +1 -0
- package/dist/ui/build-config.d.ts +3 -0
- package/dist/ui/build-config.d.ts.map +1 -0
- package/dist/ui/build-config.js +79 -0
- package/dist/ui/build-config.js.map +1 -0
- package/dist/ui/build-config.test.d.ts +2 -0
- package/dist/ui/build-config.test.d.ts.map +1 -0
- package/dist/ui/build-config.test.js +73 -0
- package/dist/ui/build-config.test.js.map +1 -0
- package/dist/ui/index.d.ts +3 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +3 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/parse-stdout.d.ts +9 -0
- package/dist/ui/parse-stdout.d.ts.map +1 -0
- package/dist/ui/parse-stdout.js +110 -0
- package/dist/ui/parse-stdout.js.map +1 -0
- package/dist/ui/parse-stdout.test.d.ts +2 -0
- package/dist/ui/parse-stdout.test.d.ts.map +1 -0
- package/dist/ui/parse-stdout.test.js +84 -0
- package/dist/ui/parse-stdout.test.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acp.test.d.ts","sourceRoot":"","sources":["../../src/server/acp.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { buildKimiAcpConfig, nodeVersionMeetsKimiAcpMinimum, resolveKimiExecutionEngine, } from "./acp.js";
|
|
3
|
+
describe("resolveKimiExecutionEngine", () => {
|
|
4
|
+
it("defaults to ACP (non-explicit) when engine is unset", () => {
|
|
5
|
+
expect(resolveKimiExecutionEngine({})).toEqual({ engine: "acp", explicit: false });
|
|
6
|
+
});
|
|
7
|
+
it("honors an explicit engine=acp", () => {
|
|
8
|
+
expect(resolveKimiExecutionEngine({ engine: "acp" })).toEqual({ engine: "acp", explicit: true });
|
|
9
|
+
});
|
|
10
|
+
it("honors an explicit engine=cli", () => {
|
|
11
|
+
expect(resolveKimiExecutionEngine({ engine: "CLI" })).toEqual({ engine: "cli", explicit: true });
|
|
12
|
+
});
|
|
13
|
+
it("treats unknown values as the non-explicit ACP default", () => {
|
|
14
|
+
expect(resolveKimiExecutionEngine({ engine: "nonsense" })).toEqual({ engine: "acp", explicit: false });
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
describe("buildKimiAcpConfig", () => {
|
|
18
|
+
it("targets the kimi agent and derives the `kimi acp` server command from `command`", () => {
|
|
19
|
+
const out = buildKimiAcpConfig({ command: "kimi", cwd: "/work" });
|
|
20
|
+
expect(out.agent).toBe("kimi");
|
|
21
|
+
expect(out.agentCommand).toBe("kimi acp");
|
|
22
|
+
expect(out.mode).toBe("persistent");
|
|
23
|
+
expect(out.cwd).toBe("/work");
|
|
24
|
+
});
|
|
25
|
+
it("prefers an explicit agentCommand override", () => {
|
|
26
|
+
const out = buildKimiAcpConfig({ command: "kimi", agentCommand: "/opt/kimi acp --foo" });
|
|
27
|
+
expect(out.agentCommand).toBe("/opt/kimi acp --foo");
|
|
28
|
+
});
|
|
29
|
+
it("drops the model when it equals the default so ACP uses the agent default", () => {
|
|
30
|
+
const out = buildKimiAcpConfig({ model: "kimi-code/kimi-for-coding" });
|
|
31
|
+
expect("model" in out).toBe(false);
|
|
32
|
+
});
|
|
33
|
+
it("keeps a non-default model", () => {
|
|
34
|
+
const out = buildKimiAcpConfig({ model: "kimi-code/k3" });
|
|
35
|
+
expect(out.model).toBe("kimi-code/k3");
|
|
36
|
+
});
|
|
37
|
+
it("strips CLI-lane effort so ACP is not sent the unsupported `effort` control", () => {
|
|
38
|
+
const out = buildKimiAcpConfig({ model: "kimi-code/k3", effort: "high", thinkingEffort: "high" });
|
|
39
|
+
expect("effort" in out).toBe(false);
|
|
40
|
+
expect("thinkingEffort" in out).toBe(false);
|
|
41
|
+
});
|
|
42
|
+
it("opts into the shared engine's verbose-backend handling", () => {
|
|
43
|
+
const out = buildKimiAcpConfig({ command: "kimi" });
|
|
44
|
+
expect(out.summaryStrategy).toBe("lastOutputSegment");
|
|
45
|
+
expect(out.coalescePlaceholderToolUpdates).toBe(true);
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
describe("nodeVersionMeetsKimiAcpMinimum", () => {
|
|
49
|
+
it("accepts Node >= 20", () => {
|
|
50
|
+
expect(nodeVersionMeetsKimiAcpMinimum("v22.0.0")).toBe(true);
|
|
51
|
+
expect(nodeVersionMeetsKimiAcpMinimum("v20.0.0")).toBe(true);
|
|
52
|
+
});
|
|
53
|
+
it("rejects Node < 20", () => {
|
|
54
|
+
expect(nodeVersionMeetsKimiAcpMinimum("v18.19.0")).toBe(false);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=acp.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acp.test.js","sourceRoot":"","sources":["../../src/server/acp.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine-availability.test.d.ts","sourceRoot":"","sources":["../../src/server/engine-availability.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { resolveKimiExecutionEngineForRun } from "./acp.js";
|
|
3
|
+
import { execute } from "./execute.js";
|
|
4
|
+
import { testEnvironment } from "./test.js";
|
|
5
|
+
const originalVersion = process.version;
|
|
6
|
+
afterEach(() => Object.defineProperty(process, "version", { value: originalVersion }));
|
|
7
|
+
describe("kimi engine availability", () => {
|
|
8
|
+
it.each([undefined, "auto", "acp"])("reports a setup failure for engine=%s without starting a process", async (engine) => {
|
|
9
|
+
Object.defineProperty(process, "version", { value: "v18.0.0" });
|
|
10
|
+
const config = { engine };
|
|
11
|
+
const onSpawn = vi.fn();
|
|
12
|
+
const result = await execute({ config, onSpawn });
|
|
13
|
+
expect(result).toMatchObject({
|
|
14
|
+
exitCode: 1,
|
|
15
|
+
errorCode: "adapter_engine_unavailable",
|
|
16
|
+
errorMessage: expect.stringContaining("Node v18.0.0"),
|
|
17
|
+
resultJson: { executionRecovery: { kind: "bootstrap", providerWorkStarted: false } },
|
|
18
|
+
});
|
|
19
|
+
expect(result.errorMessage).toContain(process.execPath);
|
|
20
|
+
expect(onSpawn).not.toHaveBeenCalled();
|
|
21
|
+
const diagnostic = await testEnvironment({ config });
|
|
22
|
+
expect(diagnostic.status).toBe("fail");
|
|
23
|
+
expect(diagnostic.checks).toContainEqual(expect.objectContaining({
|
|
24
|
+
code: "adapter_engine_unavailable", level: "error",
|
|
25
|
+
}));
|
|
26
|
+
});
|
|
27
|
+
it("does not apply ACP prerequisites to explicitly selected CLI", async () => {
|
|
28
|
+
Object.defineProperty(process, "version", { value: "v18.0.0" });
|
|
29
|
+
await expect(resolveKimiExecutionEngineForRun({ config: { engine: "cli" } }))
|
|
30
|
+
.resolves.toEqual({ engine: "cli", explicit: true });
|
|
31
|
+
});
|
|
32
|
+
it("keeps an unavailable ACP command as a failure, not a CLI selection", async () => {
|
|
33
|
+
Object.defineProperty(process, "version", { value: "v24.11.0" });
|
|
34
|
+
const result = await resolveKimiExecutionEngineForRun({
|
|
35
|
+
config: { agentCommand: "/nonexistent/paperclip-test/acp", command: "/nonexistent/paperclip-test/acp" },
|
|
36
|
+
});
|
|
37
|
+
expect(result.engine).toBe("acp");
|
|
38
|
+
expect(result.unavailableReason).toContain("not available");
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
//# sourceMappingURL=engine-availability.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine-availability.test.js","sourceRoot":"","sources":["../../src/server/engine-availability.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute.acp-failure.test.d.ts","sourceRoot":"","sources":["../../src/server/execute.acp-failure.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
const { executeAcp, runProcess } = vi.hoisted(() => ({
|
|
3
|
+
executeAcp: vi.fn(async () => { throw new Error("ACP session startup failed"); }),
|
|
4
|
+
runProcess: vi.fn(),
|
|
5
|
+
}));
|
|
6
|
+
vi.mock("./acp.js", () => ({
|
|
7
|
+
createKimiAcpExecutor: () => executeAcp,
|
|
8
|
+
resolveKimiExecutionEngineForRun: async () => ({ engine: "acp", explicit: false }),
|
|
9
|
+
}));
|
|
10
|
+
vi.mock("@tickernelz/paperclip-pro-adapter-utils/execution-target", async (importOriginal) => ({
|
|
11
|
+
...await importOriginal(),
|
|
12
|
+
runAdapterExecutionTargetProcess: runProcess,
|
|
13
|
+
}));
|
|
14
|
+
import { execute } from "./execute.js";
|
|
15
|
+
describe("Kimi ACP failure handling", () => {
|
|
16
|
+
it("does not replay a failed default ACP invocation through CLI", async () => {
|
|
17
|
+
await expect(execute({ config: {} })).rejects.toThrow("ACP session startup failed");
|
|
18
|
+
expect(executeAcp).toHaveBeenCalledTimes(1);
|
|
19
|
+
expect(runProcess).not.toHaveBeenCalled();
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=execute.acp-failure.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute.acp-failure.test.js","sourceRoot":"","sources":["../../src/server/execute.acp-failure.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnD,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;CACpB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IACzB,qBAAqB,EAAE,GAAG,EAAE,CAAC,UAAU;IACvC,gCAAgC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;CACnF,CAAC,CAAC,CAAC;AACJ,EAAE,CAAC,IAAI,CAAC,0DAA0D,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;IAC7F,GAAG,MAAM,cAAc,EAA6E;IACpG,gCAAgC,EAAE,UAAU;CAC7C,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAW,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC7F,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/server/execute.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAuL/G,wBAAsB,OAAO,CAAC,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAujB3F"}
|