@botiverse/oar 0.29.0 → 0.31.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 (100) hide show
  1. package/README.md +14 -3
  2. package/dist/community/morph/session.d.ts.map +1 -1
  3. package/dist/community/morph/session.js +1 -0
  4. package/dist/community/morph/session.js.map +1 -1
  5. package/dist/contracts/records.d.ts +5 -5
  6. package/dist/contracts/runtime.d.ts +3 -3
  7. package/dist/contracts/runtime.d.ts.map +1 -1
  8. package/dist/contracts/session-options.d.ts +83 -0
  9. package/dist/contracts/session-options.d.ts.map +1 -0
  10. package/dist/contracts/session-options.js +7 -0
  11. package/dist/contracts/session-options.js.map +1 -0
  12. package/dist/contracts/session.d.ts +3 -42
  13. package/dist/contracts/session.d.ts.map +1 -1
  14. package/dist/index.d.ts +1 -1
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/observe/usage.d.ts +4 -4
  18. package/dist/observe/usage.js +4 -4
  19. package/dist/runtimes/antigravity/session.d.ts.map +1 -1
  20. package/dist/runtimes/antigravity/session.js +3 -2
  21. package/dist/runtimes/antigravity/session.js.map +1 -1
  22. package/dist/runtimes/claude/launch.d.ts +16 -0
  23. package/dist/runtimes/claude/launch.d.ts.map +1 -0
  24. package/dist/runtimes/claude/launch.js +80 -0
  25. package/dist/runtimes/claude/launch.js.map +1 -0
  26. package/dist/runtimes/claude/session.d.ts.map +1 -1
  27. package/dist/runtimes/claude/session.js +2 -20
  28. package/dist/runtimes/claude/session.js.map +1 -1
  29. package/dist/runtimes/codex/app-server-client.d.ts +4 -1
  30. package/dist/runtimes/codex/app-server-client.d.ts.map +1 -1
  31. package/dist/runtimes/codex/app-server-client.js +8 -2
  32. package/dist/runtimes/codex/app-server-client.js.map +1 -1
  33. package/dist/runtimes/codex/open.d.ts +23 -2
  34. package/dist/runtimes/codex/open.d.ts.map +1 -1
  35. package/dist/runtimes/codex/open.js +49 -3
  36. package/dist/runtimes/codex/open.js.map +1 -1
  37. package/dist/runtimes/codex/projection.d.ts +7 -2
  38. package/dist/runtimes/codex/projection.d.ts.map +1 -1
  39. package/dist/runtimes/codex/projection.js +12 -49
  40. package/dist/runtimes/codex/projection.js.map +1 -1
  41. package/dist/runtimes/codex/session.d.ts.map +1 -1
  42. package/dist/runtimes/codex/session.js +12 -6
  43. package/dist/runtimes/codex/session.js.map +1 -1
  44. package/dist/runtimes/codex/token-usage.d.ts +57 -0
  45. package/dist/runtimes/codex/token-usage.d.ts.map +1 -0
  46. package/dist/runtimes/codex/token-usage.js +82 -0
  47. package/dist/runtimes/codex/token-usage.js.map +1 -0
  48. package/dist/runtimes/cursor/model.d.ts.map +1 -1
  49. package/dist/runtimes/cursor/model.js +1 -0
  50. package/dist/runtimes/cursor/model.js.map +1 -1
  51. package/dist/runtimes/grok/index.d.ts +1 -0
  52. package/dist/runtimes/grok/index.d.ts.map +1 -1
  53. package/dist/runtimes/grok/index.js +2 -1
  54. package/dist/runtimes/grok/index.js.map +1 -1
  55. package/dist/runtimes/grok/session.d.ts +2 -0
  56. package/dist/runtimes/grok/session.d.ts.map +1 -1
  57. package/dist/runtimes/grok/session.js +18 -2
  58. package/dist/runtimes/grok/session.js.map +1 -1
  59. package/dist/runtimes/kimi/session.d.ts.map +1 -1
  60. package/dist/runtimes/kimi/session.js +3 -2
  61. package/dist/runtimes/kimi/session.js.map +1 -1
  62. package/dist/runtimes/opencode/index.d.ts +1 -1
  63. package/dist/runtimes/opencode/index.js +1 -1
  64. package/dist/runtimes/opencode/index.js.map +1 -1
  65. package/dist/runtimes/opencode/prompt-config.d.ts +13 -0
  66. package/dist/runtimes/opencode/prompt-config.d.ts.map +1 -0
  67. package/dist/runtimes/opencode/prompt-config.js +113 -0
  68. package/dist/runtimes/opencode/prompt-config.js.map +1 -0
  69. package/dist/runtimes/opencode/session.d.ts +2 -1
  70. package/dist/runtimes/opencode/session.d.ts.map +1 -1
  71. package/dist/runtimes/opencode/session.js +65 -6
  72. package/dist/runtimes/opencode/session.js.map +1 -1
  73. package/dist/runtimes/pi/index.d.ts +1 -0
  74. package/dist/runtimes/pi/index.d.ts.map +1 -1
  75. package/dist/runtimes/pi/index.js +2 -1
  76. package/dist/runtimes/pi/index.js.map +1 -1
  77. package/dist/runtimes/pi/projection.d.ts +3 -2
  78. package/dist/runtimes/pi/projection.d.ts.map +1 -1
  79. package/dist/runtimes/pi/projection.js.map +1 -1
  80. package/dist/runtimes/pi/session.d.ts +2 -0
  81. package/dist/runtimes/pi/session.d.ts.map +1 -1
  82. package/dist/runtimes/pi/session.js +5 -0
  83. package/dist/runtimes/pi/session.js.map +1 -1
  84. package/dist/shared/executable/run.d.ts +1 -0
  85. package/dist/shared/executable/run.d.ts.map +1 -1
  86. package/dist/shared/executable/run.js +1 -0
  87. package/dist/shared/executable/run.js.map +1 -1
  88. package/dist/shared/mcp-servers.d.ts +24 -0
  89. package/dist/shared/mcp-servers.d.ts.map +1 -0
  90. package/dist/shared/mcp-servers.js +45 -0
  91. package/dist/shared/mcp-servers.js.map +1 -0
  92. package/dist/shared/session-options.d.ts +1 -1
  93. package/dist/shared/session-options.d.ts.map +1 -1
  94. package/dist/shared/session-options.js +5 -2
  95. package/dist/shared/session-options.js.map +1 -1
  96. package/dist/shared/token-totals.d.ts +9 -0
  97. package/dist/shared/token-totals.d.ts.map +1 -1
  98. package/dist/shared/token-totals.js +16 -0
  99. package/dist/shared/token-totals.js.map +1 -1
  100. package/package.json +1 -1
