aicodeman 1.24.4 → 1.24.6

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 (174) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +3 -4
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config/cli-registry/argv.d.ts +44 -0
  5. package/dist/config/cli-registry/argv.d.ts.map +1 -0
  6. package/dist/config/cli-registry/argv.js +157 -0
  7. package/dist/config/cli-registry/argv.js.map +1 -0
  8. package/dist/config/cli-registry/index.d.ts +17 -0
  9. package/dist/config/cli-registry/index.d.ts.map +1 -0
  10. package/dist/config/cli-registry/index.js +11 -0
  11. package/dist/config/cli-registry/index.js.map +1 -0
  12. package/dist/config/cli-registry/patterns.d.ts +42 -0
  13. package/dist/config/cli-registry/patterns.d.ts.map +1 -0
  14. package/dist/config/cli-registry/patterns.js +104 -0
  15. package/dist/config/cli-registry/patterns.js.map +1 -0
  16. package/dist/config/cli-registry/profiles.d.ts +74 -0
  17. package/dist/config/cli-registry/profiles.d.ts.map +1 -0
  18. package/dist/config/cli-registry/profiles.js +90 -0
  19. package/dist/config/cli-registry/profiles.js.map +1 -0
  20. package/dist/config/cli-registry/registry.d.ts +63 -0
  21. package/dist/config/cli-registry/registry.d.ts.map +1 -0
  22. package/dist/config/cli-registry/registry.js +216 -0
  23. package/dist/config/cli-registry/registry.js.map +1 -0
  24. package/dist/config/cli-registry/schema.d.ts +259 -0
  25. package/dist/config/cli-registry/schema.d.ts.map +1 -0
  26. package/dist/config/cli-registry/schema.js +398 -0
  27. package/dist/config/cli-registry/schema.js.map +1 -0
  28. package/dist/config/cli-registry/stock.d.ts +15 -0
  29. package/dist/config/cli-registry/stock.d.ts.map +1 -0
  30. package/dist/config/cli-registry/stock.js +996 -0
  31. package/dist/config/cli-registry/stock.js.map +1 -0
  32. package/dist/config/cli-registry/types.d.ts +565 -0
  33. package/dist/config/cli-registry/types.d.ts.map +1 -0
  34. package/dist/config/cli-registry/types.js +13 -0
  35. package/dist/config/cli-registry/types.js.map +1 -0
  36. package/dist/config/dependency-registry.d.ts +12 -1
  37. package/dist/config/dependency-registry.d.ts.map +1 -1
  38. package/dist/config/dependency-registry.js +155 -203
  39. package/dist/config/dependency-registry.js.map +1 -1
  40. package/dist/cron/cron-service.d.ts.map +1 -1
  41. package/dist/cron/cron-service.js +51 -17
  42. package/dist/cron/cron-service.js.map +1 -1
  43. package/dist/docker-hosts.d.ts +9 -1
  44. package/dist/docker-hosts.d.ts.map +1 -1
  45. package/dist/docker-hosts.js +25 -17
  46. package/dist/docker-hosts.js.map +1 -1
  47. package/dist/remote-hosts.d.ts +73 -0
  48. package/dist/remote-hosts.d.ts.map +1 -1
  49. package/dist/remote-hosts.js +139 -45
  50. package/dist/remote-hosts.js.map +1 -1
  51. package/dist/remote-reconnect.d.ts +10 -1
  52. package/dist/remote-reconnect.d.ts.map +1 -1
  53. package/dist/remote-reconnect.js +9 -0
  54. package/dist/remote-reconnect.js.map +1 -1
  55. package/dist/session-cli-registry-bridge.d.ts +66 -0
  56. package/dist/session-cli-registry-bridge.d.ts.map +1 -0
  57. package/dist/session-cli-registry-bridge.js +165 -0
  58. package/dist/session-cli-registry-bridge.js.map +1 -0
  59. package/dist/session.d.ts +13 -1
  60. package/dist/session.d.ts.map +1 -1
  61. package/dist/session.js +69 -76
  62. package/dist/session.js.map +1 -1
  63. package/dist/tmux-manager.d.ts +50 -35
  64. package/dist/tmux-manager.d.ts.map +1 -1
  65. package/dist/tmux-manager.js +258 -623
  66. package/dist/tmux-manager.js.map +1 -1
  67. package/dist/utils/antigravity-cli-resolver.d.ts.map +1 -1
  68. package/dist/utils/antigravity-cli-resolver.js +8 -10
  69. package/dist/utils/antigravity-cli-resolver.js.map +1 -1
  70. package/dist/utils/cli-executable-resolver.d.ts +9 -1
  71. package/dist/utils/cli-executable-resolver.d.ts.map +1 -1
  72. package/dist/utils/cli-executable-resolver.js +3 -2
  73. package/dist/utils/cli-executable-resolver.js.map +1 -1
  74. package/dist/utils/cli-launcher.d.ts +46 -0
  75. package/dist/utils/cli-launcher.d.ts.map +1 -0
  76. package/dist/utils/cli-launcher.js +101 -0
  77. package/dist/utils/cli-launcher.js.map +1 -0
  78. package/dist/utils/cli-resolver.d.ts +101 -0
  79. package/dist/utils/cli-resolver.d.ts.map +1 -0
  80. package/dist/utils/cli-resolver.js +220 -0
  81. package/dist/utils/cli-resolver.js.map +1 -0
  82. package/dist/utils/codex-cli-resolver.d.ts.map +1 -1
  83. package/dist/utils/codex-cli-resolver.js +8 -11
  84. package/dist/utils/codex-cli-resolver.js.map +1 -1
  85. package/dist/utils/deepseek-cli-resolver.d.ts.map +1 -1
  86. package/dist/utils/deepseek-cli-resolver.js +8 -6
  87. package/dist/utils/deepseek-cli-resolver.js.map +1 -1
  88. package/dist/utils/gemini-cli-resolver.d.ts.map +1 -1
  89. package/dist/utils/gemini-cli-resolver.js +8 -10
  90. package/dist/utils/gemini-cli-resolver.js.map +1 -1
  91. package/dist/utils/grok-cli-resolver.js +8 -8
  92. package/dist/utils/grok-cli-resolver.js.map +1 -1
  93. package/dist/utils/omp-cli-resolver.d.ts.map +1 -1
  94. package/dist/utils/omp-cli-resolver.js +10 -15
  95. package/dist/utils/omp-cli-resolver.js.map +1 -1
  96. package/dist/utils/opencode-cli-resolver.d.ts.map +1 -1
  97. package/dist/utils/opencode-cli-resolver.js +8 -11
  98. package/dist/utils/opencode-cli-resolver.js.map +1 -1
  99. package/dist/utils/pi-cli-resolver.d.ts.map +1 -1
  100. package/dist/utils/pi-cli-resolver.js +8 -9
  101. package/dist/utils/pi-cli-resolver.js.map +1 -1
  102. package/dist/web/public/admin-ui.js.gz +0 -0
  103. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  104. package/dist/web/public/app.a5d2fc08.js.gz +0 -0
  105. package/dist/web/public/approvals-ui.js.gz +0 -0
  106. package/dist/web/public/constants.7bd482dc.js.gz +0 -0
  107. package/dist/web/public/cron-ui.js.gz +0 -0
  108. package/dist/web/public/entrance-animations.js.gz +0 -0
  109. package/dist/web/public/home-sessions.js.gz +0 -0
  110. package/dist/web/public/i18n.9ae15b51.js.gz +0 -0
  111. package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
  112. package/dist/web/public/index.html +9 -2
  113. package/dist/web/public/index.html.br +0 -0
  114. package/dist/web/public/index.html.gz +0 -0
  115. package/dist/web/public/input-cjk.87f14251.js.gz +0 -0
  116. package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
  117. package/dist/web/public/mobile-handlers.0f83a608.js.gz +0 -0
  118. package/dist/web/public/mobile-overview.js.gz +0 -0
  119. package/dist/web/public/mobile.87674154.css.gz +0 -0
  120. package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
  121. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  122. package/dist/web/public/panels-ui.e6e06034.js.gz +0 -0
  123. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  124. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  125. package/dist/web/public/readmymind-ui.js.gz +0 -0
  126. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  127. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  128. package/dist/web/public/session-lineage.js.gz +0 -0
  129. package/dist/web/public/session-ui.c558f981.js.gz +0 -0
  130. package/dist/web/public/{settings-ui.2a814a17.js → settings-ui.95b333c6.js} +1 -1
  131. package/dist/web/public/settings-ui.95b333c6.js.br +0 -0
  132. package/dist/web/public/settings-ui.95b333c6.js.gz +0 -0
  133. package/dist/web/public/styles.421b36d4.css.gz +0 -0
  134. package/dist/web/public/subagent-windows.e6ca799f.js.gz +0 -0
  135. package/dist/web/public/sw.js.gz +0 -0
  136. package/dist/web/public/tab-rail-resize.42c24949.js.gz +0 -0
  137. package/dist/web/public/terminal-ui.70445f81.js.gz +0 -0
  138. package/dist/web/public/ultracode-panel.js.gz +0 -0
  139. package/dist/web/public/ultracode-windows.js.gz +0 -0
  140. package/dist/web/public/upload.html.gz +0 -0
  141. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  142. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  143. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  144. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  145. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  146. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  147. package/dist/web/public/vendor/xterm-predictive-echo.bd6882b8.js.gz +0 -0
  148. package/dist/web/public/vendor/xterm-zerolag-input.6fee72f2.js.gz +0 -0
  149. package/dist/web/public/vendor/xterm.css.gz +0 -0
  150. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  151. package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
  152. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  153. package/dist/web/public/webview-tabs.js.gz +0 -0
  154. package/dist/web/routes/cron-routes.d.ts.map +1 -1
  155. package/dist/web/routes/cron-routes.js +3 -2
  156. package/dist/web/routes/cron-routes.js.map +1 -1
  157. package/dist/web/routes/session-routes.d.ts +8 -34
  158. package/dist/web/routes/session-routes.d.ts.map +1 -1
  159. package/dist/web/routes/session-routes.js +164 -251
  160. package/dist/web/routes/session-routes.js.map +1 -1
  161. package/dist/web/routes/system-routes.d.ts.map +1 -1
  162. package/dist/web/routes/system-routes.js +2 -1
  163. package/dist/web/routes/system-routes.js.map +1 -1
  164. package/dist/web/schemas.d.ts +12 -48
  165. package/dist/web/schemas.d.ts.map +1 -1
  166. package/dist/web/schemas.js +82 -37
  167. package/dist/web/schemas.js.map +1 -1
  168. package/dist/web/session-wait-registry.d.ts +1 -1
  169. package/dist/web/session-wait-registry.d.ts.map +1 -1
  170. package/dist/web/session-wait-registry.js +20 -12
  171. package/dist/web/session-wait-registry.js.map +1 -1
  172. package/package.json +1 -1
  173. package/dist/web/public/settings-ui.2a814a17.js.br +0 -0
  174. package/dist/web/public/settings-ui.2a814a17.js.gz +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stock.js","sourceRoot":"","sources":["../../../src/config/cli-registry/stock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,565 @@
