@botiverse/oar 0.66.1 → 0.68.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 (64) hide show
  1. package/README.md +40 -28
  2. package/dist/contracts/records.d.ts +1 -1
  3. package/dist/contracts/records.d.ts.map +1 -1
  4. package/dist/contracts/session-options.d.ts +1 -1
  5. package/dist/contracts/session-options.d.ts.map +1 -1
  6. package/dist/forms/fields.d.ts +9 -0
  7. package/dist/forms/fields.d.ts.map +1 -0
  8. package/dist/forms/fields.js +46 -0
  9. package/dist/forms/fields.js.map +1 -0
  10. package/dist/forms/index.d.ts +11 -0
  11. package/dist/forms/index.d.ts.map +1 -0
  12. package/dist/forms/index.js +19 -0
  13. package/dist/forms/index.js.map +1 -0
  14. package/dist/forms/listing.d.ts +15 -0
  15. package/dist/forms/listing.d.ts.map +1 -0
  16. package/dist/forms/listing.js +28 -0
  17. package/dist/forms/listing.js.map +1 -0
  18. package/dist/forms/map.d.ts +32 -0
  19. package/dist/forms/map.d.ts.map +1 -0
  20. package/dist/forms/map.js +76 -0
  21. package/dist/forms/map.js.map +1 -0
  22. package/dist/forms/runtimes/grok.d.ts +15 -0
  23. package/dist/forms/runtimes/grok.d.ts.map +1 -0
  24. package/dist/forms/runtimes/grok.js +56 -0
  25. package/dist/forms/runtimes/grok.js.map +1 -0
  26. package/dist/forms/types.d.ts +131 -0
  27. package/dist/forms/types.d.ts.map +1 -0
  28. package/dist/forms/types.js +2 -0
  29. package/dist/forms/types.js.map +1 -0
  30. package/dist/forms/validate.d.ts +10 -0
  31. package/dist/forms/validate.d.ts.map +1 -0
  32. package/dist/forms/validate.js +147 -0
  33. package/dist/forms/validate.js.map +1 -0
  34. package/dist/observe/session-view-events.js +2 -2
  35. package/dist/observe/session-view-events.js.map +1 -1
  36. package/dist/observe/session-view-tools.d.ts +4 -0
  37. package/dist/observe/session-view-tools.d.ts.map +1 -1
  38. package/dist/observe/session-view-tools.js +8 -1
  39. package/dist/observe/session-view-tools.js.map +1 -1
  40. package/dist/observe/session-view.d.ts +2 -0
  41. package/dist/observe/session-view.d.ts.map +1 -1
  42. package/dist/observe/session-view.js.map +1 -1
  43. package/dist/observe/tool-activity.d.ts +3 -3
  44. package/dist/observe/tool-activity.d.ts.map +1 -1
  45. package/dist/observe/tool-activity.js +6 -2
  46. package/dist/observe/tool-activity.js.map +1 -1
  47. package/dist/runtimes/antigravity/options.d.ts.map +1 -1
  48. package/dist/runtimes/antigravity/options.js +4 -3
  49. package/dist/runtimes/antigravity/options.js.map +1 -1
  50. package/dist/runtimes/cursor/auth-status.js +1 -1
  51. package/dist/runtimes/cursor/index.d.ts +1 -1
  52. package/dist/runtimes/cursor/login.js +1 -1
  53. package/dist/runtimes/cursor/logout.js +1 -1
  54. package/dist/runtimes/pi/open.d.ts +1 -2
  55. package/dist/runtimes/pi/open.d.ts.map +1 -1
  56. package/dist/runtimes/pi/open.js +31 -0
  57. package/dist/runtimes/pi/open.js.map +1 -1
  58. package/dist/runtimes/pi/projection.d.ts.map +1 -1
  59. package/dist/runtimes/pi/projection.js +8 -0
  60. package/dist/runtimes/pi/projection.js.map +1 -1
  61. package/dist/runtimes/pi-durable/projection.d.ts.map +1 -1
  62. package/dist/runtimes/pi-durable/projection.js +8 -1
  63. package/dist/runtimes/pi-durable/projection.js.map +1 -1
  64. package/package.json +13 -9
package/README.md CHANGED
@@ -46,7 +46,13 @@ pi and pi-durable report retry) never appear; the runtime pages say which. It is
46
46
  projection over the record stream, which `session.rawEvents()` and
47
47
  `session.records()` expose (`RawEvent`: `Frame` with the native payload
48
48
  verbatim, `RequestRecord`, `ResponseRecord`) for consumers who need the
