@iam-brain/opencode-codex-auth 0.3.2 → 1.1.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 (192) hide show
  1. package/README.md +12 -10
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +44 -5
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/accounts-tools.d.ts.map +1 -1
  6. package/dist/lib/accounts-tools.js +88 -4
  7. package/dist/lib/accounts-tools.js.map +1 -1
  8. package/dist/lib/auth-refresh.d.ts +2 -0
  9. package/dist/lib/auth-refresh.d.ts.map +1 -0
  10. package/dist/lib/auth-refresh.js +2 -0
  11. package/dist/lib/auth-refresh.js.map +1 -0
  12. package/dist/lib/cache-io.d.ts +24 -0
  13. package/dist/lib/cache-io.d.ts.map +1 -0
  14. package/dist/lib/cache-io.js +95 -0
  15. package/dist/lib/cache-io.js.map +1 -0
  16. package/dist/lib/cache-lock.d.ts +7 -0
  17. package/dist/lib/cache-lock.d.ts.map +1 -0
  18. package/dist/lib/cache-lock.js +37 -0
  19. package/dist/lib/cache-lock.js.map +1 -0
  20. package/dist/lib/claims.d.ts.map +1 -1
  21. package/dist/lib/claims.js +4 -1
  22. package/dist/lib/claims.js.map +1 -1
  23. package/dist/lib/codex-cache-layout.d.ts +15 -0
  24. package/dist/lib/codex-cache-layout.d.ts.map +1 -0
  25. package/dist/lib/codex-cache-layout.js +52 -0
  26. package/dist/lib/codex-cache-layout.js.map +1 -0
  27. package/dist/lib/codex-native/acquire-auth.d.ts.map +1 -1
  28. package/dist/lib/codex-native/acquire-auth.js +61 -10
  29. package/dist/lib/codex-native/acquire-auth.js.map +1 -1
  30. package/dist/lib/codex-native/auth-menu-flow.d.ts.map +1 -1
  31. package/dist/lib/codex-native/auth-menu-flow.js +154 -42
  32. package/dist/lib/codex-native/auth-menu-flow.js.map +1 -1
  33. package/dist/lib/codex-native/auth-menu-quotas.d.ts.map +1 -1
  34. package/dist/lib/codex-native/auth-menu-quotas.js +158 -56
  35. package/dist/lib/codex-native/auth-menu-quotas.js.map +1 -1
  36. package/dist/lib/codex-native/catalog-auth.d.ts.map +1 -1
  37. package/dist/lib/codex-native/catalog-auth.js +4 -1
  38. package/dist/lib/codex-native/catalog-auth.js.map +1 -1
  39. package/dist/lib/codex-native/chat-hooks.d.ts +9 -0
  40. package/dist/lib/codex-native/chat-hooks.d.ts.map +1 -1
  41. package/dist/lib/codex-native/chat-hooks.js +42 -2
  42. package/dist/lib/codex-native/chat-hooks.js.map +1 -1
  43. package/dist/lib/codex-native/client-identity.d.ts.map +1 -1
  44. package/dist/lib/codex-native/client-identity.js +55 -40
  45. package/dist/lib/codex-native/client-identity.js.map +1 -1
  46. package/dist/lib/codex-native/collaboration.d.ts +28 -0
  47. package/dist/lib/codex-native/collaboration.d.ts.map +1 -0
  48. package/dist/lib/codex-native/collaboration.js +332 -0
  49. package/dist/lib/codex-native/collaboration.js.map +1 -0
  50. package/dist/lib/codex-native/oauth-auth-methods.d.ts.map +1 -1
  51. package/dist/lib/codex-native/oauth-auth-methods.js +14 -3
  52. package/dist/lib/codex-native/oauth-auth-methods.js.map +1 -1
  53. package/dist/lib/codex-native/oauth-server.d.ts.map +1 -1
  54. package/dist/lib/codex-native/oauth-server.js +34 -6
  55. package/dist/lib/codex-native/oauth-server.js.map +1 -1
  56. package/dist/lib/codex-native/oauth-utils.d.ts +3 -3
  57. package/dist/lib/codex-native/oauth-utils.d.ts.map +1 -1
  58. package/dist/lib/codex-native/oauth-utils.js +6 -9
  59. package/dist/lib/codex-native/oauth-utils.js.map +1 -1
  60. package/dist/lib/codex-native/openai-loader-fetch.d.ts +4 -1
  61. package/dist/lib/codex-native/openai-loader-fetch.d.ts.map +1 -1
  62. package/dist/lib/codex-native/openai-loader-fetch.js +157 -11
  63. package/dist/lib/codex-native/openai-loader-fetch.js.map +1 -1
  64. package/dist/lib/codex-native/rate-limit-snapshots.d.ts.map +1 -1
  65. package/dist/lib/codex-native/rate-limit-snapshots.js +5 -1
  66. package/dist/lib/codex-native/rate-limit-snapshots.js.map +1 -1
  67. package/dist/lib/codex-native/request-transform-pipeline.d.ts +1 -0
  68. package/dist/lib/codex-native/request-transform-pipeline.d.ts.map +1 -1
  69. package/dist/lib/codex-native/request-transform-pipeline.js +2 -1
  70. package/dist/lib/codex-native/request-transform-pipeline.js.map +1 -1
  71. package/dist/lib/codex-native/request-transform.d.ts +20 -0
  72. package/dist/lib/codex-native/request-transform.d.ts.map +1 -1
  73. package/dist/lib/codex-native/request-transform.js +251 -8
  74. package/dist/lib/codex-native/request-transform.js.map +1 -1
  75. package/dist/lib/codex-native/session-affinity-state.d.ts +2 -0
  76. package/dist/lib/codex-native/session-affinity-state.d.ts.map +1 -1
  77. package/dist/lib/codex-native/session-affinity-state.js +10 -3
  78. package/dist/lib/codex-native/session-affinity-state.js.map +1 -1
  79. package/dist/lib/codex-native/session-messages.d.ts.map +1 -1
  80. package/dist/lib/codex-native/session-messages.js +4 -1
  81. package/dist/lib/codex-native/session-messages.js.map +1 -1
  82. package/dist/lib/codex-native.d.ts +7 -1
  83. package/dist/lib/codex-native.d.ts.map +1 -1
  84. package/dist/lib/codex-native.js +30 -5
  85. package/dist/lib/codex-native.js.map +1 -1
  86. package/dist/lib/codex-prompts-cache.d.ts +17 -0
  87. package/dist/lib/codex-prompts-cache.d.ts.map +1 -0
  88. package/dist/lib/codex-prompts-cache.js +184 -0
  89. package/dist/lib/codex-prompts-cache.js.map +1 -0
  90. package/dist/lib/codex-status-storage.d.ts.map +1 -1
  91. package/dist/lib/codex-status-storage.js +8 -43
  92. package/dist/lib/codex-status-storage.js.map +1 -1
  93. package/dist/lib/codex-status-tool.js +1 -1
  94. package/dist/lib/codex-status-tool.js.map +1 -1
  95. package/dist/lib/codex-status-ui.d.ts.map +1 -1
  96. package/dist/lib/codex-status-ui.js +14 -8
  97. package/dist/lib/codex-status-ui.js.map +1 -1
  98. package/dist/lib/codex-status.d.ts.map +1 -1
  99. package/dist/lib/codex-status.js +28 -2
  100. package/dist/lib/codex-status.js.map +1 -1
  101. package/dist/lib/compat-sanitizer.d.ts.map +1 -1
  102. package/dist/lib/compat-sanitizer.js +5 -4
  103. package/dist/lib/compat-sanitizer.js.map +1 -1
  104. package/dist/lib/config-dir-gitignore.d.ts +3 -0
  105. package/dist/lib/config-dir-gitignore.d.ts.map +1 -0
  106. package/dist/lib/config-dir-gitignore.js +45 -0
  107. package/dist/lib/config-dir-gitignore.js.map +1 -0
  108. package/dist/lib/config.d.ts +19 -0
  109. package/dist/lib/config.d.ts.map +1 -1
  110. package/dist/lib/config.js +252 -3
  111. package/dist/lib/config.js.map +1 -1
  112. package/dist/lib/fetch-orchestrator.d.ts +19 -0
  113. package/dist/lib/fetch-orchestrator.d.ts.map +1 -1
  114. package/dist/lib/fetch-orchestrator.js +33 -6
  115. package/dist/lib/fetch-orchestrator.js.map +1 -1
  116. package/dist/lib/installer-cli.d.ts.map +1 -1
  117. package/dist/lib/installer-cli.js +14 -1
  118. package/dist/lib/installer-cli.js.map +1 -1
  119. package/dist/lib/logger.d.ts.map +1 -1
  120. package/dist/lib/logger.js +4 -1
  121. package/dist/lib/logger.js.map +1 -1
  122. package/dist/lib/model-catalog.d.ts.map +1 -1
  123. package/dist/lib/model-catalog.js +105 -168
  124. package/dist/lib/model-catalog.js.map +1 -1
  125. package/dist/lib/opencode-install.d.ts.map +1 -1
  126. package/dist/lib/opencode-install.js +30 -6
  127. package/dist/lib/opencode-install.js.map +1 -1
  128. package/dist/lib/orchestrator-agent.d.ts +31 -0
  129. package/dist/lib/orchestrator-agent.d.ts.map +1 -0
  130. package/dist/lib/orchestrator-agent.js +268 -0
  131. package/dist/lib/orchestrator-agent.js.map +1 -0
  132. package/dist/lib/paths.d.ts +1 -1
  133. package/dist/lib/paths.d.ts.map +1 -1
  134. package/dist/lib/paths.js +1 -1
  135. package/dist/lib/paths.js.map +1 -1
  136. package/dist/lib/persona-tool-cli.d.ts.map +1 -1
  137. package/dist/lib/persona-tool-cli.js +4 -1
  138. package/dist/lib/persona-tool-cli.js.map +1 -1
  139. package/dist/lib/personalities.d.ts.map +1 -1
  140. package/dist/lib/personalities.js +9 -2
  141. package/dist/lib/personalities.js.map +1 -1
  142. package/dist/lib/personality-command.d.ts.map +1 -1
  143. package/dist/lib/personality-command.js +4 -1
  144. package/dist/lib/personality-command.js.map +1 -1
  145. package/dist/lib/personality-create.d.ts.map +1 -1
  146. package/dist/lib/personality-create.js +5 -1
  147. package/dist/lib/personality-create.js.map +1 -1
  148. package/dist/lib/personality-skill.d.ts.map +1 -1
  149. package/dist/lib/personality-skill.js +4 -1
  150. package/dist/lib/personality-skill.js.map +1 -1
  151. package/dist/lib/prompt-cache-key.d.ts +7 -0
  152. package/dist/lib/prompt-cache-key.d.ts.map +1 -0
  153. package/dist/lib/prompt-cache-key.js +17 -0
  154. package/dist/lib/prompt-cache-key.js.map +1 -0
  155. package/dist/lib/quarantine.d.ts.map +1 -1
  156. package/dist/lib/quarantine.js +22 -5
  157. package/dist/lib/quarantine.js.map +1 -1
  158. package/dist/lib/quota-threshold-alerts.d.ts +31 -0
  159. package/dist/lib/quota-threshold-alerts.d.ts.map +1 -0
  160. package/dist/lib/quota-threshold-alerts.js +97 -0
  161. package/dist/lib/quota-threshold-alerts.js.map +1 -0
  162. package/dist/lib/refresh-queue.d.ts.map +1 -1
  163. package/dist/lib/refresh-queue.js +9 -2
  164. package/dist/lib/refresh-queue.js.map +1 -1
  165. package/dist/lib/remote-cache-fetch.d.ts +28 -0
  166. package/dist/lib/remote-cache-fetch.d.ts.map +1 -0
  167. package/dist/lib/remote-cache-fetch.js +67 -0
  168. package/dist/lib/remote-cache-fetch.js.map +1 -0
  169. package/dist/lib/request-snapshots.d.ts +1 -0
  170. package/dist/lib/request-snapshots.d.ts.map +1 -1
  171. package/dist/lib/request-snapshots.js +44 -16
  172. package/dist/lib/request-snapshots.js.map +1 -1
  173. package/dist/lib/rotation.d.ts +4 -0
  174. package/dist/lib/rotation.d.ts.map +1 -1
  175. package/dist/lib/rotation.js +54 -10
  176. package/dist/lib/rotation.js.map +1 -1
  177. package/dist/lib/session-affinity.d.ts.map +1 -1
  178. package/dist/lib/session-affinity.js +22 -36
  179. package/dist/lib/session-affinity.js.map +1 -1
  180. package/dist/lib/storage.d.ts +8 -5
  181. package/dist/lib/storage.d.ts.map +1 -1
  182. package/dist/lib/storage.js +50 -39
  183. package/dist/lib/storage.js.map +1 -1
  184. package/dist/lib/ui/tty/select.d.ts.map +1 -1
  185. package/dist/lib/ui/tty/select.js +8 -2
  186. package/dist/lib/ui/tty/select.js.map +1 -1
  187. package/dist/lib/util.d.ts +2 -0
  188. package/dist/lib/util.d.ts.map +1 -0
  189. package/dist/lib/util.js +4 -0
  190. package/dist/lib/util.js.map +1 -0
  191. package/package.json +6 -4
  192. package/schemas/codex-config.schema.json +17 -0
