nolo-cli 0.194.0-alpha.2 → 0.195.0-alpha.1

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 (72) hide show
  1. package/{_executeModel-WQ7BV3G7.js → _executeModel-ZOXM7Y34.js} +16 -16
  2. package/{agentDeleteCommand-4DK6X4S4.js → agentDeleteCommand-HTQ44RAQ.js} +18 -18
  3. package/{agentEmailCommands-CYPIYPOK.js → agentEmailCommands-YFUN7XBR.js} +19 -19
  4. package/{agentListCommands-MAG736RU.js → agentListCommands-LJLORDET.js} +10 -10
  5. package/{agentMachineCommands-7VTOWHHD.js → agentMachineCommands-2KTYKG4H.js} +7 -7
  6. package/{agentProviderCommands-XSZUCNIR.js → agentProviderCommands-T6E3JCR6.js} +1 -1
  7. package/{agentRecordCommands-VK3NEK5G.js → agentRecordCommands-3QNVYEG3.js} +18 -18
  8. package/{agentRunCommand-7MFVUHWX.js → agentRunCommand-Q2JM5JEU.js} +19 -19
  9. package/{agentRuntimeLocal-NAAYNHCW.js → agentRuntimeLocal-MTQSFD7I.js} +4 -4
  10. package/{agentSlice-TZRLTBEJ.js → agentSlice-QZGFPGMR.js} +1 -1
  11. package/{appDeleteCommands-VDHCDVBF.js → appDeleteCommands-3MCWTQS6.js} +8 -8
  12. package/{appDeployCommands-V6UTKVXR.js → appDeployCommands-7I34JXHZ.js} +8 -8
  13. package/{appDeployStatusCommands-4UIFSEPC.js → appDeployStatusCommands-IB4U6E35.js} +8 -8
  14. package/{appGetCommands-XKDXLC3C.js → appGetCommands-72B4NXAK.js} +8 -8
  15. package/{appListCommands-BELRVX2Y.js → appListCommands-3JL2SWPE.js} +8 -8
  16. package/{chromeOpsCommands-C46BXHEE.js → chromeOpsCommands-BA6CS4DI.js} +4 -0
  17. package/{chunk-TZLPJRNO.js → chunk-4FJMFU6Q.js} +4 -4
  18. package/{chunk-53RSTB7T.js → chunk-5TO2R77F.js} +5 -3
  19. package/{chunk-V62MBA65.js → chunk-6INEOFQ7.js} +3 -3
  20. package/{chunk-GYVLAHA4.js → chunk-6WZQGT5X.js} +5 -3
  21. package/{chunk-JG6IWEAW.js → chunk-AQJ7X2Q2.js} +7 -7
  22. package/{chunk-WVGVGT44.js → chunk-BHUBGU7Y.js} +2 -2
  23. package/{chunk-OUSUFO5W.js → chunk-BLLD2WLC.js} +2 -2
  24. package/{chunk-YARN6MCX.js → chunk-CB3VYZXP.js} +1 -1
  25. package/{chunk-ADTJJVDJ.js → chunk-DUNY6XR5.js} +4 -4
  26. package/{chunk-UVWBGWBO.js → chunk-EXSYUA2B.js} +3 -3
  27. package/{chunk-63JHZKGZ.js → chunk-F4LUA2DC.js} +8 -8
  28. package/{chunk-UC5RISH3.js → chunk-F4OL33IQ.js} +10 -10
  29. package/{chunk-5DIFZFYF.js → chunk-FB3WCWBB.js} +2 -2
  30. package/{chunk-5DPVRMSY.js → chunk-FMOZ57LN.js} +1 -1
  31. package/{chunk-EXSR7DXT.js → chunk-H6SXSCSN.js} +2 -2
  32. package/{chunk-R4BMKAR5.js → chunk-HAB2UDLT.js} +1 -1
  33. package/{chunk-CGKSIL4D.js → chunk-HKPXXG5H.js} +8 -2
  34. package/{chunk-KDBKEYUW.js → chunk-IHDV22R2.js} +11 -11
  35. package/{chunk-IOIPWEL4.js → chunk-INFUAU3F.js} +5 -5
  36. package/{chunk-YHNZZIAH.js → chunk-IUDTH3E4.js} +3 -3
  37. package/{chunk-UBLITLAZ.js → chunk-NABJEYPJ.js} +1 -0
  38. package/{chunk-ABMBNULR.js → chunk-NFNXYJPQ.js} +5 -4
  39. package/{chunk-I3HWJODB.js → chunk-O6OGJTHX.js} +4 -1
  40. package/{chunk-NMDAOZRN.js → chunk-RH5BIDW5.js} +11 -11
  41. package/{chunk-JLR5NWP2.js → chunk-RXX262QX.js} +17 -3
  42. package/{chunk-2NAE7IVE.js → chunk-T4WTBEFQ.js} +2 -2
  43. package/{chunk-4MYCKDSI.js → chunk-TEC5UHQK.js} +1 -1
  44. package/{chunk-TFSMPRAY.js → chunk-V3MGT3RF.js} +2 -2
  45. package/{chunk-EVF6F3QU.js → chunk-WY4ODIPK.js} +2 -2
  46. package/{chunk-RJ3EYB5G.js → chunk-X3RWBJDQ.js} +1 -1
  47. package/{chunk-PD2YRFAI.js → chunk-ZQ3EAOY3.js} +1 -1
  48. package/{commandRegistry-RM2Z2DVF.js → commandRegistry-GX6RHXMK.js} +44 -44
  49. package/{contentThunks-RP4BYNUC.js → contentThunks-STHMPQXH.js} +3 -3
  50. package/{cooldownCommands-4XKJFEBW.js → cooldownCommands-KRILPXOZ.js} +2 -2
  51. package/{createAgentAutomationAction-AYFAMQ5D.js → createAgentAutomationAction-UTXF4IC7.js} +3 -3
  52. package/{createDialogAction-NV5TEAIN.js → createDialogAction-NUZFL6UT.js} +4 -4
  53. package/{createPageAction-FJGDX55N.js → createPageAction-IYIPME6P.js} +3 -3
  54. package/{dialogCommands-4BGV6DPD.js → dialogCommands-RSWGWOP2.js} +8 -8
  55. package/{dialogSlice-ZUYNLTF6.js → dialogSlice-FHWW4E62.js} +2 -2
  56. package/{docCreateCommands-3CW75UF2.js → docCreateCommands-VHIUR4MF.js} +7 -7
  57. package/{docDeleteCommands-NL4ZYMN5.js → docDeleteCommands-AJD5OLUA.js} +8 -8
  58. package/{docReadCommands-HXCNVDPQ.js → docReadCommands-ZXEMJIKZ.js} +7 -7
  59. package/{docStore-EPAZ4HLD.js → docStore-KBA4FFRL.js} +1 -1
  60. package/{docUpdateCommands-RMVBAMDE.js → docUpdateCommands-LAPRIWRD.js} +7 -7
  61. package/{handleSendMessageAction-5UH3DA6V.js → handleSendMessageAction-NL5KZ4PA.js} +7 -7
  62. package/index.js +3 -3
  63. package/{localRuntimeAdapter-LVPGHOJK.js → localRuntimeAdapter-5ZBZ7JCY.js} +16 -16
  64. package/{machineCommands-O6RDJGLV.js → machineCommands-ANZ4FC7A.js} +17 -17
  65. package/{machineWsRunDispatch-GVDQO742.js → machineWsRunDispatch-KXFVBUN7.js} +17 -17
  66. package/package.json +1 -1
  67. package/{readlineWorkspace-I5XZFI2E.js → readlineWorkspace-CBJWLOBF.js} +22 -22
  68. package/{runAgentClientLoop-LV2HYQPH.js → runAgentClientLoop-56PIJSRN.js} +14 -14
  69. package/{spaceCommands-ZUI4CTSO.js → spaceCommands-ZCJPIJZI.js} +7 -7
  70. package/{streamAgentChatTurn-ZCHIQR35.js → streamAgentChatTurn-P5T47FVO.js} +16 -16
  71. package/{tools-2DZDJWHZ.js → tools-6MNLO55C.js} +10 -10
  72. package/{updateDialogTitleAction-QZWVKVVW.js → updateDialogTitleAction-WRQKK6MY.js} +3 -3