49
- runtime's own frames.
49
+ runtime's own frames. `tool_call_ended.exitCode` is the exit status a runtime
50
+ reports for a command it ran, absent where it reports none (claude); see
51
+ [tool outcomes](https://github.com/botiverse/oar/blob/main/docs/spec/runtime-matrix.md#tool-outcomes).
52
+ In `session.usage()`, `TokenTotals.reasoning` is the part of `output` the
53
+ runtime reports as reasoning (codex, grok, pi, pi-durable, cursor; absent
54
+ elsewhere): never add it to `output` again
55
+ ([reasoning tokens](https://github.com/botiverse/oar/blob/main/docs/spec/attribution.md#reasoning-tokens)).
50
56
 
51
57
  Tool arguments can arrive while the model is still writing them. Append
52
58
  `tool_call_input_delta.delta` as raw text; `tool_call_input.input` replaces
@@ -60,10 +66,11 @@ start with their complete input.
60
66
  subagent's result, a finished job) at the right moment: a new turn when the
61
67
  session is idle, so the agent wakes, otherwise steered into the turn or queued
62
68
  behind it. `origin` is recorded so a UI can tell it from typed input.
63
- `session.steer` exists only on a session whose runtime can steer (kimi and
64
- antigravity sessions have none), so a host offers a steer control by reading
65
- the member, never a runtime name; `deliver` and `steerOrQueue` queue where it
66
- is absent. `session.withdraw(inputId)` takes a queued input back before it is
69
+ `session.steer` exists only on a session whose runtime can steer (kimi,
70
+ antigravity and opencode v2 sessions have none; see
71
+ [session controls](https://github.com/botiverse/oar/blob/main/docs/spec/runtime-matrix.md#session-controls)),
72
+ so a host offers a steer control by reading the member, never a runtime
73
+ name; `deliver` and `steerOrQueue` queue where it is absent. `session.withdraw(inputId)` takes a queued input back before it is
67
74
  sent (`accepted`), or answers `not_queued` once it went; with it a UI offers
68
75
  withdraw, edit (withdraw, then `queue` again) and send now (withdraw, then
69
76
  `deliver`). It exists where OAR holds the queue itself (claude, pi, cursor
@@ -105,22 +112,23 @@ See [dropped input](https://github.com/botiverse/oar/blob/main/docs/spec/convers
105
112
 
106
113
  ## Public exports
107
114
 
108
- The package has these public entry points, plus `@botiverse/oar/community` for community runtimes (below):
115
+ The package has these public entry points, plus `@botiverse/oar/pi-durable` ([below](#host-owned-durable-sessions)) and `@botiverse/oar/community` for community runtimes (below):
109
116
 
110
- - `@botiverse/oar`: the runtime registry and adapters, `defineRuntime`, `UnsupportedOptionError`, `RuntimeFailureError`, `SessionNotFoundError`, `SessionUnavailableError`, the `oar-voyage/3` recorder (`openVoyage`), and everything the brands and observe entry points below export. Node-only (adapters import `node:child_process` and runtime SDKs).
117
+ - `@botiverse/oar`: the runtime registry and adapters, `defineRuntime`, `UnsupportedOptionError`, `RuntimeFailureError`, `SessionNotFoundError`, `SessionUnavailableError`, `serveMcpTools`, the `oar-voyage/3` recorder (`openVoyage`), and everything the brands and observe entry points below export. Node-only (adapters import `node:child_process` and runtime SDKs).
111
118
  - `@botiverse/oar/browser`: portable contracts, registry, session kernel, observe helpers, agent report formatting, and branding. No Node adapters, process helpers or local image-file loaders.
112
119
  - `@botiverse/oar/brands`: browser-safe runtime names and SVG icons.
113
- - `@botiverse/oar/runtimes/<id>` (`claude`, `codex`, `pi`, `cursor`, `opencode`, `kimi`, `grok`, `antigravity`): one built-in runtime (`claudeRuntime`, …) without the others, for a host that needs only some of them. Each entry stays at about 1 to 2.5 MB of heap where the root entry takes about 50 MB: the ACP SDK (about 20 MB) loads only when an ACP runtime first opens a session, lists models (kimi, grok, antigravity) or reads grok's usage, and the pi and cursor SDKs when theirs first run. Node-only.
120
+ - `@botiverse/oar/runtimes/<id>` (`claude`, `codex`, `pi`, `cursor`, `opencode`, `kimi`, `grok`, `antigravity`): one built-in runtime (`claudeRuntime`, …; cursor's is `createCursorRuntime`) without the others, for a host that needs only some of them. Each entry stays at about 1 to 2.5 MB of heap where the root entry takes about 50 MB (Node 26, [#405](https://github.com/botiverse/oar/pull/405)): the ACP SDK (about 20 MB) loads only when an ACP runtime first opens a session, lists models (kimi, grok, antigravity) or reads grok's usage, and the pi and cursor SDKs when theirs first run. Node-only.
114
121
  - `@botiverse/oar/observe`: the browser-safe pure derivations over `RawEvent`s and `Event`s (`eventsOf`, `graphOf`, `usageOf`, `coalesceText`, `observeAgent`, `reduceStatus`, `tasksOf`, `observeStalls`, `classifyTool`, `reduceConversation`, `viewOf`, …) with no Node or adapter imports, so a browser or Electron-renderer bundle can import it directly. The root export re-exports all of them.
115
122
  It also supplies `failureAdvice` (recovery timing per `FailureClass`) and `noticeText`, `noticeTone`, `phaseLabel`, `failureText` and `taskStatusLabel`, alongside `toolActionLabel` and `toolGroupSummary`: English display wording for OAR types, usable in JavaScriptCore too. Wording may change in a minor release; hosts must use the typed values for decisions, not parse the text ([display wording](https://github.com/botiverse/oar/blob/main/docs/spec/conversation.md#display-wording)).
116
123
  - `@botiverse/oar/kernel`: the runtime-author SPI. `createSessionKernel` is the record stream every built-in adapter is built on (dense `seq`, cursor replay, control recording, the reachability rule) and `sealSession` derives the `Session` API face over an adapter. Pair with `defineRuntime` to ship a custom runtime (a scripted runtime for a host's tests, an in-process agent) without re-implementing the stream contract. `inputImagesRefusal` and `withInputImages` are the image rules every built-in runtime keeps, so a custom runtime refuses the inputs they refuse. `withdrawHeld` is the decision behind `withdraw` for a runtime that holds its own queue.
117
- - `@botiverse/oar/agents`: subagents. `createSubagents()` starts child sessions on any runtime that takes `SessionOptions.env` (not cursor), returns a report for every turn they end, takes follow-ups, enforces depth and concurrency limits, and reports each child as a task. The host takes reports with `wait` / `next` or receives them through an `onReport` hook; with `formatReport` and `reportOrigin` it can `deliver` one into a parent session so it wakes. See [subagents](https://github.com/botiverse/oar/blob/main/docs/spec/subagents.md). Node-only.
124
+ - `@botiverse/oar/agents`: subagents. `createSubagents()` starts child sessions on any runtime that takes `SessionOptions.env` (not cursor or pi-durable), returns a report for every turn they end, takes follow-ups, enforces depth and concurrency limits, and reports each child as a task. The host takes reports with `wait` / `next` or receives them through an `onReport` hook; with `formatReport` and `reportOrigin` it can `deliver` one into a parent session so it wakes. See [subagents](https://github.com/botiverse/oar/blob/main/docs/spec/subagents.md). Node-only.
118
125
  - `@botiverse/oar/agents/report`: `formatReport`, `parseReport`, `reportOrigin` and their types, with no Node or adapter imports, for a host forwarding or displaying reports. `parseReport` reads the existing report format into header fields, a structured outcome and the original body, or returns `null`. `@botiverse/oar/agents` loads every built-in runtime, because `createSubagents` defaults to them.
119
126
  - `@botiverse/oar/testing`: `scriptedRuntime({ turn })`, a ready-made runtime on the kernel SPI whose model is a script. It yields a real `Session` (same records, folds and control semantics) with no binary, login or provider, for hosts' tests and demos. A script can also start tasks (`turn.task`) that end after the turn, like a background command. Node-only.
127
+ - `@botiverse/oar/forms`: runtime config forms for a host's agent-creation UI, as plain data (`configForms` and the frozen `baselineForms`, keyed by runtime id; grok only so far) with pure `validateConfig`, `toSessionOptions` and `toModelListing`. A form states what the runtime accepts; a host may only narrow it. Loads no runtime SDK and does nothing on import, so it runs in a browser. See [config form](https://github.com/botiverse/oar/blob/main/docs/spec/config-form.md).
120
128
 
121
129
  Brand SVG files are exported at `@botiverse/oar/assets/brands/<runtime-id>.svg`. Any other deep import (`@botiverse/oar/dist/...`, source paths) is internal and may break without notice.
122
130
 
123
- Antigravity, Grok, Kimi, and OpenCode share an internal ACP v1 transport and session kernel, but only their concrete runtime identities are public. The registry deliberately does not expose a generic `acp` runtime. Pi and Cursor run in the host process through their SDKs. The pi SDK (`@earendil-works/pi-coding-agent`) is a dependency of this package. `@cursor/sdk` is an optional peer dependency, and cursor is not in `defaultRuntimes`: install the SDK (`npm install @cursor/sdk@1.0.37`) and hand it over, `createRuntimeRegistry([...defaultRuntimes.list(), createCursorRuntime({ sdk: () => import("@cursor/sdk") })])`. Written in your code, that import fails your compile if the package is missing. It is Cursor's own package under Cursor's terms, and it signs in with `CURSOR_API_KEY` or its own `Cursor.auth.login()`.
131
+ Antigravity, Grok, Kimi, and OpenCode share an internal ACP v1 transport and session kernel, but only their concrete runtime identities are public. The registry deliberately does not expose a generic `acp` runtime. Pi and Cursor run in the host process through their SDKs. The pi SDK (`@earendil-works/pi-coding-agent`) is a dependency of this package. `@cursor/sdk` is an optional peer dependency, and cursor is not in `defaultRuntimes`: install the SDK (`npm install @cursor/sdk@1.0.38`) and hand it over, `createRuntimeRegistry([...defaultRuntimes.list(), createCursorRuntime({ sdk: () => import("@cursor/sdk") })])`. Written in your code, that import fails your compile if the package is missing. It is Cursor's own package under Cursor's terms, and it signs in with `CURSOR_API_KEY` or its own `Cursor.auth.login()`.
124
132
 
125
133
  Community runtimes are contributed and maintained outside the core team (each maintainer is named on its runtime page). They ship in this package from a separate entry point, `@botiverse/oar/community`, and are not in `defaultRuntimes`: `createRuntimeRegistry([...defaultRuntimes.list(), createMorphRuntime()])` adds [Mister Morph](https://github.com/botiverse/oar/blob/main/docs/runtimes/morph.md), driven through its Console Runtime API. The `oar` CLI includes them.
126
134
 
@@ -129,8 +137,8 @@ Community runtimes are contributed and maintained outside the core team (each ma
129
137
  configuration and `SessionOptions.model`. When resuming an old Azure session,
130
138
  explicitly pass `model: "azure/<model>"`; without it, Pi can retain the
131
139
  conversation while selecting a different default model. The opening `model`
132
- event and `Session.model()` report the effective selection. OAR's `^1.0.2`
133
- dependency range already permits this upstream update. See the
140
+ event and `Session.model()` report the effective selection. OAR's `^1.3.0`
141
+ dependency range includes this upstream update. See the
134
142
  [migration evidence and limits](https://github.com/botiverse/oar/blob/main/experiments/runtime-version-checks/2026-10-05.md).
135
143
 
136
144
  The command-line interface is a separate package: `@botiverse/oar-cli`.
@@ -141,8 +149,7 @@ rejects with an `UnsupportedOptionError` (`option` names the refused
141
149
  back on it. `runtime.refusedSessionOptions` names the options a runtime
142
150
  refuses at open, each with the reason, so a host can leave them out before
143
151
  opening. One key names a value rather than an option: `mcpServerCredentials`,
144
- an `mcpServers` entry carrying `env` or `headers` (as every `serveMcpTools`
145
- entry does), refused by antigravity; leave such entries out. Some refusals
152
+ an `mcpServers` entry carrying `env` or `headers` (below). Some refusals
146
153
  depend on the value or operation: Kimi and OpenCode
147
154
  refuse a `resume` in another directory than the session's own (`option:
148
155
  "cwd"`). See
@@ -168,8 +175,8 @@ resume never replaces a name the session has. See
168
175
  relative to `cwd`. Claude, Codex, Cursor, Kimi (new sessions only), and
169
176
  OpenCode v2 support it; other runtimes refuse it. Empty or omitted adds no
170
177
  override. It keeps the primary `cwd` and does not change the sandbox mode.
171
- Project rules or instruction files in those directories may or may not load;
172
- this option does not guarantee their loading. Resume and configuration rules differ by runtime; see
178
+ Project rules or instruction files in those directories may or may not load:
179
+ the option does not guarantee it. Resume and configuration rules differ by runtime; see
173
180
  [additional directories](https://github.com/botiverse/oar/blob/main/docs/spec/runtime-matrix.md#additional-directories).
174
181
 
175
182
  `SessionOptions.outputSchema` supplies a JSON Schema object for final output.
@@ -206,13 +213,16 @@ fails: [structured output](https://github.com/botiverse/oar/blob/main/docs/spec/
206
213
 
207
214
  `SessionOptions.mcpServers` attaches MCP servers (stdio `{name, command,
208
215
  args?, env?}` or streamable HTTP `{name, type: "http", url, headers?}`) to
209
- one session, on top of the runtime's own: claude reads them from a 0600
210
- FIFO that never puts them on a disk (a temporary file on Windows), codex
211
- from its thread config overrides, grok, kimi, opencode and antigravity from
212
- ACP `session/new` / `session/resume`, pi from an extension that registers
213
- them; cursor and pi-durable refuse them. Give them again on `resume`. Their `env` and `headers` values never
216
+ one session, on top of the runtime's own, through each runtime's own channel
217
+ (claude reads them from a 0600 FIFO that never puts them on a disk, a
218
+ temporary file on Windows); cursor and pi-durable refuse them. Give them
219
+ again on `resume`. Their `env` and `headers` values never
214
220
  appear in a record or an error; antigravity, which would store them in its
215
- conversation database, refuses an entry carrying them. See the
221
+ conversation database, refuses an entry carrying them (declared as
222
+ `mcpServerCredentials`; leave such entries out). Every runtime refuses the
223
+ names `__proto__`, `__defineGetter__`, `__defineSetter__`, `__lookupGetter__`
224
+ and `__lookupSetter__` (`option: "mcpServers"`), which some runtimes drop
225
+ without a word. See the
216
226
  [channels](https://github.com/botiverse/oar/blob/main/docs/spec/runtime-matrix.md#refused-session-options)
217
227
  and each runtime page's "Session MCP servers".
218
228
 
@@ -311,9 +321,11 @@ back is answered through its `manual_code` prompt and written to the
311
321
  runtime's stdin only. It never logs the current account out first, and
312
322
  `interaction.signal` cancels it. `runtime.authStatus(installation)` reads the
313
323
  runtime's local status query. Claude, Codex and Cursor (through its SDK's
314
- own `Cursor.auth`) have both; Antigravity has neither, since its terms do not
315
- allow signing in through a third-party tool. `runtime.logout(installation)`
316
- signs those three out through their own logout (`claude auth logout`,
324
+ own `Cursor.auth`) have both; Grok, Kimi, OpenCode and Pi have neither yet
325
+ (Pi's provider logins are on `createPiProviderAuth`), and Antigravity has
326
+ neither, since its terms do not allow signing in through a third-party tool.
327
+ `runtime.logout(installation)` signs Claude, Codex and Cursor out through
328
+ their own logout (`claude auth logout`,
317
329
  `codex logout`, `Cursor.auth.logout`) and resolves `logged_out` when
318
330
  `authStatus` then reads logged out (or, when it cannot tell, on the
319
331
  runtime's own report of success); an API key in the environment is not
@@ -327,11 +339,11 @@ as the runtime's own image content. `session.capabilities.images` says whether
327
339
  the runtime takes them; an input it cannot deliver is rejected whole. See
328
340
  [Images](https://github.com/botiverse/oar/blob/main/docs/spec/conversation.md#images).
329
341
 
330
- TypeScript hosts: keep `skipLibCheck` on. With `skipLibCheck: false` and `module: nodenext`, importing `@botiverse/oar` alone reports errors inside the pi SDK's own declarations (`@earendil-works/pi-ai` imports JSON without an import attribute, TS1543); OAR's own declarations check clean. A host that installs `@cursor/sdk` and checks library files also needs the DOM lib for its `@connectrpc/connect` dependency (`HeadersInit`).
342
+ TypeScript hosts: keep `skipLibCheck` on. With `skipLibCheck: false` and `module: nodenext`, importing `@botiverse/oar` alone reports errors inside the pi SDK's declarations and their dependencies' (`@earendil-works/pi-ai` imports JSON without an import attribute, TS1543; its `@google/genai` imports the optional peer `@modelcontextprotocol/sdk`, TS2307, and without the DOM lib also misses `RequestInfo` and `HeadersInit`); OAR's own declarations check clean (TypeScript 6.0.3, clean `npm install` of 0.67.0, 2026-10-19). A host that installs `@cursor/sdk` and checks library files also needs the DOM lib for its `@connectrpc/connect` dependency (`HeadersInit`).
331
343
 
332
344
  ## Host-owned durable sessions
333
345
 
334
- Install the optional native peers in the host: `npm install @earendil-works/pi-durable@~1.2.0 @earendil-works/chord@~1.2.0`.
346
+ Install the optional native peers in the host: `npm install @earendil-works/pi-durable@~1.3.0 @earendil-works/chord@~1.3.0`.
335
347
  The factory lives only in `@botiverse/oar/pi-durable`, usable in Node and browsers.
336
348
  The root and browser core entries load without these peers.
337
349
 
@@ -348,7 +360,7 @@ session.rawEvents(() => render(viewOf(session.records())));
348
360
  await session.prompt("Hello", { inputId: crypto.randomUUID() });
349
361
  ```
350
362
 
351
- The host owns its Pi Durable 1.2.0 Harness, providers, credentials, extensions
363
+ The host owns its Pi Durable 1.3.0 Harness, providers, credentials, extensions
352
364
  and storage. `resume: session.id` attaches to that storage's conversation and
353
365
  resumes unfinished work. Queue and input-id deduplication are native and
354
366
  durable. `dispose()` detaches the observer; it does not stop work or close the
@@ -197,7 +197,7 @@ export type RuntimeEventBody = UserMessage
197
197
  readonly content?: readonly ToolOutputPart[];
198
198
  /** The runtime's explicit tool outcome; absent when it reported none. */
199
199
  readonly result?: "ok" | "failed";
200
- /** The process exit status the runtime reported for a command it ran (codex `commandExecution.exitCode`, grok and antigravity `rawOutput.exit_code`, a cursor shell result's `exitCode`); `null` when the runtime says it ended without one (a signal). Absent when the runtime reports none (claude, pi), never derived from `result` or output. */
200
+ /** The process exit status the runtime reported for a command it ran (codex `commandExecution.exitCode`, grok and antigravity `rawOutput.exit_code`, a cursor shell result's `exitCode`, pi's CodingTools `structuredContent.exit_code`, pi-durable's nested-call `result.structuredOutput.exitCode`). pi and pi-durable encode a signal as a number, 128 plus the signal number, so SIGTERM is 143, never null; a pi-durable ordinary (non-nested) tool call does not carry it and stays absent. `null` only when a runtime itself reports a numeric-less exit. Absent when the runtime reports none (claude, and any tool that is not a command run), never derived from `result` or output. */
201
201
  readonly exitCode?: number | null;
202
202
  } | ToolCallProgress
203
203
  /** The runtime's OWN completion report for a turn (claude `result`, codex `turn/completed`, pi `agent_settled`, an ACP prompt answer). A prompt request produces `turn_started`; a native active-run report produces `turn_active`. Neither implies an outcome: if a runtime reports no end, none appears. */
@@ -1 +1 @@
1
- {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../src/contracts/records.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../src/contracts/records.ts"],"names":[],"mappings":"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"}
@@ -129,7 +129,7 @@ export interface SessionOptions {
129
129
  * Exact name rules: docs/spec/record-stream.md, "Known session credentials".
130
130
  */
131
131
  readonly env?: Readonly<Record<string, string | null>>;
132
- /** REPLACE the runtime's built-in system prompt (claude --system-prompt, codex thread baseInstructions, pi resource-loader systemPrompt). Survives runtime compaction (pinned per vendor). Refused by cursor, kimi and antigravity: `session()` rejects with `UnsupportedOptionError` (`Runtime.refusedSessionOptions`, docs/spec/runtime-matrix.md#refused-session-options). */
132
+ /** REPLACE the runtime's built-in system prompt (claude --system-prompt, codex thread baseInstructions, pi resource-loader systemPrompt). Survives runtime compaction (pinned per vendor). Refused by cursor, kimi, antigravity, opencode v2 and pi-durable: `session()` rejects with `UnsupportedOptionError` (`Runtime.refusedSessionOptions`, docs/spec/runtime-matrix.md#refused-session-options). */
133
133
  readonly systemPrompt?: string;
134
134
  /** APPEND to the runtime's built-in system prompt, keeping its harness behavior intact (claude --append-system-prompt, codex developerInstructions, pi appendSystemPrompt). Survives runtime compaction (pinned per vendor). Refused by cursor, kimi and opencode v2: `session()` rejects with `UnsupportedOptionError` (`Runtime.refusedSessionOptions`, docs/spec/runtime-matrix.md#refused-session-options). */
135
135
  readonly appendSystemPrompt?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"session-options.d.ts","sourceRoot":"","sources":["../../src/contracts/session-options.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,GACvI;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC;AAEhI;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,8WAA8W;IAC9W,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D;;;;;;;;;OASG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IACvD,iXAAiX;IACjX,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,mZAAmZ;IACnZ,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IAC3C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC"}
1
+ {"version":3,"file":"session-options.d.ts","sourceRoot":"","sources":["../../src/contracts/session-options.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,GACvI;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC;AAEhI;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,8WAA8W;IAC9W,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D;;;;;;;;;OASG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IACvD,0YAA0Y;IAC1Y,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,mZAAmZ;IACnZ,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IAC3C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC"}
@@ -0,0 +1,9 @@
1
+ import type { ConfigField, FormValues, LaunchValues, ModelValue, RuntimeConfigForm } from "./types.js";
2
+ /** False when the field's `visibleWhen` is not met: an inactive branch, not part of this configuration. */
3
+ export declare function isActive(field: ConfigField, values: FormValues | LaunchValues): boolean;
4
+ /** A model value of a known shape, or null for anything else. */
5
+ export declare function asModelValue(value: unknown): ModelValue | null;
6
+ export declare function sameModel(left: unknown, right: unknown): boolean;
7
+ export declare function unknownFieldIds(form: RuntimeConfigForm, values: FormValues | LaunchValues): readonly string[];
8
+ export declare function isEmpty(value: unknown): boolean;
9
+ //# sourceMappingURL=fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../src/forms/fields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEvG,2GAA2G;AAC3G,wBAAgB,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,OAAO,CAMvF;AAOD,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAiB9D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAOhE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,MAAM,EAAE,CAE7G;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE/C"}
@@ -0,0 +1,46 @@
1
+ /** False when the field's `visibleWhen` is not met: an inactive branch, not part of this configuration. */
2
+ export function isActive(field, values) {
3
+ if (field.visibleWhen === undefined) {
4
+ return true;
5
+ }
6
+ const other = values[field.visibleWhen.field];
7
+ return typeof other === "string" && field.visibleWhen.in.includes(other);
8
+ }
9
+ function readString(value, key) {
10
+ const entry = Reflect.get(value, key);
11
+ return typeof entry === "string" && entry.trim() !== "" ? entry : undefined;
12
+ }
13
+ /** A model value of a known shape, or null for anything else. */
14
+ export function asModelValue(value) {
15
+ if (typeof value !== "object" || value === null) {
16
+ return null;
17
+ }
18
+ const kind = Reflect.get(value, "kind");
19
+ if (kind === "inherit") {
20
+ return { kind: "inherit" };
21
+ }
22
+ const id = readString(value, "id");
23
+ if (kind === "preset" && id !== undefined) {
24
+ return { kind: "preset", id };
25
+ }
26
+ const name = readString(value, "name");
27
+ if (kind === "custom" && name !== undefined) {
28
+ return { kind: "custom", name };
29
+ }
30
+ return null;
31
+ }
32
+ export function sameModel(left, right) {
33
+ const a = asModelValue(left);
34
+ const b = asModelValue(right);
35
+ if (a === null || b === null) {
36
+ return false;
37
+ }
38
+ return JSON.stringify(a) === JSON.stringify(b);
39
+ }
40
+ export function unknownFieldIds(form, values) {
41
+ return Object.keys(values).filter((id) => !form.fields.some((field) => field.id === id));
42
+ }
43
+ export function isEmpty(value) {
44
+ return value === undefined || value === null || value === "";
45
+ }
46
+ //# sourceMappingURL=fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/forms/fields.ts"],"names":[],"mappings":"AAEA,2GAA2G;AAC3G,MAAM,UAAU,QAAQ,CAAC,KAAkB,EAAE,MAAiC;IAC5E,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,GAAW;IAC5C,MAAM,KAAK,GAAY,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAY,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7B,CAAC;IACD,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,KAAK,QAAQ,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAChC,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAa,EAAE,KAAc;IACrD,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAuB,EAAE,MAAiC;IACxF,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAc;IACpC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;AAC/D,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { RuntimeConfigForm } from "./types.js";
2
+ export type * from "./types.js";
3
+ export { toModelListing, listedModels, type ListingFailure } from "./listing.js";
4
+ export { isActive } from "./fields.js";
5
+ export { validateConfig } from "./validate.js";
6
+ export { toSessionOptions, type FormSessionOptions, type SessionMapping } from "./map.js";
7
+ /** Every runtime with a migrated form, by `Runtime.id`. A runtime without one has no entry. */
8
+ export declare const configForms: Readonly<Record<string, RuntimeConfigForm>>;
9
+ /** The frozen form served to a machine that reports no capabilities. */
10
+ export declare const baselineForms: Readonly<Record<string, RuntimeConfigForm>>;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/forms/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1F,+FAA+F;AAC/F,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAElE,CAAC;AAEH,wEAAwE;AACxE,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEpE,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * `@botiverse/oar/forms`: runtime config forms as plain data plus pure
3
+ * validation and launch mapping (docs/spec/config-form.md). Loads no runtime
4
+ * SDK and does nothing on import; tests/config-form.test.ts bundles it to check.
5
+ */
6
+ import { grokBaselineForm, grokConfigForm } from "./runtimes/grok.js";
7
+ export { toModelListing, listedModels } from "./listing.js";
8
+ export { isActive } from "./fields.js";
9
+ export { validateConfig } from "./validate.js";
10
+ export { toSessionOptions } from "./map.js";
11
+ /** Every runtime with a migrated form, by `Runtime.id`. A runtime without one has no entry. */
12
+ export const configForms = Object.freeze({
13
+ grok: grokConfigForm,
14
+ });
15
+ /** The frozen form served to a machine that reports no capabilities. */
16
+ export const baselineForms = Object.freeze({
17
+ grok: grokBaselineForm,
18
+ });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/forms/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAuB,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAgD,MAAM,UAAU,CAAC;AAE1F,+FAA+F;AAC/F,MAAM,CAAC,MAAM,WAAW,GAAgD,MAAM,CAAC,MAAM,CAAC;IACpF,IAAI,EAAE,cAAc;CACrB,CAAC,CAAC;AAEH,wEAAwE;AACxE,MAAM,CAAC,MAAM,aAAa,GAAgD,MAAM,CAAC,MAAM,CAAC;IACtF,IAAI,EAAE,gBAAgB;CACvB,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { ListModelsResult, ModelEntry } from "../contracts/list-models.js";
2
+ import type { ModelListing } from "./types.js";
3
+ /** A listing attempt that did not return a `ListModelsResult` (the host saw the failure). */
4
+ export interface ListingFailure {
5
+ readonly kind: "error";
6
+ readonly reason: "timeout" | "failed" | "machine_offline";
7
+ }
8
+ /**
9
+ * A `listModels` outcome as a form listing. "Not enumerated" is a status with a
10
+ * reason, never an empty list: an empty result is `empty`, and a host-supplied
11
+ * bundled list makes a non-live outcome a `fallback` that still names why.
12
+ */
13
+ export declare function toModelListing(outcome: ListModelsResult | ListingFailure, bundled?: readonly ModelEntry[]): ModelListing;
14
+ export declare function listedModels(listing: ModelListing): readonly ModelEntry[];
15
+ //# sourceMappingURL=listing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listing.d.ts","sourceRoot":"","sources":["../../src/forms/listing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,YAAY,CAAC;AAE9D,6FAA6F;AAC7F,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,iBAAiB,CAAC;CAC3D;AAYD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,GAAG,cAAc,EAC1C,OAAO,GAAE,SAAS,UAAU,EAAO,GAClC,YAAY,CASd;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,UAAU,EAAE,CAEzE"}
@@ -0,0 +1,28 @@
1
+ function reasonOf(outcome) {
2
+ if (outcome.kind === "ok") {
3
+ return "empty";
4
+ }
5
+ if (outcome.kind === "error") {
6
+ return outcome.reason;
7
+ }
8
+ return outcome.kind;
9
+ }
10
+ /**
11
+ * A `listModels` outcome as a form listing. "Not enumerated" is a status with a
12
+ * reason, never an empty list: an empty result is `empty`, and a host-supplied
13
+ * bundled list makes a non-live outcome a `fallback` that still names why.
14
+ */
15
+ export function toModelListing(outcome, bundled = []) {
16
+ if (outcome.kind === "ok" && outcome.models.length > 0) {
17
+ return { status: "live", models: outcome.models };
18
+ }
19
+ const reason = reasonOf(outcome);
20
+ if (bundled.length > 0) {
21
+ return { status: "fallback", source: "bundled", reason, models: bundled };
22
+ }
23
+ return { status: "unavailable", reason };
24
+ }
25
+ export function listedModels(listing) {
26
+ return listing.status === "unavailable" ? [] : listing.models;
27
+ }
28
+ //# sourceMappingURL=listing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listing.js","sourceRoot":"","sources":["../../src/forms/listing.ts"],"names":[],"mappings":"AASA,SAAS,QAAQ,CAAC,OAA0C;IAC1D,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,MAAM,CAAC;IACxB,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,OAA0C,EAC1C,UAAiC,EAAE;IAEnC,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IACpD,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAqB;IAChD,OAAO,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AAChE,CAAC"}
@@ -0,0 +1,32 @@
1
+ import type { ConfigIssue, LaunchValues, RuntimeConfigForm } from "./types.js";
2
+ import type { SessionOptions } from "../contracts/session-options.js";
3
+ /** The `SessionOptions` members a form maps; everything else stays the host's. */
4
+ export type FormSessionOptions = Partial<Pick<SessionOptions, "model" | "effort">>;
5
+ export type SessionMapping = {
6
+ readonly ok: true;
7
+ readonly options: FormSessionOptions;
8
+ /**
9
+ * Active select, text and boolean values, by field id. They have no shared
10
+ * `SessionOptions` member, so they are handed back for the runtime's own
11
+ * mapping instead of being dropped; the caller must apply or refuse them.
12
+ */
13
+ readonly unmapped: Readonly<Record<string, string | boolean>>;
14
+ /**
15
+ * Resolved secrets of active secret fields, by field id, kept apart from
16
+ * `unmapped` so a caller never handles them as ordinary values (or logs
17
+ * them). The runtime's own mapping applies them; none is dropped.
18
+ */
19
+ readonly secrets: Readonly<Record<string, string>>;
20
+ } | {
21
+ readonly ok: false;
22
+ readonly issues: readonly ConfigIssue[];
23
+ };
24
+ /**
25
+ * Resolved launch values to session options (docs/spec/config-form.md,
26
+ * "Launch mapping"). Pure: credentials arrive already resolved by the host.
27
+ * Inactive branches never launch; a value outside the form's declared modes
28
+ * is refused, never dropped; a required secret that resolves to nothing is
29
+ * `secret_missing`, never an empty option.
30
+ */
31
+ export declare function toSessionOptions(form: RuntimeConfigForm, values: LaunchValues): SessionMapping;
32
+ //# sourceMappingURL=map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/forms/map.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,WAAW,EAAe,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACzG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,kFAAkF;AAClF,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC;AAWnF,MAAM,MAAM,cAAc,GACtB;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAC9D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD,GACD;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,CAAC;AA+CpE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,cAAc,CAoB9F"}
@@ -0,0 +1,76 @@
1
+ import { asModelValue, isActive, isEmpty, unknownFieldIds } from "./fields.js";
2
+ function modelContribution(field, value) {
3
+ const model = asModelValue(value);
4
+ if (model === null) {
5
+ return { issue: "invalid_shape" };
6
+ }
7
+ if (!(field.launchModes ?? field.modes).includes(model.kind)) {
8
+ return { issue: "mode_not_allowed" };
9
+ }
10
+ if (model.kind === "preset") {
11
+ return { model: model.id };
12
+ }
13
+ return model.kind === "custom" ? { model: model.name } : {};
14
+ }
15
+ function presentSecret(value) {
16
+ if (typeof value !== "object" || value === null || Reflect.get(value, "present") !== true) {
17
+ return undefined;
18
+ }
19
+ const secret = Reflect.get(value, "value");
20
+ return typeof secret === "string" ? secret : undefined;
21
+ }
22
+ function contribution(field, value) {
23
+ if (field.kind === "secret") {
24
+ const secret = presentSecret(value);
25
+ if (secret !== undefined) {
26
+ return { secret };
27
+ }
28
+ return field.required ? { issue: "secret_missing" } : {};
29
+ }
30
+ if (isEmpty(value)) {
31
+ return field.required ? { issue: "required" } : {};
32
+ }
33
+ if (field.kind === "model") {
34
+ return modelContribution(field, value);
35
+ }
36
+ if (typeof value !== "string" && typeof value !== "boolean") {
37
+ return { issue: "invalid_shape" };
38
+ }
39
+ if (field.kind === "effort") {
40
+ return typeof value === "string" ? { effort: value } : { issue: "invalid_shape" };
41
+ }
42
+ return { unmapped: value };
43
+ }
44
+ /**
45
+ * Resolved launch values to session options (docs/spec/config-form.md,
46
+ * "Launch mapping"). Pure: credentials arrive already resolved by the host.
47
+ * Inactive branches never launch; a value outside the form's declared modes
48
+ * is refused, never dropped; a required secret that resolves to nothing is
49
+ * `secret_missing`, never an empty option.
50
+ */
51
+ export function toSessionOptions(form, values) {
52
+ const issues = unknownFieldIds(form, values).map((id) => ({ field: id, code: "unknown_field" }));
53
+ const options = {};
54
+ const unmapped = {};
55
+ const secrets = {};
56
+ for (const field of form.fields.filter((candidate) => isActive(candidate, values))) {
57
+ const part = contribution(field, values[field.id]);
58
+ if ("issue" in part) {
59
+ issues.push({ field: field.id, code: part.issue });
60
+ }
61
+ else if ("model" in part) {
62
+ options.model = part.model;
63
+ }
64
+ else if ("effort" in part) {
65
+ options.effort = part.effort;
66
+ }
67
+ else if ("unmapped" in part) {
68
+ unmapped[field.id] = part.unmapped;
69
+ }
70
+ else if ("secret" in part) {
71
+ secrets[field.id] = part.secret;
72
+ }
73
+ }
74
+ return issues.length > 0 ? { ok: false, issues } : { ok: true, options, unmapped, secrets };
75
+ }
76
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/forms/map.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { RuntimeConfigForm } from "../types.js";
2
+ /**
3
+ * Grok's form, as the runtime accepts it: its own default model, a listed
4
+ * model or a typed id, and the reasoning effort the chosen model lists. A host
5
+ * that offers less narrows this form itself.
6
+ */
7
+ export declare const grokConfigForm: RuntimeConfigForm;
8
+ /**
9
+ * The form a machine that sends no capability report gets: frozen at the
10
+ * first release that carries Grok's form and never changed afterwards.
11
+ * A separate literal on purpose: editing `grokConfigForm` must not change what
12
+ * old daemons receive (tests pin this copy).
13
+ */
14
+ export declare const grokBaselineForm: RuntimeConfigForm;
15
+ //# sourceMappingURL=grok.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grok.d.ts","sourceRoot":"","sources":["../../../src/forms/runtimes/grok.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,iBAqB5B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,iBAqB9B,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Grok's form, as the runtime accepts it: its own default model, a listed
3
+ * model or a typed id, and the reasoning effort the chosen model lists. A host
4
+ * that offers less narrows this form itself.
5
+ */
6
+ export const grokConfigForm = {
7
+ protocol: 1,
8
+ runtime: "grok",
9
+ fields: [
10
+ {
11
+ id: "model",
12
+ kind: "model",
13
+ modes: ["inherit", "preset", "custom"],
14
+ required: false,
15
+ label: { key: "runtime_form.grok.model.label", en: "Model" },
16
+ hint: { key: "runtime_form.grok.model.hint", en: "Models available from this computer's Grok CLI. A typed model id the CLI does not know fails when the agent starts." },
17
+ },
18
+ {
19
+ id: "reasoningEffort",
20
+ kind: "effort",
21
+ modelField: "model",
22
+ required: false,
23
+ label: { key: "runtime_form.grok.reasoning_effort.label", en: "Reasoning" },
24
+ hint: { key: "runtime_form.grok.reasoning_effort.hint", en: "Available values depend on the selected model." },
25
+ },
26
+ ],
27
+ };
28
+ /**
29
+ * The form a machine that sends no capability report gets: frozen at the
30
+ * first release that carries Grok's form and never changed afterwards.
31
+ * A separate literal on purpose: editing `grokConfigForm` must not change what
32
+ * old daemons receive (tests pin this copy).
33
+ */
34
+ export const grokBaselineForm = {
35
+ protocol: 1,
36
+ runtime: "grok",
37
+ fields: [
38
+ {
39
+ id: "model",
40
+ kind: "model",
41
+ modes: ["inherit", "preset", "custom"],
42
+ required: false,
43
+ label: { key: "runtime_form.grok.model.label", en: "Model" },
44
+ hint: { key: "runtime_form.grok.model.hint", en: "Models available from this computer's Grok CLI. A typed model id the CLI does not know fails when the agent starts." },
45
+ },
46
+ {
47
+ id: "reasoningEffort",
48
+ kind: "effort",
49
+ modelField: "model",
50
+ required: false,
51
+ label: { key: "runtime_form.grok.reasoning_effort.label", en: "Reasoning" },
52
+ hint: { key: "runtime_form.grok.reasoning_effort.hint", en: "Available values depend on the selected model." },
53
+ },
54
+ ],
55
+ };
56
+ //# sourceMappingURL=grok.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grok.js","sourceRoot":"","sources":["../../../src/forms/runtimes/grok.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,MAAM;IACf,MAAM,EAAE;QACN;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACtC,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE,GAAG,EAAE,+BAA+B,EAAE,EAAE,EAAE,OAAO,EAAE;YAC5D,IAAI,EAAE,EAAE,GAAG,EAAE,8BAA8B,EAAE,EAAE,EAAE,qHAAqH,EAAE;SACzK;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE,GAAG,EAAE,0CAA0C,EAAE,EAAE,EAAE,WAAW,EAAE;YAC3E,IAAI,EAAE,EAAE,GAAG,EAAE,yCAAyC,EAAE,EAAE,EAAE,gDAAgD,EAAE;SAC/G;KACF;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,MAAM;IACf,MAAM,EAAE;QACN;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACtC,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE,GAAG,EAAE,+BAA+B,EAAE,EAAE,EAAE,OAAO,EAAE;YAC5D,IAAI,EAAE,EAAE,GAAG,EAAE,8BAA8B,EAAE,EAAE,EAAE,qHAAqH,EAAE;SACzK;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE,GAAG,EAAE,0CAA0C,EAAE,EAAE,EAAE,WAAW,EAAE;YAC3E,IAAI,EAAE,EAAE,GAAG,EAAE,yCAAyC,EAAE,EAAE,EAAE,gDAAgD,EAAE;SAC/G;KACF;CACF,CAAC"}