@@ -1 +1 @@
1
- {"version":3,"file":"session-affinity-state.js","sourceRoot":"","sources":["../../../lib/codex-native/session-affinity-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAA+B,MAAM,uBAAuB,CAAA;AACjG,OAAO,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EAAE,wBAAwB,EAA2B,MAAM,aAAa,CAAA;AAC/E,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,4BAA4B,EAC5B,2BAA2B,EAC3B,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,qBAAqB,CAAA;AAU5B,MAAM,CAAC,KAAK,UAAU,iCAAiC,CAAC,KAIvD;IACC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5E,MAAM,qBAAqB,GAAG,MAAM,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACxF,OAAO,EAAE,CAAU;KACpB,CAAC,CAAC,CAAA;IACH,MAAM,sBAAsB,GAAG,2BAA2B,CAAC,qBAAqB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IACjG,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtD,MAAM,4BAA4B,CAAC,sBAAsB,EAAE,aAAa,EAAE;QACxE,cAAc,EAAE,KAAK,CAAC,cAAc;KACrC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IAEjB,MAAM,iBAAiB,GAAG,4BAA4B,EAAE,CAAA;IACxD,iBAAiB,CAAC,eAAe,GAAG,sBAAsB,CAAC,eAAe,CAAA;IAE1E,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAA;IACrD,kBAAkB,CAAC,YAAY,GAAG,sBAAsB,CAAC,kBAAkB,CAAA;IAC3E,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAA;IACrD,kBAAkB,CAAC,YAAY,GAAG,sBAAsB,CAAC,kBAAkB,CAAA;IAE3E,IAAI,2BAA2B,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;IACnD,MAAM,2BAA2B,GAAG,GAAS,EAAE;QAC7C,2BAA2B,GAAG,2BAA2B;aACtD,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,4BAA4B,CAChC;gBACE,eAAe,EAAE,iBAAiB,CAAC,eAAe;gBAClD,kBAAkB,EAAE,kBAAkB,CAAC,YAAY;gBACnD,kBAAkB,EAAE,kBAAkB,CAAC,YAAY;aACpD,EACD,aAAa,EACb;gBACE,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CACF,CAAA;YACD,MAAM,mBAAmB,CACvB,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE;gBACpD,eAAe,EAAE,iBAAiB,CAAC,eAAe;gBAClD,kBAAkB,EAAE,kBAAkB,CAAC,YAAY;gBACnD,kBAAkB,EAAE,kBAAkB,CAAC,YAAY;aACpD,CAAC,EACJ,mBAAmB,CACpB,CAAA;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,0BAA0B;QAC5B,CAAC,CAAC,CAAA;IACN,CAAC,CAAA;IAED,OAAO;QACL,iBAAiB;QACjB,kBAAkB;QAClB,kBAAkB;QAClB,2BAA2B;KAC5B,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"session-affinity-state.js","sourceRoot":"","sources":["../../../lib/codex-native/session-affinity-state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-messages.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/session-messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEtD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI3D;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAGtF;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAUpB;AAED,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAW9C"}
1
+ {"version":3,"file":"session-messages.d.ts","sourceRoot":"","sources":["../../../lib/codex-native/session-messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEtD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI3D;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAGtF;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAapB;AAED,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,SAAS,EACzC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAW9C"}
@@ -19,7 +19,10 @@ export async function readSessionMessageRows(client, sessionID) {
19
19
  const response = await sessionApi.messages({ sessionID, limit: 100 });
20
20
  return isRecord(response) && Array.isArray(response.data) ? response.data : [];
21
21
  }
22
- catch {
22
+ catch (error) {
23
+ if (error instanceof Error) {
24
+ // best-effort session inspection
25
+ }
23
26
  return [];
24
27
  }
25
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-messages.js","sourceRoot":"","sources":["../../../lib/codex-native/session-messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-messages.js","sourceRoot":"","sources":["../../../lib/codex-native/session-messages.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import type { Hooks, PluginInput } from "@opencode-ai/plugin";
2
2
  import type { Logger } from "./logger";
3
3
  import type { OpenAIAuthMode, RotationStrategy } from "./types";
4
- import type { BehaviorSettings, CodexSpoofMode, PersonalityOption, PluginRuntimeMode } from "./config";
4
+ import type { BehaviorSettings, CodexSpoofMode, PersonalityOption, PluginRuntimeMode, PromptCacheKeyStrategy } from "./config";
5
+ import type { CollaborationToolProfile } from "./codex-native/collaboration";
5
6
  import { buildCodexUserAgent, refreshCodexClientVersionFromGitHub, resolveCodexClientVersion, resolveRequestUserAgent } from "./codex-native/client-identity";
6
7
  import { buildAuthorizeUrl, buildOAuthErrorHtml, buildOAuthSuccessHtml, composeCodexSuccessRedirectUrl, generatePKCE } from "./codex-native/oauth-utils";
7
8
  export { browserOpenInvocationFor } from "./codex-native/browser";
@@ -33,12 +34,17 @@ export type CodexAuthPluginOptions = {
33
34
  quietMode?: boolean;
34
35
  pidOffsetEnabled?: boolean;
35
36
  rotationStrategy?: RotationStrategy;
37
+ promptCacheKeyStrategy?: PromptCacheKeyStrategy;
36
38
  spoofMode?: CodexSpoofMode;
37
39
  compatInputSanitizer?: boolean;
38
40
  remapDeveloperMessagesToUser?: boolean;
39
41
  codexCompactionOverride?: boolean;
40
42
  headerSnapshots?: boolean;
43
+ headerSnapshotBodies?: boolean;
41
44
  headerTransformDebug?: boolean;
45
+ collaborationProfileEnabled?: boolean;
46
+ orchestratorSubagentsEnabled?: boolean;
47
+ collaborationToolProfile?: CollaborationToolProfile;
42
48
  };
43
49
  export declare function CodexAuthPlugin(input: PluginInput, opts?: CodexAuthPluginOptions): Promise<Hooks>;
44
50
  //# sourceMappingURL=codex-native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex-native.d.ts","sourceRoot":"","sources":["../../lib/codex-native.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAG7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAMtG,OAAO,EACL,mBAAmB,EACnB,mCAAmC,EACnC,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,8BAA8B,EAE9B,YAAY,EAYb,MAAM,4BAA4B,CAAA;AAenC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AA4B7G,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAMrF;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;CAatB,CAAA;AAeD,iBAAS,mBAAmB,IAAI,OAAO,CAEtC;AAMD,iBAAS,eAAe,IAAI,IAAI,CAE/B;AAaD,iBAAS,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,GAAG,cAAc,CAE1E;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,IAAI,CAAC,EAAE,iBAAiB,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,GAAE,sBAA2B,GAAG,OAAO,CAAC,KAAK,CAAC,CAyN3G"}
1
+ {"version":3,"file":"codex-native.d.ts","sourceRoot":"","sources":["../../lib/codex-native.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAI7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAM5E,OAAO,EACL,mBAAmB,EACnB,mCAAmC,EACnC,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,8BAA8B,EAE9B,YAAY,EAYb,MAAM,4BAA4B,CAAA;AAenC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AA6B7G,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAMrF;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;CAatB,CAAA;AAeD,iBAAS,mBAAmB,IAAI,OAAO,CAEtC;AAMD,iBAAS,eAAe,IAAI,IAAI,CAE/B;AAaD,iBAAS,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,GAAG,cAAc,CAE1E;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,IAAI,CAAC,EAAE,iBAAiB,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IAC/C,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,4BAA4B,CAAC,EAAE,OAAO,CAAA;IACtC,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;CACpD,CAAA;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,GAAE,sBAA2B,GAAG,OAAO,CAAC,KAAK,CAAC,CAmP3G"}
@@ -1,3 +1,4 @@
1
+ import process from "node:process";
1
2
  import { loadAuthStorage, setAccountCooldown } from "./storage";
2
3
  import { formatToastMessage } from "./toast";
3
4
  import { createRequestSnapshots } from "./request-snapshots";
@@ -18,6 +19,7 @@ export { browserOpenInvocationFor } from "./codex-native/browser";
18
19
  export { upsertAccount } from "./codex-native/accounts";
19
20
  export { extractAccountId, extractAccountIdFromClaims, refreshAccessToken } from "./codex-native/oauth-utils";
20
21
  const INTERNAL_COLLABORATION_MODE_HEADER = "x-opencode-collaboration-mode-kind";
22
+ const INTERNAL_COLLABORATION_AGENT_HEADER = "x-opencode-collaboration-agent-kind";
21
23
  const SESSION_AFFINITY_MISSING_GRACE_MS = 15 * 60 * 1000;
22
24
  const STATIC_FALLBACK_MODELS = [
23
25
  "gpt-5.1-codex-max",
@@ -99,7 +101,16 @@ export async function CodexAuthPlugin(input, opts = {}) {
99
101
  const authMode = modeForRuntimeMode(runtimeMode);
100
102
  const remapDeveloperMessagesToUserEnabled = spoofMode === "codex" && opts.remapDeveloperMessagesToUser !== false;
101
103
  const codexCompactionOverrideEnabled = opts.codexCompactionOverride !== undefined ? opts.codexCompactionOverride : runtimeMode === "codex";
102
- void refreshCodexClientVersionFromGitHub(opts.log).catch(() => { });
104
+ const collaborationProfileEnabled = typeof opts.collaborationProfileEnabled === "boolean" ? opts.collaborationProfileEnabled : runtimeMode === "codex";
105
+ const orchestratorSubagentsEnabled = typeof opts.orchestratorSubagentsEnabled === "boolean"
106
+ ? opts.orchestratorSubagentsEnabled
107
+ : collaborationProfileEnabled;
108
+ const collaborationToolProfile = opts.collaborationToolProfile === "codex" ? "codex" : "opencode";
109
+ void refreshCodexClientVersionFromGitHub(opts.log).catch((error) => {
110
+ if (error instanceof Error) {
111
+ // best-effort background refresh
112
+ }
113
+ });
103
114
  const resolveCatalogHeaders = () => {
104
115
  const originator = resolveCodexOriginator(spoofMode);
105
116
  const codexClientVersion = resolveCodexClientVersion();
@@ -113,6 +124,7 @@ export async function CodexAuthPlugin(input, opts = {}) {
113
124
  };
114
125
  const requestSnapshots = createRequestSnapshots({
115
126
  enabled: opts.headerSnapshots === true || opts.headerTransformDebug === true,
127
+ captureBodies: opts.headerSnapshotBodies === true,
116
128
  log: opts.log
117
129
  });
118
130
  let lastCatalogModels;
@@ -160,7 +172,10 @@ export async function CodexAuthPlugin(input, opts = {}) {
160
172
  const stored = await loadAuthStorage();
161
173
  hasOAuth = stored.openai?.type === "oauth";
162
174
  }
163
- catch {
175
+ catch (error) {
176
+ if (error instanceof Error) {
177
+ // treat storage read issues as missing oauth
178
+ }
164
179
  hasOAuth = false;
165
180
  }
166
181
  }
@@ -169,7 +184,8 @@ export async function CodexAuthPlugin(input, opts = {}) {
169
184
  const { orchestratorState, stickySessionState, hybridSessionState, persistSessionAffinityState } = await createSessionAffinityRuntimeState({
170
185
  authMode,
171
186
  env: process.env,
172
- missingGraceMs: SESSION_AFFINITY_MISSING_GRACE_MS
187
+ missingGraceMs: SESSION_AFFINITY_MISSING_GRACE_MS,
188
+ log: opts.log
173
189
  });
174
190
  const syncCatalogFromAuth = await initializeCatalogSync({
175
191
  authMode,
@@ -188,6 +204,8 @@ export async function CodexAuthPlugin(input, opts = {}) {
188
204
  const fetch = createOpenAIFetchHandler({
189
205
  authMode,
190
206
  spoofMode,
207
+ promptCacheKeyStrategy: opts.promptCacheKeyStrategy,
208
+ projectPath: typeof input.worktree === "string" && input.worktree.trim() ? input.worktree : process.cwd(),
191
209
  remapDeveloperMessagesToUserEnabled,
192
210
  behaviorSettings: opts.behaviorSettings,
193
211
  personality: opts.personality,
@@ -198,6 +216,7 @@ export async function CodexAuthPlugin(input, opts = {}) {
198
216
  headerTransformDebug: opts.headerTransformDebug === true,
199
217
  compatInputSanitizerEnabled: opts.compatInputSanitizer === true,
200
218
  internalCollaborationModeHeader: INTERNAL_COLLABORATION_MODE_HEADER,
219
+ internalCollaborationAgentHeader: INTERNAL_COLLABORATION_AGENT_HEADER,
201
220
  requestSnapshots,
202
221
  sessionAffinityState: {
203
222
  orchestratorState,
@@ -257,7 +276,10 @@ export async function CodexAuthPlugin(input, opts = {}) {
257
276
  lastCatalogModels,
258
277
  behaviorSettings: opts.behaviorSettings,
259
278
  fallbackPersonality: opts.personality,
260
- spoofMode
279
+ spoofMode,
280
+ collaborationProfileEnabled,
281
+ orchestratorSubagentsEnabled,
282
+ collaborationToolProfile
261
283
  });
262
284
  },
263
285
  "chat.headers": async (hookInput, output) => {
@@ -265,7 +287,10 @@ export async function CodexAuthPlugin(input, opts = {}) {
265
287
  hookInput,
266
288
  output,
267
289
  spoofMode,
268
- internalCollaborationModeHeader: INTERNAL_COLLABORATION_MODE_HEADER
290
+ internalCollaborationModeHeader: INTERNAL_COLLABORATION_MODE_HEADER,
291
+ internalCollaborationAgentHeader: INTERNAL_COLLABORATION_AGENT_HEADER,
292
+ collaborationProfileEnabled,
293
+ orchestratorSubagentsEnabled
269
294
  });
270
295
  },
271
296
  "experimental.session.compacting": async (hookInput, output) => {
@@ -1 +1 @@
1
- {"version":3,"file":"codex-native.js","sourceRoot":"","sources":["../../lib/codex-native.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-native.js","sourceRoot":"","sources":["../../lib/codex-native.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export { CODEX_PROMPTS_CACHE_FILE, CODEX_PROMPTS_CACHE_META_FILE } from "./codex-cache-layout";
2
+ export declare const CODEX_ORCHESTRATOR_PROMPT_URL = "https://raw.githubusercontent.com/openai/codex/4ab44e2c5cc54ed47e47a6729dfd8aa5a3dc2476/codex-rs/core/templates/agents/orchestrator.md";
3
+ export declare const CODEX_PLAN_PROMPT_URL = "https://raw.githubusercontent.com/openai/codex/4ab44e2c5cc54ed47e47a6729dfd8aa5a3dc2476/codex-rs/core/templates/collaboration_mode/plan.md";
4
+ type RefreshResult = {
5
+ orchestrator?: string;
6
+ plan?: string;
7
+ };
8
+ export declare function readCachedCodexPrompts(input?: {
9
+ cacheDir?: string;
10
+ }): Promise<RefreshResult>;
11
+ export declare function refreshCachedCodexPrompts(input?: {
12
+ cacheDir?: string;
13
+ now?: () => number;
14
+ fetchImpl?: typeof fetch;
15
+ forceRefresh?: boolean;
16
+ }): Promise<RefreshResult>;
17
+ //# sourceMappingURL=codex-prompts-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-prompts-cache.d.ts","sourceRoot":"","sources":["../../lib/codex-prompts-cache.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,wBAAwB,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAA;AAE9F,eAAO,MAAM,6BAA6B,2IACgG,CAAA;AAC1I,eAAO,MAAM,qBAAqB,+IAC4G,CAAA;AA0B9I,KAAK,aAAa,GAAG;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAiFD,wBAAsB,sBAAsB,CAC1C,KAAK,GAAE;IACL,QAAQ,CAAC,EAAE,MAAM,CAAA;CACb,GACL,OAAO,CAAC,aAAa,CAAC,CAQxB;AAED,wBAAsB,yBAAyB,CAC7C,KAAK,GAAE;IACL,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;CAClB,GACL,OAAO,CAAC,aAAa,CAAC,CAyGxB"}
@@ -0,0 +1,184 @@
1
+ import { fetchRemoteTextBatch } from "./remote-cache-fetch";
2
+ import { readJsonFileBestEffort, writeJsonFileBestEffort } from "./cache-io";
3
+ import { withLockedDirectory } from "./cache-lock";
4
+ import { codexPromptsCacheMetaPath, codexPromptsCachePath, resolveCodexCacheDir } from "./codex-cache-layout";
5
+ export { CODEX_PROMPTS_CACHE_FILE, CODEX_PROMPTS_CACHE_META_FILE } from "./codex-cache-layout";
6
+ export const CODEX_ORCHESTRATOR_PROMPT_URL = "https://raw.githubusercontent.com/openai/codex/4ab44e2c5cc54ed47e47a6729dfd8aa5a3dc2476/codex-rs/core/templates/agents/orchestrator.md";
7
+ export const CODEX_PLAN_PROMPT_URL = "https://raw.githubusercontent.com/openai/codex/4ab44e2c5cc54ed47e47a6729dfd8aa5a3dc2476/codex-rs/core/templates/collaboration_mode/plan.md";
8
+ const CACHE_TTL_MS = 24 * 60 * 60 * 1000;
9
+ const FETCH_TIMEOUT_MS = 5000;
10
+ function isRecord(value) {
11
+ return typeof value === "object" && value !== null && !Array.isArray(value);
12
+ }
13
+ function normalizePrompt(value) {
14
+ if (typeof value !== "string")
15
+ return undefined;
16
+ const trimmed = value.trim();
17
+ return trimmed.length > 0 ? trimmed : undefined;
18
+ }
19
+ async function readPromptsCache(cacheDir) {
20
+ const parsed = await readJsonFileBestEffort(codexPromptsCachePath(cacheDir));
21
+ if (!isRecord(parsed))
22
+ return undefined;
23
+ const prompts = isRecord(parsed.prompts) ? parsed.prompts : undefined;
24
+ const orchestrator = normalizePrompt(prompts?.orchestrator);
25
+ const plan = normalizePrompt(prompts?.plan);
26
+ if (!orchestrator || !plan)
27
+ return undefined;
28
+ const fetchedAt = typeof parsed.fetchedAt === "number" && Number.isFinite(parsed.fetchedAt) ? parsed.fetchedAt : 0;
29
+ return {
30
+ fetchedAt,
31
+ source: "github",
32
+ prompts: {
33
+ orchestrator,
34
+ plan
35
+ }
36
+ };
37
+ }
38
+ async function writePromptsCache(cacheDir, cache) {
39
+ await writeJsonFileBestEffort(codexPromptsCachePath(cacheDir), cache);
40
+ }
41
+ async function readPromptsCacheMeta(cacheDir) {
42
+ const parsed = await readJsonFileBestEffort(codexPromptsCacheMetaPath(cacheDir));
43
+ if (!isRecord(parsed))
44
+ return undefined;
45
+ const urls = isRecord(parsed.urls) ? parsed.urls : undefined;
46
+ const orchestrator = normalizePrompt(urls?.orchestrator);
47
+ const plan = normalizePrompt(urls?.plan);
48
+ if (!orchestrator || !plan)
49
+ return undefined;
50
+ const lastChecked = typeof parsed.lastChecked === "number" && Number.isFinite(parsed.lastChecked) ? parsed.lastChecked : 0;
51
+ const etagsRecord = isRecord(parsed.etags) ? parsed.etags : undefined;
52
+ const etags = etagsRecord
53
+ ? {
54
+ orchestrator: normalizePrompt(etagsRecord.orchestrator),
55
+ plan: normalizePrompt(etagsRecord.plan)
56
+ }
57
+ : undefined;
58
+ return {
59
+ lastChecked,
60
+ urls: { orchestrator, plan },
61
+ etags
62
+ };
63
+ }
64
+ async function writePromptsCacheMeta(cacheDir, meta) {
65
+ await writeJsonFileBestEffort(codexPromptsCacheMetaPath(cacheDir), meta);
66
+ }
67
+ const inFlightRefreshByCacheDir = new Map();
68
+ function resolvePrompt(result, existing) {
69
+ if (!result)
70
+ return undefined;
71
+ if (result.status === "ok") {
72
+ return normalizePrompt(result.text);
73
+ }
74
+ if (result.status === "not_modified") {
75
+ return existing;
76
+ }
77
+ return undefined;
78
+ }
79
+ function resolveEtag(result, existing) {
80
+ if (!result)
81
+ return existing;
82
+ if (result.status === "ok")
83
+ return result.etag ?? existing;
84
+ if (result.status === "not_modified")
85
+ return result.etag ?? existing;
86
+ return existing;
87
+ }
88
+ export async function readCachedCodexPrompts(input = {}) {
89
+ const cacheDir = resolveCodexCacheDir(input.cacheDir);
90
+ const cache = await readPromptsCache(cacheDir);
91
+ if (!cache)
92
+ return {};
93
+ return {
94
+ orchestrator: cache.prompts.orchestrator,
95
+ plan: cache.prompts.plan
96
+ };
97
+ }
98
+ export async function refreshCachedCodexPrompts(input = {}) {
99
+ const cacheDir = resolveCodexCacheDir(input.cacheDir);
100
+ const now = (input.now ?? Date.now)();
101
+ const fetchImpl = input.fetchImpl ?? fetch;
102
+ const run = async () => withLockedDirectory(cacheDir, async () => {
103
+ const existingCache = await readPromptsCache(cacheDir);
104
+ const existingMeta = await readPromptsCacheMeta(cacheDir);
105
+ const cacheIsFresh = existingCache &&
106
+ existingMeta &&
107
+ existingMeta.urls.orchestrator === CODEX_ORCHESTRATOR_PROMPT_URL &&
108
+ existingMeta.urls.plan === CODEX_PLAN_PROMPT_URL &&
109
+ now - existingMeta.lastChecked < CACHE_TTL_MS;
110
+ if (cacheIsFresh && input.forceRefresh !== true) {
111
+ return {
112
+ orchestrator: existingCache.prompts.orchestrator,
113
+ plan: existingCache.prompts.plan
114
+ };
115
+ }
116
+ const results = await fetchRemoteTextBatch({
117
+ requests: [
118
+ {
119
+ key: "orchestrator",
120
+ url: CODEX_ORCHESTRATOR_PROMPT_URL,
121
+ etag: existingMeta?.urls.orchestrator === CODEX_ORCHESTRATOR_PROMPT_URL
122
+ ? existingMeta?.etags?.orchestrator
123
+ : undefined
124
+ },
125
+ {
126
+ key: "plan",
127
+ url: CODEX_PLAN_PROMPT_URL,
128
+ etag: existingMeta?.urls.plan === CODEX_PLAN_PROMPT_URL ? existingMeta?.etags?.plan : undefined
129
+ }
130
+ ]
131
+ }, {
132
+ fetchImpl,
133
+ timeoutMs: FETCH_TIMEOUT_MS
134
+ });
135
+ const orchestratorResult = results.find((result) => result.key === "orchestrator");
136
+ const planResult = results.find((result) => result.key === "plan");
137
+ const orchestrator = resolvePrompt(orchestratorResult, existingCache?.prompts.orchestrator);
138
+ const plan = resolvePrompt(planResult, existingCache?.prompts.plan);
139
+ if (!orchestrator || !plan) {
140
+ return {
141
+ orchestrator: existingCache?.prompts.orchestrator,
142
+ plan: existingCache?.prompts.plan
143
+ };
144
+ }
145
+ const nextCache = {
146
+ fetchedAt: now,
147
+ source: "github",
148
+ prompts: {
149
+ orchestrator,
150
+ plan
151
+ }
152
+ };
153
+ await writePromptsCache(cacheDir, nextCache);
154
+ await writePromptsCacheMeta(cacheDir, {
155
+ lastChecked: now,
156
+ urls: {
157
+ orchestrator: CODEX_ORCHESTRATOR_PROMPT_URL,
158
+ plan: CODEX_PLAN_PROMPT_URL
159
+ },
160
+ etags: {
161
+ orchestrator: resolveEtag(orchestratorResult, existingMeta?.etags?.orchestrator),
162
+ plan: resolveEtag(planResult, existingMeta?.etags?.plan)
163
+ }
164
+ });
165
+ return {
166
+ orchestrator,
167
+ plan
168
+ };
169
+ }, { staleMs: 10_000 });
170
+ if (input.forceRefresh === true) {
171
+ return run();
172
+ }
173
+ const existingInFlight = inFlightRefreshByCacheDir.get(cacheDir);
174
+ if (existingInFlight)
175
+ return existingInFlight;
176
+ const inFlight = run().finally(() => {
177
+ if (inFlightRefreshByCacheDir.get(cacheDir) === inFlight) {
178
+ inFlightRefreshByCacheDir.delete(cacheDir);
179
+ }
180
+ });
181
+ inFlightRefreshByCacheDir.set(cacheDir, inFlight);
182
+ return inFlight;
183
+ }
184
+ //# sourceMappingURL=codex-prompts-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-prompts-cache.js","sourceRoot":"","sources":["../../lib/codex-prompts-cache.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex-status-storage.d.ts","sourceRoot":"","sources":["../../lib/codex-status-storage.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAErD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;AAiChE,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAE1E;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GACnE,OAAO,CAAC,WAAW,CAAC,CAoBtB"}
1
+ {"version":3,"file":"codex-status-storage.d.ts","sourceRoot":"","sources":["../../lib/codex-status-storage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAIrD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;AAYhE,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAE1E;AAED,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GACnE,OAAO,CAAC,WAAW,CAAC,CAOtB"}
@@ -1,58 +1,23 @@
1
- import lockfile from "proper-lockfile";
2
- import fs from "node:fs/promises";
3
- import path from "node:path";
1
+ import { withLockedFile } from "./cache-lock";
2
+ import { readJsonFileBestEffort, writeJsonFileAtomicBestEffort } from "./cache-io";
4
3
  async function readJson(filePath) {
5
- let raw;
6
- try {
7
- raw = await fs.readFile(filePath, "utf8");
8
- }
9
- catch (error) {
10
- if (error && typeof error === "object" && "code" in error && error.code === "ENOENT") {
11
- return {};
12
- }
13
- throw error;
14
- }
15
- try {
16
- return JSON.parse(raw);
17
- }
18
- catch {
4
+ const parsed = await readJsonFileBestEffort(filePath);
5
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed))
19
6
  return {};
20
- }
7
+ return parsed;
21
8
  }
22
9
  async function writeAtomic(filePath, data) {
23
- await fs.mkdir(path.dirname(filePath), { recursive: true });
24
- const tmpPath = `${filePath}.tmp`;
25
- const serialized = `${JSON.stringify(data, null, 2)}\n`;
26
- await fs.writeFile(tmpPath, serialized, { mode: 0o600 });
27
- await fs.rename(tmpPath, filePath);
28
- try {
29
- await fs.chmod(filePath, 0o600);
30
- }
31
- catch {
32
- // best-effort permissions
33
- }
10
+ await writeJsonFileAtomicBestEffort(filePath, data);
34
11
  }
35
12
  export async function loadSnapshots(filePath) {
36
13
  return readJson(filePath);
37
14
  }
38
15
  export async function saveSnapshots(filePath, update) {
39
- await fs.mkdir(path.dirname(filePath), { recursive: true });
40
- const release = await lockfile.lock(filePath, {
41
- realpath: false,
42
- retries: {
43
- retries: 20,
44
- minTimeout: 10,
45
- maxTimeout: 100
46
- }
47
- });
48
- try {
16
+ return withLockedFile(filePath, async () => {
49
17
  const cur = await loadSnapshots(filePath);
50
18
  const next = await update(cur);
51
19
  await writeAtomic(filePath, next);
52
20
  return next;
53
- }
54
- finally {
55
- await release();
56
- }
21
+ });
57
22
  }
58
23
  //# sourceMappingURL=codex-status-storage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex-status-storage.js","sourceRoot":"","sources":["../../lib/codex-status-storage.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AAEtC,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAM5B,KAAK,UAAU,QAAQ,CAAC,QAAgB;IACtC,IAAI,GAAW,CAAA;IACf,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrF,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAA;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,IAAiB;IAC5D,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,MAAM,OAAO,GAAG,GAAG,QAAQ,MAAM,CAAA;IACjC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAA;IACvD,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxD,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClC,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,0BAA0B;IAC5B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB;IAClD,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,MAAoE;IAEpE,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAE3D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC5C,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE;YACP,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,GAAG;SAChB;KACF,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QACjC,OAAO,IAAI,CAAA;IACb,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAA;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"codex-status-storage.js","sourceRoot":"","sources":["../../lib/codex-status-storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAA;AAIlF,KAAK,UAAU,QAAQ,CAAC,QAAgB;IACtC,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IACrD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAA;IAC7E,OAAO,MAAqB,CAAA;AAC9B,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,IAAiB;IAC5D,MAAM,6BAA6B,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB;IAClD,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,MAAoE;IAEpE,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QACjC,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -8,7 +8,7 @@ import { shouldUseColor } from "./ui/tty/ansi";
8
8
  * Includes usage snapshots if available on disk.
9
9
  */
10
10
  export async function toolOutputForStatus(authPath = defaultAuthPath(), snapshotsPath = defaultSnapshotsPath(), options = {}) {
11
- const authFile = await loadAuthStorage(authPath);
11
+ const authFile = await loadAuthStorage(authPath, { lockReads: false });
12
12
  const snapshots = await loadSnapshots(snapshotsPath);
13
13
  const style = options.style ?? "plain";
14
14
  const useColor = options.useColor ?? (style === "menu" ? shouldUseColor() : false);
@@ -1 +1 @@
1
- {"version":3,"file":"codex-status-tool.js","sourceRoot":"","sources":["../../lib/codex-status-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,eAAe,EAA0B,MAAM,mBAAmB,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,eAAe,EAAE,EACpC,gBAAwB,oBAAoB,EAAE,EAC9C,UAA6D,EAAE;IAE/D,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAA;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;IAC9B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC;QAClE,OAAO,+BAA+B,CAAA;IACxC,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpD,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CAAA;IAEH,MAAM,cAAc,GAAG,eAAe,CACpC;QACE,QAAQ,EAAE,eAAe;QACzB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,SAAS;KACV,EACD;QACE,KAAK;QACL,QAAQ;KACT,CACF,CAAA;IAED,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;AACzC,CAAC"}
1
+ {"version":3,"file":"codex-status-tool.js","sourceRoot":"","sources":["../../lib/codex-status-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,eAAe,EAA0B,MAAM,mBAAmB,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,eAAe,EAAE,EACpC,gBAAwB,oBAAoB,EAAE,EAC9C,UAA6D,EAAE;IAE/D,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;IACtE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAA;IACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAA;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;IAC9B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC;QAClE,OAAO,+BAA+B,CAAA;IACxC,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpD,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC,CAAA;IAEH,MAAM,cAAc,GAAG,eAAe,CACpC;QACE,QAAQ,EAAE,eAAe;QACzB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,SAAS;KACV,EACD;QACE,KAAK;QACL,QAAQ;KACT,CACF,CAAA;IAED,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;AACzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex-status-ui.d.ts","sourceRoot":"","sources":["../../lib/codex-status-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAc,MAAM,SAAS,CAAA;AAMhF,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAA;AAkHhD,wBAAgB,eAAe,CAC7B,KAAK,EAAE;IACL,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,SAAS,CAAC,CAAA;CAC9D,EACD,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9D,MAAM,EAAE,CAwFV"}
1
+ {"version":3,"file":"codex-status-ui.d.ts","sourceRoot":"","sources":["../../lib/codex-status-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAc,MAAM,SAAS,CAAA;AAMhF,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAA;AA4HhD,wBAAgB,eAAe,CAC7B,KAAK,EAAE;IACL,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAG,SAAS,CAAC,CAAA;CAC9D,EACD,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9D,MAAM,EAAE,CAqFV"}
@@ -54,8 +54,9 @@ function resolveQuotaRows(snap) {
54
54
  function formatAccountLabel(input) {
55
55
  const label = input.account.email ?? input.account.identityKey ?? "account";
56
56
  const plan = input.account.plan ? ` (${input.account.plan})` : "";
57
+ const missingIdentityBadge = input.account.identityKey ? "" : " [identity-missing]";
57
58
  if (!input.withBadges)
58
- return `${label}${plan}`;
59
+ return `${label}${plan}${missingIdentityBadge}`;
59
60
  const badges = [];
60
61
  if (input.account.enabled === false) {
61
62
  badges.push(colorize("[disabled]", ANSI.red, input.useColor));
@@ -66,6 +67,9 @@ function formatAccountLabel(input) {
66
67
  if (input.account.identityKey && input.activeIdentityKey === input.account.identityKey) {
67
68
  badges.push(colorize("[last active]", ANSI.cyan, input.useColor));
68
69
  }
70
+ if (!input.account.identityKey) {
71
+ badges.push(colorize("[identity-missing]", ANSI.yellow, input.useColor));
72
+ }
69
73
  const suffix = badges.length > 0 ? ` ${badges.join(" ")}` : "";
70
74
  return `${label}${plan}${suffix}`;
71
75
  }
@@ -81,6 +85,11 @@ function renderQuotaLine(input) {
81
85
  function fallbackResetLabel(expired) {
82
86
  return expired ? "Unknown, account expired" : "Unknown, no snapshot yet";
83
87
  }
88
+ function fallbackResetLabelForAccount(input) {
89
+ if (input.identityMissing)
90
+ return "Unknown, missing identity metadata";
91
+ return fallbackResetLabel(input.expired);
92
+ }
84
93
  function formatCredits(snap) {
85
94
  const credits = snap?.credits;
86
95
  if (!credits)
@@ -117,13 +126,10 @@ export function renderDashboard(input, options = {}) {
117
126
  lines.push("No Codex accounts configured.");
118
127
  return lines;
119
128
  }
120
- const renderableAccounts = input.accounts.filter((acc) => Boolean(acc.identityKey));
129
+ const renderableAccounts = input.accounts;
121
130
  for (let i = 0; i < renderableAccounts.length; i += 1) {
122
131
  const acc = renderableAccounts[i];
123
- const key = acc.identityKey;
124
- if (!key)
125
- continue;
126
- const snap = input.snapshots[key];
132
+ const snap = acc.identityKey ? input.snapshots[acc.identityKey] : undefined;
127
133
  const accountLabel = formatAccountLabel({
128
134
  account: acc,
129
135
  activeIdentityKey: input.activeIdentityKey,
@@ -144,7 +150,7 @@ export function renderDashboard(input, options = {}) {
144
150
  leftPct: rows.fiveHour?.leftPct ?? 0,
145
151
  resetText: rows.fiveHour
146
152
  ? (formatResetTimestamp(rows.fiveHour.resetsAt) ?? "Unknown")
147
- : fallbackResetLabel(expired),
153
+ : fallbackResetLabelForAccount({ expired, identityMissing: !acc.identityKey }),
148
154
  useColor
149
155
  }));
150
156
  lines.push(renderQuotaLine({
@@ -153,7 +159,7 @@ export function renderDashboard(input, options = {}) {
153
159
  leftPct: rows.weekly?.leftPct ?? 0,
154
160
  resetText: rows.weekly
155
161
  ? (formatResetTimestamp(rows.weekly.resetsAt) ?? "Unknown")
156
- : fallbackResetLabel(expired),
162
+ : fallbackResetLabelForAccount({ expired, identityMissing: !acc.identityKey }),
157
163
  useColor
158
164
  }));
159
165
  const creditsText = formatCredits(snap);