@roackb2/heddle 0.0.31 → 0.0.34

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 (175) hide show
  1. package/README.md +31 -5
  2. package/dist/examples/programmatic-loop.js +2 -0
  3. package/dist/examples/programmatic-loop.js.map +1 -1
  4. package/dist/src/cli/ask.d.ts +1 -0
  5. package/dist/src/cli/ask.d.ts.map +1 -1
  6. package/dist/src/cli/ask.js +20 -4
  7. package/dist/src/cli/ask.js.map +1 -1
  8. package/dist/src/cli/auth.d.ts +15 -0
  9. package/dist/src/cli/auth.d.ts.map +1 -0
  10. package/dist/src/cli/auth.js +79 -0
  11. package/dist/src/cli/auth.js.map +1 -0
  12. package/dist/src/cli/chat/App.d.ts +1 -1
  13. package/dist/src/cli/chat/App.d.ts.map +1 -1
  14. package/dist/src/cli/chat/App.js +17 -3
  15. package/dist/src/cli/chat/App.js.map +1 -1
  16. package/dist/src/cli/chat/hooks/useAgentRun.d.ts.map +1 -1
  17. package/dist/src/cli/chat/hooks/useAgentRun.js +20 -6
  18. package/dist/src/cli/chat/hooks/useAgentRun.js.map +1 -1
  19. package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts.map +1 -1
  20. package/dist/src/cli/chat/hooks/usePromptSubmission.js +2 -0
  21. package/dist/src/cli/chat/hooks/usePromptSubmission.js.map +1 -1
  22. package/dist/src/cli/chat/state/local-commands.d.ts +3 -0
  23. package/dist/src/cli/chat/state/local-commands.d.ts.map +1 -1
  24. package/dist/src/cli/chat/state/local-commands.js +47 -0
  25. package/dist/src/cli/chat/state/local-commands.js.map +1 -1
  26. package/dist/src/cli/chat/submit.d.ts +1 -0
  27. package/dist/src/cli/chat/submit.d.ts.map +1 -1
  28. package/dist/src/cli/chat/submit.js +1 -0
  29. package/dist/src/cli/chat/submit.js.map +1 -1
  30. package/dist/src/cli/chat/utils/runtime.d.ts +13 -1
  31. package/dist/src/cli/chat/utils/runtime.d.ts.map +1 -1
  32. package/dist/src/cli/chat/utils/runtime.js +24 -3
  33. package/dist/src/cli/chat/utils/runtime.js.map +1 -1
  34. package/dist/src/cli/daemon.d.ts +1 -0
  35. package/dist/src/cli/daemon.d.ts.map +1 -1
  36. package/dist/src/cli/daemon.js +1 -0
  37. package/dist/src/cli/daemon.js.map +1 -1
  38. package/dist/src/cli/heartbeat/worker.d.ts.map +1 -1
  39. package/dist/src/cli/heartbeat/worker.js +4 -5
  40. package/dist/src/cli/heartbeat/worker.js.map +1 -1
  41. package/dist/src/cli/main.js +31 -1
  42. package/dist/src/cli/main.js.map +1 -1
  43. package/dist/src/cli/remote/control-plane-client.d.ts +11 -4
  44. package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
  45. package/dist/src/core/agent/post-mutation.d.ts +0 -7
  46. package/dist/src/core/agent/post-mutation.d.ts.map +1 -1
  47. package/dist/src/core/agent/post-mutation.js +0 -66
  48. package/dist/src/core/agent/post-mutation.js.map +1 -1
  49. package/dist/src/core/agent/progress-reminders.js +4 -4
  50. package/dist/src/core/agent/progress-reminders.js.map +1 -1
  51. package/dist/src/core/agent/run-agent.d.ts.map +1 -1
  52. package/dist/src/core/agent/run-agent.js +48 -63
  53. package/dist/src/core/agent/run-agent.js.map +1 -1
  54. package/dist/src/core/auth/openai-oauth.d.ts +64 -0
  55. package/dist/src/core/auth/openai-oauth.d.ts.map +1 -0
  56. package/dist/src/core/auth/openai-oauth.js +279 -0
  57. package/dist/src/core/auth/openai-oauth.js.map +1 -0
  58. package/dist/src/core/auth/provider-credentials.d.ts +52 -0
  59. package/dist/src/core/auth/provider-credentials.d.ts.map +1 -0
  60. package/dist/src/core/auth/provider-credentials.js +151 -0
  61. package/dist/src/core/auth/provider-credentials.js.map +1 -0
  62. package/dist/src/core/chat/compaction.js +5 -2
  63. package/dist/src/core/chat/compaction.js.map +1 -1
  64. package/dist/src/core/chat/session-submit.d.ts +1 -0
  65. package/dist/src/core/chat/session-submit.d.ts.map +1 -1
  66. package/dist/src/core/chat/session-submit.js +16 -5
  67. package/dist/src/core/chat/session-submit.js.map +1 -1
  68. package/dist/src/core/chat/storage.js +4 -4
  69. package/dist/src/core/chat/storage.js.map +1 -1
  70. package/dist/src/core/chat/trace-summary.d.ts.map +1 -1
  71. package/dist/src/core/chat/trace-summary.js +2 -0
  72. package/dist/src/core/chat/trace-summary.js.map +1 -1
  73. package/dist/src/core/llm/factory.d.ts +3 -0
  74. package/dist/src/core/llm/factory.d.ts.map +1 -1
  75. package/dist/src/core/llm/factory.js +11 -2
  76. package/dist/src/core/llm/factory.js.map +1 -1
  77. package/dist/src/core/llm/openai-models.d.ts +2 -0
  78. package/dist/src/core/llm/openai-models.d.ts.map +1 -1
  79. package/dist/src/core/llm/openai-models.js +29 -1
  80. package/dist/src/core/llm/openai-models.js.map +1 -1
  81. package/dist/src/core/llm/openai.d.ts +13 -0
  82. package/dist/src/core/llm/openai.d.ts.map +1 -1
  83. package/dist/src/core/llm/openai.js +127 -8
  84. package/dist/src/core/llm/openai.js.map +1 -1
  85. package/dist/src/core/prompts/system-prompt.d.ts.map +1 -1
  86. package/dist/src/core/prompts/system-prompt.js +7 -1
  87. package/dist/src/core/prompts/system-prompt.js.map +1 -1
  88. package/dist/src/core/runtime/agent-loop.d.ts.map +1 -1
  89. package/dist/src/core/runtime/agent-loop.js +20 -2
  90. package/dist/src/core/runtime/agent-loop.js.map +1 -1
  91. package/dist/src/core/runtime/api-keys.d.ts +27 -0
  92. package/dist/src/core/runtime/api-keys.d.ts.map +1 -1
  93. package/dist/src/core/runtime/api-keys.js +57 -4
  94. package/dist/src/core/runtime/api-keys.js.map +1 -1
  95. package/dist/src/core/runtime/default-tools.d.ts +3 -0
  96. package/dist/src/core/runtime/default-tools.d.ts.map +1 -1
  97. package/dist/src/core/runtime/default-tools.js +7 -0
  98. package/dist/src/core/runtime/default-tools.js.map +1 -1
  99. package/dist/src/core/tools/delete-file.d.ts +7 -0
  100. package/dist/src/core/tools/delete-file.d.ts.map +1 -0
  101. package/dist/src/core/tools/delete-file.js +79 -0
  102. package/dist/src/core/tools/delete-file.js.map +1 -0
  103. package/dist/src/core/tools/move-file.d.ts +7 -0
  104. package/dist/src/core/tools/move-file.d.ts.map +1 -0
  105. package/dist/src/core/tools/move-file.js +82 -0
  106. package/dist/src/core/tools/move-file.js.map +1 -0
  107. package/dist/src/core/tools/report-state.js +1 -1
  108. package/dist/src/core/tools/report-state.js.map +1 -1
  109. package/dist/src/core/tools/view-image.d.ts +3 -0
  110. package/dist/src/core/tools/view-image.d.ts.map +1 -1
  111. package/dist/src/core/tools/view-image.js +197 -14
  112. package/dist/src/core/tools/view-image.js.map +1 -1
  113. package/dist/src/core/tools/web-search.d.ts +2 -0
  114. package/dist/src/core/tools/web-search.d.ts.map +1 -1
  115. package/dist/src/core/tools/web-search.js +6 -0
  116. package/dist/src/core/tools/web-search.js.map +1 -1
  117. package/dist/src/core/trace/format.d.ts.map +1 -1
  118. package/dist/src/core/trace/format.js +3 -0
  119. package/dist/src/core/trace/format.js.map +1 -1
  120. package/dist/src/core/types.d.ts +7 -0
  121. package/dist/src/core/types.d.ts.map +1 -1
  122. package/dist/src/index.d.ts +6 -2
  123. package/dist/src/index.d.ts.map +1 -1
  124. package/dist/src/index.js +3 -1
  125. package/dist/src/index.js.map +1 -1
  126. package/dist/src/server/app.d.ts +3 -1
  127. package/dist/src/server/app.d.ts.map +1 -1
  128. package/dist/src/server/app.js +1 -0
  129. package/dist/src/server/app.js.map +1 -1
  130. package/dist/src/server/features/control-plane/router.d.ts +11 -4
  131. package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
  132. package/dist/src/server/features/control-plane/router.js +6 -0
  133. package/dist/src/server/features/control-plane/router.js.map +1 -1
  134. package/dist/src/server/features/control-plane/services/ask.d.ts +1 -0
  135. package/dist/src/server/features/control-plane/services/ask.d.ts.map +1 -1
  136. package/dist/src/server/features/control-plane/services/ask.js +6 -3
  137. package/dist/src/server/features/control-plane/services/ask.js.map +1 -1
  138. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +5 -4
  139. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +1 -1
  140. package/dist/src/server/features/control-plane/services/chat-sessions.js +64 -3
  141. package/dist/src/server/features/control-plane/services/chat-sessions.js.map +1 -1
  142. package/dist/src/server/features/control-plane/services/control-plane-state.d.ts.map +1 -1
  143. package/dist/src/server/features/control-plane/services/control-plane-state.js +6 -0
  144. package/dist/src/server/features/control-plane/services/control-plane-state.js.map +1 -1
  145. package/dist/src/server/features/control-plane/types.d.ts +6 -0
  146. package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
  147. package/dist/src/server/router.d.ts +11 -4
  148. package/dist/src/server/router.d.ts.map +1 -1
  149. package/dist/src/server/types.d.ts +2 -0
  150. package/dist/src/server/types.d.ts.map +1 -1
  151. package/dist/src/web/assets/MonacoDiffViewer-DM8Cy5Xf.js +4 -0
  152. package/dist/src/web/assets/chunk-DECur_0Z.js +1 -0
  153. package/dist/src/web/assets/codicon-ngg6Pgfi.ttf +0 -0
  154. package/dist/src/web/assets/css-ejLFi3lO.js +3 -0
  155. package/dist/src/web/assets/editor-Br_kD0ds.css +1 -0
  156. package/dist/src/web/assets/editor.api2-DRhrSk9h.js +872 -0
  157. package/dist/src/web/assets/editor.worker-DWlYVeeX.js +26 -0
  158. package/dist/src/web/assets/go-CaScRb1i.js +1 -0
  159. package/dist/src/web/assets/html-Cft6PSNf.js +1 -0
  160. package/dist/src/web/assets/{index-CAWhKnGd.css → index-BEeN-RT5.css} +1 -1
  161. package/dist/src/web/assets/index-BKDg9H_-.js +56 -0
  162. package/dist/src/web/assets/java-_yhwA1y2.js +1 -0
  163. package/dist/src/web/assets/javascript-6bpvthJD.js +1 -0
  164. package/dist/src/web/assets/json.worker-CCzEOxDx.js +58 -0
  165. package/dist/src/web/assets/jsonMode-yXXGoTnD.js +10 -0
  166. package/dist/src/web/assets/markdown-wO2PN3EC.js +1 -0
  167. package/dist/src/web/assets/python-kY56oSAs.js +1 -0
  168. package/dist/src/web/assets/rust-BOwv_5ZO.js +1 -0
  169. package/dist/src/web/assets/scss-Cdfe_FFe.js +3 -0
  170. package/dist/src/web/assets/shell-Dgo0Jcwc.js +1 -0
  171. package/dist/src/web/assets/typescript-KZ9-zMZK.js +1 -0
  172. package/dist/src/web/assets/yaml-B3q_s4Yl.js +1 -0
  173. package/dist/src/web/index.html +3 -2
  174. package/package.json +2 -1
  175. package/dist/src/web/assets/index-D35_IzEn.js +0 -55
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,UAAU,CAmBlF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,uBAA4B,GAAG,WAAW,CAUrF;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAGhF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,UAAU,CA6BlF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,uBAA4B,GAAG,WAAW,CAUrF;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -6,18 +6,27 @@ import { DEFAULT_ANTHROPIC_MODEL, DEFAULT_LLM_PROVIDER, DEFAULT_OPENAI_MODEL } f
6
6
  import { createAnthropicAdapter } from './anthropic.js';
