sessionpipe 0.9.0 → 0.11.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.
Files changed (58) hide show
  1. package/README.md +99 -2
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +8737 -4942
  4. package/dist/cli.js.map +4 -4
  5. package/dist/control/aliases.d.ts +5 -0
  6. package/dist/control/aliases.d.ts.map +1 -1
  7. package/dist/control/autoupdate.d.ts +1 -18
  8. package/dist/control/autoupdate.d.ts.map +1 -1
  9. package/dist/control/cli.d.ts +5 -1
  10. package/dist/control/cli.d.ts.map +1 -1
  11. package/dist/control/daemon.d.ts +107 -12
  12. package/dist/control/daemon.d.ts.map +1 -1
  13. package/dist/control/files.d.ts +6 -4
  14. package/dist/control/files.d.ts.map +1 -1
  15. package/dist/control/local.d.ts +24 -0
  16. package/dist/control/local.d.ts.map +1 -1
  17. package/dist/control/pair.d.ts +15 -23
  18. package/dist/control/pair.d.ts.map +1 -1
  19. package/dist/control/pool.d.ts +49 -0
  20. package/dist/control/pool.d.ts.map +1 -0
  21. package/dist/control/route.d.ts +2 -2
  22. package/dist/control/route.d.ts.map +1 -1
  23. package/dist/control/sdk.d.ts.map +1 -1
  24. package/dist/control/store.d.ts +21 -2
  25. package/dist/control/store.d.ts.map +1 -1
  26. package/dist/help.d.ts.map +1 -1
  27. package/dist/hook.d.ts.map +1 -1
  28. package/dist/hook.js +43 -1
  29. package/dist/hook.js.map +2 -2
  30. package/dist/index.js +1179 -847
  31. package/dist/index.js.map +4 -4
  32. package/dist/pool/cli.d.ts +39 -0
  33. package/dist/pool/cli.d.ts.map +1 -0
  34. package/dist/pool/credentials.d.ts +44 -0
  35. package/dist/pool/credentials.d.ts.map +1 -0
  36. package/dist/pool/import.d.ts +23 -0
  37. package/dist/pool/import.d.ts.map +1 -0
  38. package/dist/pool/index.d.ts +138 -0
  39. package/dist/pool/index.d.ts.map +1 -0
  40. package/dist/pool/install.d.ts +46 -0
  41. package/dist/pool/install.d.ts.map +1 -0
  42. package/dist/pool/login.d.ts +27 -0
  43. package/dist/pool/login.d.ts.map +1 -0
  44. package/dist/pool/policy.d.ts +100 -0
  45. package/dist/pool/policy.d.ts.map +1 -0
  46. package/dist/pool/server.d.ts +76 -0
  47. package/dist/pool/server.d.ts.map +1 -0
  48. package/dist/pool/store.d.ts +89 -0
  49. package/dist/pool/store.d.ts.map +1 -0
  50. package/dist/pool/types.d.ts +92 -0
  51. package/dist/pool/types.d.ts.map +1 -0
  52. package/dist/run.d.ts +14 -1
  53. package/dist/run.d.ts.map +1 -1
  54. package/dist/update.d.ts +1 -7
  55. package/dist/update.d.ts.map +1 -1
  56. package/dist/worker.js +1182 -850
  57. package/dist/worker.js.map +4 -4
  58. package/package.json +1 -1
@@ -1,9 +1,14 @@
1
+ import { type StartOptions } from "./store.js";
1
2
  export interface Alias {
2
3
  /** The harness's own session id. */
3
4
  id: string;
4
5
  /** The folder the session runs in (the start's). */
5
6
  cwd: string;
6
7
  at: string;
8
+ /** What the start ran with (CONTROL.md §6, Options); absent for an alias recorded
9
+ * before 0.10.0, whose later runs keep the machine's mode. */
10
+ permission?: StartOptions["permission"];
11
+ model?: string;
7
12
  }
8
13
  export type Aliases = Record<string, Alias>;
