nolo-cli 0.157.0-alpha.1 → 0.158.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 (126) hide show
  1. package/{_executeModel-5WS2PA62.js → _executeModel-6BMU3URY.js} +35 -35
  2. package/{accountResolver-7RYB4D2P.js → accountResolver-55EDKEIK.js} +1 -1
  3. package/{action-ZJYUBXFC.js → action-GPPJC5TI.js} +4 -4
  4. package/{addContentAction-TVHB4526.js → addContentAction-BI6RDRTQ.js} +7 -7
  5. package/{addDialogAgentAction-FDPBU6K6.js → addDialogAgentAction-4RJYUSIK.js} +6 -6
  6. package/{agentDeleteCommand-Q6M4F3U6.js → agentDeleteCommand-Q2XWGBC2.js} +42 -42
  7. package/{agentEmailCommands-FNH6FEHS.js → agentEmailCommands-XFBE2A3F.js} +44 -44
  8. package/{agentListCommands-JUNMFS6E.js → agentListCommands-OROMT4P3.js} +12 -12
  9. package/{agentMachineCommands-VNLDEKNT.js → agentMachineCommands-ULK5YKKJ.js} +11 -10
  10. package/{agentProviderCommands-X2HQE6HY.js → agentProviderCommands-MKG2OOEY.js} +2 -2
  11. package/{agentRecordCommands-47XXRVPI.js → agentRecordCommands-3VHBLS6P.js} +42 -42
  12. package/{agentRunCommand-QEXFJUXQ.js → agentRunCommand-LCIMEAQY.js} +44 -43
  13. package/{agentRuntimeLocal-O5GDAFTN.js → agentRuntimeLocal-NPJS2QDP.js} +5 -5
  14. package/{agentSlice-E3XS5FTQ.js → agentSlice-VRAPG6CH.js} +7 -7
  15. package/{appDeleteCommands-C2J5RQ3I.js → appDeleteCommands-AZ3KS4HK.js} +10 -10
  16. package/{appDeployCommands-3YRK7PSU.js → appDeployCommands-BTV22ICJ.js} +10 -10
  17. package/{appDeployStatusCommands-FPAX7MOK.js → appDeployStatusCommands-JSW3HPIW.js} +10 -10
  18. package/{appGetCommands-XAC2V766.js → appGetCommands-5KTTFIMV.js} +10 -10
  19. package/{appListCommands-ZJL2W5O7.js → appListCommands-3BJPAE2U.js} +10 -10
  20. package/{authCommand-J3XILHWW.js → authCommand-NIV3DKPF.js} +7 -287
  21. package/{authCommands-77CHYBGF.js → authCommands-AMNIAKEG.js} +2 -2
  22. package/{builtinSkillRegistry-A6VSPJEJ.js → builtinSkillRegistry-H3AY27TR.js} +1 -1
  23. package/{chromeCommands-OBBNJCLS.js → chromeCommands-IY4NVSXZ.js} +17 -10
  24. package/{chunk-SW4S4XYB.js → chunk-2AB2HA4M.js} +84 -34
  25. package/{chunk-VSOWPETY.js → chunk-2BKUVRC5.js} +7 -7
  26. package/{chunk-Z6KQDSZW.js → chunk-2SGAI64X.js} +2 -2
  27. package/{chunk-KOB75UNU.js → chunk-2SOS7OSQ.js} +18 -2
  28. package/{chunk-C5VPAHIU.js → chunk-32ZKZET7.js} +1 -1
  29. package/{chunk-XPWGOTBQ.js → chunk-3L2WKC3W.js} +1 -8
  30. package/{chunk-PEO24UB5.js → chunk-3TBHZPNG.js} +33 -6
  31. package/{chunk-YBNHPX4S.js → chunk-4RJJDA57.js} +1 -1
  32. package/{chunk-X5SUT4CN.js → chunk-4UOEOHY3.js} +6 -6
  33. package/{chunk-UUPR3TD7.js → chunk-7RF4O6AT.js} +1 -3
  34. package/{chunk-FPWT3RH2.js → chunk-AJ4V34SG.js} +10 -10
  35. package/{chunk-2GGXHQIW.js → chunk-BLVSFYQ3.js} +4 -2
  36. package/{chunk-SKPPKHD3.js → chunk-BYQOCH75.js} +2 -2
  37. package/{chunk-UTIMX333.js → chunk-C3OK72G3.js} +1 -1
  38. package/{chunk-ZWG3C7VI.js → chunk-C6FY7HWI.js} +35 -0
  39. package/{chunk-RUNKPFM5.js → chunk-CDWHHLK5.js} +12 -8
  40. package/{chunk-ROPSATAB.js → chunk-CON6SI7N.js} +1 -1
  41. package/{chunk-4Z245KOA.js → chunk-DC3SZCRR.js} +6 -2
  42. package/{chunk-OH2M7WEU.js → chunk-EQGFFDNA.js} +3 -3
  43. package/{chunk-ANJTRG52.js → chunk-G2WP7VPD.js} +0 -37
  44. package/{chunk-7A4LJCDR.js → chunk-G476FQ7Q.js} +4 -4
  45. package/{chunk-DW7MGLMG.js → chunk-GAVUTXM5.js} +21 -17
  46. package/{chunk-PSJWPSKS.js → chunk-HB4XPBC7.js} +0 -32
  47. package/{chunk-6MJNEXUU.js → chunk-HGDKT2D6.js} +4 -0
  48. package/{chunk-EM3YOZJ4.js → chunk-ICRRXBRN.js} +3 -3
  49. package/{chunk-7KYVUFDG.js → chunk-IE5PXKVU.js} +1 -263
  50. package/{chunk-T6CBQ6BN.js → chunk-INFHX73M.js} +1 -1
  51. package/{chunk-CE7PIHQD.js → chunk-IRTOYSA2.js} +3 -3
  52. package/{chunk-WZ6OU4NX.js → chunk-J2ATF74A.js} +2 -2
  53. package/{chunk-TJ2VPCBE.js → chunk-JPJGMOIM.js} +2 -2
  54. package/{chunk-I2ZMGXXF.js → chunk-KFHREHUQ.js} +1 -1
  55. package/{chunk-7GC3EKUG.js → chunk-KKKHAF3P.js} +2 -2
  56. package/{chunk-KX6LPG7W.js → chunk-KLA62VVE.js} +1 -1
  57. package/{chunk-TYND6RDQ.js → chunk-LV4LV2B4.js} +72 -1
  58. package/{chunk-TZTWMGE3.js → chunk-M2P3OGXZ.js} +3 -3
  59. package/{chunk-CBHGZRCE.js → chunk-MYOH447Z.js} +1 -1
  60. package/{chunk-6MPAEODB.js → chunk-NDZOXXIM.js} +17 -3
  61. package/{chunk-MVJVF4ED.js → chunk-NKPAHRMA.js} +7 -6
  62. package/{chunk-ZD2BLOY6.js → chunk-O4ZERG3M.js} +3 -3
  63. package/{chunk-36OMEXXR.js → chunk-OON4OBWI.js} +1 -1
  64. package/{chunk-SEJ5OS6F.js → chunk-PXYBUFDB.js} +4 -0
  65. package/{chunk-G47IPDOK.js → chunk-QPY264HO.js} +1 -1
  66. package/{chunk-TNIX77YM.js → chunk-R5GO3YZP.js} +34 -1
  67. package/{chunk-EJU23ST5.js → chunk-S72LMV7T.js} +670 -627
  68. package/{chunk-D4OWHT5Y.js → chunk-SPKLALBU.js} +2 -2
  69. package/{chunk-FDT27L7S.js → chunk-UCLSOLX4.js} +7 -5
  70. package/{chunk-B2EGWZJG.js → chunk-UFYBYB26.js} +1 -1
  71. package/{chunk-3XZKV7QQ.js → chunk-US6MKPE7.js} +1 -1
  72. package/{chunk-VAZHH6FO.js → chunk-VDEVDGEM.js} +18 -12
  73. package/{chunk-HXHSTRGH.js → chunk-VYNMQ6HW.js} +0 -27
  74. package/{chunk-7BSQK2UC.js → chunk-WRCZXJ4N.js} +2 -2
  75. package/{chunk-H4KACZMG.js → chunk-WTFRBJT5.js} +261 -126
  76. package/{chunk-QDA4Y5O6.js → chunk-WXFZ4P6O.js} +18 -14
  77. package/chunk-Y5GCAMGP.js +9 -0
  78. package/{chunk-SCJD2PNK.js → chunk-YPG7TUQD.js} +3 -3
  79. package/{chunk-XFKZ3MCV.js → chunk-YTXQ2U2X.js} +221 -65
  80. package/{chunk-ZEHTARJA.js → chunk-ZBXIKCZ4.js} +38 -92
  81. package/{chunk-HKT6QXP3.js → chunk-ZEY4NJRE.js} +2 -2
  82. package/{chunk-HP6O6LTV.js → chunk-ZVQHBIWV.js} +6 -6
  83. package/{commandRegistry-OUBQIF62.js → commandRegistry-D6JTVYKG.js} +73 -81
  84. package/{contentThunks-B3FRQGP7.js → contentThunks-DYQO4CTI.js} +14 -13
  85. package/{createAgentAutomationAction-T2YFJ6MY.js → createAgentAutomationAction-LW26KIBP.js} +14 -13
  86. package/{createDialogAction-2NFGFBXW.js → createDialogAction-VLLBRD52.js} +15 -14
  87. package/{createPageAction-LDAVZDN7.js → createPageAction-PDACOLI6.js} +14 -13
  88. package/{dbSlice-5QGKMQLO.js → dbSlice-DC2J53RC.js} +6 -6
  89. package/{deleteFile-EW6QNRRT.js → deleteFile-KYWEMNFX.js} +4 -4
  90. package/{dialogCommands-ZLBEAQHE.js → dialogCommands-F3Y4KCPZ.js} +12 -11
  91. package/{dialogSlice-64S3J6CP.js → dialogSlice-ERMZYMS6.js} +13 -12
  92. package/{docCreateCommands-XOG5BBFQ.js → docCreateCommands-YMWZLW64.js} +8 -8
  93. package/{docDeleteCommands-NCW3BBRX.js → docDeleteCommands-6KJ3ESK4.js} +9 -9
  94. package/{docReadCommands-OT7X44Y3.js → docReadCommands-YQGFVLWI.js} +8 -8
  95. package/{docStore-NIP7OO4I.js → docStore-HXKI6W5D.js} +7 -7
  96. package/{docUpdateCommands-JW7OWW2J.js → docUpdateCommands-QLSGXUEX.js} +8 -8
  97. package/{handleSendMessageAction-TOKA7ED7.js → handleSendMessageAction-2XCOZPXY.js} +25 -24
  98. package/index.js +6 -6
  99. package/{localRuntimeAdapter-EQM6LFYC.js → localRuntimeAdapter-VOFUPXNF.js} +42 -40
  100. package/{machineCommands-WJ7FZ67T.js → machineCommands-IN5O7CIO.js} +46 -44
  101. package/{machineWsRunDispatch-BQT4DEA2.js → machineWsRunDispatch-TH3GMSR3.js} +41 -41
  102. package/{memberThunks-KRV5YXOB.js → memberThunks-2DWKLE6W.js} +7 -7
  103. package/package.json +1 -1
  104. package/{profileConfig-ZGOFORWV.js → profileConfig-KN3N2BLF.js} +7 -1
  105. package/{providerPresetApply-CRZFMQD5.js → providerPresetApply-GSJI4JBJ.js} +1 -1
  106. package/{providerRegistry-7IS43D3X.js → providerRegistry-TSSTPGWF.js} +1 -1
  107. package/{read-5KAZHHDM.js → read-L7QEJETH.js} +4 -4
  108. package/{readDocTool-5QO34OSX.js → readDocTool-QELXV2GW.js} +1 -1
  109. package/{readlineWorkspace-JHJSU5DS.js → readlineWorkspace-EIEQUTEZ.js} +317 -104
  110. package/{removeDialogAgentAction-6X63HMI3.js → removeDialogAgentAction-376XSUP2.js} +8 -8
  111. package/{runAgentClientLoop-5QIGEALK.js → runAgentClientLoop-3KHKKBZI.js} +39 -34
  112. package/{secretCommands-ZXZRLR3R.js → secretCommands-DNY56NSU.js} +11 -1
  113. package/{setDialogExtraReferencesAction-4MAYKKYW.js → setDialogExtraReferencesAction-QBDSH63D.js} +7 -7
  114. package/{setPrimaryDialogAgentAction-EGBAMREH.js → setPrimaryDialogAgentAction-537QFGW3.js} +8 -8
  115. package/settingThunks-4Z43ZSAT.js +923 -0
  116. package/{spaceCommands-ZWDPTURU.js → spaceCommands-T5Z4U7HP.js} +8 -8
  117. package/{streamAgentChatTurn-456DWXNY.js → streamAgentChatTurn-DMXXSEVX.js} +39 -39
  118. package/{switchDialogAgentAction-YBKTD6DO.js → switchDialogAgentAction-CSO6AKRL.js} +6 -6
  119. package/{tableCommands-U3QDY4L6.js → tableCommands-LBH3QPPO.js} +1 -1
  120. package/{toolApiClient-7WSJJJBV.js → toolApiClient-HGNO53TC.js} +2 -2
  121. package/{tools-IWNXKK4Y.js → tools-RMT7NAMC.js} +29 -28
  122. package/{updateCommands-NQXAGFM7.js → updateCommands-LXZLG44Y.js} +2 -2
  123. package/{updateDialogTitleAction-SX53FZWO.js → updateDialogTitleAction-Z4WNUH6Y.js} +14 -13
  124. package/{workloadLifecycle-36DXRZKU.js → workloadLifecycle-6O6PMISX.js} +2 -2
  125. package/chunk-W4S6OTSC.js +0 -35
  126. package/settingThunks-FTDRZNSJ.js +0 -1371
