chainlesschain 0.166.114 → 0.166.115

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 (166) hide show
  1. package/README.md +5 -1
  2. package/package.json +1 -1
  3. package/src/assets/linux-subreaper/linux-arm64/manifest.json +1 -1
  4. package/src/assets/linux-subreaper/linux-x64/manifest.json +1 -1
  5. package/src/assets/web-panel/assets/{AIOps-CVac3rIN.js → AIOps-BsoSoDNb.js} +1 -1
  6. package/src/assets/web-panel/assets/{ActionButton-ChM9GxMl.js → ActionButton-Dcx7Gm5t.js} +1 -1
  7. package/src/assets/web-panel/assets/{Analytics-CV5399Js.js → Analytics-S1hsBIz3.js} +3 -3
  8. package/src/assets/web-panel/assets/{AppLayout-CuonVXhg.js → AppLayout-B2j067qM.js} +4 -4
  9. package/src/assets/web-panel/assets/{Artifacts-D9qKfgb6.js → Artifacts-D5iGV9ic.js} +1 -1
  10. package/src/assets/web-panel/assets/{Audit-DUvLysQc.js → Audit-C8ChVvXu.js} +1 -1
  11. package/src/assets/web-panel/assets/{BackgroundAgents-DfKohQeT.js → BackgroundAgents-Cg97AAJS.js} +1 -1
  12. package/src/assets/web-panel/assets/{Backup-CohoEI8R.js → Backup-CyxU9IUg.js} +1 -1
  13. package/src/assets/web-panel/assets/{BaseInput-BwdoA3xv.js → BaseInput-CKlWjA8I.js} +1 -1
  14. package/src/assets/web-panel/assets/{Chat-DRkuz1d2.js → Chat-C-EqZza6.js} +5 -5
  15. package/src/assets/web-panel/assets/{ChatBubbleRenderer-v3pzeHNC.js → ChatBubbleRenderer-BRFiXKPX.js} +1 -1
  16. package/src/assets/web-panel/assets/{Checkbox-B-GNGpKv.js → Checkbox-kkI13tSJ.js} +1 -1
  17. package/src/assets/web-panel/assets/{Codegen-Bs2lAsoZ.js → Codegen-NlqEDwHK.js} +1 -1
  18. package/src/assets/web-panel/assets/{Col-Bk1mJKDZ.js → Col-CfepEu79.js} +1 -1
  19. package/src/assets/web-panel/assets/{Community-B_FDSCOo.js → Community-BRo0qLXM.js} +1 -1
  20. package/src/assets/web-panel/assets/{Compact-No1qSLLH.js → Compact-BMu8TP0E.js} +1 -1
  21. package/src/assets/web-panel/assets/{Compliance-CcrG43-d.js → Compliance-B7Q3Moef.js} +1 -1
  22. package/src/assets/web-panel/assets/{Cowork-DLkj2ywK.js → Cowork-BVwt7Xmc.js} +3 -3
  23. package/src/assets/web-panel/assets/{Cron-sQHELVEz.js → Cron-CgBv20Qy.js} +2 -2
  24. package/src/assets/web-panel/assets/{Crosschain-CRTZ3GZg.js → Crosschain-CwcSBJk2.js} +1 -1
  25. package/src/assets/web-panel/assets/{DID-Ds2bjvxE.js → DID-d20rCiIm.js} +2 -2
  26. package/src/assets/web-panel/assets/{Dashboard-DOONG2NX.js → Dashboard-PpZaUYpS.js} +2 -2
  27. package/src/assets/web-panel/assets/{Dropdown-Br3PNA2L.js → Dropdown-DjsLdX_Z.js} +1 -1
  28. package/src/assets/web-panel/assets/{EmailListRenderer-DT6UUqjZ.js → EmailListRenderer-CaPkrtxn.js} +1 -1
  29. package/src/assets/web-panel/assets/{EvolutionSettings-BSLuEjlT.js → EvolutionSettings-DDY8cQnE.js} +1 -1
  30. package/src/assets/web-panel/assets/{FamilyGuardDashboard-2aEM9avE.js → FamilyGuardDashboard-VQavMjyj.js} +1 -1
  31. package/src/assets/web-panel/assets/{Federation-D3B0tlQU.js → Federation-D0GvKQgI.js} +1 -1
  32. package/src/assets/web-panel/assets/{FormItemContext-DTVkVVQP.js → FormItemContext-Dl_TWHmb.js} +1 -1
  33. package/src/assets/web-panel/assets/{GenericCardRenderer-BgFEgP4y.js → GenericCardRenderer-Bny2uagG.js} +1 -1
  34. package/src/assets/web-panel/assets/{Git-3t71m6Xd.js → Git-B01KXq47.js} +2 -2
  35. package/src/assets/web-panel/assets/{Governance-DS7WvlaX.js → Governance-F4c4Vwo1.js} +1 -1
  36. package/src/assets/web-panel/assets/{Inference-CeT-xWrI.js → Inference-_025Q-8K.js} +1 -1
  37. package/src/assets/web-panel/assets/{KnowledgeGraph-BQzMncp5.js → KnowledgeGraph-DwbTmQb1.js} +1 -1
  38. package/src/assets/web-panel/assets/{Logs-CC5DOKhV.js → Logs-CnNo0hCm.js} +2 -2
  39. package/src/assets/web-panel/assets/MarkdownRenderer-D8_iZief.js +1 -0
  40. package/src/assets/web-panel/assets/{Marketplace-CpYDyy3o.js → Marketplace-Dkz5bv7F.js} +1 -1
  41. package/src/assets/web-panel/assets/{McpTools-DRdAZPMr.js → McpTools-CBtRwDW_.js} +3 -3
  42. package/src/assets/web-panel/assets/{Memory-CBLRr-l8.js → Memory-Y9jnyTb7.js} +2 -2
  43. package/src/assets/web-panel/assets/{MobileBridge-Bnj9veNN.js → MobileBridge-Br1urkOz.js} +1 -1
  44. package/src/assets/web-panel/assets/{MobileProjects-lYFPD24p.js → MobileProjects-DnsyuerX.js} +1 -1
  45. package/src/assets/web-panel/assets/{Mtc-BMU_C9vD.js → Mtc-he3ZzieF.js} +4 -4
  46. package/src/assets/web-panel/assets/{MtcAudit-DQV-zumU.js → MtcAudit-BadphAuN.js} +4 -4
  47. package/src/assets/web-panel/assets/{Multisig-LpqpqV1d.js → Multisig-3_pVLymK.js} +3 -3
  48. package/src/assets/web-panel/assets/{NLProgramming-C4OMklSO.js → NLProgramming-DmtmHfsI.js} +1 -1
  49. package/src/assets/web-panel/assets/{Notes-Cg0QCinP.js → Notes-CE4L2O55.js} +4 -4
  50. package/src/assets/web-panel/assets/{NotificationSettings-amoZoMna.js → NotificationSettings-B7QmfJn9.js} +1 -1
  51. package/src/assets/web-panel/assets/{OrderTableRenderer-CxNvhf5n.js → OrderTableRenderer-O0wRSyJ0.js} +1 -1
  52. package/src/assets/web-panel/assets/{Organization-BetJmyX5.js → Organization-BrlMSsyT.js} +4 -4
  53. package/src/assets/web-panel/assets/{Overflow-DbeoPtVD.js → Overflow-CY4ULPrZ.js} +1 -1
  54. package/src/assets/web-panel/assets/{P2P-B5sitQWT.js → P2P-kIANZYKd.js} +2 -2
  55. package/src/assets/web-panel/assets/{PdhVaultBrowser-AP9SG2ic.js → PdhVaultBrowser-DEgB4rvF.js} +5 -5
  56. package/src/assets/web-panel/assets/{Permissions-Bc7fgNKx.js → Permissions-CWxywRp5.js} +4 -4
  57. package/src/assets/web-panel/assets/{PersonalDataHub-BwdGMcWZ.js → PersonalDataHub-DAg7iCbr.js} +4 -4
  58. package/src/assets/web-panel/assets/{Pipeline-DVuJA9BA.js → Pipeline-Brc6ONnR.js} +1 -1
  59. package/src/assets/web-panel/assets/{Privacy-BGzwOYRG.js → Privacy-CcinYTL8.js} +1 -1
  60. package/src/assets/web-panel/assets/{ProjectInit-BpHcC5br.js → ProjectInit-Bz8XEsom.js} +2 -2
  61. package/src/assets/web-panel/assets/{ProjectSettings-BI5G5gsc.js → ProjectSettings-CsOMlSTZ.js} +2 -2
  62. package/src/assets/web-panel/assets/{Projects-Ce92-l1V.js → Projects-BeSOM6wi.js} +1 -1
  63. package/src/assets/web-panel/assets/{Providers-CRHCcLFS.js → Providers-CeunOQiH.js} +1 -1
  64. package/src/assets/web-panel/assets/{QrScannerModal-qSeg5xag.js → QrScannerModal-CN2a2_Fb.js} +1 -1
  65. package/src/assets/web-panel/assets/{QuickAsk-CA8oSceR.js → QuickAsk-CVeLif3e.js} +1 -1
  66. package/src/assets/web-panel/assets/{Recommend-DMvPodNo.js → Recommend-1k9WOEGM.js} +1 -1
  67. package/src/assets/web-panel/assets/{RemoteSession-BWsapEyN.js → RemoteSession-Q8UCqIMw.js} +2 -2
  68. package/src/assets/web-panel/assets/{Reputation-BZJETVmC.js → Reputation-CkrCgXKM.js} +1 -1
  69. package/src/assets/web-panel/assets/{Row-CUE1OSMp.js → Row-JFdvuTzi.js} +1 -1
  70. package/src/assets/web-panel/assets/{RssFeed-DvMazcUD.js → RssFeed-C74JHCmk.js} +3 -3
  71. package/src/assets/web-panel/assets/{Search-e1c-NXWv.js → Search-DrJiVO1T.js} +1 -1
  72. package/src/assets/web-panel/assets/{Security-Dc9GZsx2.js → Security-BJzNlSJq.js} +3 -3
  73. package/src/assets/web-panel/assets/{Services-AFz6ke-4.js → Services-D4TLMnJm.js} +2 -2
  74. package/src/assets/web-panel/assets/{Skeleton-gow6MYcY.js → Skeleton-cswTDqhh.js} +1 -1
  75. package/src/assets/web-panel/assets/{Skills-h6AxYjUP.js → Skills-Bv0rM1BS.js} +1 -1
  76. package/src/assets/web-panel/assets/{Sla-Cr4CkJ0O.js → Sla-D9rE7hNh.js} +1 -1
  77. package/src/assets/web-panel/assets/SpeechSettings-Bfhvin8B.js +1 -0
  78. package/src/assets/web-panel/assets/{SyncSettings-1t4QZMLW.js → SyncSettings-BwnMG8kq.js} +2 -2
  79. package/src/assets/web-panel/assets/{Tasks-u-DrjLRM.js → Tasks-wJvU24cB.js} +1 -1
  80. package/src/assets/web-panel/assets/{Templates-C0yLUC9b.js → Templates-CZbRU3tN.js} +1 -1
  81. package/src/assets/web-panel/assets/{Tenant-ds1YT5iS.js → Tenant-_jbpFJPZ.js} +1 -1
  82. package/src/assets/web-panel/assets/{Terminal-BoIskW2m.js → Terminal-BzNm5WKZ.js} +2 -2
  83. package/src/assets/web-panel/assets/{TimelineRenderer-BkdVK24X.js → TimelineRenderer-bmybWjuS.js} +1 -1
  84. package/src/assets/web-panel/assets/{Tokens-djyDgmfk.js → Tokens-o1WDcqVQ.js} +1 -1
  85. package/src/assets/web-panel/assets/{Trigger-CYefDS3H.js → Trigger-BB1D6sIB.js} +1 -1
  86. package/src/assets/web-panel/assets/{Trust-CE_dbep_.js → Trust-CLxdCfy2.js} +1 -1
  87. package/src/assets/web-panel/assets/{UkeySign-DwVs_fey.js → UkeySign-B9LS6vS0.js} +1 -1
  88. package/src/assets/web-panel/assets/{VideoEditing-BTUqMHAV.js → VideoEditing-Bg0-wxjz.js} +1 -1
  89. package/src/assets/web-panel/assets/{Wallet-Bu_E7Rrc.js → Wallet-Bw0G2F6P.js} +4 -4
  90. package/src/assets/web-panel/assets/{WebAuthn-DTbre5AB.js → WebAuthn-irEiNY9b.js} +5 -5
  91. package/src/assets/web-panel/assets/{WorkflowEditor-BsBzd3gt.js → WorkflowEditor-Bh08FbJs.js} +1 -1
  92. package/src/assets/web-panel/assets/{chat-tdifQQvu.js → chat-De-FPjVT.js} +1 -1
  93. package/src/assets/web-panel/assets/{colors-D3SNW2Vx.js → colors-ygdyvinU.js} +1 -1
  94. package/src/assets/web-panel/assets/{compact-item-UBlCjrAW.js → compact-item-BQ9jH9KV.js} +1 -1
  95. package/src/assets/web-panel/assets/{createContext-DKsnEnFt.js → createContext-BFuVSyox.js} +1 -1
  96. package/src/assets/web-panel/assets/devWarning-c2I2Rn4_.js +1 -0
  97. package/src/assets/web-panel/assets/{hasIn-BkeySXWe.js → hasIn-i19GtR1P.js} +1 -1
  98. package/src/assets/web-panel/assets/{index-DiDgwRty.js → index-28DjsABm.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-C9ImNw5O.js → index-4HoFz1MA.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-D93iSDUw.js → index-B1IsP_JO.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-DFMrIEIt.js → index-B2LieObB.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-BV2zQteq.js → index-BBYiCI1d.js} +1 -1
  103. package/src/assets/web-panel/assets/{index-D9m1HQzl.js → index-BGMxK155.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-DdyTv6yc.js → index-BKblSCL9.js} +1 -1
  105. package/src/assets/web-panel/assets/{index-CUjyL0ZS.js → index-BKlU5VZy.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-DYFjOyTH.js → index-BLMtCKAY.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-Dg8-Duze.js → index-BPUCvc8i.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-C-KTHSUE.js → index-BVhtukYX.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-D6es7MSG.js → index-BaaydJcC.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-BEiHKah0.js → index-Bhf-MuUh.js} +3 -3
  111. package/src/assets/web-panel/assets/{index-CG_b1xyX.js → index-Bw5pTpnI.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-PWScrdlX.js → index-C61w3omz.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-CZ6JUooI.js → index-CBVcGaxk.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-BVvz3ntc.js → index-CMNjaSir.js} +1 -1
  115. package/src/assets/web-panel/assets/index-CTs4dYcV.js +1 -0
  116. package/src/assets/web-panel/assets/{index-P-ailFQY.js → index-CWfgeaG4.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-DSCiZJXb.js → index-CXrk8OYO.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-D9um0YVl.js → index-CgoSgmjK.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-DfrW-iVs.js → index-CpdXhhMY.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-D5Umd_Z-.js → index-Cq9k4-Ws.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-TLBpgN30.js → index-DAboGZTw.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-6Nvzgytx.js → index-DL7ewjD2.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-BIeFLaMV.js → index-DS1IwwGL.js} +1 -1
  124. package/src/assets/web-panel/assets/{index-DSe_7MSy.js → index-DTY20pWu.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-bOIcWW8F.js → index-DVnFgasM.js} +1 -1
  126. package/src/assets/web-panel/assets/index-DeuvaW15.js +1 -0
  127. package/src/assets/web-panel/assets/{index-DlEIp1gJ.js → index-DgjLaB7k.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-SpQ26gD6.js → index-DlwxUZQL.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-DugZRCiI.js → index-DuuOX5u3.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-CXkn77ZN.js → index-IXkif6J_.js} +1 -1
  131. package/src/assets/web-panel/assets/{index-pgGKNvmm.js → index-We2nK3ju.js} +1 -1
  132. package/src/assets/web-panel/assets/{index-Bw0k3VgD.js → index-_9tUBcLm.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-DtxUSZSS.js → index-cDJsyAkI.js} +1 -1
  134. package/src/assets/web-panel/assets/{index-Cuz2QCFT.js → index-l5-J0jHx.js} +1 -1
  135. package/src/assets/web-panel/assets/{index-DlO6HdD9.js → index-m8waSAyv.js} +1 -1
  136. package/src/assets/web-panel/assets/{index-DD6dD3LV.js → index-vXtH3o6O.js} +1 -1
  137. package/src/assets/web-panel/assets/{initDefaultProps-CVCXG2Hv.js → initDefaultProps-B_EZHeqN.js} +1 -1
  138. package/src/assets/web-panel/assets/{motion-Dv00jw87.js → motion-BrVb_Gy1.js} +1 -1
  139. package/src/assets/web-panel/assets/{move-BFz51iHf.js → move-CKxVRL_J.js} +1 -1
  140. package/src/assets/web-panel/assets/{mtc-parser-BK2woIDE.js → mtc-parser-C80rvQ1J.js} +1 -1
  141. package/src/assets/web-panel/assets/{omit-D2X_Gwoo.js → omit-De5vD7BR.js} +1 -1
  142. package/src/assets/web-panel/assets/{pickAttrs-CLmFyJ1q.js → pickAttrs-BTyEDjth.js} +1 -1
  143. package/src/assets/web-panel/assets/{placementArrow-CCzPddQm.js → placementArrow-BWR94AjR.js} +1 -1
  144. package/src/assets/web-panel/assets/{responsiveObserve-hcm_Zlxd.js → responsiveObserve-1g-Vnibk.js} +1 -1
  145. package/src/assets/web-panel/assets/{slide-BxfZEFVp.js → slide-Dmg6dYuF.js} +1 -1
  146. package/src/assets/web-panel/assets/{statusUtils-kzB9pT-t.js → statusUtils-Ddj6rSab.js} +1 -1
  147. package/src/assets/web-panel/assets/{styleChecker-CDFd7YCI.js → styleChecker-DyP1mPDf.js} +1 -1
  148. package/src/assets/web-panel/assets/{useFlexGapSupport-Czl7NNhS.js → useFlexGapSupport-D3d_0YuY.js} +1 -1
  149. package/src/assets/web-panel/assets/{useFs-y0SAzirG.js → useFs-M3vq-gE2.js} +1 -1
  150. package/src/assets/web-panel/assets/{usePersonalDataHub-BvdPznrA.js → usePersonalDataHub-GtP2TgtK.js} +1 -1
  151. package/src/assets/web-panel/assets/{vnode-D8mNbyZ7.js → vnode-BurE2ATQ.js} +1 -1
  152. package/src/assets/web-panel/assets/{zoom-_hun6w9W.js → zoom-Ch-ViiDe.js} +1 -1
  153. package/src/assets/web-panel/index.html +1 -1
  154. package/src/data/changelog.json +15 -2
  155. package/src/lib/evolution/evolution-evidence-projector.js +48 -10
  156. package/src/lib/evolution/governed-model-turn.js +2 -2
  157. package/src/lib/evolution/local-ui-evolution-deployment.js +2 -2
  158. package/src/lib/evolution/local-ui-evolution-runtime.js +4 -4
  159. package/src/lib/evolution/opaque-hex-id.js +8 -0
  160. package/src/lib/read-file-loop-guard.js +2 -2
  161. package/src/runtime/agent-core.js +28 -19
  162. package/src/assets/web-panel/assets/MarkdownRenderer-5jYM4kYG.js +0 -1
  163. package/src/assets/web-panel/assets/SpeechSettings-Bd5yuBtH.js +0 -1
  164. package/src/assets/web-panel/assets/devWarning-BBnVfJHh.js +0 -1
  165. package/src/assets/web-panel/assets/index-B2w_3mtS.js +0 -1
  166. package/src/assets/web-panel/assets/index-BoHurydC.js +0 -1