9
14
  export declare const aliasFile: (controlDir: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../../src/control/aliases.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,KAAK;IACpB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;CACZ;AACD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5C,eAAO,MAAM,SAAS,eAAgB,MAAM,KAAG,MAA+C,CAAC;AAE/F,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcjD;AAED,mEAAmE;AACnE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAQ7D;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIrF"}
1
+ {"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../../src/control/aliases.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,YAAY,CAAC;AAE/D,MAAM,WAAW,KAAK;IACpB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX;mEAC+D;IAC/D,UAAU,CAAC,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5C,eAAO,MAAM,SAAS,eAAgB,MAAM,KAAG,MAA+C,CAAC;AAE/F,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcjD;AAED,mEAAmE;AACnE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAQ7D;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIrF"}
@@ -1,7 +1,5 @@
1
- import { spawn } from "node:child_process";
2
1
  import type { Config } from "@sessionpipe/core";
3
- /** EX_TEMPFAIL: "start me again, on the code now on disk". */
4
- export declare const UPDATE_EXIT = 75;
2
+ export { supervise, UPDATE_EXIT } from "@sessionpipe/core/version";
5
3
  export declare const DAY_MS: number;
6
4
  /** What the daemon remembers about updating, in state/control/update.json. */
7
5
  export interface UpdateRecord {
@@ -138,19 +136,4 @@ export declare class AutoUpdater {
138
136
  private apply;
139
137
  private installAndRestart;
140
138
  }
141
- /** The parent left behind when no service manager will restart the daemon: runs
142
- * `control run` as a child with the same env and output, starts it again when it exits
143
- * UPDATE_EXIT (an update) or fails (after 5 s, like the service files), and exits
144
- * with it when it exits cleanly or is told to stop. */
145
- export declare function supervise(o: {
146
- node: string;
147
- args: string[];
148
- env: NodeJS.ProcessEnv;
149
- log: (line: string) => void;
150
- spawn?: typeof spawn;
151
- exit?: (code: number) => void;
152
- failDelayMs?: number;
153
- }): {
154
- stop: (sig?: NodeJS.Signals) => void;
155
- };
156
139
  //# sourceMappingURL=autoupdate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"autoupdate.d.ts","sourceRoot":"","sources":["../../src/control/autoupdate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autoupdate.d.ts","sourceRoot":"","sources":["../../src/control/autoupdate.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type Tier } from "@sessionpipe/core";
2
- export declare const CONTROL_HELP = " sessionpipe control pair <receiver> [--folder DIR]\u2026 [--mode safe|auto] [--tier 0-3] [--token T] [--name N] [--no-service]\n sessionpipe control mode auto|safe (how sessions run when you message them)\n sessionpipe control folders [add|remove DIR\u2026] (where sessions you message may run)\n sessionpipe control status | keys [remove <id>] | off [<receiver>] | run\n sessionpipe wait [--session <harness>:<id>] (a session runs this in the background)";
2
+ export declare const CONTROL_HELP = " sessionpipe control pair <receiver> [--folder DIR]\u2026 [--mode safe|auto|inherit] [--tier 0-3] [--token T] [--name N] [--no-service]\n sessionpipe control mode auto|safe|inherit (how sessions run when you message them)\n sessionpipe control folders [add|remove DIR\u2026] (where sessions you message may run)\n sessionpipe control status | keys [remove <id>] | off [<receiver>] | run\n sessionpipe wait [--session <harness>:<id>] (a session runs this in the background)";
3
3
  /** `control folders add|remove`: the new list, and a line per folder saying what became
4
4
  * of it. A folder to add must exist and be a project, never the home folder or above
5
5
  * it (pair's rule); folders are compared as real paths, as the daemon compares them. */
@@ -12,6 +12,10 @@ export declare function controlMain(argv: string[], out: (s?: string) => void, d
12
12
  export declare function enabledHarnesses(harnesses: Record<string, {
13
13
  enabled?: boolean;
14
14
  }>): string[];
15
+ /** The pool's fake upstream for tests, and only there: honoured under vitest and only
16
+ * when it is a loopback address, so no plist, shell profile or .envrc in the daemon's
17
+ * real environment can send pooled requests (bearers included) anywhere else. */
18
+ export declare function testUpstream(env: NodeJS.ProcessEnv): string | null;
15
19
  export declare function waitMain(argv: string[], out: (s?: string) => void): Promise<void>;
16
20
  /** Give a sink the key a receiver handed over at pairing. A sink for the receiver that
17
21
  * has a key keeps it ("kept"); one without a key gets this one ("filled"); otherwise a
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/control/cli.ts"],"names":[],"mappings":"AAKA,OAAO,EAUL,KAAK,IAAI,EAEV,MAAM,mBAAmB,CAAC;AAiB3B,eAAO,MAAM,YAAY,0eAIkE,CAAC;AAiC5F;;yFAEyF;AACzF,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EAAE,EACjB,EAAE,EAAE,KAAK,GAAG,QAAQ,EACpB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,SAAe,GAClB;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAkCvC;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuJ3G;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,MAAM,EAAE,CAK3F;AA+GD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CASvF;AAED;;oCAEoC;AACpC,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CASjH"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/control/cli.ts"],"names":[],"mappings":"AAKA,OAAO,EAWL,KAAK,IAAI,EAEV,MAAM,mBAAmB,CAAC;AA0B3B,eAAO,MAAM,YAAY,kfAIkE,CAAC;AAuD5F;;yFAEyF;AACzF,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EAAE,EACjB,EAAE,EAAE,KAAK,GAAG,QAAQ,EACpB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,SAAe,GAClB;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAkCvC;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkK3G;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,MAAM,EAAE,CAK3F;AAuJD;;kFAEkF;AAClF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,IAAI,CASlE;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CASvF;AAED;;oCAEoC;AACpC,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CASjH"}
@@ -1,6 +1,17 @@
1
1
  import { claudeControl, type HarnessAccount, type Login, type RunOptions, type RunResult } from "@sessionpipe/core";
2
+ import { type RunLevel, type StartPermission } from "@sessionpipe/core/control";
3
+ import type { Pool } from "../pool/index.js";
4
+ import { type DeliveryMode } from "./route.js";
2
5
  import { type ControlConfig, type PairedReceiver } from "./store.js";
3
6
  type Caps = claudeControl.Caps;
7
+ /** One harness's entry in the hello's `start` (CONTROL.md §2). */
8
+ export interface StartEntry {
9
+ permissions: StartPermission[];
10
+ /** What a start that names none gets: a level, or `inherit` on an inherit machine. */
11
+ permission: RunLevel;
12
+ models?: string[];
13
+ any_model?: boolean;
14
+ }
4
15
  /** The message as the receiver carried it (control.json). */
5
16
  export interface Carried {
6
17
  id: string;
@@ -22,7 +33,8 @@ export interface Carried {
22
33
  at: string;
23
34
  expires_at: string;
24
35
  }
25
- /** A session the Agent SDK holds for the daemon (sdk.ts; a fake in tests). */
36
+ /** A session the daemon holds: through the Agent SDK (sdk.ts; a fake in tests), or an
37
+ * ACP agent it runs (core's acp-control.ts), which says so in `mode`. */
26
38
  export interface SdkSession {
27
39
  /** Deliver one message; resolves with the agent's reply when the turn ends. */
28
40
  send(text: string): Promise<{
@@ -33,12 +45,19 @@ export interface SdkSession {
33
45
  close(): void;
34
46
  readonly busy: boolean;
35
47
  readonly lastUsed: number;
48
+ /** How a message through it is acked; `sdk` when unsaid. */
49
+ readonly mode?: DeliveryMode;
50
+ /** Gone for good (the process left): drop it, a later message reopens the session. */
51
+ readonly closed?: boolean;
36
52
  }
37
53
  export interface SdkHost {
38
54
  start(o: {
39
55
  session: string;
40
56
  cwd: string;
41
- mode: "safe" | "auto";
57
+ /** The level the session runs at (CONTROL.md §3.1), as its `permissionMode`; none in inherit. */
58
+ permission: RunLevel;
59
+ /** The model, when the start asked for one. */
60
+ model?: string;
42
61
  configDir?: string;
43
62
  allowedTools?: string[];
44
63
  }): SdkSession;
@@ -58,12 +77,20 @@ export interface DaemonDeps {
58
77
  agy?: () => string | null;
59
78
  /** Is Codex signed in as this process sees it? Asked before a run. */
60
79
  codexLogin?: (bin: string) => Promise<Login>;
80
+ /** An ACP agent's CLI on this machine, by harness name (core's findAcpAgent; null:
81
+ * not installed). Absent: this daemon drives none of them. */
82
+ acp?: (harness: string) => {
83
+ bin: string;
84
+ args: string[];
85
+ } | null;
61
86
  /** The harnesses every hello advertises (core's drivableHarnesses); by default, the
62
87
  * ones the finders above find. */
63
88
  harnesses?: () => string[];
64
89
  /** The harness accounts every hello names; by default, those signed in across
65
90
  * `claudeDirs`, read again for each hello. */
66
91
  accounts?: () => HarnessAccount[];
92
+ /** The models a hello suggests for Codex; by default, its own models cache. */
93
+ codexModels?: () => string[];
67
94
  run: (bin: string, args: string[], o: RunOptions) => Promise<RunResult>;
68
95
  sdk?: SdkHost | null;
69
96
  /** How long to follow a live session's turn for an in-place answer (tests shorten it). */
@@ -88,6 +115,10 @@ export interface DaemonDeps {
88
115
  updateStatus?: () => unknown;
89
116
  /** Another daemon took the socket path: this one has stopped and should exit. */
90
117
  onLostSocket?: () => void;
118
+ /** The machine's account pool (pool/index.ts): its listener runs in this process,
119
+ * every hello carries its state, and `pool` commands and socket ops go to it.
120
+ * Absent: this daemon can't pool (a `pool` command is `unsupported`). */
121
+ pool?: Pool;
91
122
  }
92
123
  /** Another daemon already answers on the socket: this one must not start. */
93
124
  export declare class DaemonRunning extends Error {
@@ -125,9 +156,22 @@ export interface Status {
125
156
  nonces: number;
126
157
  acks_pending: number;
127
158
  delivered: Record<string, number>;
159
+ /** What a start may carry per harness, as the last hello said (CONTROL.md §2). */
160
+ start: Record<string, StartEntry>;
128
161
  /** Null when the daemon could restart now (nothing in hand); otherwise what it holds. */
129
162
  busy: string | null;
130
163
  update?: unknown;
164
+ /** The account pool, when this daemon has one (`sessionpipe pool` has the whole picture). */
165
+ pool?: {
166
+ on: boolean;
167
+ port: number;
168
+ listening: boolean;
169
+ accounts: number;
170
+ with_room: number;
171
+ in_flight: number;
172
+ /** Another daemon answers on the pool's port; this one doesn't listen. */
173
+ another_daemon?: true;
174
+ };
131
175
  }
132
176
  /** The machine's own caps (CONTROL.md §6 `start`): every command is the owner's,
133
177
  * signed, but a burst of them must not start a crowd of agents. A start beyond the
@@ -201,6 +245,13 @@ export declare class ControlDaemon {
201
245
  stop(o?: {
202
246
  leaveSocket?: boolean;
203
247
  }): Promise<void>;
248
+ /** The pool's listener and its idle usage poll run exactly while the pool is on
249
+ * (PRIVACY.md §3: the vendor is called only for a pool the person turned on):
250
+ * up after `on`, down after `off`, whatever accounts exist. Idempotent either way. */
251
+ private syncPool;
252
+ /** The pool changed what a hello says (pool/index.ts `onChange`): say it now, as a
253
+ * folder change does. */
254
+ poolChanged(): void;
204
255
  /** Null when nothing is in hand, so a restart would interrupt nothing; otherwise what
205
256
  * is. Parked waiters don't count: a waiter reconnects in silence (CONTROL.md §8). A
206
257
  * session someone is working in mid-turn does (a restart forgets it is mid-turn, so a
@@ -216,6 +267,7 @@ export declare class ControlDaemon {
216
267
  private checkSocket;
217
268
  reload(cfg: ControlConfig): void;
218
269
  status(): Status;
270
+ private poolSummary;
219
271
  /** One daemon per machine: a daemon that answers on the socket keeps it, and this
220
272
  * one doesn't start. A socket file nobody answers on is a dead daemon's; it goes. */
221
273
  private listen;
@@ -242,12 +294,14 @@ export declare class ControlDaemon {
242
294
  * session's own transcript (Claude Code, Codex), the folder its start recorded, or
243
295
  * the hooks' cwd, never the command. */
244
296
  private place;
245
- /** A Codex or Antigravity session: one the daemon started is its alias (the harness's
246
- * id and the start's folder); one the hooks reported is Codex's rollout (its
247
- * `session_meta` cwd) or, for Antigravity, the folder its hooks gave. */
297
+ /** A Codex, Antigravity or ACP-driven session: one the daemon started is its alias
298
+ * (the harness's id and the start's folder); one the hooks reported is Codex's
299
+ * rollout (its `session_meta` cwd) or, for the others, the folder its hooks gave. */
248
300
  private placeDriven;
249
301
  /** The folder the worker recorded for a session from its hooks (run.ts, facts). */
250
302
  private factsCwd;
303
+ /** A driven harness, as the person knows it. */
304
+ private label;
251
305
  private aliasOf;
252
306
  /** The harness revealed its own id for a session the command named: from now on that
253
307
  * is where the command's id leads (aliases.ts). Written before anything else reads it. */
@@ -257,13 +311,42 @@ export declare class ControlDaemon {
257
311
  private driver;
258
312
  /** Who is signed in here, for hello. A bad .claude.json names nobody, never fails a hello. */
259
313
  private accounts;
260
- /** The harnesses this machine can run a message in, for hello. */
314
+ /** The harnesses this machine can run a message in, for hello: at most
315
+ * HELLO_HARNESSES_MAX, the three with their own drivers first. */
261
316
  private harnesses;
317
+ /** The caps a new Claude Code session is started with: the Agent SDK's when the
318
+ * daemon has it, else what this machine's `claude --help` lists. */
319
+ private startCaps;
320
+ /** What a start may carry for one harness here (CONTROL.md §2 `start`), capped by the
321
+ * machine's mode; null when it takes neither option, or when a start without one
322
+ * would be refused (an auto machine whose Claude Code has no auto mode). */
323
+ private startEntry;
324
+ /** The hello's `start`: an entry for each harness it lists that takes options. */
325
+ private startOptions;
326
+ /** The options a start runs with, or the refusal (CONTROL.md §5 step 8): a level the
327
+ * machine offers for that harness, never above its mode, and a model only where the
328
+ * harness takes one. Never another level or model than the one asked for. */
329
+ private startChoice;
330
+ /** Why a harness has no such level here, though the machine's mode would allow it. */
331
+ private levelMissing;
332
+ /** The options a later run of a session gets: the narrower of what its start recorded
333
+ * and what the machine's mode means now, with the recorded model. A session with no
334
+ * record (the hooks reported it, or it predates 0.10.0) runs at the machine's mode. */
335
+ private laterOptions;
336
+ /** What the acks carry as `applied`: the model only when one was asked for. */
337
+ private applied;
338
+ /** A failed run that asked for a model, put down to the model: acked with code `model`. */
339
+ private failedRun;
340
+ /** The real folder a command or a session names, when it is one this machine allows:
341
+ * absolute, or under this user's home as `~/…` (a start's `cwd` may say either). */
262
342
  private allowed;
263
343
  private permission;
264
344
  private cancel;
265
345
  private view;
266
346
  private prompt;
347
+ /** One message through a held session; one whose process left is let go of, so the
348
+ * next message reopens the session instead of finding it closed. */
349
+ private sendHeld;
267
350
  /** A turn message whose Stop never took it: route again, now that it isn't mid-turn. */
268
351
  private reroute;
269
352
  /** Jobs for one session (and its copy) run one at a time, in order. */
@@ -296,8 +379,6 @@ export declare class ControlDaemon {
296
379
  /** The answer so far, sent as a `progress` ack: whole, with a rising seq, at most
297
380
  * one in flight. Fire-and-forget — the final ack carries everything. */
298
381
  private answerStream;
299
- /** How a headless run prints: streamed where this Claude Code can, else one JSON at the end. */
300
- private outputArgs;
301
382
  /** Mark a session as held by one of the daemon's runs while `fn` runs. */
302
383
  private owning;
303
384
  private limits;
@@ -305,13 +386,27 @@ export declare class ControlDaemon {
305
386
  private slot;
306
387
  private startSession;
307
388
  private startOne;
389
+ /** A Claude Code session the daemon starts: what it runs with, for its later runs. */
390
+ private recordStart;
308
391
  /** A new Codex or Antigravity session: the harness picks its id, and the start's id
309
392
  * becomes its name (aliases.ts) as soon as the run says what it picked. */
310
393
  private startDriven;
311
- /** A start's text, with its files (CONTROL.md §6) fetched, checked and written under
312
- * `cwd` first — every check in §5 passed and the nonce is recorded by now, so the
313
- * `taken` ack is out and the download may take its time. Null when a file failed:
314
- * the command is acked `failed` with code `file`, nothing is kept, no session starts. */
394
+ /** A new session of an ACP agent (CONTROL.md §6): the agent's CLI as a child the
395
+ * daemon keeps, the start's id as the session's name the moment the agent names its
396
+ * own (aliases.ts), and the first turn through it. Acked `delivered` in `api` mode;
397
+ * later messages go through the same process while it is held. */
398
+ private startAcp;
399
+ /** The next message for an ACP-driven session no process holds: the agent run again
400
+ * and the session reopened in it (`session/load`), then held like a new one. Acked
401
+ * `resume`, as any cold start. An agent that can't reopen one is `unsupported`. */
402
+ private resumeAcp;
403
+ private openAcp;
404
+ /** A start's or a prompt's text, with its files (CONTROL.md §6) fetched, checked and
405
+ * written under `cwd` first (a prompt's in a folder of its own, named by its signed
406
+ * nonce) — every check in §5 passed and the nonce is recorded by now, so the `taken`
407
+ * ack is out and the download may take its time. Null when a file failed: the command
408
+ * is acked `failed` with code `file`, nothing is kept, no session starts and no
409
+ * message is delivered. */
315
410
  private attached;
316
411
  private closeIdleSdk;
317
412
  }
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/control/daemon.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,aAAa,EAGb,KAAK,cAAc,EAGnB,KAAK,KAAK,EAEV,KAAK,UAAU,EACf,KAAK,SAAS,EAIf,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EAGL,KAAK,aAAa,EAGlB,KAAK,cAAc,EAIpB,MAAM,YAAY,CAAC;AAcpB,KAAK,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;AA4D/B,6DAA6D;AAC7D,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClF,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,8EAA8E;AAC9E,MAAM,WAAW,UAAU;IACzB,+EAA+E;IAC/E,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/D,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AACD,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,CAAC,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;KACzB,GAAG,UAAU,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACjD;0DACsD;IACtD,KAAK,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC1B,sEAAsE;IACtE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7C;uCACmC;IACnC,SAAS,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;IAC3B;mDAC+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,cAAc,EAAE,CAAC;IAClC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,GAAG,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,0FAA0F;IAC1F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB;;yFAEqF;IACrF,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C;iEAC6D;IAC7D,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B;oCACgC;IAChC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;IAC1B,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC;IAC7B,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,6EAA6E;AAC7E,qBAAa,aAAc,SAAQ,KAAK;IAC1B,QAAQ,CAAC,KAAK,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAA9D,YAAqB,KAAK,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EAI7D;CACF;AAgCD,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE;QACT,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,gFAAgF;QAChF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,gFAAgF;QAChF,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,EAAE,CAAC;IACJ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9C,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,yFAAyF;IACzF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;sFAEsF;AACtF;;;8CAG8C;AAC9C,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAKrD;AAED,eAAO,MAAM,MAAM;aAAK,eAAe,EAAE,CAAC;aAAE,YAAY,EAAE,EAAE;aAAE,QAAQ,EAAE,CAAC;CAAW,CAAC;AAErF,qBAAa,aAAa;IAiDtB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAnDvB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA2B;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA+C;IAC1E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8B;IACrD,sFAAsF;IACtF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;IAC5D;;;mFAG+E;IAC/E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAClD,wFAAwF;IACxF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAC1E,yEAAyE;IACzE,OAAO,CAAC,MAAM,CAAyD;IACvE,iEAAiE;IACjE,OAAO,CAAC,SAAS,CAAK;IACtB;qEACiE;IACjE,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAA+B;IAC/C;gDAC4C;IAC5C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,4FAA4F;IAC5F,OAAO,CAAC,OAAO,CAAU;IACzB;;qFAEiF;IACjF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoC;IAElE,YACU,GAAG,EAAE,aAAa,EACT,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,EAMlC;IAIK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB3B;IAED;;+CAE2C;IACrC,IAAI,CAAC,CAAC,GAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B3D;IAED;;;;2EAIuE;IACvE,IAAI,IAAI,MAAM,GAAG,IAAI,CAYpB;IAED;mFAC+E;IAC/E,WAAW,IAAI,IAAI,CAQlB;IAED,YAAY,IAAI,IAAI,CAInB;IAED;mFAC+E;YACjE,WAAW;IAwBzB,MAAM,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAQ/B;IAED,MAAM,IAAI,MAAM,CA2Bf;IAID;0FACsF;YACxE,MAAM;IAoBpB,OAAO,CAAC,MAAM;IAuBd,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,MAAM;IAgBd,OAAO,CAAC,SAAS;IA0DjB,iDAAiD;IACjD,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,OAAO;YA+BD,QAAQ;IA6JtB,OAAO,CAAC,aAAa;IASrB,+FAA+F;YACjF,mBAAmB;IAmBjC,OAAO,CAAC,UAAU;YAIJ,QAAQ;YAgCR,IAAI;IAiBlB,OAAO,CAAC,MAAM;IAgBd,OAAO,CAAC,QAAQ,CAAS;YACX,SAAS;IA+BjB,MAAM,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCzD;YAEa,cAAc;IAgD5B;;6CAEyC;IACzC,OAAO,CAAC,KAAK;IAmBb;;8EAE0E;IAC1E,OAAO,CAAC,WAAW;IAwBnB,mFAAmF;IACnF,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,OAAO;IAIf;+FAC2F;IAC3F,OAAO,CAAC,QAAQ;IAchB,gGAAgG;IAChG,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,MAAM;IA0Bd,8FAA8F;IAC9F,OAAO,CAAC,QAAQ;IAQhB,kEAAkE;IAClE,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,OAAO;IAmBf,OAAO,CAAC,UAAU;YAwBJ,MAAM;IAYpB,OAAO,CAAC,IAAI;YA+CE,MAAM;IAsDpB,wFAAwF;YAC1E,OAAO;IAarB,uEAAuE;IACvE,OAAO,CAAC,MAAM;IAUd;8BAC0B;YACZ,YAAY;IAQ1B,qFAAqF;YACvE,QAAQ;IAWtB,4FAA4F;YAC9E,aAAa;IAe3B;6EACyE;YAC3D,YAAY;IAqB1B;;;6DAGyD;YAC3C,KAAK;YAkDL,QAAQ;IA6DtB,OAAO,CAAC,OAAO;IAwBf,OAAO,CAAC,MAAM;IA6Bd,mFAAmF;IACnF,OAAO,CAAC,UAAU;IAOlB;;;2FAGuF;IACvF,OAAO,CAAC,YAAY;IA8BpB;6EACyE;IACzE,OAAO,CAAC,YAAY;IAgBpB,gGAAgG;IAChG,OAAO,CAAC,UAAU;IAMlB,0EAA0E;YAC5D,MAAM;IAYpB,OAAO,CAAC,MAAM;IAUd,mFAAmF;YACrE,IAAI;YAWJ,YAAY;YAwBZ,QAAQ;IAsEtB;gFAC4E;YAC9D,WAAW;IAgCzB;;;8FAG0F;YAC5E,QAAQ;IA4BtB,OAAO,CAAC,YAAY;CAWrB"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/control/daemon.ts"],"names":[],"mappings":"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"}
@@ -21,11 +21,13 @@ export interface FetchOptions {
21
21
  * Every failure is a FileProblem naming the file. */
22
22
  export declare function fetchFiles(files: ControlFile[], o: FetchOptions): Promise<Fetched[]>;
23
23
  /**
24
- * Write the checked files to <cwd>/.sessionpipe/files/<session>/ and answer their
25
- * paths relative to cwd. `cwd` is already resolved (realpath) and allowed.
26
- * On any problem everything written here is removed and FileProblem thrown.
24
+ * Write the checked files to <cwd>/.sessionpipe/files/<session>/ (a start's, which must
25
+ * be new) or <session>/<message>/ (a prompt's: the session's folder may be there, the
26
+ * message's must be new), and answer their paths relative to cwd. `cwd` is already
27
+ * resolved (realpath) and allowed. On any problem everything written here is removed
28
+ * and FileProblem thrown.
27
29
  */
28
- export declare function writeFiles(cwd: string, session: string, files: Fetched[]): string[];
30
+ export declare function writeFiles(cwd: string, session: string, files: Fetched[], message?: string): string[];
29
31
  /** 183402 → "179 KB", 1258291 → "1.2 MB" (units of 1024). */
30
32
  export declare function humanSize(n: number): string;
31
33
  /** The command's text followed by the list of files the session can read. */
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/control/files.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,QAAa,CAAC;AAE3C,wFAAwF;AACxF,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAKD;sDACsD;AACtD,wBAAsB,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAa1F;AA+CD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CA4BnF;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI3C;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAG/E"}
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/control/files.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,QAAa,CAAC;AAE3C,wFAAwF;AACxF,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAKD;sDACsD;AACtD,wBAAsB,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAa1F;AA+CD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAiCrG;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI3C;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAG/E"}
@@ -33,7 +33,19 @@ export type LocalRequest =
33
33
  /** `sessionpipe update` installed a new copy: restart onto it once nothing is in hand. */
34
34
  | {
35
35
  op: "restart";
36
+ }
37
+ /** `sessionpipe pool …` while the daemon runs: the daemon holds the pool's engine
38
+ * (pins, credentials, the listener), so a change goes through it. `status` reads;
39
+ * the rest are CONTROL.md §6's actions, plus `import` (reads this machine's own
40
+ * Claude Code logins, which no receiver may ask for). */
41
+ | {
42
+ op: "pool";
43
+ action: PoolOp;
44
+ account?: string;
45
+ order?: string[];
46
+ code?: string;
36
47
  };
48
+ export type PoolOp = "status" | "on" | "off" | "enable" | "disable" | "remove" | "order" | "refresh" | "login.begin" | "login.complete" | "import";
37
49
  export type LocalReply = {
38
50
  op: "message";
39
51
  text: string;
@@ -58,6 +70,18 @@ export type LocalReply = {
58
70
  } | {
59
71
  op: "status";
60
72
  status: unknown;
73
+ }
74
+ /** A pool op's answer: the ack it would earn (CONTROL.md §6) and the pool as it now
75
+ * stands (`status`: the façade's PoolStatus; `detail`: the summary line, or a
76
+ * login.begin's "<pending id> <URL>"). */
77
+ | {
78
+ op: "pool";
79
+ outcome: "delivered" | "refused" | "failed" | "unsupported";
80
+ code?: string;
81
+ detail: string;
82
+ status?: unknown;
83
+ /** `import`: what was added and what was left out (control/pool.ts Imported). */
84
+ imported?: unknown;
61
85
  };
62
86
  /** Where the daemon listens. `SESSIONPIPE_SOCKET` overrides (tests). */
63
87
  export declare function socketPath(state: string, env?: NodeJS.ProcessEnv): string;
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/control/local.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,YAAY;AACtB,8DAA8D;AAC5D;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE;AAC/C,yDAAyD;GACvD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE;AAClD,sFAAsF;GACpF;IAAE,EAAE,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;AACzE,yEAAyE;GACvE;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE;AACpF,oCAAoC;GAClC;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE;AAClB,0FAA0F;GACxF;IAAE,EAAE,EAAE,SAAS,CAAA;CAAE,CAAC;AAEtB,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;AAChB,qEAAqE;GACnE;IAAE,EAAE,EAAE,UAAU,CAAA;CAAE,GAClB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtC,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAItF;AAED;sFACsF;AACtF,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2BlG"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/control/local.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,YAAY;AACtB,8DAA8D;AAC5D;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE;AAC/C,yDAAyD;GACvD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE;AAClD,sFAAsF;GACpF;IAAE,EAAE,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;AACzE,yEAAyE;GACvE;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE;AACpF,oCAAoC;GAClC;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE;AAClB,0FAA0F;GACxF;IAAE,EAAE,EAAE,SAAS,CAAA;CAAE;AACnB;;;0DAG0D;GACxD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtF,MAAM,MAAM,MAAM,GACd,QAAQ,GACR,IAAI,GACJ,KAAK,GACL,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,SAAS,GACT,aAAa,GACb,gBAAgB,GAChB,QAAQ,CAAC;AAEb,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,EAAE,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;AAChB,qEAAqE;GACnE;IAAE,EAAE,EAAE,UAAU,CAAA;CAAE,GAClB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE;AACnC;;2CAE2C;GACzC;IACE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEN,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAItF;AAED;sFACsF;AACtF,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA2BlG"}
@@ -1,5 +1,7 @@
1
1
  import { type HarnessAccount } from "@sessionpipe/core";
2
- import { type ControlConfig } from "./store.js";
2
+ import type { Exec } from "@sessionpipe/core/service";
3
+ import * as core from "@sessionpipe/core/service";
4
+ import { type ControlConfig, type ControlMode } from "./store.js";
3
5
  export interface PairOptions {
4
6
  url: string;
5
7
  /** The person's sink token for this receiver (from `sink add`, or --token). Null:
@@ -7,7 +9,7 @@ export interface PairOptions {
7
9
  * is the whole setup (CONTROL.md §2). */
8
10
  token: string | null;
9
11
  folders: string[];
10
- mode: "safe" | "auto";
12
+ mode: ControlMode;
11
13
  name: string;
12
14
  out: (s: string) => void;
13
15
  fetch?: typeof fetch;
@@ -28,8 +30,15 @@ export declare function discover(url: string, f: typeof fetch): Promise<{
28
30
  control: string;
29
31
  rpId: string;
30
32
  open: boolean;
33
+ inherit: boolean;
31
34
  events: string | null;
32
35
  }>;
36
+ /** Why a machine won't run in inherit mode with this receiver (CONTROL.md §2): a
37
+ * receiver that doesn't know the mode would show the machine as safe. */
38
+ export declare const inheritRefused: (url: string) => string;
39
+ /** The paired receivers that don't say they show inherit mode (`control.inherit` in
40
+ * their well-known file), with why. A receiver that can't be read counts as one. */
41
+ export declare function withoutInherit(urls: string[], f?: typeof fetch): Promise<string[]>;
33
42
  /** Pair (or add a key to) this machine with one receiver. Returns the saved config. */
34
43
  export declare function pair(o: PairOptions): Promise<ControlConfig>;
35
44
  /** `control off [<receiver>]`: tell the receiver, forget its token and keys. */
@@ -40,32 +49,15 @@ export declare function off(o: {
40
49
  env?: NodeJS.ProcessEnv;
41
50
  }): Promise<void | ControlConfig>;
42
51
  export declare function removeKey(id: string, env?: NodeJS.ProcessEnv): number;
43
- /** Both files restart the daemon when it exits non-zero; an update exits UPDATE_EXIT
44
- * (75, autoupdate.ts) to come back on the new code. SESSIONPIPE_SERVICE tells the
45
- * daemon which manager that is (files from before it are recognized without it). */
52
+ export { type Exec, ensureLinger } from "@sessionpipe/core/service";
46
53
  export declare function serviceFiles(o: {
47
54
  node: string;
48
55
  cli: string;
49
56
  logDir: string;
50
57
  home?: string;
51
58
  }): {
52
- plist: {
53
- file: string;
54
- body: string;
55
- };
56
- unit: {
57
- file: string;
58
- body: string;
59
- };
60
- };
61
- export type Exec = (cmd: string, args: string[]) => string;
62
- /** A systemd user service stops when its person's last login ends — closing the ssh
63
- * session to a lab workstation or a cloud machine stopped the daemon with it — unless
64
- * the user lingers. `loginctl enable-linger` for yourself needs no root on systemd's
65
- * default policy; where it does, say the one command that does it. */
66
- export declare function ensureLinger(user: string, exec?: Exec): {
67
- on: boolean;
68
- note: string;
59
+ plist: core.ServiceFile;
60
+ unit: core.ServiceFile;
69
61
  };
70
62
  /** Write and start the service for this platform. Returns what it did, in words. */
71
63
  export declare function installService(o: {
@@ -75,5 +67,5 @@ export declare function installService(o: {
75
67
  exec?: Exec;
76
68
  platform?: NodeJS.Platform;
77
69
  }): string;
78
- export declare function uninstallService(env?: NodeJS.ProcessEnv): void;
70
+ export declare function uninstallService(_env?: NodeJS.ProcessEnv): void;
79
71
  //# sourceMappingURL=pair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pair.d.ts","sourceRoot":"","sources":["../../src/control/pair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pair.d.ts","sourceRoot":"","sources":["../../src/control/pair.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import type { ControlCommand } from "@sessionpipe/core/control";
2
+ import { type Pool, type PoolAccount, type PoolStatus } from "../pool/index.js";
3
+ import type { PoolOp } from "./local.js";
4
+ export interface PoolRequest {
5
+ action: PoolOp;
6
+ account?: string;
7
+ order?: string[];
8
+ code?: string;
9
+ }
10
+ /** What `pool add --import` did, without the credentials the façade also returns:
11
+ * those go to the secrets store and nowhere else, the socket included. */
12
+ export interface Imported {
13
+ added: {
14
+ account: PoolAccount;
15
+ dir: string;
16
+ }[];
17
+ skipped: {
18
+ dir: string;
19
+ email?: string;
20
+ why: string;
21
+ }[];
22
+ }
23
+ export type PoolOutcome = {
24
+ outcome: "delivered";
25
+ detail: string;
26
+ status: PoolStatus;
27
+ imported?: Imported;
28
+ } | {
29
+ outcome: "refused" | "failed" | "unsupported";
30
+ code?: string;
31
+ detail: string;
32
+ status?: PoolStatus;
33
+ };
34
+ /** A signed `pool` command's fields, as parseCommand already checked them (the action
35
+ * is one of the spec's, and each action carries exactly its own fields). */
36
+ export declare function poolRequestOf(cmd: ControlCommand): PoolRequest;
37
+ /** Run one request against the façade. `unsupported` when this daemon has no pool;
38
+ * a PoolError becomes the ack its code names (refused: pool_account, pool_order,
39
+ * pool_off; failed: login, pool); anything else that throws is `failed` `pool`.
40
+ * `detail` never carries a token, a code or an email the asker didn't name.
41
+ *
42
+ * `terminal`: the person at the machine asked (the local socket, the CLI). The
43
+ * vendor is then called whether or not the pool is on — signing an account in or
44
+ * reading its usage is theirs to ask for, as `pool add` works while off — where a
45
+ * receiver gets `pool_off` (CONTROL.md §6, PRIVACY.md §3). */
46
+ export declare function runPoolRequest(pool: Pool | undefined, req: PoolRequest, o?: {
47
+ terminal?: boolean;
48
+ }): Promise<PoolOutcome>;
49
+ //# sourceMappingURL=pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/control/pool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAa,KAAK,UAAU,EAAe,MAAM,kBAAkB,CAAC;AACxG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;2EAC2E;AAC3E,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/C,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzD;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,GACjF;IAAE,OAAO,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC;AAE1G;6EAC6E;AAC7E,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,WAAW,CAO9D;AAED;;;;;;;;+DAQ+D;AAC/D,wBAAsB,cAAc,CAClC,IAAI,EAAE,IAAI,GAAG,SAAS,EACtB,GAAG,EAAE,WAAW,EAChB,CAAC,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7B,OAAO,CAAC,WAAW,CAAC,CAoEtB"}
@@ -25,13 +25,13 @@ export type Route = {
25
25
  refused: "no_session";
26
26
  };
27
27
  /** The harnesses the daemon can run a turn of by itself: resume an idle session, start a
28
- * new one (`claude -p`, `codex exec`, `agy -p`). */
28
+ * new one (`claude -p`, `codex exec`, `agy -p`, or any ACP agent as its client). */
29
29
  export declare const HEADLESS: Set<string>;
30
30
  /** Where a prompt (or a start) goes. Never two writers on one transcript: a live
31
31
  * session gets a fork, never a resume. */
32
32
  export declare function routePrompt(s: SessionView): Route;
33
33
  /** How each kind is delivered, before the session's state is looked at. */
34
- export declare function kindPath(kind: ControlKind, harness: string): "prompt" | "permission" | "cancel" | "start" | {
34
+ export declare function kindPath(kind: ControlKind, harness: string): "prompt" | "permission" | "cancel" | "start" | "pool" | {
35
35
  unsupported: string;
36
36
  };
37
37
  /** The framed text a session receives (CONTROL.md §6): the model and the person can
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/control/route.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEjF,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,GAAG,EAAE,OAAO,CAAC;IACb,2DAA2D;IAC3D,MAAM,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,qFAAqF;IACrF,IAAI,EAAE,OAAO,CAAC;IACd,0FAA0F;IAC1F,KAAK,EAAE,OAAO,CAAC;IACf,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;IACjB,qFAAqF;IACrF,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,MAAM,KAAK,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AAEjG;qDACqD;AACrD,eAAO,MAAM,QAAQ,aAAmD,CAAC;AAEzE;2CAC2C;AAC3C,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,GAAG,KAAK,CAejD;AAED,2EAA2E;AAC3E,wBAAgB,QAAQ,CACtB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,MAAM,GACd,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAiBxE;AAED;+BAC+B;AAC/B;;qFAEqF;AACrF,eAAO,MAAM,eAAe,6KACgJ,CAAC;AAE7K,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;;;mDAImD;AACnD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMjE"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/control/route.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEjF,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,GAAG,EAAE,OAAO,CAAC;IACb,2DAA2D;IAC3D,MAAM,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,qFAAqF;IACrF,IAAI,EAAE,OAAO,CAAC;IACd,0FAA0F;IAC1F,KAAK,EAAE,OAAO,CAAC;IACf,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;IACjB,qFAAqF;IACrF,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,MAAM,KAAK,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AAEjG;qFACqF;AACrF,eAAO,MAAM,QAAQ,aAAgF,CAAC;AAEtG;2CAC2C;AAC3C,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,GAAG,KAAK,CAejD;AAED,2EAA2E;AAC3E,wBAAgB,QAAQ,CACtB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,MAAM,GACd,QAAQ,GAAG,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAoBjF;AAED;+BAC+B;AAC/B;;qFAEqF;AACrF,eAAO,MAAM,eAAe,6KACgJ,CAAC;AAE7K,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;;;mDAImD;AACnD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMjE"}
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/control/sdk.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAc,MAAM,aAAa,CAAC;AAQvD,wBAAsB,OAAO,CAAC,CAAC,EAAE;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1B,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA2F1B"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/control/sdk.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAc,MAAM,aAAa,CAAC;AAmBvD,wBAAsB,OAAO,CAAC,CAAC,EAAE;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1B,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA8F1B"}