@@ -1,11 +1,11 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { spawnLineProcess } from "../../shared/executable/index.js";
3
2
  import { withInputImages } from "../../shared/input-images.js";
4
3
  import { withdrawControl } from "../../shared/held-input.js";
5
4
  import { asRecord, parseJson } from "../../shared/json.js";
6
5
  import { sealSession } from "../../shared/seal-session.js";
7
6
  import { createSessionKernel } from "../../shared/session-kernel.js";
8
7
  import { CLAUDE_EFFORT_READBACK_MS, claudeControlResponseId, claudeEffortRefusal, claudeSettingsRequest, } from "./effort.js";
8
+ import { launchClaude } from "./launch.js";
9
9
  import { claudeAbortRequested, claudePrompted, foldClaudeStdout, initialClaudeProjection, } from "./projection.js";
10
10
  /*
11
11
  * Live semantics this adapter is built on (drydock probes, 2026-08-21):
@@ -50,25 +50,7 @@ export const claudeSession = async (installation, options) => {
50
50
  // (--session-id) or reattach to an existing one (--resume), so Session.id
51
51
  // is always the runtime-native persistent id.
52
52
  const sessionId = options.resume ?? randomUUID();
53
- const child = spawnLineProcess(installation.command, [
54
- "-p",
55
- "--input-format", "stream-json",
56
- "--output-format", "stream-json",
57
- "--verbose", "--replay-user-messages",
58
- // YOLO by default (repo policy, 2026-08-24): in embedded/SDK use there is
59
- // no human at an approval prompt: a permission gate is a hang, not
60
- // safety. Isolation is the sandbox's job, not the approval flow's.
61
- "--dangerously-skip-permissions",
62
- ...(options.resume === undefined ? ["--session-id", sessionId] : ["--resume", sessionId]),
63
- ...(options.model === undefined ? [] : ["--model", options.model]),
64
- ...(options.effort === undefined ? [] : ["--effort", options.effort]),
65
- ...(options.systemPrompt === undefined ? [] : ["--system-prompt", options.systemPrompt]),
66
- ...(options.appendSystemPrompt === undefined ? [] : ["--append-system-prompt", options.appendSystemPrompt]),
67
- ], {
68
- cwd: options.cwd,
69
- env: { ...process.env, CLAUDECODE: undefined, ...options.env },
70
- });
71
- await child.spawned;
53
+ const child = await launchClaude(installation.command, sessionId, options);
72
54
  const kernel = createSessionKernel(sessionId);
73
55
  const state = {
74
56
  child,
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/runtimes/claude/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/runtimes/claude/session.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,9 @@ export interface AppServerClient {
50
50
  kill(): void;
51
51
  }
52
52
  /** How the app-server process is handled: whether its stderr may reach the host's, and whether a kill takes its Windows process tree. */