@@ -18,6 +18,14 @@ export function formatOpaqueHexId(value) {
18
18
  return groups.join("-");
19
19
  }
20
20
 
21
+ // Keep every hexadecimal nibble while preventing generated identifiers from
22
+ // resembling payment-card or phone numbers across their group separators.
23
+ export function encodeOpaqueHexId(value) {
24
+ return formatOpaqueHexId(value).replace(/[0-9]/gu, (digit) =>
25
+ String.fromCharCode(103 + Number(digit)),
26
+ );
27
+ }
28
+
21
29
  export function formatLocalUiTenantReferenceId(value) {
22
30
  const prefix = "local-ui-";
23
31
  if (typeof value !== "string" || !value.startsWith(prefix)) return value;
@@ -250,7 +250,7 @@ export class ReadFileLoopGuard {
250
250
  if (page.error || !page.readSpan) return page;
251
251
  page.readRecovery = {
252
252
  action: "continued",
253
- requestedRange,
253
+ ...(requestedRange !== undefined ? { requestedRange } : {}),
254
254
  resumedRange: page.range,
255
255
  };
256
256
  newContent = true;
@@ -258,7 +258,7 @@ export class ReadFileLoopGuard {
258
258
  return {
259
259
  path: filePath,
260
260
  fileVersion,
261
- range: page.range,
261
+ ...(page.range !== undefined ? { range: page.range } : {}),
262
262
  hashed: args.hashed === true,
263
263
  alreadyRead: true,
264
264
  contentOmitted: true,
@@ -4593,7 +4593,7 @@ export function editNotebookCell(notebookText, args = {}) {
4593
4593
  const out = (summary, cellId) => ({
4594
4594
  text: JSON.stringify(nb, null, 1) + "\n",
4595
4595
  summary,
4596
- cellId,
4596
+ cellId: cellId ?? null,
4597
4597
  });
4598
4598
  const locate = () => {
4599
4599
  if (args.cell_id != null) {
@@ -5725,8 +5725,17 @@ async function executeToolInner(
5725
5725
  descriptor
5726
5726
  ? {
5727
5727
  name: descriptor.name,
5728
- kind: descriptor.kind || descriptor.category || descriptor.source,
5729
- category: descriptor.category,
5728
+ kind:
5729
+ descriptor.kind ||
5730
+ descriptor.category ||
5731
+ descriptor.telemetry?.category ||
5732
+ descriptor.source ||
5733
+ null,
5734
+ category:
5735
+ descriptor.category ??
5736
+ descriptor.telemetry?.category ??
5737
+ descriptor.kind ??
5738
+ null,
5730
5739
  }
5731
5740
  : null;
5732
5741
  const descriptorPayload = buildPayload(runtimeDescriptor);
@@ -7562,7 +7571,7 @@ async function executeToolInner(
7562
7571
  ? shellOutputPreview(err.stdout, "stdout", 16000)
7563
7572
  : {}),
7564
7573
  ...shellOutputPreview(err.stderr, "stderr", 4000),
7565
- exitCode: err.status,
7574
+ exitCode: err.status ?? null,
7566
7575
  ...(typeof err.code === "string" && err.code
7567
7576
  ? {
7568
7577
  policy: {
@@ -8000,7 +8009,7 @@ async function executeToolInner(
8000
8009
  const available = discoverCommands(cwd).map((c) => ({
8001
8010
  name: c.name,
8002
8011
  scope: c.scope,
8003
- description: c.description || undefined,
8012
+ ...(c.description ? { description: c.description } : {}),
8004
8013
  }));
8005
8014
  return attachDescriptor({
8006
8015
  error: `Unknown slash command "${head}".`,
@@ -8023,7 +8032,7 @@ async function executeToolInner(
8023
8032
  command: macro.name,
8024
8033
  scope: macro.scope,
8025
8034
  expandedPrompt: expanded,
8026
- warnings: warnings && warnings.length ? warnings : undefined,
8035
+ ...(warnings?.length ? { warnings } : {}),
8027
8036
  instructions:
8028
8037
  "The expandedPrompt is the command's instructions. Carry them out " +
8029
8038
  "now using your normal tools.",
@@ -10301,7 +10310,7 @@ async function _executeRunCode(args, cwd) {
10301
10310
  error: `Invalid package name: "${packageName}"`,
10302
10311
  ...classified,
10303
10312
  language: lang,
10304
- scriptPath: persist ? scriptPath : undefined,
10313
+ ...(persist ? { scriptPath } : {}),
10305
10314
  };
10306
10315
  }
10307
10316
 
@@ -10325,11 +10334,11 @@ async function _executeRunCode(args, cwd) {
10325
10334
  return {
10326
10335
  error: (stderr || message).substring(0, 5000),
10327
10336
  stderr: stderr.substring(0, 5000),
10328
- exitCode: err.status,
10337
+ exitCode: err.status ?? null,
10329
10338
  language: lang,
10330
10339
  ...classified,
10331
10340
  hint: autoInstallDisabledHint(packageName),
10332
- scriptPath: persist ? scriptPath : undefined,
10341
+ ...(persist ? { scriptPath } : {}),
10333
10342
  };
10334
10343
  }
10335
10344
  if (!isPackageAllowed(packageName, installPolicy.allowlist)) {
@@ -10342,11 +10351,11 @@ async function _executeRunCode(args, cwd) {
10342
10351
  return {
10343
10352
  error: (stderr || message).substring(0, 5000),
10344
10353
  stderr: stderr.substring(0, 5000),
10345
- exitCode: err.status,
10354
+ exitCode: err.status ?? null,
10346
10355
  language: lang,
10347
10356
  ...classified,
10348
10357
  hint: `Package "${packageName}" is not in runCode.installAllowlist — install it manually or add it to the allowlist.`,
10349
- scriptPath: persist ? scriptPath : undefined,
10358
+ ...(persist ? { scriptPath } : {}),
10350
10359
  };
10351
10360
  }
10352
10361
 
@@ -10398,11 +10407,11 @@ async function _executeRunCode(args, cwd) {
10398
10407
  return {
10399
10408
  error: (stderr || message).substring(0, 5000),
10400
10409
  stderr: stderr.substring(0, 5000),
10401
- exitCode: err.status,
10410
+ exitCode: err.status ?? null,
10402
10411
  language: lang,
10403
10412
  ...classified,
10404
10413
  hint: `Failed to auto-install "${packageName}". ${(installError.stderr || installError.message || "").substring(0, 500)}`,
10405
- scriptPath: persist ? scriptPath : undefined,
10414
+ ...(persist ? { scriptPath } : {}),
10406
10415
  };
10407
10416
  };
10408
10417
 
@@ -10459,7 +10468,7 @@ async function _executeRunCode(args, cwd) {
10459
10468
  language: lang,
10460
10469
  duration: `${retryDuration}ms`,
10461
10470
  autoInstalled: [packageName],
10462
- scriptPath: persist ? scriptPath : undefined,
10471
+ ...(persist ? { scriptPath } : {}),
10463
10472
  };
10464
10473
  } catch (retryErr) {
10465
10474
  rethrowRunCodeSandboxFailure(retryErr);
@@ -10474,12 +10483,12 @@ async function _executeRunCode(args, cwd) {
10474
10483
  return {
10475
10484
  error: (retryStderr || retryMessage).substring(0, 5000),
10476
10485
  stderr: retryStderr.substring(0, 5000),
10477
- exitCode: retryErr.status,
10486
+ exitCode: retryErr.status ?? null,
10478
10487
  language: lang,
10479
10488
  ...retryClassified,
10480
10489
  hint: `Package "${packageName}" was installed, but the script retry failed.`,
10481
10490
  autoInstalled: [packageName],
10482
- scriptPath: persist ? scriptPath : undefined,
10491
+ ...(persist ? { scriptPath } : {}),
10483
10492
  };
10484
10493
  }
10485
10494
  }
@@ -10488,10 +10497,10 @@ async function _executeRunCode(args, cwd) {
10488
10497
  return {
10489
10498
  error: (stderr || message).substring(0, 5000),
10490
10499
  stderr: stderr.substring(0, 5000),
10491
- exitCode: err.status,
10500
+ exitCode: err.status ?? null,
10492
10501
  language: lang,
10493
10502
  ...classified,
10494
- scriptPath: persist ? scriptPath : undefined,
10503
+ ...(persist ? { scriptPath } : {}),
10495
10504
  };
10496
10505
  }
10497
10506
 
@@ -10501,7 +10510,7 @@ async function _executeRunCode(args, cwd) {
10501
10510
  ...boundedCodeOutput(output),
10502
10511
  language: lang,
10503
10512
  duration: `${duration}ms`,
10504
- scriptPath: persist ? scriptPath : undefined,
10513
+ ...(persist ? { scriptPath } : {}),
10505
10514
  };
10506
10515
  } finally {
10507
10516
  // Only clean up if not persisting
@@ -1 +0,0 @@
1
- import{P as c,J as p,b as s}from"./vendor-Bn1JzzAn.js";import{r as a}from"./markdown-Yo_c6Krv.js";import{_ as d}from"./index-BEiHKah0.js";const _={__name:"MarkdownRenderer",props:{content:{type:String,default:""}},setup(t,{expose:o}){o();const e=t,r=s(()=>a(e.content||"")),n={props:e,rendered:r,computed:s,get renderMarkdown(){return a}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}},i=["innerHTML"];function m(t,o,e,r,n,u){return c(),p("div",{class:"markdown-content",innerHTML:r.rendered},null,8,i)}const w=d(_,[["render",m],["__scopeId","data-v-0b0b9f63"],["__file","/tmp/cc-web-panel-8Z3GkH/repo/packages/web-panel/src/components/MarkdownRenderer.vue"]]);export{w as M};
@@ -1 +0,0 @@
1
- import{I as u,J as j,U as b,R as c,c as a,K as i,a as R,r as k,o as F,b as E,P as O,Q as p,S as z,V as C}from"./vendor-Bn1JzzAn.js";import{t as M,_ as Q,b as K,u as T,d as S}from"./index-BEiHKah0.js";import{i as Z,R as q}from"./icons-DG5UD-6K.js";const v=Object.freeze({defaultEngine:"webspeech",webSpeech:{lang:"zh-CN"},whisperAPI:{apiKey:"",baseURL:"https://api.openai.com/v1",model:"whisper-1",language:"zh",timeout:6e4},whisperLocal:{serverUrl:"http://localhost:8002",modelSize:"base",device:"auto",timeout:12e4}}),X=["webspeech","whisper-api","whisper-local"];function H(g,t){if(typeof g=="number"&&Number.isFinite(g))return g;const s=parseFloat(g);return Number.isFinite(s)?s:t}function Y(g){return JSON.parse(JSON.stringify(g))}function B(g){const t=Y(v);if(!g)return t;const s=g.trim();if(!s||/key not found/i.test(s))return t;const e=M(s);if(!e||typeof e!="object"||Array.isArray(e))return t;if(typeof e.defaultEngine=="string"&&X.includes(e.defaultEngine)&&(t.defaultEngine=e.defaultEngine),e.webSpeech&&typeof e.webSpeech=="object"&&typeof e.webSpeech.lang=="string"&&e.webSpeech.lang&&(t.webSpeech.lang=e.webSpeech.lang),e.whisperAPI&&typeof e.whisperAPI=="object"){const l=e.whisperAPI;typeof l.apiKey=="string"&&(t.whisperAPI.apiKey=l.apiKey),typeof l.baseURL=="string"&&l.baseURL&&(t.whisperAPI.baseURL=l.baseURL),typeof l.model=="string"&&l.model&&(t.whisperAPI.model=l.model),typeof l.language=="string"&&l.language&&(t.whisperAPI.language=l.language),l.timeout!==void 0&&(t.whisperAPI.timeout=H(l.timeout,v.whisperAPI.timeout))}if(e.whisperLocal&&typeof e.whisperLocal=="object"){const l=e.whisperLocal;typeof l.serverUrl=="string"&&l.serverUrl&&(t.whisperLocal.serverUrl=l.serverUrl),typeof l.modelSize=="string"&&l.modelSize&&(t.whisperLocal.modelSize=l.modelSize),typeof l.device=="string"&&l.device&&(t.whisperLocal.device=l.device),l.timeout!==void 0&&(t.whisperLocal.timeout=H(l.timeout,v.whisperLocal.timeout))}return t}function J(g,t){const s={};g.defaultEngine!==t.defaultEngine&&(s.defaultEngine=t.defaultEngine);for(const e of["webSpeech","whisperAPI","whisperLocal"]){const l=g[e]||{},w=t[e]||{};for(const o of Object.keys(v[e]))l[o]!==w[o]&&(s[`${e}.${o}`]=w[o])}return s}const $={__name:"SpeechSettings",setup(g,{expose:t}){t();const{t:s}=K(),e=T(),l=k(!1),w=k(!1),o=R(JSON.parse(JSON.stringify(v))),h=k(JSON.parse(JSON.stringify(v))),y=E(()=>[{value:"webspeech",label:s("speechSettings.engineOptions.webspeech")},{value:"whisper-api",label:s("speechSettings.engineOptions.whisper-api")},{value:"whisper-local",label:s("speechSettings.engineOptions.whisper-local")}]),f=E(()=>{const d=`speechSettings.engineHint.${o.defaultEngine}`,n=s(d);return n===d?"":n}),_=E(()=>Object.keys(J(h.value,o)).length>0);function m(d){o.defaultEngine=d.defaultEngine,Object.assign(o.webSpeech,d.webSpeech),Object.assign(o.whisperAPI,d.whisperAPI),Object.assign(o.whisperLocal,d.whisperLocal),h.value=JSON.parse(JSON.stringify(d))}async function r(){l.value=!0;try{const{output:d}=await e.execute("config get speech",1e4);m(B(d))}catch(d){/key not found/i.test(d.message)?m(JSON.parse(JSON.stringify(v))):S.error(s("speechSettings.messages.loadFailed",{err:d.message}))}finally{l.value=!1}}function N(){m(h.value)}async function L(){const d=J(h.value,o),n=Object.keys(d);if(n.length===0){S.info(s("speechSettings.messages.noChanges"));return}w.value=!0;let P=0,I=0;for(const A of n){const D=d[A],V=String(D).replace(/"/g,'\\"'),G=`config set speech.${A} "${V}"`;try{const{output:U,exitCode:W}=await e.execute(G,1e4);W!==0||/error|failed|失败/i.test(U)?(I++,S.error(s("speechSettings.messages.saveItemFailed",{key:A,err:U.slice(0,80)}))):P++}catch(U){I++,S.error(s("speechSettings.messages.saveItemFailed",{key:A,err:U.message}))}}w.value=!1,I===0?(S.success(s("speechSettings.messages.saveOk",{count:P})),h.value=JSON.parse(JSON.stringify(o))):P>0&&(S.warning(s("speechSettings.messages.savePartial",{ok:P,fail:I})),await r())}F(()=>{r()});const x={t:s,ws:e,loading:l,saving:w,form:o,baseline:h,engineOptions:y,engineHint:f,isDirty:_,applyConfig:m,loadConfig:r,resetForm:N,saveConfig:L,reactive:R,ref:k,computed:E,onMounted:F,get useI18n(){return K},get ReloadOutlined(){return q},get SoundOutlined(){return Z},get message(){return S},get useWsStore(){return T},get parseSpeechConfig(){return B},get diffSpeechConfig(){return J},get SPEECH_DEFAULTS(){return v}};return Object.defineProperty(x,"__isScriptSetup",{enumerable:!1,value:!0}),x}},ee={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},te={class:"page-title"},ae={class:"page-sub"},ie={style:{color:"var(--text-primary)"}},le={style:{color:"var(--text-muted)","font-size":"11px"}},ne={style:{color:"var(--text-primary)"}},se={style:{color:"var(--text-primary)"}},oe={style:{color:"var(--text-primary)"}},re={style:{display:"flex",gap:"12px","align-items":"center"}},de={key:0,style:{color:"#faad14","font-size":"12px"}};function pe(g,t,s,e,l,w){const o=u("a-button"),h=u("a-alert"),y=u("a-select"),f=u("a-form-item"),_=u("a-form"),m=u("a-card"),r=u("a-select-option"),N=u("a-input-password"),L=u("a-input"),x=u("a-input-number"),d=u("a-spin");return O(),j("div",null,[b("div",ee,[b("div",null,[b("h2",te,c(e.t("speechSettings.title")),1),b("p",ae,c(e.t("speechSettings.subtitle")),1)]),a(o,{loading:e.loading,onClick:e.loadConfig},{icon:i(()=>[a(e.ReloadOutlined)]),default:i(()=>[p(" "+c(e.t("speechSettings.refresh")),1)]),_:1},8,["loading"])]),a(h,{message:e.t("speechSettings.alert.message"),description:e.t("speechSettings.alert.description"),type:"info","show-icon":"",closable:"",style:{"margin-bottom":"16px"}},null,8,["message","description"]),a(d,{spinning:e.loading},{default:i(()=>[a(m,{style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",ie,[a(e.SoundOutlined,{style:{"margin-right":"8px"}}),p(c(e.t("speechSettings.engineCardTitle")),1)])]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.engineLabel")},{extra:i(()=>[b("span",le,c(e.engineHint),1)]),default:i(()=>[a(y,{value:e.form.defaultEngine,"onUpdate:value":t[0]||(t[0]=n=>e.form.defaultEngine=n),style:{width:"320px"},disabled:e.saving,options:e.engineOptions},null,8,["value","disabled","options"])]),_:1},8,["label"])]),_:1})]),_:1}),e.form.defaultEngine==="webspeech"?(O(),z(m,{key:0,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",ne,c(e.t("speechSettings.webSpeech.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.webSpeech.langLabel")},{default:i(()=>[a(y,{value:e.form.webSpeech.lang,"onUpdate:value":t[1]||(t[1]=n=>e.form.webSpeech.lang=n),style:{width:"240px"},disabled:e.saving},{default:i(()=>[a(r,{value:"zh-CN"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.zh-CN")),1)]),_:1}),a(r,{value:"zh-TW"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.zh-TW")),1)]),_:1}),a(r,{value:"en-US"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.en-US")),1)]),_:1}),a(r,{value:"en-GB"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.en-GB")),1)]),_:1}),a(r,{value:"ja-JP"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.ja-JP")),1)]),_:1}),a(r,{value:"ko-KR"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.ko-KR")),1)]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),e.form.defaultEngine==="whisper-api"?(O(),z(m,{key:1,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",se,c(e.t("speechSettings.whisperAPI.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.whisperAPI.apiKeyLabel")},{default:i(()=>[a(N,{value:e.form.whisperAPI.apiKey,"onUpdate:value":t[2]||(t[2]=n=>e.form.whisperAPI.apiKey=n),placeholder:"sk-...",disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.baseUrlLabel")},{default:i(()=>[a(L,{value:e.form.whisperAPI.baseURL,"onUpdate:value":t[3]||(t[3]=n=>e.form.whisperAPI.baseURL=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.modelLabel")},{default:i(()=>[a(L,{value:e.form.whisperAPI.model,"onUpdate:value":t[4]||(t[4]=n=>e.form.whisperAPI.model=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.languageLabel")},{default:i(()=>[a(L,{value:e.form.whisperAPI.language,"onUpdate:value":t[5]||(t[5]=n=>e.form.whisperAPI.language=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.timeoutLabel")},{default:i(()=>[a(x,{value:e.form.whisperAPI.timeout,"onUpdate:value":t[6]||(t[6]=n=>e.form.whisperAPI.timeout=n),min:1e3,max:6e5,step:1e3,style:{width:"200px"},disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),e.form.defaultEngine==="whisper-local"?(O(),z(m,{key:2,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",oe,c(e.t("speechSettings.whisperLocal.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.whisperLocal.serverUrlLabel")},{default:i(()=>[a(L,{value:e.form.whisperLocal.serverUrl,"onUpdate:value":t[7]||(t[7]=n=>e.form.whisperLocal.serverUrl=n),placeholder:"http://localhost:8002",disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.modelSizeLabel")},{default:i(()=>[a(y,{value:e.form.whisperLocal.modelSize,"onUpdate:value":t[8]||(t[8]=n=>e.form.whisperLocal.modelSize=n),style:{width:"180px"},disabled:e.saving},{default:i(()=>[a(r,{value:"tiny"},{default:i(()=>[...t[11]||(t[11]=[p("tiny",-1)])]),_:1}),a(r,{value:"base"},{default:i(()=>[...t[12]||(t[12]=[p("base",-1)])]),_:1}),a(r,{value:"small"},{default:i(()=>[...t[13]||(t[13]=[p("small",-1)])]),_:1}),a(r,{value:"medium"},{default:i(()=>[...t[14]||(t[14]=[p("medium",-1)])]),_:1}),a(r,{value:"large"},{default:i(()=>[...t[15]||(t[15]=[p("large",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.deviceLabel")},{default:i(()=>[a(y,{value:e.form.whisperLocal.device,"onUpdate:value":t[9]||(t[9]=n=>e.form.whisperLocal.device=n),style:{width:"180px"},disabled:e.saving},{default:i(()=>[a(r,{value:"auto"},{default:i(()=>[...t[16]||(t[16]=[p("auto",-1)])]),_:1}),a(r,{value:"cpu"},{default:i(()=>[...t[17]||(t[17]=[p("cpu",-1)])]),_:1}),a(r,{value:"cuda"},{default:i(()=>[...t[18]||(t[18]=[p("cuda",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.timeoutLabel")},{default:i(()=>[a(x,{value:e.form.whisperLocal.timeout,"onUpdate:value":t[10]||(t[10]=n=>e.form.whisperLocal.timeout=n),min:1e3,max:6e5,step:1e3,style:{width:"200px"},disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),b("div",re,[a(o,{onClick:e.resetForm,disabled:e.saving||e.loading},{default:i(()=>[p(c(e.t("speechSettings.buttons.reset")),1)]),_:1},8,["disabled"]),a(o,{type:"primary",loading:e.saving,disabled:!e.isDirty,onClick:e.saveConfig},{default:i(()=>[p(c(e.t("speechSettings.buttons.save")),1)]),_:1},8,["loading","disabled"]),e.isDirty?(O(),j("span",de,c(e.t("speechSettings.dirtyHint")),1)):C("v-if",!0)])]),_:1},8,["spinning"])])}const ue=Q($,[["render",pe],["__scopeId","data-v-2b18ccaa"],["__file","/tmp/cc-web-panel-8Z3GkH/repo/packages/web-panel/src/views/SpeechSettings.vue"]]);export{ue as default};
@@ -1 +0,0 @@
1
- import{Q as r}from"./index-BEiHKah0.js";const o=((n,a,e)=>{r(n,`[ant-design-vue: ${a}] ${e}`)});export{o as d};
@@ -1 +0,0 @@
1
- import{C as o}from"./Col-Bk1mJKDZ.js";import{a0 as t}from"./index-BEiHKah0.js";import"./vendor-Bn1JzzAn.js";import"./index-6Nvzgytx.js";import"./icons-DG5UD-6K.js";const s=t(o);export{s as default};
@@ -1 +0,0 @@
1
- import{A as o}from"./Row-CUE1OSMp.js";import{a0 as t}from"./index-BEiHKah0.js";import"./vendor-Bn1JzzAn.js";import"./responsiveObserve-hcm_Zlxd.js";import"./useFlexGapSupport-Czl7NNhS.js";import"./styleChecker-CDFd7YCI.js";import"./index-6Nvzgytx.js";import"./icons-DG5UD-6K.js";const l=t(o);export{l as default};