1
+ /**
2
+ * @fileoverview Type definitions for the CLI registry — the single source of truth for
3
+ * which agent CLIs Codeman supports and how each one is discovered, launched and treated.
4
+ *
5
+ * This replaces the hard-coded `SessionMode` union and the ~123 per-mode branches that grew
6
+ * out of it. The guiding rule: NO code may branch on a CLI's id. Behaviour that genuinely
7
+ * differs between CLIs is expressed either as data here, or as a named PROFILE selected by
8
+ * a capability field (see profiles.ts) — never as `mode === 'codex'`.
9
+ *
10
+ * @module config/cli-registry/types
11
+ */
12
+ import type { TokenPattern } from './patterns.js';
13
+ /**
14
+ * A CLI identifier. Branded so an arbitrary string cannot be passed where a validated id is
15
+ * expected; construct with `asCliId()` at the API boundary.
16
+ */
17
+ export type CliId = string & {
18
+ readonly __cliId: unique symbol;
19
+ };
20
+ /** Values the ENGINE supplies. Config may reference these by name but never author them. */
21
+ export type EngineValue = 'sessionId' | 'sessionName' | 'muxName' | 'effortLevel' | 'effortSettingsJson'
22
+ /** `sessionId` prefixed `codeman_<id>` — codex's unique per-pane rollout originator. */
23
+ | 'codemanPrefixedSessionId'
24
+ /**
25
+ * For a launcher CLI (`discovery.launcherProfile`), the target to launch when the caller
26
+ * named none — deepseek's default `dsh` profile. Resolved at spawn time, never frozen
27
+ * into config, because it depends on what is installed on this machine right now.
28
+ */
29
+ | 'launcherDefaultTarget';
30
+ /**
31
+ * A declared launch parameter. `token` params carry caller-supplied data and are therefore
32
+ * the only ones that need a pattern; `engine` params are produced in code.
33
+ */
34
+ export type ParamSpec = {
35
+ type: 'enum';
36
+ values: string[];
37
+ default?: string;
38
+ } | {
39
+ type: 'bool';
40
+ } | {
41
+ type: 'token';
42
+ pattern: TokenPattern;
43
+ } | {
44
+ type: 'engine';
45
+ source: EngineValue;
46
+ };
47
+ /** A boolean guard over parameter state. */
48
+ export type Cond = {
49
+ param: string;
50
+ is: string | boolean;
51
+ } | {
52
+ param: string;
53
+ state: 'set' | 'unset';
54
+ } | {
55
+ allOf: Cond[];
56
+ } | {
57
+ anyOf: Cond[];
58
+ } | {
59
+ not: Cond;
60
+ }
61
+ /** Names an entry in `capabilities.gates`. Fail-closed gates omit when version is unknown. */
62
+ | {
63
+ capabilityGate: string;
64
+ };
65
+ /**
66
+ * How a token is quoted when emitted into the bash command string.
67
+ *
68
+ * This exists ONLY to preserve byte-identical output with the hand-written builders being
69
+ * replaced (claude wraps its values in double quotes; the other builders emit bare words).
70
+ * It is never a safety lever: `renderToken()` verifies the value is metacharacter-free
71
+ * before honouring an explicit style, and falls back to single-quote escaping if it is not.
72
+ * So the worst a wrong `quote` can do is make output uglier, never unsafe.
73
+ */
74
+ export type QuoteStyle = 'auto' | 'bare' | 'double' | 'single';
75
+ /** One argv element. */
76
+ export type ArgSpec =
77
+ /** A bare literal word, e.g. the base binary or codex's `resume` subcommand. */
78
+ {
79
+ lit: string;
80
+ when?: Cond;
81
+ }
82
+ /** A valueless flag, e.g. `--no-approve`. */
83
+ | {
84
+ flag: string;
85
+ when?: Cond;
86
+ }
87
+ /** A flag with a fixed literal value. */
88
+ | {
89
+ flag: string;
90
+ value: string;
91
+ quote?: QuoteStyle;
92
+ when?: Cond;
93
+ }
94
+ /** A flag whose value comes from a declared param. */
95
+ | {
96
+ flag: string;
97
+ valueFrom: string;
98
+ quote?: QuoteStyle;
99
+ when?: Cond;
100
+ }
101
+ /** A bare positional value from a param, e.g. codex's `resume <id>`. */
102
+ | {
103
+ valueFrom: string;
104
+ quote?: QuoteStyle;
105
+ when?: Cond;
106
+ };
107
+ /** One alternative command form. */
108
+ export interface CliVariant {
109
+ /** Stable name for diagnostics and tests, e.g. 'resume' / 'new'. */
110
+ id: string;
111
+ when?: Cond;
112
+ args: ArgSpec[];
113
+ }
114
+ export interface CliLaunch {
115
+ params: Record<string, ParamSpec>;
116
+ /**
117
+ * 'first' — emit the first variant whose `when` passes (the usual case).
118
+ * 'fallback' — emit EVERY passing variant joined by the engine's own ` || `, which is how
119
+ * claude's `--resume X || --session-id Y` shell fallback is expressed without
120
+ * config ever containing shell text. The engine owns the operator.
121
+ */
122
+ chain?: 'first' | 'fallback';
123
+ variants: CliVariant[];
124
+ /**
125
+ * Maps a declared param name to the field name it arrives under on the legacy
126
+ * `POST /api/sessions` wire shape (`OpenCodeConfig.continueSession`, etc — the per-mode
127
+ * config objects predate this registry and stay on the wire for compatibility). A param
128
+ * with no entry here is looked up under its own name. This is what lets the spawn-command
129
+ * bridge (`session-cli-registry-bridge.ts`) stay generic: it reads the raw legacy config
130
+ * object through this DATA-declared alias table instead of a per-mode `if (mode === ...)`.
131
+ */
132
+ legacyConfigAliases?: Record<string, string>;
133
+ /**
134
+ * The field on the legacy spawn option bag holding this CLI's `<Mode>Config` object
135
+ * (`openCodeConfig`, `codexConfig`, …). Those per-mode objects predate this registry and
136
+ * stay on the wire for API compatibility, so SOMETHING has to know which one to read —
137
+ * declaring it here as data is what keeps the bridge a generic reader instead of a
138
+ * `switch (mode)`.
139
+ *
140
+ * ABSENT means this CLI's launch fields live at the TOP LEVEL of the option bag rather
141
+ * than nested in a config object. That is claude, whose discrete `claudeMode` /
142
+ * `allowedTools` / `model` / `resumeSessionId` fields predate the `<Mode>Config` pattern
143
+ * entirely — so "read the option bag itself" is not a special case for it, it is just
144
+ * the other shape.
145
+ */
146
+ legacyConfigField?: string;
147
+ /**
148
+ * How to APPEND a resume id onto an already-built base command, for the docker in-container
149
+ * "tmux was re-created, resume the surviving transcript" path (`appendResumeFlag` in
150
+ * tmux-manager.ts) — a narrower, append-only sibling of the full `variants` shape above,
151
+ * which builds a whole command from scratch. Absent = this CLI has no resume flag to
152
+ * append (shell, opencode: opencode's docker resume goes through its own config object).
153
+ */
154
+ resumeAppend?: {
155
+ style: 'flag';
156
+ flag: string;
157
+ } | {
158
+ style: 'positional';
159
+ token: string;
160
+ };
161
+ }
162
+ export interface CliVersionProbe {
163
+ arg: string;
164
+ /** Serialized regex, applied to `--version` output only. See compileVersionRegex(). */
165
+ regex?: string;
166
+ /**
167
+ * Treat a binary whose version output does not match as ABSENT rather than as
168
+ * present-with-unknown-version. For CLIs with short, generic binary names (`pi`), where a
169
+ * `which` hit is not by itself evidence the right program is installed.
170
+ */
171
+ requireVersionMatch?: boolean;
172
+ /** Retry a failed probe with backoff instead of caching the failure (claude's behaviour). */
173
+ retryOnTransientFailure?: boolean;
174
+ }
175
+ /**
176
+ * An identity probe: proof that the binary we found is the program we meant, not an
177
+ * unrelated one that happens to share the name.
178
+ *
179
+ * A version probe is not enough on its own. Debian ships a `dsh` (dancer's shell) that
180
+ * answers `--version` perfectly happily, and npm carries squatters for `pi` and `grok`.
181
+ * `requireVersionMatch` catches a binary whose version output has the WRONG SHAPE; this
182
+ * catches one whose output has the right shape but names the wrong program.
183
+ *
184
+ * Ordering matters and belongs to the resolver, not to config: identity is checked FIRST,
185
+ * so an impostor is rejected before its version string is ever parsed.
186
+ */
187
+ export interface CliIdentityProbe {
188
+ /** Argument that makes the binary describe itself, e.g. `--help`. */
189
+ arg: string;
190
+ /**
191
+ * Serialized regex the output must match. Compiled through `compileVersionRegex()`, so
192
+ * it inherits the same length cap and nested-quantifier rejection — this is the second
193
+ * (and last) config-supplied regex in the registry, and it runs against truncated
194
+ * command output exactly like the first.
195
+ */
196
+ regex: string;
197
+ }
198
+ export interface CliDiscovery {
199
+ /**
200
+ * Binary name(s), first hit wins.
201
+ *
202
+ * This is why the registry fixes a live bug: the mode name is NOT always the binary
203
+ * name (`antigravity` runs `agy`), and `probeDockerCliVersion` assumed it was.
204
+ */
205
+ binaries: string[];
206
+ /** Extra directories probed after `which`. A leading `~` expands to homedir; nothing else. */
207
+ searchDirs: string[];
208
+ version?: CliVersionProbe;
209
+ /** Proof the binary is the right program, checked BEFORE the version probe. */
210
+ identity?: CliIdentityProbe;
211
+ /**
212
+ * Names a LAUNCHER profile (profiles.ts): this CLI's binary is a launcher over some
213
+ * further target, so two questions the registry normally answers from the binary alone
214
+ * have to be asked of that target instead.
215
+ *
216
+ * - Is it RUNNABLE? Stricter than "is the binary on disk?".
217
+ * - What is the DEFAULT target, when the caller names none?
218
+ *
219
+ * DeepSeek is why this exists and is its only user. `dsh` launches a profile from
220
+ * `$DSH_HOME/profiles/<name>`, and the profiles DeepSeek itself ships (`web`,
221
+ * `headless`) cannot drive a terminal pane — so a perfectly-installed `dsh` with no
222
+ * third-party TUI profile is installed-but-NOT-runnable. The Run button gates on
223
+ * runnability while the "add a profile" affordance gates on mere availability;
224
+ * collapsing the two would either hide the affordance that fixes the problem or offer a
225
+ * run that always fails.
226
+ *
227
+ * The default target reaches the launch spec as the `launcherDefaultTarget` engine
228
+ * value, so it stays a runtime lookup rather than a value frozen into config.
229
+ *
230
+ * Absent (the normal case) means the binary IS the program, and its presence IS
231
+ * runnability.
232
+ */
233
+ launcherProfile?: string;
234
+ /**
235
+ * The launch param naming the target a caller asked for, so the launcher profile can say
236
+ * why THAT specific target will not start rather than only whether any will. Meaningless
237
+ * without `launcherProfile`.
238
+ */
239
+ launcherTargetParam?: string;
240
+ install: {
241
+ /**
242
+ * DISPLAY TEXT ONLY. Shown verbatim in "CLI not found. Install with: ...".
243
+ *
244
+ * ⚠️ NEVER executed by the server. That is a documented invariant, not an oversight:
245
+ * running it would turn a config file into a code-execution surface. A proposal to
246
+ * execute this on enable is deliberately deferred to its own change so the trust
247
+ * model can be decided on its own merits rather than inside a refactor.
248
+ */
249
+ command: Partial<Record<'linux' | 'darwin' | 'wsl' | 'win32', string>>;
250
+ /** Package name for an npm-installable CLI. Display/tooling metadata only. */
251
+ npmPackage?: string;
252
+ docsUrl?: string;
253
+ };
254
+ }
255
+ export interface CliEnv {
256
+ /** `export K=V` in the bash prelude. Values are literals or engine values, never secrets. */
257
+ exports: Array<{
258
+ name: string;
259
+ value: string | {
260
+ engine: EngineValue;
261
+ };
262
+ when?: Cond;
263
+ }>;
264
+ /** `unset K` — e.g. claude's CLAUDECODE, the truecolor CLIs' NO_COLOR. */
265
+ unset: string[];
266
+ /**
267
+ * NAMES ONLY. Values are read from the server's own process.env and pushed via
268
+ * `tmux setenv`, so a secret is structurally unable to reach the command line.
269
+ */
270
+ tmuxSetenvKeys: string[];
271
+ /** NAMES ONLY, forwarded as `docker exec -e NAME`. */
272
+ dockerExecEnvNames: string[];
273
+ /**
274
+ * Env vars set via `tmux setenv` from a LAUNCH PARAM rather than from the server's own
275
+ * environment — for a CLI whose switch is an env var instead of a flag.
276
+ *
277
+ * DeepSeek's `DSH_PERMISSION_MODE` is the case this exists for. Routing it through a
278
+ * declared param (rather than a bespoke configure step) is what lets the ordinary
279
+ * `privilegedParams` clamp apply to it: the clamp rewrites the param, and whatever the
280
+ * param ends up as is what gets exported.
281
+ *
282
+ * ⚠️ Values are read from a declared, schema-validated param, never from free text, and
283
+ * they reach the pane through `tmux setenv` rather than the command line.
284
+ */
285
+ configSetenv?: Array<{
286
+ name: string;
287
+ fromParam: string;
288
+ }>;
289
+ /** This entry's contribution to the env-override allowlist. Never widens BLOCKED_ENV_KEYS. */
290
+ allowedPrefixes: string[];
291
+ allowedKeys: string[];
292
+ /**
293
+ * Env var carrying a JSON config blob pushed via `tmux setenv` (opencode's
294
+ * OPENCODE_CONFIG_CONTENT). Generic so it is not an opencode special case.
295
+ */
296
+ configContentVar?: string;
297
+ /**
298
+ * Names an entry in `SETENV_PROFILES` (profiles.ts): extra `tmux setenv` work that is
299
+ * genuinely code-shaped rather than a list of key names.
300
+ *
301
+ * DeepSeek's status bridge is the only current user. It has to write an executable shim
302
+ * to disk (`ensureDeepSeekStatusShim()`), then export the shim's path and this session's
303
+ * pane id — a side effect and two computed values, none of which `tmuxSetenvKeys` (a
304
+ * list of names forwarded from the server's own env) can express.
305
+ *
306
+ * Plain secret forwarding stays in `tmuxSetenvKeys` and must NOT move here.
307
+ */
308
+ setenvProfile?: string;
309
+ }
310
+ /**
311
+ * The closed set of behavioural switches. Each field replaces an id-check somewhere.
312
+ *
313
+ * `hooks`, `transcript` and `altScreen` are INDEPENDENT on purpose. The three predicates
314
+ * they back (`hooksAvailableForMode`, `isExternalCliMode`, `isAltScreenStripMode`) describe
315
+ * three different, deliberately unequal sets, and deriving any one from another has already
316
+ * caused a real bug — a `shell` session has no hooks but is not an "external CLI", so
317
+ * `!isExternalCliMode()` wrongly accepted `until=stop` on it and hung for the full timeout.
318
+ * Keeping them as separate fields makes that invariant structural rather than commented.
319
+ */
320
+ export interface CliCapabilities {
321
+ /**
322
+ * Non-Claude run mode that uses its own TUI and output format (`isExternalCliMode`):
323
+ * no Claude transcript, no hooks, no Claude-format token/BashTool parsing. An explicit
324
+ * field rather than derived from `hooks`/`kind`, precisely because it must stay
325
+ * independent — see this interface's own doc comment.
326
+ */
327
+ external: boolean;
328
+ /** No direct-PTY fallback: the CLI must run inside tmux (secrets ride tmux setenv). */
329
+ requiresMux: boolean;
330
+ /**
331
+ * Whether `stop`/`blocked` wait signals can ever fire for this CLI.
332
+ *
333
+ * ⚠️ A TRI-STATE, not a boolean, because for one CLI this is a per-SESSION question:
334
+ * 'none' — no hook signals, ever (every external CLI, and `shell`).
335
+ * 'always' — the CLI installs Codeman's hooks (claude).
336
+ * 'supervised' — the CLI REPORTS its own idle/working/blocked state to a supervisor
337
+ * over a generic env-gated contract, and Codeman is that supervisor
338
+ * (deepseek, via deepseek-status-shim.ts). Definitive rather than
339
+ * inferred, so it earns real signals — but the session can disarm the
340
+ * bridge (`deepSeekConfig.statusReporting: false`), and a docker or
341
+ * remote session cannot reach it at all.
342
+ *
343
+ * That last case is why `hooksAvailableForMode()` takes per-session options and why
344
+ * every call site must pass `sessionHookOptions(session)`. Answering from the mode alone
345
+ * would promise a `stop` that never arrives, which is the infinite-wait-dressed-as-a-
346
+ * timeout the predicate exists to prevent.
347
+ */
348
+ hooks: 'none' | 'always' | 'supervised';
349
+ /**
350
+ * Which transcript reader, if any, understands this CLI's on-disk history.
351
+ *
352
+ * `deepseek-zstd` is the odd one out: dsh writes zstd-compressed session files and
353
+ * appends ONE FRAME PER WRITE, so it needs a reader that walks frame headers itself
354
+ * rather than the stock decoder. It exists because the pane segmenter served dsh's
355
+ * ASCII-art splash as the worker's first answer.
356
+ */
357
+ transcript: 'claude-jsonl' | 'codex-rollout' | 'deepseek-zstd' | 'omp-jsonl' | 'none';
358
+ /**
359
+ * 'strip-full' — alt-screen + erase-scrollback + mouse DECSETs stripped (Ink TUIs).
360
+ * 'strip-mux-only' — only tmux's own attach-time smcup (the safe default).
361
+ * 'preserve' — leave everything (a direct-PTY shell running vim/less/htop).
362
+ */
363
+ altScreen: 'strip-full' | 'strip-mux-only' | 'preserve';
364
+ echo: {
365
+ policy: 'buffer' | 'predict' | 'off';
366
+ /** How the local-echo overlay locates the composer row. */
367
+ anchor: {
368
+ kind: 'glyph';
369
+ glyph: string;
370
+ offset: number;
371
+ } | {
372
+ kind: 'cursor';
373
+ } | {
374
+ kind: 'none';
375
+ };
376
+ /** Names a PREDICT_PROFILES key. Unknown or absent degrades to 'buffer', never to broken. */
377
+ predictProfile?: string;
378
+ };
379
+ /** Forwarding the wheel to the CLI's own transcript. 'never' keeps local scrollback. */
380
+ wheelForward: {
381
+ mode: 'never' | 'version-gated';
382
+ minVersion?: string;
383
+ };
384
+ keyboardAccessory: 'agent' | 'shell';
385
+ /** Multi-user: this CLI is a raw shell, so its commands need the privileged gate. */
386
+ privilegedCommandGate: boolean;
387
+ startMode: 'interactive' | 'shell';
388
+ stripInkBloat: boolean;
389
+ ralph: boolean;
390
+ respawn: boolean;
391
+ effort: boolean;
392
+ agentSkillInjection: boolean;
393
+ statusLineTelemetry: boolean;
394
+ /** Where a model override is delivered. Claude uniquely writes settings.local.json. */
395
+ model: {
396
+ source: 'flag' | 'claude-settings-file' | 'none';
397
+ param?: string;
398
+ };
399
+ /**
400
+ * Params a non-granted multi-user owner may not set freely, and what they are forced to.
401
+ * Data-driven so a CUSTOM CLI's bypass flag is clampable exactly like codex's.
402
+ *
403
+ * `materializeWhenAbsent` distinguishes two real shapes, not one:
404
+ * - only-if-sent (false/omitted; codex, antigravity, grok): the CLI's own
405
+ * absent-config default already spawns safe, so the clamp should only touch
406
+ * a config the caller actually sent.
407
+ * - materialize (true; gemini, pi): the absent-config default is ITSELF unsafe
408
+ * for a non-granted owner (gemini defaults to `yolo`; pi's absent default is
409
+ * an interactive trust prompt the session user could just answer "yes" to),
410
+ * so the clamp must CREATE a config object even when none was sent.
411
+ *
412
+ * ⚠️ `param` names the LAUNCH PARAM, like every other `param` in this file — never the
413
+ * legacy wire field. The clamp translates it through `legacyConfigAliases` on the way out,
414
+ * the same hop `env.configSetenv` makes. The two names coincide for most entries and
415
+ * DELIBERATELY do not for codex (`bypassApprovals` here, `dangerouslyBypassApprovals` on
416
+ * the wire), which is what keeps the distinction visible. `schema.ts` rejects an entry
417
+ * naming a param it never declared, because getting this wrong is a SILENT no-op: no load
418
+ * error, no failing test, the clamp just stops clamping.
419
+ */
420
+ privilegedParams: Array<{
421
+ param: string;
422
+ clampTo: boolean | string;
423
+ materializeWhenAbsent?: boolean;
424
+ }>;
425
+ /**
426
+ * Env var names a non-granted multi-user owner may not set at all, DROPPED from
427
+ * `envOverrides` before spawn.
428
+ *
429
+ * ⚠️ This is a second, structurally different privileged surface from `privilegedParams`
430
+ * above, and one cannot substitute for the other. `privilegedParams` clamps a field on a
431
+ * per-CLI config object, which reaches the CLI as an argv flag. These clamp env vars,
432
+ * which reach it through `tmux setenv` — a path no argv clamp can see.
433
+ *
434
+ * DeepSeek is why this exists. Its permission switch IS an env var
435
+ * (`DSH_PERMISSION_MODE`), not a flag, so a config-level clamp alone leaves a real
436
+ * multi-user control with nothing enforcing it. Worse, `DSH_*` is an allowlisted
437
+ * `envOverrides` prefix and `applyEnvOverrides()` runs AFTER the per-CLI env configure
438
+ * step, so a non-granted owner sending that key on the SAME request would land last and
439
+ * hand back exactly the privilege the config clamp just removed.
440
+ *
441
+ * Dropping (rather than rewriting) is deliberate: the value then falls through to what
442
+ * the CLI's own env configuration exports, which is already the clamped one.
443
+ *
444
+ * The other two DeepSeek keys are here for reasons worth keeping written down:
445
+ * - `DSH_HOME` points the launcher at a profile tree whose plugin code runs at BOOT,
446
+ * before any approval row could apply.
447
+ * - `DEEPSEEK_BASE_URL` would redirect the server's OWN forwarded `DEEPSEEK_API_KEY`
448
+ * to a host of the caller's choosing.
449
+ *
450
+ * Every other CLI's bypass is a command-line flag reachable only through its config
451
+ * object, which is why `privilegedParams` alone is the whole gate for them.
452
+ */
453
+ privilegedEnvKeys: string[];
454
+ /** Version gates referenced by `capabilityGate` conditions. */
455
+ gates: Record<string, {
456
+ minVersion: string;
457
+ failClosed: boolean;
458
+ }>;
459
+ /** Cap on a single terminal frame, when this CLI needs a tighter one than the default. */
460
+ maxFrameBytes?: number;
461
+ }
462
+ /** Docker credential seeding policy — which host dirs are copied or shared into a container. */
463
+ export interface CliCredStore {
464
+ rel: string;
465
+ shareDirs?: string[];
466
+ shareFiles?: string[];
467
+ seedFiles?: string[];
468
+ seedWhole?: boolean;
469
+ }
470
+ export interface CliOverlays {
471
+ /**
472
+ * The remote/docker DEFAULT pane command: just the CLI invocation (e.g. `claude
473
+ * --dangerously-skip-permissions`), independent of each location's own wrapping
474
+ * (remote: login-shell `-c`; docker: `exec`). Absent `command` = the bare
475
+ * `discovery.binaries[0]`. `disabled: true` = this location has no story for this CLI at
476
+ * all (docker for `shell`) — distinct from "no override", which still gets a default.
477
+ */
478
+ remote?: {
479
+ command?: string;
480
+ } | {
481
+ disabled: true;
482
+ };
483
+ docker?: {
484
+ command?: string;
485
+ } | {
486
+ disabled: true;
487
+ };
488
+ /**
489
+ * ⚠️ DECLARED-FOR-LATER, unlike `remote`/`docker` above, which are live.
490
+ *
491
+ * The Docker credential-seeding path still reads its own `CRED_STORES` table in
492
+ * `docker-hosts.ts`, because this shape cannot yet express that table: it allows ONE store
493
+ * per CLI, and the live table needs two for gemini (`.gemini` for the CLI's own auth plus
494
+ * `.config/gcloud` for Vertex), while deepseek's entry here declares none at all even
495
+ * though `.dsh` is seeded. Wiring it therefore means making this an ARRAY and correcting
496
+ * those two entries — a change to credential seeding, which is both the highest-consequence
497
+ * thing in this file to get wrong and the least covered by tests, since every docker IO
498
+ * path is no-op'd under vitest. It belongs in its own change, measured against a real
499
+ * container.
500
+ */
501
+ credStore?: CliCredStore;
502
+ }
503
+ /**
504
+ * ⚠️ DECLARED-FOR-LATER: fields no code reads yet.
505
+ *
506
+ * `shortBadge`, `accent`, `overlays.credStore`, `capabilities.echo`, `capabilities.wheelForward`,
507
+ * `capabilities.keyboardAccessory` and `capabilities.maxFrameBytes` all describe FRONTEND
508
+ * behaviour, and the frontend is deliberately untouched by the change that introduced this
509
+ * registry — `app.js`, `terminal-ui.js`, `styles.css` and friends keep their own
510
+ * hand-authored per-CLI rules, and moving them is its own piece of work with its own way of
511
+ * being verified (a mobile/browser suite the CI gate cannot see).
512
+ *
513
+ * They are declared now because each entry should describe its CLI completely, and because
514
+ * transcribing them while the hand-written source is still on screen is when the values are
515
+ * actually known. But an unread field is a promise, not a fact: nothing enforces that
516
+ * `echo.policy` here matches `_updateLocalEchoState`'s fallthrough, or that `accent` matches
517
+ * the gradient CSS paints. Treat every value in this group as TRANSCRIBED, not authoritative,
518
+ * and re-measure against the frontend before wiring one up.
519
+ *
520
+ * The rest of the interface is live: something reads it, and `test/cli-registry-*.test.ts`
521
+ * pins what it does with it.
522
+ */
523
+ export interface CliEntry {
524
+ id: CliId;
525
+ label: string;
526
+ /** Two-ish character tab badge, e.g. 'OC'. */
527
+ shortBadge: string;
528
+ /** Single hex colour. CSS derives every per-CLI gradient from it via --cli-accent. */
529
+ accent: string;
530
+ enabled: boolean;
531
+ /** Set by the loader from the shipped catalog; a user entry can never claim it. */
532
+ stock: boolean;
533
+ order: number;
534
+ /** 'shell' unlocks the raw-shell code paths; everything else is an agent CLI. */
535
+ kind: 'agent' | 'shell';
536
+ discovery: CliDiscovery;
537
+ launch: CliLaunch;
538
+ env: CliEnv;
539
+ capabilities: CliCapabilities;
540
+ overlays: CliOverlays;
541
+ }
542
+ /**
543
+ * The on-disk shape of ~/.codeman/clis.json — overrides and custom entries only, never the
544
+ * full catalog. Small and hand-readable by design.
545
+ *
546
+ * ⚠️ READ-ONLY in this build. Nothing here writes this file: there is no settings UI and no
547
+ * write API yet, so there is nothing to persist. That also means importing the registry
548
+ * (and therefore `schemas.ts`, which validates against it) performs no filesystem writes —
549
+ * an import side effect worth not having.
550
+ */
551
+ export interface CliRegistryFile {
552
+ schemaVersion: number;
553
+ /**
554
+ * Stock ids already introduced to this install — the ratchet that lets one file both gain
555
+ * newly-shipped CLIs on upgrade AND remember that the user disabled one.
556
+ *
557
+ * Read and IGNORED here, and never written: the ratchet only earns its keep once a CLI
558
+ * can be disabled, which needs the write API. Declared now purely so a file written by a
559
+ * later version still loads cleanly under this one instead of failing `.strict()`.
560
+ */
561
+ seededStockIds?: string[];
562
+ /** Keyed by id: a partial override of a stock entry, or a complete custom entry. */
563
+ clis: Record<string, unknown>;
564
+ }
565
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/config/cli-registry/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAMjE,4FAA4F;AAC5F,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,aAAa,GACb,SAAS,GACT,aAAa,GACb,oBAAoB;AACtB,wFAAwF;GACtF,0BAA0B;AAC5B;;;;GAIG;GACD,uBAAuB,CAAC;AAE5B;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC;AAE5C,4CAA4C;AAC5C,MAAM,MAAM,IAAI,GACZ;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GACvC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAA;CAAE,GACzC;IAAE,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,GACjB;IAAE,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,GACjB;IAAE,GAAG,EAAE,IAAI,CAAA;CAAE;AACf,8FAA8F;GAC5F;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/B;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/D,wBAAwB;AACxB,MAAM,MAAM,OAAO;AACjB,gFAAgF;AAC9E;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE;AAC9B,6CAA6C;GAC3C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE;AAC/B,yCAAyC;GACvC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE;AAClE,sDAAsD;GACpD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE;AACtE,wEAAwE;GACtE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3D,oCAAoC;AACpC,MAAM,WAAW,UAAU;IACzB,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC7B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACzF;AAMD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6FAA6F;IAC7F,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,8FAA8F;IAC9F,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE;QACP;;;;;;;WAOG;QACH,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACvE,8EAA8E;QAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAMD,MAAM,WAAW,MAAM;IACrB,6FAA6F;IAC7F,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,WAAW,CAAA;SAAE,CAAC;QAAC,IAAI,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;IACvF,0EAA0E;IAC1E,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;OAGG;IACH,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,sDAAsD;IACtD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,8FAA8F;IAC9F,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,uFAAuF;IACvF,WAAW,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;IACxC;;;;;;;OAOG;IACH,UAAU,EAAE,cAAc,GAAG,eAAe,GAAG,eAAe,GAAG,WAAW,GAAG,MAAM,CAAC;IACtF;;;;OAIG;IACH,SAAS,EAAE,YAAY,GAAG,gBAAgB,GAAG,UAAU,CAAC;IACxD,IAAI,EAAE;QACJ,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;QACrC,2DAA2D;QAC3D,MAAM,EAAE;YAAE,IAAI,EAAE,OAAO,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,QAAQ,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACjG,6FAA6F;QAC7F,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,wFAAwF;IACxF,YAAY,EAAE;QAAE,IAAI,EAAE,OAAO,GAAG,eAAe,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC;IACrC,qFAAqF;IACrF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,uFAAuF;IACvF,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,sBAAsB,GAAG,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,gBAAgB,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;QAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvG;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACnE,0FAA0F;IAC1F,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD,gGAAgG;AAChG,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC;IACnD,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC;IACnD;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,mFAAmF;IACnF,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,eAAe,CAAC;IAC9B,QAAQ,EAAE,WAAW,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oFAAoF;IACpF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @fileoverview Type definitions for the CLI registry — the single source of truth for
3
+ * which agent CLIs Codeman supports and how each one is discovered, launched and treated.
4
+ *
5
+ * This replaces the hard-coded `SessionMode` union and the ~123 per-mode branches that grew
6
+ * out of it. The guiding rule: NO code may branch on a CLI's id. Behaviour that genuinely
7
+ * differs between CLIs is expressed either as data here, or as a named PROFILE selected by
8
+ * a capability field (see profiles.ts) — never as `mode === 'codex'`.
9
+ *
10
+ * @module config/cli-registry/types
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/config/cli-registry/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}