53
- export type AppServerProcessOptions = Pick<LineProcessOptions, "inheritStderr" | "killTree">;
53
+ export interface AppServerProcessOptions extends Pick<LineProcessOptions, "inheritStderr" | "killTree"> {
54
+ /** Applied to the text of every error the client reports (codex's error message, the exit's stderr tail): a session's MCP credentials must never reach one. */
55
+ readonly redact?: (text: string) => string;
56
+ }
54
57
  export declare function startAppServerClient(command: string, env?: Readonly<Record<string, string>>, configOverrides?: Readonly<Record<string, string>>, cwd?: string, processOptions?: AppServerProcessOptions): AppServerClient;
55
58
  //# sourceMappingURL=app-server-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-server-client.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/app-server-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAE7F,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG5E;;;;GAIG;AACH,gFAAgF;AAChF,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACxD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;CACpF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5G,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IACjD;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC1C;;;;;;OAMG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IACrD,IAAI,IAAI,IAAI,CAAC;CACd;AAQD,yIAAyI;AACzI,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,kBAAkB,EAAE,eAAe,GAAG,UAAU,CAAC,CAAC;AAE7F,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACtC,eAAe,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM,EACtD,GAAG,CAAC,EAAE,MAAM,EACZ,cAAc,GAAE,uBAA4B,GAC3C,eAAe,CAIjB"}
1
+ {"version":3,"file":"app-server-client.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/app-server-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAE7F,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG5E;;;;GAIG;AACH,gFAAgF;AAChF,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GACxD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;CACpF;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5G,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IACjD;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC1C;;;;;;OAMG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IACrD,IAAI,IAAI,IAAI,CAAC;CACd;AAQD,yIAAyI;AACzI,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,kBAAkB,EAAE,eAAe,GAAG,UAAU,CAAC;IACrG,+JAA+J;IAC/J,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACtC,eAAe,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM,EACtD,GAAG,CAAC,EAAE,MAAM,EACZ,cAAc,GAAE,uBAA4B,GAC3C,eAAe,CAIjB"}
@@ -33,6 +33,7 @@ function createAppServerClient(command, env, configOverrides, cwd, processOption
33
33
  };
34
34
  let nextId = 1;
35
35
  let exitFailure = null;
