zcode-acp-server 0.21.4 → 0.23.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/README.md +6 -7
- package/dist/cli.d.ts +8 -5
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +22 -14
- package/dist/cli.js.map +1 -1
- package/dist/config/user-config.d.ts +48 -0
- package/dist/config/user-config.d.ts.map +1 -0
- package/dist/config/user-config.js +101 -0
- package/dist/config/user-config.js.map +1 -0
- package/dist/handlers/session.d.ts +33 -3
- package/dist/handlers/session.d.ts.map +1 -1
- package/dist/handlers/session.js +152 -9
- package/dist/handlers/session.js.map +1 -1
- package/dist/i18n.d.ts +2 -0
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +2 -0
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/remote/config.d.ts +36 -24
- package/dist/remote/config.d.ts.map +1 -1
- package/dist/remote/config.js +70 -36
- package/dist/remote/config.js.map +1 -1
- package/dist/remote/hub-server.d.ts +24 -13
- package/dist/remote/hub-server.d.ts.map +1 -1
- package/dist/remote/hub-server.js +78 -63
- package/dist/remote/hub-server.js.map +1 -1
- package/dist/server.d.ts +22 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +25 -0
- package/dist/server.js.map +1 -1
- package/dist/tui.d.ts +38 -0
- package/dist/tui.d.ts.map +1 -0
- package/dist/tui.js +96 -0
- package/dist/tui.js.map +1 -0
- package/dist/utils.d.ts +8 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +10 -0
- package/dist/utils.js.map +1 -1
- package/docs/CLI.md +33 -76
- package/docs/REMOTE-CLIENTS.md +26 -20
- package/docs/REMOTE.md +62 -23
- package/docs/TROUBLESHOOTING.md +5 -1
- package/docs/adr/0007-unified-cli-entry-and-bin-pruning.md +2 -0
- package/package.json +3 -7
- package/dist/repl/App.d.ts +0 -108
- package/dist/repl/App.d.ts.map +0 -1
- package/dist/repl/App.js +0 -732
- package/dist/repl/App.js.map +0 -1
- package/dist/repl/history.d.ts +0 -25
- package/dist/repl/history.d.ts.map +0 -1
- package/dist/repl/history.js +0 -73
- package/dist/repl/history.js.map +0 -1
- package/dist/repl/hub.d.ts +0 -87
- package/dist/repl/hub.d.ts.map +0 -1
- package/dist/repl/hub.js +0 -188
- package/dist/repl/hub.js.map +0 -1
- package/dist/repl/input-buffer.d.ts +0 -77
- package/dist/repl/input-buffer.d.ts.map +0 -1
- package/dist/repl/input-buffer.js +0 -174
- package/dist/repl/input-buffer.js.map +0 -1
- package/dist/repl/model.d.ts +0 -312
- package/dist/repl/model.d.ts.map +0 -1
- package/dist/repl/model.js +0 -674
- package/dist/repl/model.js.map +0 -1
- package/dist/repl/run.d.ts +0 -12
- package/dist/repl/run.d.ts.map +0 -1
- package/dist/repl/run.js +0 -1245
- package/dist/repl/run.js.map +0 -1
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ The server launches the ZCode headless app-server (`zcode app-server --stdio`) a
|
|
|
13
13
|
|
|
14
14
|
- **Native editor experience** — streaming diffs, permission prompts and plan mode in Zed / JetBrains' own agent panel. No side-by-side terminal.
|
|
15
15
|
- **The official harness, not a reimplementation** — drives the real `zcode app-server`: native tools, skills, MCP and slash commands, auto-compaction, session resume/fork.
|
|
16
|
-
- **Beyond the editor** —
|
|
16
|
+
- **Beyond the editor** — an interactive terminal chat (`zcode-acp`, a [Martty](https://github.com/openma-ai/Martty)-powered TUI, works over SSH), phone/web access to the same sessions (`zcode-acp-remote`), opt-in writes-only sandbox. Credentials stay in `~/.zcode`.
|
|
17
17
|
|
|
18
18
|
Because it drives the real ZCode client, your GLM Coding Plan comes along untouched — current perks (the 150% quota bonus, priority routing over raw API) and the plan's flat-rate economics apply exactly as in the official app. No API keys in editor settings.
|
|
19
19
|
|
|
@@ -142,11 +142,10 @@ the primary client. Discovery API, tunnels, auth, and semantics:
|
|
|
142
142
|
|
|
143
143
|
## Unified CLI (`zcode-acp`)
|
|
144
144
|
|
|
145
|
-
One command for every surface: an interactive terminal chat
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
[docs/CLI.md](docs/CLI.md).
|
|
145
|
+
One command for every surface: an interactive terminal chat TUI (`zcode-acp`,
|
|
146
|
+
powered by Martty), plan quota cards (`zcode-acp quota`, GLM + Opencode Go),
|
|
147
|
+
the remote hub daemon (`zcode-acp hub`), and the stdio server editors invoke
|
|
148
|
+
(`zcode-acp server`). TUI keys and quota setup: [docs/CLI.md](docs/CLI.md).
|
|
150
149
|
|
|
151
150
|
## ACP Registry
|
|
152
151
|
|
|
@@ -204,7 +203,7 @@ See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) for the full architecture docum
|
|
|
204
203
|
- [Protocol](docs/PROTOCOL.md) — ZCode JSON-RPC protocol details
|
|
205
204
|
- [Sandbox](docs/SANDBOX.md) — full sandbox manual (switches, whitelist, popups, verification)
|
|
206
205
|
- [Remote Access](docs/REMOTE.md) — hub, discovery API, tunnels, remote session-create
|
|
207
|
-
- [Unified CLI](docs/CLI.md) —
|
|
206
|
+
- [Unified CLI](docs/CLI.md) — interactive TUI, quota cards, hub/server subcommands
|
|
208
207
|
- [Remote Clients](docs/REMOTE-CLIENTS.md) — remote access integration contract (discovery, transport, recovery)
|
|
209
208
|
- [Replay Guide](docs/REPLAY-GUIDE.md) — building a client UI on tail replay
|
|
210
209
|
- [Development](docs/DEVELOPMENT.md) — local development, debugging, adding extension methods
|
package/dist/cli.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
3
|
* Unified CLI entry (`zcode-acp`). Every operational surface is a subcommand;
|
|
4
|
-
* bare invocation opens the interactive
|
|
5
|
-
* old `zcode-acp-hub` / `zcode-quota` bins were folded in
|
|
6
|
-
* `zcode-acp-server` remains as a bin alias pointing at this
|
|
4
|
+
* bare invocation opens the interactive Martty TUI (ADR-0020). See docs/adr
|
|
5
|
+
* 0007 for why the old `zcode-acp-hub` / `zcode-quota` bins were folded in
|
|
6
|
+
* here and why `zcode-acp-server` remains as a bin alias pointing at this
|
|
7
|
+
* same file.
|
|
7
8
|
*
|
|
8
9
|
* The legacy alias is detected via argv[0]: npm/pnpm install bin names as
|
|
9
10
|
* symlinks, so both `zcode-acp` and `zcode-acp-server` resolve to dist/cli.js
|
|
@@ -14,8 +15,9 @@
|
|
|
14
15
|
export type Invocation = {
|
|
15
16
|
kind: "help";
|
|
16
17
|
} | {
|
|
17
|
-
kind: "
|
|
18
|
+
kind: "tui";
|
|
18
19
|
explicit: boolean;
|
|
20
|
+
check: boolean;
|
|
19
21
|
} | {
|
|
20
22
|
kind: "server";
|
|
21
23
|
} | {
|
|
@@ -34,7 +36,8 @@ export type Invocation = {
|
|
|
34
36
|
*
|
|
35
37
|
* `invokedAs` is basename(argv[1]); `zcode-acp-server` means we were spawned
|
|
36
38
|
* by an editor config that expects the bridge to speak ACP on stdio with no
|
|
37
|
-
* subcommand prefix. Bare `zcode-acp` opens the interactive
|
|
39
|
+
* subcommand prefix. Bare `zcode-acp` opens the interactive Martty TUI;
|
|
40
|
+
* `repl` stays accepted as the old spelling of `tui`.
|
|
38
41
|
*/
|
|
39
42
|
export declare function resolveInvocation(invokedAs: string, argv: readonly string[]): Invocation;
|
|
40
43
|
//# sourceMappingURL=cli.d.ts.map
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;GAWG;AAWH,sFAAsF;AACtF,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GACf;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAErC;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAsBxF"}
|
package/dist/cli.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
3
|
* Unified CLI entry (`zcode-acp`). Every operational surface is a subcommand;
|
|
4
|
-
* bare invocation opens the interactive
|
|
5
|
-
* old `zcode-acp-hub` / `zcode-quota` bins were folded in
|
|
6
|
-
* `zcode-acp-server` remains as a bin alias pointing at this
|
|
4
|
+
* bare invocation opens the interactive Martty TUI (ADR-0020). See docs/adr
|
|
5
|
+
* 0007 for why the old `zcode-acp-hub` / `zcode-quota` bins were folded in
|
|
6
|
+
* here and why `zcode-acp-server` remains as a bin alias pointing at this
|
|
7
|
+
* same file.
|
|
7
8
|
*
|
|
8
9
|
* The legacy alias is detected via argv[0]: npm/pnpm install bin names as
|
|
9
10
|
* symlinks, so both `zcode-acp` and `zcode-acp-server` resolve to dist/cli.js
|
|
@@ -15,23 +16,25 @@ import process from "node:process";
|
|
|
15
16
|
import { main as runHub } from "./bin/hub.js";
|
|
16
17
|
import { main as runQuota } from "./bin/quota.js";
|
|
17
18
|
import { main as runServer, runHeadless } from "./index.js";
|
|
18
|
-
import {
|
|
19
|
+
import { checkTuiRuntime, runTui } from "./tui.js";
|
|
19
20
|
import { AGENT_INFO } from "./utils.js";
|
|
20
21
|
/**
|
|
21
22
|
* Map (invoked name, argv) to a subcommand. Pure — exported for unit tests.
|
|
22
23
|
*
|
|
23
24
|
* `invokedAs` is basename(argv[1]); `zcode-acp-server` means we were spawned
|
|
24
25
|
* by an editor config that expects the bridge to speak ACP on stdio with no
|
|
25
|
-
* subcommand prefix. Bare `zcode-acp` opens the interactive
|
|
26
|
+
* subcommand prefix. Bare `zcode-acp` opens the interactive Martty TUI;
|
|
27
|
+
* `repl` stays accepted as the old spelling of `tui`.
|
|
26
28
|
*/
|
|
27
29
|
export function resolveInvocation(invokedAs, argv) {
|
|
28
30
|
if (invokedAs === "zcode-acp-server")
|
|
29
31
|
return { kind: "server" };
|
|
30
32
|
const sub = argv[0];
|
|
31
33
|
if (sub === undefined)
|
|
32
|
-
return { kind: "
|
|
33
|
-
if (sub === "repl" || sub === "tui")
|
|
34
|
-
return { kind: "
|
|
34
|
+
return { kind: "tui", explicit: false, check: false };
|
|
35
|
+
if (sub === "repl" || sub === "tui") {
|
|
36
|
+
return { kind: "tui", explicit: true, check: argv.slice(1).includes("--check") };
|
|
37
|
+
}
|
|
35
38
|
if (sub === "-h" || sub === "--help" || sub === "help") {
|
|
36
39
|
return { kind: "help" };
|
|
37
40
|
}
|
|
@@ -51,11 +54,12 @@ export function resolveInvocation(invokedAs, argv) {
|
|
|
51
54
|
const HELP_TEXT = `Usage: zcode-acp [command] [options]
|
|
52
55
|
|
|
53
56
|
The single entry point for every zcode-acp-server surface. Bare invocation
|
|
54
|
-
opens the interactive
|
|
57
|
+
opens the interactive Martty TUI (agent chat in this terminal).
|
|
55
58
|
|
|
56
59
|
Commands:
|
|
57
|
-
(none) |
|
|
58
|
-
rows,
|
|
60
|
+
(none) | tui Interactive agent chat (Martty TUI): stream output,
|
|
61
|
+
tool rows, model picker, session resume. /exit quits.
|
|
62
|
+
'tui --check' runs a headless wiring check and exits.
|
|
59
63
|
quota [args...] Plan usage cards (was the zcode-quota bin): -w watch,
|
|
60
64
|
-i <sec>, -d detail, -p plain, provider glm|go.
|
|
61
65
|
hub Run the remote-access hub daemon (was zcode-acp-hub;
|
|
@@ -84,13 +88,17 @@ async function main() {
|
|
|
84
88
|
case "help":
|
|
85
89
|
process.stdout.write(HELP_TEXT + "\n");
|
|
86
90
|
return;
|
|
87
|
-
case "
|
|
91
|
+
case "tui":
|
|
92
|
+
if (invocation.check) {
|
|
93
|
+
process.exitCode = (await checkTuiRuntime()) ? 0 : 1;
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
88
96
|
if (process.stdin.isTTY && process.stdout.isTTY) {
|
|
89
|
-
await
|
|
97
|
+
await runTui();
|
|
90
98
|
return;
|
|
91
99
|
}
|
|
92
100
|
if (invocation.explicit) {
|
|
93
|
-
process.stderr.write("zcode-acp: interactive
|
|
101
|
+
process.stderr.write("zcode-acp: interactive TUI needs a TTY — run it from a terminal.\n");
|
|
94
102
|
process.exit(2);
|
|
95
103
|
}
|
|
96
104
|
// Bare invocation without a TTY falls back to the stdio server: on
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global user configuration (~/.config/zcode-acp/config.json).
|
|
3
|
+
*
|
|
4
|
+
* The file is the AUTHORITATIVE source for user preferences that must not
|
|
5
|
+
* depend on how a process was launched: the hub daemon is idle-exited and
|
|
6
|
+
* re-spawned by whichever bridge needs it next, so its birth env rotates
|
|
7
|
+
* between GUI-launched editors (no shell rc vars) and interactive shells.
|
|
8
|
+
* Every read is live (no cache) — editing the file takes effect on the next
|
|
9
|
+
* use (e.g. the next remote incubation) without restarting the hub.
|
|
10
|
+
*
|
|
11
|
+
* Precedence everywhere: config file > environment variable > built-in
|
|
12
|
+
* default. Env vars remain fully supported as a fallback for setups without
|
|
13
|
+
* a file and for one-off/test overrides of unspecified fields.
|
|
14
|
+
*
|
|
15
|
+
* Per-process plumbing (ZCODE_ACP_REMOTE_ORIGIN, _PIN_CWD,
|
|
16
|
+
* ZCODE_ACP_RESUME_SESSION) is deliberately NOT file-configurable — those
|
|
17
|
+
* carry per-request/per-role state, not user preference.
|
|
18
|
+
*/
|
|
19
|
+
/** Terminal incubation preferences for remote session-create (ADR-0016). */
|
|
20
|
+
export interface TerminalPrefs {
|
|
21
|
+
/** false → remote session-create stays headless (no visible window). */
|
|
22
|
+
enabled?: boolean;
|
|
23
|
+
/** Terminal app name (Terminal, iTerm, wezterm, kitty, alacritty, ghostty, …). */
|
|
24
|
+
app?: string;
|
|
25
|
+
/** Shell command template; `{script}` is replaced with the quoted script path. */
|
|
26
|
+
command?: string;
|
|
27
|
+
}
|
|
28
|
+
/** The `remote` section of the user config file. */
|
|
29
|
+
export interface RemoteUserConfig {
|
|
30
|
+
enabled?: boolean;
|
|
31
|
+
token?: string;
|
|
32
|
+
hubPort?: number;
|
|
33
|
+
hubHost?: string;
|
|
34
|
+
bridgePort?: number;
|
|
35
|
+
terminal?: TerminalPrefs;
|
|
36
|
+
}
|
|
37
|
+
export interface UserConfig {
|
|
38
|
+
remote?: RemoteUserConfig;
|
|
39
|
+
}
|
|
40
|
+
/** Resolve the config file path: $XDG_CONFIG_HOME/zcode-acp or ~/.config/zcode-acp. */
|
|
41
|
+
export declare function userConfigPath(env?: NodeJS.ProcessEnv): string;
|
|
42
|
+
/**
|
|
43
|
+
* Read and validate the user config. Best-effort: a missing file is the
|
|
44
|
+
* normal no-file path ({}), anything unreadable/malformed warns once and
|
|
45
|
+
* reads as absent so the env fallback keeps the process working.
|
|
46
|
+
*/
|
|
47
|
+
export declare function loadUserConfig(env?: NodeJS.ProcessEnv): UserConfig;
|
|
48
|
+
//# sourceMappingURL=user-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-config.d.ts","sourceRoot":"","sources":["../../src/config/user-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAQH,4EAA4E;AAC5E,MAAM,WAAW,aAAa;IAC5B,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oDAAoD;AACpD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AAED,uFAAuF;AACvF,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAG3E;AAMD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,UAAU,CAqD/E"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global user configuration (~/.config/zcode-acp/config.json).
|
|
3
|
+
*
|
|
4
|
+
* The file is the AUTHORITATIVE source for user preferences that must not
|
|
5
|
+
* depend on how a process was launched: the hub daemon is idle-exited and
|
|
6
|
+
* re-spawned by whichever bridge needs it next, so its birth env rotates
|
|
7
|
+
* between GUI-launched editors (no shell rc vars) and interactive shells.
|
|
8
|
+
* Every read is live (no cache) — editing the file takes effect on the next
|
|
9
|
+
* use (e.g. the next remote incubation) without restarting the hub.
|
|
10
|
+
*
|
|
11
|
+
* Precedence everywhere: config file > environment variable > built-in
|
|
12
|
+
* default. Env vars remain fully supported as a fallback for setups without
|
|
13
|
+
* a file and for one-off/test overrides of unspecified fields.
|
|
14
|
+
*
|
|
15
|
+
* Per-process plumbing (ZCODE_ACP_REMOTE_ORIGIN, _PIN_CWD,
|
|
16
|
+
* ZCODE_ACP_RESUME_SESSION) is deliberately NOT file-configurable — those
|
|
17
|
+
* carry per-request/per-role state, not user preference.
|
|
18
|
+
*/
|
|
19
|
+
import { readFileSync } from "node:fs";
|
|
20
|
+
import { homedir } from "node:os";
|
|
21
|
+
import path from "node:path";
|
|
22
|
+
import { warn } from "../utils.js";
|
|
23
|
+
/** Resolve the config file path: $XDG_CONFIG_HOME/zcode-acp or ~/.config/zcode-acp. */
|
|
24
|
+
export function userConfigPath(env = process.env) {
|
|
25
|
+
const base = (env.XDG_CONFIG_HOME ?? "").trim() || path.join(homedir(), ".config");
|
|
26
|
+
return path.join(base, "zcode-acp", "config.json");
|
|
27
|
+
}
|
|
28
|
+
function isPlainObject(v) {
|
|
29
|
+
return typeof v === "object" && v !== null && !Array.isArray(v);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Read and validate the user config. Best-effort: a missing file is the
|
|
33
|
+
* normal no-file path ({}), anything unreadable/malformed warns once and
|
|
34
|
+
* reads as absent so the env fallback keeps the process working.
|
|
35
|
+
*/
|
|
36
|
+
export function loadUserConfig(env = process.env) {
|
|
37
|
+
const file = userConfigPath(env);
|
|
38
|
+
let raw;
|
|
39
|
+
try {
|
|
40
|
+
raw = readFileSync(file, "utf8");
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
return {}; // missing (or unreadable) file — env fallback applies
|
|
44
|
+
}
|
|
45
|
+
let parsed;
|
|
46
|
+
try {
|
|
47
|
+
parsed = JSON.parse(raw);
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
warn(`config: ${file} is not valid JSON — ignoring (${e instanceof Error ? e.message : String(e)})`);
|
|
51
|
+
return {};
|
|
52
|
+
}
|
|
53
|
+
if (!isPlainObject(parsed)) {
|
|
54
|
+
warn(`config: ${file} is not a JSON object — ignoring`);
|
|
55
|
+
return {};
|
|
56
|
+
}
|
|
57
|
+
const remote = parsed["remote"];
|
|
58
|
+
if (remote === undefined)
|
|
59
|
+
return {};
|
|
60
|
+
if (!isPlainObject(remote)) {
|
|
61
|
+
warn(`config: "remote" in ${file} is not an object — ignoring the section`);
|
|
62
|
+
return {};
|
|
63
|
+
}
|
|
64
|
+
const out = {};
|
|
65
|
+
if (typeof remote["enabled"] === "boolean")
|
|
66
|
+
out.enabled = remote["enabled"];
|
|
67
|
+
if (typeof remote["token"] === "string" && remote["token"].trim())
|
|
68
|
+
out.token = remote["token"].trim();
|
|
69
|
+
for (const key of ["hubPort", "bridgePort"]) {
|
|
70
|
+
const v = remote[key];
|
|
71
|
+
if (v === undefined)
|
|
72
|
+
continue;
|
|
73
|
+
if (typeof v !== "number" || !Number.isInteger(v) || v < 1 || v > 65535) {
|
|
74
|
+
warn(`config: remote.${key}=${JSON.stringify(v)} is not a valid port — ignoring`);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
out[key] = v;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (typeof remote["hubHost"] === "string" && remote["hubHost"].trim()) {
|
|
81
|
+
out.hubHost = remote["hubHost"].trim();
|
|
82
|
+
}
|
|
83
|
+
const terminal = remote["terminal"];
|
|
84
|
+
if (isPlainObject(terminal)) {
|
|
85
|
+
const t = {};
|
|
86
|
+
if (typeof terminal["enabled"] === "boolean")
|
|
87
|
+
t.enabled = terminal["enabled"];
|
|
88
|
+
if (typeof terminal["app"] === "string" && terminal["app"].trim())
|
|
89
|
+
t.app = terminal["app"].trim();
|
|
90
|
+
if (typeof terminal["command"] === "string" && terminal["command"].trim()) {
|
|
91
|
+
t.command = terminal["command"].trim();
|
|
92
|
+
}
|
|
93
|
+
if (Object.keys(t).length > 0)
|
|
94
|
+
out.terminal = t;
|
|
95
|
+
}
|
|
96
|
+
else if (terminal !== undefined) {
|
|
97
|
+
warn(`config: remote.terminal in ${file} is not an object — ignoring`);
|
|
98
|
+
}
|
|
99
|
+
return { remote: out };
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=user-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-config.js","sourceRoot":"","sources":["../../src/config/user-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,13 +14,41 @@ import type * as acp from "@agentclientprotocol/sdk";
|
|
|
14
14
|
import { EventStreamListener, TurnMonitor } from "../backend/listener.js";
|
|
15
15
|
import { ProjectionDiffer } from "../translators/index.js";
|
|
16
16
|
import type { PendingTurn, ZcodeAcpServer } from "../server.js";
|
|
17
|
+
/**
|
|
18
|
+
* Read and consume the boot-resume session id: the first `session/new` after
|
|
19
|
+
* process start claims it, the env is deleted so later `session/new` calls
|
|
20
|
+
* (the TUI's /new) create fresh sessions. Whitespace-only counts as unset.
|
|
21
|
+
*/
|
|
22
|
+
export declare function consumeBootResumeTarget(): string | null;
|
|
23
|
+
/**
|
|
24
|
+
* Banner-handshake trigger for a boot-resumed TUI (ADR-0017 follow-up).
|
|
25
|
+
* Martty's welcome banner paints INSTEAD of the transcript and only dives
|
|
26
|
+
* when text is submitted — so a boot-resumed TUI showed its replayed history
|
|
27
|
+
* only after the user's first message. The hub therefore also incubates the
|
|
28
|
+
* resume TUI with `DSH_TUI_AUTOPROMPT=<this string>`: martty auto-submits it
|
|
29
|
+
* at boot (banner dives immediately, the text queues until the boot bind),
|
|
30
|
+
* and the prompt path answers it with a one-line ack instead of a model
|
|
31
|
+
* turn — scoped to the booting connection (see bootResumeTriggerConnection).
|
|
32
|
+
* Plain text on purpose: a leading `/` would route through martty's
|
|
33
|
+
* slash dispatch (whose gates run before agent capabilities are known) and
|
|
34
|
+
* `!` would run a local shell command.
|
|
35
|
+
*/
|
|
36
|
+
export declare const BOOT_RESUME_TRIGGER = "resume session";
|
|
17
37
|
/**
|
|
18
38
|
* `session/new` → local placeholder id. The real zcode `session/create` is
|
|
19
39
|
* deferred to first use (`ensureRealSession`) so an editor startup that never
|
|
20
40
|
* sends a message leaves no empty session in the backend or the App's task
|
|
21
41
|
* index. The created session uses mode yolo (hardcoded).
|
|
42
|
+
*
|
|
43
|
+
* Exception — boot-resume interception (ADR-0017, amended by ADR-0020): when
|
|
44
|
+
* the hub incubated this bridge for a specific conversation
|
|
45
|
+
* (ZCODE_ACP_RESUME_SESSION), the TUI client's opening `session/new` is
|
|
46
|
+
* served as a `session/load` of that id instead. The client adopts the
|
|
47
|
+
* resumed conversation with zero client-side support. A failed load falls
|
|
48
|
+
* back to a fresh session so the window still lands on a usable prompt
|
|
49
|
+
* (the retired in-house REPL had the same fallback).
|
|
22
50
|
*/
|
|
23
|
-
export declare function newSession(server: ZcodeAcpServer, params: acp.NewSessionRequest): Promise<acp.NewSessionResponse>;
|
|
51
|
+
export declare function newSession(server: ZcodeAcpServer, params: acp.NewSessionRequest, client?: acp.AgentContext): Promise<acp.NewSessionResponse>;
|
|
24
52
|
/**
|
|
25
53
|
* Materialize a lazy `session/new` placeholder into a real backend session on
|
|
26
54
|
* first use (prompt / set_config_option / extension methods). Idempotent:
|
|
@@ -37,7 +65,9 @@ export declare function resumeSession(server: ZcodeAcpServer, params: acp.Resume
|
|
|
37
65
|
* `session/load` → zcode `session/resume` + stream conversation history back as
|
|
38
66
|
* `session/update` notifications (text/reasoning/简化 tool_call).
|
|
39
67
|
*/
|
|
40
|
-
export declare function loadSession(server: ZcodeAcpServer, params: acp.LoadSessionRequest, cx: acp.AgentContext
|
|
68
|
+
export declare function loadSession(server: ZcodeAcpServer, params: acp.LoadSessionRequest, cx: acp.AgentContext, opts?: {
|
|
69
|
+
replayHistory?: boolean;
|
|
70
|
+
}): Promise<acp.LoadSessionResponse>;
|
|
41
71
|
/**
|
|
42
72
|
* `session/prompt` → subscribe-before-send, run the event-driven turn loop.
|
|
43
73
|
*
|
|
@@ -52,7 +82,7 @@ export declare function loadSession(server: ZcodeAcpServer, params: acp.LoadSess
|
|
|
52
82
|
* the continuation for real, and only the session/load replay later surfaced
|
|
53
83
|
* the orphaned continuation bubble.
|
|
54
84
|
*/
|
|
55
|
-
export declare function prompt(server: ZcodeAcpServer, params: acp.PromptRequest, cx: acp.AgentContext, requestId: number | string): Promise<acp.PromptResponse>;
|
|
85
|
+
export declare function prompt(server: ZcodeAcpServer, params: acp.PromptRequest, cx: acp.AgentContext, requestId: number | string, client?: acp.AgentContext): Promise<acp.PromptResponse>;
|
|
56
86
|
/**
|
|
57
87
|
* `session/set_config_option` → dispatch model/mode/thought and emit the
|
|
58
88
|
* resulting config_option_update (+ current_mode_update for mode).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAuB1E,OAAO,EAML,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":"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"}
|