@@ -1,4 +1,8 @@
1
1
  import {
2
+ isDevinOAuthAgent
3
+ } from "./chunk-5ZUL4CUO.js";
4
+ import {
5
+ getModelContextWindow,
2
6
  normalizeTimingMs
3
7
  } from "./chunk-2MTE2PEH.js";
4
8
  import {
@@ -25,6 +29,35 @@ import {
25
29
  asOptionalTrimmedString
26
30
  } from "./chunk-G3SUCT4W.js";
27
31
 
32
+ // packages/agent-runtime/devin/devinChannelWindows.ts
33
+ var DEVIN_CHANNEL_CONTEXT_WINDOWS = {
34
+ // SWE-2 家族(catalog 无裸 swe-2 selector;旧点号/裸写法如 swe-2、
35
+ // swe-1.7 实测均 permission_denied,已不是可用 selector)。
36
+ "swe-2-max": 262e3,
37
+ "swe-2-high": 262e3,
38
+ "swe-2-medium": 262e3,
39
+ // SWE-1.7 家族。
40
+ "swe-1-7": 262e3,
41
+ "swe-1-7-medium": 262e3,
42
+ "swe-1-7-lightning": 202752,
43
+ // SWE-1.6 家族(免费档默认)。
44
+ "swe-1-6": 2e5,
45
+ "swe-1-6-fast": 2e5,
46
+ // 经 devin 通道转售、且与厂商原生窗口不同的模型(catalog 枚举型 selector)。
47
+ "MODEL_GPT_5_2_LOW": 384e3,
48
+ "MODEL_GPT_5_2_MEDIUM": 384e3,
49
+ "MODEL_GPT_5_2_HIGH": 384e3,
50
+ "MODEL_GPT_5_2_XHIGH": 384e3
51
+ };
52
+ var devinChannelContextWindow = (model) => {
53
+ const raw = model?.trim();
54
+ if (!raw) return void 0;
55
+ return DEVIN_CHANNEL_CONTEXT_WINDOWS[raw];
56
+ };
57
+ var resolveAgentContextWindow = (agent) => (isDevinOAuthAgent(agent) ? devinChannelContextWindow(agent.model) : void 0) ?? // provider 透传给全局解析:平台托管通道(CF)与 Codex OAuth 等通道对同一 id
58
+ // 窗口不同,按通道取真值,不做全局取大/取小。
59
+ getModelContextWindow(agent.model ?? "", agent.provider);
60
+
28
61
  // packages/agent-runtime/autoExecutionProfiles.ts
29
62
  var createProfile = (input) => ({
30
63
  id: input.id,
@@ -346,6 +379,8 @@ export {
346
379
  resolveAutoExecutionProfile,
347
380
  readCacheReadInputTokens,
348
381
  readCacheCreationInputTokens,
382
+ devinChannelContextWindow,
383
+ resolveAgentContextWindow,
349
384
  normalizeUsage,
350
385
  asOptionalJsonRecord,
351
386
  extractReferenceKeysFromMessage,
@@ -5,24 +5,24 @@ import {
5
5
  normalizePolicyLevelSetting,
6
6
  normalizeSystemBuiltinSkills,
7
7
  normalizeTonePresetSetting
8
- } from "./chunk-HXHSTRGH.js";
8
+ } from "./chunk-VYNMQ6HW.js";
9
9
  import {
10
10
  fetchAndCacheTableRows
11
- } from "./chunk-VAZHH6FO.js";
11
+ } from "./chunk-VDEVDGEM.js";
12
12
  import {
13
13
  require_react
14
14
  } from "./chunk-YDH3FDFQ.js";
15
15
  import {
16
16
  createAsyncThunk,
17
17
  createSelector
18
- } from "./chunk-7BSQK2UC.js";
18
+ } from "./chunk-WRCZXJ4N.js";
19
19
  import {
20
20
  selectIdentityUserId
21
- } from "./chunk-SEJ5OS6F.js";
21
+ } from "./chunk-PXYBUFDB.js";
22
22
  import {
23
23
  resolveBuiltinCapability,
24
24
  resolveBuiltinSkillEntry
25
- } from "./chunk-4Z245KOA.js";
25
+ } from "./chunk-DC3SZCRR.js";
26
26
  import {
27
27
  DEFAULT_SYSTEM_AGENT_CAPABILITIES
28
28
  } from "./chunk-EUGTFFO6.js";