36
+ const redact = processOptions.redact ?? ((text) => text);
36
37
  child.onLine((line) => {
37
38
  const message = asRecord(parseJson(line));
38
39
  if (message === null) {
@@ -60,7 +61,7 @@ function createAppServerClient(command, env, configOverrides, cwd, processOption
60
61
  pending.delete(message.id);
61
62
  const error = asRecord(message.error);
62
63
  if (error !== null) {
63
- const failure = new Error(typeof error.message === "string" ? error.message : "app-server error");
64
+ const failure = new Error(redact(typeof error.message === "string" ? error.message : "app-server error"));
64
65
  waiter?.settled({ kind: "error", error: failure });
65
66
  waiter?.reject(failure);
66
67
  }
@@ -72,7 +73,12 @@ function createAppServerClient(command, env, configOverrides, cwd, processOption
72
73
  }
73
74
  });
74
75
  child.onExit(() => {
75
- exitFailure = processFailure("app-server exited", child.diagnostics());
76
+ const diagnostics = child.diagnostics();
77
+ exitFailure = processFailure("app-server exited", {
78
+ ...diagnostics,
79
+ stderr: redact(diagnostics.stderr),
80
+ ...(diagnostics.error === undefined ? {} : { error: { ...diagnostics.error, message: redact(diagnostics.error.message) } }),
81
+ });
76
82
  for (const waiter of pending.values()) {
77
83
  const error = exitFailure;
78
84
  waiter.settled({ kind: "error", error });
@@ -1 +1 @@
1
- {"version":3,"file":"app-server-client.js","sourceRoot":"","sources":["../../../src/runtimes/codex/app-server-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-server-client.js","sourceRoot":"","sources":["../../../src/runtimes/codex/app-server-client.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,31 @@
1
- import type { RuntimeEventBody, SessionOptions } from "../../contracts/session.js";
1
+ import type { McpServer, RuntimeEventBody, SessionOptions } from "../../contracts/session.js";
2
2
  import { type JsonRecord } from "../../shared/json.js";
3
3
  export type CodexOpenMethod = "thread/start" | "thread/resume";
4
- /** The open request for these options: a new thread, or a resume of `options.resume`. */
4
+ /**
5
+ * SessionOptions.mcpServers as codex's `mcp_servers` config table, one
6
+ * entry per server: stdio `{command, args, env}`, http `{url, http_headers}`
7
+ * ([env] 0.160.1 against a scripted provider: both start and their tools are
8
+ * called). codex merges config overrides into the user's config.toml field
9
+ * by field, so an entry named like one of the user's own is merged into it:
10
+ * oar sets `args` (an array is replaced whole) and `enabled = true` so the
11
+ * user's `args` or `enabled = false` cannot change or silently drop the
12
+ * session's server; the user's other fields of that entry (more `env` keys,
13
+ * `env_vars`, `cwd`, timeouts, tool filters) stay, and an entry of the other
14
+ * transport fails the open ("url is not supported for stdio"). Nested under
15
+ * one `mcp_servers` key rather than dotted `mcp_servers.<name>` keys, which
16
+ * a `.` in a name would split. Throws on a list with an empty, repeated or
17
+ * codex-invalid name.
18
+ */
19
+ export declare function codexMcpServersConfig(servers: readonly McpServer[]): JsonRecord;
20
+ /**
21
+ * The open request for these options: a new thread, or a resume of
22
+ * `options.resume`; and the redactor for the MCP credentials its `config`
23
+ * carries, through which every error codex reports for this session goes.
24
+ */
5
25
  export declare function codexThreadOpen(options: SessionOptions): {
6
26
  readonly method: CodexOpenMethod;
7
27
  readonly params: JsonRecord;
28
+ readonly redact: (text: string) => string;
8
29
  };
9
30
  /**
10
31
  * The open reply read back: the model and effort codex says the thread runs
@@ -1 +1 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/open.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAQjE,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC;AAE/D,yFAAyF;AACzF,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,CAqD1H;AAQD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,GAChB;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAkBzH;AAED,wGAAwG;AACxG,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAE/C;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EACzC,QAAQ,EAAE,UAAU,GAAG,IAAI,GAC1B,MAAM,GAAG,IAAI,CASf"}
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/open.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AASjE,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,eAAe,CAAC;AAK/D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,SAAS,EAAE,GAAG,UAAU,CAS/E;AAOD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,CA+DrK;AAQD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,UAAU,GAChB;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAkBzH;AAED,wGAAwG;AACxG,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAE/C;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EACzC,QAAQ,EAAE,UAAU,GAAG,IAAI,GAC1B,MAAM,GAAG,IAAI,CASf"}
@@ -1,6 +1,43 @@
1
1
  import { asRecord } from "../../shared/json.js";
2
- /** The open request for these options: a new thread, or a resume of `options.resume`. */
2
+ import { checkMcpServerNames, givenMcpServers, isHttpMcpServer, mcpCredentialRedactor } from "../../shared/mcp-servers.js";
3
+ /** The names codex starts an MCP server under; any other fails that server's startup after the thread opened ([env] 0.160.1). */
4
+ const CODEX_MCP_SERVER_NAME = /^[\w:@/.-]+$/u;
5
+ /**
6
+ * SessionOptions.mcpServers as codex's `mcp_servers` config table, one
7
+ * entry per server: stdio `{command, args, env}`, http `{url, http_headers}`
8
+ * ([env] 0.160.1 against a scripted provider: both start and their tools are
9
+ * called). codex merges config overrides into the user's config.toml field
10
+ * by field, so an entry named like one of the user's own is merged into it:
11
+ * oar sets `args` (an array is replaced whole) and `enabled = true` so the
12
+ * user's `args` or `enabled = false` cannot change or silently drop the
13
+ * session's server; the user's other fields of that entry (more `env` keys,
14
+ * `env_vars`, `cwd`, timeouts, tool filters) stay, and an entry of the other
15
+ * transport fails the open ("url is not supported for stdio"). Nested under
16
+ * one `mcp_servers` key rather than dotted `mcp_servers.<name>` keys, which
17
+ * a `.` in a name would split. Throws on a list with an empty, repeated or
18
+ * codex-invalid name.
19
+ */
20
+ export function codexMcpServersConfig(servers) {
21
+ checkMcpServerNames(servers);
22
+ const invalid = servers.find((server) => !CODEX_MCP_SERVER_NAME.test(server.name));
23
+ if (invalid !== undefined) {
24
+ throw new Error(`codex starts no MCP server named ${JSON.stringify(invalid.name)}: its names match ${CODEX_MCP_SERVER_NAME.source}`);
25
+ }
26
+ return Object.fromEntries(servers.map((server) => [server.name, isHttpMcpServer(server)
27
+ ? { url: server.url, ...(server.headers === undefined ? {} : { http_headers: server.headers }), enabled: true }
28
+ : { command: server.command, args: server.args ?? [], ...(server.env === undefined ? {} : { env: server.env }), enabled: true }]));
29
+ }
30
+ /** A `config` param holding these overrides, or none when there are none. */
31
+ function configParams(config) {
32
+ return Object.keys(config).length === 0 ? {} : { config };
33
+ }
34
+ /**
35
+ * The open request for these options: a new thread, or a resume of
36
+ * `options.resume`; and the redactor for the MCP credentials its `config`
37
+ * carries, through which every error codex reports for this session goes.
38
+ */
3
39
  export function codexThreadOpen(options) {
40
+ const redact = mcpCredentialRedactor(options.mcpServers);
4
41
  // System prompt seams (probed 2026-08-24 via the aimock journal):
5
42
  // baseInstructions REPLACES codex's base prompt; developerInstructions
6
43
  // APPENDS as a developer message. "instructions"/"userInstructions" are
@@ -19,11 +56,18 @@ export function codexThreadOpen(options) {
19
56
  // gpt-6-luna thread resumed as gpt-6-astra). A resume sets the effort on
20
57
  // the loaded thread instead (codexResumeEffort). Per-turn `turn/start
21
58
  // {effort}` would miss a turn codex starts from its queue.
22
- const effortParams = options.effort === undefined ? {} : { config: { model_reasoning_effort: options.effort } };
59
+ const effortConfig = options.effort === undefined ? {} : { model_reasoning_effort: options.effort };
60
+ // SessionOptions.mcpServers on BOTH methods: codex remembers none for a
61
+ // thread. A resume carrying this override kept the thread's own model and
62
+ // effort ([env] 0.160.1, scripted provider, pinned by the codex vendor
63
+ // test), unlike the live rebuild above; not yet re-checked on a login.
64
+ const mcpServers = givenMcpServers(options.mcpServers);
65
+ const mcpConfig = mcpServers === null ? {} : { mcp_servers: codexMcpServersConfig(mcpServers) };
23
66
  const modelParams = options.model === undefined ? {} : { model: options.model };
24
67
  if (options.resume === undefined) {
25
68
  return {
26
69
  method: "thread/start",
70
+ redact,
27
71
  params: {
28
72
  cwd: options.cwd,
29
73
  ...modelParams,
@@ -33,12 +77,13 @@ export function codexThreadOpen(options) {
33
77
  // lets us distinguish redaction from genuinely empty reasoning.
34
78
  experimentalRawEvents: true,
35
79
  ...instructionParams,
36
- ...effortParams,
80
+ ...configParams({ ...effortConfig, ...mcpConfig }),
37
81
  },
38
82
  };
39
83
  }
40
84
  return {
41
85
  method: "thread/resume",
86
+ redact,
42
87
  params: {
43
88
  threadId: options.resume,
44
89
  excludeTurns: true,
@@ -51,6 +96,7 @@ export function codexThreadOpen(options) {
51
96
  ...modelParams,
52
97
  approvalPolicy: "never",
53
98
  ...instructionParams,
99
+ ...configParams(mcpConfig),
54
100
  },
55
101
  };
56
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/runtimes/codex/open.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAmB,MAAM,sBAAsB,CAAC;AAUjE,yFAAyF;AACzF,MAAM,UAAU,eAAe,CAAC,OAAuB;IACrD,kEAAkE;IAClE,uEAAuE;IACvE,wEAAwE;IACxE,oCAAoC;IACpC,MAAM,iBAAiB,GAAG;QACxB,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;QACzF,GAAG,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC;KAC3G,CAAC;IACF,wEAAwE;IACxE,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,oEAAoE;IACpE,2EAA2E;IAC3E,oEAAoE;IACpE,yEAAyE;IACzE,sEAAsE;IACtE,2DAA2D;IAC3D,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,sBAAsB,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAChH,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IAChF,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO;YACL,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE;gBACN,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,GAAG,WAAW;gBACd,cAAc,EAAE,OAAO;gBACvB,mEAAmE;gBACnE,sEAAsE;gBACtE,gEAAgE;gBAChE,qBAAqB,EAAE,IAAI;gBAC3B,GAAG,iBAAiB;gBACpB,GAAG,YAAY;aAChB;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE;YACN,QAAQ,EAAE,OAAO,CAAC,MAAM;YACxB,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,mEAAmE;YACnE,6DAA6D;YAC7D,oEAAoE;YACpE,qEAAqE;YACrE,+CAA+C;YAC/C,GAAG,WAAW;YACd,cAAc,EAAE,OAAO;YACvB,GAAG,iBAAiB;SACrB;KACF,CAAC;AACJ,CAAC;AAED,8HAA8H;AAC9H,SAAS,QAAQ,CAAC,MAAyB;IACzC,MAAM,MAAM,GAAG,MAAM,EAAE,eAAe,IAAI,MAAM,EAAE,MAAM,CAAC;IACzD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAuB,EACvB,OAAuB,EACvB,KAAiB;IAEjB,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAuB;QACjC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9D,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,MAAM,EAAE,CAAC,CAAC;KAClE,CAAC;IACF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;QAC7E,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,eAAe,KAAK,aAAa,OAAO,CAAC,KAAK,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAChI,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IACjE,CAAC;IACD,MAAM,IAAI,GAAG,iBAAiB,IAAI,KAAK,CAAC,CAAC,CAAC,eAAe,MAAM,IAAI,4BAA4B,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC;IACjI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,IAAI,IAAI,oBAAoB,OAAO,CAAC,MAAM,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AAC5H,CAAC;AAED,wGAAwG;AACxG,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAAiB,EACjB,MAAyC,EACzC,QAA2B;IAE3B,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,uCAAuC,SAAS,YAAY,MAAM,CAAC,KAAK,EAAE,CAAC;IACpF,CAAC;IACD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,oDAAoD,MAAM,CAAC,wBAAwB,CAAC,kBAAkB,SAAS,sBAAsB,CAAC;IAC/I,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,4CAA4C,MAAM,IAAI,4BAA4B,aAAa,SAAS,gBAAgB,CAAC;AAChK,CAAC"}
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/runtimes/codex/open.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import type { FrameBody, SessionEdge } from "../../contracts/session.js";
2
2
  import { type JsonRecord } from "../../shared/json.js";
3
+ import type { CodexOpenMethod } from "./open.js";
3
4
  import { type SubagentThreads } from "./tasks.js";
5
+ import { type CodexTokenBaseline } from "./token-usage.js";
4
6
  export type ProjectionCommand = {
5
7
  readonly kind: "frame";
6
8
  readonly body: FrameBody;
@@ -28,10 +30,13 @@ export interface CodexProjectionState {
28
30
  readonly compacting: boolean;
29
31
  /** Subagent threads the stream reported starting: who started each, and its path. */
30
32
  readonly subagents: SubagentThreads;
33
+ /** Where the root thread's token totals count from: this Session's opening (token-usage.ts). */
34
+ readonly tokenBaseline: CodexTokenBaseline;
31
35
  }
32
- export declare function initialCodexProjection(rootThreadId: string): CodexProjectionState;
36
+ /** The projection of a Session opened by `opened`: a resume awaits codex's re-reported token total. */
37
+ export declare function initialCodexProjection(rootThreadId: string, opened?: CodexOpenMethod): CodexProjectionState;
33
38
  /** Fold one codex notification into the next state plus commands. */
34
- export declare function foldCodexNotification(state: CodexProjectionState, method: string, params: JsonRecord): {
39
+ export declare function foldCodexNotification(previous: CodexProjectionState, method: string, params: JsonRecord): {
35
40
  readonly state: CodexProjectionState;
36
41
  readonly commands: readonly ProjectionCommand[];
37
42
  };
@@ -1 +1 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EAEZ,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAsB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAI3E,OAAO,EAAmD,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAmBnG,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;CACrC;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,oBAAoB,CAEjF;AAsMD,qEAAqE;AACrE,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,oBAAoB,EAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,UAAU,GACjB;IAAE,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,CAkC3F"}
1
+ {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EAEZ,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAmD,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAA4E,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAmBrI,MAAM,MAAM,iBAAiB,GACzB;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,qFAAqF;IACrF,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,gGAAgG;IAChG,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;CAC5C;AAED,uGAAuG;AACvG,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,GAAE,eAAgC,GAAG,oBAAoB,CAE3H;AA2JD,qEAAqE;AACrE,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,oBAAoB,EAC9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,UAAU,GACjB;IAAE,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,CAqC3F"}
@@ -1,9 +1,10 @@
1
1
  import { classifyFailure } from "../../shared/failure-class.js";
2
- import { asNumber, asRecord } from "../../shared/json.js";
3
- import { cacheParts } from "../../shared/token-totals.js";
2
+ import { asRecord } from "../../shared/json.js";
3
+ import { noTokens } from "../../shared/token-totals.js";
4
4
  import { codexItemExitCode, codexItemInput, codexToolContent } from "./item-detail.js";
5
5
  import { codexReasoningContent } from "./reasoning.js";
6
6
  import { aboutOwnChild, codexTaskViews, withStartedChild } from "./tasks.js";
7
+ import { baselineTokens, codexUsageViews, initialTokenBaseline, nextTokenBaseline } from "./token-usage.js";
7
8
  /**
8
9
  * The codex notification → record projection as a PURE FOLD (see
9
10
  * runtimes/claude/projection.ts for the shape). Every notification becomes
@@ -19,8 +20,9 @@ import { aboutOwnChild, codexTaskViews, withStartedChild } from "./tasks.js";
19
20
  // can end it early). It reports no status, so its end carries no result.
20
21
  const TOOL_ITEM_TYPES = new Set(["commandExecution", "fileChange", "mcpToolCall", "webSearch", "sleep"]);
21
22
  const COLLAB_ITEM_TYPES = new Set(["collabAgentToolCall", "collabToolCall", "subAgentActivity"]);
22
- export function initialCodexProjection(rootThreadId) {
23
- return { rootThreadId, lastErrorDetail: null, compacting: false, subagents: new Map() };
23
+ /** The projection of a Session opened by `opened`: a resume awaits codex's re-reported token total. */
24
+ export function initialCodexProjection(rootThreadId, opened = "thread/start") {
25
+ return { rootThreadId, lastErrorDetail: null, compacting: false, subagents: new Map(), tokenBaseline: initialTokenBaseline(opened === "thread/resume") };
24
26
  }
25
27
  const COMPACTION_ITEM_TYPE = "contextCompaction";
26
28
  function isCompactionItem(params) {
@@ -78,48 +80,6 @@ function settleOutcome(state, status) {
78
80
  }
79
81
  return outcome;
80
82
  }
81
- /**
82
- * `tokenUsage.total` accumulates over every model call of the thread's life
83
- * (input 12.6k → 28.4k → 44.2k across three one-word turns, codex 0.154.0),
84
- * so it is the running spend, not what the context holds. `tokenUsage.last`
85
- * is the most recent model call, and `modelContextWindow` the window it fit
86
- * in; those two are the context reading. Codex's own occupancy figure is
87
- * `last.total_tokens` (`TokenUsage::tokens_in_context_window`, protocol.rs
88
- * at 4f39251a; the TUI's status card reads it off `last_token_usage`; its
89
- * percent also subtracts a 12k baseline). oar reads the same field,
90
- * `last.totalTokens`: the last call's input (cached tokens included) plus its
91
- * output, which is what the context holds once the reply is in, matching
92
- * the runtime's own reading rather than undercounting by the last output.
93
- * When `last` is absent (older builds) the occupancy is unknown: the
94
- * cumulative input stands in as `tokens` and the window and percent are
95
- * null: the cumulative total is never read against the window.
96
- */
97
- function usageViews(params) {
98
- const tokenUsage = asRecord(params.tokenUsage);
99
- const total = asRecord(tokenUsage?.total);
100
- if (total === null) {
101
- return [];
102
- }
103
- const input = asNumber(total.inputTokens);
104
- const output = asNumber(total.outputTokens);
105
- // `inputTokens` already counts the cache reads and writes; `cachedInputTokens`
106
- // and `cacheWriteInputTokens` are those parts (codex-api sse/responses.rs at
107
- // 4f39251a fills them from the Responses API's `input_tokens_details`
108
- // `cached_tokens` / `cache_write_tokens`). A build without the write field
109
- // reports no `cacheWrite`.
110
- const cache = cacheParts(total, { read: "cachedInputTokens", write: "cacheWriteInputTokens" });
111
- const tokens = input === null || output === null ? {} : { tokens: { input, output, ...cache } };
112
- const last = asRecord(tokenUsage?.last);
113
- if (last === null) {
114
- return [{ kind: "usage", usage: { context: { tokens: input, contextWindow: null, percent: null }, ...tokens } }];
115
- }
116
- const contextTokens = asNumber(last.totalTokens);
117
- const contextWindow = asNumber(tokenUsage?.modelContextWindow);
118
- const percent = contextTokens === null || contextWindow === null || contextWindow <= 0
119
- ? null
120
- : Math.round((contextTokens / contextWindow) * 100);
121
- return [{ kind: "usage", usage: { context: { tokens: contextTokens, contextWindow, percent }, ...tokens } }];
122
- }
123
83
  /**
124
84
  * `thread/settings/updated` is codex's own report of the thread's settings
125
85
  * after a change ([env] 0.155.1: pushed when a turn/start carries an `effort`
@@ -202,7 +162,7 @@ function viewsFor(state, reporter, method, params) {
202
162
  case "turn/completed":
203
163
  return [{ kind: "turn_ended", outcome: settleOutcome(state, asRecord(params.turn)?.status) }];
204
164
  case "thread/tokenUsage/updated":
205
- return usageViews(params);
165
+ return codexUsageViews(params, reporter === state.rootThreadId ? baselineTokens(state.tokenBaseline) : noTokens);
206
166
  case "thread/settings/updated":
207
167
  return settingsViews(params);
208
168
  default:
@@ -210,8 +170,11 @@ function viewsFor(state, reporter, method, params) {
210
170
  }
211
171
  }
212
172
  /** Fold one codex notification into the next state plus commands. */
213
- export function foldCodexNotification(state, method, params) {
214
- const threadId = typeof params.threadId === "string" ? params.threadId : state.rootThreadId;
173
+ export function foldCodexNotification(previous, method, params) {
174
+ const threadId = typeof params.threadId === "string" ? params.threadId : previous.rootThreadId;
175
+ // Before the views: a re-reported total is read against itself (zero).
176
+ const tokenBaseline = threadId === previous.rootThreadId ? nextTokenBaseline(previous.tokenBaseline, method, params) : previous.tokenBaseline;
177
+ const state = tokenBaseline === previous.tokenBaseline ? previous : { ...previous, tokenBaseline };
215
178
  const spanId = spanIdOf(params);
216
179
  const event = {
217
180
  kind: "frame",
@@ -1 +1 @@
1
- {"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/runtimes/codex/projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/runtimes/codex/projection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAmDhI,eAAO,MAAM,YAAY,EAAE,YAiP1B,CAAC"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/runtimes/codex/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAqDhI,eAAO,MAAM,YAAY,EAAE,YAqP1B,CAAC"}
@@ -24,6 +24,8 @@ import { openThread, rpcControl } from "./rpc-control.js";
24
24
  * accepted/rejected response, the outcome is turn/completed.
25
25
  * - every notification is one frame (verbatim params); notifications
26
26
  * of other threads are child-session records; collab items link them.
27
+ * - token totals count from when this Session opened: after a resume, the
28
+ * thread total codex re-reports before the first turn is subtracted.
27
29
  * - server-initiated requests are recorded as toApp requests, unanswered.
28
30
  * - reachability (exited / disposed) is the kernel's, read off the stream;
29
31
  * the adapter holds no liveness flag (record-stream.md, "Reachability").
@@ -35,6 +37,10 @@ export const codexSession = async (installation, options) => {
35
37
  if (installation.via !== "executable") {
36
38
  throw new Error("The codex session adapter needs an executable installation");
37
39
  }
40
+ // Threads persist so a later SessionOptions.resume can reattach; the thread
41
+ // id is the runtime-native identity and becomes Session.id (open.ts builds
42
+ // the request, and refuses what it cannot build before anything starts).
43
+ const { method: openMethod, params: openParams, redact } = codexThreadOpen(options);
38
44
  // YOLO default (repo policy 2026-08-24): bypass the sandbox too, not just
39
45
  // approvals; OAR_CODEX_SANDBOX pins a stricter mode when a host wants one.
40
46
  // Injected as a launch -c override because that is the only seam that
@@ -43,16 +49,14 @@ export const codexSession = async (installation, options) => {
43
49
  // OAR_CODEX_SANDBOX=inherit to skip the override entirely.
44
50
  const sandboxMode = process.env.OAR_CODEX_SANDBOX ?? "danger-full-access";
45
51
  const configOverrides = sandboxMode === "inherit" ? {} : { sandbox_mode: `"${sandboxMode}"` };
46
- const client = startAppServerClient(installation.command, options.env, configOverrides);
52
+ // Every error the client reports goes through the redactor first: the
53
+ // open's config carries the session's MCP credentials to codex.
54
+ const client = startAppServerClient(installation.command, options.env, configOverrides, undefined, { redact });
47
55
  await client.request("initialize", {
48
56
  clientInfo: { name: "oar", version: "0.0.0" },
49
57
  capabilities: { experimentalApi: true },
50
58
  });
51
59
  client.notify("initialized", {});
52
- // Threads persist so a later SessionOptions.resume can reattach; the thread
53
- // id is the runtime-native identity and becomes Session.id (open.ts builds
54
- // the request).
55
- const { method: openMethod, params: openParams } = codexThreadOpen(options);
56
60
  // The open event is marked at the reply's wire position AS the reply line
57
61
  // is read (onSettled → client.mark), not after this await: a frame codex
58
62
  // wrote in the same chunk right after the reply (thread/started) would
@@ -86,7 +90,9 @@ export const codexSession = async (installation, options) => {
86
90
  active: null,
87
91
  spontaneous: false,
88
92
  codexTurnId: null,
89
- projection: initialCodexProjection(threadId),
93
+ // A resume awaits codex's re-report of the thread's total so far: the
94
+ // baseline this Session's token totals count from (projection.ts, #169).
95
+ projection: initialCodexProjection(threadId, openMethod),
90
96
  };
91
97
  const busy = () => state.active !== null || state.spontaneous;
92
98
  let disposeRequest = null;