@vibe-lark/larkpal 0.1.85 → 0.1.87
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/account-id-BM1T6029-BzQ_cMoi.mjs +1 -0
- package/dist/activation-context--5yu1dPF-XV0Y0pTy.mjs +1 -0
- package/dist/anthropic-CFZUCb1w.mjs +39 -0
- package/dist/assistant-visible-text-DuFWokAt-BOJV_zwc.mjs +9 -0
- package/dist/azure-openai-responses-BEuiMaF-.mjs +1 -0
- package/dist/boundary-file-read-BSd9MXPy-gnNVhPKT.mjs +1 -0
- package/dist/browser-lifecycle-cleanup-BdNsMhMD-BM97qA_M.mjs +1 -0
- package/dist/build-Bkj0hOS2.mjs +3 -0
- package/dist/bundled-compat-BpaDaAAu-DJtrIX6i.mjs +27 -0
- package/dist/bundled-dir-U738ay4K-BxbzrJOo.mjs +1 -0
- package/dist/call-DimWbpgJ-B4pv55RH.mjs +20 -0
- package/dist/channel-bootstrap.runtime-BVclcGv1-CEZ0-JP9.mjs +1 -0
- package/dist/channel-bootstrap.runtime-Cwcr38m2-Dt6QlQkX.mjs +1 -0
- package/dist/chunk-DHbaKqs-.mjs +1 -0
- package/dist/cli.mjs +7 -92
- package/dist/command-format-LSnUCVVF-Dn4h9IOh.mjs +16 -0
- package/dist/config-Bim2pi8a-03N-28sw.mjs +1 -0
- package/dist/delivery-context.shared-j5hC5qb1-BSLQG47q.mjs +1 -0
- package/dist/diagnostic-ClMwNnUA-BMKvPQJT.mjs +1 -0
- package/dist/dist-J5UB83Ws.mjs +601 -0
- package/dist/dist-coestTs9.mjs +5 -0
- package/dist/env-api-keys-Cuz5irWW.mjs +1 -0
- package/dist/event-stream-B7Ei41Bu.mjs +1 -0
- package/dist/facade-loader-DFzIYYt_-4bzFvy-b.mjs +1 -0
- package/dist/from-Ba69_5cR.mjs +14 -0
- package/dist/gateway-method-policy-C7rf0SeV-CTJcMQCE.mjs +1 -0
- package/dist/github-copilot-headers-BfhryVuU.mjs +1 -0
- package/dist/google-ABo-1guT.mjs +1 -0
- package/dist/google-gemini-cli-CGlN1zUA.mjs +2 -0
- package/dist/google-shared-C60sNhwd.mjs +301 -0
- package/dist/google-vertex-De0nAItu.mjs +1 -0
- package/dist/hash-Dw-N8Y9l.mjs +1 -0
- package/dist/headers-Bpsp70B9.mjs +1 -0
- package/dist/home-dir-C44RaPME-B5iLWwCq.mjs +1 -0
- package/dist/ids-BPsM98Uu-CJBJAeVC.mjs +1 -0
- package/dist/image-2w3cApg7-CrpUMCvm.mjs +3 -0
- package/dist/interactive-init-C5MFL5MW.mjs +8 -0
- package/dist/io-CH2g3vsv-JJtUIa_U.mjs +10 -0
- package/dist/jiti-loader-cache-Bat69wam-DNIteTtO.mjs +9 -0
- package/dist/json-file-BQRNuxmK-hRjIgOXI.mjs +1 -0
- package/dist/json-parse-BESd8UAM.mjs +3 -0
- package/dist/jws-YaZ38F_i.mjs +12 -0
- package/dist/lark-cli-provider-BLMxH6CN.mjs +4 -0
- package/dist/lark-logger-xpMKNNtY.mjs +1 -0
- package/dist/live-smoke-DpURW676.mjs +33 -0
- package/dist/load-context-mb7uvLSn-3xYwSnOZ.mjs +1 -0
- package/dist/loader-708jrx4Y-BbJRXNlQ.mjs +4 -0
- package/dist/main.mjs +480 -18553
- package/dist/manifest-registry-_hxKCS2K-OL8KK_o4.mjs +15 -0
- package/dist/mcp-server.mjs +4 -527
- package/dist/message-channel-Bk_YHfQg-n2Hw2Y0L.mjs +1 -0
- package/dist/message-channel-core-DTA--Gjh-CIh10vfo.mjs +1 -0
- package/dist/message.config.runtime-K-k4XOyq-F_h0Cgkl.mjs +1 -0
- package/dist/message.gateway.runtime-DqHOHRTQ-ge4c5p4s.mjs +1 -0
- package/dist/mistral-DyL3Zo1b.mjs +7 -0
- package/dist/model-auth-env-oyg2Hexc-DJbt9J3o.mjs +1 -0
- package/dist/models-config-BmpSQJQF-BL6S5qAo.mjs +1 -0
- package/dist/models-config.runtime-SOhLEw-f.mjs +1 -0
- package/dist/multipart-parser-B9dwXBqu.mjs +2 -0
- package/dist/oauth-25y2wc7K.mjs +75 -0
- package/dist/openai-C-rgGb7X.mjs +16 -0
- package/dist/openai-codex-responses-BbyAPsP1.mjs +7 -0
- package/dist/openai-completions-Bu5qvQzb.mjs +5 -0
- package/dist/openai-responses-pIdwQBc4.mjs +1 -0
- package/dist/openai-responses-shared-DqW1JSux.mjs +10 -0
- package/dist/paths-D6msg0S1-BO4XgM1u.mjs +1 -0
- package/dist/paths-D92DjaZ--DdtJ-zYp.mjs +1 -0
- package/dist/pi-model-discovery-Bd0TWzo8-DvSM0eWu.mjs +1 -0
- package/dist/pi-model-discovery-runtime-PrjWOmsV.mjs +1 -0
- package/dist/pi-tools.before-tool-call.runtime-Bn7uqKie-WPxU5oNX.mjs +2 -0
- package/dist/plugin-auto-enable-DdH3n9V8-Dr_bUXkG.mjs +1 -0
- package/dist/process-scoped-map-B2cWkYET-Co-i-MXA.mjs +1 -0
- package/dist/provider-discovery.runtime-DY0VWQ81.mjs +1 -0
- package/dist/provider-model-compat-CFqcq0it-BUwZENrz.mjs +1 -0
- package/dist/provider-runtime-C8rljsNs-BDvu6FW3.mjs +1 -0
- package/dist/provider-runtime-CT50mNIX-DImw7ZZu.mjs +79 -0
- package/dist/provider-stream-COLujAAo-Dpq1DSIk.mjs +248 -0
- package/dist/providers.runtime-Ba7tOlq7-B4t6ywCr.mjs +1 -0
- package/dist/public-surface-loader-BVl0NQAE-TfJ3izj1.mjs +1 -0
- package/dist/resolve-C33B7eeu-DZM_z6Wr.mjs +1 -0
- package/dist/runtime-Cym-fqI8-1GOIuRRQ.mjs +1 -0
- package/dist/runtime-channel-state-CohMybAh-BBzhl07Q.mjs +1 -0
- package/dist/runtime-snapshot-C54O1-gI-DxusscPf.mjs +1 -0
- package/dist/runtime-state-IBOIXKOx-Cw1GA1td.mjs +1 -0
- package/dist/runtime-web-tools-fallback.runtime-Ca-qn1mj-BsYE2gOd.mjs +1 -0
- package/dist/runtime-web-tools-manifest.runtime-BgxQTjmq-P6MKP9gQ.mjs +1 -0
- package/dist/runtime-web-tools-public-artifacts.runtime-D9qcoWIX-5VoyjouO.mjs +1 -0
- package/dist/session-archive.runtime-B52_5vs4-cU2tYbBz.mjs +1 -0
- package/dist/session-key-Cn2QoOyX-QZeYmbxd.mjs +1 -0
- package/dist/session-transcript-files.fs-DEeFXruQ-CXIAFSsr.mjs +1 -0
- package/dist/src-CCDx_C-U.mjs +3 -0
- package/dist/src-DACmA9V6.mjs +5 -0
- package/dist/subagent-announce-L5WsQatW--rMn240x.mjs +2 -0
- package/dist/subagent-announce.registry.runtime-DiqZyeTs-DNfNHsls.mjs +1 -0
- package/dist/subagent-registry-steer-runtime-DFgZFC0j-XYS1_qwl.mjs +1 -0
- package/dist/subagent-system-prompt-C1qnN--K-CsU4f97T.mjs +23 -0
- package/dist/target-parsing-loaded-DKkb6jJY-B830OA1a.mjs +12 -0
- package/dist/task-registry-delivery-runtime-Dd1CUkZF-B2Hj2k8C.mjs +16 -0
- package/dist/task-registry-delivery-runtime-ragbeVx5-Bdvo2Q5u.mjs +1 -0
- package/dist/thinking-Bh-7MqXz-uApNUe6g.mjs +1 -0
- package/dist/transcript-E_-ISOkD-VTwb782D.mjs +5 -0
- package/dist/transcript.runtime-BqhvZZdl-B4E0TiX5.mjs +1 -0
- package/dist/transform-messages-BTA3xbAI.mjs +1 -0
- package/dist/web-provider-public-artifacts-BlpRwIUS-DbVhDOrY.mjs +1 -0
- package/dist/web-search-providers.runtime--0aUtC3b-Bjh4Bmrz.mjs +1 -0
- package/package.json +1 -2
- package/dist/interactive-init-B6j8j_Ap.mjs +0 -450
- package/dist/lark-cli-provider-7LvtOIF_.mjs +0 -554
- package/dist/lark-logger-D7_pEVQc.mjs +0 -143
- package/dist/live-smoke-nvTUPtrv.mjs +0 -7135
- package/dist/rolldown-runtime-wcPFST8Q.mjs +0 -13
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import{c as e,o as t,r as n,s as r}from"./home-dir-C44RaPME-B5iLWwCq.mjs";import{o as i}from"./paths-D92DjaZ--DdtJ-zYp.mjs";import{n as a,s as o,t as s}from"./bundled-dir-U738ay4K-BxbzrJOo.mjs";import{i as c,n as l,r as u}from"./ids-BPsM98Uu-CJBJAeVC.mjs";import{t as d}from"./runtime-channel-state-CohMybAh-BBzhl07Q.mjs";import{F as f,M as p,N as m,O as h,_ as g,a as _,d as v,f as ee,i as te,k as ne,m as re,n as ie,o as ae,p as y,r as oe,s as se,t as ce}from"./manifest-registry-_hxKCS2K-OL8KK_o4.mjs";import{r as le}from"./boundary-file-read-BSd9MXPy-gnNVhPKT.mjs";import{r as ue,s as de,t as fe}from"./jiti-loader-cache-Bat69wam-DNIteTtO.mjs";import{createRequire as pe}from"node:module";import b from"node:fs";import x from"node:path";import{fileURLToPath as me}from"node:url";import he,{tmpdir as ge}from"node:os";import{spawnSync as _e}from"node:child_process";import{createHash as ve}from"node:crypto";import ye from"node:process";import be from"node:tty";import{z as S}from"zod";function xe(e){return{configured:e.exposure?.configured??e.showConfigured??!0,setup:e.exposure?.setup??e.showInSetup??!0,docs:e.exposure?.docs??!0}}function Se(e){let t=t=>e.arrayFieldMode===`defined`?t!==void 0:!!t?.length,n=e.selectionDocsPrefixMode===`defined`?e.channel.selectionDocsPrefix!==void 0:!!e.channel.selectionDocsPrefix;return{id:e.id,label:e.label,selectionLabel:e.selectionLabel,docsPath:e.docsPath,docsLabel:e.docsLabel,blurb:e.blurb,...t(e.channel.aliases)?{aliases:e.channel.aliases}:{},...e.channel.order===void 0?{}:{order:e.channel.order},...n?{selectionDocsPrefix:e.channel.selectionDocsPrefix}:{},...e.channel.selectionDocsOmitLabel===void 0?{}:{selectionDocsOmitLabel:e.channel.selectionDocsOmitLabel},...t(e.channel.selectionExtras)?{selectionExtras:e.channel.selectionExtras}:{},...e.detailLabel?{detailLabel:e.detailLabel}:{},...e.systemImage?{systemImage:e.systemImage}:{},...e.channel.markdownCapable===void 0?{}:{markdownCapable:e.channel.markdownCapable},exposure:xe(e.channel),...e.channel.quickstartAllowFrom===void 0?{}:{quickstartAllowFrom:e.channel.quickstartAllowFrom},...e.channel.forceAccountBinding===void 0?{}:{forceAccountBinding:e.channel.forceAccountBinding},...e.channel.preferSessionLookupForAnnounceTarget===void 0?{}:{preferSessionLookupForAnnounceTarget:e.channel.preferSessionLookupForAnnounceTarget},...t(e.channel.preferOver)?{preferOver:e.channel.preferOver}:{}}}const Ce=new Set(l);function we(t){let n=e(t.channel.label);if(!n)throw Error(`Missing label for bundled chat channel "${t.id}"`);return Se({id:t.id,channel:t.channel,label:n,selectionLabel:e(t.channel.selectionLabel)||n,docsPath:e(t.channel.docsPath)||`/channels/${t.id}`,docsLabel:e(t.channel.docsLabel),blurb:e(t.channel.blurb)||``,detailLabel:e(t.channel.detailLabel),systemImage:e(t.channel.systemImage),arrayFieldMode:`non-empty`,selectionDocsPrefixMode:`defined`})}function Te(){let t=new Map;for(let n of u()){let r=e(n.id);if(!r||!Ce.has(r))continue;let i=r;t.set(i,we({id:i,channel:n.channel}))}return Object.freeze(Object.fromEntries(t))}const Ee=Te();function De(){return l.map(e=>Ee[e])}function Oe(e){return Ee[e]}function ke(){let e=d();return e&&e.channels&&e.channels.length>0?e.channels:[]}function Ae(e){return ke().find(t=>{let n=r(t.plugin.id??``)??``;return n&&n===e?!0:(t.plugin.meta?.aliases??[]).some(t=>r(t)===e)})}function je(e){return c(e)}function Me(e){let t=r(e);return t?Ae(t)?.plugin.id??null:null}function Ne(){return ke().flatMap(t=>{let n=e(t.plugin.id);return n?[n]:[]})}const C=new Map;function Pe(){return{lastToken:null,containsRepetition:!1,hasAlternation:!1,branchMinLength:0,branchMaxLength:0,altMinLength:null,altMaxLength:null}}function Fe(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?1/0:e+t}function Ie(e,t){return Number.isFinite(e)?e*t:t===0?0:1/0}function Le(e){if(e.altMinLength===null||e.altMaxLength===null){e.altMinLength=e.branchMinLength,e.altMaxLength=e.branchMaxLength;return}e.altMinLength=Math.min(e.altMinLength,e.branchMinLength),e.altMaxLength=Math.max(e.altMaxLength,e.branchMaxLength)}function Re(e,t){let n=e[t],r=e[t+1]===`?`?2:1;if(n===`*`)return{consumed:r,minRepeat:0,maxRepeat:null};if(n===`+`)return{consumed:r,minRepeat:1,maxRepeat:null};if(n===`?`)return{consumed:r,minRepeat:0,maxRepeat:1};if(n!==`{`)return null;let i=t+1;for(;i<e.length&&/\d/.test(e[i]);)i+=1;if(i===t+1)return null;let a=Number.parseInt(e.slice(t+1,i),10),o=a;if(e[i]===`,`){i+=1;let t=i;for(;i<e.length&&/\d/.test(e[i]);)i+=1;o=i===t?null:Number.parseInt(e.slice(t,i),10)}return e[i]!==`}`||(i+=1,e[i]===`?`&&(i+=1),o!==null&&o<a)?null:{consumed:i-t,minRepeat:a,maxRepeat:o}}function ze(e){let t=[],n=!1;for(let r=0;r<e.length;r+=1){let i=e[r];if(i===`\\`){r+=1,t.push({kind:`simple-token`});continue}if(n){i===`]`&&(n=!1);continue}if(i===`[`){n=!0,t.push({kind:`simple-token`});continue}if(i===`(`){t.push({kind:`group-open`});continue}if(i===`)`){t.push({kind:`group-close`});continue}if(i===`|`){t.push({kind:`alternation`});continue}let a=Re(e,r);if(a){t.push({kind:`quantifier`,quantifier:a}),r+=a.consumed-1;continue}t.push({kind:`simple-token`})}return t}function Be(e){let t=[Pe()],n=e=>{let n=t[t.length-1];n.lastToken=e,e.containsRepetition&&(n.containsRepetition=!0),n.branchMinLength=Fe(n.branchMinLength,e.minLength),n.branchMaxLength=Fe(n.branchMaxLength,e.maxLength)},r=()=>{n({containsRepetition:!1,hasAmbiguousAlternation:!1,minLength:1,maxLength:1})};for(let i of e){if(i.kind===`simple-token`){r();continue}if(i.kind===`group-open`){t.push(Pe());continue}if(i.kind===`group-close`){if(t.length>1){let e=t.pop();e.hasAlternation&&Le(e);let r=e.hasAlternation?e.altMinLength??0:e.branchMinLength,i=e.hasAlternation?e.altMaxLength??0:e.branchMaxLength;n({containsRepetition:e.containsRepetition,hasAmbiguousAlternation:e.hasAlternation&&e.altMinLength!==null&&e.altMaxLength!==null&&e.altMinLength!==e.altMaxLength,minLength:r,maxLength:i})}continue}if(i.kind===`alternation`){let e=t[t.length-1];e.hasAlternation=!0,Le(e),e.branchMinLength=0,e.branchMaxLength=0,e.lastToken=null;continue}let e=t[t.length-1],a=e.lastToken;if(!a)continue;if(a.containsRepetition||a.hasAmbiguousAlternation&&i.quantifier.maxRepeat===null)return!0;let o=a.minLength,s=a.maxLength;a.minLength=Ie(a.minLength,i.quantifier.minRepeat),a.maxLength=i.quantifier.maxRepeat===null?1/0:Ie(a.maxLength,i.quantifier.maxRepeat),a.containsRepetition=!0,e.containsRepetition=!0,e.branchMinLength=e.branchMinLength-o+a.minLength,e.branchMaxLength=Fe(Number.isFinite(e.branchMaxLength)&&Number.isFinite(s)?e.branchMaxLength-s:1/0,a.maxLength)}return!1}function Ve(e){return Be(ze(e))}function He(e,t=``){let n=e.trim();if(!n)return{regex:null,source:n,flags:t,reason:`empty`};let r=`${t}::${n}`;if(C.has(r))return C.get(r)??{regex:null,source:n,flags:t,reason:`invalid-regex`};let i;if(Ve(n))i={regex:null,source:n,flags:t,reason:`unsafe-nested-repetition`};else try{i={regex:new RegExp(n,t),source:n,flags:t,reason:null}}catch{i={regex:null,source:n,flags:t,reason:`invalid-regex`}}if(C.set(r,i),C.size>256){let e=C.keys().next().value;e&&C.delete(e)}return i}function Ue(e){return e.reason===null||e.reason===`empty`?null:e.reason}function We(e,t=``){let n=He(e,t);return n.reason===`empty`?null:{regex:n.regex,pattern:n.source,flags:n.flags,reason:Ue(n)}}function w(e){let t=process.getBuiltinModule;if(typeof t!=`function`)return null;try{let n=t(`module`),r=typeof n.createRequire==`function`?n.createRequire:null;return r?r(e):null}catch{return null}}function Ge(e,t,n,r){let i=r?.chunkThreshold??32768,a=r?.chunkSize??16384;if(i<=0||a<=0||e.length<=i)return e.replace(t,n);let o=``;for(let r=0;r<e.length;r+=a)o+=e.slice(r,r+a).replace(t,n);return o}const Ke=w(import.meta.url),qe=[String.raw`\b[A-Z0-9_]*(?:KEY|TOKEN|SECRET|PASSWORD|PASSWD)\b\s*[=:]\s*(["']?)([^\s"'\\]+)\1`,String.raw`"(?:apiKey|token|secret|password|passwd|accessToken|refreshToken)"\s*:\s*"([^"]+)"`,String.raw`--(?:api[-_]?key|hook[-_]?token|token|secret|password|passwd)\s+(["']?)([^\s"']+)\1`,String.raw`Authorization\s*[:=]\s*Bearer\s+([A-Za-z0-9._\-+=]+)`,String.raw`\bBearer\s+([A-Za-z0-9._\-+=]{18,})\b`,String.raw`-----BEGIN [A-Z ]*PRIVATE KEY-----[\s\S]+?-----END [A-Z ]*PRIVATE KEY-----`,String.raw`\b(sk-[A-Za-z0-9_-]{8,})\b`,String.raw`\b(ghp_[A-Za-z0-9]{20,})\b`,String.raw`\b(github_pat_[A-Za-z0-9_]{20,})\b`,String.raw`\b(xox[baprs]-[A-Za-z0-9-]{10,})\b`,String.raw`\b(xapp-[A-Za-z0-9-]{10,})\b`,String.raw`\b(gsk_[A-Za-z0-9_-]{10,})\b`,String.raw`\b(AIza[0-9A-Za-z\-_]{20,})\b`,String.raw`\b(pplx-[A-Za-z0-9_-]{10,})\b`,String.raw`\b(npm_[A-Za-z0-9]{10,})\b`,String.raw`\bbot(\d{6,}:[A-Za-z0-9_-]{20,})\b`,String.raw`\b(\d{6,}:[A-Za-z0-9_-]{20,})\b`];function Je(e){return e===`off`?`off`:`tools`}function Ye(e){if(e instanceof RegExp)return e.flags.includes(`g`)?e:new RegExp(e.source,`${e.flags}g`);if(!e.trim())return null;let t=e.match(/^\/(.+)\/([gimsuy]*)$/);if(t){let e=t[2].includes(`g`)?t[2]:`${t[2]}g`;return We(t[1],e)?.regex??null}return We(e,`gi`)?.regex??null}function Xe(e){return(e?.length?e:qe).map(Ye).filter(e=>!!e)}function Ze(e){return e.length<18?`***`:`${e.slice(0,6)}…${e.slice(-4)}`}function Qe(e){let t=e.split(/\r?\n/).filter(Boolean);return t.length<2?`***`:`${t[0]}\n…redacted…\n${t[t.length-1]}`}function $e(e,t){if(e.includes(`PRIVATE KEY-----`))return Qe(e);let n=t.findLast(e=>typeof e==`string`&&e.length>0)??e,r=Ze(n);return n===e?r:e.replace(n,r)}function et(e,t){let n=e;for(let e of t)n=Ge(n,e,(...e)=>$e(e[0],e.slice(1,-2)));return n}function tt(){let e;try{e=(Ke?.(`../config/config.js`))?.loadConfig?.().logging}catch{e=void 0}return{mode:Je(e?.redactSensitive),patterns:e?.redactPatterns}}function nt(e){let t=e??tt(),n=Je(t.mode);return n===`off`?{mode:n,patterns:[]}:{mode:n,patterns:Xe(t.patterns)}}function rt(e,t){if(!e)return e;let n=nt(t);return n.mode===`off`||!n.patterns.length?e:et(e,n.patterns)}function it(e){if(!e||typeof e!=`object`)return``;let t=e.name;return typeof t==`string`?t:``}function T(e){let t;if(e instanceof Error){t=e.message||e.name||`Error`;let n=e.cause,r=new Set([e]);for(;n&&!r.has(n);)if(r.add(n),n instanceof Error)n.message&&(t+=` | ${n.message}`),n=n.cause;else if(typeof n==`string`){t+=` | ${n}`;break}else break}else if(typeof e==`string`)t=e;else if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)t=String(e);else try{t=JSON.stringify(e)}catch{t=Object.prototype.toString.call(e)}return rt(t)}const E=`/tmp/openclaw`,at=b.constants.W_OK|b.constants.X_OK;function ot(e,t){return typeof e==`object`&&!!e&&`code`in e&&e.code===t}function st(e={}){let t=e.accessSync??b.accessSync,n=e.chmodSync??b.chmodSync,r=e.lstatSync??b.lstatSync,i=e.mkdirSync??b.mkdirSync,a=e.warn??(e=>console.warn(e)),o=e.getuid??(()=>{try{return typeof process.getuid==`function`?process.getuid():void 0}catch{return}}),s=typeof e.tmpdir==`function`?e.tmpdir:ge,c=o(),l=e=>c===void 0?!0:!(typeof e.uid==`number`&&e.uid!==c||typeof e.mode==`number`&&e.mode&18),u=()=>{let e=s(),t=c===void 0?`openclaw`:`openclaw-${c}`;return x.join(e,t)},d=e=>e.isDirectory()&&!e.isSymbolicLink()&&l(e),f=e=>{try{return d(r(e))?(t(e,at),`available`):`invalid`}catch(e){return ot(e,`ENOENT`)?`missing`:`invalid`}},p=e=>{try{let t=r(e);return!t.isDirectory()||t.isSymbolicLink()||c!==void 0&&typeof t.uid==`number`&&t.uid!==c||typeof t.mode!=`number`||!(t.mode&18)?!1:(n(e,448),a(`[openclaw] tightened permissions on temp dir: ${e}`),f(e)===`available`)}catch{return!1}},m=()=>{let e=u(),t=f(e);if(t===`available`)return e;if(t===`invalid`){if(p(e))return e;throw Error(`Unsafe fallback OpenClaw temp dir: ${e}`)}try{i(e,{recursive:!0,mode:448}),n(e,448)}catch{throw Error(`Unable to create fallback OpenClaw temp dir: ${e}`)}if(f(e)!==`available`&&!p(e))throw Error(`Unsafe fallback OpenClaw temp dir: ${e}`);return e},h=f(E);if(h===`available`)return E;if(h===`invalid`)return p(`/tmp/openclaw`)?E:m();try{return t(`/tmp`,at),i(E,{recursive:!0,mode:448}),n(E,448),f(`/tmp/openclaw`)!==`available`&&!p(`/tmp/openclaw`)?m():E}catch{return m()}}function ct(e){return{href:e.href,protocol:e.protocol,username:e.username,password:e.password,host:e.host,hostname:e.hostname,port:e.port,pathname:e.pathname,search:e.search,searchParams:[...e.searchParams].map(([e,t])=>({key:e,value:t})),hash:e.hash,origin:e.origin}}const lt={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]};function ut(e,t,n,r=!1){let i=String(t),a=(e,t)=>`\u001b[${t[0]}m${e}\u001b[${t[1]}m`,o=(e,t)=>t!=null&&typeof t==`string`?a(e,lt[t]):t!=null&&Array.isArray(t)?t.reduce((e,t)=>o(e,t),e):t!=null&&t[e.trim()]!=null?o(e,t[e.trim()]):t!=null&&t[`*`]!=null?o(e,t[`*`]):e;return i.replace(/{{(.+?)}}/g,(t,i)=>{let s=n[i]==null?r?``:t:String(n[i]);return e.stylePrettyLogs?o(s,e?.prettyLogStyles?.[i]??null)+a(``,lt.reset):s})}function D(e,t=2,n=0){return e!=null&&isNaN(e)?``:(e=e==null?e:e+n,t===2?e==null?`--`:e<10?`0`+e:e.toString():e==null?`---`:e<10?`00`+e:e<100?`0`+e:e.toString())}function dt(e,t){if(t==null)return{text:``,template:e.prettyLogTemplate,placeholders:{}};let n=e.prettyLogTemplate,r={};n.includes(`{{yyyy}}.{{mm}}.{{dd}} {{hh}}:{{MM}}:{{ss}}:{{ms}}`)?n=n.replace(`{{yyyy}}.{{mm}}.{{dd}} {{hh}}:{{MM}}:{{ss}}:{{ms}}`,`{{dateIsoStr}}`):e.prettyLogTimeZone===`UTC`?(r.yyyy=t.date?.getUTCFullYear()??`----`,r.mm=D(t.date?.getUTCMonth(),2,1),r.dd=D(t.date?.getUTCDate(),2),r.hh=D(t.date?.getUTCHours(),2),r.MM=D(t.date?.getUTCMinutes(),2),r.ss=D(t.date?.getUTCSeconds(),2),r.ms=D(t.date?.getUTCMilliseconds(),3)):(r.yyyy=t.date?.getFullYear()??`----`,r.mm=D(t.date?.getMonth(),2,1),r.dd=D(t.date?.getDate(),2),r.hh=D(t.date?.getHours(),2),r.MM=D(t.date?.getMinutes(),2),r.ss=D(t.date?.getSeconds(),2),r.ms=D(t.date?.getMilliseconds(),3));let i=e.prettyLogTimeZone===`UTC`?t.date:t.date==null?void 0:new Date(t.date.getTime()-t.date.getTimezoneOffset()*6e4);r.rawIsoStr=i?.toISOString()??``,r.dateIsoStr=i?.toISOString().replace(`T`,` `).replace(`Z`,``)??``,r.logLevelName=t.logLevelName,r.fileNameWithLine=t.path?.fileNameWithLine??``,r.filePathWithLine=t.path?.filePathWithLine??``,r.fullFilePath=t.path?.fullFilePath??``;let a=e.parentNames?.join(e.prettyErrorParentNamesSeparator);a=a!=null&&t.name!=null?a+e.prettyErrorParentNamesSeparator:void 0;let o=t.name!=null||a!=null?`${a??``}${t.name??``}`:``;return r.name=o,r.nameWithDelimiterPrefix=o.length>0?e.prettyErrorLoggerNameDelimiter+o:``,r.nameWithDelimiterSuffix=o.length>0?o+e.prettyErrorLoggerNameDelimiter:``,e.overwrite?.addPlaceholders!=null&&e.overwrite.addPlaceholders(t,r),{text:ut(e,n,r),template:n,placeholders:r}}const ft=[/(?:^|[\\/])node_modules[\\/].*tslog/i,/(?:^|[\\/])deps[\\/].*tslog/i,/tslog[\\/]+src[\\/]+internal[\\/]/i,/tslog[\\/]+src[\\/]BaseLogger/i,/tslog[\\/]+src[\\/]index/i];function pt(e){let t=typeof e?.stack==`string`?e.stack:void 0;return t==null||t.length===0?[]:t.split(`
|
|
2
|
+
`).map(e=>e.trimEnd())}function mt(e){return e.filter(e=>e.length>0&&!/^\s*Error\b/.test(e))}function ht(e,t){let n=[];for(let r of e){let e=t(r);e!=null&&n.push(e)}return n}function gt(e,t=ft){for(let n=0;n<e.length;n+=1){let r=e[n],i=r.filePath??``,a=r.fullFilePath??``;if(!t.some(e=>e.test(i)||e.test(a)))return n}return 0}function _t(e){return mt(pt(e))}function vt(e,t){return ht(_t(e),t)}function yt(e,t){return e<0?0:e>=t?Math.max(0,t-1):e}function bt(){return[...ft]}function xt(e,t={}){let n=t.maxDepth??5,r=[],i=new Set,a=e,o=0;for(;a!=null&&o<n;){let e=a?.cause;if(e==null||i.has(e))break;i.add(e),r.push(St(e)),a=e,o+=1}return r}function St(e){if(e instanceof Error)return e;let t=Error(typeof e==`string`?e:JSON.stringify(e));return typeof e==`object`&&e&&Object.assign(t,e),t}function Ct(e){let t=new Set;return JSON.stringify(e,(e,n)=>{if(typeof n==`object`&&n){if(t.has(n))return`[Circular]`;t.add(n)}return typeof n==`bigint`?`${n}`:n===void 0?`[undefined]`:n})}function O(e,t){let n={seen:[],stylize:Tt};return t!=null&&Ut(n,t),k(n.showHidden)&&(n.showHidden=!1),k(n.depth)&&(n.depth=2),k(n.colors)&&(n.colors=!0),k(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=Et),Bt(n,e,n.depth)}O.colors=lt,O.styles={special:`cyan`,number:`yellow`,boolean:`yellow`,undefined:`grey`,null:`bold`,string:`green`,date:`magenta`,regexp:`red`};function wt(e){return typeof e==`boolean`}function k(e){return e===void 0}function Tt(e){return e}function Et(e,t){let n=O.styles[t];return n!=null&&O?.colors?.[n]?.[0]!=null&&O?.colors?.[n]?.[1]!=null?`\x1B[`+O.colors[n][0]+`m`+e+`\x1B[`+O.colors[n][1]+`m`:e}function Dt(e){return typeof e==`function`}function Ot(e){return typeof e==`string`}function kt(e){return typeof e==`number`}function At(e){return e===null}function jt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Mt(e){return Nt(e)&&It(e)===`[object RegExp]`}function Nt(e){return typeof e==`object`&&!!e}function Pt(e){return Nt(e)&&(It(e)===`[object Error]`||e instanceof Error)}function Ft(e){return Nt(e)&&It(e)===`[object Date]`}function It(e){return Object.prototype.toString.call(e)}function Lt(e){let t={};return e.forEach(e=>{t[e]=!0}),t}function Rt(e,t,n,r,i){let a=[];for(let i=0,o=t.length;i<o;++i)jt(t,String(i))?a.push(Vt(e,t,n,r,String(i),!0)):a.push(``);return i.forEach(i=>{i.match(/^\d+$/)||a.push(Vt(e,t,n,r,i,!0))}),a}function zt(e){return`[`+Error.prototype.toString.call(e)+`]`}function Bt(e,t,n=0){if(e.customInspect&&t!=null&&Dt(t)&&t?.inspect!==O&&!(t?.constructor&&t?.constructor.prototype===t)){if(typeof t.inspect!=`function`&&t.toString!=null)return t.toString();let r=t?.inspect(n,e);return Ot(r)||(r=Bt(e,r,n)),r}let r=A(e,t);if(r)return r;let i=Object.keys(t),a=Lt(i);try{e.showHidden&&Object.getOwnPropertyNames&&(i=Object.getOwnPropertyNames(t))}catch{}if(Pt(t)&&(i.indexOf(`message`)>=0||i.indexOf(`description`)>=0))return zt(t);if(i.length===0)if(Dt(e.stylize)){if(Dt(t)){let n=t.name?`: `+t.name:``;return e.stylize(`[Function`+n+`]`,`special`)}if(Mt(t))return e.stylize(RegExp.prototype.toString.call(t),`regexp`);if(Ft(t))return e.stylize(Date.prototype.toISOString.call(t),`date`);if(Pt(t))return zt(t)}else return t;let o=``,s=!1,c=[`{
|
|
3
|
+
`,`
|
|
4
|
+
}`];if(Array.isArray(t)&&(s=!0,c=[`[
|
|
5
|
+
`,`
|
|
6
|
+
]`]),Dt(t)&&(o=` [Function`+(t.name?`: `+t.name:``)+`]`),Mt(t)&&(o=` `+RegExp.prototype.toString.call(t)),Ft(t)&&(o=` `+Date.prototype.toUTCString.call(t)),Pt(t)&&(o=` `+zt(t)),i.length===0&&(!s||t.length==0))return c[0]+o+c[1];if(n<0)return Mt(t)?e.stylize(RegExp.prototype.toString.call(t),`regexp`):e.stylize(`[Object]`,`special`);e.seen.push(t);let l;return l=s?Rt(e,t,n,a,i):i.map(r=>Vt(e,t,n,a,r,s)),e.seen.pop(),Ht(l,o,c)}function Vt(e,t,n,r,i,a){let o,s,c={value:void 0};try{c.value=t[i]}catch{}try{Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(t,i)||c)}catch{}if(c.get?s=c.set?e.stylize(`[Getter/Setter]`,`special`):e.stylize(`[Getter]`,`special`):c.set&&(s=e.stylize(`[Setter]`,`special`)),jt(r,i)||(o=`[`+i+`]`),s||(e.seen.indexOf(c.value)<0?(s=At(n)?Bt(e,c.value,void 0):Bt(e,c.value,n-1),s.indexOf(`
|
|
7
|
+
`)>-1&&(s=a?s.split(`
|
|
8
|
+
`).map(e=>` `+e).join(`
|
|
9
|
+
`).substr(2):`
|
|
10
|
+
`+s.split(`
|
|
11
|
+
`).map(e=>` `+e).join(`
|
|
12
|
+
`))):s=e.stylize(`[Circular]`,`special`)),k(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(``+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,`name`)):(o=o.replace(/'/g,`\\'`).replace(/\\"/g,`\\'`).replace(/(^"|"$)/g,`'`),o=e.stylize(o,`string`))}return o+`: `+s}function A(e,t){if(k(t))return e.stylize(`undefined`,`undefined`);if(Ot(t)){let n=`'`+JSON.stringify(t).replace(/^"|"$/g,``).replace(/'/g,`\\'`).replace(/\\"/g,`\\'`)+`'`;return e.stylize(n,`string`)}if(kt(t))return e.stylize(``+t,`number`);if(wt(t))return e.stylize(``+t,`boolean`);if(At(t))return e.stylize(`null`,`null`)}function Ht(e,t,n){return n[0]+(t===``?``:t+`
|
|
13
|
+
`)+` `+e.join(`,
|
|
14
|
+
`)+` `+n[1]}function Ut(e,t){let n={...e};if(!t||!Nt(t))return e;let r={...t},i=Object.keys(t),a=i.length;for(;a--;)n[i[a]]=r[i[a]];return n}function Wt(e,...t){let n={seen:[],stylize:Tt};e!=null&&Ut(n,e);let r=t[0],i=0,a=``,o=``;if(typeof r==`string`){if(t.length===1)return r;let s,c=0;for(let o=0;o<r.length-1;o++)if(r.charCodeAt(o)===37){let l=r.charCodeAt(++o);if(i+1!==t.length){switch(l){case 115:{let r=t[++i];s=typeof r==`number`||typeof r==`bigint`?A(n,r):typeof r!=`object`||!r?String(r):O(r,{...e,compact:3,colors:!1,depth:0});break}case 106:s=Ct(t[++i]);break;case 100:{let e=t[++i];s=typeof e==`bigint`?A(n,e):typeof e==`symbol`?`NaN`:A(n,e);break}case 79:s=O(t[++i],e);break;case 111:s=O(t[++i],{...e,showHidden:!0,showProxy:!0,depth:4});break;case 105:{let e=t[++i];s=typeof e==`bigint`?A(n,e):typeof e==`symbol`?`NaN`:A(n,parseInt(s));break}case 102:{let e=t[++i];s=typeof e==`symbol`?`NaN`:A(n,parseInt(e));break}case 99:i+=1,s=``;break;case 37:a+=r.slice(c,o),c=o+1;continue;default:continue}c!==o-1&&(a+=r.slice(c,o-1)),a+=s,c=o+1}else l===37&&(a+=r.slice(c,o),c=o+1)}c!==0&&(i++,o=` `,c<r.length&&(a+=r.slice(c)))}for(;i<t.length;){let n=t[i];a+=o,a+=typeof n==`string`?n:O(n,e),o=` `,i++}return a}function Gt(){try{let e=globalThis?.process;if(typeof e?.cwd==`function`)return e.cwd()}catch{}try{let e=globalThis?.Deno;if(typeof e?.cwd==`function`)return e.cwd()}catch{}}function Kt(){return typeof window<`u`&&typeof document<`u`}function qt(){if(!Kt())return!1;let e=globalThis?.navigator?.userAgent??``;return/firefox/i.test(e)||globalThis?.CSS?.supports?.(`color`,`#000`)?!0:/safari/i.test(e)&&!/chrome/i.test(e)}function Jt(){let e=ae(),t=te(e),n=e.name===`browser`||e.name===`worker`,r=n?[...bt(),/node_modules[\\/].*tslog/i]:[...bt(),/node:(?:internal|vm)/i,/\binternal[\\/]/i],i,a={getMeta(e,n,r,i,o,s){return Object.assign({},t,{name:o,parentNames:s,date:new Date,logLevelId:e,logLevelName:n,path:i?void 0:a.getCallerStackFrame(r)})},getCallerStackFrame(e,t=Error()){let n=vt(t,e=>o(e));if(n.length===0)return{};let i=gt(n,r);return n[yt(Number.isFinite(e)&&e>=0?e:i,n.length)]??{}},getErrorTrace(e){return vt(e,e=>o(e))},isError(e){return ce(e)},isBuffer(e){return typeof Buffer<`u`&&typeof Buffer.isBuffer==`function`?Buffer.isBuffer(e):!1},prettyFormatLogObj(e,t){return e.reduce((e,n)=>(a.isError(n)?e.errors.push(a.prettyFormatErrorObj(n,t)):e.args.push(n),e),{args:[],errors:[]})},prettyFormatErrorObj(e,t){let n=l(a.getErrorTrace(e),t),r=xt(e).map((e,n)=>[`Caused by (${n+1}): ${e.name??`Error`}${e.message?`: ${e.message}`:``}`,...l(vt(e,e=>o(e)),t)].join(`
|
|
15
|
+
`)),i={errorName:` ${e.name} `,errorMessage:u(e),errorStack:[...n,...r].join(`
|
|
16
|
+
`)};return ut(t,t.prettyErrorTemplate,i)},transportFormatted(e,t,n,r,i){let a=i.stylePrettyLogs!==!1,o=(n.length>0&&t.length>0?`
|
|
17
|
+
`:``)+n.join(`
|
|
18
|
+
`),s=f(e),c=a?e:s;if(d(a)){i.prettyInspectOptions.colors=!1;let e=ne(i.prettyInspectOptions,t),n=r==null?{text:s,styles:[]}:p(i,r),a=n.text.length>0&&n.styles.length>0,c=(a?n.text:s)+e+o;a?console.log(c,...n.styles):console.log(c);return}i.prettyInspectOptions.colors=a;let l=ne(i.prettyInspectOptions,t);console.log(c+l+o)},transportJSON(e){console.log(Ct(e))}};return se()===`test`&&(a.__resetWorkingDirectoryCacheForTests=()=>{i=void 0}),a;function o(e){return n?c(e):s(e)}function s(e){if(typeof e!=`string`||e.length===0)return;let t=e.trim();if(!t.includes(` at `)&&!t.startsWith(`at `))return;let n=t.replace(/^at\s+/,``),r,i=n,a=n.match(/^(.*?)\s+\((.*)\)$/);a&&(r=a[1],i=a[2]);let o=i.replace(/^\(/,``).replace(/\)$/,``),s=o.replace(/\?.*$/,``),c,l,u=s,d=s.split(`:`);d.length>=3&&/^\d+$/.test(d[d.length-1]??``)?(l=d.pop(),c=d.pop(),u=d.join(`:`)):d.length>=2&&/^\d+$/.test(d[d.length-1]??``)&&(c=d.pop(),u=d.join(`:`));let f=u.replace(/^file:\/\//,``),p=_();p!=null&&f.startsWith(p)&&(f=f.slice(p.length),f=f.replace(/^[\\/]/,``)),f.length===0&&(f=u);let m=ie(f),h=m.length>0?m:f,g=h.split(/\\|\//),v=g[g.length-1],ee=v&&c?`${v}:${c}`:void 0,te=h&&c?`${h}:${c}`:void 0;return{fullFilePath:o,fileName:v,fileNameWithLine:ee,fileColumn:l,fileLine:c,filePath:h,filePathWithLine:te,method:r}}function c(e){let t=globalThis.location?.origin;if(e==null)return;let n=e.match(Qt);if(!n)return;let r=n[1]?.replace(/\?.*$/,``);if(r==null)return;let i=r.split(`/`),a=n[2],o=n[3],s=i[i.length-1];return{fullFilePath:t?`${t}${r}`:r,fileName:s,fileNameWithLine:s&&a?`${s}:${a}`:void 0,fileColumn:o,fileLine:a,filePath:r,filePathWithLine:a?`${r}:${a}`:void 0,method:void 0}}function l(e,t){return e.map(e=>ut(t,t.prettyErrorStackTemplate,{...e},!0))}function u(e){return Object.getOwnPropertyNames(e).filter(e=>e!==`stack`&&e!==`cause`).reduce((t,n)=>{let r=e[n];return typeof r==`function`||t.push(String(r)),t},[]).join(`, `)}function d(t){return t&&(e.name===`browser`||e.name===`worker`)&&qt()}function f(e){return e.replace(Yt,``)}function p(e,t){if(t==null)return{text:``,styles:[]};let{template:n,placeholders:r}=dt(e,t),i=[],a=[],o=0,s=/{{(.+?)}}/g,c;for(;(c=s.exec(n))!=null;){c.index>o&&i.push(n.slice(o,c.index));let t=c[1],l=r[t]==null?``:String(r[t]),u=h(m(e.prettyLogStyles?.[t],l));u.length>0?(i.push(`%c${l}%c`),a.push(u,``)):i.push(l),o=s.lastIndex}return o<n.length&&i.push(n.slice(o)),{text:i.join(``),styles:a}}function m(e,t){if(e==null)return[];if(typeof e==`string`)return[e];if(Array.isArray(e))return e.flatMap(e=>m(e,t));if(typeof e==`object`){let n=e[t.trim()]??e[`*`];return n==null?[]:m(n,t)}return[]}function h(e){let t=new Set,n=[];for(let r of e){let e=g(r);e!=null&&e.length>0&&!t.has(e)&&(t.add(e),n.push(e))}return n.join(`; `)}function g(e){let t=Xt[e];if(t!=null)return`color: ${t}`;let n=Zt[e];if(n!=null)return`background-color: ${n}`;switch(e){case`bold`:return`font-weight: bold`;case`dim`:return`opacity: 0.75`;case`italic`:return`font-style: italic`;case`underline`:return`text-decoration: underline`;case`overline`:return`text-decoration: overline`;case`inverse`:return`filter: invert(1)`;case`hidden`:return`visibility: hidden`;case`strikethrough`:return`text-decoration: line-through`;default:return}}function _(){return i===void 0&&(i=Gt()??null),i??void 0}function v(){return e.name===`node`||e.name===`deno`||e.name===`bun`}function ee(){return e.name===`node`||e.name===`deno`||e.name===`bun`}function te(e){if(e.name===`browser`||e.name===`worker`)return{runtime:e.name,browser:e.userAgent};let t={runtime:e.name};return ee()&&(t.runtimeVersion=e.version??`unknown`),v()&&(t.hostname=e.hostname??`unknown`),t}function ne(e,t){try{return Wt(e,...t)}catch{return t.map(re).join(` `)}}function re(e){if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function ie(e){if(typeof e!=`string`||e.length===0)return e;let t=e.replace(/\\+/g,`\\`).replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.startsWith(`/`)&&!n,i=t.match(/^[A-Za-z]:/),a=i?i[0]:``,o=(a?t.slice(a.length):t).split(`/`),s=[];for(let e of o)if(!(e===``||e===`.`)){if(e===`..`){s.length>0&&s.pop();continue}s.push(e)}let c=s.join(`/`);return n?c=`//${c}`:r?c=`/${c}`:a!==``&&(c=`${a}${c.length>0?`/${c}`:``}`),c.length===0?e:c}function ae(){if(Kt())return{name:`browser`,userAgent:globalThis.navigator?.userAgent};let e=globalThis;if(typeof e.importScripts==`function`)return{name:`worker`,userAgent:e.navigator?.userAgent};let t=globalThis;if(t.Bun!=null){let e=t.Bun.version;return{name:`bun`,version:e==null?void 0:`bun/${e}`,hostname:y(t.process,t.Deno,t.Bun,t.location)}}if(t.Deno!=null){let e=oe(t.Deno),n=t.Deno?.version?.deno;return{name:`deno`,version:n==null?void 0:`deno/${n}`,hostname:e??y(t.process,t.Deno,t.Bun,t.location)}}return t.process?.versions?.node!=null||t.process?.version!=null?{name:`node`,version:t.process?.versions?.node??t.process?.version,hostname:y(t.process,t.Deno,t.Bun,t.location)}:t.process==null?{name:`unknown`}:{name:`node`,version:`unknown`,hostname:y(t.process,t.Deno,t.Bun,t.location)}}function y(e,t,n,r){let i=e?.env?.HOSTNAME??e?.env?.HOST??e?.env?.COMPUTERNAME;if(i!=null&&i.length>0)return i;let a=n?.env?.HOSTNAME??n?.env?.HOST??n?.env?.COMPUTERNAME;if(a!=null&&a.length>0)return a;try{let e=t?.env?.get;if(typeof e==`function`){let t=e(`HOSTNAME`);if(t!=null&&t.length>0)return t}}catch{}if(r?.hostname!=null&&r.hostname.length>0)return r.hostname}function oe(e){try{if(typeof e?.hostname==`function`){let t=e.hostname();if(t!=null&&t.length>0)return t}}catch{}let t=globalThis.location?.hostname;if(t!=null&&t.length>0)return t}function se(){return(globalThis?.process)?.env?.NODE_ENV}function ce(e){if(e instanceof Error)return!0;if(typeof e==`object`&&e){let t=Object.prototype.toString.call(e);if(/\[object .*Error\]/.test(t))return!0;let n=e.name;if(typeof n==`string`&&n.endsWith(`Error`))return!0}return!1}}const Yt=/\u001b\[[0-9;]*m/g,Xt={black:`#000000`,red:`#ef5350`,green:`#66bb6a`,yellow:`#fdd835`,blue:`#42a5f5`,magenta:`#ab47bc`,cyan:`#26c6da`,white:`#fafafa`,blackBright:`#424242`,redBright:`#ff7043`,greenBright:`#81c784`,yellowBright:`#ffe082`,blueBright:`#64b5f6`,magentaBright:`#ce93d8`,cyanBright:`#4dd0e1`,whiteBright:`#ffffff`},Zt={bgBlack:`#000000`,bgRed:`#ef5350`,bgGreen:`#66bb6a`,bgYellow:`#fdd835`,bgBlue:`#42a5f5`,bgMagenta:`#ab47bc`,bgCyan:`#26c6da`,bgWhite:`#fafafa`,bgBlackBright:`#424242`,bgRedBright:`#ff7043`,bgGreenBright:`#81c784`,bgYellowBright:`#ffe082`,bgBlueBright:`#64b5f6`,bgMagentaBright:`#ce93d8`,bgCyanBright:`#4dd0e1`,bgWhiteBright:`#ffffff`},Qt=/(?:(?:file|https?|global code|[^@]+)@)?(?:file:)?((?:\/[^:/]+){2,})(?::(\d+))?(?::(\d+))?/,j=Jt();var $t=class{constructor(e,t,n=NaN){this.logObj=t,this.stackDepthLevel=n,this.runtime=j,this.maxErrorCauseDepth=5,this.settings={type:e?.type??`pretty`,name:e?.name,parentNames:e?.parentNames,minLevel:e?.minLevel??0,argumentsArrayName:e?.argumentsArrayName,hideLogPositionForProduction:e?.hideLogPositionForProduction??!1,prettyLogTemplate:e?.prettyLogTemplate??`{{yyyy}}.{{mm}}.{{dd}} {{hh}}:{{MM}}:{{ss}}:{{ms}} {{logLevelName}} {{filePathWithLine}}{{nameWithDelimiterPrefix}} `,prettyErrorTemplate:e?.prettyErrorTemplate??`
|
|
19
|
+
{{errorName}} {{errorMessage}}
|
|
20
|
+
error stack:
|
|
21
|
+
{{errorStack}}`,prettyErrorStackTemplate:e?.prettyErrorStackTemplate??` • {{fileName}} {{method}}
|
|
22
|
+
{{filePathWithLine}}`,prettyErrorParentNamesSeparator:e?.prettyErrorParentNamesSeparator??`:`,prettyErrorLoggerNameDelimiter:e?.prettyErrorLoggerNameDelimiter??` `,stylePrettyLogs:e?.stylePrettyLogs??!0,prettyLogTimeZone:e?.prettyLogTimeZone??`UTC`,prettyLogStyles:e?.prettyLogStyles??{logLevelName:{"*":[`bold`,`black`,`bgWhiteBright`,`dim`],SILLY:[`bold`,`white`],TRACE:[`bold`,`whiteBright`],DEBUG:[`bold`,`green`],INFO:[`bold`,`blue`],WARN:[`bold`,`yellow`],ERROR:[`bold`,`red`],FATAL:[`bold`,`redBright`]},dateIsoStr:`white`,filePathWithLine:`white`,name:[`white`,`bold`],nameWithDelimiterPrefix:[`white`,`bold`],nameWithDelimiterSuffix:[`white`,`bold`],errorName:[`bold`,`bgRedBright`,`whiteBright`],fileName:[`yellow`],fileNameWithLine:`white`},prettyInspectOptions:e?.prettyInspectOptions??{colors:!0,compact:!1,depth:1/0},metaProperty:e?.metaProperty??`_meta`,maskPlaceholder:e?.maskPlaceholder??`[***]`,maskValuesOfKeys:e?.maskValuesOfKeys??[`password`],maskValuesOfKeysCaseInsensitive:e?.maskValuesOfKeysCaseInsensitive??!1,maskValuesRegEx:e?.maskValuesRegEx,prefix:[...e?.prefix??[]],attachedTransports:[...e?.attachedTransports??[]],overwrite:{mask:e?.overwrite?.mask,toLogObj:e?.overwrite?.toLogObj,addMeta:e?.overwrite?.addMeta,addPlaceholders:e?.overwrite?.addPlaceholders,formatMeta:e?.overwrite?.formatMeta,formatLogObj:e?.overwrite?.formatLogObj,transportFormatted:e?.overwrite?.transportFormatted,transportJSON:e?.overwrite?.transportJSON}},this.captureStackForMeta=this._shouldCaptureStack()}log(e,t,...n){if(e<this.settings.minLevel)return;let r=this._resolveLogArguments(n),i=[...this.settings.prefix,...r],a=this.settings.overwrite?.mask==null?this.settings.maskValuesOfKeys!=null&&this.settings.maskValuesOfKeys.length>0?this._mask(i):i:this.settings.overwrite?.mask(i),o=this.logObj==null?void 0:this._recursiveCloneAndExecuteFunctions(this.logObj),s=this.settings.overwrite?.toLogObj==null?this._toLogObj(a,o):this.settings.overwrite?.toLogObj(a,o),c=this.settings.overwrite?.addMeta==null?this._addMetaToLogObj(s,e,t):this.settings.overwrite?.addMeta(s,e,t),l=c?.[this.settings.metaProperty],u,d;if(this.settings.overwrite?.formatMeta!=null&&(u=this.settings.overwrite?.formatMeta(c?.[this.settings.metaProperty])),this.settings.overwrite?.formatLogObj!=null&&(d=this.settings.overwrite?.formatLogObj(a,this.settings)),this.settings.type===`pretty`&&(u??=this._prettyFormatLogObjMeta(c?.[this.settings.metaProperty]),d??=j.prettyFormatLogObj(a,this.settings)),u!=null&&d!=null)if(this.settings.overwrite?.transportFormatted!=null){let e=this.settings.overwrite.transportFormatted,t=e.length;t<4?e(u,d.args,d.errors):t===4?e(u,d.args,d.errors,l):e(u,d.args,d.errors,l,this.settings)}else j.transportFormatted(u,d.args,d.errors,l,this.settings);else this.settings.overwrite?.transportJSON==null?this.settings.type!==`hidden`&&j.transportJSON(c):this.settings.overwrite.transportJSON(c);return this.settings.attachedTransports!=null&&this.settings.attachedTransports.length>0&&this.settings.attachedTransports.forEach(e=>{e(c)}),c}attachTransport(e){this.settings.attachedTransports.push(e)}getSubLogger(e,t){let n={...this.settings,...e,parentNames:this.settings?.parentNames!=null&&this.settings?.name!=null?[...this.settings.parentNames,this.settings.name]:this.settings?.name==null?void 0:[this.settings.name],prefix:[...this.settings.prefix,...e?.prefix??[]]};return new this.constructor(n,t??this.logObj,this.stackDepthLevel)}_mask(e){let t=this._getMaskKeys();return e?.map(e=>this._recursiveCloneAndMaskValuesOfKeys(e,t))}_getMaskKeys(){let e=this.settings.maskValuesOfKeys??[],t=e.map(String).join(`|`);if(this.settings.maskValuesOfKeysCaseInsensitive===!0){if(this.maskKeysCache?.source===e&&this.maskKeysCache.caseInsensitive===!0&&this.maskKeysCache.signature===t)return this.maskKeysCache.normalized;let n=e.map(e=>typeof e==`string`?e.toLowerCase():String(e).toLowerCase());return this.maskKeysCache={source:e,caseInsensitive:!0,normalized:n,signature:t},n}return this.maskKeysCache={source:e,caseInsensitive:!1,normalized:e,signature:t},e}_resolveLogArguments(e){if(e.length===1&&typeof e[0]==`function`){let t=e[0];if(t.length===0){let e=t();return Array.isArray(e)?e:[e]}}return e}_recursiveCloneAndMaskValuesOfKeys(e,t,n=[]){if(n.includes(e))return{...e};if(typeof e==`object`&&e&&n.push(e),j.isError(e)||j.isBuffer(e))return e;if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);if(Array.isArray(e))return e.map(e=>this._recursiveCloneAndMaskValuesOfKeys(e,t,n));if(e instanceof Date)return new Date(e.getTime());if(e instanceof URL)return ct(e);if(typeof e==`object`&&e){let r=j.isError(e)?this._cloneError(e):Object.create(Object.getPrototypeOf(e));return Object.getOwnPropertyNames(e).reduce((r,i)=>{let a=this.settings?.maskValuesOfKeysCaseInsensitive===!0?typeof i==`string`?i.toLowerCase():String(i).toLowerCase():i;return r[i]=t.includes(a)?this.settings.maskPlaceholder:(()=>{try{return this._recursiveCloneAndMaskValuesOfKeys(e[i],t,n)}catch{return null}})(),r},r)}else{if(typeof e==`string`){let t=e;for(let e of this.settings?.maskValuesRegEx||[])t=t.replace(e,this.settings?.maskPlaceholder||``);return t}return e}}_recursiveCloneAndExecuteFunctions(e,t=[]){return this.isObjectOrArray(e)&&t.includes(e)?this.shallowCopy(e):(this.isObjectOrArray(e)&&t.push(e),Array.isArray(e)?e.map(e=>this._recursiveCloneAndExecuteFunctions(e,t)):e instanceof Date?new Date(e.getTime()):this.isObject(e)?Object.getOwnPropertyNames(e).reduce((n,r)=>{let i=Object.getOwnPropertyDescriptor(e,r);if(i){Object.defineProperty(n,r,i);let a=e[r];n[r]=typeof a==`function`?a():this._recursiveCloneAndExecuteFunctions(a,t)}return n},Object.create(Object.getPrototypeOf(e))):e)}isObjectOrArray(e){return typeof e==`object`&&!!e}isObject(e){return typeof e==`object`&&!Array.isArray(e)&&e!==null}shallowCopy(e){return Array.isArray(e)?[...e]:{...e}}_toLogObj(e,t={}){return e=e?.map(e=>j.isError(e)?this._toErrorObject(e):e),t=this.settings.argumentsArrayName==null?e.length===1&&!Array.isArray(e[0])&&j.isBuffer(e[0])!==!0&&!(e[0]instanceof Date)?typeof e[0]==`object`&&e[0]!=null?{...e[0],...t}:{0:e[0],...t}:{...t,...e}:{...t,[this.settings.argumentsArrayName]:e},t}_cloneError(e){let t=new e.constructor;return Object.getOwnPropertyNames(e).forEach(n=>{t[n]=e[n]}),t}_toErrorObject(e,t=0,n=new Set){n.has(e)||n.add(e);let r={nativeError:e,name:e.name??`Error`,message:e.message,stack:j.getErrorTrace(e)};if(t>=this.maxErrorCauseDepth)return r;let i=e.cause;if(i!=null){let e=St(i);n.has(e)||(r.cause=this._toErrorObject(e,t+1,n))}return r}_addMetaToLogObj(e,t,n){return{...e,[this.settings.metaProperty]:j.getMeta(t,n,this.stackDepthLevel,!this.captureStackForMeta,this.settings.name,this.settings.parentNames)}}_shouldCaptureStack(){if(this.settings.hideLogPositionForProduction)return!1;if(this.settings.type===`json`)return!0;let e=this.settings.prettyLogTemplate??``;return!!/{{\s*(file(Name|Path|Line|PathWithLine|NameWithLine)|fullFilePath)\s*}}/.test(e)}_prettyFormatLogObjMeta(e){return dt(this.settings,e).text}},en=class extends $t{constructor(e,t){let n=typeof window<`u`&&typeof document<`u`,r={...e??{}};n&&(r.stylePrettyLogs=e?.stylePrettyLogs??!0),super(r,t,NaN)}log(e,t,...n){return super.log(e,t,...n)}silly(...e){return super.log(0,`SILLY`,...e)}trace(...e){return super.log(1,`TRACE`,...e)}debug(...e){return super.log(2,`DEBUG`,...e)}info(...e){return super.log(3,`INFO`,...e)}warn(...e){return super.log(4,`WARN`,...e)}error(...e){return super.log(5,`ERROR`,...e)}fatal(...e){return super.log(6,`FATAL`,...e)}getSubLogger(e,t){return super.getSubLogger(e,t)}};const tn=new Set([`--dev`,`--no-color`]),nn=new Set([`--profile`,`--log-level`,`--container`]);function rn(e){return!e||e===`--`?!1:e.startsWith(`-`)?/^-\d+(?:\.\d+)?$/.test(e):!0}function an(e,t){let n=e[t];return n?tn.has(n)||n.startsWith(`--profile=`)||n.startsWith(`--log-level=`)||n.startsWith(`--container=`)?1:nn.has(n)?rn(e[t+1])?2:1:0:0}function on(e,t=2){return sn(e,t,{skipRootOptions:!0})}function sn(e,t,n){let r=e.slice(2),i=[];for(let e=0;e<r.length;e+=1){let a=r[e];if(a){if(a===`--`)break;if(n.skipRootOptions){let t=an(r,e);if(t>0){e+=t-1;continue}}if(!a.startsWith(`-`)&&(i.push(a),i.length>=t))break}}return i}const cn=w(import.meta.url);function ln(e=process.argv){let[t,n]=on(e,2);return t===`config`&&(n===`schema`||n===`validate`)}function un(){if(!ln())try{let e=(cn?.(`../config/config.js`))?.loadConfig?.()?.logging;return!e||typeof e!=`object`||Array.isArray(e)?void 0:e}catch{return}}const dn=[`silent`,`fatal`,`error`,`warn`,`info`,`debug`,`trace`];function fn(e){if(typeof e!=`string`)return;let t=e.trim();return dn.includes(t)?t:void 0}function pn(e,t=`info`){return fn(e)??t}function M(e){return{trace:1,debug:2,info:3,warn:4,error:5,fatal:6,silent:1/0}[e]}const N={cachedLogger:null,cachedSettings:null,cachedConsoleSettings:null,overrideSettings:null,invalidEnvLogLevelValue:null,consolePatched:!1,forceConsoleToStderr:!1,consoleTimestampPrefix:!1,consoleSubsystemFilter:null,resolvingConsoleSettings:!1,streamErrorHandlersInstalled:!1,rawConsole:null};function mn(){let t=e(process.env.OPENCLAW_LOG_LEVEL)??``;if(!t){N.invalidEnvLogLevelValue=null;return}let n=fn(t);if(n)return N.invalidEnvLogLevelValue=null,n;N.invalidEnvLogLevelValue!==t&&(N.invalidEnvLogLevelValue=t,process.stderr.write(`[openclaw] Ignoring invalid OPENCLAW_LOG_LEVEL="${t}" (allowed: ${dn.join(`|`)}).\n`))}function hn(e){try{return new Intl.DateTimeFormat(`en`,{timeZone:e}).format(),!0}catch{return!1}}function gn(e){let t=e??process.env.TZ;return t&&hn(t)?t:Intl.DateTimeFormat().resolvedOptions().timeZone}function _n(e){return e===`GMT`?`+00:00`:e.slice(3)}function vn(e,t){let n=new Intl.DateTimeFormat(`en`,{timeZone:gn(t),year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1,fractionalSecondDigits:3,timeZoneName:`longOffset`}),r=Object.fromEntries(n.formatToParts(e).map(e=>[e.type,e.value]));return{year:r.year,month:r.month,day:r.day,hour:r.hour,minute:r.minute,second:r.second,fractionalSecond:r.fractionalSecond,offset:_n(r.timeZoneName??`GMT`)}}function P(e,t){let n=t?.style??`medium`,r=vn(e,t?.timeZone);switch(n){case`short`:return`${r.hour}:${r.minute}:${r.second}${r.offset}`;case`medium`:return`${r.hour}:${r.minute}:${r.second}.${r.fractionalSecond}${r.offset}`;case`long`:return`${r.year}-${r.month}-${r.day}T${r.hour}:${r.minute}:${r.second}.${r.fractionalSecond}${r.offset}`}throw Error(`Unsupported timestamp style`)}function yn(e,t){return P(e,{style:`long`,timeZone:t})}function bn(){let e=process.getBuiltinModule;if(typeof e!=`function`)return!1;try{return e(`fs`)!==void 0}catch{return!1}}function xn(){return bn()?st():E}function Sn(e){return bn()?x.join(e,`openclaw.log`):`${E}/openclaw.log`}const Cn=xn(),wn=Sn(Cn),F=`openclaw`,I=`.log`,Tn=500*1024*1024,En=w(import.meta.url),Dn=new Set;function On(e,t){e.attachTransport(e=>{if(Dn.has(t))try{t(e)}catch{}})}function kn(e){return process.env.VITEST===`true`&&process.env.OPENCLAW_TEST_FILE_LOG!==`1`&&!e&&!N.overrideSettings}function An(){if(!bn())return{level:`silent`,file:wn,maxFileBytes:Tn};let e=mn();if(kn(e))return{level:`silent`,file:zn(),maxFileBytes:Tn};let t=N.overrideSettings??un();if(!t&&!ln())try{t=(En?.(`../config/config.js`))?.loadConfig?.().logging}catch{t=void 0}let n=process.env.VITEST===`true`&&process.env.OPENCLAW_TEST_FILE_LOG!==`1`?`silent`:`info`,r=pn(t?.level,n);return{level:e??r,file:t?.file??zn(),maxFileBytes:Nn(t?.maxFileBytes)}}function jn(e,t){return e?e.level!==t.level||e.file!==t.file||e.maxFileBytes!==t.maxFileBytes:!0}function L(e){let t=N.cachedSettings??An();return N.cachedSettings||=t,e===`silent`||t.level===`silent`?!1:M(e)>=M(t.level)}function Mn(e){let t=new en({name:`openclaw`,minLevel:M(e.level),type:`hidden`});if(e.level===`silent`){for(let e of Dn)On(t,e);return t}b.mkdirSync(x.dirname(e.file),{recursive:!0}),Bn(e.file)&&Vn(x.dirname(e.file));let n=Pn(e.file),r=!1;t.attachTransport(t=>{try{let i=P(t.date??new Date,{style:`long`}),a=`${JSON.stringify({...t,time:i})}\n`,o=Buffer.byteLength(a,`utf8`),s=n+o;if(s>e.maxFileBytes){if(!r){r=!0;let t=JSON.stringify({time:P(new Date,{style:`long`}),level:`warn`,subsystem:`logging`,message:`log file size cap reached; suppressing writes file=${e.file} maxFileBytes=${e.maxFileBytes}`});Fn(e.file,`${t}\n`),process.stderr.write(`[openclaw] log file size cap reached; suppressing writes file=${e.file} maxFileBytes=${e.maxFileBytes}\n`)}return}Fn(e.file,a)&&(n=s)}catch{}});for(let e of Dn)On(t,e);return t}function Nn(e){return typeof e==`number`&&Number.isFinite(e)&&e>0?Math.floor(e):Tn}function Pn(e){try{return b.statSync(e).size}catch{return 0}}function Fn(e,t){try{return b.appendFileSync(e,t,{encoding:`utf8`}),!0}catch{return!1}}function In(){let e=An(),t=N.cachedLogger,n=N.cachedSettings;return(!t||jn(n,e))&&(N.cachedLogger=Mn(e),N.cachedSettings=e),N.cachedLogger}function Ln(e,t){let n=In(),r=t?.level?M(t.level):n.settings.minLevel,i=e?JSON.stringify(e):void 0;return n.getSubLogger({name:i,minLevel:r,prefix:e?[i??``]:[]})}function Rn(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function zn(){let e=Rn(new Date);return x.join(Cn,`${F}-${e}${I}`)}function Bn(e){let t=x.basename(e);return t.startsWith(`${F}-`)&&t.endsWith(I)&&t.length===`${F}-YYYY-MM-DD${I}`.length}function Vn(e){try{let t=b.readdirSync(e,{withFileTypes:!0}),n=Date.now()-864e5;for(let r of t){if(!r.isFile()||!r.name.startsWith(`${F}-`)||!r.name.endsWith(I))continue;let t=x.join(e,r.name);try{b.statSync(t).mtimeMs<n&&b.rmSync(t,{force:!0})}catch{}}}catch{}}function Hn(){return!1}const Un=RegExp(`\\x1b\\[[\\x20-\\x3f]*[\\x40-\\x7e]`,`g`),Wn=RegExp(`\\x1b\\]8;;.*?\\x1b\\\\|\\x1b\\]8;;\\x1b\\\\`,`g`);typeof Intl<`u`&&`Segmenter`in Intl&&new Intl.Segmenter(void 0,{granularity:`grapheme`});function Gn(e){return e.replace(Wn,``).replace(Un,``)}function Kn(e){let t=RegExp(`[\0--]`,`g`);return Gn(e).replace(t,``)}const qn=(e=0)=>t=>`\u001B[${t+e}m`,Jn=(e=0)=>t=>`\u001B[${38+e};5;${t}m`,Yn=(e=0)=>(t,n,r)=>`\u001B[${38+e};2;${t};${n};${r}m`,R={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(R.modifier);const Xn=Object.keys(R.color),Zn=Object.keys(R.bgColor);[...Xn,...Zn];function Qn(){let e=new Map;for(let[t,n]of Object.entries(R)){for(let[t,r]of Object.entries(n))R[t]={open:`\u001B[${r[0]}m`,close:`\u001B[${r[1]}m`},n[t]=R[t],e.set(r[0],r[1]);Object.defineProperty(R,t,{value:n,enumerable:!1})}return Object.defineProperty(R,`codes`,{value:e,enumerable:!1}),R.color.close=`\x1B[39m`,R.bgColor.close=`\x1B[49m`,R.color.ansi=qn(),R.color.ansi256=Jn(),R.color.ansi16m=Yn(),R.bgColor.ansi=qn(10),R.bgColor.ansi256=Jn(10),R.bgColor.ansi16m=Yn(10),Object.defineProperties(R,{rgbToAnsi256:{value(e,t,n){return e===t&&t===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[n]=t;n.length===3&&(n=[...n].map(e=>e+e).join(``));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>R.rgbToAnsi256(...R.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,n,r;if(e>=232)t=((e-232)*10+8)/255,n=t,r=t;else{e-=16;let i=e%36;t=Math.floor(e/36)/5,n=Math.floor(i/6)/5,r=i%6/5}let i=Math.max(t,n,r)*2;if(i===0)return 30;let a=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(t));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,t,n)=>R.ansi256ToAnsi(R.rgbToAnsi256(e,t,n)),enumerable:!1},hexToAnsi:{value:e=>R.ansi256ToAnsi(R.hexToAnsi256(e)),enumerable:!1}}),R}const z=Qn();function B(e,t=globalThis.Deno?globalThis.Deno.args:ye.argv){let n=e.startsWith(`-`)?``:e.length===1?`-`:`--`,r=t.indexOf(n+e),i=t.indexOf(`--`);return r!==-1&&(i===-1||r<i)}const{env:V}=ye;let $n;B(`no-color`)||B(`no-colors`)||B(`color=false`)||B(`color=never`)?$n=0:(B(`color`)||B(`colors`)||B(`color=true`)||B(`color=always`))&&($n=1);function er(){if(`FORCE_COLOR`in V)return V.FORCE_COLOR===`true`?1:V.FORCE_COLOR===`false`?0:V.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(V.FORCE_COLOR,10),3)}function tr(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function nr(e,{streamIsTTY:t,sniffFlags:n=!0}={}){let r=er();r!==void 0&&($n=r);let i=n?$n:r;if(i===0)return 0;if(n){if(B(`color=16m`)||B(`color=full`)||B(`color=truecolor`))return 3;if(B(`color=256`))return 2}if(`TF_BUILD`in V&&`AGENT_NAME`in V)return 1;if(e&&!t&&i===void 0)return 0;let a=i||0;if(V.TERM===`dumb`)return a;if(ye.platform===`win32`){let e=he.release().split(`.`);return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if(`CI`in V)return[`GITHUB_ACTIONS`,`GITEA_ACTIONS`,`CIRCLECI`].some(e=>e in V)?3:[`TRAVIS`,`APPVEYOR`,`GITLAB_CI`,`BUILDKITE`,`DRONE`].some(e=>e in V)||V.CI_NAME===`codeship`?1:a;if(`TEAMCITY_VERSION`in V)return+!!/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(V.TEAMCITY_VERSION);if(V.COLORTERM===`truecolor`||V.TERM===`xterm-kitty`||V.TERM===`xterm-ghostty`||V.TERM===`wezterm`)return 3;if(`TERM_PROGRAM`in V){let e=Number.parseInt((V.TERM_PROGRAM_VERSION||``).split(`.`)[0],10);switch(V.TERM_PROGRAM){case`iTerm.app`:return e>=3?3:2;case`Apple_Terminal`:return 2}}return/-256(color)?$/i.test(V.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(V.TERM)||`COLORTERM`in V?1:a}function rr(e,t={}){return tr(nr(e,{streamIsTTY:e&&e.isTTY,...t}))}const ir={stdout:rr({isTTY:be.isatty(1)}),stderr:rr({isTTY:be.isatty(2)})};function ar(e,t,n){let r=e.indexOf(t);if(r===-1)return e;let i=t.length,a=0,o=``;do o+=e.slice(a,r)+t+n,a=r+i,r=e.indexOf(t,a);while(r!==-1);return o+=e.slice(a),o}function or(e,t,n,r){let i=0,a=``;do{let o=e[r-1]===`\r`;a+=e.slice(i,o?r-1:r)+t+(o?`\r
|
|
23
|
+
`:`
|
|
24
|
+
`)+n,i=r+1,r=e.indexOf(`
|
|
25
|
+
`,i)}while(r!==-1);return a+=e.slice(i),a}const{stdout:sr,stderr:cr}=ir,lr=Symbol(`GENERATOR`),H=Symbol(`STYLER`),U=Symbol(`IS_EMPTY`),ur=[`ansi`,`ansi`,`ansi256`,`ansi16m`],W=Object.create(null),dr=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let n=sr?sr.level:0;e.level=t.level===void 0?n:t.level};var fr=class{constructor(e){return pr(e)}};const pr=e=>{let t=(...e)=>e.join(` `);return dr(t,e),Object.setPrototypeOf(t,G.prototype),t};function G(e){return pr(e)}Object.setPrototypeOf(G.prototype,Function.prototype);for(let[e,t]of Object.entries(z))W[e]={get(){let n=_r(this,gr(t.open,t.close,this[H]),this[U]);return Object.defineProperty(this,e,{value:n}),n}};W.visible={get(){let e=_r(this,this[H],!0);return Object.defineProperty(this,`visible`,{value:e}),e}};const mr=(e,t,n,...r)=>e===`rgb`?t===`ansi16m`?z[n].ansi16m(...r):t===`ansi256`?z[n].ansi256(z.rgbToAnsi256(...r)):z[n].ansi(z.rgbToAnsi(...r)):e===`hex`?mr(`rgb`,t,n,...z.hexToRgb(...r)):z[n][e](...r);for(let e of[`rgb`,`hex`,`ansi256`]){W[e]={get(){let{level:t}=this;return function(...n){let r=gr(mr(e,ur[t],`color`,...n),z.color.close,this[H]);return _r(this,r,this[U])}}};let t=`bg`+e[0].toUpperCase()+e.slice(1);W[t]={get(){let{level:t}=this;return function(...n){let r=gr(mr(e,ur[t],`bgColor`,...n),z.bgColor.close,this[H]);return _r(this,r,this[U])}}}}const hr=Object.defineProperties(()=>{},{...W,level:{enumerable:!0,get(){return this[lr].level},set(e){this[lr].level=e}}}),gr=(e,t,n)=>{let r,i;return n===void 0?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},_r=(e,t,n)=>{let r=(...e)=>vr(r,e.length===1?``+e[0]:e.join(` `));return Object.setPrototypeOf(r,hr),r[lr]=e,r[H]=t,r[U]=n,r},vr=(e,t)=>{if(e.level<=0||!t)return e[U]?``:t;let n=e[H];if(n===void 0)return t;let{openAll:r,closeAll:i}=n;if(t.includes(`\x1B`))for(;n!==void 0;)t=ar(t,n.close,n.open),n=n.parent;let a=t.indexOf(`
|
|
26
|
+
`);return a!==-1&&(t=or(t,i,r,a)),r+t+i};Object.defineProperties(G.prototype,W);const yr=G();G({level:cr?cr.level:0});const br=w(import.meta.url);let xr=()=>{try{return(br?.(`../config/config.js`))?.loadConfig?.().logging}catch{return}};function Sr(e){return Hn()?`debug`:!e&&process.env.VITEST===`true`&&process.env.OPENCLAW_TEST_CONSOLE!==`1`?`silent`:pn(e,`info`)}function Cr(e){return e===`compact`||e===`json`||e===`pretty`?e:process.stdout.isTTY?`pretty`:`compact`}function wr(){let e=mn();if(process.env.VITEST===`true`&&process.env.OPENCLAW_TEST_CONSOLE!==`1`&&!Hn()&&!e&&!N.overrideSettings)return{level:`silent`,style:Cr(void 0)};let t=N.overrideSettings??un();if(!t&&!ln())if(N.resolvingConsoleSettings)t=void 0;else{N.resolvingConsoleSettings=!0;try{t=xr()}finally{N.resolvingConsoleSettings=!1}}return{level:e??Sr(t?.consoleLevel),style:Cr(t?.consoleStyle)}}function Tr(e,t){return e?e.level!==t.level||e.style!==t.style:!0}function Er(){let e=wr(),t=N.cachedConsoleSettings;return(!t||Tr(t,e))&&(N.cachedConsoleSettings=e),N.cachedConsoleSettings}function Dr(e){let t=N.consoleSubsystemFilter;return!t||t.length===0?!0:t.some(t=>e===t||e.startsWith(`${t}/`))}function Or(e){let t=new Date;return e===`pretty`?P(t,{style:`short`}).replace(/[+-]\d{2}:\d{2}$/,``):yn(t)}function kr(e,t){return e===`silent`||t.level===`silent`?!1:M(e)>=M(t.level)}(()=>{let e=process.getBuiltinModule;if(typeof e!=`function`)return null;try{let t=e(`util`);return typeof t.inspect==`function`?t.inspect:null}catch{return null}})();function Ar(){let e=t(process.env.TERM);return process.env.COLORTERM||process.env.TERM_PROGRAM?!0:e.length>0&&e!==`dumb`}function jr(){let e=typeof process.env.FORCE_COLOR==`string`&&process.env.FORCE_COLOR.trim().length>0&&process.env.FORCE_COLOR.trim()!==`0`;return process.env.NO_COLOR&&!e?new fr({level:0}):process.stdout.isTTY||process.stderr.isTTY||Ar()?new fr({level:1}):new fr({level:0})}const Mr=[`cyan`,`green`,`yellow`,`blue`,`magenta`,`red`],Nr={"gmail-watcher":`blue`},Pr=[`gateway`,`channels`,`providers`];function Fr(e){let n=t(e);return n?c(n)===n||n===`webchat`:!1}function Ir(e,t){let n=Nr[t];if(n)return e[n];let r=0;for(let e=0;e<t.length;e+=1)r=r*31+t.charCodeAt(e)|0;return e[Mr[Math.abs(r)%Mr.length]]}function Lr(e){let t=e.split(`/`).filter(Boolean),n=t.join(`/`)||e;for(;t.length>0&&Pr.includes(t[0]);)t.shift();return t.length===0?n:Fr(t[0])?t[0]:t.length>2?t.slice(-2).join(`/`):t.join(`/`)}function Rr(e,n){if(!n)return e;if(e.startsWith(`[`)){let r=e.indexOf(`]`);if(r>1&&t(e.slice(1,r))===t(n)){let t=r+1;for(;e[t]===` `;)t+=1;return e.slice(t)}}if(t(e.slice(0,n.length))!==t(n))return e;let r=e.slice(n.length,n.length+1);if(r!==`:`&&r!==` `)return e;let i=n.length;for(;e[i]===` `;)i+=1;for(e[i]===`:`&&(i+=1);e[i]===` `;)i+=1;return e.slice(i)}function zr(e){let t=e.style===`json`?e.subsystem:Lr(e.subsystem);if(e.style===`json`)return JSON.stringify({time:Or(`json`),level:e.level,subsystem:t,message:e.message,...e.meta});let n=jr(),r=`[${t}]`,i=Ir(n,t),a=e.level===`error`||e.level===`fatal`?n.red:e.level===`warn`?n.yellow:e.level===`debug`||e.level===`trace`?n.gray:n.cyan,o=Rr(e.message,t);return`${[e.style===`pretty`?n.gray(Or(`pretty`)):N.consoleTimestampPrefix?n.gray(Or(e.style)):``,i(r)].filter(Boolean).join(` `)} ${a(o)}`}function Br(e,t){f();let n=process.platform===`win32`&&process.env.GITHUB_ACTIONS===`true`?t.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,`?`).replace(/[\uD800-\uDFFF]/g,`?`):t,r=N.rawConsole??console;N.forceConsoleToStderr||e===`error`||e===`fatal`?(r.error??console.error)(n):e===`warn`?(r.warn??console.warn)(n):(r.log??console.log)(n)}function Vr(e){return Hn()||e.level===`error`||e.level===`fatal`||!(e.subsystem===`agent/embedded`||e.subsystem.startsWith(`agent/embedded/`)||e.subsystem===`model-fallback`||e.subsystem.startsWith(`model-fallback/`))?!1:(typeof e.meta?.runId==`string`?e.meta.runId:typeof e.meta?.sessionId==`string`?e.meta.sessionId:void 0)?.startsWith(`probe-`)?!0:/(sessionId|runId)=probe-/.test(e.message)}function Hr(e,t,n,r){if(t===`silent`)return;let i=e[t];typeof i==`function`&&(r&&Object.keys(r).length>0?i.call(e,r,n):i.call(e,n))}function Ur(e){let t=null,n=(n,r,i)=>{let a=Er(),o=kr(n,{level:a.level})&&Dr(e),s=L(n);if(!o&&!s)return;let c,l=i;if(i&&Object.keys(i).length>0){let{consoleMessage:e,...t}=i;typeof e==`string`&&(c=e),l=Object.keys(t).length>0?t:void 0}if(s&&(t||=Ln({subsystem:e}),Hr(t,n,r,l)),!o)return;let u=c??r;Vr({level:n,subsystem:e,message:u,meta:l})||Br(n,zr({level:n,subsystem:e,message:a.style===`json`?r:u,style:a.style,meta:l}))};return{subsystem:e,isEnabled(t,n=`any`){let r=kr(t,{level:Er().level})&&Dr(e),i=L(t);return n===`console`?r:n===`file`?i:r||i},trace(e,t){n(`trace`,e,t)},debug(e,t){n(`debug`,e,t)},info(e,t){n(`info`,e,t)},warn(e,t){n(`warn`,e,t)},error(e,t){n(`error`,e,t)},fatal(e,t){n(`fatal`,e,t)},raw(n){if(L(`info`)&&(t||=Ln({subsystem:e}),Hr(t,`info`,n,{raw:!0})),kr(`info`,{level:Er().level})&&Dr(e)){if(Vr({level:`info`,subsystem:e,message:n}))return;Br(`info`,n)}},child(t){return Ur(`${e}/${t}`)}}}const Wr=`default`,Gr=/^[A-Z][A-Z0-9_]{0,127}$/,Kr=/^\$\{([A-Z][A-Z0-9_]{0,127})\}$/;function qr(e){return!o(e)||Object.keys(e).length!==3?!1:(e.source===`env`||e.source===`file`||e.source===`exec`)&&typeof e.provider==`string`&&e.provider.trim().length>0&&typeof e.id==`string`&&e.id.trim().length>0}function Jr(e){return o(e)?(e.source===`env`||e.source===`file`||e.source===`exec`)&&typeof e.id==`string`&&e.id.trim().length>0&&e.provider===void 0:!1}function Yr(e,t=Wr){if(typeof e!=`string`)return null;let n=Kr.exec(e.trim());return n?{source:`env`,provider:t.trim()||`default`,id:n[1]}:null}function Xr(e,t){if(qr(e))return e;if(Jr(e)){let n=e.source===`env`?t?.env??`default`:e.source===`file`?t?.file??`default`:t?.exec??`default`;return{source:e.source,provider:n,id:e.id}}return Yr(e,t?.env)||null}function Zr(e,t){return Qr(e)?!0:Xr(e,t)!==null}function Qr(e){if(typeof e!=`string`)return;let t=e.trim();return t.length>0?t:void 0}function $r(e){let t=Xr(e.refValue,e.defaults),n=t?null:Xr(e.value,e.defaults);return{explicitRef:t,inlineRef:n,ref:t??n}}const ei=/^(?:[^~]|~0|~1)*$/,ti=/^[a-z][a-z0-9_-]{0,63}$/,ni=/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,255}$/,ri=`value`,ii=/^(?:value|\/(?:[^~]|~0|~1)*(?:\/(?:[^~]|~0|~1)*)*)$/,ai=`^(?!.*(?:^|/)\\.{1,2}(?:/|$))[A-Za-z0-9][A-Za-z0-9._:/-]{0,255}$`;function oi(e){return`${e.source}:${e.provider}:${e.id}`}function si(e,t,n){let r=t===`env`?e.secrets?.defaults?.env:t===`file`?e.secrets?.defaults?.file:e.secrets?.defaults?.exec;if(r?.trim())return r.trim();if(n?.preferFirstProviderForSource){let n=e.secrets?.providers;if(n){for(let[e,r]of Object.entries(n))if(r?.source===t)return e}}return Wr}function ci(e){return e===`value`?!0:e.startsWith(`/`)?e.slice(1).split(`/`).every(e=>ei.test(e)):!1}function li(e){if(!ni.test(e))return{ok:!1,reason:`pattern`};for(let t of e.split(`/`))if(t===`.`||t===`..`)return{ok:!1,reason:`traversal-segment`};return{ok:!0}}function ui(e){return li(e).ok}function di(){return[`Exec secret reference id must match /^[A-Za-z0-9][A-Za-z0-9._:/-]{0,255}$/`,`and must not include "." or ".." path segments`,`(example: "vault/openai/api-key").`].join(` `)}const fi=/[;&|`$<>]/,pi=/[\r\n]/,mi=/["']/,hi=/^[A-Za-z0-9._+-]+$/;function gi(e){return e.startsWith(`.`)||e.startsWith(`~`)||e.includes(`/`)||e.includes(`\\`)?!0:/^[A-Za-z]:[\\/]/.test(e)}function _i(e){if(!e)return!1;let t=e.trim();return!t||t.includes(`\0`)||pi.test(t)||fi.test(t)||mi.test(t)?!1:gi(t)?!0:t.startsWith(`-`)?!1:hi.test(t)}const K=S.registry(),vi=[`openai-completions`,`openai-responses`,`openai-codex-responses`,`anthropic-messages`,`google-generative-ai`,`github-copilot`,`bedrock-converse-stream`,`ollama`,`azure-openai-responses`],yi=S.union([S.literal(`allow`),S.literal(`deny`)]),bi=S.union([S.literal(`direct`),S.literal(`group`),S.literal(`channel`),S.literal(`dm`)]).optional();function xi(){return S.object({default:yi.optional(),rules:S.array(S.object({action:yi,match:S.object({channel:S.string().optional(),chatType:bi,keyPrefix:S.string().optional(),rawKeyPrefix:S.string().optional()}).strict().optional()}).strict()).optional()}).strict().optional()}const Si=/^[A-Z][A-Z0-9_]{0,127}$/,q=/^[a-z][a-z0-9_-]{0,63}$/,Ci=/^[A-Za-z]:[\\/]/,wi=/^\\\\[^\\]+\\[^\\]+/;function Ti(e){return x.isAbsolute(e)||Ci.test(e)||wi.test(e)}const Ei=S.object({source:S.literal(`env`),provider:S.string().regex(q,`Secret reference provider must match /^[a-z][a-z0-9_-]{0,63}$/ (example: "default").`),id:S.string().regex(Si,`Env secret reference id must match /^[A-Z][A-Z0-9_]{0,127}$/ (example: "OPENAI_API_KEY").`)}).strict(),Di=S.object({source:S.literal(`file`),provider:S.string().regex(q,`Secret reference provider must match /^[a-z][a-z0-9_-]{0,63}$/ (example: "default").`),id:S.string().refine(ci,`File secret reference id must be an absolute JSON pointer (example: "/providers/openai/apiKey"), or "value" for singleValue mode.`)}).strict(),Oi=S.object({source:S.literal(`exec`),provider:S.string().regex(q,`Secret reference provider must match /^[a-z][a-z0-9_-]{0,63}$/ (example: "default").`),id:S.string().refine(ui,di())}).strict(),ki=S.discriminatedUnion(`source`,[Ei,Di,Oi]),J=S.union([S.string(),ki]),Ai=S.object({source:S.literal(`env`),allowlist:S.array(S.string().regex(Si)).max(256).optional()}).strict(),ji=S.object({source:S.literal(`file`),path:S.string().min(1),mode:S.union([S.literal(`singleValue`),S.literal(`json`)]).optional(),timeoutMs:S.number().int().positive().max(12e4).optional(),maxBytes:S.number().int().positive().max(20*1024*1024).optional()}).strict(),Mi=S.object({source:S.literal(`exec`),command:S.string().min(1).refine(e=>_i(e),`secrets.providers.*.command is unsafe.`).refine(e=>Ti(e),`secrets.providers.*.command must be an absolute path.`),args:S.array(S.string().max(1024)).max(128).optional(),timeoutMs:S.number().int().positive().max(12e4).optional(),noOutputTimeoutMs:S.number().int().positive().max(12e4).optional(),maxOutputBytes:S.number().int().positive().max(20*1024*1024).optional(),jsonOnly:S.boolean().optional(),env:S.record(S.string(),S.string()).optional(),passEnv:S.array(S.string().regex(Si)).max(128).optional(),trustedDirs:S.array(S.string().min(1).refine(e=>Ti(e),`trustedDirs entries must be absolute paths.`)).max(64).optional(),allowInsecurePath:S.boolean().optional(),allowSymlinkCommand:S.boolean().optional()}).strict(),Ni=S.discriminatedUnion(`source`,[Ai,ji,Mi]),Pi=S.object({providers:S.object({}).catchall(Ni).optional(),defaults:S.object({env:S.string().regex(q).optional(),file:S.string().regex(q).optional(),exec:S.string().regex(q).optional()}).strict().optional(),resolution:S.object({maxProviderConcurrency:S.number().int().positive().max(16).optional(),maxRefsPerProvider:S.number().int().positive().max(4096).optional(),maxBatchBytes:S.number().int().positive().max(5*1024*1024).optional()}).strict().optional()}).strict().optional(),Fi=S.enum(vi),Ii=S.object({supportsStore:S.boolean().optional(),supportsPromptCacheKey:S.boolean().optional(),supportsDeveloperRole:S.boolean().optional(),supportsReasoningEffort:S.boolean().optional(),supportsUsageInStreaming:S.boolean().optional(),supportsTools:S.boolean().optional(),supportsStrictMode:S.boolean().optional(),requiresStringContent:S.boolean().optional(),visibleReasoningDetailTypes:S.array(S.string().min(1)).optional(),maxTokensField:S.union([S.literal(`max_completion_tokens`),S.literal(`max_tokens`)]).optional(),thinkingFormat:S.union([S.literal(`openai`),S.literal(`openrouter`),S.literal(`zai`),S.literal(`qwen`),S.literal(`qwen-chat-template`)]).optional(),requiresToolResultName:S.boolean().optional(),requiresAssistantAfterToolResult:S.boolean().optional(),requiresThinkingAsText:S.boolean().optional(),toolSchemaProfile:S.string().optional(),unsupportedToolSchemaKeywords:S.array(S.string().min(1)).optional(),nativeWebSearchTool:S.boolean().optional(),toolCallArgumentsEncoding:S.string().optional(),requiresMistralToolIds:S.boolean().optional(),requiresOpenAiAnthropicToolPayload:S.boolean().optional()}).strict().optional(),Li=S.object({ca:J.optional().register(K),cert:J.optional().register(K),key:J.optional().register(K),passphrase:J.optional().register(K),serverName:S.string().optional(),insecureSkipVerify:S.boolean().optional()}).strict().optional(),Ri=S.union([S.object({mode:S.literal(`provider-default`)}).strict(),S.object({mode:S.literal(`authorization-bearer`),token:J.register(K)}).strict(),S.object({mode:S.literal(`header`),headerName:S.string().min(1),value:J.register(K),prefix:S.string().optional()}).strict()]).optional(),zi=S.union([S.object({mode:S.literal(`env-proxy`),tls:Li}).strict(),S.object({mode:S.literal(`explicit-proxy`),url:S.string().min(1),tls:Li}).strict()]).optional(),Bi={headers:S.record(S.string(),J.register(K)).optional(),auth:Ri,proxy:zi,tls:Li},Vi=S.object(Bi).strict().optional(),Hi=S.object({...Bi,allowPrivateNetwork:S.boolean().optional()}).strict().optional(),Ui=S.object({id:S.string().min(1),name:S.string().min(1),api:Fi.optional(),baseUrl:S.string().min(1).optional(),reasoning:S.boolean().optional(),input:S.array(S.union([S.literal(`text`),S.literal(`image`)])).optional(),cost:S.object({input:S.number().optional(),output:S.number().optional(),cacheRead:S.number().optional(),cacheWrite:S.number().optional(),tieredPricing:S.array(S.object({input:S.number(),output:S.number(),cacheRead:S.number(),cacheWrite:S.number(),range:S.union([S.tuple([S.number(),S.number()]),S.tuple([S.number()])])}).strict()).optional()}).strict().optional(),contextWindow:S.number().positive().optional(),contextTokens:S.number().int().positive().optional(),maxTokens:S.number().positive().optional(),headers:S.record(S.string(),S.string()).optional(),compat:Ii}).strict(),Wi=S.object({baseUrl:S.string().min(1),apiKey:J.optional().register(K),auth:S.union([S.literal(`api-key`),S.literal(`aws-sdk`),S.literal(`oauth`),S.literal(`token`)]).optional(),api:Fi.optional(),injectNumCtxForOpenAICompat:S.boolean().optional(),headers:S.record(S.string(),J.register(K)).optional(),authHeader:S.boolean().optional(),request:Hi,models:S.array(Ui)}).strict();S.object({enabled:S.boolean().optional(),region:S.string().optional(),providerFilter:S.array(S.string()).optional(),refreshInterval:S.number().int().nonnegative().optional(),defaultContextWindow:S.number().int().positive().optional(),defaultMaxTokens:S.number().int().positive().optional()}).strict().optional();const Gi=S.object({mode:S.union([S.literal(`merge`),S.literal(`replace`)]).optional(),providers:S.record(S.string(),Wi).optional()}).strict().optional(),Ki=S.object({mentionPatterns:S.array(S.string()).optional(),historyLimit:S.number().int().positive().optional()}).strict().optional(),qi=S.object({historyLimit:S.number().int().min(0).optional()}).strict(),Ji=S.object({name:S.string().optional(),theme:S.string().optional(),emoji:S.string().optional(),avatar:S.string().optional()}).strict().optional(),Y=S.union([S.literal(`steer`),S.literal(`followup`),S.literal(`collect`),S.literal(`steer-backlog`),S.literal(`steer+backlog`),S.literal(`queue`),S.literal(`interrupt`)]),Yi=S.union([S.literal(`old`),S.literal(`new`),S.literal(`summarize`)]),Xi=S.union([S.literal(`off`),S.literal(`first`),S.literal(`all`),S.literal(`batched`)]),Zi=S.union([S.literal(`never`),S.literal(`instant`),S.literal(`thinking`),S.literal(`message`)]),Qi=S.enum([`open`,`disabled`,`allowlist`]),$i=S.enum([`pairing`,`allowlist`,`open`,`disabled`]),ea=S.enum([`all`,`allowlist`,`allowlist_quote`]),ta=S.object({minChars:S.number().int().positive().optional(),maxChars:S.number().int().positive().optional(),idleMs:S.number().int().nonnegative().optional()}).strict();S.number().int().min(0).optional(),S.number().int().min(0).optional(),ea.optional(),S.record(S.string(),qi.optional()).optional(),S.number().int().positive().optional(),S.enum([`length`,`newline`]).optional(),S.boolean().optional(),ta.optional(),S.string().optional(),S.number().positive().optional();const na=S.object({minChars:S.number().int().positive().optional(),maxChars:S.number().int().positive().optional(),breakPreference:S.union([S.literal(`paragraph`),S.literal(`newline`),S.literal(`sentence`)]).optional()}).strict(),ra=S.enum([`off`,`bullets`,`code`,`block`]),ia=S.object({tables:ra.optional()}).strict().optional(),aa=S.string().min(1),oa=S.enum([`final`,`all`]),sa=S.enum([`off`,`always`,`inbound`,`tagged`]),ca=S.object({apiKey:J.optional().register(K)}).catchall(S.union([S.string(),S.number(),S.boolean(),S.null(),S.array(S.unknown()),S.record(S.string(),S.unknown())])),la=S.object({auto:sa.optional(),enabled:S.boolean().optional(),mode:oa.optional(),provider:aa.optional(),summaryModel:S.string().optional(),modelOverrides:S.object({enabled:S.boolean().optional(),allowText:S.boolean().optional(),allowProvider:S.boolean().optional(),allowVoice:S.boolean().optional(),allowModelId:S.boolean().optional(),allowVoiceSettings:S.boolean().optional(),allowNormalization:S.boolean().optional(),allowSeed:S.boolean().optional()}).strict().optional(),providers:S.record(S.string(),ca).optional(),prefsPath:S.string().optional(),maxTextLength:S.number().int().min(1).optional(),timeoutMs:S.number().int().min(1e3).max(12e4).optional()}).strict().optional(),ua=S.object({mode:S.union([S.literal(`off`),S.literal(`natural`),S.literal(`custom`)]).optional(),minMs:S.number().int().nonnegative().optional(),maxMs:S.number().int().nonnegative().optional()}).strict(),da=S.object({noOutputTimeoutMs:S.number().int().min(1e3).optional(),noOutputTimeoutRatio:S.number().min(.05).max(.95).optional(),minMs:S.number().int().min(1e3).optional(),maxMs:S.number().int().min(1e3).optional()}).strict().optional(),fa=S.object({command:S.string(),args:S.array(S.string()).optional(),output:S.union([S.literal(`json`),S.literal(`text`),S.literal(`jsonl`)]).optional(),resumeOutput:S.union([S.literal(`json`),S.literal(`text`),S.literal(`jsonl`)]).optional(),jsonlDialect:S.literal(`claude-stream-json`).optional(),liveSession:S.literal(`claude-stdio`).optional(),input:S.union([S.literal(`arg`),S.literal(`stdin`)]).optional(),maxPromptArgChars:S.number().int().positive().optional(),env:S.record(S.string(),S.string()).optional(),clearEnv:S.array(S.string()).optional(),modelArg:S.string().optional(),modelAliases:S.record(S.string(),S.string()).optional(),sessionArg:S.string().optional(),sessionArgs:S.array(S.string()).optional(),resumeArgs:S.array(S.string()).optional(),sessionMode:S.union([S.literal(`always`),S.literal(`existing`),S.literal(`none`)]).optional(),sessionIdFields:S.array(S.string()).optional(),systemPromptArg:S.string().optional(),systemPromptFileConfigArg:S.string().optional(),systemPromptFileConfigKey:S.string().optional(),systemPromptMode:S.union([S.literal(`append`),S.literal(`replace`)]).optional(),systemPromptWhen:S.union([S.literal(`first`),S.literal(`always`),S.literal(`never`)]).optional(),imageArg:S.string().optional(),imageMode:S.union([S.literal(`repeat`),S.literal(`list`)]).optional(),imagePathScope:S.union([S.literal(`temp`),S.literal(`workspace`)]).optional(),serialize:S.boolean().optional(),reliability:S.object({watchdog:S.object({fresh:da,resume:da}).strict().optional()}).strict().optional()}).strict(),pa=e=>p(e),ma=e=>{e.policy===`open`&&(pa(e.allowFrom).includes(`*`)||e.ctx.addIssue({code:S.ZodIssueCode.custom,path:e.path,message:e.message}))},ha=e=>{e.policy===`allowlist`&&(pa(e.allowFrom).length>0||e.ctx.addIssue({code:S.ZodIssueCode.custom,path:e.path,message:e.message}))},ga=S.enum([`thread`,`top-level`]),_a=S.object({attempts:S.number().int().min(1).optional(),minDelayMs:S.number().int().min(0).optional(),maxDelayMs:S.number().int().min(0).optional(),jitter:S.number().min(0).max(1).optional()}).strict().optional(),va=S.object({whatsapp:Y.optional(),telegram:Y.optional(),discord:Y.optional(),irc:Y.optional(),slack:Y.optional(),mattermost:Y.optional(),signal:Y.optional(),imessage:Y.optional(),msteams:Y.optional(),webchat:Y.optional()}).strict().optional(),ya=S.record(S.string(),S.number().int().nonnegative()).optional(),ba=S.object({mode:Y.optional(),byChannel:va,debounceMs:S.number().int().nonnegative().optional(),debounceMsByChannel:ya,cap:S.number().int().positive().optional(),drop:Yi.optional()}).strict().optional(),xa=S.object({debounceMs:S.number().int().nonnegative().optional(),byChannel:ya}).strict().optional(),Sa=S.object({command:S.array(S.string()).superRefine((e,t)=>{let n=e[0];_i(n)||t.addIssue({code:S.ZodIssueCode.custom,path:[0],message:`expected safe executable name or path`})}),timeoutSeconds:S.number().int().positive().optional()}).strict().optional(),Ca=S.string().regex(/^#?[0-9a-fA-F]{6}$/,`expected hex color (RRGGBB)`),wa=S.string().refine(_i,`expected safe executable name or path`),Ta=xi(),Ea=S.array(S.union([S.literal(`image`),S.literal(`audio`),S.literal(`video`)])).optional(),Da=S.object({mode:S.union([S.literal(`first`),S.literal(`all`)]).optional(),maxAttachments:S.number().int().positive().optional(),prefer:S.union([S.literal(`first`),S.literal(`last`),S.literal(`path`),S.literal(`url`)]).optional()}).strict().optional(),Oa=S.object({detectLanguage:S.boolean().optional(),punctuate:S.boolean().optional(),smartFormat:S.boolean().optional()}).strict().optional(),ka=S.union([S.string(),S.number(),S.boolean()]),Aa=S.record(S.string(),S.record(S.string(),ka)).optional(),ja={prompt:S.string().optional(),timeoutSeconds:S.number().int().positive().optional(),language:S.string().optional(),providerOptions:Aa,deepgram:Oa,baseUrl:S.string().optional(),headers:S.record(S.string(),S.string()).optional(),request:Vi},Ma=S.object({provider:S.string().optional(),model:S.string().optional(),capabilities:Ea,type:S.union([S.literal(`provider`),S.literal(`cli`)]).optional(),command:S.string().optional(),args:S.array(S.string()).optional(),maxChars:S.number().int().positive().optional(),maxBytes:S.number().int().positive().optional(),...ja,profile:S.string().optional(),preferredProfile:S.string().optional()}).strict().optional(),Na=S.object({enabled:S.boolean().optional(),scope:Ta,maxBytes:S.number().int().positive().optional(),maxChars:S.number().int().positive().optional(),...ja,attachments:Da,models:S.array(Ma).optional(),echoTranscript:S.boolean().optional(),echoFormat:S.string().optional()}).strict().optional(),Pa=S.object({models:S.array(Ma).optional(),concurrency:S.number().int().positive().optional(),asyncCompletion:S.object({directSend:S.boolean().optional()}).strict().optional(),image:Na.optional(),audio:Na.optional(),video:Na.optional()}).strict().optional(),Fa=S.object({type:S.literal(`cli`).optional(),command:S.string().min(1),args:S.array(S.string()).optional(),timeoutSeconds:S.number().int().positive().optional()}).strict(),Ia=S.object({enabled:S.boolean().optional(),scope:Ta,maxLinks:S.number().int().positive().optional(),timeoutSeconds:S.number().int().positive().optional(),models:S.array(Fa).optional()}).strict().optional(),La=S.union([S.boolean(),S.literal(`auto`)]),Ra=S.object({native:La.optional(),nativeSkills:La.optional()}).strict().optional(),za=S.union([S.string(),S.number()]);S.array(za).optional();function Ba(e){let t=e&&typeof e==`object`?e:{},n=Array.isArray(t.path)?t.path.filter(e=>{let t=typeof e;return t===`string`||t===`number`}):void 0;return{...t,...n?{path:n}:{}}}function Va(e,t){let n=e.safeParse(t);return n.success?{success:!0,data:n.data}:{success:!1,issues:n.error.issues.map(e=>Ba(e))}}function Ha(e,t){let n=e;return typeof n.toJSONSchema==`function`?{schema:n.toJSONSchema({target:`draft-07`,unrepresentable:`any`}),...t?.uiHints?{uiHints:t.uiHints}:{},runtime:{safeParse:t=>Va(e,t)}}:{schema:{type:`object`,additionalProperties:!0},...t?.uiHints?{uiHints:t.uiHints}:{},runtime:{safeParse:t=>Va(e,t)}}}const Ua=new Set([`helper-api.js`,`light-runtime-api.js`,`runtime-api.js`,`runtime-setter-api.js`,`thread-bindings-runtime.js`]);function Wa(e){return m(e)}function Ga(e){if(e)return e.replace(/^\.\//u,``).replace(/\.[^.]+$/u,`.js`)}function Ka(e){return!de.includes(x.extname(e))||e.startsWith(`.`)||e.startsWith(`test-`)||e.includes(`.test-`)||e.endsWith(`.d.ts`)||/^config-api(\.[cm]?[jt]s)$/u.test(e)?!1:!/(\.test|\.spec)(\.[cm]?[jt]s)$/u.test(e)}function qa(t){let n=x.basename(t.entryPath,x.extname(t.entryPath));if(!t.hasMultipleExtensions)return t.manifestId;let r=e(t.packageName);return r?`${r.includes(`/`)?r.split(`/`).pop()??r:r}/${n}`:`${t.manifestId}/${n}`}function Ja(e){let t=new Set(m([e.sourceEntry,e.setupEntry]).map(e=>x.basename(e))),n=b.readdirSync(e.pluginDir,{withFileTypes:!0}).filter(e=>e.isFile()).map(e=>e.name).filter(Ka).filter(e=>!t.has(e)).map(e=>Ga(e)).filter(e=>typeof e==`string`&&e.length>0).toSorted((e,t)=>e.localeCompare(t));return n.length>0?n:void 0}function Ya(e){if(!e)return;let t=e.filter(e=>Ua.has(e));return t.length>0?t:void 0}function Xa(e){let t=x.join(e.packageRoot,`extensions`),n=x.join(e.packageRoot,`dist-runtime`,`extensions`),r=x.join(e.packageRoot,`dist`,`extensions`);if(e.runningFromBuiltArtifact){if(b.existsSync(r))return r;if(b.existsSync(n))return n}if(b.existsSync(t))return t;if(b.existsSync(n)&&b.existsSync(r))return n;if(b.existsSync(r))return r}const Za=[x.join(`src`,`config-schema.ts`),x.join(`src`,`config-schema.js`),x.join(`src`,`config-schema.mts`),x.join(`src`,`config-schema.mjs`),x.join(`src`,`config-schema.cts`),x.join(`src`,`config-schema.cjs`)],Qa=[`channel-config-api`,`runtime-api`,`api`],$a=new Map;function eo(e){if(!e||typeof e!=`object`)return!1;let t=e;return!!(t.schema&&typeof t.schema==`object`)}function to(e){for(let[t,n]of Object.entries(e))if(t.endsWith(`ChannelConfigSchema`)&&eo(n))return n;for(let[t,n]of Object.entries(e))if(!(!t.endsWith(`ConfigSchema`)||t.endsWith(`AccountConfigSchema`))){if(eo(n))return n;if(n&&typeof n==`object`)return Ha(n)}for(let t of Object.values(e))if(eo(t))return t;return null}function no(e){return fe({cache:$a,modulePath:e,importerUrl:import.meta.url,preferBuiltDist:!0,jitiFilename:import.meta.url})}function ro(e){for(let t of Za){let n=x.join(e,t);if(b.existsSync(n))return n}for(let t of Qa)for(let n of de){let r=x.join(e,`${t}${n}`);if(b.existsSync(r))return r}}function io(e){try{return to(no(e)(e))}catch{return null}}function ao(e,t){let n=e?.channel;return n?.id?.trim()===t?n:void 0}function oo(t){let n=Wa(t.manifest.channels),r=t.manifest.channelConfigs&&Object.keys(t.manifest.channelConfigs).length>0?{...t.manifest.channelConfigs}:{};if(n.length===0)return Object.keys(r).length>0?r:void 0;let i=ro(t.pluginDir),a=i?io(i):null;for(let i of n){let n=r[i],o=ao(t.packageManifest,i),s=Wa(o?.preferOver),c=a?.uiHints||n?.uiHints?{...a?.uiHints&&Object.keys(a.uiHints).length>0?a.uiHints:{},...n?.uiHints&&Object.keys(n.uiHints).length>0?n.uiHints:{}}:void 0;!a?.schema&&!n?.schema||(r[i]={schema:a?.schema??n?.schema??{},...c&&Object.keys(c).length>0?{uiHints:c}:{},...a?.runtime??n?.runtime?{runtime:a?.runtime??n?.runtime}:{},...e(n?.label)??e(o?.label)?{label:e(n?.label)??e(o?.label)}:{},...e(n?.description)??e(o?.blurb)?{description:e(n?.description)??e(o?.blurb)}:{},...n?.preferOver?.length?{preferOver:n.preferOver}:s.length>0?{preferOver:s}:{}})}return Object.keys(r).length>0?r:void 0}const so=ue({modulePath:me(import.meta.url),moduleUrl:import.meta.url})??me(new URL(`../..`,import.meta.url)),co=me(import.meta.url),lo=co.includes(`${x.sep}dist${x.sep}`)||co.includes(`${x.sep}dist-runtime${x.sep}`),uo=new Map;function fo(e){let t=x.join(e,`package.json`);if(b.existsSync(t))try{return JSON.parse(b.readFileSync(t,`utf-8`))}catch{return}}function po(e,t){return t?x.resolve(t):Xa({packageRoot:e,runningFromBuiltArtifact:lo})}function mo(t,n,r,i){let a=po(t,i);if(!a||!b.existsSync(a))return[];let o=[];for(let t of b.readdirSync(a,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>e.name).toSorted((e,t)=>e.localeCompare(t))){let i=x.join(a,t),s=ne(i,!1);if(!s.ok)continue;let c=fo(i),l=h(c),u=Wa(l?.extensions);if(u.length===0)continue;let d=e(u[0]),f=Ga(d);if(!d||!f)continue;let p=e(l?.setupEntry),m=p&&Ga(p)?{source:p,built:Ga(p)}:void 0,g=Ja({pluginDir:i,sourceEntry:d,...p?{setupEntry:p}:{}}),_=Ya(g),v=n&&r?oo({pluginDir:i,manifest:s.manifest,packageManifest:l}):s.manifest.channelConfigs;o.push({dirName:t,idHint:qa({entryPath:d,manifestId:s.manifest.id,packageName:e(c?.name),hasMultipleExtensions:u.length>1}),source:{source:d,built:f},...m?{setupSource:m}:{},...g?{publicSurfaceArtifacts:g}:{},..._?{runtimeSidecarArtifacts:_}:{},...e(c?.name)?{packageName:e(c?.name)}:{},...e(c?.version)?{packageVersion:e(c?.version)}:{},...e(c?.description)?{packageDescription:e(c?.description)}:{},...l?{packageManifest:l}:{},manifest:{...s.manifest,...v?{channelConfigs:v}:{}}})}return o}function ho(e){let t=x.resolve(e?.rootDir??so),n=e?.scanDir?x.resolve(e.scanDir):void 0,r=e?.includeChannelConfigs??!lo,i=e?.includeSyntheticChannelConfigs??r,a=JSON.stringify({rootDir:t,scanDir:n,includeChannelConfigs:r,includeSyntheticChannelConfigs:i}),o=uo.get(a);if(o)return o;let s=Object.freeze(mo(t,r,i,n));return uo.set(a,s),s}function go(e){return[...e.scanDir?[x.resolve(e.scanDir,e.pluginDirName??``)]:[],x.resolve(e.rootDir,`dist`,`extensions`,e.pluginDirName??``),x.resolve(e.rootDir,`extensions`,e.pluginDirName??``)].filter((e,t,n)=>n.indexOf(e)===t)}function _o(e,t,n,r){if(!t)return null;let i=[t.built,t.source].filter(e=>typeof e==`string`&&e.length>0),a=go({rootDir:e,pluginDirName:n,...r?{scanDir:r}:{}});for(let e of a)for(let t of i){let n=x.resolve(e,vo(t));if(b.existsSync(n))return n}return null}function vo(e){return e.replace(/^\.\//u,``)}let yo;const bo=[[`openai-codex`,`openai`],[`google-gemini-cli`,`google`],[`minimax-portal`,`minimax`],[`minimax-portal-auth`,`minimax`]];function xo(){if(yo)return yo;let e=new Map;for(let t of ae({cache:!0}).plugins){if(t.origin!==`bundled`)continue;let n=r(t.id);n&&e.set(n,t.id);for(let n of t.providers){let i=r(n);i&&e.set(i,t.id)}for(let n of t.legacyPluginIds??[]){let i=r(n);i&&e.set(i,t.id)}}for(let[t,n]of bo)e.set(t,n);return yo=e,e}function So(t){let n=e(t)??``,i=r(n)??``;return xo().get(i)??n}const Co=e=>se(e,So);function wo(e){return{plugins:e.plugins??Co(e.config?.plugins),rootConfig:e.config}}const To=e=>!!(e?.slots&&Object.prototype.hasOwnProperty.call(e.slots,`memory`)),Eo=e=>!!(e?.entries&&Object.prototype.hasOwnProperty.call(e.entries,re(`memory`))),Do=e=>te(e);function Oo(e,t=process.env){if(!t.VITEST)return e;let n=e.plugins;return Do(n)?To(n)||Eo(n)?e:{...e,plugins:{...n,slots:{...n?.slots,memory:`none`}}}:{...e,plugins:{...n,enabled:!1,slots:{...n?.slots,memory:`none`}}}}function ko(e){return y(ee({...e,activationSource:e.activationSource??wo({config:e.rootConfig,plugins:e.config}),allowBundledChannelExplicitBypassesAllowlist:!0,isBundledChannelEnabledByChannelConfig:Ao}))}ie(ko);const Ao=_,jo=ce(Mo);function Mo(e){return ko(e)}function No(e){return v(e)}const Po=pe(import.meta.url)(`semver`),Fo=(e,t,n)=>Po.satisfies(e,t,n),Io=e=>Po.valid(e),Lo=e=>Po.validRange(e),Ro=`.openclaw-runtime-deps.json`,zo=/^[a-z0-9][a-z0-9._-]*$/;function Bo(e){let t=e.trim();if(t===``)return null;let n=t.split(`/`);if(n.some(e=>e===``||e===`.`||e===`..`))return null;if(n.length===1)return zo.test(n[0]??``)?t:null;if(n.length!==2||!n[0]?.startsWith(`@`))return null;let r=n[0].slice(1),i=n[1];return zo.test(r)&&zo.test(i??``)?t:null}function Vo(e){if(typeof e!=`string`)return null;let t=e.trim();if(t===``||t.toLowerCase().startsWith(`workspace:`))return null;if(Io(t))return t;let n=t[0];return(n===`^`||n===`~`)&&Io(t.slice(1))?t:null}function Ho(e,t){if(typeof t!=`string`)return null;let n=t.trim();if(n===``||n.toLowerCase().startsWith(`workspace:`))return null;let r=Bo(e);if(!r)throw Error(`Invalid bundled runtime dependency name: ${e}`);let i=Vo(n);if(!i)throw Error(`Unsupported bundled runtime dependency spec for ${r}: ${n}`);return{name:r,version:i}}function Uo(e){let t=e.lastIndexOf(`@`);if(t<=0||t===e.length-1)throw Error(`Invalid bundled runtime dependency install spec: ${e}`);let n=Ho(e.slice(0,t),e.slice(t+1));if(!n)throw Error(`Invalid bundled runtime dependency install spec: ${e}`);return n}function Wo(e){let t=Bo(e);if(!t)throw Error(`Invalid bundled runtime dependency name: ${e}`);return x.join(`node_modules`,...t.split(`/`),`package.json`)}function Go(e,t){let n=x.resolve(e,`node_modules`),r=x.resolve(e,Wo(t));if(r!==n&&!r.startsWith(`${n}${x.sep}`))throw Error(`Blocked runtime dependency path escape for ${t}`);return r}function Ko(e,t){let n=X(Go(e,t));return(n&&typeof n.version==`string`?n.version.trim():``)||null}function X(e){try{let t=JSON.parse(b.readFileSync(e,`utf8`));return!t||typeof t!=`object`||Array.isArray(t)?null:t}catch{return null}}function qo(e){return{...e.dependencies,...e.optionalDependencies}}function Jo(e){return(b.existsSync(x.join(e,`.git`))||b.existsSync(x.join(e,`pnpm-workspace.yaml`)))&&b.existsSync(x.join(e,`src`))&&b.existsSync(x.join(e,`extensions`))}function Yo(e){let t=x.dirname(x.resolve(e));if(x.basename(t)!==`extensions`)return null;let n=x.dirname(t);return Jo(n)?n:null}function Xo(e){let t=x.dirname(e),n=x.dirname(t);if(x.basename(t)!==`extensions`||x.basename(n)!==`dist`&&x.basename(n)!==`dist-runtime`)return null;let r=x.dirname(n);return Jo(r)?r:null}function Zo(e){return Yo(e)??Xo(e)}function Qo(e){let t=x.dirname(x.resolve(e)),n=x.dirname(t);return x.basename(t)!==`extensions`||x.basename(n)!==`dist`&&x.basename(n)!==`dist-runtime`?null:x.dirname(n)}function $o(e,t){return ve(`sha256`).update(e).update(`\0`).update(t.join(`\0`)).digest(`hex`).slice(0,16)}function es(e){return ve(`sha256`).update(x.resolve(e)).digest(`hex`).slice(0,12)}function ts(e){return e.replace(/[^A-Za-z0-9._-]+/g,`-`).replace(/^-+|-+$/g,``)||`unknown`}function ns(e){let t=X(x.join(e,`package.json`));return(t&&typeof t.version==`string`?t.version.trim():``)||`unknown`}function rs(e){let t=X(x.join(e,Ro))?.specs;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e.trim().length>0).toSorted((e,t)=>e.localeCompare(t)):[]}function is(e,t){b.mkdirSync(e,{recursive:!0}),b.writeFileSync(x.join(e,Ro),`${JSON.stringify({specs:[...t].toSorted((e,t)=>e.localeCompare(t))},null,2)}\n`,`utf8`)}function as(e){b.rmSync(x.join(e,Ro),{force:!0})}function os(e){return x.resolve(e.installRoot)===x.resolve(e.pluginRoot)?!Zo(e.pluginRoot):!0}function ss(e){let t=null;try{return t=b.mkdtempSync(x.join(e,`.openclaw-write-probe-`)),b.writeFileSync(x.join(t,`probe`),``,`utf8`),!0}catch{return!1}finally{if(t)try{b.rmSync(t,{recursive:!0,force:!0})}catch{}}}function cs(e){let t=e.STATE_DIRECTORY?.trim();if(!t)return null;let n=t.split(x.delimiter).find(e=>e.trim().length>0);return n?x.resolve(n):null}function ls(e){let t=e.OPENCLAW_PLUGIN_STAGE_DIR?.trim();if(t)return n(t,{env:e,homedir:he.homedir});let r=cs(e);return r?x.join(r,`plugin-runtime-deps`):x.join(i(e,he.homedir),`plugin-runtime-deps`)}function us(e){let t=Qo(e.pluginRoot)??e.pluginRoot,n=`openclaw-${ts(ns(t))}-${es(t)}`;return x.join(ls(e.env),n)}function ds(e){let t=Zo(e.pluginRoot);return t?x.join(t,`.local`,`bundled-plugin-runtime-deps`,`${e.pluginId}-${$o(e.pluginId,e.installSpecs)}`):null}function fs(e,t){return t.every(t=>b.existsSync(x.join(e,Wo(t.name))))}function ps(e,t){let n=Io(e),r=Lo(t);return n&&r?Fo(n,r,{includePrerelease:!0}):e===t}function ms(e,t){return e.some(e=>{let n=Ko(e,t.name);return typeof n==`string`&&ps(n,t.version)})}function hs(e,t){let n=x.dirname(e),r=b.mkdtempSync(x.join(n,`.openclaw-runtime-deps-copy-`)),i=x.join(r,`node_modules`);try{b.cpSync(t,i,{recursive:!0}),b.rmSync(e,{recursive:!0,force:!0}),b.renameSync(i,e)}finally{try{b.rmSync(r,{recursive:!0,force:!0})}catch{}}}function gs(e){if(!e.cacheDir)return!1;let t=x.join(e.cacheDir,`node_modules`);if(!fs(e.cacheDir,e.deps))return!1;try{return hs(x.join(e.installRoot,`node_modules`),t),!0}catch{return!1}}function _s(e){if(!e.cacheDir)return;let t=x.join(e.installRoot,`node_modules`);if(!b.existsSync(t))return;let n=null;try{b.mkdirSync(x.dirname(e.cacheDir),{recursive:!0}),n=b.mkdtempSync(x.join(x.dirname(e.cacheDir),`.runtime-deps-cache-`)),b.cpSync(t,x.join(n,`node_modules`),{recursive:!0}),b.rmSync(e.cacheDir,{recursive:!0,force:!0}),b.renameSync(n,e.cacheDir)}catch{n&&b.rmSync(n,{recursive:!0,force:!0})}}function vs(e){let t={...e};return delete t.npm_config_global,delete t.npm_config_location,delete t.npm_config_prefix,t}function ys(e){return{...vs(e),npm_config_legacy_peer_deps:`true`,npm_config_package_lock:`false`,npm_config_save:`false`}}function bs(e){return e.forEach(e=>{Uo(e)}),[`install`,`--ignore-scripts`,...e]}function xs(e,t){return t===`win32`?Object.keys(e).find(e=>e.toLowerCase()===`path`)??`Path`:`PATH`}function Ss(e){let t=e.replaceAll(`\\`,`/`).toLowerCase();return t.endsWith(`/npm-cli.js`)||t.endsWith(`/npm/bin/npm-cli.js`)}function Cs(e){let t=e.env??process.env,n=e.execPath??process.execPath,i=e.existsSync??b.existsSync,a=e.platform??process.platform,o=a===`win32`?x.win32:x.posix,s=o.dirname(n),c=r(t.npm_execpath)?t.npm_execpath:void 0,l=[c&&Ss(c)?c:void 0,o.resolve(s,`../lib/node_modules/npm/bin/npm-cli.js`),o.resolve(s,`node_modules/npm/bin/npm-cli.js`)].filter(e=>!!e).find(e=>o.isAbsolute(e)&&i(e));if(l)return{command:n,args:[l,...e.npmArgs]};if(a===`win32`){let t=o.resolve(s,`npm.exe`);if(i(t))return{command:t,args:e.npmArgs};throw Error(`Unable to resolve a safe npm executable on Windows`)}let u=xs(t,a),d=t[u];return{command:`npm`,args:e.npmArgs,env:{...t,[u]:typeof d==`string`&&d.length>0?`${s}${x.delimiter}${d}`:s}}}function ws(e){let t=X(x.join(e,`openclaw.plugin.json`))?.channels;return Array.isArray(t)?t.filter(e=>typeof e==`string`&&e!==``):[]}function Ts(e){return X(x.join(e,`openclaw.plugin.json`))?.enabledByDefault===!0}function Es(e){let t=Co(e.config.plugins);if(!t.enabled||t.deny.includes(e.pluginId))return!1;let n=t.entries[e.pluginId];if(n?.enabled===!1)return!1;if(n?.enabled===!0)return!0;for(let t of ws(e.pluginDir)){let n=c(t);if(!n)continue;let r=e.config.channels?.[n];if(r&&typeof r==`object`&&!Array.isArray(r)&&(e.includeConfiguredChannels||r.enabled===!0))return!0}return Ts(e.pluginDir)}function Ds(e,t={}){let n=t.env??process.env;return t.forceExternal||n.OPENCLAW_PLUGIN_STAGE_DIR?.trim()||n.STATE_DIRECTORY?.trim()?us({pluginRoot:e,env:n}):ss(e)?e:us({pluginRoot:e,env:n})}function Os(e){let t=e.installExecutionRoot??e.installRoot;b.mkdirSync(e.installRoot,{recursive:!0}),b.mkdirSync(t,{recursive:!0}),x.resolve(t)!==x.resolve(e.installRoot)&&b.writeFileSync(x.join(t,`package.json`),`${JSON.stringify({name:`openclaw-runtime-deps-install`,private:!0},null,2)}\n`,`utf8`);let n=ys(e.env),r=Cs({env:n,npmArgs:bs(e.missingSpecs)}),i=_e(r.command,r.args,{cwd:t,encoding:`utf8`,env:r.env??n,stdio:`pipe`});if(i.status!==0||i.error){let e=[i.error?.message,i.stderr,i.stdout].filter(Boolean).join(`
|
|
27
|
+
`).trim();throw Error(e||`npm install failed`)}if(x.resolve(t)!==x.resolve(e.installRoot)){let n=x.join(t,`node_modules`);if(!b.existsSync(n))throw Error(`npm install did not produce node_modules`);hs(x.join(e.installRoot,`node_modules`),n)}}function ks(e){if(e.config&&!Es({config:e.config,pluginId:e.pluginId,pluginDir:e.pluginRoot}))return{installedSpecs:[],retainSpecs:[]};let t=X(x.join(e.pluginRoot,`package.json`));if(!t)return{installedSpecs:[],retainSpecs:[]};let n=Object.entries(qo(t)).map(([e,t])=>Ho(e,t)).filter(e=>!!e);if(n.length===0)return{installedSpecs:[],retainSpecs:[]};let r=Ds(e.pluginRoot,{env:e.env}),i=os({pluginRoot:e.pluginRoot,installRoot:r});i||as(r);let a=n.map(e=>`${e.name}@${e.version}`).toSorted((e,t)=>e.localeCompare(t)),o=n.filter(e=>!ms([r],e)).map(e=>`${e.name}@${e.version}`).toSorted((e,t)=>e.localeCompare(t));if(o.length===0)return{installedSpecs:[],retainSpecs:[]};let s=i?rs(r):[],c=[...new Set([...e.retainSpecs??[],...s,...a])].toSorted((e,t)=>e.localeCompare(t)),l=ds({pluginId:e.pluginId,pluginRoot:e.pluginRoot,installSpecs:c}),u=l&&x.resolve(r)===x.resolve(e.pluginRoot)&&Yo(e.pluginRoot)?l:void 0;return gs({cacheDir:l,deps:n,installRoot:r})?{installedSpecs:[],retainSpecs:[]}:((e.installDeps??(t=>Os({installRoot:t.installRoot,installExecutionRoot:t.installExecutionRoot,missingSpecs:t.installSpecs??t.missingSpecs,env:e.env})))({installRoot:r,installExecutionRoot:u,missingSpecs:o,installSpecs:c}),i&&is(r,c),_s({cacheDir:l,installRoot:r}),{installedSpecs:o,retainSpecs:c})}const As=new Map;function js(e){let t=x.dirname(e),n=x.dirname(t);return x.basename(t)===`extensions`&&(x.basename(n)===`dist`||x.basename(n)===`dist-runtime`)}function Ms(e){let t=e.env??process.env,n=Ds(e.pluginRoot,{env:t}),r=As.get(n)??[],i=ks({pluginId:e.pluginId,pluginRoot:e.pluginRoot,env:t,retainSpecs:r});if(i.installedSpecs.length>0&&(As.set(n,[...new Set([...r,...i.retainSpecs])].toSorted((e,t)=>e.localeCompare(t))),e.logInstalled?.(i.installedSpecs)),x.resolve(n)===x.resolve(e.pluginRoot))return{pluginRoot:e.pluginRoot,modulePath:e.modulePath};let a=Ps({pluginId:e.pluginId,pluginRoot:e.pluginRoot,installRoot:n});return{pluginRoot:a,modulePath:Ns({source:e.modulePath,pluginRoot:e.pluginRoot,mirroredRoot:a})}}function Ns(e){let t=x.relative(e.pluginRoot,e.source);return t.startsWith(`..`)||x.isAbsolute(t)?e.source:x.join(e.mirroredRoot,t)}function Ps(e){let t=Fs({installRoot:e.installRoot,pluginRoot:e.pluginRoot}),n=x.join(t,e.pluginId);b.mkdirSync(e.installRoot,{recursive:!0});try{b.chmodSync(e.installRoot,493)}catch{}b.mkdirSync(t,{recursive:!0});try{b.chmodSync(t,493)}catch{}b.accessSync(t,b.constants.W_OK);let r=b.mkdtempSync(x.join(t,`.plugin-${e.pluginId}-`)),i=x.join(r,`plugin`);try{Is(e.pluginRoot,i),b.rmSync(n,{recursive:!0,force:!0}),b.renameSync(i,n)}finally{b.rmSync(r,{recursive:!0,force:!0})}return n}function Fs(e){let t=x.dirname(e.pluginRoot),n=x.dirname(t),r=x.join(e.installRoot,`dist`),i=x.join(r,`extensions`);b.mkdirSync(i,{recursive:!0,mode:493});for(let e of b.readdirSync(n,{withFileTypes:!0})){if(e.name===`extensions`)continue;let t=x.join(n,e.name),i=x.join(r,e.name);if(!b.existsSync(i))try{b.symlinkSync(t,i,e.isDirectory()?`junction`:`file`)}catch{e.isDirectory()?Is(t,i):e.isFile()&&b.copyFileSync(t,i)}}return i}function Is(e,t){b.mkdirSync(t,{recursive:!0,mode:493});for(let n of b.readdirSync(e,{withFileTypes:!0})){if(n.name===`node_modules`)continue;let r=x.join(e,n.name),i=x.join(t,n.name);if(n.isDirectory()){Is(r,i);continue}if(n.isSymbolicLink()){b.symlinkSync(b.readlinkSync(r),i);continue}if(n.isFile()){b.copyFileSync(r,i);try{let e=b.statSync(r).mode;b.chmodSync(i,e|384)}catch{}}}}function Ls(e){let t=e,n=new Set;for(;t&&typeof t==`object`&&`default`in t&&!n.has(t);)n.add(t),t=t.default;return t}const Rs=pe(import.meta.url);function zs(e){return[`.js`,`.mjs`,`.cjs`].includes(x.extname(e).toLowerCase())}function Bs(e,t={}){if(process.platform===`win32`&&t.allowWindows!==!0||!zs(e))return{ok:!1};try{return{ok:!0,moduleExport:Rs(e)}}catch{return{ok:!1}}}const Vs=a({argv1:process.argv[1],cwd:process.cwd(),moduleUrl:import.meta.url.startsWith(`file:`)?import.meta.url:void 0})??(import.meta.url.startsWith(`file:`)?x.resolve(me(new URL(`../../..`,import.meta.url))):process.cwd());function Hs(e){let t=x.dirname(e),n=x.basename(t);return n===`dist`||n===`dist-runtime`?x.dirname(t):t}function Z(e=process.env){let t=s(e);if(!t)return{packageRoot:Vs,cacheKey:Vs};let n=x.resolve(t);return{packageRoot:x.basename(n)===`extensions`?Hs(n):n,cacheKey:n,pluginsDir:n}}function Us(e){return ho(e)}function Ws(e,t,n,r){return _o(e,t,n,r)}function Gs(e){let{id:t,label:n,selectionLabel:r,docsPath:i,blurb:a,...o}=e??{};return o}function Ks(t){let n=t.meta??void 0,r=t.existing??void 0,i=e(n?.label)??e(r?.label)??e(n?.selectionLabel)??e(r?.selectionLabel)??t.id,a=e(n?.selectionLabel)??e(r?.selectionLabel)??i,o=e(n?.docsPath)??e(r?.docsPath)??`/channels/${t.id}`,s=e(n?.blurb)??e(r?.blurb)??``;return{...Gs(r),...Gs(n),id:t.id,label:i,selectionLabel:a,docsPath:o,blurb:s}}function qs(){let e=new Map;return t=>fe({cache:e,modulePath:t,importerUrl:import.meta.url,argvEntry:process.argv[1],preferBuiltDist:!0,jitiFilename:import.meta.url})}let Js=qs();function Ys(e,t){let n=t.replace(/\\/g,`/`),r=x.resolve(e,n);return x.extname(r)?[r]:[r,`${r}.ts`,`${r}.mts`,`${r}.js`,`${r}.mjs`,`${r}.cts`,`${r}.cjs`]}function Xs(e,t){for(let n of Ys(e,t))if(b.existsSync(n))return n;return x.resolve(e,t)}function Zs(e){let t=le({absolutePath:e.modulePath,rootPath:e.boundaryRootDir??e.rootDir,boundaryLabel:e.boundaryLabel??`plugin root`,rejectHardlinks:!1,skipLexicalRootCheck:!0});if(!t.ok)throw Error(`${e.boundaryLabel??`plugin`} module path escapes plugin root or fails alias checks`);let n=t.path;if(b.closeSync(t.fd),e.shouldTryNativeRequire?.(n)){let e=Bs(n,{allowWindows:!0});if(e.ok)return e.moduleExport}return Js(n)(n)}const Q=Ur(`channels`);function Qs(e){let t=Ls(e);if(!t||typeof t!=`object`)return null;let n=t;return n.kind!==`bundled-channel-entry`||typeof n.id!=`string`||typeof n.name!=`string`||typeof n.description!=`string`||typeof n.register!=`function`||typeof n.loadChannelPlugin!=`function`?null:n}function $s(e){let t=Ls(e);if(!t||typeof t!=`object`)return null;let n=t;return n.kind!==`bundled-channel-setup-entry`||typeof n.loadSetupPlugin!=`function`?null:n}function ec(e){let t=e.pluginsDir?x.resolve(e.pluginsDir,e.metadata.dirName):null;if(t&&(e.modulePath===t||e.modulePath.startsWith(`${t}${x.sep}`)))return t;let n=x.resolve(e.packageRoot,`dist`,`extensions`,e.metadata.dirName);return e.modulePath===n||e.modulePath.startsWith(`${n}${x.sep}`)?n:x.resolve(e.packageRoot,`extensions`,e.metadata.dirName)}function tc(e){return e.pluginsDir}function nc(e){return e.entry?Ws(e.rootScope.packageRoot,e.entry,e.metadata.dirName,tc(e.rootScope)):null}function rc(e){let t=nc(e);if(!t)throw Error(`missing generated module for bundled channel ${e.metadata.manifest.id}`);let n=tc(e.rootScope),r=ec({packageRoot:e.rootScope.packageRoot,...n?{pluginsDir:n}:{},metadata:e.metadata,modulePath:t});if(e.installRuntimeDeps!==!1&&js(r)){let n=Ms({pluginId:e.metadata.manifest.id,pluginRoot:r,modulePath:t,env:process.env,logInstalled:t=>{Q.debug(`[channels] ${e.metadata.manifest.id} installed bundled runtime deps: ${t.join(`, `)}`)}});t=n.modulePath,r=n.pluginRoot}return Zs({modulePath:t,rootDir:r,boundaryRootDir:r,shouldTryNativeRequire:e=>e.includes(`${x.sep}dist${x.sep}`)&&zs(e)})}function ic(e){try{let t=Qs(rc({rootScope:e.rootScope,metadata:e.metadata,entry:e.metadata.source,installRuntimeDeps:!0}));return t?{id:e.metadata.manifest.id,entry:t}:(Q.warn(`[channels] bundled channel entry ${e.metadata.manifest.id} missing bundled-channel-entry contract; skipping`),null)}catch(t){let n=T(t);return Q.warn(`[channels] failed to load bundled channel ${e.metadata.manifest.id}: ${n}`),null}}function ac(e){if(!e.metadata.setupSource)return null;try{return $s(rc({rootScope:e.rootScope,metadata:e.metadata,entry:e.metadata.setupSource,installRuntimeDeps:!1}))||(Q.warn(`[channels] bundled channel setup entry ${e.metadata.manifest.id} missing bundled-channel-setup-entry contract; skipping`),null)}catch(t){let n=T(t);return Q.warn(`[channels] failed to load bundled channel setup entry ${e.metadata.manifest.id}: ${n}`),null}}const oc=new Map,sc=new Map;function cc(){return{pluginLoadInProgressIds:new Set,setupPluginLoadInProgressIds:new Set,entryLoadInProgressIds:new Set,setupEntryLoadInProgressIds:new Set,lazyEntriesById:new Map,lazySetupEntriesById:new Map,lazyPluginsById:new Map,lazySetupPluginsById:new Map,lazySecretsById:new Map,lazySetupSecretsById:new Map,lazyAccountInspectorsById:new Map}}function lc(e){let t=sc.get(e);if(t)return t;let n=cc();return sc.set(e,n),n}function uc(){let e=Z();return{rootScope:e,cacheContext:lc(e.cacheKey)}}function dc(e=Z()){let t=oc.get(e.cacheKey);if(t)return t;let n=tc(e),r=Us({rootDir:e.packageRoot,...n?{scanDir:n}:{},includeChannelConfigs:!1,includeSyntheticChannelConfigs:!1}).filter(e=>(e.manifest.channels?.length??0)>0);return oc.set(e.cacheKey,r),r}function fc(e,t){return pc(e,Z())?.packageManifest?.setupFeatures?.[t]===!0}function pc(e,t){return dc(t).find(t=>t.manifest.id===e||t.manifest.channels?.includes(e))}function mc(e,t,n){let r=n.lazyEntriesById.get(e);if(r)return r;if(r===null)return null;let i=pc(e,t);if(!i)return n.lazyEntriesById.set(e,null),null;if(n.entryLoadInProgressIds.has(e))return null;n.entryLoadInProgressIds.add(e);try{let r=ic({rootScope:t,metadata:i});return n.lazyEntriesById.set(e,r),r?.entry.id&&r.entry.id!==e&&n.lazyEntriesById.set(r.entry.id,r),r}finally{n.entryLoadInProgressIds.delete(e)}}function hc(e,t,n,r){let i=new Set([e.manifest.id,...e.manifest.channels??[],...r?[r]:[]]);for(let e of i)t.lazySetupEntriesById.set(e,n)}function gc(e,t,n){if(n.lazySetupEntriesById.has(e))return n.lazySetupEntriesById.get(e)??null;let r=pc(e,t);if(!r)return n.lazySetupEntriesById.set(e,null),null;if(n.setupEntryLoadInProgressIds.has(e))return null;n.setupEntryLoadInProgressIds.add(e);try{let i=ac({rootScope:t,metadata:r});return hc(r,n,i,e),i}finally{n.setupEntryLoadInProgressIds.delete(e)}}function _c(e,t,n){if(n.lazyPluginsById.has(e))return n.lazyPluginsById.get(e)??void 0;if(n.pluginLoadInProgressIds.has(e))return;let r=mc(e,t,n)?.entry;if(r){n.pluginLoadInProgressIds.add(e);try{let i=pc(e,t),a=r.loadChannelPlugin(),o={...a,meta:Ks({id:a.id,meta:a.meta,existing:i?.packageManifest?.channel})};return n.lazyPluginsById.set(e,o),o}catch(t){let r=T(t);Q.warn(`[channels] failed to load bundled channel ${e}: ${r}`),n.lazyPluginsById.set(e,null);return}finally{n.pluginLoadInProgressIds.delete(e)}}}function vc(e,t,n){if(n.lazySetupPluginsById.has(e))return n.lazySetupPluginsById.get(e)??void 0;if(n.setupPluginLoadInProgressIds.has(e))return;let r=gc(e,t,n);if(r){n.setupPluginLoadInProgressIds.add(e);try{let t=r.loadSetupPlugin({installRuntimeDeps:!1});return n.lazySetupPluginsById.set(e,t),t}catch(t){let r=T(t);Q.warn(`[channels] failed to load bundled channel setup ${e}: ${r}`),n.lazySetupPluginsById.set(e,null);return}finally{n.setupPluginLoadInProgressIds.delete(e)}}}function yc(e){let{rootScope:t,cacheContext:n}=uc();return _c(e,t,n)}function bc(e){let{rootScope:t,cacheContext:n}=uc();return vc(e,t,n)}function xc(e){let n=t(e);return n===`modelstudio`||n===`qwencloud`?`qwen`:n===`z.ai`||n===`z-ai`?`zai`:n===`opencode-zen`?`opencode`:n===`opencode-go-auth`?`opencode-go`:n===`kimi`||n===`kimi-code`||n===`kimi-coding`?`kimi`:n===`bedrock`||n===`aws-bedrock`?`amazon-bedrock`:n===`bytedance`||n===`doubao`?`volcengine`:n}function Sc(e,t){if(!e)return;let n=xc(t);for(let[t,r]of Object.entries(e))if(xc(t)===n)return r}function Cc(e={}){return g({workspaceDir:e.workspaceDir,env:e.env}).candidates.flatMap(t=>{if(e.origin&&t.origin!==e.origin)return[];let n=t.packageManifest?.channel;if(!n?.id)return[];let r=ne(t.rootDir,t.origin!==`bundled`);return r.ok?[{pluginId:r.manifest.id,origin:t.origin,packageName:t.packageName,workspaceDir:t.workspaceDir,rootDir:t.rootDir,channel:n,...t.packageManifest?.install?{install:t.packageManifest.install}:{}}]:[]})}const wc=new Map;function Tc(e,t=process.env){let n=wc.get(e);if(n)return[...n];let r=Cc({origin:`bundled`,env:t}).map(e=>e.pluginId).toSorted((e,t)=>e.localeCompare(t));return wc.set(e,r),[...r]}function Ec(){return Tc(Z().cacheKey)}const Dc=new Map;function Oc(t){return e(t)??``}function $(e,t){if(e&&t&&typeof e==`object`&&typeof t==`object`){let n={...e};for(let[e,r]of Object.entries(t))r!==void 0&&(n[e]=r);return{...n}}return t??e}function kc(e,t){return{...e,...t,meta:$(e.meta,t.meta),capabilities:$(e.capabilities,t.capabilities),commands:$(e.commands,t.commands),doctor:$(e.doctor,t.doctor),reload:$(e.reload,t.reload),config:$(e.config,t.config),setup:$(e.setup,t.setup),messaging:$(e.messaging,t.messaging),actions:$(e.actions,t.actions),secrets:$(e.secrets,t.secrets)}}function Ac(e,t=process.env){return{sortedIds:Tc(e,t),byId:new Map,secretsById:new Map,missingIds:new Set}}function jc(e=Z().cacheKey,t=process.env){let n=Dc.get(e);if(n)return n;let r=Ac(e,t);return Dc.set(e,r),r}function Mc(){return jc(Z().cacheKey)}function Nc(e){let t=Oc(e);if(!t)return;let n=Mc(),r=n.byId.get(t);if(r)return r;if(n.missingIds.has(t))return;let i,a;try{i=yc(t),a=bc(t)}catch{n.missingIds.add(t);return}let o=i&&a?kc(i,a):a??i;if(!o){n.missingIds.add(t);return}return n.byId.set(t,o),o}function Pc(e,t,n){let r=t.trim();if(!r||n.length===0)return;let i=e[r]??=[],a=new Set(i);for(let e of n){let t=e.trim();!t||a.has(t)||(a.add(t),i.push(t))}}function Fc(e){let t=ae({config:e?.config,workspaceDir:e?.workspaceDir,env:e?.env}),n={};for(let e of t.plugins)if(e.channelEnvVars)for(let[t,r]of Object.entries(e.channelEnvVars).toSorted(([e],[t])=>e.localeCompare(t)))Pc(n,t,r);return n}function Ic(e){return[...new Set(Object.values(Fc(e)).flatMap(e=>e))]}function Lc(e){let t=e.config?.plugins?.allow;if(!Array.isArray(t)||t.length===0)return e.config;let n=new Set(t.map(e=>e.trim()).filter(Boolean)),r=!1;for(let t of e.pluginIds)n.has(t)||(n.add(t),r=!0);return r?{...e.config,plugins:{...e.config?.plugins,allow:[...n]}}:e.config}function Rc(e){let t=e.config?.plugins?.entries??{},n=e.config?.plugins?.enabled===!1,r=!1,i={...t};for(let n of e.pluginIds)t[n]===void 0&&(i[n]={enabled:!0},r=!0);return!r&&!n?e.config:{...e.config,plugins:{...e.config?.plugins,...n?{enabled:!0}:{},entries:{...t,...i}}}}function zc(e){if(!(e.env??process.env).VITEST||oe(e.config?.plugins)||e.pluginIds.length===0)return e.config;let t=Object.fromEntries(e.pluginIds.map(e=>[e,{enabled:!0}]));return{...e.config,plugins:{...e.config?.plugins,enabled:!0,allow:[...e.pluginIds],entries:{...t,...e.config?.plugins?.entries},slots:{...e.config?.plugins?.slots,memory:`none`}}}}export{Ia as $,fa as A,L as At,xa as B,jo as C,fr as Ct,ho as D,Hn as Dt,oo as E,Gn as Et,Ki as F,Oe as Ft,La as G,ga as H,Qi as I,De as It,Xi as J,Ra as K,Ca as L,Ne as Lt,qi as M,T as Mt,$i as N,it as Nt,na as O,an as Ot,wa as P,w as Pt,Pi as Q,ua as R,Me as Rt,Co as S,Ur as St,No as T,Kn as Tt,ia as U,vi as V,Gi as W,J as X,_a as Y,ki as Z,Ls as _,Gr as _t,Nc as a,ha as at,Oo as b,Qr as bt,Sc as c,_i as ct,fc as d,ti as dt,Pa as et,Zs as f,ri as ft,Bs as g,oi as gt,zs as h,si as ht,Ic as i,xi as it,ea as j,st as jt,ta as k,In as kt,xc as l,ai as lt,Xs as m,ui as mt,Rc as n,la as nt,Ec as o,ma as ot,Ks as p,di as pt,ba as q,zc as r,Zi as rt,Cc as s,K as st,Lc as t,Sa as tt,yc as u,ii as ut,ks as v,Xr as vt,Mo as w,yr as wt,wo as x,$r as xt,Ds as y,Zr as yt,Ji as z,je as zt};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e,n as t,r as n,s as r}from"./home-dir-C44RaPME-B5iLWwCq.mjs";import i from"node:fs";import a from"node:path";import{fileURLToPath as o}from"node:url";import"node:fs/promises";import s from"node:os";function c(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.prototype.toString.call(e)===`[object Object]`}async function l(e){await i.promises.mkdir(e,{recursive:!0})}function u(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function d(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function f(e){return e>=55296&&e<=56319}function p(e){return e>=56320&&e<=57343}function m(e,t,n){let r=e.length,i=t<0?Math.max(r+t,0):Math.min(t,r),a=n===void 0?r:n<0?Math.max(r+n,0):Math.min(n,r);if(a<i){let e=i;i=a,a=e}return i>0&&i<r&&p(e.charCodeAt(i))&&f(e.charCodeAt(i-1))&&(i+=1),a>0&&a<r&&f(e.charCodeAt(a-1))&&p(e.charCodeAt(a))&&--a,e.slice(i,a)}function h(e,t){let n=Math.max(0,Math.floor(t));return e.length<=n?e:m(e,0,n)}function g(e,t=process.env,r=s.homedir){return e?n(e,{env:t,homedir:r}):``}function _(t=process.env,n=s.homedir){let r=t.OPENCLAW_STATE_DIR?.trim();if(r)return g(r,t,n);let o=t.OPENCLAW_CONFIG_PATH?.trim();if(o)return a.dirname(g(o,t,n));let c=a.join(e(t,n),`.openclaw`);try{if(i.existsSync(c))return c}catch{}return c}function v(){return t(process.env,s.homedir)}function y(){let e=v();if(e)return process.env.OPENCLAW_HOME?.trim()?{home:e,prefix:`$OPENCLAW_HOME`}:{home:e,prefix:`~`}}function b(e){if(!e)return e;let t=y();return t?e.split(t.home).join(t.prefix):e}const x=_(),S=new Set([`openclaw`]);function C(e){let t=JSON.parse(e);return typeof t.name==`string`?t.name:null}function w(e){try{return C(i.readFileSync(a.join(e,`package.json`),`utf-8`))}catch{return null}}function T(e,t=12){for(let n of E(e,t)){let e=w(n);if(e&&S.has(e))return n}return null}function*E(e,t){let n=a.resolve(e);for(let e=0;e<t;e+=1){yield n;let e=a.dirname(n);if(e===n)break;n=e}}function D(e){let t=a.resolve(e),n=[a.dirname(t)];try{let e=i.realpathSync(t);e!==t&&n.push(a.dirname(e))}catch{}let r=t.split(a.sep),o=r.lastIndexOf(`.bin`);if(o>0&&r[o-1]===`node_modules`){let e=a.basename(t),i=r.slice(0,o).join(a.sep);n.push(a.join(i,e))}return n}function O(e){for(let t of k(e)){let e=T(t);if(e)return e}return null}function k(e){let t=[];if(e.moduleUrl)try{t.push(a.dirname(o(e.moduleUrl)))}catch{}return e.argv1&&t.push(...D(e.argv1)),e.cwd&&t.push(e.cwd),t}const A=a.join(s.tmpdir(),`openclaw-empty-bundled-plugins`);function j(e){let t=r(e.OPENCLAW_DISABLE_BUNDLED_PLUGINS);return t===`1`||t===`true`}function M(){return i.mkdirSync(A,{recursive:!0}),A}function N(e){return i.existsSync(a.join(e,`.git`))&&i.existsSync(a.join(e,`src`))&&i.existsSync(a.join(e,`extensions`))}function P(e){if(!i.existsSync(e))return!1;try{return i.readdirSync(e,{withFileTypes:!0}).some(t=>{if(!t.isDirectory())return!1;let n=a.join(e,t.name);return i.existsSync(a.join(n,`package.json`))||i.existsSync(a.join(n,`openclaw.plugin.json`))})}catch{return!1}}function F(){let e=process.argv[1]?.toLowerCase();if(e?.endsWith(`.ts`)||e?.endsWith(`.tsx`)||e?.endsWith(`.mts`)||e?.endsWith(`.cts`))return!0;for(let e=0;e<process.execArgv.length;e+=1){let t=process.execArgv[e]?.toLowerCase();if(t){if(t===`tsx`||t.includes(`tsx/register`))return!0;if((t===`--import`||t===`--loader`)&&process.execArgv[e+1]){let t=process.execArgv[e+1].toLowerCase();if(t===`tsx`||t.includes(`tsx/`))return!0}}}return!1}function I(e,t){let n=a.join(e,`extensions`),r=a.join(e,`dist`,`extensions`),o=N(e);if(t&&i.existsSync(n))return n;let s=a.join(e,`dist-runtime`,`extensions`),c=o?P(s):i.existsSync(s),l=o?P(r):i.existsSync(r);if(c&&l)return s;if(l)return r;if(o&&i.existsSync(n))return n}function L(e=process.env){if(j(e))return M();let t=e.OPENCLAW_BUNDLED_PLUGINS_DIR?.trim();if(t){let n=g(t,e);if(i.existsSync(n))return n;try{let e=O({argv1:process.argv[1]});if(e&&!N(e)){let t=I(e,!1);if(t)return t}}catch{}return n}let n=!!e.VITEST||F();try{let e=[O({argv1:process.argv[1]}),O({cwd:process.cwd()}),O({moduleUrl:import.meta.url})].filter((e,t,n)=>!!e&&n.indexOf(e)===t);for(let t of e){let e=I(t,n);if(e)return e}}catch{}try{let e=a.dirname(process.execPath),t=a.join(e,`dist`,`extensions`);if(i.existsSync(t))return t;let n=a.join(e,`extensions`);if(i.existsSync(n))return n}catch{}try{let e=a.dirname(o(import.meta.url));for(let t=0;t<6;t+=1){let t=a.join(e,`extensions`);if(i.existsSync(t))return t;let n=a.dirname(e);if(n===e)break;e=n}}catch{}}export{u as a,_ as c,h as d,l as i,g as l,O as n,c as o,x as r,d as s,L as t,b as u};
|