@lawpath-tech/openclaw 2026.2.21-11 → 2026.2.21-13
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.
- package/dist/{agents-DBULaIPd.js → agents-Acsw6oEr.js} +4 -4
- package/dist/{agents.config-Cd3-RJ-K.js → agents.config-BAILtL0e.js} +1 -1
- package/dist/{agents.config-DANgtZcG.js → agents.config-DA4Kt9C5.js} +1 -1
- package/dist/{audio-preflight-Bqg8wRF0.js → audio-preflight-B45_FIbf.js} +4 -4
- package/dist/{audio-preflight-CSF2zAiB.js → audio-preflight-C56sndLt.js} +3 -3
- package/dist/{audio-preflight-DUN77LMG.js → audio-preflight-DTxmK1ti.js} +3 -3
- package/dist/{audio-preflight-DESlWRvS.js → audio-preflight-UmMU18Rf.js} +3 -3
- package/dist/{auth-choice-Bx0wfZkb.js → auth-choice-B0ExtimG.js} +1 -1
- package/dist/{auth-choice-EsB1VBYk.js → auth-choice-Cc9nPCSG.js} +1 -1
- package/dist/{banner-DSmZ1r91.js → banner-l8hdGVT6.js} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +6 -6
- package/dist/bundled/session-memory/handler.js +6 -6
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-tp4SdwWn.js → channel-options-BOgY_qkz.js} +1 -1
- package/dist/{channel-options-BFQz6sGG.js → channel-options-DU0lH77F.js} +1 -1
- package/dist/{channel-web-BLVzXq0y.js → channel-web-Bn_o0ClJ.js} +2 -2
- package/dist/{channels-cli-BfRfj__G.js → channels-cli-B8iPHVyY.js} +8 -8
- package/dist/{channels-cli-DZWnK7L3.js → channels-cli-HyoLT0X_.js} +8 -8
- package/dist/{chrome-CnYcE5rb.js → chrome-DBIqeaeX.js} +7 -7
- package/dist/{cli-BMvkWAfY.js → cli-BjW27QBR.js} +5 -5
- package/dist/{cli-B5YSj6kb.js → cli-CB8wKUFa.js} +5 -5
- package/dist/{command-registry-DTFv7rlA.js → command-registry-43P-_3eW.js} +9 -9
- package/dist/{completion-cli-CJW4fXUd.js → completion-cli-BrkMcxdh.js} +1 -1
- package/dist/{completion-cli-BkAlGttV.js → completion-cli-CSoJQQhc.js} +2 -2
- package/dist/{config-cli-C0De5m2w.js → config-cli-CV3y1IAq.js} +1 -1
- package/dist/{config-cli-BBaQ2Rhl.js → config-cli-Cuv_T0Jj.js} +1 -1
- package/dist/{configure-DC4J1Gf2.js → configure-80FWz9jT.js} +3 -3
- package/dist/{configure-_wGqIyys.js → configure-BHGABgNw.js} +3 -3
- package/dist/control-ui/assets/{index-Cx1_w3YP.js → index-BfDl8X4O.js} +2 -2
- package/dist/control-ui/assets/index-BfDl8X4O.js.map +1 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/{deliver-D22uPds_.js → deliver-BLkQFTzD.js} +11 -6
- package/dist/{deliver-D3HyJhTX.js → deliver-BTK-PB1e.js} +11 -6
- package/dist/{deliver-Ct_AlJg5.js → deliver-J2cVd3TS.js} +11 -6
- package/dist/{deliver-BAjdrEoI.js → deliver-meQdcFaA.js} +11 -6
- package/dist/{doctor-completion-Cr7pfPFT.js → doctor-completion-CszISgAZ.js} +1 -1
- package/dist/{doctor-completion-C9EazQOq.js → doctor-completion-xnrUSWAw.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/extensionAPI.js +5 -5
- package/dist/{gateway-cli-CUZeW2km.js → gateway-cli-1XLrLurk.js} +15 -14
- package/dist/{gateway-cli-DyK2K5AK.js → gateway-cli-ElJ71Lxb.js} +15 -14
- package/dist/{health-DB9FsqfO.js → health-BfWYn33I.js} +2 -2
- package/dist/{health-C1FEsrl3.js → health-DEibfTDK.js} +2 -2
- package/dist/{hooks-cli-ChPkWEjM.js → hooks-cli-D-nL8J6w.js} +6 -6
- package/dist/{hooks-cli-CrVA4n9U.js → hooks-cli-wQnxbc8T.js} +6 -6
- package/dist/{image-CvBYo9Bu.js → image-C8HOu4vb.js} +2 -2
- package/dist/{image-paXd6zl5.js → image-Cj9tfO74.js} +2 -2
- package/dist/{image-D-DzmVjC.js → image-Dozs-5EW.js} +2 -2
- package/dist/{image-DfOLBle4.js → image-DuT8yGCI.js} +2 -2
- package/dist/index.js +10 -10
- package/dist/llm-slug-generator.js +6 -6
- package/dist/{models-D1lcFJXE.js → models-DFRcZ415.js} +2 -2
- package/dist/{models-cli-B-AmUt5Z.js → models-cli-CwEUrjU_.js} +7 -7
- package/dist/{models-cli-B5hzd5e-.js → models-cli-t1rYl_DG.js} +6 -6
- package/dist/{onboard-BN9SewlV.js → onboard-BgexsYYf.js} +2 -2
- package/dist/{onboard-Bv6hNNhV.js → onboard-CE7hjJi-.js} +2 -2
- package/dist/{onboard-channels-DtiMw5DM.js → onboard-channels-Cb8T_ers.js} +1 -1
- package/dist/{onboard-channels-B9_hnbkl.js → onboard-channels-vQihczqp.js} +1 -1
- package/dist/{onboarding-BIFLJGsw.js → onboarding-BIEWyZPf.js} +3 -3
- package/dist/{onboarding-wkMK4RdO.js → onboarding-CX9LQxj2.js} +3 -3
- package/dist/{onboarding.finalize-C5_35yUD.js → onboarding.finalize-BUNWcC3i.js} +11 -11
- package/dist/{onboarding.finalize-Cq_uG8Il.js → onboarding.finalize-COQ2A83D.js} +10 -10
- package/dist/{pi-embedded-26dX6W8j.js → pi-embedded-BywyyGi2.js} +16 -12
- package/dist/{pi-embedded-Bt3VYQ6Q.js → pi-embedded-KtxTxaXU.js} +21 -17
- package/dist/{pi-embedded-helpers-ISSMvBMe.js → pi-embedded-helpers-B6070OEj.js} +44 -12
- package/dist/{pi-embedded-helpers-Cx3WmubG.js → pi-embedded-helpers-C4Annkh_.js} +40 -8
- package/dist/{pi-embedded-helpers-DOmGm3QX.js → pi-embedded-helpers-C_U_c_EU.js} +40 -8
- package/dist/{pi-embedded-helpers-DcmNfC3F.js → pi-embedded-helpers-Dl_FdUMU.js} +40 -8
- package/dist/{plugin-registry-CktL7kDf.js → plugin-registry-BrN1y1ig.js} +1 -1
- package/dist/{plugin-registry-DmGXbeyU.js → plugin-registry-CtLhKV8N.js} +1 -1
- package/dist/plugin-sdk/agents/pi-embedded-helpers/errors.d.ts +1 -0
- package/dist/plugin-sdk/{audio-preflight-DTmPFRJ7.js → audio-preflight-zFFuY6Bd.js} +3 -3
- package/dist/plugin-sdk/auto-reply/reply/reply-dispatcher.d.ts +1 -0
- package/dist/plugin-sdk/{channel-web-DBdAyFSo.js → channel-web-DfA1sgI9.js} +3 -3
- package/dist/plugin-sdk/commands/agent/types.d.ts +2 -0
- package/dist/plugin-sdk/{deliver-DvIFVzAj.js → deliver-D4QMj1KQ.js} +11 -6
- package/dist/plugin-sdk/{image-p_nEsuRt.js → image-Bu6pmW6i.js} +2 -2
- package/dist/plugin-sdk/index.js +6 -6
- package/dist/plugin-sdk/{pi-embedded-helpers-jfXMARle.js → pi-embedded-helpers-DBCtPcLq.js} +40 -8
- package/dist/plugin-sdk/{reply-CvZLZLYC.js → reply-Dl9JHnGW.js} +16 -12
- package/dist/plugin-sdk/{runner-B5paaQ1f.js → runner-DvYaPG7_.js} +1 -1
- package/dist/plugin-sdk/{web-xeAk5-Yr.js → web-BFEz8bk-.js} +6 -6
- package/dist/{plugins-cli-BB_bSrdc.js → plugins-cli-ByB9fyeR.js} +6 -6
- package/dist/{plugins-cli-B8LToOz_.js → plugins-cli-CP_m4f99.js} +6 -6
- package/dist/{program-CUQ4Dd4D.js → program-B51CfijA.js} +11 -11
- package/dist/{program-context-BL-eWj4d.js → program-context-DFA11MB9.js} +18 -18
- package/dist/{prompt-select-styled-Dw_5UkIh.js → prompt-select-styled-kNFZiNLD.js} +4 -4
- package/dist/{prompt-select-styled-OmW6kagQ.js → prompt-select-styled-y8kycqep.js} +4 -4
- package/dist/{provider-auth-helpers-CUdqrUdl.js → provider-auth-helpers-AORB3hk9.js} +1 -1
- package/dist/{provider-auth-helpers-Dj1zmS_9.js → provider-auth-helpers-TZ3D-fXq.js} +1 -1
- package/dist/{push-apns-BLl3-YNl.js → push-apns-BTcu7pip.js} +1 -1
- package/dist/{push-apns-DzvwLYLa.js → push-apns-CSSSwhDY.js} +1 -1
- package/dist/{pw-ai-MQ_9Ke4J.js → pw-ai-BW_4y-Af.js} +1 -1
- package/dist/{register.agent-DL4xNjz5.js → register.agent-C4G2zuxZ.js} +9 -9
- package/dist/{register.agent-DdcJgcQB.js → register.agent-xMmK5W-R.js} +10 -10
- package/dist/{register.configure-CahYnp2K.js → register.configure-CeFYJnjt.js} +10 -10
- package/dist/{register.configure-BOUoS25O.js → register.configure-aXmgTNuB.js} +10 -10
- package/dist/{register.maintenance-BBtBnw4T.js → register.maintenance-BD4w3mhl.js} +12 -12
- package/dist/{register.maintenance-CA0hn73s.js → register.maintenance-h74is0GZ.js} +11 -11
- package/dist/{register.message-C38olCA-.js → register.message-42he49is.js} +6 -6
- package/dist/{register.message-Bd2B4_gS.js → register.message-Cx6UTHOb.js} +6 -6
- package/dist/{register.onboard-CBcolfXI.js → register.onboard-CgQM-nZ7.js} +8 -8
- package/dist/{register.onboard-DmsHuosI.js → register.onboard-CnByKpp_.js} +8 -8
- package/dist/{register.setup-sWIbdPfJ.js → register.setup-B4qai0DZ.js} +8 -8
- package/dist/{register.setup-V09teeGQ.js → register.setup-CkW4jPu_.js} +8 -8
- package/dist/{register.status-health-sessions-BrlTrkeO.js → register.status-health-sessions-DHHGaJsX.js} +7 -7
- package/dist/{register.status-health-sessions-BHSA4iZL.js → register.status-health-sessions-DNqvYowR.js} +7 -7
- package/dist/{register.subclis-CNgqotfk.js → register.subclis-CSqyRt2t.js} +10 -10
- package/dist/{reply-BpeNwiEB.js → reply-V8UXM1XU.js} +16 -12
- package/dist/{run-main-ClMNdr5y.js → run-main-B3sc7X8M.js} +18 -18
- package/dist/{runner-Be7-7BcC.js → runner-CbkB3vpb.js} +1 -1
- package/dist/{runner-B9g6ervv.js → runner-D4U7RPrD.js} +1 -1
- package/dist/{runner-BIWQkeih.js → runner-DkWpm1Ly.js} +1 -1
- package/dist/{runner-D_-7GNC1.js → runner-DzmbTP-U.js} +1 -1
- package/dist/{server-node-events-C0ZzfaPA.js → server-node-events-D5Fen-q2.js} +6 -6
- package/dist/{server-node-events-CDra4Gjc.js → server-node-events-Dm6MSKk0.js} +6 -6
- package/dist/{session-dirs-D6iw22_Q.js → session-dirs-BmVdF2KM.js} +1 -1
- package/dist/{session-dirs-Cwn4le95.js → session-dirs-CRnGB63U.js} +1 -1
- package/dist/{status-CCPKZiSX.js → status-2w8d47j-.js} +2 -2
- package/dist/{status-DFs0LUlA.js → status-Bi_g-8aS.js} +1 -1
- package/dist/{status-CGTYQeqD.js → status-BjjDHl4v.js} +1 -1
- package/dist/{status-Rw3st2w_.js → status-DQEnKbht.js} +2 -2
- package/dist/{subagent-registry-C7ua7m8M.js → subagent-registry-DGNGenUN.js} +16 -12
- package/dist/{tui-C8TIc36Z.js → tui-BPSckkGa.js} +1 -1
- package/dist/{tui-dDj0kI9K.js → tui-Dn3NzP7B.js} +1 -1
- package/dist/{tui-cli-B1R2UxjK.js → tui-cli-DYhd0RT6.js} +2 -2
- package/dist/{tui-cli-DXNQuXf_.js → tui-cli-Dscc8usx.js} +2 -2
- package/dist/{update-cli-BxaSmz5G.js → update-cli-CLaJrUF4.js} +11 -11
- package/dist/{update-cli-DEMP1mj0.js → update-cli-DHAT02hj.js} +12 -12
- package/dist/{web-gSQnImv2.js → web-BpYdg2HU.js} +6 -6
- package/dist/{web-jg0rymdq.js → web-Ciz1i7yI.js} +6 -6
- package/dist/{web-D1CVLSCy.js → web-H55ayBNa.js} +5 -5
- package/dist/{web-YTTXENUe.js → web-aUEiU7C4.js} +5 -5
- package/package.json +1 -1
- package/dist/control-ui/assets/index-Cx1_w3YP.js.map +0 -1
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<link rel="icon" type="image/svg+xml" href="./favicon.svg" />
|
|
9
9
|
<link rel="icon" type="image/png" sizes="32x32" href="./favicon-32.png" />
|
|
10
10
|
<link rel="apple-touch-icon" sizes="180x180" href="./apple-touch-icon.png" />
|
|
11
|
-
<script type="module" crossorigin src="./assets/index-
|
|
11
|
+
<script type="module" crossorigin src="./assets/index-BfDl8X4O.js"></script>
|
|
12
12
|
<link rel="stylesheet" crossorigin href="./assets/index-DNdFNvs2.css">
|
|
13
13
|
</head>
|
|
14
14
|
<body>
|
|
@@ -5,7 +5,7 @@ import { c as getActivePluginRegistry, v as createInternalHookEvent, y as trigge
|
|
|
5
5
|
import { t as createSubsystemLogger } from "./subsystem-SGZR4BSj.js";
|
|
6
6
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-DnMmat9I.js";
|
|
7
7
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DjlLrXSL.js";
|
|
8
|
-
import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-
|
|
8
|
+
import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-Dl_FdUMU.js";
|
|
9
9
|
import { d as getChannelDock } from "./thinking-CNzwETSv.js";
|
|
10
10
|
import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-B0zJTLYu.js";
|
|
11
11
|
import { n as resolveMarkdownTableMode } from "./markdown-tables-B4egH__c.js";
|
|
@@ -412,8 +412,13 @@ function getGlobalHookRunner() {
|
|
|
412
412
|
//#region src/utils/directive-tags.ts
|
|
413
413
|
const AUDIO_TAG_RE = /\[\[\s*audio_as_voice\s*\]\]/gi;
|
|
414
414
|
const REPLY_TAG_RE = /\[\[\s*(?:reply_to_current|reply_to\s*:\s*([^\]\n]+))\s*\]\]/gi;
|
|
415
|
+
function replacementPreservesWordBoundary(source, offset, length) {
|
|
416
|
+
const before = source[offset - 1];
|
|
417
|
+
const after = source[offset + length];
|
|
418
|
+
return before && after && !/\s/u.test(before) && !/\s/u.test(after) ? " " : "";
|
|
419
|
+
}
|
|
415
420
|
function normalizeDirectiveWhitespace(text) {
|
|
416
|
-
return text.replace(/[ \t]
|
|
421
|
+
return text.replace(/\r\n/g, "\n").replace(/([^\s])[ \t]{2,}([^\s])/g, "$1 $2").replace(/^\n+/, "").replace(/^[ \t](?=\S)/, "").replace(/[ \t]+\n/g, "\n").replace(/\n{3,}/g, "\n\n").trimEnd();
|
|
417
422
|
}
|
|
418
423
|
function parseInlineDirectives(text, options = {}) {
|
|
419
424
|
const { currentMessageId, stripAudioTag = true, stripReplyTags = true } = options;
|
|
@@ -430,19 +435,19 @@ function parseInlineDirectives(text, options = {}) {
|
|
|
430
435
|
let hasReplyTag = false;
|
|
431
436
|
let sawCurrent = false;
|
|
432
437
|
let lastExplicitId;
|
|
433
|
-
cleaned = cleaned.replace(AUDIO_TAG_RE, (match) => {
|
|
438
|
+
cleaned = cleaned.replace(AUDIO_TAG_RE, (match, offset, source) => {
|
|
434
439
|
audioAsVoice = true;
|
|
435
440
|
hasAudioTag = true;
|
|
436
|
-
return stripAudioTag ?
|
|
441
|
+
return stripAudioTag ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
437
442
|
});
|
|
438
|
-
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw) => {
|
|
443
|
+
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw, offset, source) => {
|
|
439
444
|
hasReplyTag = true;
|
|
440
445
|
if (idRaw === void 0) sawCurrent = true;
|
|
441
446
|
else {
|
|
442
447
|
const id = idRaw.trim();
|
|
443
448
|
if (id) lastExplicitId = id;
|
|
444
449
|
}
|
|
445
|
-
return stripReplyTags ?
|
|
450
|
+
return stripReplyTags ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
446
451
|
});
|
|
447
452
|
cleaned = normalizeDirectiveWhitespace(cleaned);
|
|
448
453
|
const replyToId = lastExplicitId ?? (sawCurrent ? currentMessageId?.trim() || void 0 : void 0);
|
|
@@ -5,7 +5,7 @@ import { c as getActivePluginRegistry, v as createInternalHookEvent, x as trigge
|
|
|
5
5
|
import { t as createSubsystemLogger } from "./subsystem-BF9jT_Nw.js";
|
|
6
6
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-B-c56SkM.js";
|
|
7
7
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-C-vY-rpl.js";
|
|
8
|
-
import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-
|
|
8
|
+
import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-B6070OEj.js";
|
|
9
9
|
import { d as getChannelDock } from "./thinking-4v3LHcV9.js";
|
|
10
10
|
import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-fZrBDWYg.js";
|
|
11
11
|
import { n as resolveMarkdownTableMode } from "./markdown-tables-_MkcNWbe.js";
|
|
@@ -412,8 +412,13 @@ function getGlobalHookRunner() {
|
|
|
412
412
|
//#region src/utils/directive-tags.ts
|
|
413
413
|
const AUDIO_TAG_RE = /\[\[\s*audio_as_voice\s*\]\]/gi;
|
|
414
414
|
const REPLY_TAG_RE = /\[\[\s*(?:reply_to_current|reply_to\s*:\s*([^\]\n]+))\s*\]\]/gi;
|
|
415
|
+
function replacementPreservesWordBoundary(source, offset, length) {
|
|
416
|
+
const before = source[offset - 1];
|
|
417
|
+
const after = source[offset + length];
|
|
418
|
+
return before && after && !/\s/u.test(before) && !/\s/u.test(after) ? " " : "";
|
|
419
|
+
}
|
|
415
420
|
function normalizeDirectiveWhitespace(text) {
|
|
416
|
-
return text.replace(/[ \t]
|
|
421
|
+
return text.replace(/\r\n/g, "\n").replace(/([^\s])[ \t]{2,}([^\s])/g, "$1 $2").replace(/^\n+/, "").replace(/^[ \t](?=\S)/, "").replace(/[ \t]+\n/g, "\n").replace(/\n{3,}/g, "\n\n").trimEnd();
|
|
417
422
|
}
|
|
418
423
|
function parseInlineDirectives(text, options = {}) {
|
|
419
424
|
const { currentMessageId, stripAudioTag = true, stripReplyTags = true } = options;
|
|
@@ -430,19 +435,19 @@ function parseInlineDirectives(text, options = {}) {
|
|
|
430
435
|
let hasReplyTag = false;
|
|
431
436
|
let sawCurrent = false;
|
|
432
437
|
let lastExplicitId;
|
|
433
|
-
cleaned = cleaned.replace(AUDIO_TAG_RE, (match) => {
|
|
438
|
+
cleaned = cleaned.replace(AUDIO_TAG_RE, (match, offset, source) => {
|
|
434
439
|
audioAsVoice = true;
|
|
435
440
|
hasAudioTag = true;
|
|
436
|
-
return stripAudioTag ?
|
|
441
|
+
return stripAudioTag ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
437
442
|
});
|
|
438
|
-
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw) => {
|
|
443
|
+
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw, offset, source) => {
|
|
439
444
|
hasReplyTag = true;
|
|
440
445
|
if (idRaw === void 0) sawCurrent = true;
|
|
441
446
|
else {
|
|
442
447
|
const id = idRaw.trim();
|
|
443
448
|
if (id) lastExplicitId = id;
|
|
444
449
|
}
|
|
445
|
-
return stripReplyTags ?
|
|
450
|
+
return stripReplyTags ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
446
451
|
});
|
|
447
452
|
cleaned = normalizeDirectiveWhitespace(cleaned);
|
|
448
453
|
const replyToId = lastExplicitId ?? (sawCurrent ? currentMessageId?.trim() || void 0 : void 0);
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { g as normalizeOptionalAccountId, h as normalizeAccountId } from "./session-key-DCt45XZa.js";
|
|
3
3
|
import { C as createInternalHookEvent, T as triggerInternalHook, d as getActivePluginRegistry } from "./registry-Dygi7Azw.js";
|
|
4
4
|
import { t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
|
|
5
|
-
import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-
|
|
5
|
+
import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-C4Annkh_.js";
|
|
6
6
|
import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-BXbSUMYn.js";
|
|
7
7
|
import { t as getChannelDock } from "./dock-BGIuBSsT.js";
|
|
8
8
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-NiQscOMo.js";
|
|
@@ -474,8 +474,13 @@ function throwIfAborted(abortSignal) {
|
|
|
474
474
|
//#region src/utils/directive-tags.ts
|
|
475
475
|
const AUDIO_TAG_RE = /\[\[\s*audio_as_voice\s*\]\]/gi;
|
|
476
476
|
const REPLY_TAG_RE = /\[\[\s*(?:reply_to_current|reply_to\s*:\s*([^\]\n]+))\s*\]\]/gi;
|
|
477
|
+
function replacementPreservesWordBoundary(source, offset, length) {
|
|
478
|
+
const before = source[offset - 1];
|
|
479
|
+
const after = source[offset + length];
|
|
480
|
+
return before && after && !/\s/u.test(before) && !/\s/u.test(after) ? " " : "";
|
|
481
|
+
}
|
|
477
482
|
function normalizeDirectiveWhitespace(text) {
|
|
478
|
-
return text.replace(/[ \t]
|
|
483
|
+
return text.replace(/\r\n/g, "\n").replace(/([^\s])[ \t]{2,}([^\s])/g, "$1 $2").replace(/^\n+/, "").replace(/^[ \t](?=\S)/, "").replace(/[ \t]+\n/g, "\n").replace(/\n{3,}/g, "\n\n").trimEnd();
|
|
479
484
|
}
|
|
480
485
|
function parseInlineDirectives(text, options = {}) {
|
|
481
486
|
const { currentMessageId, stripAudioTag = true, stripReplyTags = true } = options;
|
|
@@ -492,19 +497,19 @@ function parseInlineDirectives(text, options = {}) {
|
|
|
492
497
|
let hasReplyTag = false;
|
|
493
498
|
let sawCurrent = false;
|
|
494
499
|
let lastExplicitId;
|
|
495
|
-
cleaned = cleaned.replace(AUDIO_TAG_RE, (match) => {
|
|
500
|
+
cleaned = cleaned.replace(AUDIO_TAG_RE, (match, offset, source) => {
|
|
496
501
|
audioAsVoice = true;
|
|
497
502
|
hasAudioTag = true;
|
|
498
|
-
return stripAudioTag ?
|
|
503
|
+
return stripAudioTag ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
499
504
|
});
|
|
500
|
-
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw) => {
|
|
505
|
+
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw, offset, source) => {
|
|
501
506
|
hasReplyTag = true;
|
|
502
507
|
if (idRaw === void 0) sawCurrent = true;
|
|
503
508
|
else {
|
|
504
509
|
const id = idRaw.trim();
|
|
505
510
|
if (id) lastExplicitId = id;
|
|
506
511
|
}
|
|
507
|
-
return stripReplyTags ?
|
|
512
|
+
return stripReplyTags ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
508
513
|
});
|
|
509
514
|
cleaned = normalizeDirectiveWhitespace(cleaned);
|
|
510
515
|
const replyToId = lastExplicitId ?? (sawCurrent ? currentMessageId?.trim() || void 0 : void 0);
|
|
@@ -4,7 +4,7 @@ import { g as normalizeOptionalAccountId, h as normalizeAccountId } from "./sess
|
|
|
4
4
|
import { i as resolveMirroredTranscriptText, r as appendAssistantMessageToSessionTranscript } from "./sessions-BVmrZrFA.js";
|
|
5
5
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-ANnYrShl.js";
|
|
6
6
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BxYZzFkm.js";
|
|
7
|
-
import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-
|
|
7
|
+
import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-C_U_c_EU.js";
|
|
8
8
|
import { t as getChannelDock } from "./dock-BSksHMjn.js";
|
|
9
9
|
import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-D6AoZjLE.js";
|
|
10
10
|
import { n as resolveMarkdownTableMode } from "./markdown-tables-CnOKVCsP.js";
|
|
@@ -422,8 +422,13 @@ async function runGlobalGatewayStopSafely(params) {
|
|
|
422
422
|
//#region src/utils/directive-tags.ts
|
|
423
423
|
const AUDIO_TAG_RE = /\[\[\s*audio_as_voice\s*\]\]/gi;
|
|
424
424
|
const REPLY_TAG_RE = /\[\[\s*(?:reply_to_current|reply_to\s*:\s*([^\]\n]+))\s*\]\]/gi;
|
|
425
|
+
function replacementPreservesWordBoundary(source, offset, length) {
|
|
426
|
+
const before = source[offset - 1];
|
|
427
|
+
const after = source[offset + length];
|
|
428
|
+
return before && after && !/\s/u.test(before) && !/\s/u.test(after) ? " " : "";
|
|
429
|
+
}
|
|
425
430
|
function normalizeDirectiveWhitespace(text) {
|
|
426
|
-
return text.replace(/[ \t]
|
|
431
|
+
return text.replace(/\r\n/g, "\n").replace(/([^\s])[ \t]{2,}([^\s])/g, "$1 $2").replace(/^\n+/, "").replace(/^[ \t](?=\S)/, "").replace(/[ \t]+\n/g, "\n").replace(/\n{3,}/g, "\n\n").trimEnd();
|
|
427
432
|
}
|
|
428
433
|
function parseInlineDirectives(text, options = {}) {
|
|
429
434
|
const { currentMessageId, stripAudioTag = true, stripReplyTags = true } = options;
|
|
@@ -440,19 +445,19 @@ function parseInlineDirectives(text, options = {}) {
|
|
|
440
445
|
let hasReplyTag = false;
|
|
441
446
|
let sawCurrent = false;
|
|
442
447
|
let lastExplicitId;
|
|
443
|
-
cleaned = cleaned.replace(AUDIO_TAG_RE, (match) => {
|
|
448
|
+
cleaned = cleaned.replace(AUDIO_TAG_RE, (match, offset, source) => {
|
|
444
449
|
audioAsVoice = true;
|
|
445
450
|
hasAudioTag = true;
|
|
446
|
-
return stripAudioTag ?
|
|
451
|
+
return stripAudioTag ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
447
452
|
});
|
|
448
|
-
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw) => {
|
|
453
|
+
cleaned = cleaned.replace(REPLY_TAG_RE, (match, idRaw, offset, source) => {
|
|
449
454
|
hasReplyTag = true;
|
|
450
455
|
if (idRaw === void 0) sawCurrent = true;
|
|
451
456
|
else {
|
|
452
457
|
const id = idRaw.trim();
|
|
453
458
|
if (id) lastExplicitId = id;
|
|
454
459
|
}
|
|
455
|
-
return stripReplyTags ?
|
|
460
|
+
return stripReplyTags ? replacementPreservesWordBoundary(source, offset, match.length) : match;
|
|
456
461
|
});
|
|
457
462
|
cleaned = normalizeDirectiveWhitespace(cleaned);
|
|
458
463
|
const replyToId = lastExplicitId ?? (sawCurrent ? currentMessageId?.trim() || void 0 : void 0);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as resolveCliName } from "./command-format-D3syQOZg.js";
|
|
2
2
|
import { t as resolveOpenClawPackageRoot } from "./openclaw-root-xuQjCjjV.js";
|
|
3
3
|
import { t as note } from "./note-DDecZomM.js";
|
|
4
|
-
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-
|
|
4
|
+
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-CSoJQQhc.js";
|
|
5
5
|
import { spawnSync } from "node:child_process";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as resolveOpenClawPackageRoot } from "./openclaw-root-CQJwyH9q.js";
|
|
2
2
|
import { r as resolveCliName } from "./command-format-DEKzLnLg.js";
|
|
3
3
|
import { t as note } from "./note-DRZSQe0n.js";
|
|
4
|
-
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-
|
|
4
|
+
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-BrkMcxdh.js";
|
|
5
5
|
import path from "node:path";
|
|
6
6
|
import { spawnSync } from "node:child_process";
|
|
7
7
|
|
package/dist/entry.js
CHANGED
|
@@ -2547,7 +2547,7 @@ if (!ensureExperimentalWarningSuppressed()) {
|
|
|
2547
2547
|
applyCliProfileEnv({ profile: parsed.profile });
|
|
2548
2548
|
process$1.argv = parsed.argv;
|
|
2549
2549
|
}
|
|
2550
|
-
import("./run-main-
|
|
2550
|
+
import("./run-main-B3sc7X8M.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
|
|
2551
2551
|
console.error("[openclaw] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
|
|
2552
2552
|
process$1.exitCode = 1;
|
|
2553
2553
|
});
|
package/dist/extensionAPI.js
CHANGED
|
@@ -7,13 +7,13 @@ import { a as resolveAgentIdentity } from "./reply-prefix-CUsSiMpe.js";
|
|
|
7
7
|
import "./github-copilot-token-ttqQRqMA.js";
|
|
8
8
|
import "./env-DulyEJtM.js";
|
|
9
9
|
import "./tokens-DnMmat9I.js";
|
|
10
|
-
import { D as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-
|
|
10
|
+
import { D as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-BywyyGi2.js";
|
|
11
11
|
import "./plugins-DjlLrXSL.js";
|
|
12
12
|
import "./accounts-Cxza2UXO.js";
|
|
13
13
|
import "./bindings-h0Wd5bGl.js";
|
|
14
14
|
import "./send-DIoqNZGo.js";
|
|
15
15
|
import "./send-BJZNl-To.js";
|
|
16
|
-
import "./deliver-
|
|
16
|
+
import "./deliver-BLkQFTzD.js";
|
|
17
17
|
import "./diagnostic-DzmNBZt3.js";
|
|
18
18
|
import "./diagnostic-session-state-C1vRJs5w.js";
|
|
19
19
|
import "./accounts-sr0G5UOe.js";
|
|
@@ -21,7 +21,7 @@ import "./send-7EKmAIkQ.js";
|
|
|
21
21
|
import "./image-ops-BJidZpId.js";
|
|
22
22
|
import "./pi-model-discovery-j5tVLINv.js";
|
|
23
23
|
import "./message-channel-DNOtJsL1.js";
|
|
24
|
-
import { G as saveSessionStore, H as loadSessionStore } from "./pi-embedded-helpers-
|
|
24
|
+
import { G as saveSessionStore, H as loadSessionStore } from "./pi-embedded-helpers-Dl_FdUMU.js";
|
|
25
25
|
import "./config-Bj1BETyH.js";
|
|
26
26
|
import "./manifest-registry-sze5OW-s.js";
|
|
27
27
|
import "./chrome-EGHj-WC_.js";
|
|
@@ -34,7 +34,7 @@ import "./thinking-CNzwETSv.js";
|
|
|
34
34
|
import "./accounts-DAZL5b5o.js";
|
|
35
35
|
import { n as resolveSessionFilePath, s as resolveStorePath } from "./paths-5iQF9bSz.js";
|
|
36
36
|
import "./tool-images-o5KE8ifY.js";
|
|
37
|
-
import "./image-
|
|
37
|
+
import "./image-DuT8yGCI.js";
|
|
38
38
|
import "./manager-isQiMuR_.js";
|
|
39
39
|
import "./gemini-auth-7_-6Idt9.js";
|
|
40
40
|
import "./sqlite-CmTvWxxq.js";
|
|
@@ -47,7 +47,7 @@ import "./ir-D0XFjNjt.js";
|
|
|
47
47
|
import "./render-B1VqYyvo.js";
|
|
48
48
|
import "./commands-registry-Cc65BLE0.js";
|
|
49
49
|
import "./skill-commands-WUe5qD2m.js";
|
|
50
|
-
import "./runner-
|
|
50
|
+
import "./runner-DzmbTP-U.js";
|
|
51
51
|
import "./fetch-BMa0enEg.js";
|
|
52
52
|
import "./channel-activity-7fb2OxTV.js";
|
|
53
53
|
import "./tables-BipcRDfG.js";
|
|
@@ -22,7 +22,7 @@ import { t as safeEqualSecret } from "./secret-equal-CbntzRkh.js";
|
|
|
22
22
|
import { a as isValidIPv4, c as resolveClientIp, d as resolveHostName, f as rawDataToString, i as isTrustedProxyAddress, l as resolveGatewayBindHost, n as isLoopbackHost, o as normalizeHostHeader, s as pickPrimaryLanIPv4, t as isLoopbackAddress, u as resolveGatewayListenHosts } from "./net-DZ5Ayk-W.js";
|
|
23
23
|
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-Cmumpn76.js";
|
|
24
24
|
import { i as normalizeInputProvenance } from "./input-provenance-D0lNkCf6.js";
|
|
25
|
-
import { $n as resolveTtsProviderOrder, A as resolveAgentAvatar, An as normalizeMimeList, At as normalizeRequiredName, Bt as isExternalHookSession, C as agentCommand, Ct as normalizeCronJobCreate, D as createOutboundSendDeps, Dn as DEFAULT_INPUT_TIMEOUT_MS, Dt as normalizeOptionalSessionKey, E as resolveAgentOutboundTarget, En as DEFAULT_INPUT_MAX_REDIRECTS, Et as normalizeOptionalAgentId, Gn as resolveUserTimezone, Gt as emitGatewayRestart, H as dispatchInboundMessage, Hn as stopSubagentsForRequester, Ht as persistBrowserProxyFiles, Jn as isTtsProviderConfigured, Jt as scheduleGatewaySigusr1Restart, Kn as getTtsProvider, Kt as isGatewaySigusr1RestartExternallyAllowed, L as buildHistoryContextFromEntries, Lt as buildSafeExternalPrompt, Mt as buildDeliveryFromLegacyPayload, Nn as resolveAgentTimeoutMs, Nt as hasLegacyDeliveryHints, O as createDefaultDeps, On as extractFileContentFromSource, Ot as normalizeOptionalText, Pt as stripLegacyDeliveryFields, Q as runCliAgent, Qn as resolveTtsPrefsPath, Qt as normalizeGroupActivation, Rn as formatZonedTimestamp, Rt as detectSuspiciousPatterns, S as sleepWithAbort, St as normalizeHttpWebhookUrl, T as resolveAgentDeliveryPlan, Tn as DEFAULT_INPUT_IMAGE_MIMES, Tt as inferLegacyName, U as createReplyDispatcher, Ut as consumeGatewaySigusr1RestartAuthorization, Vn as isAbortTrigger, Vt as applyBrowserProxyPaths, W as getTotalPendingReplies, Wt as deferGatewayRestartUntilIdle, X as getCliSessionId, Xn as resolveTtsAutoMode, Xt as setPreRestartDeferralCheck, Y as resolveCronStyleNow, Yn as resolveTtsApiKey, Yt as setGatewaySigusr1RestartPolicy, Z as setCliSessionId, Zn as resolveTtsConfig, Zt as unbindThreadBindingsBySessionKey, _n as applyModelOverrideToSessionEntry, _r as clearAgentRunContext, _t as formatRestartSentinelMessage, a as runSubagentAnnounceFlow, ar as getActiveTaskCount, at as resolveOutboundSessionRoute, b as requestBodyErrorToText, bn as enqueueSystemEvent, br as onAgentEvent, c as abortEmbeddedPiRun, cn as requestHeartbeatNow, cr as resetAllLanes, ct as resolveOutboundTarget, d as applyToolPolicyPipeline, dn as normalizeSendPolicy, dr as CommandLane, dt as resetDirectoryCache, en as loadProviderUsageSummary, er as setTtsEnabled, et as createOpenClawTools, f as buildDefaultToolPolicyPipelineSteps, fn as resolveSendPolicy, fr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, g as loadOpenClawPlugins, gr as stripHeartbeatToken, gt as formatDoctorNonInteractiveHint, ht as consumeRestartSentinel, ir as OPENAI_TTS_VOICES, it as ensureOutboundSessionEntry, jn as resolveInputFileLimits, jt as migrateLegacyCronPayload, k as createOutboundSendDeps$1, kn as extractImageContentFromSource, kt as normalizePayloadToSystemText, l as getActiveEmbeddedRunCount, lr as setCommandLaneConcurrency, lt as resolveSessionDeliveryTarget, m as getPluginToolMeta, n as initSubagentRegistry, nr as textToSpeech, nt as resolveAnnounceTargetFromKey, o as clearSessionQueues, pt as runWithModelFallback, q as BARE_SESSION_RESET_PROMPT, qn as isTtsEnabled, qt as markGatewaySigusr1RestartHandled, r as listDescendantRunsForRequester, rr as OPENAI_TTS_MODELS, s as runEmbeddedPiAgent, sr as getTotalQueueSize, t as countActiveDescendantRuns, tr as setTtsProvider, tt as readLatestAssistantReply, u as waitForEmbeddedPiRunEnd, ur as waitForActiveTasks, v as handleSlackHttpRequest, vn as applyVerboseOverride, vr as emitAgentEvent, wn as DEFAULT_INPUT_IMAGE_MAX_BYTES, wt as normalizeCronJobPatch, x as computeBackoff, xn as isSystemEventContextChanged, xr as registerAgentRunContext, xt as writeRestartSentinel, y as readJsonBodyWithLimit, yn as parseVerboseOverride, yr as getAgentRunContext, yt as summarizeRestartSentinel, zt as getHookType } from "./subagent-registry-
|
|
25
|
+
import { $n as resolveTtsProviderOrder, A as resolveAgentAvatar, An as normalizeMimeList, At as normalizeRequiredName, Bt as isExternalHookSession, C as agentCommand, Ct as normalizeCronJobCreate, D as createOutboundSendDeps, Dn as DEFAULT_INPUT_TIMEOUT_MS, Dt as normalizeOptionalSessionKey, E as resolveAgentOutboundTarget, En as DEFAULT_INPUT_MAX_REDIRECTS, Et as normalizeOptionalAgentId, Gn as resolveUserTimezone, Gt as emitGatewayRestart, H as dispatchInboundMessage, Hn as stopSubagentsForRequester, Ht as persistBrowserProxyFiles, Jn as isTtsProviderConfigured, Jt as scheduleGatewaySigusr1Restart, Kn as getTtsProvider, Kt as isGatewaySigusr1RestartExternallyAllowed, L as buildHistoryContextFromEntries, Lt as buildSafeExternalPrompt, Mt as buildDeliveryFromLegacyPayload, Nn as resolveAgentTimeoutMs, Nt as hasLegacyDeliveryHints, O as createDefaultDeps, On as extractFileContentFromSource, Ot as normalizeOptionalText, Pt as stripLegacyDeliveryFields, Q as runCliAgent, Qn as resolveTtsPrefsPath, Qt as normalizeGroupActivation, Rn as formatZonedTimestamp, Rt as detectSuspiciousPatterns, S as sleepWithAbort, St as normalizeHttpWebhookUrl, T as resolveAgentDeliveryPlan, Tn as DEFAULT_INPUT_IMAGE_MIMES, Tt as inferLegacyName, U as createReplyDispatcher, Ut as consumeGatewaySigusr1RestartAuthorization, Vn as isAbortTrigger, Vt as applyBrowserProxyPaths, W as getTotalPendingReplies, Wt as deferGatewayRestartUntilIdle, X as getCliSessionId, Xn as resolveTtsAutoMode, Xt as setPreRestartDeferralCheck, Y as resolveCronStyleNow, Yn as resolveTtsApiKey, Yt as setGatewaySigusr1RestartPolicy, Z as setCliSessionId, Zn as resolveTtsConfig, Zt as unbindThreadBindingsBySessionKey, _n as applyModelOverrideToSessionEntry, _r as clearAgentRunContext, _t as formatRestartSentinelMessage, a as runSubagentAnnounceFlow, ar as getActiveTaskCount, at as resolveOutboundSessionRoute, b as requestBodyErrorToText, bn as enqueueSystemEvent, br as onAgentEvent, c as abortEmbeddedPiRun, cn as requestHeartbeatNow, cr as resetAllLanes, ct as resolveOutboundTarget, d as applyToolPolicyPipeline, dn as normalizeSendPolicy, dr as CommandLane, dt as resetDirectoryCache, en as loadProviderUsageSummary, er as setTtsEnabled, et as createOpenClawTools, f as buildDefaultToolPolicyPipelineSteps, fn as resolveSendPolicy, fr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, g as loadOpenClawPlugins, gr as stripHeartbeatToken, gt as formatDoctorNonInteractiveHint, ht as consumeRestartSentinel, ir as OPENAI_TTS_VOICES, it as ensureOutboundSessionEntry, jn as resolveInputFileLimits, jt as migrateLegacyCronPayload, k as createOutboundSendDeps$1, kn as extractImageContentFromSource, kt as normalizePayloadToSystemText, l as getActiveEmbeddedRunCount, lr as setCommandLaneConcurrency, lt as resolveSessionDeliveryTarget, m as getPluginToolMeta, n as initSubagentRegistry, nr as textToSpeech, nt as resolveAnnounceTargetFromKey, o as clearSessionQueues, pt as runWithModelFallback, q as BARE_SESSION_RESET_PROMPT, qn as isTtsEnabled, qt as markGatewaySigusr1RestartHandled, r as listDescendantRunsForRequester, rr as OPENAI_TTS_MODELS, s as runEmbeddedPiAgent, sr as getTotalQueueSize, t as countActiveDescendantRuns, tr as setTtsProvider, tt as readLatestAssistantReply, u as waitForEmbeddedPiRunEnd, ur as waitForActiveTasks, v as handleSlackHttpRequest, vn as applyVerboseOverride, vr as emitAgentEvent, wn as DEFAULT_INPUT_IMAGE_MAX_BYTES, wt as normalizeCronJobPatch, x as computeBackoff, xn as isSystemEventContextChanged, xr as registerAgentRunContext, xt as writeRestartSentinel, y as readJsonBodyWithLimit, yn as parseVerboseOverride, yr as getAgentRunContext, yt as summarizeRestartSentinel, zt as getHookType } from "./subagent-registry-DGNGenUN.js";
|
|
26
26
|
import { D as resolveSessionResetPolicy, F as resolveMainSessionKey, H as cleanStaleLockFiles, I as resolveMainSessionKeyFromConfig, J as normalizeSessionDeliveryFields, K as mergeDeliveryContext, M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, P as resolveExplicitAgentSessionKey, R as snapshotSessionOrigin, S as stripEnvelopeFromMessages, T as evaluateSessionFreshness, W as deliveryContextFromSession, _ as capArrayByJsonBytes, d as updateSessionStore, g as archiveSessionTranscripts, h as archiveFileOnDisk, n as parseSessionThreadInfo, o as loadSessionStore, t as extractDeliveryInfo, v as readSessionMessages, x as resolveSessionTranscriptCandidates, y as readSessionPreviewItemsFromTranscript } from "./sessions-BVmrZrFA.js";
|
|
27
27
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-ANnYrShl.js";
|
|
28
28
|
import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BxYZzFkm.js";
|
|
@@ -32,13 +32,13 @@ import "./logging-CFvkxgcX.js";
|
|
|
32
32
|
import "./send-mdCBM_lP.js";
|
|
33
33
|
import "./send-ENOozmo1.js";
|
|
34
34
|
import { n as createBrowserRouteDispatcher, r as getMachineDisplayName } from "./with-timeout-BJj1dns_.js";
|
|
35
|
-
import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-
|
|
35
|
+
import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-meQdcFaA.js";
|
|
36
36
|
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-C6WTf4ZE.js";
|
|
37
37
|
import "./diagnostic-session-state-CIjIGxEE.js";
|
|
38
38
|
import "./accounts-1gFWxwAw.js";
|
|
39
39
|
import "./send-Dd6W68eD.js";
|
|
40
40
|
import { c as detectMime } from "./image-ops-CKJNUuNW.js";
|
|
41
|
-
import "./pi-embedded-helpers-
|
|
41
|
+
import "./pi-embedded-helpers-C_U_c_EU.js";
|
|
42
42
|
import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-BMaHJcKh.js";
|
|
43
43
|
import "./chrome-DOT5Dxfr.js";
|
|
44
44
|
import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-BxzsxqAY.js";
|
|
@@ -74,9 +74,9 @@ import "./ir-DetFY9t5.js";
|
|
|
74
74
|
import "./render-e7fENCYH.js";
|
|
75
75
|
import { r as isRestartEnabled } from "./commands-CDrOx1RO.js";
|
|
76
76
|
import "./commands-registry-BcqdkMzV.js";
|
|
77
|
-
import "./image-
|
|
77
|
+
import "./image-C8HOu4vb.js";
|
|
78
78
|
import "./tool-display-DixohEVL.js";
|
|
79
|
-
import { d as registerUnhandledRejectionHandler } from "./runner-
|
|
79
|
+
import { d as registerUnhandledRejectionHandler } from "./runner-CbkB3vpb.js";
|
|
80
80
|
import { n as loadModelCatalog } from "./model-catalog-DzKq0MC2.js";
|
|
81
81
|
import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-DbIfE0Ek.js";
|
|
82
82
|
import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-BdHYzdEB.js";
|
|
@@ -134,20 +134,20 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
|
|
|
134
134
|
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-BLko2ysA.js";
|
|
135
135
|
import { c as probeGateway, o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-C1XET3ZE.js";
|
|
136
136
|
import { t as discoverGatewayBeacons } from "./bonjour-discovery-Dey40AZW.js";
|
|
137
|
-
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-
|
|
138
|
-
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-
|
|
137
|
+
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-DQEnKbht.js";
|
|
138
|
+
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-DEibfTDK.js";
|
|
139
139
|
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Yp3N6NZ_.js";
|
|
140
140
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-DfBZVR4k.js";
|
|
141
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
142
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-
|
|
141
|
+
import { t as runOnboardingWizard } from "./onboarding-BIEWyZPf.js";
|
|
142
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-CSSSwhDY.js";
|
|
143
143
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-D5-xvxtS.js";
|
|
144
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
144
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BAILtL0e.js";
|
|
145
145
|
import "./dm-policy-shared-BY9lE-FE.js";
|
|
146
146
|
import "./node-service-B1F4gM4E.js";
|
|
147
147
|
import "./status.update-CI9MUGyA.js";
|
|
148
148
|
import { t as resolveSystemRunCommand } from "./system-run-command-DKiCEPJc.js";
|
|
149
149
|
import { t as installSkill } from "./skills-install-BOt50Tao.js";
|
|
150
|
-
import { n as runGatewayUpdate, t as resolveAgentSessionDirs } from "./session-dirs-
|
|
150
|
+
import { n as runGatewayUpdate, t as resolveAgentSessionDirs } from "./session-dirs-CRnGB63U.js";
|
|
151
151
|
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-DWI9N-Ks.js";
|
|
152
152
|
import { n as forceFreePortAndWait } from "./ports-BxzJ3ENr.js";
|
|
153
153
|
import { spawn, spawnSync } from "node:child_process";
|
|
@@ -3379,7 +3379,8 @@ async function runCronIsolatedAgentTurn(params) {
|
|
|
3379
3379
|
timeoutMs,
|
|
3380
3380
|
runId: cronSession.sessionEntry.sessionId,
|
|
3381
3381
|
requireExplicitMessageTarget: true,
|
|
3382
|
-
disableMessageTool: deliveryRequested
|
|
3382
|
+
disableMessageTool: deliveryRequested,
|
|
3383
|
+
streamParams: { cacheRetention: "long" }
|
|
3383
3384
|
});
|
|
3384
3385
|
}
|
|
3385
3386
|
});
|
|
@@ -12405,7 +12406,7 @@ const nodeHandlers = {
|
|
|
12405
12406
|
const p = params;
|
|
12406
12407
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
12407
12408
|
await respondUnavailableOnThrow(respond, async () => {
|
|
12408
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
12409
|
+
const { handleNodeEvent } = await import("./server-node-events-Dm6MSKk0.js");
|
|
12409
12410
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
12410
12411
|
await handleNodeEvent({
|
|
12411
12412
|
deps: context.deps,
|
|
@@ -20289,7 +20290,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
20289
20290
|
if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
|
|
20290
20291
|
if (!minimalTestGateway) (async () => {
|
|
20291
20292
|
const { recoverPendingDeliveries } = await import("./delivery-queue-CzNZXd1M.js").then((n) => n.n);
|
|
20292
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
20293
|
+
const { deliverOutboundPayloads } = await import("./deliver-meQdcFaA.js").then((n) => n.n);
|
|
20293
20294
|
await recoverPendingDeliveries({
|
|
20294
20295
|
deliver: deliverOutboundPayloads,
|
|
20295
20296
|
log: log.child("delivery-recovery"),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { _ as expandHomePrefix, g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-B4BZAPZh.js";
|
|
2
2
|
import { B as theme, D as isPlainObject, E as truncateUtf16Safe, H as getLogger, P as setVerbose, R as colorize, S as shortenHomePath, U as getResolvedLoggerSettings, V as getChildLogger, c as ensureDir, r as clamp, t as CONFIG_DIR, y as resolveUserPath, z as isRich } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-EAliFiVK.js";
|
|
4
|
-
import { $ as normalizeOptionalSessionKey, $t as buildSafeExternalPrompt, At as agentCommand, B as setPreRestartDeferralCheck, Bn as isTtsEnabled, Bt as resolveSendPolicy, C as loadSessionEntry, Cn as isAbortTrigger, Cr as DEFAULT_INPUT_IMAGE_MIMES, Dn as countActiveDescendantRuns, Dr as extractImageContentFromSource, Dt as requestBodyErrorToText, E as resolveSessionModelRef, Er as extractFileContentFromSource, Et as readJsonBodyWithLimit, F as emitGatewayRestart, Fn as getAgentRunContext, G as summarizeRestartSentinel, Gn as resolveTtsPrefsPath, Gt as setCliSessionId, H as formatDoctorNonInteractiveHint, Hn as resolveTtsApiKey, Ht as createOutboundSendDeps$1, I as isGatewaySigusr1RestartExternallyAllowed, In as onAgentEvent, It as resolveOutboundTarget, J as normalizeHttpWebhookUrl, Jn as setTtsProvider, Kn as resolveTtsProviderOrder, Kt as runCliAgent, L as markGatewaySigusr1RestartHandled, Ln as registerAgentRunContext, Lt as resolveSessionDeliveryTarget, Mn as readLatestAssistantReply, Mt as resolveAgentDeliveryPlan, N as consumeGatewaySigusr1RestartAuthorization, Nn as clearAgentRunContext, Nt as resolveAgentOutboundTarget, O as ensureOutboundSessionEntry, On as initSubagentRegistry, Or as normalizeMimeList, Ot as computeBackoff, P as deferGatewayRestartUntilIdle, Pn as emitAgentEvent, Q as normalizeOptionalAgentId, Qn as getActiveTaskCount, R as scheduleGatewaySigusr1Restart, Rn as resolveUserTimezone, Rt as createOutboundSendDeps, S as loadCombinedSessionStoreForGateway, Sr as DEFAULT_INPUT_IMAGE_MAX_BYTES, T as resolveGatewaySessionStoreTarget, Tr as DEFAULT_INPUT_TIMEOUT_MS, Tt as handleSlackHttpRequest, U as formatRestartSentinelMessage, Un as resolveTtsAutoMode, Ut as runWithModelFallback, V as consumeRestartSentinel, Vn as isTtsProviderConfigured, Vt as createDefaultDeps, Wn as resolveTtsConfig, Wt as getCliSessionId, X as normalizeCronJobPatch, Xn as OPENAI_TTS_MODELS, Y as normalizeCronJobCreate, Yn as textToSpeech, Yt as resolveAgentAvatar, Z as inferLegacyName, Zn as OPENAI_TTS_VOICES, _ as resolveAnnounceTargetFromKey, _r as parseVerboseOverride, ar as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, at as hasLegacyDeliveryHints, b as listAgentsForGateway, bn as formatZonedTimestamp, bt as loadProviderUsageSummary, c as clearSessionQueues, d as getActiveEmbeddedRunCount, dt as requestHeartbeatNow, en as detectSuspiciousPatterns, er as getTotalQueueSize, et as normalizeOptionalText, f as waitForEmbeddedPiRunEnd, fn as dispatchInboundMessage, g as createOpenClawTools, gr as applyVerboseOverride, gt as loadOpenClawPlugins, hr as applyModelOverrideToSessionEntry, i as resolveCronStyleNow, ir as CommandLane, it as buildDeliveryFromLegacyPayload, j as resetDirectoryCache, jn as runSubagentAnnounceFlow, jr as resolveAgentTimeoutMs, k as resolveOutboundSessionRoute, kn as listDescendantRunsForRequester, kr as resolveInputFileLimits, kt as sleepWithAbort, l as runEmbeddedPiAgent, lr as stripHeartbeatToken, lt as applyBrowserProxyPaths, m as buildDefaultToolPolicyPipelineSteps, mn as getTotalPendingReplies, mt as getPluginToolMeta, n as BARE_SESSION_RESET_PROMPT, nn as isExternalHookSession, nr as setCommandLaneConcurrency, nt as normalizeRequiredName, ot as stripLegacyDeliveryFields, p as applyToolPolicyPipeline, pn as createReplyDispatcher, q as writeRestartSentinel, qn as setTtsEnabled, rn as unbindThreadBindingsBySessionKey, rr as waitForActiveTasks, rt as migrateLegacyCronPayload, sn as buildHistoryContextFromEntries, tn as getHookType, tr as resetAllLanes, tt as normalizePayloadToSystemText, u as abortEmbeddedPiRun, ur as lookupContextTokens, ut as persistBrowserProxyFiles, v as canonicalizeSpawnedByForAgent, vr as enqueueSystemEvent, vt as normalizeGroupActivation, w as pruneLegacyStoreKeys, wn as stopSubagentsForRequester, wr as DEFAULT_INPUT_MAX_REDIRECTS, x as listSessionsFromStore, yr as isSystemEventContextChanged, z as setGatewaySigusr1RestartPolicy, zn as getTtsProvider, zt as normalizeSendPolicy } from "./reply-
|
|
4
|
+
import { $ as normalizeOptionalSessionKey, $t as buildSafeExternalPrompt, At as agentCommand, B as setPreRestartDeferralCheck, Bn as isTtsEnabled, Bt as resolveSendPolicy, C as loadSessionEntry, Cn as isAbortTrigger, Cr as DEFAULT_INPUT_IMAGE_MIMES, Dn as countActiveDescendantRuns, Dr as extractImageContentFromSource, Dt as requestBodyErrorToText, E as resolveSessionModelRef, Er as extractFileContentFromSource, Et as readJsonBodyWithLimit, F as emitGatewayRestart, Fn as getAgentRunContext, G as summarizeRestartSentinel, Gn as resolveTtsPrefsPath, Gt as setCliSessionId, H as formatDoctorNonInteractiveHint, Hn as resolveTtsApiKey, Ht as createOutboundSendDeps$1, I as isGatewaySigusr1RestartExternallyAllowed, In as onAgentEvent, It as resolveOutboundTarget, J as normalizeHttpWebhookUrl, Jn as setTtsProvider, Kn as resolveTtsProviderOrder, Kt as runCliAgent, L as markGatewaySigusr1RestartHandled, Ln as registerAgentRunContext, Lt as resolveSessionDeliveryTarget, Mn as readLatestAssistantReply, Mt as resolveAgentDeliveryPlan, N as consumeGatewaySigusr1RestartAuthorization, Nn as clearAgentRunContext, Nt as resolveAgentOutboundTarget, O as ensureOutboundSessionEntry, On as initSubagentRegistry, Or as normalizeMimeList, Ot as computeBackoff, P as deferGatewayRestartUntilIdle, Pn as emitAgentEvent, Q as normalizeOptionalAgentId, Qn as getActiveTaskCount, R as scheduleGatewaySigusr1Restart, Rn as resolveUserTimezone, Rt as createOutboundSendDeps, S as loadCombinedSessionStoreForGateway, Sr as DEFAULT_INPUT_IMAGE_MAX_BYTES, T as resolveGatewaySessionStoreTarget, Tr as DEFAULT_INPUT_TIMEOUT_MS, Tt as handleSlackHttpRequest, U as formatRestartSentinelMessage, Un as resolveTtsAutoMode, Ut as runWithModelFallback, V as consumeRestartSentinel, Vn as isTtsProviderConfigured, Vt as createDefaultDeps, Wn as resolveTtsConfig, Wt as getCliSessionId, X as normalizeCronJobPatch, Xn as OPENAI_TTS_MODELS, Y as normalizeCronJobCreate, Yn as textToSpeech, Yt as resolveAgentAvatar, Z as inferLegacyName, Zn as OPENAI_TTS_VOICES, _ as resolveAnnounceTargetFromKey, _r as parseVerboseOverride, ar as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, at as hasLegacyDeliveryHints, b as listAgentsForGateway, bn as formatZonedTimestamp, bt as loadProviderUsageSummary, c as clearSessionQueues, d as getActiveEmbeddedRunCount, dt as requestHeartbeatNow, en as detectSuspiciousPatterns, er as getTotalQueueSize, et as normalizeOptionalText, f as waitForEmbeddedPiRunEnd, fn as dispatchInboundMessage, g as createOpenClawTools, gr as applyVerboseOverride, gt as loadOpenClawPlugins, hr as applyModelOverrideToSessionEntry, i as resolveCronStyleNow, ir as CommandLane, it as buildDeliveryFromLegacyPayload, j as resetDirectoryCache, jn as runSubagentAnnounceFlow, jr as resolveAgentTimeoutMs, k as resolveOutboundSessionRoute, kn as listDescendantRunsForRequester, kr as resolveInputFileLimits, kt as sleepWithAbort, l as runEmbeddedPiAgent, lr as stripHeartbeatToken, lt as applyBrowserProxyPaths, m as buildDefaultToolPolicyPipelineSteps, mn as getTotalPendingReplies, mt as getPluginToolMeta, n as BARE_SESSION_RESET_PROMPT, nn as isExternalHookSession, nr as setCommandLaneConcurrency, nt as normalizeRequiredName, ot as stripLegacyDeliveryFields, p as applyToolPolicyPipeline, pn as createReplyDispatcher, q as writeRestartSentinel, qn as setTtsEnabled, rn as unbindThreadBindingsBySessionKey, rr as waitForActiveTasks, rt as migrateLegacyCronPayload, sn as buildHistoryContextFromEntries, tn as getHookType, tr as resetAllLanes, tt as normalizePayloadToSystemText, u as abortEmbeddedPiRun, ur as lookupContextTokens, ut as persistBrowserProxyFiles, v as canonicalizeSpawnedByForAgent, vr as enqueueSystemEvent, vt as normalizeGroupActivation, w as pruneLegacyStoreKeys, wn as stopSubagentsForRequester, wr as DEFAULT_INPUT_MAX_REDIRECTS, x as listSessionsFromStore, yr as isSystemEventContextChanged, z as setGatewaySigusr1RestartPolicy, zn as getTtsProvider, zt as normalizeSendPolicy } from "./reply-V8UXM1XU.js";
|
|
5
5
|
import { S as parseAgentSessionKey, c as normalizeMainKey, f as toAgentRequestSessionKey, l as resolveAgentIdFromSessionKey, m as DEFAULT_ACCOUNT_ID, o as classifySessionKeyShape, p as toAgentStoreSessionKey, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as isSubagentSessionKey, y as isCronRunSessionKey } from "./session-key-DCt45XZa.js";
|
|
6
6
|
import { r as matchesSkillFilter, t as resolveOpenClawPackageRoot } from "./openclaw-root-CQJwyH9q.js";
|
|
7
7
|
import { C as createInternalHookEvent, S as clearInternalHooks, T as triggerInternalHook, d as getActivePluginRegistry, m as createEmptyPluginRegistry, r as DEFAULT_CHAT_CHANNEL, t as CHANNEL_IDS, w as registerInternalHook } from "./registry-Dygi7Azw.js";
|
|
@@ -18,11 +18,11 @@ import "./send-Q-CNReiC.js";
|
|
|
18
18
|
import { B as resolveAgentMaxConcurrent, C as parseDurationMs, H as VERSION, N as applyMergePatch, P as applyLegacyMigrations, S as sensitive, U as resolveRuntimeServiceVersion, V as resolveSubagentMaxConcurrent, a as parseConfigJson5, c as resolveConfigSnapshotHash, d as OpenClawSchema, i as loadConfig, l as writeConfigFile, n as migrateLegacyConfig, o as readConfigFileSnapshot, r as createConfigIO, s as readConfigFileSnapshotForWrite, u as validateConfigObjectWithPlugins } from "./config-DuSkPZEG.js";
|
|
19
19
|
import { l as isTestDefaultMemorySlotDisabled } from "./manifest-registry-YRUqEw3J.js";
|
|
20
20
|
import { a as isPathInsideWithRealpath } from "./legacy-names-u6U1_9U0.js";
|
|
21
|
-
import { d as registerUnhandledRejectionHandler } from "./runner-
|
|
22
|
-
import "./image-
|
|
21
|
+
import { d as registerUnhandledRejectionHandler } from "./runner-DkWpm1Ly.js";
|
|
22
|
+
import "./image-Cj9tfO74.js";
|
|
23
23
|
import "./models-config-BfWGJEDQ.js";
|
|
24
24
|
import "./pi-model-discovery-4uUnLc3n.js";
|
|
25
|
-
import "./pi-embedded-helpers-
|
|
25
|
+
import "./pi-embedded-helpers-C4Annkh_.js";
|
|
26
26
|
import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-BouZCtAZ.js";
|
|
27
27
|
import "./chrome-DEbRGGI9.js";
|
|
28
28
|
import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-pku0epOI.js";
|
|
@@ -63,7 +63,7 @@ import "./sqlite-Bbubvc33.js";
|
|
|
63
63
|
import { n as loadModelCatalog } from "./model-catalog-DdfszCL_.js";
|
|
64
64
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-BDil8-Uk.js";
|
|
65
65
|
import { n as createBrowserRouteDispatcher, r as getMachineDisplayName } from "./with-timeout-B1xlb1Xx.js";
|
|
66
|
-
import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-
|
|
66
|
+
import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-J2cVd3TS.js";
|
|
67
67
|
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-BvpClNOn.js";
|
|
68
68
|
import "./diagnostic-session-state-CUslJyKP.js";
|
|
69
69
|
import "./send-BvoyQqdG.js";
|
|
@@ -139,20 +139,20 @@ import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } fr
|
|
|
139
139
|
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-Dc97sW1v.js";
|
|
140
140
|
import { c as probeGateway, o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-BYAONEme.js";
|
|
141
141
|
import { t as discoverGatewayBeacons } from "./bonjour-discovery-BlFVEHG-.js";
|
|
142
|
-
import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-
|
|
143
|
-
import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, s as setHeartbeatsEnabled, t as formatHealthChannelLines } from "./health-
|
|
142
|
+
import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-2w8d47j-.js";
|
|
143
|
+
import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, s as setHeartbeatsEnabled, t as formatHealthChannelLines } from "./health-BfWYn33I.js";
|
|
144
144
|
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-d_j0Pdnj.js";
|
|
145
145
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-B-fJT8wY.js";
|
|
146
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
147
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-
|
|
146
|
+
import { t as runOnboardingWizard } from "./onboarding-CX9LQxj2.js";
|
|
147
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-BTcu7pip.js";
|
|
148
148
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-C47YdW4F.js";
|
|
149
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
149
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-DA4Kt9C5.js";
|
|
150
150
|
import "./dm-policy-shared-bsPE2aMP.js";
|
|
151
151
|
import "./node-service-Da4wpz30.js";
|
|
152
152
|
import "./status.update-BJHhhP0N.js";
|
|
153
153
|
import { t as resolveSystemRunCommand } from "./system-run-command-DKiCEPJc.js";
|
|
154
154
|
import { t as installSkill } from "./skills-install-jtm7_1nn.js";
|
|
155
|
-
import { n as runGatewayUpdate, t as resolveAgentSessionDirs } from "./session-dirs-
|
|
155
|
+
import { n as runGatewayUpdate, t as resolveAgentSessionDirs } from "./session-dirs-BmVdF2KM.js";
|
|
156
156
|
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-DpGqXq9W.js";
|
|
157
157
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
158
158
|
import * as fsSync from "node:fs";
|
|
@@ -3383,7 +3383,8 @@ async function runCronIsolatedAgentTurn(params) {
|
|
|
3383
3383
|
timeoutMs,
|
|
3384
3384
|
runId: cronSession.sessionEntry.sessionId,
|
|
3385
3385
|
requireExplicitMessageTarget: true,
|
|
3386
|
-
disableMessageTool: deliveryRequested
|
|
3386
|
+
disableMessageTool: deliveryRequested,
|
|
3387
|
+
streamParams: { cacheRetention: "long" }
|
|
3387
3388
|
});
|
|
3388
3389
|
}
|
|
3389
3390
|
});
|
|
@@ -12409,7 +12410,7 @@ const nodeHandlers = {
|
|
|
12409
12410
|
const p = params;
|
|
12410
12411
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
12411
12412
|
await respondUnavailableOnThrow(respond, async () => {
|
|
12412
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
12413
|
+
const { handleNodeEvent } = await import("./server-node-events-D5Fen-q2.js");
|
|
12413
12414
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
12414
12415
|
await handleNodeEvent({
|
|
12415
12416
|
deps: context.deps,
|
|
@@ -20293,7 +20294,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
20293
20294
|
if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
|
|
20294
20295
|
if (!minimalTestGateway) (async () => {
|
|
20295
20296
|
const { recoverPendingDeliveries } = await import("./delivery-queue-CxDDEWQg.js").then((n) => n.n);
|
|
20296
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
20297
|
+
const { deliverOutboundPayloads } = await import("./deliver-J2cVd3TS.js").then((n) => n.n);
|
|
20297
20298
|
await recoverPendingDeliveries({
|
|
20298
20299
|
deliver: deliverOutboundPayloads,
|
|
20299
20300
|
log: log.child("delivery-recovery"),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { B as theme, k as info, l as escapeRegExp, z as isRich } from "./utils-BlC2Fskb.js";
|
|
2
|
-
import { $n as getQueueSize, Ft as resolveHeartbeatSenderContext, Pt as resolveHeartbeatDeliveryTarget, Rn as resolveUserTimezone, ar as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, br as peekSystemEventEntries, cr as resolveHeartbeatPrompt$1, dt as requestHeartbeatNow, ft as setHeartbeatWakeHandler, ir as CommandLane, lr as stripHeartbeatToken, or as DEFAULT_HEARTBEAT_EVERY, pt as resolveHeartbeatReasonKind, r as appendCronStyleCurrentTimeLine, sr as isHeartbeatContentEffectivelyEmpty, t as getReplyFromConfig } from "./reply-
|
|
2
|
+
import { $n as getQueueSize, Ft as resolveHeartbeatSenderContext, Pt as resolveHeartbeatDeliveryTarget, Rn as resolveUserTimezone, ar as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, br as peekSystemEventEntries, cr as resolveHeartbeatPrompt$1, dt as requestHeartbeatNow, ft as setHeartbeatWakeHandler, ir as CommandLane, lr as stripHeartbeatToken, or as DEFAULT_HEARTBEAT_EVERY, pt as resolveHeartbeatReasonKind, r as appendCronStyleCurrentTimeLine, sr as isHeartbeatContentEffectivelyEmpty, t as getReplyFromConfig } from "./reply-V8UXM1XU.js";
|
|
3
3
|
import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as normalizeAgentId } from "./session-key-DCt45XZa.js";
|
|
4
4
|
import { f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
|
|
5
5
|
import { c as resolveAgentWorkspaceDir, g as DEFAULT_HEARTBEAT_FILENAME, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-Dl-vG2QO.js";
|
|
@@ -11,7 +11,7 @@ import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-NiQscO
|
|
|
11
11
|
import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-BZ4ZLq8H.js";
|
|
12
12
|
import { c as resolveStorePath, n as resolveSessionFilePath } from "./paths-C6eomcf_.js";
|
|
13
13
|
import { t as HEARTBEAT_TOKEN } from "./tokens-BDil8-Uk.js";
|
|
14
|
-
import { t as deliverOutboundPayloads } from "./deliver-
|
|
14
|
+
import { t as deliverOutboundPayloads } from "./deliver-J2cVd3TS.js";
|
|
15
15
|
import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-8FTZTxLD.js";
|
|
16
16
|
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BRa7cSJX.js";
|
|
17
17
|
import { n as withProgress } from "./progress-CjVenbge.js";
|
|
@@ -4,12 +4,12 @@ import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as no
|
|
|
4
4
|
import { c as resolveAgentWorkspaceDir, g as DEFAULT_HEARTBEAT_FILENAME, l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-BhZr1_OI.js";
|
|
5
5
|
import { C as parseDurationMs, i as loadConfig } from "./config-26MDXfhB.js";
|
|
6
6
|
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-HzbpjcFE.js";
|
|
7
|
-
import { Gn as resolveUserTimezone, J as appendCronStyleCurrentTimeLine, K as getReplyFromConfig, Sn as peekSystemEventEntries, cn as requestHeartbeatNow, dr as CommandLane, fr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, gr as stripHeartbeatToken, hr as resolveHeartbeatPrompt$1, ln as setHeartbeatWakeHandler, mr as isHeartbeatContentEffectivelyEmpty, or as getQueueSize, ot as resolveHeartbeatDeliveryTarget, pr as DEFAULT_HEARTBEAT_EVERY, st as resolveHeartbeatSenderContext, un as resolveHeartbeatReasonKind } from "./subagent-registry-
|
|
7
|
+
import { Gn as resolveUserTimezone, J as appendCronStyleCurrentTimeLine, K as getReplyFromConfig, Sn as peekSystemEventEntries, cn as requestHeartbeatNow, dr as CommandLane, fr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, gr as stripHeartbeatToken, hr as resolveHeartbeatPrompt$1, ln as setHeartbeatWakeHandler, mr as isHeartbeatContentEffectivelyEmpty, or as getQueueSize, ot as resolveHeartbeatDeliveryTarget, pr as DEFAULT_HEARTBEAT_EVERY, st as resolveHeartbeatSenderContext, un as resolveHeartbeatReasonKind } from "./subagent-registry-DGNGenUN.js";
|
|
8
8
|
import { M as canonicalizeMainSessionAlias, N as resolveAgentMainSessionKey, d as updateSessionStore, l as saveSessionStore, o as loadSessionStore } from "./sessions-BVmrZrFA.js";
|
|
9
9
|
import { t as HEARTBEAT_TOKEN } from "./tokens-ANnYrShl.js";
|
|
10
10
|
import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-BxYZzFkm.js";
|
|
11
11
|
import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-BANaKLsQ.js";
|
|
12
|
-
import { t as deliverOutboundPayloads } from "./deliver-
|
|
12
|
+
import { t as deliverOutboundPayloads } from "./deliver-meQdcFaA.js";
|
|
13
13
|
import { i as hasErrnoCode, n as formatErrorMessage } from "./errors-Ba_ROWsq.js";
|
|
14
14
|
import { c as resolveStorePath, n as resolveSessionFilePath } from "./paths-DNdWAq7b.js";
|
|
15
15
|
import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-C2G22afw.js";
|
|
@@ -15,7 +15,7 @@ import "./client-DrK7aLru.js";
|
|
|
15
15
|
import "./call-HzbpjcFE.js";
|
|
16
16
|
import "./message-channel-CVHJDItx.js";
|
|
17
17
|
import "./pairing-token-Byh6drgn.js";
|
|
18
|
-
import "./subagent-registry-
|
|
18
|
+
import "./subagent-registry-DGNGenUN.js";
|
|
19
19
|
import "./sessions-BVmrZrFA.js";
|
|
20
20
|
import "./tokens-ANnYrShl.js";
|
|
21
21
|
import "./plugins-BxYZzFkm.js";
|
|
@@ -25,13 +25,13 @@ import "./logging-CFvkxgcX.js";
|
|
|
25
25
|
import "./send-mdCBM_lP.js";
|
|
26
26
|
import "./send-ENOozmo1.js";
|
|
27
27
|
import "./with-timeout-BJj1dns_.js";
|
|
28
|
-
import "./deliver-
|
|
28
|
+
import "./deliver-meQdcFaA.js";
|
|
29
29
|
import "./diagnostic-C6WTf4ZE.js";
|
|
30
30
|
import "./diagnostic-session-state-CIjIGxEE.js";
|
|
31
31
|
import "./accounts-1gFWxwAw.js";
|
|
32
32
|
import "./send-Dd6W68eD.js";
|
|
33
33
|
import "./image-ops-CKJNUuNW.js";
|
|
34
|
-
import "./pi-embedded-helpers-
|
|
34
|
+
import "./pi-embedded-helpers-C_U_c_EU.js";
|
|
35
35
|
import "./sandbox-BMaHJcKh.js";
|
|
36
36
|
import "./chrome-DOT5Dxfr.js";
|
|
37
37
|
import { l as promptYesNo } from "./tailscale-BxzsxqAY.js";
|
|
@@ -67,9 +67,9 @@ import "./ir-DetFY9t5.js";
|
|
|
67
67
|
import "./render-e7fENCYH.js";
|
|
68
68
|
import "./commands-CDrOx1RO.js";
|
|
69
69
|
import "./commands-registry-BcqdkMzV.js";
|
|
70
|
-
import "./image-
|
|
70
|
+
import "./image-C8HOu4vb.js";
|
|
71
71
|
import "./tool-display-DixohEVL.js";
|
|
72
|
-
import "./runner-
|
|
72
|
+
import "./runner-CbkB3vpb.js";
|
|
73
73
|
import "./model-catalog-DzKq0MC2.js";
|
|
74
74
|
import "./session-utils-DbIfE0Ek.js";
|
|
75
75
|
import "./skill-commands-BdHYzdEB.js";
|
|
@@ -104,7 +104,7 @@ import { a as installPackageDir, i as withTempDir, n as installFromNpmSpecArchiv
|
|
|
104
104
|
import { t as renderTable } from "./table-C9BoE_4p.js";
|
|
105
105
|
import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-DWI9N-Ks.js";
|
|
106
106
|
import { t as buildWorkspaceHookStatus } from "./hooks-status-CNo1bkDq.js";
|
|
107
|
-
import { t as buildPluginStatusReport } from "./status-
|
|
107
|
+
import { t as buildPluginStatusReport } from "./status-BjjDHl4v.js";
|
|
108
108
|
import path from "node:path";
|
|
109
109
|
import fs from "node:fs";
|
|
110
110
|
import fs$1 from "node:fs/promises";
|