@@ -2,7 +2,7 @@ import {
2
2
  mergeAvailabilityDeadline,
3
3
  resolveCredentialCandidateKeys,
4
4
  resolveCredentialKeyWithFallback
5
- } from "./chunk-JLR5NWP2.js";
5
+ } from "./chunk-RXX262QX.js";
6
6
 
7
7
  // packages/agent-runtime/credentialAvailability.ts
8
8
  import { homedir } from "node:os";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-YARN6MCX.js";
3
+ } from "./chunk-CB3VYZXP.js";
4
4
  import {
5
5
  format,
6
6
  prepareAndPersistMessage,
7
7
  uiAskChoiceFunc,
8
8
  uiAskChoiceFunctionSchema
9
- } from "./chunk-63JHZKGZ.js";
9
+ } from "./chunk-F4LUA2DC.js";
10
10
  import {
11
11
  formatISO
12
12
  } from "./chunk-ZRAU6T47.js";
@@ -840,6 +840,11 @@ var createDialogAction = async (args, thunkApi) => {
840
840
  }
841
841
  }
842
842
  }
843
+ const runtimeBinding = args.runtimeBinding ? {
844
+ ...args.runtimeBinding,
845
+ runtimeAnchorDialogId: args.runtimeBinding.runtimeAnchorDialogId || dialogId,
846
+ agentKey: args.runtimeBinding.agentKey || agentKey || ""
847
+ } : void 0;
843
848
  const dialogData = {
844
849
  id: dialogId,
845
850
  dbKey: dialogPath,
@@ -854,6 +859,7 @@ var createDialogAction = async (args, thunkApi) => {
854
859
  ...spaceId && { spaceId },
855
860
  category,
856
861
  referenceKeys,
862
+ ...runtimeBinding ? { runtimeBinding } : {},
857
863
  ...args.extraReferences && args.extraReferences.length > 0 && { extraReferences: args.extraReferences },
858
864
  ...inheritedFromDialogKey && { inheritedFromDialogKey },
859
865
  ...inheritedFromDialogTitle && { inheritedFromDialogTitle },
@@ -15,11 +15,11 @@ import {
15
15
  readCredentialEntry,
16
16
  readEffectiveCredentialEntry,
17
17
  recordCredentialProbe
18
- } from "./chunk-R4BMKAR5.js";
18
+ } from "./chunk-HAB2UDLT.js";
19
19
  import {
20
20
  OAUTH_PROVIDER_REFS,
21
21
  buildLocalAgentLookupKeys
22
- } from "./chunk-RJ3EYB5G.js";
22
+ } from "./chunk-X3RWBJDQ.js";
23
23
  import {
24
24
  LOCAL_CODEX_AGENT_ID,
25
25
  LOCAL_CODEX_AGENT_KEY,
@@ -60,7 +60,7 @@ import {
60
60
  import {
61
61
  inlineImageUrlsForCustomProvider,
62
62
  prepareTools
63
- } from "./chunk-OUSUFO5W.js";
63
+ } from "./chunk-BLLD2WLC.js";
64
64
  import {
65
65
  getServerProviderSecret
66
66
  } from "./chunk-HS7MLR74.js";
@@ -82,7 +82,7 @@ import {
82
82
  resolveCliLocalRuntimeKeyCapability,
83
83
  resolveCliLocalSpawnDispatch,
84
84
  resolveStartAgentRunCwd
85
- } from "./chunk-UC5RISH3.js";
85
+ } from "./chunk-F4OL33IQ.js";
86
86
  import {
87
87
  fetchWithTransientRetry,
88
88
  isTransientFetchError
@@ -90,10 +90,10 @@ import {
90
90
  import {
91
91
  deriveCredentialGroup,
92
92
  deriveCustomProviderCredentialGroup
93
- } from "./chunk-53RSTB7T.js";
93
+ } from "./chunk-5TO2R77F.js";
94
94
  import {
95
95
  resolveAgentRequiredPackIds
96
- } from "./chunk-WVGVGT44.js";
96
+ } from "./chunk-BHUBGU7Y.js";
97
97
  import {
98
98
  applyBuiltinAgentRuntimeOverride,
99
99
  applyTokenUsageToDayStats,
@@ -102,14 +102,14 @@ import {
102
102
  resolveBuiltinPlatformAgentConfig,
103
103
  runKeyed,
104
104
  validateAskChoiceInput
105
- } from "./chunk-63JHZKGZ.js";
105
+ } from "./chunk-F4LUA2DC.js";
106
106
  import {
107
107
  BUILTIN_DIALOG_LLM_CHAT_FALLBACK_MODEL,
108
108
  BUILTIN_TITLE_LLM_CONFIG
109
109
  } from "./chunk-523DITKR.js";
110
110
  import {
111
111
  fetchServerSyncedCredential
112
- } from "./chunk-YHNZZIAH.js";
112
+ } from "./chunk-IUDTH3E4.js";
113
113
  import {
114
114
  getDefaultCliLocalRuntimeDb
115
115
  } from "./chunk-P64WRQYV.js";
@@ -169,7 +169,7 @@ import {
169
169
  runExecShellGates,
170
170
  validateConfiguredRootExecutionLease,
171
171
  verifyOwnerRouteAck
172
- } from "./chunk-ADTJJVDJ.js";
172
+ } from "./chunk-DUNY6XR5.js";
173
173
  import {
174
174
  accumulateGeminiChunks,
175
175
  buildGeminiGenerateContentRequest,
@@ -228,14 +228,14 @@ import {
228
228
  parseNoloWorkspaceToolArguments,
229
229
  resolveRequestToolSurface,
230
230
  resolveRuntimeToolSurfaceForAgent
231
- } from "./chunk-UBLITLAZ.js";
231
+ } from "./chunk-NABJEYPJ.js";
232
232
  import {
233
233
  isCapacitySaturatedRateLimit,
234
234
  mergeAvailabilityDeadline,
235
235
  resolveAvailabilityAction,
236
236
  resolveCooldownGate,
237
237
  resolveCredentialKeyWithFallback
238
- } from "./chunk-JLR5NWP2.js";
238
+ } from "./chunk-RXX262QX.js";
239
239
  import {
240
240
  buildDialogFallbackTitleFromUserInput,
241
241
  normalizeDialogTitle
@@ -7,7 +7,7 @@ import {
7
7
  mergeReferences,
8
8
  resolveReferenceAssets,
9
9
  resolveToolsFromKeys
10
- } from "./chunk-5DIFZFYF.js";
10
+ } from "./chunk-FB3WCWBB.js";
11
11
  import {
12
12
  UI_CARD_ENVELOPE_MAX_BYTES,
13
13
  getAllToolRuns,
@@ -20,10 +20,10 @@ import {
20
20
  selectSpaceContextLevel,
21
21
  selectUserTonePreset,
22
22
  uiCardFallback
23
- } from "./chunk-WVGVGT44.js";
23
+ } from "./chunk-BHUBGU7Y.js";
24
24
  import {
25
25
  getDocState
26
- } from "./chunk-EVF6F3QU.js";
26
+ } from "./chunk-WY4ODIPK.js";
27
27
  import {
28
28
  resolveToolBaseUrl
29
29
  } from "./chunk-MYOH447Z.js";
@@ -35,7 +35,7 @@ import {
35
35
  } from "./chunk-ZBCBFOWC.js";
36
36
  import {
37
37
  getTableState
38
- } from "./chunk-YARN6MCX.js";
38
+ } from "./chunk-CB3VYZXP.js";
39
39
  import {
40
40
  getCurrentSpaceIdRaw,
41
41
  getViewMode
@@ -44,7 +44,7 @@ import {
44
44
  PERSONALIZATION_DIALOG_CATEGORY,
45
45
  buildPersonalizationDialogPolicyContext,
46
46
  selectAllMsgs
47
- } from "./chunk-63JHZKGZ.js";
47
+ } from "./chunk-F4LUA2DC.js";
48
48
  import {
49
49
  selectPendingFiles
50
50
  } from "./chunk-OWYYDMGJ.js";