7
7
  import { createOpenAiAdapter } from './openai.js';
8
8
  import { inferProviderFromModel } from './providers.js';
9
+ import { resolveOAuthCredentialForModel } from '../runtime/api-keys.js';
9
10
  export function createLlmAdapter(options = {}) {
10
11
  const provider = resolveLlmProvider(options);
12
+ const model = options.model
13
+ ?? (provider === 'anthropic' ? DEFAULT_ANTHROPIC_MODEL : DEFAULT_OPENAI_MODEL);
14
+ const credential = options.credential
15
+ ?? (!options.apiKey && provider === 'openai' ? resolveOAuthCredentialForModel(model, {
16
+ storePath: options.credentialStorePath,
17
+ }) : undefined);
11
18
  switch (provider) {
12
19
  case 'openai':
13
20
  return createOpenAiAdapter({
14
21
  apiKey: options.apiKey,
15
- model: options.model ?? DEFAULT_OPENAI_MODEL,
22
+ model,
23
+ credential,
24
+ credentialStorePath: options.credentialStorePath,
16
25
  });
17
26
  case 'anthropic':
18
27
  return createAnthropicAdapter({
19
28
  apiKey: options.apiKey,
20
- model: options.model ?? DEFAULT_ANTHROPIC_MODEL,
29
+ model,
21
30
  });
22
31
  case 'google':
23
32
  throw new Error(`Model provider "google" is not wired yet. Add a Gemini adapter before using model ${JSON.stringify(options.model ?? 'gemini')}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sBAAsB;AACtB,8DAA8D;AAC9D,8EAA8E;AAE9E,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAQxD,MAAM,UAAU,gBAAgB,CAAC,UAAmC,EAAE;IACpE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE7C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,mBAAmB,CAAC;gBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,oBAAoB;aAC7C,CAAC,CAAC;QACL,KAAK,WAAW;YACd,OAAO,sBAAsB,CAAC;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,uBAAuB;aAChD,CAAC,CAAC;QACL,KAAK,QAAQ;YACX,MAAM,IAAI,KAAK,CACb,qFAAqF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAClI,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAmC,EAAE;IACtE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sBAAsB;AACtB,8DAA8D;AAC9D,8EAA8E;AAE9E,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AAUxE,MAAM,UAAU,gBAAgB,CAAC,UAAmC,EAAE;IACpE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,KAAK,GACT,OAAO,CAAC,KAAK;WACV,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IACjF,MAAM,UAAU,GACd,OAAO,CAAC,UAAU;WACf,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,8BAA8B,CAAC,KAAK,EAAE;YACnF,SAAS,EAAE,OAAO,CAAC,mBAAmB;SACvC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAElB,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,mBAAmB,CAAC;gBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK;gBACL,UAAU;gBACV,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;aACjD,CAAC,CAAC;QACL,KAAK,WAAW;YACd,OAAO,sBAAsB,CAAC;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK;aACN,CAAC,CAAC;QACL,KAAK,QAAQ;YACX,MAAM,IAAI,KAAK,CACb,qFAAqF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAClI,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAmC,EAAE;IACtE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -6,9 +6,11 @@ export declare const BUILT_IN_MODEL_GROUPS: BuiltInModelGroup[];
6
6
  export declare const OPENAI_MODEL_GROUPS: BuiltInModelGroup[];
7
7
  export declare const COMMON_BUILT_IN_MODELS: string[];
8
8
  export declare const COMMON_OPENAI_MODELS: string[];
9
+ export declare const OPENAI_ACCOUNT_SIGN_IN_MODELS: string[];
9
10
  export declare function formatOpenAiModelGroups(): string;
10
11
  export declare function formatBuiltInModelGroups(): string;
11
12
  export declare function filterOpenAiModels(query: string): string[];
13
+ export declare function isOpenAiAccountSignInModel(model: string): boolean;
12
14
  export declare function filterBuiltInModels(query: string): string[];
13
15
  export declare function estimateOpenAiContextWindow(model: string): number | undefined;
14
16
  export declare function estimateBuiltInContextWindow(model: string): number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"openai-models.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EAyCpD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAElD,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAyD,CAAC;AAC7F,eAAO,MAAM,oBAAoB,UAAuD,CAAC;AAMzF,wBAAgB,uBAAuB,IAAI,MAAM,CAOhD;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAOjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO3D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO9E"}
1
+ {"version":3,"file":"openai-models.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EA6CpD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAElD,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAyD,CAAC;AAC7F,eAAO,MAAM,oBAAoB,UAAuD,CAAC;AACzF,eAAO,MAAM,6BAA6B,UAWzC,CAAC;AAMF,wBAAgB,uBAAuB,IAAI,MAAM,CAOhD;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAOjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1D;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO3D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO9E"}
@@ -3,6 +3,10 @@
3
3
  // Keep this curated rather than mirroring the entire provider catalog.
4
4
  // ---------------------------------------------------------------------------
5
5
  export const BUILT_IN_MODEL_GROUPS = [
6
+ {
7
+ label: 'OpenAI · GPT-5.5',
8
+ models: ['gpt-5.5', 'gpt-5.5-pro'],
9
+ },
6
10
  {
7
11
  label: 'OpenAI · GPT-5.4',
8
12
  models: ['gpt-5.4', 'gpt-5.4-pro', 'gpt-5.4-mini', 'gpt-5.4-nano'],
@@ -25,7 +29,7 @@ export const BUILT_IN_MODEL_GROUPS = [
25
29
  },
26
30
  {
27
31
  label: 'OpenAI · Coding-optimized',
28
- models: ['gpt-5.1-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'],
32
+ models: ['gpt-5.3-codex', 'gpt-5.3-codex-spark', 'gpt-5.2-codex', 'gpt-5.1-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'],
29
33
  },
30
34
  {
31
35
  label: 'Anthropic · Claude 4',
@@ -47,6 +51,18 @@ export const BUILT_IN_MODEL_GROUPS = [
47
51
  export const OPENAI_MODEL_GROUPS = BUILT_IN_MODEL_GROUPS.filter((group) => group.label.startsWith('OpenAI · '));
48
52
  export const COMMON_BUILT_IN_MODELS = BUILT_IN_MODEL_GROUPS.flatMap((group) => group.models);
49
53
  export const COMMON_OPENAI_MODELS = OPENAI_MODEL_GROUPS.flatMap((group) => group.models);
54
+ export const OPENAI_ACCOUNT_SIGN_IN_MODELS = [
55
+ 'gpt-5.5',
56
+ 'gpt-5.4',
57
+ 'gpt-5.4-mini',
58
+ 'gpt-5.1-codex',
59
+ 'gpt-5.1-codex-max',
60
+ 'gpt-5.1-codex-mini',
61
+ 'gpt-5.2',
62
+ 'gpt-5.2-codex',
63
+ 'gpt-5.3-codex',
64
+ 'gpt-5.3-codex-spark',
65
+ ];
50
66
  const BUILT_IN_CONTEXT_WINDOW_ESTIMATES = new Map(COMMON_BUILT_IN_MODELS.map((model) => [model, inferContextWindowEstimate(model)]));
51
67
  export function formatOpenAiModelGroups() {
52
68
  return OPENAI_MODEL_GROUPS
@@ -71,6 +87,9 @@ export function filterOpenAiModels(query) {
71
87
  }
72
88
  return COMMON_OPENAI_MODELS.filter((model) => model.toLowerCase().includes(normalized));
73
89
  }
90
+ export function isOpenAiAccountSignInModel(model) {
91
+ return OPENAI_ACCOUNT_SIGN_IN_MODELS.includes(model.trim());
92
+ }
74
93
  export function filterBuiltInModels(query) {
75
94
  const normalized = query.trim().toLowerCase();
76
95
  if (!normalized) {
@@ -89,6 +108,15 @@ export function estimateBuiltInContextWindow(model) {
89
108
  return BUILT_IN_CONTEXT_WINDOW_ESTIMATES.get(normalized) ?? inferContextWindowEstimate(normalized);
90
109
  }
91
110
  function inferContextWindowEstimate(model) {
111
+ if (model.startsWith('gpt-5.5')) {
112
+ return 1_050_000;
113
+ }
114
+ if (model === 'gpt-5.4' || model === 'gpt-5.4-pro') {
115
+ return 1_050_000;
116
+ }
117
+ if (model === 'gpt-5.4-mini') {
118
+ return 400_000;
119
+ }
92
120
  if (model.startsWith('gpt-4.1')) {
93
121
  return 128_000;
94
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openai-models.js","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-models.js","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,23 @@
1
+ import type { Fetch as OpenAiFetch } from 'openai/core.js';
1
2
  import type { LlmAdapter } from './types.js';
3
+ import { type OpenAiOAuthCredential } from '../auth/openai-oauth.js';
4
+ import { type StoredProviderCredential } from '../auth/provider-credentials.js';
2
5
  export type OpenAiAdapterOptions = {
3
6
  apiKey?: string;
4
7
  model?: string;
8
+ credential?: StoredProviderCredential;
9
+ credentialStorePath?: string;
10
+ fetchImpl?: CompatibleFetch;
5
11
  };
12
+ type CompatibleFetch = (url: unknown, init?: unknown) => Promise<globalThis.Response>;
6
13
  /**
7
14
  * Create an LLM adapter backed by the OpenAI chat completions API.
8
15
  */
9
16
  export declare function createOpenAiAdapter(options?: OpenAiAdapterOptions): LlmAdapter;
17
+ export declare function createOpenAiOAuthFetch(initialCredential: OpenAiOAuthCredential, options?: {
18
+ storePath?: string;
19
+ fetchImpl?: CompatibleFetch;
20
+ refreshBeforeMs?: number;
21
+ }): OpenAiFetch;
22
+ export {};
10
23
  //# sourceMappingURL=openai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAA8E,MAAM,YAAY,CAAC;AAIzH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,oBAAyB,GAAG,UAAU,CAgFlF"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAA8E,MAAM,YAAY,CAAC;AAGzH,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AAGzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAEtF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,oBAAyB,GAAG,UAAU,CAiIlF;AA8BD,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,qBAAqB,EACxC,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;CACrB,GACL,WAAW,CA+Bb"}
@@ -3,12 +3,21 @@
3
3
  // ---------------------------------------------------------------------------
4
4
  import OpenAI from 'openai';
5
5
  import { DEFAULT_OPENAI_MODEL } from '../config.js';
6
+ import { OPENAI_CODEX_RESPONSES_ENDPOINT, refreshOpenAiOAuthCredential, } from '../auth/openai-oauth.js';
7
+ import { setStoredProviderCredential, } from '../auth/provider-credentials.js';
8
+ import { isOpenAiAccountSignInModel, OPENAI_ACCOUNT_SIGN_IN_MODELS } from './openai-models.js';
6
9
  /**
7
10
  * Create an LLM adapter backed by the OpenAI chat completions API.
8
11
  */
9
12
  export function createOpenAiAdapter(options = {}) {
13
+ const oauthCredential = options.credential?.type === 'oauth' ? options.credential : undefined;
10
14
  const client = new OpenAI({
11
- apiKey: firstDefinedNonEmpty(options.apiKey, process.env.OPENAI_API_KEY, process.env.PERSONAL_OPENAI_API_KEY),
15
+ apiKey: oauthCredential ? 'heddle-oauth-placeholder'
16
+ : firstDefinedNonEmpty(options.apiKey, process.env.OPENAI_API_KEY, process.env.PERSONAL_OPENAI_API_KEY),
17
+ fetch: oauthCredential ? createOpenAiOAuthFetch(oauthCredential, {
18
+ storePath: options.credentialStorePath,
19
+ fetchImpl: options.fetchImpl,
20
+ }) : options.fetchImpl,
12
21
  });
13
22
  const model = options.model ?? DEFAULT_OPENAI_MODEL;
14
23
  const capabilities = {
@@ -24,15 +33,19 @@ export function createOpenAiAdapter(options = {}) {
24
33
  capabilities,
25
34
  },
26
35
  async chat(messages, tools, signal, onStreamEvent) {
27
- const stream = await client.responses.stream({
36
+ if (oauthCredential && !isOpenAiAccountSignInModel(model)) {
37
+ throw new Error(`OpenAI account sign-in is not enabled for model ${model}. Use one of ${formatOpenAiAccountSignInModels()}, or set OPENAI_API_KEY to use Platform API-key mode.`);
38
+ }
39
+ const request = buildOpenAiResponsesRequest(messages, {
28
40
  model,
29
- input: toResponseInput(messages),
30
- tools: tools.length > 0 ? tools.map(toResponseTool) : undefined,
31
- reasoning: {
32
- summary: 'detailed',
33
- },
41
+ tools,
42
+ oauthMode: Boolean(oauthCredential),
43
+ });
44
+ const stream = await client.responses.stream({
45
+ ...request,
34
46
  }, { signal });
35
47
  let streamedContent = '';
48
+ const streamedToolCalls = new Map();
36
49
  for await (const event of stream) {
37
50
  if (event.type === 'response.output_text.delta' && event.delta) {
38
51
  streamedContent += event.delta;
@@ -42,10 +55,40 @@ export function createOpenAiAdapter(options = {}) {
42
55
  if (event.type === 'response.output_text.done') {
43
56
  streamedContent = event.text;
44
57
  onStreamEvent?.({ type: 'content.done', content: event.text });
58
+ continue;
59
+ }
60
+ if (event.type === 'response.output_item.added' || event.type === 'response.output_item.done') {
61
+ const item = event.item;
62
+ if (item.type === 'function_call'
63
+ && typeof item.id === 'string'
64
+ && typeof item.call_id === 'string'
65
+ && typeof item.name === 'string') {
66
+ const existing = streamedToolCalls.get(item.id);
67
+ streamedToolCalls.set(item.id, {
68
+ id: item.call_id,
69
+ tool: item.name,
70
+ argumentsText: typeof item.arguments === 'string' && item.arguments.length > 0 ? item.arguments
71
+ : existing?.argumentsText ?? '',
72
+ });
73
+ }
74
+ continue;
75
+ }
76
+ if (event.type === 'response.function_call_arguments.delta') {
77
+ const existing = streamedToolCalls.get(event.item_id);
78
+ if (existing) {
79
+ existing.argumentsText += event.delta;
80
+ }
81
+ continue;
82
+ }
83
+ if (event.type === 'response.function_call_arguments.done') {
84
+ const existing = streamedToolCalls.get(event.item_id);
85
+ if (existing) {
86
+ existing.argumentsText = event.arguments;
87
+ }
45
88
  }
46
89
  }
47
90
  const response = await stream.finalResponse();
48
- const toolCalls = response.output.flatMap((item) => {
91
+ const finalResponseToolCalls = response.output.flatMap((item) => {
49
92
  if (item.type !== 'function_call'
50
93
  || typeof item.call_id !== 'string'
51
94
  || typeof item.name !== 'string'
@@ -58,6 +101,7 @@ export function createOpenAiAdapter(options = {}) {
58
101
  input: JSON.parse(item.arguments),
59
102
  }];
60
103
  });
104
+ const toolCalls = finalResponseToolCalls.length > 0 ? finalResponseToolCalls : parseStreamedToolCalls(streamedToolCalls);
61
105
  const diagnostics = extractAssistantDiagnostics(response, toolCalls.length > 0);
62
106
  const content = streamedContent || (diagnostics?.rationale ?? extractAssistantContent(response, toolCalls.length > 0));
63
107
  if (!streamedContent && content) {
@@ -73,9 +117,67 @@ export function createOpenAiAdapter(options = {}) {
73
117
  },
74
118
  };
75
119
  }
120
+ function parseStreamedToolCalls(streamedToolCalls) {
121
+ const toolCalls = [];
122
+ for (const entry of streamedToolCalls.values()) {
123
+ if (!entry.argumentsText.trim()) {
124
+ continue;
125
+ }
126
+ toolCalls.push({
127
+ id: entry.id,
128
+ tool: entry.tool,
129
+ input: JSON.parse(entry.argumentsText),
130
+ });
131
+ }
132
+ return toolCalls;
133
+ }
134
+ function formatOpenAiAccountSignInModels() {
135
+ return OPENAI_ACCOUNT_SIGN_IN_MODELS.join(', ');
136
+ }
76
137
  function firstDefinedNonEmpty(...values) {
77
138
  return values.find((value) => typeof value === 'string' && value.trim().length > 0);
78
139
  }
140
+ export function createOpenAiOAuthFetch(initialCredential, options = {}) {
141
+ let credential = initialCredential;
142
+ const fetcher = options.fetchImpl ?? fetch;
143
+ const refreshBeforeMs = options.refreshBeforeMs ?? 60_000;
144
+ const oauthFetch = async (requestInput, init) => {
145
+ if (credential.expiresAt <= Date.now() + refreshBeforeMs) {
146
+ credential = await refreshOpenAiOAuthCredential(credential, { fetchImpl: fetcher });
147
+ setStoredProviderCredential(credential, options.storePath);
148
+ }
149
+ const request = requestInput instanceof Request ? requestInput : undefined;
150
+ const requestInit = init;
151
+ const headers = new Headers(requestInit?.headers ?? request?.headers);
152
+ headers.delete('authorization');
153
+ headers.delete('Authorization');
154
+ headers.set('authorization', `Bearer ${credential.accessToken}`);
155
+ if (credential.accountId) {
156
+ headers.set('ChatGPT-Account-Id', credential.accountId);
157
+ }
158
+ const url = normalizeRequestUrl(requestInput);
159
+ const rewrittenUrl = shouldRouteToCodexResponses(url) ? OPENAI_CODEX_RESPONSES_ENDPOINT : url.toString();
160
+ return await fetcher(rewrittenUrl, {
161
+ ...requestInit,
162
+ method: requestInit?.method ?? request?.method,
163
+ body: requestInit?.body ?? request?.body ?? undefined,
164
+ headers,
165
+ });
166
+ };
167
+ return oauthFetch;
168
+ }
169
+ function normalizeRequestUrl(requestInput) {
170
+ if (requestInput instanceof URL) {
171
+ return requestInput;
172
+ }
173
+ if (requestInput instanceof Request) {
174
+ return new URL(requestInput.url);
175
+ }
176
+ return new URL(String(requestInput));
177
+ }
178
+ function shouldRouteToCodexResponses(url) {
179
+ return url.pathname.endsWith('/responses') || url.pathname.endsWith('/chat/completions');
180
+ }
79
181
  // ---------------------------------------------------------------------------
80
182
  // Internal converters
81
183
  // ---------------------------------------------------------------------------
@@ -125,6 +227,23 @@ function extractUsage(response) {
125
227
  function toResponseInput(messages) {
126
228
  return messages.flatMap((message) => toResponseInputItems(message));
127
229
  }
230
+ function buildOpenAiResponsesRequest(messages, options) {
231
+ const systemMessages = options.oauthMode ? messages.filter((message) => message.role === 'system') : [];
232
+ const inputMessages = options.oauthMode ? messages.filter((message) => message.role !== 'system') : messages;
233
+ const instructions = options.oauthMode ?
234
+ systemMessages.map((message) => message.content.trim()).filter(Boolean).join('\n\n')
235
+ : undefined;
236
+ return {
237
+ model: options.model,
238
+ input: toResponseInput(inputMessages),
239
+ tools: options.tools.length > 0 ? options.tools.map(toResponseTool) : undefined,
240
+ store: false,
241
+ reasoning: {
242
+ summary: options.oauthMode ? 'auto' : 'detailed',
243
+ },
244
+ ...(instructions ? { instructions } : {}),
245
+ };
246
+ }
128
247
  function toResponseInputItems(msg) {
129
248
  switch (msg.role) {
130
249
  case 'system':
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/core/llm/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/core/llm/openai.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../../../src/core/prompts/system-prompt.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CA6GpG"}
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../../../src/core/prompts/system-prompt.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAmHpG"}
@@ -13,6 +13,10 @@ You help a user understand, inspect, change, verify, and explain work in the cur
13
13
 
14
14
  You are not a generic chatbot. You are an operator-facing agent working in a real workspace with traces, approvals, and tool execution.
15
15
 
16
+ Your job is to help user completes their requested task. When the given task and the intention is clear, you should continue the work to help user complete their goal.
17
+
18
+ Only stop and ask user if there's something genuinely unclear and you need clarification from the user.
19
+
16
20
  ## Your Goal
17
21
 
18
22
  ${goal}
@@ -110,7 +114,9 @@ If the task involved changes or verification, prefer a short summary followed by
110
114
 
111
115
  ## Blocked State
112
116
 
113
- - You MUST call report_state before continuing if a tool fails, if you are blocked or uncertain about the next step, or if progress is limited by missing information, missing tool support, or missing inputs.
117
+ - Use report_state only when you are genuinely blocked, when a tool/runtime limitation prevents the next concrete action, or when you need to capture a grounded blocker for a future maintainer. Do not use it for ordinary progress updates, plan restatements, or cases where the next concrete action is already available and can be executed now.
118
+ - When you have enough evidence to continue, continue. Do not stop after intermediate inspection or partial progress just to restate the plan in different words.
119
+ - For bounded implementation work, carry the current slice through until it is actually complete or honestly blocked, even if the user did not explicitly say "continue" again.
114
120
 
115
121
  ## When to Stop
116
122
 
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../../../src/core/prompts/system-prompt.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wBAAwB;AACxB,uCAAuC;AACvC,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,SAAmB,EAAE,cAAuB;IAC1F,OAAO;;;;;;;;EAQP,IAAI;;;;;;;;;;;;kCAY4B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;;EAEpD,cAAc,CAAC,CAAC,CAAC,yBAAyB,cAAc,MAAM,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wQAqFmM,CAAC;AACzQ,CAAC"}
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../../../src/core/prompts/system-prompt.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,wBAAwB;AACxB,uCAAuC;AACvC,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,SAAmB,EAAE,cAAuB;IAC1F,OAAO;;;;;;;;;;;;EAYP,IAAI;;;;;;;;;;;;kCAY4B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;;EAEpD,cAAc,CAAC,CAAC,CAAC,yBAAyB,cAAc,MAAM,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wQAuFmM,CAAC;AACzQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loop.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/agent-loop.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAInF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEvF,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEvF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,cAAc,GAAG,mBAAmB,CAAC;IAClD,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,iBAAiB,CAAC,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5G,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAwHzF"}
1
+ {"version":3,"file":"agent-loop.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/agent-loop.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEvF,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEvF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,cAAc,GAAG,mBAAmB,CAAC;IAClD,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,iBAAiB,CAAC,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5G,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyIzF"}
@@ -3,7 +3,7 @@ import { DEFAULT_OPENAI_MODEL } from '../config.js';
3
3
  import { inferProviderFromModel } from '../llm/providers.js';
4
4
  import { runAgent } from '../agent/run-agent.js';
5
5
  import { createLogger } from '../utils/logger.js';
6
- import { resolveApiKeyForModel } from './api-keys.js';
6
+ import { resolveApiKeyForModel, resolveProviderCredentialSourceForModel, } from './api-keys.js';
7
7
  import { createFinishedAgentLoopState, generateRunId, getHistoryFromAgentLoopCheckpoint, getHistoryFromAgentLoopState } from './events.js';
8
8
  export async function runAgentLoop(options) {
9
9
  const runId = generateRunId();
@@ -11,16 +11,32 @@ export async function runAgentLoop(options) {
11
11
  const provider = inferProviderFromModel(model);
12
12
  const workspaceRoot = resolve(options.workspaceRoot ?? process.cwd());
13
13
  const apiKey = options.apiKey ?? resolveApiKeyForModel(model);
14
- const llm = options.llm ?? await createLoopLlmAdapter({ model, apiKey });
14
+ const providerCredentialSource = resolveProviderCredentialSourceForModel(model, {
15
+ apiKey,
16
+ apiKeyProvider: options.apiKey ? 'explicit' : apiKey ? provider : undefined,
17
+ credentialStorePath: options.stateDir ? resolve(workspaceRoot, options.stateDir) : undefined,
18
+ });
19
+ const llm = options.llm ?? await createLoopLlmAdapter({
20
+ model,
21
+ apiKey,
22
+ credentialStorePath: options.stateDir ? resolve(workspaceRoot, options.stateDir) : undefined,
23
+ });
15
24
  const logger = options.logger ?? createLogger({ pretty: false, level: 'info', console: false });
16
25
  const tools = await resolveTools({
17
26
  ...options,
18
27
  model,
19
28
  apiKey,
29
+ providerCredentialSource,
20
30
  workspaceRoot,
21
31
  });
22
32
  const now = () => new Date().toISOString();
23
33
  const startedAt = now();
34
+ logger.info({
35
+ model,
36
+ provider,
37
+ credentialSource: providerCredentialSource.type,
38
+ credentialProvider: 'provider' in providerCredentialSource ? providerCredentialSource.provider : undefined,
39
+ }, 'Agent runtime configured');
24
40
  const resumeMetadata = getResumeMetadata(options.resumeFrom);
25
41
  options.onEvent?.({
26
42
  type: 'loop.started',
@@ -161,6 +177,8 @@ async function resolveTools(options) {
161
177
  ...createDefaultAgentTools({
162
178
  model: options.model,
163
179
  apiKey: options.apiKey,
180
+ providerCredentialSource: options.providerCredentialSource,
181
+ credentialStorePath: options.stateDir ? resolve(options.workspaceRoot, options.stateDir) : undefined,
164
182
  workspaceRoot: options.workspaceRoot,
165
183
  stateDir: options.stateDir,
166
184
  memoryDir: options.memoryDir,
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../../../src/core/runtime/agent-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-loop.js","sourceRoot":"","sources":["../../../../src/core/runtime/agent-loop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,qBAAqB,EACrB,uCAAuC,GAExC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE,iCAAiC,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAsC3I,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA4B;IAC7D,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,oBAAoB,CAAC;IAC3I,MAAM,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,wBAAwB,GAAG,uCAAuC,CAAC,KAAK,EAAE;QAC9E,MAAM;QACN,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAC3E,mBAAmB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;KAC7F,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,oBAAoB,CAAC;QACpD,KAAK;QACL,MAAM;QACN,mBAAmB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;KAC7F,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAChG,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;QAC/B,GAAG,OAAO;QACV,KAAK;QACL,MAAM;QACN,wBAAwB;QACxB,aAAa;KACd,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC;IAExB,MAAM,CAAC,IAAI,CAAC;QACV,KAAK;QACL,QAAQ;QACR,gBAAgB,EAAE,wBAAwB,CAAC,IAAI;QAC/C,kBAAkB,EAAE,UAAU,IAAI,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KAC3G,EAAE,0BAA0B,CAAC,CAAC;IAE/B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE7D,OAAO,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,cAAc;QACpB,KAAK;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK;QACL,QAAQ;QACR,aAAa;QACb,qBAAqB,EAAE,cAAc,EAAE,eAAe;QACtD,SAAS,EAAE,SAAS;KACrB,CAAC,CAAC;IAEH,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,KAAK;YACL,cAAc,EAAE,cAAc,CAAC,eAAe;YAC9C,gBAAgB,EAAE,cAAc,CAAC,gBAAgB;YACjD,SAAS,EAAE,GAAG,EAAE;SACjB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG;QACH,KAAK;QACL,aAAa;QACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM;QACN,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC;QAChC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,iBAAiB,EAAE,CAAC,MAAM,EAAE,EAAE;YAC5B,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,kBAAkB;gBACxB,KAAK;gBACL,GAAG,MAAM;gBACT,SAAS,EAAE,GAAG,EAAE;aACjB,CAAC,CAAC;YACH,OAAO,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YACrC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,cAAc;gBACpB,KAAK;gBACL,IAAI;gBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,EAAE;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,KAAK;gBACnD,SAAS,EAAE,GAAG,EAAE;aACjB,CAAC,CAAC;QACL,CAAC;QACD,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;YAClD,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,gBAAgB;gBACtB,KAAK;gBACL,IAAI;gBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,EAAE;gBACnB,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;gBACrE,UAAU;gBACV,SAAS,EAAE,GAAG,EAAE;aACjB,CAAC,CAAC;QACL,CAAC;QACD,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,4BAA4B,CAAC;QACzC,KAAK;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK;QACL,QAAQ;QACR,aAAa;QACb,SAAS;QACT,UAAU;QACV,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,EAAE,eAAe;QACrB,KAAK;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK;QACL,SAAS,EAAE,UAAU;KACtB,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,MAAM;QACT,KAAK;QACL,QAAQ;QACR,aAAa;QACb,KAAK;KACN,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAA4D;IAClF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,SAAS,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACpC,OAAO,iCAAiC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,4BAA4B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,iBAAiB,CACxB,UAA4D;IAE5D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QAC5B,OAAO;YACL,eAAe,EAAE,UAAU,CAAC,KAAK;YACjC,gBAAgB,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;SAChD,CAAC;IACJ,CAAC;IAED,OAAO;QACL,eAAe,EAAE,UAAU,CAAC,KAAK;QACjC,gBAAgB,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM;KAC1C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAAyE;IAC3G,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC/D,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,OAKC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;IAC5C,IAAI,OAAO,CAAC,mBAAmB,KAAK,KAAK,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,aAAa,EAAE,GAAG,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACvE,OAAO;QACL,GAAG,uBAAuB,CAAC;YACzB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,mBAAmB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;YACpG,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC;QACF,GAAG,aAAa;QAChB,GAAG,UAAU;KACd,CAAC;AACJ,CAAC"}
@@ -1,8 +1,35 @@
1
1
  import type { LlmProvider } from '../llm/types.js';
2
+ import { type StoredProviderCredential } from '../auth/provider-credentials.js';
2
3
  export type ApiKeyRuntime = {
3
4
  apiKey?: string;
4
5
  apiKeyProvider?: LlmProvider | 'explicit';
6
+ credentialStorePath?: string;
7
+ preferApiKey?: boolean;
8
+ };
9
+ export type ProviderCredentialSource = {
10
+ type: 'explicit-api-key';
11
+ } | {
12
+ type: 'env-api-key';
13
+ provider: LlmProvider;
14
+ } | {
15
+ type: 'oauth';
16
+ provider: LlmProvider;
17
+ accountId?: string;
18
+ expiresAt?: number;
19
+ } | {
20
+ type: 'missing';
21
+ provider: LlmProvider;
5
22
  };
6
23
  export declare function resolveProviderApiKey(provider: LlmProvider): string | undefined;
7
24
  export declare function resolveApiKeyForModel(model: string, runtime?: ApiKeyRuntime): string | undefined;
25
+ export declare function resolveOAuthCredentialForModel(model: string, options?: {
26
+ storePath?: string;
27
+ }): Extract<StoredProviderCredential, {
28
+ type: 'oauth';
29
+ }> | undefined;
30
+ export declare function hasProviderCredentialForModel(model: string, runtime?: ApiKeyRuntime & {
31
+ credentialStorePath?: string;
32
+ }): boolean;
33
+ export declare function resolveProviderCredentialSourceForModel(model: string, runtime?: ApiKeyRuntime): ProviderCredentialSource;
34
+ export declare function formatMissingProviderCredentialMessage(model: string): string;
8
35
  //# sourceMappingURL=api-keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;CAC3C,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAS/E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAWhG"}
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AAEzC,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IAC1C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAChC;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,WAAW,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAChF;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,WAAW,CAAA;CAAE,CAAC;AAE/C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAS/E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAchG;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GACnC,OAAO,CAAC,wBAAwB,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,SAAS,CAIlE;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,GAAG;IAAE,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAET;AAED,wBAAgB,uCAAuC,CACrD,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,GACtB,wBAAwB,CAqC1B;AAED,wBAAgB,sCAAsC,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAW5E"}