@@ -287,7 +287,11 @@ var MODES = [
287
287
  var DEFAULT_RECOMMENDED_SKILL_SLUGS = [
288
288
  "worktree-isolation",
289
289
  "systematic-investigation",
290
- "show-me"
290
+ "show-me",
291
+ // 凭据管理:仓库已有 nolo secret(set/list/run/bind),但技能发现只扫
292
+ // `.agents/skills`,内置的 secrets-manager 不会出现在"可用技能"里。放进默认
293
+ // 提示名单让它至少以一行提示出现(不授工具、不放宽权限)。
294
+ "secrets-manager"
291
295
  ];
292
296
  var asMode = (value) => typeof value === "string" && MODES.includes(value) ? value : null;
293
297
  var resolveAgentSkillConfig = (source) => {
@@ -517,7 +521,7 @@ var executeToolRun = createAsyncThunk(
517
521
  if (!executionInput) {
518
522
  throw new Error(`ToolRun ${id} has no input to execute with.`);
519
523
  }
520
- const { findToolExecutor } = await import("./tools-IWNXKK4Y.js");
524
+ const { findToolExecutor } = await import("./tools-RMT7NAMC.js");
521
525
  const { executor } = findToolExecutor(run.toolName);
522
526
  toolRunStarted({
523
527
  id: run.id,
@@ -541,7 +545,7 @@ var executeToolRun = createAsyncThunk(
541
545
  const latestState = thunkApi.getState();
542
546
  const userId = selectIdentityUserId(latestState);
543
547
  if (userId) {
544
- const { fetchUserSpaceMemberships } = await import("./memberThunks-KRV5YXOB.js");
548
+ const { fetchUserSpaceMemberships } = await import("./memberThunks-2DWKLE6W.js");
545
549
  await thunkApi.dispatch(fetchUserSpaceMemberships(userId));
546
550
  }
547
551
  }
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  patch,
9
9
  selectById
10
- } from "./chunk-HP6O6LTV.js";
10
+ } from "./chunk-ZVQHBIWV.js";
11
11
 
12
12
  // packages/chat/dialog/actions/setDialogExtraReferencesAction.ts
13
13
  var setDialogExtraReferencesAction = async (extraReferences, thunkApi) => {
@@ -1295,7 +1295,7 @@ var SECRETS_MANAGER_SKILL_DEFINITIONS = {
1295
1295
  1. **\u7EDD\u5BF9\u5B58\u50A8\u8DEF\u5F84**\uFF1A\`$NOLO_HOME/credentials/secrets.json\`\uFF08\u672A\u8BBE \`NOLO_HOME\` \u65F6\u56DE\u843D \`~/.nolo/credentials/secrets.json\`\uFF09\uFF0C\u6743\u9650\u4E25\u683C\u9501\u5B9A\u4E3A \`0600\`\uFF0C\u7236\u76EE\u5F55 \`0700\`\u3002
1296
1296
  2. **\u7981\u6B62\u56DE\u663E\u539F\u5219**\uFF1A
1297
1297
  - Agent \u65E0\u8BBA\u5728\u4EFB\u4F55\u60C5\u51B5\u4E0B\uFF0C**\u7EDD\u4E0D\u5728\u5BF9\u8BDD\u6D88\u606F\u3001\u65E5\u5FD7\u6216\u62A5\u544A\u4E2D\u6253\u5370\u4EFB\u4F55\u5BC6\u94A5\u660E\u6587**\uFF1B
1298
- - \u67E5\u770B\u5DF2\u4FDD\u5B58\u7684\u51ED\u636E\u4E00\u5F8B\u4F7F\u7528 \`nolo secret list\`\uFF08\u4EC5\u8F93\u51FA\u51ED\u636E\u540D\u79F0\uFF0C\u4E0D\u8F93\u51FA\u5185\u5BB9\uFF09\uFF1B
1298
+ - \u67E5\u770B\u5DF2\u4FDD\u5B58\u7684\u51ED\u636E\u4E00\u5F8B\u4F7F\u7528 \`nolo secret list\`\uFF08\u4EBA\u7C7B\u53EF\u8BFB\uFF09\u6216 \`nolo secret list --json\`\uFF08\u673A\u5668\u53EF\u8BFB\uFF0C\u4EC5\u8F93\u51FA\u51ED\u636E\u540D\u79F0\u4E0E\u5F62\u6001\uFF0C\u4E0D\u8F93\u51FA\u5185\u5BB9\uFF09\uFF1B
1299
1299
  - Agent **\u4E0D\u5F97**\u6267\u884C \`nolo secret get\`\uFF08\u8BE5\u5B50\u547D\u4EE4\u53EA\u4F9B\u4EBA\u7C7B\u8C03\u8BD5\uFF09\uFF0C\u53EA\u5141\u8BB8 \`nolo secret run --with\`\u3002
1300
1300
  3. **\u7528\u6237\u6388\u6743\u95E8\u7981**\uFF1A
1301
1301
  - \u53EA\u6709\u5F53\u7528\u6237\u5728\u5BF9\u8BDD\u4E2D\u660E\u786E\u63D0\u5230\u201C\u5141\u8BB8\u83B7\u53D6 / \u4F7F\u7528\u672C\u5730\u4FDD\u5B58\u7684 xxx \u51ED\u636E\u201D\u65F6\uFF0CAgent \u624D\u88AB\u6388\u6743\u8C03\u7528\u8BE5\u51ED\u636E\uFF1B\u672A\u83B7\u7528\u6237\u660E\u786E\u6307\u793A\u65F6\uFF0C\u4E0D\u5F97\u8BFB\u53D6\u6216\u6CE8\u5165\u3002
@@ -1305,6 +1305,8 @@ var SECRETS_MANAGER_SKILL_DEFINITIONS = {
1305
1305
  \`\`\`bash
1306
1306
  # 1. \u67E5\u770B\u5DF2\u6709\u79D8\u5BC6\uFF08\u5B89\u5168\uFF0C\u4EC5\u8F93\u51FA\u540D\u79F0\u5217\u8868\uFF0C\u7EDD\u4E0D\u6253\u5370\u5BC6\u94A5\u503C\uFF09
1307
1307
  nolo secret list
1308
+ # \u673A\u5668\u53EF\u8BFB\u7248\uFF08\u4EC5\u540D\u79F0\u4E0E\u5F62\u6001\uFF0Cagent \u7528\u5B83\u6765\u53D1\u73B0"\u6211\u4EEC\u6709\u6CA1\u6709\u76F8\u5173\u51ED\u636E"\uFF09
1309
+ nolo secret list --json
1308
1310
 
1309
1311
  # 2. \u8BBE\u7F6E\u6216\u66F4\u65B0\u51ED\u636E\uFF08\u652F\u6301\u5B57\u7B26\u4E32\u6216 JSON \u5BF9\u8C61\uFF09
1310
1312
  nolo secret set amo '{"issuer":"user:<account-id>:<key-id>","secret":"<key>"}'
@@ -1338,7 +1340,9 @@ function buildSecretsManagerSkillConfig(slug) {
1338
1340
  id: buildSecretsManagerSkillId(slug),
1339
1341
  name: seed.title,
1340
1342
  description: seed.description,
1341
- triggerMode: "manual"
1343
+ // 合法枚举是 explicit / required / recommended;"manual" 会被
1344
+ // normalizeSkillEnumValue 静默丢弃,导致 front-matter 的 triggerMode 为空。
1345
+ triggerMode: "explicit"
1342
1346
  };
1343
1347
  }
1344
1348
  function buildSecretsManagerSkillContentBySlug(slug) {
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  patch,
9
9
  readAndWait
10
- } from "./chunk-HP6O6LTV.js";
10
+ } from "./chunk-ZVQHBIWV.js";
11
11
  import {
12
12
  toErrorMessage
13
13
  } from "./chunk-HNMXYYJR.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-B3FRQGP7.js");
336
+ const { updateContentTitle } = await import("./contentThunks-DYQO4CTI.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-LDAVZDN7.js");
375
+ const { createPageAction } = await import("./createPageAction-PDACOLI6.js");
376
376
  return createPageAction(args, thunkApi);
377
377
  }
378
378
  function subscribe(listener) {
@@ -1,12 +1,6 @@
1
- import {
2
- isDevinOAuthAgent
3
- } from "./chunk-5ZUL4CUO.js";
4
1
  import {
5
2
  resolveAgentImageInputSupport
6
3
  } from "./chunk-IYBIRCQV.js";
7
- import {
8
- getModelContextWindow
9
- } from "./chunk-2MTE2PEH.js";
10
4
  import {
11
5
  asOptionalFiniteNumber
12
6
  } from "./chunk-WWC7I6TA.js";
@@ -55,35 +49,6 @@ async function stripImagePartsForTextOnlyAgent(messages, agentConfig) {
55
49
  return { messages: !supportsVision && hasImages ? stripImagePartsFromMessages(messages) : messages };
56
50
  }
57
51
 
58
- // packages/agent-runtime/devin/devinChannelWindows.ts
59
- var DEVIN_CHANNEL_CONTEXT_WINDOWS = {
60
- // SWE-2 家族(catalog 无裸 swe-2 selector;旧点号/裸写法如 swe-2、
61
- // swe-1.7 实测均 permission_denied,已不是可用 selector)。
62
- "swe-2-max": 262e3,
63
- "swe-2-high": 262e3,
64
- "swe-2-medium": 262e3,
65
- // SWE-1.7 家族。
66
- "swe-1-7": 262e3,
67
- "swe-1-7-medium": 262e3,
68
- "swe-1-7-lightning": 202752,
69
- // SWE-1.6 家族(免费档默认)。
70
- "swe-1-6": 2e5,
71
- "swe-1-6-fast": 2e5,
72
- // 经 devin 通道转售、且与厂商原生窗口不同的模型(catalog 枚举型 selector)。
73
- "MODEL_GPT_5_2_LOW": 384e3,
74
- "MODEL_GPT_5_2_MEDIUM": 384e3,
75
- "MODEL_GPT_5_2_HIGH": 384e3,
76
- "MODEL_GPT_5_2_XHIGH": 384e3
77
- };
78
- var devinChannelContextWindow = (model) => {
79
- const raw = model?.trim();
80
- if (!raw) return void 0;
81
- return DEVIN_CHANNEL_CONTEXT_WINDOWS[raw];
82
- };
83
- var resolveAgentContextWindow = (agent) => (isDevinOAuthAgent(agent) ? devinChannelContextWindow(agent.model) : void 0) ?? // provider 透传给全局解析:平台托管通道(CF)与 Codex OAuth 等通道对同一 id
84
- // 窗口不同,按通道取真值,不做全局取大/取小。
85
- getModelContextWindow(agent.model ?? "", agent.provider);
86
-
87
52
  // packages/agent-runtime/agentRecordConfig.ts
88
53
  function stringField(record, key) {
89
54
  const value = record[key];
@@ -452,8 +417,6 @@ export {
452
417
  hasImageInRuntimeMessages,
453
418
  stripImagePartsFromMessages,
454
419
  stripImagePartsForTextOnlyAgent,
455
- devinChannelContextWindow,
456
- resolveAgentContextWindow,
457
420
  resolveAgentRuntimeConfigFromRecord,
458
421
  buildDesktopAgentRuntimeAgentConfigSnapshot,
459
422
  buildDesktopAgentRuntimeDialogHistorySnapshot,
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-VAZHH6FO.js";
3
+ } from "./chunk-VDEVDGEM.js";
4
4
  import {
5
5
  format,
6
6
  prepareAndPersistMessage,
7
7
  uiAskChoiceFunc,
8
8
  uiAskChoiceFunctionSchema
9
- } from "./chunk-H4KACZMG.js";
9
+ } from "./chunk-WTFRBJT5.js";
10
10
  import {
11
11
  formatISO
12
12
  } from "./chunk-ZRAU6T47.js";
@@ -16,13 +16,13 @@ import {
16
16
  removeCachedEntity,
17
17
  upsertSSREntity,
18
18
  write
19
- } from "./chunk-HP6O6LTV.js";
19
+ } from "./chunk-ZVQHBIWV.js";
20
20
  import {
21
21
  isDevelopment
22
22
  } from "./chunk-6Q7UTJKR.js";
23
23
  import {
24
24
  selectIdentityUserId
25
- } from "./chunk-SEJ5OS6F.js";
25
+ } from "./chunk-PXYBUFDB.js";
26
26
  import {
27
27
  buildBuiltinObjectSkillReference
28
28
  } from "./chunk-JZX2XLKC.js";
@@ -1,32 +1,32 @@
1
- import {
2
- buildResponseGuidelines
3
- } from "./chunk-W4S6OTSC.js";
4
1
  import {
5
2
  getLocalProviderSecret
6
3
  } from "./chunk-HS7MLR74.js";
7
4
  import {
8
5
  performServerProxyFetchWithRetry
9
- } from "./chunk-VSOWPETY.js";
6
+ } from "./chunk-2BKUVRC5.js";
10
7
  import {
11
8
  shouldUseServerProxy
12
9
  } from "./chunk-UKZX3NHN.js";
13
10
  import {
14
11
  fetchServerSyncedCredential
15
- } from "./chunk-X5SUT4CN.js";
12
+ } from "./chunk-4UOEOHY3.js";
16
13
  import {
17
14
  buildSkillGuidancePromptBlock
18
- } from "./chunk-4Z245KOA.js";
15
+ } from "./chunk-DC3SZCRR.js";
19
16
  import {
17
+ CREDENTIAL_HYGIENE_RULE,
20
18
  DELETE_SAFETY_RED_LINE,
19
+ DISPATCH_BACKEND_POLICY,
21
20
  PARALLEL_DISPATCH_DEFAULT_RULE,
22
21
  PLATFORM_RISK_CONTROL_RULE,
23
22
  buildConsultationModeBlock,
24
23
  buildIdentityBlock,
24
+ buildResponseGuidelines,
25
25
  buildRuntimeGuidanceBlocks,
26
26
  compileContextLayers,
27
27
  detectDispatchIntentFromMessages,
28
28
  resolveToolGuidedSections
29
- } from "./chunk-TYND6RDQ.js";
29
+ } from "./chunk-LV4LV2B4.js";
30
30
  import {
31
31
  convertMessagesToResponsesInput,
32
32
  getUsageRequestOptions,
@@ -216,16 +216,6 @@ function resolveAgentCallPlan(agentConfig, _env) {
216
216
  vendor: provider || "anthropic"
217
217
  };
218
218
  }
219
- if (oauthApiKeyRef === "workbuddy" || oauthApiKeyRef === "workbuddy-ai") {
220
- return {
221
- authMethod: { kind: "oauth", ref: oauthApiKeyRef },
222
- transport: "server-proxy",
223
- upstreamWire: "chat.completions",
224
- endpoint: oauthApiKeyRef === "workbuddy" ? "https://copilot.tencent.com/v2/chat/completions" : "https://www.workbuddy.ai/v2/chat/completions",
225
- requiredHeaders: [],
226
- vendor: oauthApiKeyRef
227
- };
228
- }
229
219
  if (oauthApiKeyRef === "xai") {
230
220
  return {
231
221
  authMethod: { kind: "oauth", ref: "xai" },
@@ -455,6 +445,13 @@ ${wrapHistoricalSummaryWithReplayGuard(contexts.dialogSummary)}` : "";
455
445
  cacheScope: "static",
456
446
  content: DELETE_SAFETY_RED_LINE
457
447
  },
448
+ // 凭据纪律:与红线同为无条件系统层块,四条装配线同源。
449
+ {
450
+ id: "credential-hygiene",
451
+ owner: "platform",
452
+ cacheScope: "static",
453
+ content: CREDENTIAL_HYGIENE_RULE
454
+ },
458
455
  // 并行是默认:系统层固定块,紧随红线(同为无条件前缀,不随工具/轮次变化)。
459
456
  {
460
457
  id: "parallel-dispatch-default",
@@ -462,6 +459,13 @@ ${wrapHistoricalSummaryWithReplayGuard(contexts.dialogSummary)}` : "";
462
459
  cacheScope: "static",
463
460
  content: PARALLEL_DISPATCH_DEFAULT_RULE
464
461
  },
462
+ // 派发落点:并行派发纪律的下一层(派到哪个执行后端),紧随并行块。
463
+ {
464
+ id: "dispatch-backend-policy",
465
+ owner: "platform",
466
+ cacheScope: "static",
467
+ content: DISPATCH_BACKEND_POLICY
468
+ },
465
469
  // 平台风控纪律:无条件静态前缀,紧随并行派发块。
466
470
  {
467
471
  id: "platform-risk-control",
@@ -202,38 +202,6 @@ var MINIMAX_MODEL_OPTIONS = [
202
202
  { id: "MiniMax-M3", label: "MiniMax M3", hasVision: true }
203
203
  ];
204
204
  var SUBSCRIPTION_OAUTH_PROVIDERS = [
205
- {
206
- kind: "oauth",
207
- id: "workbuddy",
208
- label: "WorkBuddy",
209
- description: "\u4F7F\u7528 WorkBuddy \u56FD\u5185\u8D26\u53F7\u53CA\u5176\u5957\u9910\u6743\u76CA\uFF1B\u53EF\u7528\u989D\u5EA6\u4E0E\u8D39\u7387\u53EF\u80FD\u968F\u6D3B\u52A8\u53D8\u5316\uFF0C\u5177\u4F53\u4EE5\u8D26\u53F7\u9875\u9762\u4E3A\u51C6\u3002",
210
- apiKeyRef: "workbuddy",
211
- provider: "workbuddy",
212
- defaultModel: "auto",
213
- modelOptions: [
214
- { id: "auto", label: "Auto", recommended: true },
215
- { id: "hy3", label: "Hy3" },
216
- { id: "deepseek-v4.1-flash", label: "DeepSeek V4.1 Flash" },
217
- { id: "glm-5.3", label: "GLM-5.3" },
218
- { id: "kimi-k3-1", label: "Kimi K3" }
219
- ]
220
- },
221
- {
222
- kind: "oauth",
223
- id: "workbuddy-ai",
224
- label: "WorkBuddy AI",
225
- description: "Use your WorkBuddy AI account and its package benefits. Available quota and rates may change with promotions; check your account for current details.",
226
- apiKeyRef: "workbuddy-ai",
227
- provider: "workbuddy-ai",
228
- defaultModel: "default-model",
229
- modelOptions: [
230
- { id: "default-model", label: "Default", recommended: true },
231
- { id: "fast-model", label: "Fast" },
232
- { id: "balanced-model", label: "Balanced" },
233
- { id: "gpt-5.5", label: "GPT-5.5" },
234
- { id: "gemini-3.1-pro", label: "Gemini 3.1 Pro" }
235
- ]
236
- },
237
205
  {
238
206
  kind: "oauth",
239
207
  id: "chatgpt",
@@ -607,7 +607,11 @@ function createDockerToolChannel(runGrant, backend) {
607
607
 
608
608
  export {
609
609
  SANDBOX_WORKSPACE_ROOT,
610
+ SANDBOX_HELPER_PATH,
610
611
  buildSandboxHelperUploadArgv,
612
+ SANDBOX_OUTPUT_LIMITS,
613
+ buildWorkspaceHelperSource,
614
+ parseToolOutput,
611
615
  buildPrimaryExecutionTicket,
612
616
  dockerExecutionToolNames,
613
617
  createDockerToolChannel
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  listUserRecordsFromServers,
3
3
  readLiveDbRecordAfterTombstoneMerge
4
- } from "./chunk-G47IPDOK.js";
4
+ } from "./chunk-QPY264HO.js";
5
5
  import {
6
6
  agentRecordHasConfiguredCredential
7
- } from "./chunk-HKT6QXP3.js";
7
+ } from "./chunk-ZEY4NJRE.js";
8
8
  import {
9
9
  deriveCredentialGroup
10
- } from "./chunk-KX6LPG7W.js";
10
+ } from "./chunk-KLA62VVE.js";
11
11
  import {
12
12
  isTombstoneRecord
13
13
  } from "./chunk-D2MDMY2M.js";