@@ -347,7 +347,7 @@ var slice = createSliceWithThunks({
347
347
  const overrides = {};
348
348
  if (args.systemPromptOverride !== void 0) overrides.prompt = args.systemPromptOverride;
349
349
  if (args.toolsOverride !== void 0) overrides.tools = args.toolsOverride;
350
- const { _executeModel } = await import("./_executeModel-WQ7BV3G7.js");
350
+ const { _executeModel } = await import("./_executeModel-ZOXM7Y34.js");
351
351
  return _executeModel(
352
352
  {
353
353
  isStreaming: args.isStreaming ?? false,
@@ -368,7 +368,7 @@ var slice = createSliceWithThunks({
368
368
  * - 循环直到无工具调用或触发其他运行时停止条件
369
369
  */
370
370
  runAgent: create.asyncThunk(async (args, thunkApi) => {
371
- const { runAgentClientLoop } = await import("./runAgentClientLoop-LV2HYQPH.js");
371
+ const { runAgentClientLoop } = await import("./runAgentClientLoop-56PIJSRN.js");
372
372
  const { content: loopContent, toolCallCount } = await runAgentClientLoop(
373
373
  {
374
374
  agentKey: args.agentKey,
@@ -384,7 +384,7 @@ var slice = createSliceWithThunks({
384
384
  * 聊天轮次流式 Agent 调用
385
385
  */
386
386
  streamAgentChatTurn: create.asyncThunk(async (args, thunkApi) => {
387
- const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-ZCHIQR35.js");
387
+ const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-P5T47FVO.js");
388
388
  return streamAgentChatTurnHandler(args, thunkApi);
389
389
  }),
390
390
  /**
@@ -1491,6 +1491,7 @@ var AGENT_SELECTION_PRIORITY_INSTRUCTIONS = ` - \u4F18\u5148\u7EA7\u5951\u7EA6
1491
1491
  - \u5339\u914D\u53C2\u8003\uFF1A\u6309\u4EFB\u52A1\u6240\u9700\u80FD\u529B\u7B5B tools \u5B57\u6BB5\uFF1B\u540C\u6863\u5019\u9009\u4F18\u5148\u6210\u672C\u4F4E\uFF08\u4F4E inputPrice\uFF09\u6216\u8D70\u7528\u6237\u79C1\u6709\u51ED\u636E\u7684\u901A\u9053\u3002tools \u5B57\u6BB5\u53EA\u53CD\u6620\u989D\u5916\u80FD\u529B\uFF0C\u4E0D\u53CD\u6620 coding \u80FD\u529B\u2014\u2014\u4EE3\u7801\u5DE5\u5177\u7531 host \u81EA\u52A8\u6CE8\u5165\uFF0Ctools=[] \u4E0D\u4EE3\u8868\u4E0D\u80FD\u5199\u4EE3\u7801\uFF0C\u4E0D\u8981\u636E\u6B64\u6392\u9664\u5019\u9009\u3002
1492
1492
  - reset-aware economics\uFF08\u53EA\u4F5C\u540C\u6863\u3001\u9002\u5408\u3001\u5F53\u524D\u53EF\u7528\u5019\u9009\u4E4B\u95F4\u7684\u7ECF\u6D4E\u504F\u597D\uFF0C\u4E0D\u8986\u76D6\u6536\u85CF\u786C\u95E8\u3001\u80FD\u529B\u5339\u914D\u6216\u53EF\u7528\u6027\uFF09\uFF1AlistAgents \u5DF2\u66B4\u9732 economics\uFF08\u5B98\u65B9\u5CF0\u8C37\u4EF7\u683C/\u914D\u989D\u500D\u7387\uFF09\u548C quota\uFF08\u4E0A\u6E38\u771F\u5B9E remaining/limit/utilization/resetAt \u7A97\u53E3\uFF09\u3002\u5BF9\u4E8E billingSource="user_subscription"\uFF0C\u82E5 quota \u7A97\u53E3\u540C\u65F6\u7ED9\u51FA\u672A\u7528\u989D\u5EA6\u4FE1\u53F7\uFF08remaining/limit \u6216 utilization\uFF09\u4E14 resetAt \u5728\u672A\u6765\uFF0C\u4E14\u8BE5\u7A97\u53E3\u4EE3\u8868\u8BA2\u9605\u989D\u5EA6\u672C\u8EAB\uFF08\u5982 Claude \u8BA2\u9605\u7684 5h/7d \u914D\u989D\u7A97\u53E3\u8FD9\u7C7B\u4E0D\u7528\u5C31\u4F5C\u5E9F\u7684\u5DF2\u4ED8\u989D\u5EA6\uFF09\uFF0C\u800C\u4E0D\u662F\u7EAF\u541E\u5410\u5BB9\u91CF\uFF0C\u5219\u8FD9\u90E8\u5206\u5DF2\u4ED8\u989D\u5EA6\u4F1A\u5728 reset \u540E\u5931\u6548\uFF1B\u5728\u8D28\u91CF/\u80FD\u529B\u90FD\u8DB3\u591F\u65F6\uFF0Creset \u8D8A\u8FD1\u4E14\u672A\u7528\u989D\u5EA6\u8D8A\u591A\uFF0C\u8D8A\u5E94\u4F18\u5148\u6D88\u8017\uFF0C\u907F\u514D\u628A\u5DF2\u4ED8\u6B3E\u989D\u5EA6\u767D\u767D\u8FC7\u671F\u540E\u518D\u53BB\u4EA7\u751F PAYG / platform \u6210\u672C\u3002\u4E0D\u8981\u56E0\u4E3A\u53EA\u6709 resetAt \u5C31\u63A8\u65AD\u201C\u8FD8\u6709\u53EF\u7528\u989D\u5EA6\u201D\uFF0C\u4E5F\u4E0D\u8981\u628A billingSource="user_api" \u7684 requests/tokens rate-limit reset\u3001nextAvailableAt\uFF08429 \u51B7\u5374\u6062\u590D\uFF09\u8BEF\u5F53\u6210\u201C\u5DF2\u4ED8\u989D\u5EA6\u8FC7\u671F\u201D\uFF1B\u5B83\u4EEC\u662F\u5BB9\u91CF/\u53EF\u7528\u6027\u4FE1\u53F7\uFF0C\u4E0D\u662F\u7ECF\u6D4E\u4F18\u60E0\u3002\u901A\u7528 requests/tokens rate-limit \u5BB9\u91CF\u7A97\u53E3\u5373\u4F7F\u51FA\u73B0\u5728 billingSource="user_subscription" \u901A\u9053\u4E0A\uFF0C\u4E5F\u53EA\u662F\u901F\u7387\u5BB9\u91CF\u800C\u975E\u4F1A\u8FC7\u671F\u7684\u5DF2\u4ED8\u8D44\u4EA7\uFF0C\u4E0D\u5F97\u89E6\u53D1\u8BE5\u504F\u597D\uFF1B\u5206\u4E0D\u6E05\u7A97\u53E3\u8BED\u4E49\u65F6\u6309\u5BB9\u91CF\u5904\u7406\uFF0C\u4E0D\u6309\u7ECF\u6D4E\u8D44\u4EA7\u5904\u7406\u3002owner_subscription \u4E0D\u5360\u5F53\u524D\u7528\u6237\u989D\u5EA6\uFF0C\u4ECD\u6309\u201C\u8C03\u7528\u8005\u4E0E\u5E73\u53F0\u96F6\u65B0\u589E\u6210\u672C\u201D\u7406\u89E3\uFF0C\u4F46\u4E0D\u8981\u628A owner \u7684 quota \u5F53\u6210\u5F53\u524D\u7528\u6237\u9700\u8981\u4E3B\u52A8\u70E7\u5B8C\u7684\u8D44\u4EA7\u3002\u82E5 economics \u663E\u793A\u5373\u5C06\u8DE8 peak/off_peak \u6216 quotaMultiplier/priceMultiplier \u5C06\u53D8\u5316\uFF0C\u628A changesAt \u4E0E\u4EFB\u52A1\u9884\u8BA1\u65F6\u957F\u4E00\u8D77\u8003\u8651\uFF1B\u8BC1\u636E\u4E0D\u8DB3\u65F6\u4FDD\u6301 neutral\uFF0C\u4E0D\u731C\u3002
1493
1493
  - isOwned=true\u3001isOAuth=true \u6216 apiSource="custom" \u7684\u5019\u9009\u6309\u4F18\u5148\u7EA7\u5951\u7EA6\u5904\u7406\u3002
1494
+ - \u514D\u8BE2\u95EE\u8FB9\u754C\uFF08\u6307\u9488\uFF09\uFF1A\u6392\u5E8F\u5B8C\u6210\u540E\u76F4\u63A5\u6D3E\u53D1\uFF0C\u4E0D\u56E0\u300C\u9009\u8C01/\u80FD\u4E0D\u80FD\u7528\u300D\u5F81\u8BE2\u7528\u6237\uFF1B\u5931\u8D25\u65F6\u53EA\u5728\u514D\u8D39\u5019\u9009\uFF08user_subscription / owner_subscription / user_api / local\uFF09\u4E4B\u95F4**\u9759\u9ED8**\u6362\u4EE3\uFF08\u4E0D\u5F97\u56E0\u6B64\u9759\u9ED8\u6539\u6D3E platform_credits\uFF09\u3002\u8BE2\u95EE\u8FB9\u754C\u89C1\u300C\u4FDD\u62A4\u7528\u6237\u6CE8\u610F\u529B\u300D\u4E00\u6761\u3002\u672C\u6761\u4E0D\u653E\u5BBD\u4EFB\u4F55\u95F8\u95E8\uFF1A\u5E73\u53F0\u79EF\u5206\u6263\u8D39\u786E\u8BA4\u3001429 \u6539\u6D3E\u544A\u77E5\u3001\u65E0\u6CD5\u786E\u8BA4\u8BA1\u8D39\u5F52\u5C5E\u65F6\u6309\u53EF\u80FD\u6263\u8D39\u5148\u95EE\uFF0C\u5168\u90E8\u7167\u65E7\u3002
1494
1495
  - qualityContext \u662F task-domain-specific evidence\uFF0C\u5206\u4E24\u79CD\u7528\u9014\uFF1A\u2460 \u80DC\u4EFB\u6027\u7B5B\u9009\u2014\u2014\u5339\u914D\u9886\u57DF\u5185\u6709\u660E\u786E\u4E0D\u9002\u914D\u8BC1\u636E\u7684\u5019\u9009\u53EF\u76F4\u63A5\u6392\u9664\uFF08\u300C\u9009\u4EBA\u300D\u7B2C 1 \u6B65\uFF09\uFF0C\u5148\u4E8E\u4F18\u5148\u7EA7\u5206\u7EC4\u4E0E\u6210\u672C\u89C4\u5219\uFF1B\u2461 \u80DC\u4EFB\u5019\u9009\u4E4B\u95F4\u7684\u6BD4\u8F83\u2014\u2014\u8FD9\u65F6\u624D\u6392\u5728\u73B0\u6709\u4F18\u5148\u7EA7 / \u6210\u672C / \u53EF\u7528\u6027\u89C4\u5219\u4E4B\u540E\u53C2\u8003\u3002
1495
1496
  \u6BCF\u884C\u5F62\u5982 \`dimension [direction] (benchmark version): model=score\`\u3002\u6BCF\u4E2A dimension\uFF08preference / rubric / slop / repetition / length / task_success \u7B49\uFF09\u90FD\u662F\u4E00\u6761\u72EC\u7ACB evidence\uFF0C\u4E0D\u662F\u603B\u5206\u7684\u4E00\u90E8\u5206\u3002
1496
1497
  direction \u53EA\u662F\u6307\u6807\u65B9\u5411\uFF1Ahigher_better \u8D8A\u9AD8\u8D8A\u597D\uFF0Clower_better \u8D8A\u4F4E\u8D8A\u597D\uFF0Cneutral \u53EA\u63CF\u8FF0\u884C\u4E3A\u7279\u5F81\uFF08\u5982\u8F93\u51FA\u957F\u5EA6\uFF09\uFF0C\u4E0D\u4EE3\u8868\u4F18\u52A3\u3002
@@ -13,13 +13,13 @@ import {
13
13
  resolveAgentRecordFromHybridStore,
14
14
  sanitizeAgentRecordForCliOutput,
15
15
  writeAgentRecord
16
- } from "./chunk-GYVLAHA4.js";
16
+ } from "./chunk-6WZQGT5X.js";
17
17
  import {
18
18
  clearCliLocalRuntimePreparedAgentCache
19
- } from "./chunk-KDBKEYUW.js";
19
+ } from "./chunk-IHDV22R2.js";
20
20
  import {
21
21
  readCredentialAvailability
22
- } from "./chunk-R4BMKAR5.js";
22
+ } from "./chunk-HAB2UDLT.js";
23
23
  import {
24
24
  resolveCliAgentKeyInput
25
25
  } from "./chunk-NBTY7YJF.js";
@@ -244,11 +244,12 @@ async function runAgentCreateCommand(args, deps = {}) {
244
244
  let verifyResult;
245
245
  if (parsed.verify) {
246
246
  try {
247
- const { verifyCustomProvider } = await import("./agentProviderCommands-XSZUCNIR.js");
247
+ const { verifyCustomProvider } = await import("./agentProviderCommands-T6E3JCR6.js");
248
248
  const rec = built.nextRecord;
249
249
  verifyResult = await verifyCustomProvider({
250
250
  providerUrl: rec.customProviderUrl,
251
251
  apiKey: rec.apiKey,
252
+ apiKeyHeader: rec.apiKeyHeader,
252
253
  model: rec.model,
253
254
  prompt: parsed.verifyPrompt,
254
255
  fetchImpl
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  AGENT_SELECTION_PRIORITY_INSTRUCTIONS
3
- } from "./chunk-UBLITLAZ.js";
3
+ } from "./chunk-NABJEYPJ.js";
4
4
  import {
5
5
  canonicalizeToolNames
6
6
  } from "./chunk-AKE53VMW.js";
@@ -695,10 +695,13 @@ var RESPONSE_BEHAVIOR_GUIDELINES = `--- \u56DE\u590D\u884C\u4E3A\u51C6\u5219\uFF
695
695
  \u4EE5\u4E0B\u662F\u6240\u6709\u56DE\u590D\u5171\u4EAB\u7684\u884C\u4E3A\u57FA\u7EBF\uFF0C\u4E0E\u5F53\u524D\u89C6\u53E3\u3001\u6392\u7248\u65E0\u5173\uFF1A
696
696
  - **\u4FE1\u606F\u4F18\u5148\u7EA7**\uFF1A\u5148\u7ED9\u5F53\u524D\u6700\u6709\u7528\u7684\u4FE1\u606F\u2014\u2014\u7ED3\u8BBA\u3001\u7ED3\u679C\u3001\u72B6\u6001\u6216\u4E0B\u4E00\u6B65\u52A8\u4F5C\uFF08\u4E0B\u4E00\u6B65\u52A8\u4F5C\u53EA\u5728\u95EE\u9898\u672C\u8EAB\u6D89\u53CA\u884C\u52A8\u65F6\u624D\u7ED9\uFF0C\u89C1\u300C\u884C\u52A8\u4E0E\u63D0\u9192\u300D\uFF09\uFF0C\u6309\u4EFB\u52A1\u7C7B\u578B\u9009\u5176\u4E00\uFF1B\u4E0D\u7528\u5BD2\u6684\u3001\u94FA\u57AB\u6216\u300C\u8BA9\u6211\u5206\u6790\u4E00\u4E0B\u300D\u5F00\u573A\u3002
697
697
  - **\u4E3B\u52A8\u9884\u5224**\uFF1A\u5728\u4E0A\u4E0B\u6587\u91CC\u80FD\u9884\u5224\u5230\u7684\u4E0B\u4E00\u6B65\u3001\u98CE\u9669\u6216\u7701\u4E8B\u505A\u6CD5\uFF0C\u4E3B\u52A8\u7528\u4E00\u53E5\u8BDD\u8BF4\u51FA\uFF08\u5305\u62EC\u65F6\u95F4\u3001\u8FDB\u5EA6\u3001\u72B6\u6001\u63D0\u9192\uFF09\uFF1B\u9884\u5224\u662F\u63D0\u8BAE\u800C\u975E\u51B3\u5B9A\uFF0C\u4E0D\u5FC5\u7B49\u7528\u6237\u95EE\u3002\u4E0A\u6587\u300C\u4E0D\u7528\u5BD2\u6684\u300D\u53CD\u7684\u662F\u7A7A\u8BDD\uFF0C\u4E0D\u662F\u8FD9\u7C7B\u6709\u4FE1\u606F\u91CF\u7684\u4E3B\u52A8\u63D0\u9192\u3002\u4EC5\u5728\u63D0\u9192\u4E0E\u5F53\u524D\u95EE\u9898\u76F4\u63A5\u76F8\u5173\u3001\u4E14\u80FD\u6539\u53D8\u7528\u6237\u773C\u4E0B\u7684\u5224\u65AD\u6216\u64CD\u4F5C\u65F6\u8865\u5145\uFF1B\u6CA1\u6709\u5177\u4F53\u4F9D\u636E\u7684\u901A\u7528\u5EFA\u8BAE\u4E0D\u9644\u9001\u3002
698
+ - **\u4EE3\u7B14\u81EA\u5A92\u4F53 / \u5BF9\u5916\u6587\u6848**\uFF1A\u4EC5\u5728\u66FF\u7528\u6237\u64B0\u5199\u6216\u6539\u5199\u81EA\u5A92\u4F53\u5185\u5BB9\u3001\u4EA7\u54C1\u4ECB\u7ECD\u3001\u516C\u544A\u7B49\u5BF9\u5916\u6587\u6848\u65F6\uFF0C\u91C7\u7528\u72EC\u7ACB\u5F00\u53D1\u8005\u7684\u771F\u5B9E\u53E3\u543B\uFF1A\u77ED\u53E5\u3001\u5C31\u4E8B\u8BBA\u4E8B\u3001\u6709\u8BDD\u76F4\u8BF4\u3002\u8BB2\u6E05\u505A\u4E86\u4EC0\u4E48\u3001\u4E3A\u4EC0\u4E48\u3001\u6709\u4EC0\u4E48\u9650\u5236\uFF1B\u4E0D\u7F16\u9020\u7ECF\u5386\u3001\u60C5\u7EEA\u6216\u6210\u7EE9\u3002\u7981\u6B62\u5927\u5382\u516C\u5173\u8154\u3001\u865A\u7A7A\u5B8F\u5927\u53D9\u4E8B\u548C\u4F2A\u54F2\u5B66\u7A7A\u6CDB\u6292\u60C5\uFF0C\u4E0D\u65E0\u7AEF\u626F Her\u3001\u7231\u3001\u7075\u9B42\u7B49\u610F\u8C61\uFF0C\u4E0D\u7528\u5047\u5927\u7A7A\u7684\u53E3\u53F7\u62D4\u9AD8\u666E\u901A\u4E8B\u5B9E\u3002\u8FD9\u662F\u4EE3\u7B14\u6587\u98CE\u7EA6\u675F\uFF0C\u4E0D\u662F\u8BDD\u9898\u7981\u4EE4\uFF1B\u6B63\u5E38\u6587\u5B66\u3001\u5F71\u89C6\u3001\u54F2\u5B66\u8BA8\u8BBA\uFF0C\u4EE5\u53CA\u7528\u6237\u660E\u786E\u8981\u6C42\u7684\u6587\u5B66\u521B\u4F5C\u6216\u98CE\u683C\u4EFF\u5199\uFF0C\u4E0D\u53D7\u6B64\u9879\u6587\u98CE\u9650\u5236\u3002
698
699
  - **\u4F4E\u8D1F\u8377\u8868\u8FBE**\uFF1A\u4E00\u53E5\u4E00\u4E8B\uFF0C\u4E3B\u8BED\u660E\u786E\u3001\u7528\u5177\u4F53\u52A8\u8BCD\uFF0C\u540C\u4E00\u6982\u5FF5\u59CB\u7EC8\u7528\u540C\u4E00\u672F\u8BED\uFF1B\u5220\u53BB\u5957\u8BDD\u4E0E\u5D4C\u5957\u4ECE\u53E5\uFF0C\u4F46\u4E0D\u5220\u524D\u63D0\u3001\u98CE\u9669\u4E0E\u4E0D\u786E\u5B9A\u6027\u2014\u2014\u8BA9\u7528\u6237\u80FD\u5FEB\u901F\u6838\u67E5\u548C\u51B3\u7B56\uFF0C\u800C\u4E0D\u662F\u4FE1\u606F\u53D8\u5C11\u3002\u9700\u8981\u5C55\u5F00\u65F6\u6309\u4E3B\u9898\u5206\u6210\u77ED\u6BB5\u843D\uFF0C\u6BB5\u843D\u4E4B\u95F4\u7559\u7A7A\u884C\uFF1B\u8FDE\u7EED\u64CD\u4F5C\u7528\u6709\u5E8F\u5217\u8868\uFF1B\u6B64\u8981\u6C42\u4E0D\u4F9D\u8D56\u89C6\u53E3\u3002
700
+
699
701
  - **\u4EFB\u52A1\u8FDE\u7EED\u6027**\uFF1A\u591A\u6B65\u9AA4\u4EFB\u52A1\u4FDD\u6301\u5F53\u524D\u72B6\u6001\u4E0E\u4E0B\u4E00\u6B65\u53EF\u89C1\uFF1B\u4EC5\u5728\u72B6\u6001\u53D8\u5316\u3001\u4ECE\u4E2D\u65AD/\u540E\u53F0\u4EFB\u52A1\u6062\u590D\u6216\u4E0A\u4E0B\u6587\u53EF\u80FD\u4E22\u5931\u65F6\u91CD\u8FF0\u8FDB\u5EA6\uFF0C\u4E0D\u673A\u68B0\u91CD\u590D\u3002
700
702
  - **\u4E13\u6CE8\u4E3B\u7EBF\uFF08\u6C9F\u901A\u7126\u70B9\uFF0C\u975E\u8C03\u5EA6\uFF09**\uFF1A\u53D1\u73B0\u6B21\u8981\u95EE\u9898\u4E0D\u5207\u6362\u4E3B\u7EBF\uFF0C\u9664\u975E\u5B83\u963B\u585E\u6B63\u786E\u6027\u3001\u5B89\u5168\u6027\u6216\u5F53\u524D\u4EFB\u52A1\u672C\u8EAB\uFF1B\u503C\u5F97\u5904\u7406\u7684\u6B21\u8981\u9879\uFF0C\u5728\u4E3B\u7EBF\u5B8C\u6210\u540E\u7B80\u77ED\u6307\u51FA\u3002\u672C\u6761\u53EA\u7EA6\u675F**\u56DE\u590D\u7684\u53D9\u8FF0\u7126\u70B9**\uFF08\u5148\u8BB2\u4E3B\u7EBF\u3001\u65C1\u652F\u9760\u540E\uFF09\uFF0C\u4E0D\u662F\u6267\u884C\u8C03\u5EA6\uFF1A\u5B83\u4E0D\u8981\u6C42\u628A\u53EF\u72EC\u7ACB\u5E76\u884C\u7684\u65E0\u4F9D\u8D56\u5DE5\u4F5C\u4E32\u884C\u5316\uFF0C\u4E5F\u4E0D\u7981\u6B62\u5728\u4E3B\u7EBF\u672A\u5B8C\u6210\u65F6\u5E76\u53D1\u63A8\u8FDB\u5176\u5B83\u4EFB\u52A1\uFF08\u5982\u53E6\u4E00 worktree \u7684\u72EC\u7ACB\u6539\u52A8\uFF09\uFF1B\u51E1\u662F\u6587\u4EF6/\u6570\u636E/\u63A5\u53E3\u65E0\u4EA4\u96C6\u7684\u72EC\u7ACB\u6388\u6743\u5DE5\u4F5C\uFF0C\u9ED8\u8BA4\u5E76\u884C\uFF0C\u53EA\u5728\u6C47\u62A5\u65F6\u6309\u4E3B\u7EBF\u4F18\u5148\u7EC4\u7EC7\u3002
701
703
  - **\u9519\u8BEF\u4E8B\u5B9E\u5316**\uFF1A\u51FA\u9519\u65F6\u76F4\u63A5\u8BF4\u660E\u53D1\u751F\u4E86\u4EC0\u4E48\u3001\u5DF2\u77E5\u539F\u56E0\u6216\u4ECD\u4E0D\u786E\u5B9A\u4E4B\u5904\u3001\u5F53\u524D\u5F71\u54CD\u4E0E\u4E0B\u4E00\u6B65\uFF08\u540C\u300C\u884C\u52A8\u4E0E\u63D0\u9192\u300D\uFF1A\u4EC5\u5F53\u95EE\u9898\u6D89\u53CA\u884C\u52A8\u65F6\u624D\u7ED9\uFF09\uFF1B\u4E0D\u7528\u65E0\u4FE1\u606F\u91CF\u7684\u60C5\u7EEA\u5316\u63AA\u8F9E\uFF0C\u4E5F\u4E0D\u628A\u4E0D\u786E\u5B9A\u6027\u5305\u88C5\u6210\u7ED3\u8BBA\u3002
704
+ - **\u5DE5\u7A0B\u8BC1\u636E\u4E0E\u8303\u56F4**\uFF1A\u5B8C\u6210\u58F0\u660E\u9650\u5B9A\u5177\u4F53\u8303\u56F4\uFF0C\u505A\u4E86\u4EC0\u4E48\u5C31\u53EA\u8BF4\u5B8C\u6210\u4E86\u4EC0\u4E48\uFF1B\u4EE3\u7801\u4FEE\u6539\u3001\u68C0\u67E5\u901A\u8FC7\u3001\u8FD0\u884C\u751F\u6548\u4E0E\u7528\u6237\u9A8C\u6536\u5206\u5C5E\u4E0D\u540C\u9636\u6BB5\uFF0C\u4E0D\u53EF\u4E92\u4EE3\uFF1B\u58F0\u79F0\u5B9E\u9645\u6548\u679C\u9700\u7ED9\u51FA\u5BF9\u5E94\u8303\u56F4\u7684\u5B9E\u6D4B\u8BC1\u636E\uFF0C\u9605\u8BFB\u8D44\u6599\u6216\u4EE3\u7801\u4E0D\u4EE3\u8868\u8FD0\u884C\u9A8C\u8BC1\uFF1B\u672A\u6267\u884C\u68C0\u67E5\u3001\u6267\u884C\u5931\u8D25\u4E0E\u8BC1\u636E\u4E0D\u8DB3\u660E\u786E\u533A\u5206\uFF0C\u5DF2\u77E5\u5931\u8D25\u4E0D\u5F97\u8BF4\u6210\u672A\u9A8C\u8BC1\uFF1B\u76F8\u540C\u68C0\u67E5\u8BC1\u636E\u96C6\u4E2D\u5448\u73B0\u4E00\u6B21\uFF0C\u907F\u514D\u91CD\u590D\u5806\u53E0\u3002
702
705
  - **\u7406\u89E3\u5931\u8D25\u6062\u590D**\uFF1A\u7528\u6237\u8868\u793A\u6CA1\u61C2\u3001\u6CA1\u8DDF\u4E0A\u6216\u8981\u6C42\u6362\u79CD\u8BF4\u6CD5\u65F6\uFF0C\u56DE\u9000\u5230\u6700\u53EF\u80FD\u7F3A\u5931\u7684\u524D\u63D0\u91CD\u65B0\u89E3\u91CA\uFF0C\u800C\u4E0D\u662F\u53EA\u7F29\u77ED\u6216\u91CD\u590D\u4E0A\u4E00\u6761\uFF1B\u4F18\u5148\u590D\u7528\u5BF9\u8BDD\u4E0E\u9879\u76EE\u8D44\u6599\u4E2D\u5DF2\u5EFA\u7ACB\u7684\u672F\u8BED\uFF0C\u672F\u8BED\u672C\u8EAB\u53EF\u80FD\u9020\u6210\u56F0\u60D1\u65F6\u5148\u7B80\u77ED\u5B9A\u4E49\u3002
703
706
  - **\u672F\u8BED\u5C31\u5730\u89E3\u91CA**\uFF1A\u53EA\u89E3\u91CA\u7528\u6237\u53EF\u80FD\u4E0D\u719F\u3001\u4E14\u65E0\u6CD5\u4ECE\u4E0A\u4E0B\u6587\u63A8\u65AD\u7684\u4E13\u4E1A\u672F\u8BED\u6216\u5E73\u53F0\u6982\u5FF5\uFF0C\u9996\u6B21\u51FA\u73B0\u65F6\u5C31\u5730\u8865\u4E00\u53E5\u65E5\u5E38\u8BDD\u8BF4\u660E\u5B83\u662F\u4EC0\u4E48\u3001\u5F71\u54CD\u4EC0\u4E48\uFF1B\u7528\u6237\u672C\u8F6E\u5DF2\u8868\u73B0\u51FA\u7406\u89E3\u7684\u8BCD\u4E0D\u91CD\u590D\u89E3\u91CA\uFF0C\u9879\u76EE\u8D44\u6599\u5DF2\u6709\u5B9A\u4E49\u65F6\u4F18\u5148\u6CBF\u7528\u8BE5\u5B9A\u4E49\u3001\u4F46\u4E0D\u80FD\u4EC5\u56E0\u8D44\u6599\u5B9A\u4E49\u8FC7\u5C31\u5047\u5B9A\u7528\u6237\u5DF2\u7406\u89E3\u3002\u901A\u5E38\u4F18\u5148\u89E3\u91CA\u4E00\u4E24\u4E2A\u6700\u5F71\u54CD\u5F53\u524D\u5224\u65AD\u7684\u672F\u8BED\uFF0C\u5B8C\u6210\u5F53\u524D\u95EE\u9898\u6240\u5FC5\u9700\u7684\u6982\u5FF5\u4E0D\u53D7\u6570\u91CF\u9650\u5236\uFF1B\u4F46\u7528\u6237\u8868\u793A\u6CA1\u61C2\u3001\u6CA1\u8DDF\u4E0A\u3001\u8981\u6C42\u6362\u79CD\u8BF4\u6CD5\u65F6\u91CD\u8BB2\u8BE5\u672F\u8BED\u4E0D\u53D7\u672C\u6761\u9650\u5236\uFF08\u89C1\u300C\u7406\u89E3\u5931\u8D25\u6062\u590D\u300D\u7684\u5168\u90E8\u89E6\u53D1\u6761\u4EF6\uFF09\uFF1B\u975E\u5F53\u524D\u95EE\u9898\u5FC5\u9700\u7684\u672F\u8BED\u4E0D\u5C55\u5F00\uFF0C\u5FC5\u8981\u65F6\u518D\u8865\uFF0C\u4F46\u4E0D\u5F97\u4E3A\u63A7\u5236\u89E3\u91CA\u6570\u91CF\u800C\u7701\u7565\u7406\u89E3\u7ED3\u8BBA\u3001\u6838\u67E5\u53E3\u5F84\u6216\u6267\u884C\u6B65\u9AA4\u6240\u5FC5\u9700\u7684\u8BF4\u660E\u3002
704
707
  - **\u4E8B\u5B9E\u4E0D\u7FFB\u8BD1**\uFF1A\u62A5\u9519\u539F\u6587\u3001\u6807\u8BC6\u7B26\u3001\u6587\u4EF6\u8DEF\u5F84\u3001\u547D\u4EE4\u4E0E\u53C2\u6570\u3001\u5B57\u6BB5\u540D\u3001\u6570\u503C\u4FDD\u6301\u539F\u6837\uFF1A\u5355\u884C\u7684\u7528\u884C\u5185\u53CD\u5F15\u53F7\uFF0C\u591A\u884C\u62A5\u9519\u6216\u547D\u4EE4\u8F93\u51FA\u7528\u56F4\u680F\u4EE3\u7801\u5757\u5E76\u6807\u660E\u8BED\u8A00\uFF1B\u98CE\u9669\u4E0E\u4E0D\u786E\u5B9A\u6027\u4FDD\u6301\u4E0E\u8BC1\u636E\u76F8\u7B26\u7684\u5224\u65AD\u5F3A\u5EA6\uFF08\u5B9E\u6D4B\u3001\u63A8\u6D4B\u3001\u672A\u77E5\u5206\u5F00\u8BF4\uFF09\uFF0C\u4E0D\u6DE1\u5316\u3001\u4E0D\u7701\u7565\u2014\u2014\u767D\u8BDD\u53EA\u7528\u6765\u89E3\u91CA\uFF0C\u4E0D\u7528\u6765\u66FF\u4EE3\u53EF\u6267\u884C\u4E8B\u5B9E\uFF0C\u4E5F\u4E0D\u7528\u6765\u7A00\u91CA\u98CE\u9669\u3002
@@ -9,7 +9,7 @@ import {
9
9
  resolveRawAgentInput,
10
10
  resolveServerUrl,
11
11
  writeUsage
12
- } from "./chunk-2NAE7IVE.js";
12
+ } from "./chunk-T4WTBEFQ.js";
13
13
  import {
14
14
  parsePositiveFiniteNumberOrFallback
15
15
  } from "./chunk-Y5GCAMGP.js";
@@ -19,7 +19,7 @@ import {
19
19
  import {
20
20
  readDbRecord,
21
21
  resolveAgentRecordFromHybridStore
22
- } from "./chunk-GYVLAHA4.js";
22
+ } from "./chunk-6WZQGT5X.js";
23
23
  import {
24
24
  INSTABOX_RUN_CONFIG_ENV,
25
25
  createCliLocalRuntimeAdapter,
@@ -38,12 +38,12 @@ import {
38
38
  resolveFileWriteGateEnabled,
39
39
  resolveLocalUserId,
40
40
  validateInstaboxWorkspaceSelection
41
- } from "./chunk-KDBKEYUW.js";
41
+ } from "./chunk-IHDV22R2.js";
42
42
  import {
43
43
  clearCredentialAvailability,
44
44
  readEffectiveCredentialEntry,
45
45
  recordCredentialProbe
46
- } from "./chunk-R4BMKAR5.js";
46
+ } from "./chunk-HAB2UDLT.js";
47
47
  import {
48
48
  isLocalCliAgentKey
49
49
  } from "./chunk-NBTY7YJF.js";
@@ -72,14 +72,14 @@ import {
72
72
  } from "./chunk-BMQ2MJUK.js";
73
73
  import {
74
74
  resolveCliLocalRuntimeKeyCapability
75
- } from "./chunk-UC5RISH3.js";
75
+ } from "./chunk-F4OL33IQ.js";
76
76
  import {
77
77
  isTransientFetchError
78
78
  } from "./chunk-KFHREHUQ.js";
79
79
  import {
80
80
  parseUiCard,
81
81
  uiCardFallback
82
- } from "./chunk-WVGVGT44.js";
82
+ } from "./chunk-BHUBGU7Y.js";
83
83
  import {
84
84
  isGatewayHttpStatus
85
85
  } from "./chunk-NF64D32W.js";
@@ -88,7 +88,7 @@ import {
88
88
  chooseMemoryOwners,
89
89
  loadMemoryCandidatesFromDb,
90
90
  resolveAgentMemoryPolicy
91
- } from "./chunk-CGKSIL4D.js";
91
+ } from "./chunk-HKPXXG5H.js";
92
92
  import {
93
93
  API_REPORTED_COST_MULTIPLIER,
94
94
  estimateMessagesTokens,
@@ -96,7 +96,7 @@ import {
96
96
  resolveAgentContextWindow,
97
97
  resolveOccupancy,
98
98
  resolveOccupancyWindow
99
- } from "./chunk-63JHZKGZ.js";
99
+ } from "./chunk-F4LUA2DC.js";
100
100
  import {
101
101
  isCliAuthorityBrokerProtocolError,
102
102
  isCliAuthorityBrokerTimeoutError,
@@ -116,7 +116,7 @@ import {
116
116
  LOCAL_AGENT_CONFIG_MISSING_CODE,
117
117
  LOCAL_TURN_ABORTED_CODE,
118
118
  readActionGate
119
- } from "./chunk-ADTJJVDJ.js";
119
+ } from "./chunk-DUNY6XR5.js";
120
120
  import {
121
121
  resolveAgentRuntimeConfigFromRecord
122
122
  } from "./chunk-N7E3LQ4A.js";
@@ -135,7 +135,7 @@ import {
135
135
  mergeAvailabilityDeadline,
136
136
  resolveCooldownGate,
137
137
  resolveCredentialKeyWithFallback
138
- } from "./chunk-JLR5NWP2.js";
138
+ } from "./chunk-RXX262QX.js";
139
139
  import {
140
140
  ATTACHMENT_PART_TYPE,
141
141
  ATTACHMENT_PART_VERSION,
@@ -11378,7 +11378,7 @@ function isBalanceExhaustedError(error) {
11378
11378
 
11379
11379
  // packages/cli/client/agentRun.ts
11380
11380
  async function loadRunLocalAgentTurn() {
11381
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-NAAYNHCW.js");
11381
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-MTQSFD7I.js");
11382
11382
  return runLocalAgentTurn;
11383
11383
  }
11384
11384
  var stripDebugNoise = (s) => s.replace(/\s*raw="[\s\S]*"/g, "").replace(/\s*raw=\S+/g, "").replace(/\s*headers=\[[^\]]*\]/g, "").replace(/\s*headers=\S+/g, "").trim();
@@ -107,6 +107,10 @@ function isAdmissibleQuotaSnapshot(quota, now = Date.now()) {
107
107
  return now - observedAt <= QUOTA_SNAPSHOT_STALE_MS;
108
108
  }
109
109
  function resolveAgentAvailability(agent, now = Date.now()) {
110
+ const exhaustion = agent?.quotaExhaustion;
111
+ if (isAdmissibleQuotaSnapshot(exhaustion, now)) {
112
+ return { status: "quota_exhausted", reason: "quota_exhausted_response" };
113
+ }
110
114
  const quota = agent?.quota;
111
115
  const isAdmissible = isAdmissibleQuotaSnapshot(quota, now);
112
116
  const hasObservedAt = Boolean(quota) && typeof quota?.observedAt === "number" && Number.isFinite(quota.observedAt);
@@ -247,13 +251,14 @@ function parseExplicitAvailableAt(body, now, headers) {
247
251
  }
248
252
  return void 0;
249
253
  }
250
- var QUOTA_EXHAUSTED_TEXT_RE = /insufficient[_ ]?quota|quota\s*(?:(?:is|has|been|was|now|fully|completely|already|entirely)\s+)*(?:limit\s+)?(?:exhausted|depleted|used\s*up|reached|exceeded)|usage\s*limit\s*(?:reached|exceeded|exhausted)|(?:\b(?:weekly|monthly|5-?hour|5h|7-?day|7d)\s*(?:\([^)]*\)\s*)?limit\s*(?:reached|exceeded|exhausted|depleted)\b)|(?:reached|exceeded)\s+your\s+.*?(?:usage\s+)?limit|exceeded\s*your\s*(?:current\s*)?quota|insufficient[_\s-]?(?:balance|credits?)|balance\s*(?:is\s*)?(?:insufficient|too\s*low)|(?:额度|配额|用量)(?:已|已经|也)?(?:用尽|耗尽|用完|超限|不足)|(?:已达|已达到|超出|超过)[^。;,\n]{0,12}(?:用量上限|配额上限|额度上限)|余额(?:不足|不够|已用尽|已耗尽)/i;
254
+ var QUOTA_EXHAUSTED_TEXT_RE = /insufficient[_ ]?quota|quota\s*(?:(?:is|has|been|was|now|fully|completely|already|entirely)\s+)*(?:limit\s+)?(?:exhausted|depleted|used\s*up|reached|exceeded)|usage\s*limit\s*(?:reached|exceeded|exhausted)|(?:\b(?:weekly|monthly|5-?hour|5h|7-?day|7d)\s*(?:\([^)]*\)\s*)?limit\s*(?:reached|exceeded|exhausted|depleted)\b)|(?:reached|exceeded)\s+your\s+.*?(?:usage\s+)?limit|exceeded\s*your\s*(?:current\s*)?quota|insufficient[_\s-]?(?:balance|credits?)|balance\s*(?:is\s*)?(?:insufficient|too\s*low)|(?:额度|配额|用量)(?:已|已经|也)?(?:用尽|耗尽|用完|超限|不足)|(?:已达到|已达|超出|超过)[^。;,\n]{0,40}(?:用量上限|配额上限|额度上限)|余额(?:不足|不够|已用尽|已耗尽)/i;
251
255
  var NEGATED_QUOTA_TEXT_RE = /\b(?:not|no\s+longer|never|haven't|hasn't|isn't|aren't)\s+(?:(?:currently|really|actually|yet)\s+)?(?:quota\s+exhausted|limit\s+exhausted|exhausted|depleted|used\s*up|reached|exceeded|out\s+of\s+quota)\b/i;
252
256
  var CAPACITY_SATURATED_TEXT_RE = /\b(?:is\s+at\s+capacity|at\s+capacity|capacity\s*(?:is\s*)?(?:saturated|exceeded|unavailable)|overloaded|over\s*capacity)\b/i;
253
257
  var NEGATED_CAPACITY_TEXT_RE = /\b(?:not|no\s+longer|never)\s+(?:(?:currently|really|actually|yet)\s+)?(?:at\s+capacity|capacity\s*(?:is\s*)?(?:saturated|exceeded|unavailable)|overloaded|over\s*capacity)\b/i;
254
258
  function isQuotaExhaustedText(body) {
255
259
  const text = typeof body === "string" ? body : JSON.stringify(body ?? "");
256
260
  if (!text) return false;
261
+ if (/"(?:code|status_code)"\s*:\s*"?2056"?(?=\s*[,}])/.test(text)) return true;
257
262
  if (NEGATED_QUOTA_TEXT_RE.test(text)) return false;
258
263
  return QUOTA_EXHAUSTED_TEXT_RE.test(text) || isQuotaLimited403Body(text);
259
264
  }
@@ -270,10 +275,19 @@ function resolveNextAvailableAt(body, now, headers) {
270
275
  return parsed ?? clampCooldownDeadline(now + DEFAULT_PROVIDER_RETRY_MS, now);
271
276
  }
272
277
  function resolveAvailabilityAction(status, body, now, headers) {
273
- if (status === 403 && isQuotaLimited403Body(body)) {
278
+ if (status >= 200 && status < 300) {
279
+ const b = body;
280
+ if (b && typeof b === "object" && !(Array.isArray(b.choices) && b.choices.length > 0)) {
281
+ const isQuotaCode = (code) => code === 2056 || code === "2056";
282
+ if (isQuotaCode(b.code) || isQuotaCode(b.error?.code) || isQuotaCode(b.base_resp?.status_code)) {
283
+ return { kind: "mark", nextAvailableAt: resolveNextAvailableAt(body, now, headers) };
284
+ }
285
+ }
286
+ return { kind: "clear" };
287
+ }
288
+ if (isQuotaExhaustedText(body)) {
274
289
  return { kind: "mark", nextAvailableAt: resolveNextAvailableAt(body, now, headers) };
275
290
  }
276
- if (status >= 200 && status < 300) return { kind: "clear" };
277
291
  if (status === 429) {
278
292
  if (isCapacitySaturatedRateLimit(body, now, headers)) {
279
293
  return { kind: "mark", nextAvailableAt: now + THIN_RATE_LIMIT_COOLDOWN_MS };
@@ -5,10 +5,10 @@ import {
5
5
  } from "./chunk-NBTY7YJF.js";
6
6
  import {
7
7
  resolveCliLocalRuntimeKeyCapability
8
- } from "./chunk-UC5RISH3.js";
8
+ } from "./chunk-F4OL33IQ.js";
9
9
  import {
10
10
  HIGH_RISK_MUTATION_TOOL_NAMES
11
- } from "./chunk-UBLITLAZ.js";
11
+ } from "./chunk-NABJEYPJ.js";
12
12
  import {
13
13
  DEFAULT_NOLO_SERVER_URL
14
14
  } from "./chunk-OLZBQWZU.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  requireTokenUser
3
- } from "./chunk-PD2YRFAI.js";
3
+ } from "./chunk-ZQ3EAOY3.js";
4
4
  import {
5
5
  resolveServerUrl
6
6
  } from "./chunk-WACI5I6V.js";
@@ -7,7 +7,7 @@ import {
7
7
  listUserRecordsFromServers,
8
8
  readDbRecordFromServers,
9
9
  readLiveDbRecordAfterTombstoneMerge
10
- } from "./chunk-5DPVRMSY.js";
10
+ } from "./chunk-FMOZ57LN.js";
11
11
  import {
12
12
  parsePositiveFiniteNumberOrFallback
13
13
  } from "./chunk-Y5GCAMGP.js";
@@ -43,7 +43,7 @@ import {
43
43
  boundSummaryText,
44
44
  buildDialogReadEnvelope,
45
45
  projectDialogReadForAgent
46
- } from "./chunk-UBLITLAZ.js";
46
+ } from "./chunk-NABJEYPJ.js";
47
47
  import {
48
48
  asRecordOrEmpty
49
49
  } from "./chunk-KX6YBIHG.js";
@@ -333,7 +333,7 @@ async function saveDocState(arg, { dispatch, getState }) {
333
333
  ).unwrap();
334
334
  if (dbSpaceId) {
335
335
  try {
336
- const { updateContentTitle } = await import("./contentThunks-RP4BYNUC.js");
336
+ const { updateContentTitle } = await import("./contentThunks-STHMPQXH.js");
337
337
  await dispatch(
338
338
  updateContentTitle({
339
339
  spaceId: dbSpaceId,
@@ -372,7 +372,7 @@ async function saveDocState(arg, { dispatch, getState }) {
372
372
  }
373
373
  }
374
374
  async function createDocState(args, thunkApi) {
375
- const { createPageAction } = await import("./createPageAction-FJGDX55N.js");
375
+ const { createPageAction } = await import("./createPageAction-IYIPME6P.js");
376
376
  return createPageAction(args, thunkApi);
377
377
  }
378
378
  function subscribe(listener) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  buildAgentRuntimeAgentLookupKeys,
3
3
  shouldFetchAgentRuntimeRecordRemotely
4
- } from "./chunk-UBLITLAZ.js";
4
+ } from "./chunk-NABJEYPJ.js";
5
5
 
6
6
  // packages/agent-runtime/oauthProviderRefs.ts
7
7
  var OAUTH_PROVIDER_REFS = [
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readDbRecord,
3
3
  writeAgentRecord
4
- } from "./chunk-GYVLAHA4.js";
4
+ } from "./chunk-6WZQGT5X.js";
5
5
  import {
6
6
  buildSkillSummaryMarker
7
7
  } from "./chunk-VF4K2QE6.js";