@wujie-shell/core 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +36 -5
  2. package/dist/bin/wujie-shell.mjs +1 -1
  3. package/dist/src/agents/bundled-agent-skills.mjs +1 -0
  4. package/dist/src/agents/bundled-agents.mjs +1 -0
  5. package/dist/src/chat/media-archive.mjs +1 -0
  6. package/dist/src/chat/queue.mjs +1 -0
  7. package/dist/src/common/diagnostics.mjs +1 -0
  8. package/dist/src/common/logging.mjs +1 -0
  9. package/dist/src/common/runtime-logger.mjs +1 -0
  10. package/dist/src/common/user-events.mjs +1 -0
  11. package/dist/src/common/utils.mjs +1 -0
  12. package/dist/src/config/controller.mjs +1 -0
  13. package/dist/src/connectors/config-utils.mjs +1 -0
  14. package/dist/src/connectors/constants.mjs +1 -0
  15. package/dist/src/connectors/controller.mjs +1 -0
  16. package/dist/src/connectors/kdocs-cli.mjs +1 -0
  17. package/dist/src/electron/main.mjs +1 -1
  18. package/dist/src/electron/preload.mjs +1 -1
  19. package/dist/src/files/generated-files-store.mjs +1 -0
  20. package/dist/src/files/handlers.mjs +1 -0
  21. package/dist/src/gateway/controller.mjs +1 -0
  22. package/dist/src/gateway/ws-client.mjs +1 -0
  23. package/dist/src/index.mjs +1 -1
  24. package/dist/src/log-reporting/handlers.mjs +1 -0
  25. package/dist/src/log-reporting/report-logs.mjs +1 -0
  26. package/dist/src/models/handlers.mjs +1 -0
  27. package/dist/src/preferences/store.mjs +1 -0
  28. package/dist/src/runtime/index.mjs +1 -0
  29. package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -0
  30. package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -0
  31. package/dist/src/runtime/plugin-sync.mjs +1 -0
  32. package/dist/src/sessions/agent-sessions-map-store.mjs +1 -0
  33. package/dist/src/skills/import.mjs +1 -0
  34. package/dist/src/skills/market.mjs +1 -0
  35. package/dist/src/terminal/manager.mjs +1 -0
  36. package/package.json +5 -5
  37. package/dist/src/bundled-agent-skills.mjs +0 -1
  38. package/dist/src/bundled-agents.mjs +0 -1
  39. package/dist/src/config-controller.mjs +0 -1
  40. package/dist/src/gateway-controller.mjs +0 -1
  41. package/dist/src/gateway-ws.mjs +0 -1
  42. package/dist/src/logging.mjs +0 -1
  43. package/dist/src/plugin-sync.mjs +0 -1
  44. package/dist/src/runtime-logger.mjs +0 -1
  45. package/dist/src/runtime.mjs +0 -1
  46. package/dist/src/utils.mjs +0 -1
package/README.md CHANGED
@@ -10,14 +10,22 @@ Electron main/preload implementation used by product UI projects.
10
10
  - Prepare `apps/<product>/.tmp/runtime` for the product.
11
11
  - Install or validate the configured OpenClaw version.
12
12
  - Sync product Plugin, Agent, and Skill directories into the runtime.
13
- - Generate and maintain `~/<dataDirName>/openclaw.json`.
13
+ - Generate and maintain `~/<dataDirName>/<openclaw.configFileName>`.
14
14
  - Start/stop/restart the OpenClaw gateway on product-specific ports.
15
15
  - Maintain a gateway WebSocket client with device identity auth.
16
16
  - Expose safe renderer APIs through Electron preload.
17
+ - Provide shell-owned local IPC capabilities such as connectors, generated
18
+ files, log reporting, custom model forms, preferences, and market skill
19
+ mapping.
17
20
 
18
21
  This package is shell infrastructure. It must not contain product UI business
19
22
  logic or hard-coded product asset lists.
20
23
 
24
+ Product-specific historical compatibility lives in
25
+ `apps/desktops/shell-runtime`; that runtime should only keep config migrations.
26
+ New shell IPC capabilities should be added to the matching `src/*` module here,
27
+ not to product runtime.
28
+
21
29
  ## Public Exports
22
30
 
23
31
  ```js
@@ -34,6 +42,28 @@ import {
34
42
 
35
43
  Runtime helpers are also exported from `@wujie-shell/core/runtime`.
36
44
 
45
+ ## Source Layout
46
+
47
+ `src/` is grouped by capability:
48
+
49
+ - `electron/`: Electron main/preload, windows, protocols, and IPC wiring.
50
+ - `runtime/`: OpenClaw/Node runtime prepare, sync, manifest, plugin copying,
51
+ and upstream compatibility patches.
52
+ - `gateway/`: OpenClaw gateway lifecycle and WebSocket client.
53
+ - `config/`: generated OpenClaw config reads/writes and runtime plugin sync.
54
+ - `agents/`, `skills/`: bundled Agent/Skill sync, managed Skill import, and
55
+ market skill registry mapping.
56
+ - `connectors/`: OpenClaw plugin/channel config writes and local CLI/QR auth
57
+ sessions for connector-style capabilities.
58
+ - `files/`, `models/`, `preferences/`, `log-reporting/`: generated file center,
59
+ custom model form, local preference, and log report IPC handlers.
60
+ - `chat/`, `sessions/`, `terminal/`: chat media archive, session mapping, and
61
+ local terminal helpers.
62
+ - `common/`: diagnostics, logging, runtime logging, and shared utilities.
63
+
64
+ Only create package exports for modules that are intentionally consumed outside
65
+ the package.
66
+
37
67
  ## Runtime Preparation
38
68
 
39
69
  ### `prepareRuntime(shellConfig, options?)`
@@ -117,7 +147,8 @@ Runs OpenClaw once and resolves with:
117
147
  ## Config Controller
118
148
 
119
149
  `createConfigController(shellConfig)` owns product OpenClaw config at
120
- `~/<dataDirName>/openclaw.json`.
150
+ `~/<dataDirName>/<openclaw.configFileName>`, defaulting to
151
+ `~/<dataDirName>/wujieai.json`.
121
152
 
122
153
  Important methods:
123
154
 
@@ -220,8 +251,8 @@ Shell-level DevTools ability:
220
251
  The package exposes `wujie-shell`:
221
252
 
222
253
  ```bash
223
- wujie-shell prepare --project apps/playground
224
- wujie-shell sync --project apps/playground
254
+ wujie-shell prepare --project ../desktops
255
+ wujie-shell sync --project ../desktops
225
256
  ```
226
257
 
227
258
  `prepare` can install/switch OpenClaw version. `sync` expects the prepared
@@ -233,7 +264,7 @@ metadata.
233
264
  Generated files should not be hand-edited:
234
265
 
235
266
  - `apps/<product>/.tmp/runtime/**`
236
- - `~/<dataDirName>/openclaw.json`
267
+ - `~/<dataDirName>/<openclaw.configFileName>`
237
268
  - `~/<dataDirName>/runtime-state/**`
238
269
  - `~/<dataDirName>/identity/device.json`
239
270
 
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const _0x2c9a08=_0x28be;(function(_0x265263,_0x1e7bd3){const _0x2d6808=_0x28be,_0xefc12a=_0x265263();while(!![]){try{const _0x11326b=parseInt(_0x2d6808(0x195))/0x1*(-parseInt(_0x2d6808(0x173))/0x2)+-parseInt(_0x2d6808(0x171))/0x3*(-parseInt(_0x2d6808(0x186))/0x4)+parseInt(_0x2d6808(0x192))/0x5+parseInt(_0x2d6808(0x181))/0x6*(-parseInt(_0x2d6808(0x18f))/0x7)+parseInt(_0x2d6808(0x17b))/0x8*(parseInt(_0x2d6808(0x188))/0x9)+parseInt(_0x2d6808(0x196))/0xa*(parseInt(_0x2d6808(0x18d))/0xb)+parseInt(_0x2d6808(0x18a))/0xc;if(_0x11326b===_0x1e7bd3)break;else _0xefc12a['push'](_0xefc12a['shift']());}catch(_0x4f8c36){_0xefc12a['push'](_0xefc12a['shift']());}}}(_0x49f7,0x8d313));function _0x28be(_0x1474f6,_0x555199){_0x1474f6=_0x1474f6-0x170;const _0x49f7e4=_0x49f7();let _0x28bea1=_0x49f7e4[_0x1474f6];return _0x28bea1;}import{resolve}from'node:path';import{loadShellConfig}from'@wujie-shell/config';import{prepareRuntime}from'../src/runtime.mjs';function parseArgs(_0xe1627b){const _0x3b4233=_0x28be,_0x1c67b3=[..._0xe1627b],_0x2eac7f=_0x1c67b3[_0x3b4233(0x179)]()||'help',_0x237b14={'project':process['cwd']()};for(let _0x4ef8d5=0x0;_0x4ef8d5<_0x1c67b3[_0x3b4233(0x180)];_0x4ef8d5+=0x1){const _0x54ebcc=_0x1c67b3[_0x4ef8d5];(_0x54ebcc===_0x3b4233(0x185)+'t'||_0x54ebcc==='-p')&&(_0x237b14[_0x3b4233(0x178)]=_0x1c67b3[_0x4ef8d5+0x1],_0x4ef8d5+=0x1);}return{'command':_0x2eac7f,'options':_0x237b14};}function usage(){const _0x526390=_0x28be;console['log']('wujie-sh'+_0x526390(0x170)+_0x526390(0x18b)+_0x526390(0x191)+'l\x20prepar'+'e\x20--proj'+_0x526390(0x189)+'project>'+_0x526390(0x17d)+'-shell\x20s'+_0x526390(0x17a)+'oject\x20<u'+_0x526390(0x193)+_0x526390(0x18c));}function _0x49f7(){const _0x972734=['/.tmp/ru','project','shift','ync\x20--pr','2816264IHQsYW','plugins','\x0a\x20\x20wujie','exit','openclaw','length','20232hnEGSR','stack','unknown\x20','--help','--projec','1513656fkjbbx','command:','18COKWiS','ect\x20<ui-','3490884dPakkb','ge:\x0a\x20\x20wu','t>\x0a','3773czwroi','catch','2177qxoIyP','ntime','jie-shel','494740sqwZoo','i-projec','help','2GHJknu','180oJoKIB','ell\x0a\x0aUsa','9jutPJH','Version','608322AMXzaR','argv','message','isArray'];_0x49f7=function(){return _0x972734;};return _0x49f7();}async function main(){const _0x490427=_0x28be,{command:_0x14f695,options:_0x1a73ed}=parseArgs(process[_0x490427(0x174)]['slice'](0x2));if(_0x14f695===_0x490427(0x194)||_0x14f695===_0x490427(0x184)||_0x14f695==='-h'){usage();return;}if(_0x14f695!=='prepare'&&_0x14f695!=='sync')throw new Error(_0x490427(0x183)+_0x490427(0x187)+'\x20'+_0x14f695);const _0x5687ea=resolve(_0x1a73ed[_0x490427(0x178)]),_0x30f0ea=await loadShellConfig(_0x5687ea),_0x63caf2=await prepareRuntime(_0x30f0ea,{'syncOnly':_0x14f695==='sync'});console['log'](JSON['stringif'+'y']({'ok':!![],'command':_0x14f695,'projectRoot':_0x5687ea,'runtimeRoot':_0x5687ea+(_0x490427(0x177)+_0x490427(0x190)),'openclawVersion':_0x63caf2[_0x490427(0x17f)+_0x490427(0x172)],'pluginCount':Array[_0x490427(0x176)](_0x63caf2[_0x490427(0x17c)])?_0x63caf2[_0x490427(0x17c)][_0x490427(0x180)]:0x0},null,0x2));}main()[_0x2c9a08(0x18e)](_0xb25b5c=>{const _0x54c781=_0x2c9a08;console['error'](_0xb25b5c instanceof Error?_0xb25b5c[_0x54c781(0x182)]||_0xb25b5c[_0x54c781(0x175)]:String(_0xb25b5c)),process[_0x54c781(0x17e)](0x1);});
2
+ const _0x13bfc7=_0x596d;(function(_0x732513,_0x5d28ea){const _0x363df4=_0x596d,_0x5f3813=_0x732513();while(!![]){try{const _0x550eff=-parseInt(_0x363df4(0x9f))/0x1+-parseInt(_0x363df4(0x9e))/0x2*(parseInt(_0x363df4(0xbb))/0x3)+-parseInt(_0x363df4(0xa0))/0x4+parseInt(_0x363df4(0xa3))/0x5+parseInt(_0x363df4(0xaf))/0x6+parseInt(_0x363df4(0xb8))/0x7*(-parseInt(_0x363df4(0xa1))/0x8)+parseInt(_0x363df4(0xb2))/0x9;if(_0x550eff===_0x5d28ea)break;else _0x5f3813['push'](_0x5f3813['shift']());}catch(_0x363588){_0x5f3813['push'](_0x5f3813['shift']());}}}(_0xf6b1,0xa1426));import{resolve}from'node:path';import{loadShellConfig}from'@wujie-shell/config';function _0xf6b1(){const _0x547c2c=['l\x20prepar','help','wujie-sh','isArray','-shell\x20s','ync\x20--pr','614346qGznEd','plugins','stringif','30126123nyZnfn','ell\x0a\x0aUsa','catch','jie-shel','oject\x20<u','command:','7KVCyly','t>\x0a','Version','3KFIYzZ','length','i-projec','sync','\x0a\x20\x20wujie','message','--help','log','2014798luzIwp','952599jrrNsQ','812784JuxfYw','8543328zYGnxK','e\x20--proj','2209450kzXnGl','--projec','exit','shift','cwd','project'];_0xf6b1=function(){return _0x547c2c;};return _0xf6b1();}import{prepareRuntime}from'../src/runtime/index.mjs';function parseArgs(_0x52b37b){const _0x2e3eae=_0x596d,_0x180082=[..._0x52b37b],_0x497e5b=_0x180082[_0x2e3eae(0xa6)]()||_0x2e3eae(0xaa),_0x771881={'project':process[_0x2e3eae(0xa7)]()};for(let _0x248e35=0x0;_0x248e35<_0x180082[_0x2e3eae(0xbc)];_0x248e35+=0x1){const _0x3e4705=_0x180082[_0x248e35];(_0x3e4705===_0x2e3eae(0xa4)+'t'||_0x3e4705==='-p')&&(_0x771881[_0x2e3eae(0xa8)]=_0x180082[_0x248e35+0x1],_0x248e35+=0x1);}return{'command':_0x497e5b,'options':_0x771881};}function usage(){const _0x17a402=_0x596d;console['log'](_0x17a402(0xab)+_0x17a402(0xb3)+'ge:\x0a\x20\x20wu'+_0x17a402(0xb5)+_0x17a402(0xa9)+_0x17a402(0xa2)+'ect\x20<ui-'+'project>'+_0x17a402(0xbf)+_0x17a402(0xad)+_0x17a402(0xae)+_0x17a402(0xb6)+_0x17a402(0xbd)+_0x17a402(0xb9));}async function main(){const _0xccd527=_0x596d,{command:_0x516040,options:_0x390e19}=parseArgs(process['argv']['slice'](0x2));if(_0x516040===_0xccd527(0xaa)||_0x516040===_0xccd527(0x9c)||_0x516040==='-h'){usage();return;}if(_0x516040!=='prepare'&&_0x516040!==_0xccd527(0xbe))throw new Error('unknown\x20'+_0xccd527(0xb7)+'\x20'+_0x516040);const _0x13a9c9=resolve(_0x390e19[_0xccd527(0xa8)]),_0x170886=await loadShellConfig(_0x13a9c9),_0x268943=await prepareRuntime(_0x170886,{'syncOnly':_0x516040===_0xccd527(0xbe)});console[_0xccd527(0x9d)](JSON[_0xccd527(0xb1)+'y']({'ok':!![],'command':_0x516040,'projectRoot':_0x13a9c9,'runtimeRoot':_0x13a9c9+('/.tmp/ru'+'ntime'),'openclawVersion':_0x268943['openclaw'+_0xccd527(0xba)],'pluginCount':Array[_0xccd527(0xac)](_0x268943[_0xccd527(0xb0)])?_0x268943['plugins'][_0xccd527(0xbc)]:0x0},null,0x2));}function _0x596d(_0x5566bb,_0x2da9b2){_0x5566bb=_0x5566bb-0x9c;const _0xf6b112=_0xf6b1();let _0x596dcb=_0xf6b112[_0x5566bb];return _0x596dcb;}main()[_0x13bfc7(0xb4)](_0x530f8f=>{const _0x341e56=_0x13bfc7;console['error'](_0x530f8f instanceof Error?_0x530f8f['stack']||_0x530f8f[_0x341e56(0xc0)]:String(_0x530f8f)),process[_0x341e56(0xa5)](0x1);});
@@ -0,0 +1 @@
1
+ (function(_0x22beb4,_0x1f4d00){const _0x46015a=_0x8550,_0x5c5be5=_0x22beb4();while(!![]){try{const _0x23166d=-parseInt(_0x46015a(0x79))/0x1*(parseInt(_0x46015a(0x6d))/0x2)+parseInt(_0x46015a(0x7d))/0x3*(parseInt(_0x46015a(0x8b))/0x4)+parseInt(_0x46015a(0x82))/0x5+parseInt(_0x46015a(0x87))/0x6*(-parseInt(_0x46015a(0x72))/0x7)+parseInt(_0x46015a(0x73))/0x8+-parseInt(_0x46015a(0x7f))/0x9+-parseInt(_0x46015a(0x7e))/0xa*(-parseInt(_0x46015a(0x8e))/0xb);if(_0x23166d===_0x1f4d00)break;else _0x5c5be5['push'](_0x5c5be5['shift']());}catch(_0x13e2dc){_0x5c5be5['push'](_0x5c5be5['shift']());}}}(_0x4a49,0xa1549));import{existsSync}from'node:fs';import{readdir}from'node:fs/promises';import{join}from'node:path';import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';async function listValidSkillKeys(_0x2be5ae,_0x31c0c5){const _0x5f5dc8=_0x8550;if(!existsSync(_0x2be5ae))return[];let _0x388215=[];try{_0x388215=await readdir(_0x2be5ae,{'withFileTypes':!![],'encoding':_0x5f5dc8(0x70)});}catch(_0x3c9845){return console['warn'](_0x5f5dc8(0x76)+'hell:ski'+_0x5f5dc8(0x86)+_0x5f5dc8(0x8f)+_0x5f5dc8(0x80)+_0x5f5dc8(0x91)+_0x5f5dc8(0x7b)+_0x31c0c5,_0x3c9845),[];}const _0x2ec65d=[];for(const _0x45e863 of _0x388215){if(!_0x45e863['isDirect'+_0x5f5dc8(0x8a)]())continue;const _0x5473e0=_0x45e863[_0x5f5dc8(0x88)][_0x5f5dc8(0x7c)]();if(!_0x5473e0||_0x5473e0['startsWi'+'th']('_'))continue;if(existsSync(join(_0x2be5ae,_0x5473e0,_0x5f5dc8(0x75))))_0x2ec65d['push'](_0x5473e0);}return _0x2ec65d;}function _0x4a49(){const _0x57d2df=['skills','32887mCeyOl','entries','gent=','trim','548871grPvxs','260rWTpYY','7388190fmKSzN','ead\x20skil','isArray','3359735nBVscq','list','filter','map','lls]\x20fai','2399106dyoHOW','name','length','ory','28XOzPJv','load','extraDir','5379tdIxQG','led\x20to\x20r','agents','ls\x20dir\x20a','owlist','30LylTlH','stringif','object','utf8','find','7ceuRDG','3276120lqjlif','main','SKILL.md','[wujie-s','agentAll'];_0x4a49=function(){return _0x57d2df;};return _0x4a49();}export async function discoverBundledAgentSkills(_0x3446f6,_0x21ce30){const _0x4ddf3f=_0x8550,_0x4cbfb3=[],_0x220ec7={},_0x23c0ff={};for(const _0x1f7039 of _0x3446f6){const _0x396376=_0x21ce30(_0x1f7039),_0x113405=await listValidSkillKeys(_0x396376,_0x1f7039);_0x23c0ff[_0x1f7039]=_0x113405,_0x113405[_0x4ddf3f(0x89)]>0x0&&(_0x4cbfb3['push'](_0x396376),_0x220ec7[_0x1f7039]=_0x396376);}return{'extraDirs':_0x4cbfb3,'extraDirByAgent':_0x220ec7,'agentAllowlist':_0x23c0ff};}function _0x8550(_0x191581,_0x4751ea){_0x191581=_0x191581-0x6c;const _0x4a4918=_0x4a49();let _0x855000=_0x4a4918[_0x191581];return _0x855000;}export async function syncBundledAgentSkillsToConfig({agentIds:_0x129d3a,resolveSkillsDir:_0x5323b2,readConfig:_0x1165d5,writeConfig:_0x36c8a8,markConfigWriteHandledInternally:_0x534398}){const _0x42486b=_0x8550,_0x2b13de=await discoverBundledAgentSkills(_0x129d3a,_0x5323b2);if(_0x129d3a['length']===0x0)return{'discovery':_0x2b13de,'changed':![]};const _0x17911b=await _0x1165d5();let _0x5d5901=![];const _0x4bf015=asRecord(_0x17911b[_0x42486b(0x78)]),_0x1af6de=asRecord(_0x4bf015[_0x42486b(0x8c)]),_0xcc63a=asStringArray(_0x1af6de[_0x42486b(0x8d)+'s']),_0x3bee90=dedupeStrings([..._0xcc63a,..._0x2b13de[_0x42486b(0x8d)+'s']]);JSON[_0x42486b(0x6e)+'y'](_0xcc63a)!==JSON[_0x42486b(0x6e)+'y'](_0x3bee90)&&(_0x1af6de[_0x42486b(0x8d)+'s']=_0x3bee90,_0x4bf015['load']=_0x1af6de,_0x17911b[_0x42486b(0x78)]=_0x4bf015,_0x5d5901=!![]);const _0x497a9c=asRecord(_0x17911b['agents']),_0x360bdb=Array['isArray'](_0x497a9c[_0x42486b(0x83)])?_0x497a9c[_0x42486b(0x83)]:[];if(_0x360bdb[_0x42486b(0x89)]>0x0){const _0xc8a88d=_0x360bdb[_0x42486b(0x85)](_0x948b59=>_0x948b59&&typeof _0x948b59===_0x42486b(0x6f)?{..._0x948b59}:_0x948b59);let _0x2e786e=![];for(const [_0x1105c0,_0x519e31]of Object[_0x42486b(0x7a)](_0x2b13de[_0x42486b(0x77)+_0x42486b(0x6c)])){if(_0x1105c0==='main')continue;const _0x28e1c0=_0xc8a88d[_0x42486b(0x71)](_0x296981=>asRecord(_0x296981)['id']===_0x1105c0);if(!_0x28e1c0)continue;const _0x53359f=Array['isArray'](_0x28e1c0['skills'])?_0x28e1c0[_0x42486b(0x78)]:null;(!_0x53359f||JSON[_0x42486b(0x6e)+'y'](_0x53359f)!==JSON['stringif'+'y'](_0x519e31))&&(_0x28e1c0['skills']=_0x519e31,_0x2e786e=!![]);}_0x2e786e&&(_0x497a9c['list']=_0xc8a88d,_0x17911b[_0x42486b(0x90)]=_0x497a9c,_0x5d5901=!![]);}return _0x5d5901&&(_0x534398?.(),await _0x36c8a8(_0x17911b)),{'discovery':_0x2b13de,'changed':_0x5d5901};}export function filterSkillsForAgent(_0x1c1ee1,_0x6d9558,_0x48de19=''){const _0x48779c=_0x8550,_0x266d07=Array[_0x48779c(0x81)](asRecord(_0x1c1ee1)[_0x48779c(0x78)])?asRecord(_0x1c1ee1)[_0x48779c(0x78)]:[],_0x61e567=getTrimmedString(_0x48de19)||_0x48779c(0x74),_0xbc0e14=Array[_0x48779c(0x81)](asRecord(asRecord(_0x6d9558)[_0x48779c(0x90)])[_0x48779c(0x83)])?asRecord(asRecord(_0x6d9558)[_0x48779c(0x90)])[_0x48779c(0x83)]:[],_0x3c1678=_0xbc0e14[_0x48779c(0x85)](asRecord)['find'](_0x415f5e=>getTrimmedString(_0x415f5e['id'])===_0x61e567),_0x3f4cae=_0x3c1678&&Array[_0x48779c(0x81)](_0x3c1678[_0x48779c(0x78)])?new Set(asStringArray(_0x3c1678['skills'])):null;if(!_0x3f4cae)return _0x1c1ee1;return{...asRecord(_0x1c1ee1),'skills':_0x266d07[_0x48779c(0x84)](_0x4fc335=>_0x3f4cae['has'](getTrimmedString(asRecord(_0x4fc335)[_0x48779c(0x88)])))};}
@@ -0,0 +1 @@
1
+ function _0x397c(){const _0x38444b=['aths','parse','30gTEsft','ync\x20bund','485458JtNSJr','ory','readme.j','startsWi','trim','filter','3044808kwoosl','1024238hFJLGB','637404UUNFoD','led\x20agen','some','ins','4606wyQWYX','toolDoma','absPath','mcpServe','icon','nts]\x20ski','find','3XkTmtU','agentId','cOnDev','cnName','model','toolsDen','[wujie-s','hell:age','emoji','t\x20\x22','version','led\x20to\x20s','forceSyn','map','workspac','gedPath:','utf8','all','avatar','error','name','includes','son','3997405VCnuVd','nts]\x20fai','3350331rDRduB','pped\x20uns','9688wOwHFg','main','warn','ePaths'];_0x397c=function(){return _0x38444b;};return _0x397c();}(function(_0x5aec2a,_0x54df4f){const _0x3d08f5=_0x69e7,_0x1c89da=_0x5aec2a();while(!![]){try{const _0x5b231d=parseInt(_0x3d08f5(0x170))/0x1+parseInt(_0x3d08f5(0x177))/0x2*(-parseInt(_0x3d08f5(0x183))/0x3)+-parseInt(_0x3d08f5(0x178))/0x4+parseInt(_0x3d08f5(0x19a))/0x5+-parseInt(_0x3d08f5(0x176))/0x6+parseInt(_0x3d08f5(0x17c))/0x7*(-parseInt(_0x3d08f5(0x168))/0x8)+-parseInt(_0x3d08f5(0x166))/0x9*(-parseInt(_0x3d08f5(0x16e))/0xa);if(_0x5b231d===_0x54df4f)break;else _0x1c89da['push'](_0x1c89da['shift']());}catch(_0x3605ef){_0x1c89da['push'](_0x1c89da['shift']());}}}(_0x397c,0x67fd4));import{existsSync}from'node:fs';import{cp,mkdir,readFile,readdir,rm}from'node:fs/promises';function _0x69e7(_0x4f22fb,_0x159369){_0x4f22fb=_0x4f22fb-0x165;const _0x397c8f=_0x397c();let _0x69e730=_0x397c8f[_0x4f22fb];return _0x69e730;}import{dirname,join,resolve,sep}from'node:path';import{asRecord,asStringArray,getTrimmedString,readJson}from'../common/utils.mjs';function toOptionalString(_0x2afe75){const _0xd759e0=getTrimmedString(_0x2afe75);return _0xd759e0||undefined;}export async function loadBundledAgents(_0x223c67){const _0x5b6c13=_0x69e7;let _0x3e040b=[];try{_0x3e040b=await readdir(_0x223c67,{'withFileTypes':!![],'encoding':_0x5b6c13(0x193)});}catch{return[];}const _0x2779c8=await Promise[_0x5b6c13(0x194)](_0x3e040b[_0x5b6c13(0x175)](_0x254d3f=>_0x254d3f['isDirect'+_0x5b6c13(0x171)]())[_0x5b6c13(0x190)](async _0x4e04b8=>{const _0x4e1848=_0x5b6c13,_0x8b53d8=_0x4e04b8['name'][_0x4e1848(0x174)]();if(!_0x8b53d8)return null;const _0x697d4c=await readJson(join(_0x223c67,_0x8b53d8,_0x4e1848(0x172)+_0x4e1848(0x199)),{}),_0xdd143f=asRecord(_0x697d4c),_0x393aad=toOptionalString(_0xdd143f[_0x4e1848(0x197)])??_0x8b53d8;if(!_0x393aad)return null;return{'name':_0x393aad,'cnName':toOptionalString(_0xdd143f[_0x4e1848(0x186)]),'avatar':toOptionalString(_0xdd143f[_0x4e1848(0x195)]),'icon':toOptionalString(_0xdd143f[_0x4e1848(0x180)]),'emoji':toOptionalString(_0xdd143f[_0x4e1848(0x18b)]),'model':toOptionalString(_0xdd143f[_0x4e1848(0x187)]),'version':toOptionalString(_0xdd143f[_0x4e1848(0x18d)]),'capabilityDomains':asStringArray(_0xdd143f['capabili'+'tyDomain'+'s']??_0xdd143f[_0x4e1848(0x17d)+_0x4e1848(0x17b)]),'managedPaths':asStringArray(_0xdd143f['managedP'+_0x4e1848(0x16c)]??_0xdd143f['deletabl'+_0x4e1848(0x16b)]),'toolsDeny':asStringArray(_0xdd143f[_0x4e1848(0x188)+'y']),'mcpServers':asRecord(_0xdd143f[_0x4e1848(0x17f)+'rs']),'forceSyncOnDev':typeof _0xdd143f[_0x4e1848(0x18f)+_0x4e1848(0x185)]==='boolean'?_0xdd143f['forceSyn'+_0x4e1848(0x185)]:undefined};}));return _0x2779c8[_0x5b6c13(0x175)](Boolean);}export function shouldForceFullSync(_0x568d61,_0x232001){return _0x568d61===!![]&&!_0x232001;}async function readJsonVersion(_0x37b2e2){const _0x14ca05=_0x69e7;try{const _0x4e8430=JSON[_0x14ca05(0x16d)](await readFile(_0x37b2e2,'utf8'));return getTrimmedString(asRecord(_0x4e8430)[_0x14ca05(0x18d)])||null;}catch{return null;}}function assertSafeManagedPath(_0x2901e1,_0x15f6a2){const _0x3c54b8=_0x69e7,_0x435aca=getTrimmedString(_0x15f6a2);if(!_0x435aca||_0x435aca[_0x3c54b8(0x173)+'th']('/')||_0x435aca[_0x3c54b8(0x198)]('..'))return null;const _0x327931=resolve(_0x2901e1),_0x444f00=resolve(join(_0x2901e1,_0x435aca));if(_0x444f00!==_0x327931&&!_0x444f00[_0x3c54b8(0x173)+'th'](_0x327931+sep))return null;return{'relPath':_0x435aca,'absPath':_0x444f00};}async function copyManagedPaths(_0x141b01,_0x330fb0,_0x39aaab){const _0x5a8e7c=_0x69e7;if(_0x39aaab['length']===0x0){await cp(_0x141b01,_0x330fb0,{'recursive':!![]});return;}for(const _0x27f922 of _0x39aaab){const _0x5a3834=assertSafeManagedPath(_0x330fb0,_0x27f922);if(!_0x5a3834){console[_0x5a8e7c(0x16a)](_0x5a8e7c(0x189)+_0x5a8e7c(0x18a)+_0x5a8e7c(0x181)+_0x5a8e7c(0x167)+'afe\x20mana'+_0x5a8e7c(0x192)+'\x20'+_0x27f922);continue;}const _0x22788d=join(_0x141b01,_0x5a3834['relPath']);if(!existsSync(_0x22788d)){await rm(_0x5a3834[_0x5a8e7c(0x17e)],{'recursive':!![],'force':!![]});continue;}await rm(_0x5a3834[_0x5a8e7c(0x17e)],{'recursive':!![],'force':!![]}),await mkdir(dirname(_0x5a3834[_0x5a8e7c(0x17e)]),{'recursive':!![]}),await cp(_0x22788d,_0x5a3834[_0x5a8e7c(0x17e)],{'recursive':!![]});}}export async function ensureBundledAgents({runtimeBundledAgentsDir:_0x14b936,stateDir:_0x4e098c,isPackaged:isPackaged=![],listAgents:_0x34dd3b,createAgent:_0x8e0654,updateAgent:_0x50c703,syncSkills:_0x2e8258,syncConfig:_0x390e2f,shouldContinue:_0x508009}){const _0x23ee8e=_0x69e7;let _0x400d85=![];const _0x31ac8e=typeof _0x508009==='function'?_0x508009:()=>!![],_0x428b1a=await _0x34dd3b();if(!_0x31ac8e())return{'didUpdate':_0x400d85,'bundledAgents':[]};const _0x89f189=Array['isArray'](_0x428b1a['agents'])?_0x428b1a['agents']:[],_0x45ec1e=_0x89f189[_0x23ee8e(0x182)](_0x22e488=>_0x22e488?.['id']==='main'),_0x5aa402=getTrimmedString(_0x45ec1e?.[_0x23ee8e(0x191)+'e'])||join(_0x4e098c,_0x23ee8e(0x191)+'e'),_0x53f5da=await loadBundledAgents(_0x14b936);for(const _0x5f51ed of _0x53f5da){if(!_0x31ac8e())break;const {name:_0x4dcd82,cnName:_0xf6bb7f,avatar:_0x17675b,emoji:_0x2ff0a7,version:_0x4bddab,managedPaths:_0x35c02c}=_0x5f51ed,_0x149e4e=_0x4dcd82===_0x23ee8e(0x169),_0xdc63c5=_0x149e4e?_0x5aa402:join(dirname(_0x5aa402),'workspac'+'e-'+_0x4dcd82),_0x48483e=join(_0x14b936,_0x4dcd82);if(!existsSync(_0x48483e))continue;try{const _0x3ae1a2=_0x149e4e||_0x89f189[_0x23ee8e(0x17a)](_0x439a21=>_0x439a21?.['id']===_0x4dcd82);if(_0x3ae1a2){const _0x222ea9=await readJsonVersion(join(_0xdc63c5,_0x23ee8e(0x172)+_0x23ee8e(0x199))),_0x16abe3=shouldForceFullSync(_0x5f51ed[_0x23ee8e(0x18f)+_0x23ee8e(0x185)],isPackaged);if(_0x4bddab&&_0x222ea9&&_0x4bddab===_0x222ea9&&!_0x16abe3)continue;_0x16abe3?(await rm(_0xdc63c5,{'recursive':!![],'force':!![]}),await mkdir(_0xdc63c5,{'recursive':!![]}),await cp(_0x48483e,_0xdc63c5,{'recursive':!![]})):(await mkdir(_0xdc63c5,{'recursive':!![]}),await copyManagedPaths(_0x48483e,_0xdc63c5,_0x35c02c));}else await rm(_0xdc63c5,{'recursive':!![],'force':!![]}),await mkdir(_0xdc63c5,{'recursive':!![]}),await cp(_0x48483e,_0xdc63c5,{'recursive':!![]});_0x400d85=!![];if(_0x149e4e)continue;if(_0x3ae1a2){const _0x1a5f0d={'agentId':_0x4dcd82,'workspace':_0xdc63c5};if(_0xf6bb7f)_0x1a5f0d['name']=_0xf6bb7f;if(_0x17675b)_0x1a5f0d['avatar']=_0x17675b;if(_0x2ff0a7)_0x1a5f0d[_0x23ee8e(0x18b)]=_0x2ff0a7;if(!_0x31ac8e())break;await _0x50c703(_0x1a5f0d);}else{const _0x1b3bf2={'name':_0x4dcd82,'workspace':_0xdc63c5};if(_0x17675b)_0x1b3bf2[_0x23ee8e(0x195)]=_0x17675b;if(_0x2ff0a7)_0x1b3bf2['emoji']=_0x2ff0a7;if(!_0x31ac8e())break;const _0x404a7b=asRecord(await _0x8e0654(_0x1b3bf2));if(_0xf6bb7f){if(!_0x31ac8e())break;await _0x50c703({'agentId':getTrimmedString(_0x404a7b[_0x23ee8e(0x184)])||_0x4dcd82,'name':_0xf6bb7f});}}}catch(_0x2f8332){console[_0x23ee8e(0x196)](_0x23ee8e(0x189)+'hell:age'+_0x23ee8e(0x165)+_0x23ee8e(0x18e)+_0x23ee8e(0x16f)+_0x23ee8e(0x179)+_0x23ee8e(0x18c)+_0x4dcd82+'\x22',_0x2f8332);}}return _0x31ac8e()&&await _0x2e8258?.({'agentIds':_0x53f5da['map'](_0x2fed71=>_0x2fed71['name']),'mainWorkspace':_0x5aa402}),_0x31ac8e()&&await _0x390e2f?.({'bundledAgents':_0x53f5da}),{'didUpdate':_0x400d85,'bundledAgents':_0x53f5da};}
@@ -0,0 +1 @@
1
+ function _0x25e0(_0x104cdd,_0x5132a7){_0x104cdd=_0x104cdd-0xcd;const _0x1e3801=_0x1e38();let _0x25e091=_0x1e3801[_0x104cdd];return _0x25e091;}(function(_0x3a1f80,_0x176978){const _0x381135=_0x25e0,_0x2fa7c4=_0x3a1f80();while(!![]){try{const _0x1bfb87=-parseInt(_0x381135(0xdc))/0x1+-parseInt(_0x381135(0xd4))/0x2+parseInt(_0x381135(0xec))/0x3+-parseInt(_0x381135(0xd0))/0x4+-parseInt(_0x381135(0xd9))/0x5+parseInt(_0x381135(0xe9))/0x6+parseInt(_0x381135(0xde))/0x7*(parseInt(_0x381135(0xe3))/0x8);if(_0x1bfb87===_0x176978)break;else _0x2fa7c4['push'](_0x2fa7c4['shift']());}catch(_0x1fe860){_0x2fa7c4['push'](_0x2fa7c4['shift']());}}}(_0x1e38,0x3af1c));import{createHash}from'node:crypto';import{copyFile,lstat,mkdir,readFile}from'node:fs/promises';import{join,parse,resolve,sep}from'node:path';function sanitizeSessionKey(_0x34f297){const _0x2ac2fe=_0x25e0,_0x4445c2=String(_0x34f297??'')[_0x2ac2fe(0xdb)]()[_0x2ac2fe(0xd5)](/[^A-Za-z0-9._-]+/g,'_')[_0x2ac2fe(0xd5)](/^_+|_+$/g,'')[_0x2ac2fe(0xe1)](0x0,0x78);return _0x4445c2||_0x2ac2fe(0xe6);}function isPathInsideDir(_0x1ac4eb,_0x5d45cd){const _0x3fe369=resolve(_0x1ac4eb),_0x292f2e=resolve(_0x5d45cd);return _0x3fe369===_0x292f2e||_0x3fe369['startsWi'+'th'](_0x292f2e+sep);}async function hashFile(_0x2acb86){const _0x45436a=_0x25e0;return createHash('sha256')['update'](await readFile(_0x2acb86))[_0x45436a(0xd2)](_0x45436a(0xea));}export function getArchivedChatMediaDir(_0x437d78,_0x2a935a){const _0x415022=_0x25e0;return join(_0x437d78,_0x415022(0xcd),_0x415022(0xcf)+'achments',sanitizeSessionKey(_0x2a935a));}function _0x1e38(){const _0x2fa440=['592104OphsgM','ot\x20for:\x20','digest','isSymbol','479092donMPe','replace','t\x20find\x20a','chat\x20att','non-file','930875MfiMCS','achment\x20','trim','445849PrKqYl','skipped\x20','707idmrFT','isFile','issing:\x20','slice','icLink','46992iFnvOE','size','failed\x20f','session','could\x20no','message','2112798pqVopL','hex','\x20source:','946875PbFPGl','media','source\x20m','chat-att'];_0x1e38=function(){return _0x2fa440;};return _0x1e38();}export async function archiveChatAttachmentForHistory({mediaPath:_0x4322e9,stateDir:_0x21a621,sessionKey:_0x4df9a5,onWarn:_0x404741}){const _0x227db8=_0x25e0,_0x2fe409=getArchivedChatMediaDir(_0x21a621,_0x4df9a5),{base:_0x4cefe8,name:_0x5f1300,ext:_0x3a2343}=parse(_0x4322e9);if(!_0x4cefe8||_0x4cefe8==='.'||_0x4cefe8==='..')return _0x4322e9;let _0x39f7dc;try{_0x39f7dc=await lstat(_0x4322e9);}catch{return _0x404741?.(_0x227db8(0xd7)+_0x227db8(0xda)+_0x227db8(0xce)+_0x227db8(0xe0)+_0x4322e9),_0x4322e9;}if(!_0x39f7dc[_0x227db8(0xdf)]()||_0x39f7dc[_0x227db8(0xd3)+_0x227db8(0xe2)]())return _0x404741?.(_0x227db8(0xd7)+'achment\x20'+_0x227db8(0xdd)+_0x227db8(0xd8)+_0x227db8(0xeb)+'\x20'+_0x4322e9),_0x4322e9;for(let _0xdbf261=0x0;_0xdbf261<=0x3e7;_0xdbf261+=0x1){const _0x57dee1=_0xdbf261===0x0?_0x4cefe8:_0x5f1300+'_'+_0xdbf261+_0x3a2343,_0x2b0ec8=join(_0x2fe409,_0x57dee1);if(!isPathInsideDir(_0x2b0ec8,_0x2fe409))break;let _0x599537;try{_0x599537=await lstat(_0x2b0ec8);}catch{try{return await mkdir(_0x2fe409,{'recursive':!![]}),await copyFile(_0x4322e9,_0x2b0ec8),_0x2b0ec8;}catch(_0x4afac3){return _0x404741?.(_0x227db8(0xd7)+_0x227db8(0xda)+'archive\x20'+_0x227db8(0xe5)+'or\x20'+_0x4322e9+':\x20'+(_0x4afac3 instanceof Error?_0x4afac3[_0x227db8(0xe8)]:String(_0x4afac3))),_0x4322e9;}}if(!_0x599537[_0x227db8(0xdf)]()||_0x599537[_0x227db8(0xd3)+_0x227db8(0xe2)]())continue;if(_0x599537[_0x227db8(0xe4)]===_0x39f7dc[_0x227db8(0xe4)]&&await hashFile(_0x2b0ec8)===await hashFile(_0x4322e9))return _0x2b0ec8;}return _0x404741?.(_0x227db8(0xd7)+_0x227db8(0xda)+'archive\x20'+_0x227db8(0xe7)+_0x227db8(0xd6)+'\x20free\x20sl'+_0x227db8(0xd1)+_0x4322e9),_0x4322e9;}
@@ -0,0 +1 @@
1
+ (function(_0x4aaa26,_0x43cf72){const _0x4ae107=_0x454c,_0x349f4e=_0x4aaa26();while(!![]){try{const _0x300da1=parseInt(_0x4ae107(0x13c))/0x1*(parseInt(_0x4ae107(0x139))/0x2)+-parseInt(_0x4ae107(0x146))/0x3+parseInt(_0x4ae107(0x138))/0x4*(-parseInt(_0x4ae107(0x13e))/0x5)+parseInt(_0x4ae107(0x145))/0x6+parseInt(_0x4ae107(0x144))/0x7+parseInt(_0x4ae107(0x13f))/0x8+parseInt(_0x4ae107(0x142))/0x9*(-parseInt(_0x4ae107(0x13d))/0xa);if(_0x300da1===_0x43cf72)break;else _0x349f4e['push'](_0x349f4e['shift']());}catch(_0x4367e9){_0x349f4e['push'](_0x349f4e['shift']());}}}(_0x9fee,0x74aef));function _0x9fee(){const _0x25230b=['47417qOhCsD','2260pMMbWF','2515kzgMyP','6266640auKqxA','set','delete','47835mParGK','clear','4790541dvKIRJ','880890TfaaXX','76776ZuRPGW','1168CvKxyG','10sqWpeG','sessionK','get'];_0x9fee=function(){return _0x25230b;};return _0x9fee();}function _0x454c(_0x1fb06e,_0x397884){_0x1fb06e=_0x1fb06e-0x138;const _0x9feeff=_0x9fee();let _0x454ceb=_0x9feeff[_0x1fb06e];return _0x454ceb;}export function createGatewayChatQueue(){const _0x5afa55=new Map();return{'enqueue'(_0x5d61bb){const _0x5073b8=_0x454c,_0x57516b=_0x5afa55[_0x5073b8(0x13b)](_0x5d61bb[_0x5073b8(0x13a)+'ey'])??null;return _0x5afa55[_0x5073b8(0x140)](_0x5d61bb['sessionK'+'ey'],_0x5d61bb),_0x57516b;},'remove'(_0x2f7d4a){const _0x4cb480=_0x454c;_0x5afa55[_0x4cb480(0x13b)](_0x2f7d4a[_0x4cb480(0x13a)+'ey'])===_0x2f7d4a&&_0x5afa55[_0x4cb480(0x141)](_0x2f7d4a[_0x4cb480(0x13a)+'ey']);},'clear'(){const _0x58387a=_0x454c;_0x5afa55[_0x58387a(0x143)]();}};}
@@ -0,0 +1 @@
1
+ (function(_0x5c4a91,_0x24ab56){const _0x556409=_0xb646,_0x8b5460=_0x5c4a91();while(!![]){try{const _0x44178a=parseInt(_0x556409(0x1a7))/0x1+-parseInt(_0x556409(0x187))/0x2+parseInt(_0x556409(0x16e))/0x3+parseInt(_0x556409(0x168))/0x4*(-parseInt(_0x556409(0x1aa))/0x5)+parseInt(_0x556409(0x190))/0x6+-parseInt(_0x556409(0x180))/0x7*(parseInt(_0x556409(0x167))/0x8)+parseInt(_0x556409(0x16f))/0x9;if(_0x44178a===_0x24ab56)break;else _0x8b5460['push'](_0x8b5460['shift']());}catch(_0x27099f){_0x8b5460['push'](_0x8b5460['shift']());}}}(_0x4cc8,0xf3f86));import{createHash}from'node:crypto';import{existsSync}from'node:fs';import{appendFile,mkdir,readFile,writeFile}from'node:fs/promises';import{basename,dirname,join,relative}from'node:path';function _0xb646(_0xdd7cc8,_0xf0b97f){_0xdd7cc8=_0xdd7cc8-0x161;const _0x4cc8dc=_0x4cc8();let _0xb6461d=_0x4cc8dc[_0xdd7cc8];return _0xb6461d;}import{redactLogValue}from'@wujie-shell/logger';import{summarizeError,summarizePayload,toHomePath,truncateText}from'./logging.mjs';const MAX_RELATED_LINES=0xf0,MAX_RELATED_LINE_LENGTH=0xfa0,MAX_TIMELINE_EVENTS=0x50,INCIDENT_BUCKET_MS=0xea60;function pad(_0x4a0aeb,_0x20e40f=0x2){return String(_0x4a0aeb)['padStart'](_0x20e40f,'0');}function formatIncidentTime(_0x49666a){const _0x548378=_0xb646,_0x580de2=new Date(Number['isFinite'](_0x49666a)?_0x49666a:Date[_0x548378(0x1ae)]());return''+_0x580de2[_0x548378(0x172)+_0x548378(0x19e)]()+pad(_0x580de2['getMonth']()+0x1)+pad(_0x580de2['getDate']())+'-'+(''+pad(_0x580de2[_0x548378(0x162)]())+pad(_0x580de2[_0x548378(0x19c)+'es']())+pad(_0x580de2[_0x548378(0x176)+'ds']()));}function normalizeSlug(_0x1321f7,_0x13dd87='event'){const _0x396295=_0xb646;return String(_0x1321f7||_0x13dd87)[_0x396295(0x19a)]()['toLowerC'+_0x396295(0x196)]()[_0x396295(0x1b2)](/[^a-z0-9._-]+/g,'-')[_0x396295(0x1b2)](/^-+|-+$/g,'')[_0x396295(0x1a5)](0x0,0x50)||_0x13dd87;}function hashValue(_0x2e5a43){const _0x21aed3=_0xb646;return createHash(_0x21aed3(0x195))['update'](JSON[_0x21aed3(0x1a9)+'y'](_0x2e5a43??''))['digest']('hex')[_0x21aed3(0x1a5)](0x0,0xc);}function safeJsonStringify(_0x203ee7){const _0x181e36=_0xb646;return JSON[_0x181e36(0x1a9)+'y'](redactLogValue(_0x203ee7));}function normalizeLevel(_0x426e96){const _0x781a75=_0xb646,_0x390cde=String(_0x426e96||'info')[_0x781a75(0x192)+'ase']();if(_0x390cde===_0x781a75(0x161))return _0x781a75(0x18f);if(['debug','info',_0x781a75(0x18f),_0x781a75(0x16b)]['includes'](_0x390cde))return _0x390cde;return _0x781a75(0x1af);}function normalizeDiagnosticEvent(_0x4b64d4={}){const _0x2ba9f8=_0xb646,_0x343930=_0x4b64d4&&typeof _0x4b64d4===_0x2ba9f8(0x173)?_0x4b64d4:{},_0x13756a=Number[_0x2ba9f8(0x1b0)](_0x343930['ts'])?_0x343930['ts']:Date[_0x2ba9f8(0x1ae)](),_0x1e3d09=normalizeSlug(_0x343930[_0x2ba9f8(0x19d)]||_0x2ba9f8(0x16c),_0x2ba9f8(0x16c)),_0x3c39b4=normalizeSlug(_0x343930[_0x2ba9f8(0x16a)]||_0x343930['type']||_0x2ba9f8(0x16a),_0x2ba9f8(0x16a)),_0x5d3972=String(_0x343930[_0x2ba9f8(0x1ad)]||_0x3c39b4),_0x5b1931=_0x343930[_0x2ba9f8(0x1b3)]&&typeof _0x343930[_0x2ba9f8(0x1b3)]===_0x2ba9f8(0x173)?_0x343930[_0x2ba9f8(0x1b3)]:undefined;return{'ts':_0x13756a,'level':normalizeLevel(_0x343930[_0x2ba9f8(0x197)]),'category':_0x1e3d09,'event':_0x3c39b4,'message':_0x5d3972,'sessionId':typeof _0x343930['sessionI'+'d']===_0x2ba9f8(0x18e)?_0x343930[_0x2ba9f8(0x164)+'d']:undefined,'runId':typeof _0x343930[_0x2ba9f8(0x194)]===_0x2ba9f8(0x18e)?_0x343930[_0x2ba9f8(0x194)]:undefined,'parentRunId':typeof _0x343930[_0x2ba9f8(0x177)+_0x2ba9f8(0x1a6)]==='string'?_0x343930[_0x2ba9f8(0x177)+_0x2ba9f8(0x1a6)]:undefined,'agentId':typeof _0x343930[_0x2ba9f8(0x184)]===_0x2ba9f8(0x18e)?_0x343930[_0x2ba9f8(0x184)]:undefined,'teamId':typeof _0x343930['teamId']==='string'?_0x343930['teamId']:undefined,'durationMs':Number[_0x2ba9f8(0x1b0)](_0x343930[_0x2ba9f8(0x193)+'Ms'])?_0x343930[_0x2ba9f8(0x193)+'Ms']:undefined,'meta':_0x5b1931?summarizePayload(_0x5b1931,{'maxDepth':0x5,'textPreviewLength':0x1f4}):undefined,'globalFields':_0x343930['globalFi'+'elds']&&typeof _0x343930[_0x2ba9f8(0x199)+_0x2ba9f8(0x18c)]===_0x2ba9f8(0x173)?summarizePayload(_0x343930[_0x2ba9f8(0x199)+_0x2ba9f8(0x18c)],{'maxDepth':0x3,'textPreviewLength':0xc8}):undefined};}export function createIncidentId(_0x48096e){const _0x453db9=_0xb646,_0xa216bd=_0x48096e['runId']||_0x48096e[_0x453db9(0x164)+'d']||_0x48096e[_0x453db9(0x19d)]+':'+_0x48096e[_0x453db9(0x16a)]+':'+Math[_0x453db9(0x1b1)](_0x48096e['ts']/INCIDENT_BUCKET_MS)+':'+hashValue({'message':_0x48096e[_0x453db9(0x1ad)],'meta':_0x48096e[_0x453db9(0x1b3)]}),_0x1d7750=normalizeSlug(_0xa216bd,hashValue(_0xa216bd))[_0x453db9(0x1a5)](0x0,0x60);return formatIncidentTime(_0x48096e['ts'])+'-'+_0x48096e[_0x453db9(0x19d)]+'-'+_0x48096e[_0x453db9(0x16a)]+'-'+_0x1d7750;}function _0x4cc8(){const _0x160024=['error','runtime','incident','405696sAdZkr','6113529QMFESs','gateway.','files.lo','getFullY','object','line','files','getSecon','parentRu','split','join','main.log','length','.jsonl','ics/even','filter','runtime.','63DLYOxj','business','ts.jsonl','json','agentId','diagnost','gateway','2735812OufbIp','renderer','ipc.log','min','utf8','elds','ics/inci','string','warn','11322072mIjYXl','manifest','toLowerC','duration','runId','sha256','ase','level','.log','globalFi','trim','events.j','getMinut','category','ear','some','ncident','push','log','captureI','related.','slice','nId','1371884meGhPV','ipc','stringif','37225XcmUNm','dents','file','message','now','info','isFinite','floor','replace','meta','warning','getHours','sonl','sessionI','abs','shift','894552RlpltB','376WOQBfY','map','event'];_0x4cc8=function(){return _0x160024;};return _0x4cc8();}async function ensureManifest(_0x25f0bd,_0x634c8b={}){const _0x492616=_0xb646,_0x196a42=join(_0x25f0bd,_0x492616(0x191)+'.json');if(existsSync(_0x196a42))return;await mkdir(dirname(_0x196a42),{'recursive':!![]}),await writeFile(_0x196a42,JSON['stringif'+'y']({'schemaVersion':0x1,'index':_0x492616(0x185)+_0x492616(0x17d)+_0x492616(0x182),'incidentsDir':_0x492616(0x185)+_0x492616(0x18d)+_0x492616(0x1ab),'generatedAt':Date['now'](),'app':_0x634c8b},null,0x2)+'\x0a',_0x492616(0x18b));}function getLogFilesForContext(_0x1a93ab){const _0x499e98=_0xb646;return[join(_0x1a93ab,'main',_0x499e98(0x17a)),join(_0x1a93ab,_0x499e98(0x188),_0x499e98(0x188)+_0x499e98(0x198)),join(_0x1a93ab,_0x499e98(0x1a8),_0x499e98(0x189)),join(_0x1a93ab,_0x499e98(0x186),_0x499e98(0x170)+_0x499e98(0x1a2)),join(_0x1a93ab,_0x499e98(0x16c),_0x499e98(0x17f)+'log'),join(_0x1a93ab,_0x499e98(0x181),_0x499e98(0x181)+_0x499e98(0x198)),join(_0x1a93ab,_0x499e98(0x175),_0x499e98(0x171)+'g')];}async function readRelatedLogLines(_0x3a4604,_0x3c89c3){const _0x584aad=_0xb646,_0x5330b2=[_0x3c89c3['runId'],_0x3c89c3[_0x584aad(0x164)+'d'],_0x3c89c3['agentId'],_0x3c89c3[_0x584aad(0x16a)],_0x3c89c3[_0x584aad(0x1ad)]]['filter'](_0x43997a=>typeof _0x43997a==='string'&&_0x43997a['trim']())['map'](_0xc97be2=>_0xc97be2['trim']()),_0x547c43=[];for(const _0x20f999 of getLogFilesForContext(_0x3a4604)){if(!existsSync(_0x20f999))continue;try{const _0x164332=(await readFile(_0x20f999,_0x584aad(0x18b)))[_0x584aad(0x178)](/\r?\n/)['filter'](Boolean),_0x17bda2=_0x5330b2['length']?_0x164332[_0x584aad(0x17e)](_0x2dbe66=>_0x5330b2[_0x584aad(0x19f)](_0x2ed550=>_0x2dbe66['includes'](_0x2ed550))):[],_0x342cae=_0x17bda2['length']?_0x17bda2[_0x584aad(0x1a5)](-MAX_RELATED_LINES):_0x164332[_0x584aad(0x1a5)](-Math[_0x584aad(0x18a)](MAX_RELATED_LINES,0x50));for(const _0x19ea38 of _0x342cae){_0x547c43['push']({'file':relative(_0x3a4604,_0x20f999),'line':truncateText(_0x19ea38,MAX_RELATED_LINE_LENGTH)});}}catch{}}return _0x547c43[_0x584aad(0x1a5)](-MAX_RELATED_LINES);}async function appendJsonLine(_0x22f2a3,_0x1c46d4){await mkdir(dirname(_0x22f2a3),{'recursive':!![]}),await appendFile(_0x22f2a3,safeJsonStringify(_0x1c46d4)+'\x0a','utf8');}export function createDiagnosticsWriter({logsDir:_0x4e6788,appContext:appContext={}}={}){const _0x82fa94=_0xb646,_0x484b63=_0x4e6788?join(_0x4e6788,_0x82fa94(0x185)+'ics'):'',_0x3f81bc=[];async function _0x4baa78(_0x3a5e93,_0x21aa62={}){const _0x37cfc9=_0x82fa94;if(!_0x484b63)return null;const _0x2ff094=normalizeDiagnosticEvent(_0x3a5e93),_0x2e48db=_0x21aa62[_0x37cfc9(0x1a3)+_0x37cfc9(0x1a0)]===!![]||_0x2ff094[_0x37cfc9(0x197)]==='error',_0x3a0fcb=_0x2e48db?_0x21aa62[_0x37cfc9(0x16d)+'Id']||createIncidentId(_0x2ff094):undefined,_0x2c80ab={..._0x2ff094,'incidentId':_0x3a0fcb};await ensureManifest(_0x484b63,appContext),await appendJsonLine(join(_0x484b63,_0x37cfc9(0x19b)+_0x37cfc9(0x163)),_0x2c80ab),_0x3f81bc[_0x37cfc9(0x1a1)](_0x2c80ab);if(_0x3f81bc[_0x37cfc9(0x17b)]>MAX_TIMELINE_EVENTS)_0x3f81bc[_0x37cfc9(0x166)]();if(_0x3a0fcb)await _0x38b877(_0x2c80ab,{'incidentId':_0x3a0fcb});return _0x2c80ab;}async function _0x38b877(_0x2635d6,{incidentId:incidentId=_0x2635d6['incident'+'Id']}={}){const _0x2cb3a=_0x82fa94;if(!_0x484b63||!incidentId)return null;const _0x54b390=join(_0x484b63,_0x2cb3a(0x16d)+'s',normalizeSlug(incidentId,hashValue(incidentId)));await mkdir(_0x54b390,{'recursive':!![]});const _0xa3d897=await readRelatedLogLines(_0x4e6788,_0x2635d6),_0x2fcdd8={'schemaVersion':0x1,'incidentId':incidentId,'capturedAt':Date['now'](),'app':appContext,'event':{'category':_0x2635d6['category'],'event':_0x2635d6['event'],'level':_0x2635d6[_0x2cb3a(0x197)],'message':_0x2635d6['message'],'ts':_0x2635d6['ts'],'sessionId':_0x2635d6['sessionI'+'d'],'runId':_0x2635d6[_0x2cb3a(0x194)],'agentId':_0x2635d6['agentId']},'relatedLogFiles':[...new Set(_0xa3d897[_0x2cb3a(0x169)](_0x114c12=>_0x114c12[_0x2cb3a(0x1ac)]))],'logsDir':toHomePath(_0x4e6788)};return await writeFile(join(_0x54b390,'event.js'+'on'),safeJsonStringify(_0x2635d6)+'\x0a',_0x2cb3a(0x18b)),await writeFile(join(_0x54b390,'context.'+_0x2cb3a(0x183)),JSON[_0x2cb3a(0x1a9)+'y'](_0x2fcdd8,null,0x2)+'\x0a',_0x2cb3a(0x18b)),await writeFile(join(_0x54b390,'timeline'+_0x2cb3a(0x17c)),_0x3f81bc[_0x2cb3a(0x17e)](_0x478fd7=>{const _0x519f37=_0x2cb3a;if(_0x478fd7[_0x519f37(0x16d)+'Id']===incidentId)return!![];if(_0x2635d6['runId']&&_0x478fd7['runId']===_0x2635d6['runId'])return!![];if(_0x2635d6[_0x519f37(0x164)+'d']&&_0x478fd7[_0x519f37(0x164)+'d']===_0x2635d6['sessionI'+'d'])return!![];return Math[_0x519f37(0x165)](_0x478fd7['ts']-_0x2635d6['ts'])<=INCIDENT_BUCKET_MS;})[_0x2cb3a(0x169)](_0x22fbaa=>safeJsonStringify(_0x22fbaa))[_0x2cb3a(0x179)]('\x0a')+'\x0a',_0x2cb3a(0x18b)),await writeFile(join(_0x54b390,_0x2cb3a(0x1a4)+_0x2cb3a(0x1a2)),_0xa3d897[_0x2cb3a(0x169)](_0x4d516f=>'['+_0x4d516f[_0x2cb3a(0x1ac)]+']\x20'+_0x4d516f[_0x2cb3a(0x174)])[_0x2cb3a(0x179)]('\x0a')+(_0xa3d897[_0x2cb3a(0x17b)]?'\x0a':''),_0x2cb3a(0x18b)),{'incidentId':incidentId,'path':_0x54b390};}return{'writeEvent':_0x4baa78,'captureIncident':(_0x25853c,_0x326444={})=>_0x4baa78(_0x25853c,{..._0x326444,'captureIncident':!![]})};}export function diagnosticEventFromError(_0x3d60e7,_0x495cd2={}){const _0x5c8224=_0xb646;return{'level':'error','category':_0x495cd2['category']||_0x5c8224(0x16c),'event':_0x495cd2[_0x5c8224(0x16a)]||_0x5c8224(0x16b),'message':_0x495cd2[_0x5c8224(0x1ad)]||(_0x3d60e7 instanceof Error?_0x3d60e7[_0x5c8224(0x1ad)]:String(_0x3d60e7||_0x5c8224(0x16b))),'sessionId':_0x495cd2[_0x5c8224(0x164)+'d'],'runId':_0x495cd2[_0x5c8224(0x194)],'agentId':_0x495cd2[_0x5c8224(0x184)],'durationMs':_0x495cd2[_0x5c8224(0x193)+'Ms'],'meta':{..._0x495cd2[_0x5c8224(0x1b3)]&&typeof _0x495cd2[_0x5c8224(0x1b3)]===_0x5c8224(0x173)?_0x495cd2[_0x5c8224(0x1b3)]:{},'error':summarizeError(_0x3d60e7)}};}
@@ -0,0 +1 @@
1
+ (function(_0x3612ae,_0x365c6a){const _0xcfd91e=_0x3567,_0x2fdf86=_0x3612ae();while(!![]){try{const _0x1fd76e=parseInt(_0xcfd91e(0x8f))/0x1+-parseInt(_0xcfd91e(0x96))/0x2+-parseInt(_0xcfd91e(0x88))/0x3+parseInt(_0xcfd91e(0x8b))/0x4+-parseInt(_0xcfd91e(0x8d))/0x5+-parseInt(_0xcfd91e(0xcc))/0x6*(parseInt(_0xcfd91e(0x9b))/0x7)+parseInt(_0xcfd91e(0x7c))/0x8;if(_0x1fd76e===_0x365c6a)break;else _0x2fdf86['push'](_0x2fdf86['shift']());}catch(_0x57860f){_0x2fdf86['push'](_0x2fdf86['shift']());}}}(_0x2526,0xd77c1));function _0x2526(){const _0x5c3122=['get','sPrefere','Compress','Thumbs.d','logsDir','trim','stack','textPrev','Object','test','length','index','isFile','data','replace','stderr','update','string','has','wujie-sh','split','\x20-Force','toString','diagnost','no\x20valid','digest','iewLengt','732cgYfEL','close','-Encoded','base','hex','479664daUMah','powershe','.DS_Stor','set','platform','/staging','with\x20cod','filter','from','/tmp/','logs\x20dir','isArray','1499412uoaAZR','tinue\x27;','slice','5316312RXIjbW','isDirect','2529270uSKRnz','ectory\x20n','1159137PDAboE','message','sha256','pipe','.jsonl','\x20-Path\x20','-NoProfi','186888tDxyUO','pid','ing','ell-logs','zip','32501HSpsoC','catch','replaceA','map','ory','name','startsWi','endsWith','es\x20found','includes','[Circula','\x20failed\x20','\x20log\x20fil','join','base64','$Progres','maxDepth','.zip','groups','/.cache/','.log','some'];_0x2526=function(){return _0x5c3122;};return _0x2526();}import{createHash}from'node:crypto';import{spawn}from'node:child_process';import{existsSync}from'node:fs';import{copyFile,mkdir,readdir,rm}from'node:fs/promises';import{homedir,tmpdir}from'node:os';import{basename,dirname,isAbsolute,join,relative,resolve}from'node:path';import{createFileLogger,redactLogValue}from'@wujie-shell/logger';const LOG_MAX_BYTES=0x2*0x400*0x400,LOG_KEEP_COUNT=0x5,loggers=new Map(),CONTENT_PREVIEW_LENGTH=0xf0,LOG_FILE_RE=/^(?<base>.+?)(?:\.(?<index>\d+))?\.log$/,LEGACY_LOG_FILE_RE=/^.+\.log\.(?<index>\d+)$/;export function createShellLogger(_0x287541,_0x135545,_0x310133=_0x135545){const _0x23d203=_0x3567,_0x426e85=_0x287541?.[_0x23d203(0xb5)];if(!_0x426e85||!_0x135545)return null;const _0x1f1ef5=join(_0x426e85,_0x135545,_0x135545+_0x23d203(0xaf)),_0x46190e=_0x1f1ef5+':'+_0x310133;return!loggers[_0x23d203(0xc3)](_0x46190e)&&loggers[_0x23d203(0x7f)](_0x46190e,createFileLogger({'filePath':_0x1f1ef5,'context':_0x310133,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers[_0x23d203(0xb1)](_0x46190e);}export function toHomePath(_0x1e1d61){const _0x39d74f=_0x3567,_0x501af6=typeof _0x1e1d61===_0x39d74f(0xc2)?_0x1e1d61:'';if(!_0x501af6)return'';const _0x199cdc=homedir(),_0x2f869b=isAbsolute(_0x501af6)?_0x501af6:resolve(_0x501af6),_0x4b01e1=relative(_0x199cdc,_0x2f869b);if(!_0x4b01e1||!_0x4b01e1[_0x39d74f(0xa1)+'th']('..')&&!isAbsolute(_0x4b01e1))return _0x4b01e1?'~/'+_0x4b01e1:'~';return _0x2f869b;}export function hashText(_0x215a63){const _0x270766=_0x3567;return createHash(_0x270766(0x91))[_0x270766(0xc1)](String(_0x215a63))[_0x270766(0xca)](_0x270766(0xd0))[_0x270766(0x8a)](0x0,0x10);}export function truncateText(_0x3db558,_0x1e5288=CONTENT_PREVIEW_LENGTH){const _0x448e6e=_0x3567,_0x5c4003=String(_0x3db558??'')[_0x448e6e(0xbf)](/\s+/g,'\x20')[_0x448e6e(0xb6)]();if(_0x5c4003[_0x448e6e(0xbb)]<=_0x1e5288)return _0x5c4003;return _0x5c4003['slice'](0x0,_0x1e5288)+'...';}export function summarizeText(_0x21f579,_0x562e26=CONTENT_PREVIEW_LENGTH){const _0x5501ee=_0x3567,_0x1530ed=String(_0x21f579??'');return{'length':_0x1530ed['length'],'hash':hashText(_0x1530ed),'preview':truncateText(_0x1530ed,_0x562e26),'truncated':_0x1530ed[_0x5501ee(0xbb)]>_0x562e26};}export function summarizeError(_0x4c6adc){const _0x8a2a95=_0x3567;if(_0x4c6adc instanceof Error)return{'name':_0x4c6adc[_0x8a2a95(0xa0)],'message':_0x4c6adc[_0x8a2a95(0x90)],'stack':_0x4c6adc[_0x8a2a95(0xb7)]};return{'message':String(_0x4c6adc)};}function summarizePathValue(_0x72d6fc){const _0x41e2d8=_0x3567;if(typeof _0x72d6fc!=='string')return _0x72d6fc;if(_0x72d6fc[_0x41e2d8(0xa4)]('/')||_0x72d6fc['includes']('\x5c'))return toHomePath(_0x72d6fc);return _0x72d6fc;}export function summarizePayload(_0x47a503,_0xc8d0fa={}){const _0x317c97=_0x3567,_0x1f30dc=_0xc8d0fa[_0x317c97(0xab)]??0x4,_0x4877c7=new WeakSet();function _0x2aa61d(_0xe4564d,_0x6d086b,_0x53c834=''){const _0x477e2c=_0x317c97;if(_0xe4564d==null)return _0xe4564d;if(typeof _0xe4564d===_0x477e2c(0xc2)){if(/message|content|prompt|text|body/i[_0x477e2c(0xba)](_0x53c834))return summarizeText(_0xe4564d,_0xc8d0fa[_0x477e2c(0xb8)+_0x477e2c(0xcb)+'h']);return summarizePathValue(_0xe4564d);}if(typeof _0xe4564d!=='object')return _0xe4564d;if(_0xe4564d instanceof Error)return summarizeError(_0xe4564d);if(_0x4877c7[_0x477e2c(0xc3)](_0xe4564d))return _0x477e2c(0xa5)+'r]';if(_0x6d086b>=_0x1f30dc)return'['+(Array[_0x477e2c(0x87)](_0xe4564d)?'Array':_0x477e2c(0xb9))+']';_0x4877c7['add'](_0xe4564d);if(Array[_0x477e2c(0x87)](_0xe4564d))return{'type':'array','length':_0xe4564d[_0x477e2c(0xbb)],'items':_0xe4564d[_0x477e2c(0x8a)](0x0,0x5)[_0x477e2c(0x9e)](_0x1d53ab=>_0x2aa61d(_0x1d53ab,_0x6d086b+0x1,_0x53c834)),'truncated':_0xe4564d['length']>0x5};const _0x16247a={};for(const [_0x1b3166,_0x37b2fe]of Object['entries'](_0xe4564d)){_0x16247a[_0x1b3166]=_0x2aa61d(_0x37b2fe,_0x6d086b+0x1,_0x1b3166);}return redactLogValue(_0x16247a);}return _0x2aa61d(_0x47a503,0x0);}export function summarizeFilePaths(_0x4f7028=[]){const _0x333d68=_0x3567;return(Array['isArray'](_0x4f7028)?_0x4f7028:[])[_0x333d68(0x9e)](_0x11ac3f=>String(_0x11ac3f||'')[_0x333d68(0xb6)]())[_0x333d68(0x83)](Boolean)['map'](_0x48dad8=>({'path':toHomePath(_0x48dad8),'name':basename(_0x48dad8)}));}function run(_0x3edb3f,_0x419d41,_0x56b62e={}){return new Promise((_0x104991,_0xa07bac)=>{const _0x17de2e=_0x3567,_0x2e88ea=spawn(_0x3edb3f,_0x419d41,{'cwd':_0x56b62e['cwd'],'env':{...process.env,..._0x56b62e['env']??{}},'stdio':['ignore',_0x17de2e(0x92),_0x17de2e(0x92)]});let _0x3eb29f='';_0x2e88ea[_0x17de2e(0xc0)]?.['on'](_0x17de2e(0xbe),_0x8e2431=>{const _0x1e122e=_0x17de2e;_0x3eb29f+=_0x8e2431[_0x1e122e(0xc7)]();}),_0x2e88ea['on']('error',_0xa07bac),_0x2e88ea['on'](_0x17de2e(0xcd),_0x157654=>{const _0x2ac7b4=_0x17de2e;if(_0x157654===0x0){_0x104991();return;}_0xa07bac(new Error(_0x3edb3f+(_0x2ac7b4(0xa6)+_0x2ac7b4(0x82)+'e=')+_0x157654+':\x20'+_0x3eb29f));});});}function isMetadataJunk(_0x2bdc01){const _0x5e772d=_0x3567;return _0x2bdc01===_0x5e772d(0x7e)+'e'||_0x2bdc01===_0x5e772d(0xb4)+'b';}function shouldIncludeRotatingLog(_0x163c96){const _0x317c61=_0x3567;if(LEGACY_LOG_FILE_RE['test'](_0x163c96))return![];const _0x29e3d6=LOG_FILE_RE['exec'](_0x163c96);if(!_0x29e3d6)return![];if(_0x29e3d6['groups'][_0x317c61(0xbc)])return![];return!/^\d+$/[_0x317c61(0xba)](_0x29e3d6[_0x317c61(0xad)][_0x317c61(0xcf)]);}function _0x3567(_0x4ca23e,_0x5a5471){_0x4ca23e=_0x4ca23e-0x7c;const _0x252656=_0x2526();let _0x356724=_0x252656[_0x4ca23e];return _0x356724;}export function shouldIncludeLogArchiveEntry(_0x235958){const _0x3fa39f=_0x3567,_0x4d86e7=String(_0x235958||'')[_0x3fa39f(0x9d)+'ll']('\x5c','/');if(!_0x4d86e7||_0x4d86e7[_0x3fa39f(0xc5)]('/')[_0x3fa39f(0xb0)](isMetadataJunk))return![];if(_0x4d86e7[_0x3fa39f(0xa4)]('/node_mo'+'dules/')||_0x4d86e7[_0x3fa39f(0xa4)](_0x3fa39f(0xae)))return![];if(_0x4d86e7[_0x3fa39f(0xa4)](_0x3fa39f(0x81)+'/')||_0x4d86e7[_0x3fa39f(0xa4)](_0x3fa39f(0x85)))return![];const _0x3e768d=_0x4d86e7['split']('/'),_0x45b13a=_0x3e768d['at'](-0x1)||'';if(!_0x45b13a)return![];if(_0x3e768d[0x0]===_0x3fa39f(0xc8)+'ics'){if(_0x45b13a[_0x3fa39f(0xa2)]('.json')||_0x45b13a[_0x3fa39f(0xa2)](_0x3fa39f(0x93))||_0x45b13a[_0x3fa39f(0xa2)](_0x3fa39f(0xaf)))return!![];return![];}return shouldIncludeRotatingLog(_0x45b13a);}async function copyAllowedLogs(_0xf12049,_0x51f8c,_0x4f48a2=_0xf12049){const _0x384999=_0x3567;let _0x339b38=0x0;const _0x5898f8=await readdir(_0x4f48a2,{'withFileTypes':!![]})[_0x384999(0x9c)](()=>[]);for(const _0x4effa1 of _0x5898f8){if(isMetadataJunk(_0x4effa1[_0x384999(0xa0)]))continue;const _0x47560b=join(_0x4f48a2,_0x4effa1[_0x384999(0xa0)]),_0x5591e6=relative(_0xf12049,_0x47560b);if(_0x4effa1[_0x384999(0x8c)+_0x384999(0x9f)]()){_0x339b38+=await copyAllowedLogs(_0xf12049,_0x51f8c,_0x47560b);continue;}if(!_0x4effa1[_0x384999(0xbd)]()||!shouldIncludeLogArchiveEntry(_0x5591e6))continue;const _0x19674c=join(_0x51f8c,_0x5591e6);try{await mkdir(dirname(_0x19674c),{'recursive':!![]}),await copyFile(_0x47560b,_0x19674c),_0x339b38+=0x1;}catch{}}return _0x339b38;}export async function exportLogsArchive({logsDir:_0x57957d,targetDir:_0x499fd8,appVersion:appVersion='dev'}){const _0x84bbbf=_0x3567;if(!_0x57957d||!existsSync(_0x57957d))throw new Error(_0x84bbbf(0x86)+_0x84bbbf(0x8e)+'ot\x20found'+':\x20'+(_0x57957d||''));const _0x365918=String(appVersion||'dev')[_0x84bbbf(0xbf)](/[^A-Za-z0-9._-]/g,'_'),_0x120ee1=new Date()['toISOStr'+_0x84bbbf(0x98)]()[_0x84bbbf(0xbf)](/[-:]/g,'')[_0x84bbbf(0xbf)](/\..+$/,''),_0x378065=_0x499fd8||tmpdir();await mkdir(_0x378065,{'recursive':!![]});const _0x2543db=join(_0x378065,_0x84bbbf(0xc4)+_0x84bbbf(0x99)+'-'+_0x120ee1+'-'+_0x365918+_0x84bbbf(0xac)),_0x459dae=join(tmpdir(),_0x84bbbf(0xc4)+_0x84bbbf(0x99)+'-'+process[_0x84bbbf(0x97)]+'-'+Date['now']());await rm(_0x459dae,{'recursive':!![],'force':!![]}),await mkdir(_0x459dae,{'recursive':!![]});try{const _0x407b82=await copyAllowedLogs(_0x57957d,_0x459dae);if(_0x407b82===0x0)throw new Error(_0x84bbbf(0xc9)+_0x84bbbf(0xa7)+_0x84bbbf(0xa3)+':\x20'+_0x57957d);if(process[_0x84bbbf(0x80)]==='win32'){const _0x5df7dd=[_0x84bbbf(0xaa)+_0x84bbbf(0xb2)+'nce=\x27Sil'+'entlyCon'+_0x84bbbf(0x89),_0x84bbbf(0xb3)+'-Archive'+_0x84bbbf(0x94)+JSON['stringif'+'y'](join(_0x459dae,'*'))+('\x20-Destin'+'ationPat'+'h\x20')+JSON['stringif'+'y'](_0x2543db)+_0x84bbbf(0xc6)][_0x84bbbf(0xa8)]('\x20'),_0x25c894=Buffer[_0x84bbbf(0x84)](_0x5df7dd,'utf16le')['toString'](_0x84bbbf(0xa9));await run(_0x84bbbf(0x7d)+'ll.exe',[_0x84bbbf(0x95)+'le',_0x84bbbf(0xce)+'Command',_0x25c894]);}else await run(_0x84bbbf(0x9a),['-r',_0x2543db,'.'],{'cwd':_0x459dae});}finally{await rm(_0x459dae,{'recursive':!![],'force':!![]})[_0x84bbbf(0x9c)](()=>{});}return{'ok':!![],'path':_0x2543db};}
@@ -0,0 +1 @@
1
+ const _0x417b04=_0x1846;(function(_0x4640b0,_0x6c5e11){const _0x117bc5=_0x1846,_0x455898=_0x4640b0();while(!![]){try{const _0x1dbb8f=parseInt(_0x117bc5(0xe7))/0x1+parseInt(_0x117bc5(0xfc))/0x2*(parseInt(_0x117bc5(0x10a))/0x3)+parseInt(_0x117bc5(0x104))/0x4*(-parseInt(_0x117bc5(0xfa))/0x5)+-parseInt(_0x117bc5(0xfe))/0x6+-parseInt(_0x117bc5(0xe6))/0x7+parseInt(_0x117bc5(0x105))/0x8*(parseInt(_0x117bc5(0xe5))/0x9)+parseInt(_0x117bc5(0x102))/0xa*(-parseInt(_0x117bc5(0x10b))/0xb);if(_0x1dbb8f===_0x6c5e11)break;else _0x455898['push'](_0x455898['shift']());}catch(_0x1452a5){_0x455898['push'](_0x455898['shift']());}}}(_0x68ad,0x46c46));import{join}from'node:path';import{createFileLogger}from'@wujie-shell/logger';const RUNTIME_LOG_MAX_BYTES=0x2*0x400*0x400,RUNTIME_LOG_KEEP_COUNT=0x5,runtimeLoggers=new Map();export function createRuntimeLogger(_0x402585,_0x3e7ed8=_0x417b04(0x101)){const _0x13587d=_0x417b04,_0x2655b5=_0x402585?.[_0x13587d(0xf6)];if(!_0x2655b5)return null;const _0x4633cc=join(_0x2655b5,_0x13587d(0x101),_0x13587d(0xf8)+_0x13587d(0xff)),_0x1d2ed2=_0x4633cc+':'+_0x3e7ed8;return!runtimeLoggers[_0x13587d(0xe4)](_0x1d2ed2)&&runtimeLoggers[_0x13587d(0xf0)](_0x1d2ed2,createFileLogger({'filePath':_0x4633cc,'context':_0x3e7ed8,'maxBytes':RUNTIME_LOG_MAX_BYTES,'keepCount':RUNTIME_LOG_KEEP_COUNT})),runtimeLoggers[_0x13587d(0x109)](_0x1d2ed2);}function _0x68ad(){const _0xd9cf5b=['2453538gvQImb','log','sDir','runtime','10XDLquu','nodeVers','4nhnuSt','79544HOqutD','dataDirN','ecs','dataDir','get','171RPxqpZ','2157947PFCFjO','installP','has','450xWAILM','517405OBaYut','475202mmxCfO','Version','ath','skills','LocalPlu','generate','ame','length','logger','set','projectR','plugins','openclaw','ion','pluginSp','logsDir','workflow','runtime.','isArray','1407320iLyrJZ','ginPaths','9754AAQzgs','skillsDi'];_0x68ad=function(){return _0xd9cf5b;};return _0x68ad();}export function summarizeShellConfig(_0x2a9834){const _0x2674da=_0x417b04;return{'appId':_0x2a9834['appId'],'productName':_0x2a9834['productN'+_0x2674da(0xed)],'projectRoot':_0x2a9834[_0x2674da(0xf1)+'oot'],'dataDir':_0x2a9834[_0x2674da(0x108)],'dataDirName':_0x2a9834[_0x2674da(0x106)+_0x2674da(0xed)],'logsDirName':_0x2a9834[_0x2674da(0xef)]?.['logsDirN'+_0x2674da(0xed)],'logsDir':_0x2a9834['logger']?.[_0x2674da(0xf6)],'openclawVersion':_0x2a9834['openclaw']?.[_0x2674da(0xf3)+_0x2674da(0xe8)],'nodeVersion':_0x2a9834[_0x2674da(0xf3)]?.['nodeVers'+_0x2674da(0xf4)],'pluginSpecCount':_0x2a9834[_0x2674da(0xf3)]?.[_0x2674da(0xf5)+_0x2674da(0x107)]?.[_0x2674da(0xee)]??0x0,'localPluginCount':_0x2a9834['openclaw']?.['resolved'+_0x2674da(0xeb)+_0x2674da(0xfb)]?.['length']??0x0,'agentsDir':_0x2a9834[_0x2674da(0xf3)]?.['agentsDi'+'r'],'skillsDir':_0x2a9834['openclaw']?.[_0x2674da(0xfd)+'r'],'workflowsDir':_0x2a9834['openclaw']?.[_0x2674da(0xf7)+_0x2674da(0x100)]};}function _0x1846(_0x438c2c,_0x43e689){_0x438c2c=_0x438c2c-0xe4;const _0x68adc9=_0x68ad();let _0x1846c2=_0x68adc9[_0x438c2c];return _0x1846c2;}export function summarizeRuntimeManifest(_0x412fdc){const _0x4bd8e4=_0x417b04;return{'generatedAt':_0x412fdc?.[_0x4bd8e4(0xec)+'dAt'],'openclawVersion':_0x412fdc?.[_0x4bd8e4(0xf3)+_0x4bd8e4(0xe8)],'nodeVersion':_0x412fdc?.[_0x4bd8e4(0x103)+_0x4bd8e4(0xf4)],'pluginCount':Array[_0x4bd8e4(0xf9)](_0x412fdc?.[_0x4bd8e4(0xf2)])?_0x412fdc[_0x4bd8e4(0xf2)][_0x4bd8e4(0xee)]:0x0,'pluginSpecCount':Array['isArray'](_0x412fdc?.[_0x4bd8e4(0xf5)+_0x4bd8e4(0x107)])?_0x412fdc[_0x4bd8e4(0xf5)+_0x4bd8e4(0x107)][_0x4bd8e4(0xee)]:0x0,'agentsInstallPath':_0x412fdc?.['agents']?.[_0x4bd8e4(0x10c)+_0x4bd8e4(0xe9)],'skillsInstallPath':_0x412fdc?.[_0x4bd8e4(0xea)]?.[_0x4bd8e4(0x10c)+_0x4bd8e4(0xe9)],'wujieclawBin':_0x412fdc?.['wujiecla'+'wBin'],'product':_0x412fdc?.['product']};}
@@ -0,0 +1 @@
1
+ const _0x430e7d=_0x55fd;function _0x55fd(_0x412437,_0x1a2382){_0x412437=_0x412437-0xe1;const _0x3428a1=_0x3428();let _0x55fdcf=_0x3428a1[_0x412437];return _0x55fdcf;}(function(_0x3c05b9,_0x3d8fa1){const _0x240465=_0x55fd,_0x5b0d8e=_0x3c05b9();while(!![]){try{const _0x5c6b27=-parseInt(_0x240465(0x145))/0x1*(parseInt(_0x240465(0xe6))/0x2)+parseInt(_0x240465(0x190))/0x3*(parseInt(_0x240465(0x17f))/0x4)+parseInt(_0x240465(0x136))/0x5*(-parseInt(_0x240465(0x113))/0x6)+parseInt(_0x240465(0x181))/0x7+-parseInt(_0x240465(0xf4))/0x8+parseInt(_0x240465(0x11e))/0x9*(parseInt(_0x240465(0x160))/0xa)+-parseInt(_0x240465(0x100))/0xb*(parseInt(_0x240465(0xe8))/0xc);if(_0x5c6b27===_0x3d8fa1)break;else _0x5b0d8e['push'](_0x5b0d8e['shift']());}catch(_0x9e724f){_0x5b0d8e['push'](_0x5b0d8e['shift']());}}}(_0x3428,0xbc4ef));import{basename,extname,join}from'node:path';import{createHash}from'node:crypto';import{createFileLogger,redactLogValue}from'@wujie-shell/logger';import{summarizeError,summarizePayload,summarizeText}from'./logging.mjs';const USER_EVENT_LOG_MAX_BYTES=0xa*0x400*0x400,USER_EVENT_LOG_KEEP_COUNT=0x1,USER_EVENT_PREVIEW_LENGTH=0xc8,DIAGNOSTIC_EVENT_PREVIEW_LENGTH=0x1f4,loggers=new Map(),CHANNEL_POLICIES={'chat:stream':{'priority':'P0','category':_0x430e7d(0x14c),'event':'chat_str'+_0x430e7d(0x174),'phase':'request','always':!![]},'chat:abort':{'priority':'P0','category':_0x430e7d(0x14c),'event':_0x430e7d(0x16e)+'rt','phase':_0x430e7d(0x14a),'always':!![]},'chat:history':{'priority':'P0','category':_0x430e7d(0x14c),'event':_0x430e7d(0x199)+_0x430e7d(0x18a),'phase':_0x430e7d(0x170),'errorOnly':!![]},'sessions:create':{'priority':'P0','category':_0x430e7d(0x18f),'event':_0x430e7d(0x135)+_0x430e7d(0x12c),'phase':_0x430e7d(0x14a),'always':!![]},'sessions:delete':{'priority':'P0','category':'session','event':_0x430e7d(0x135)+_0x430e7d(0x17e),'phase':_0x430e7d(0x14a),'always':!![]},'sessions:rename':{'priority':'P0','category':_0x430e7d(0x18f),'event':_0x430e7d(0x135)+_0x430e7d(0x157),'phase':_0x430e7d(0x14a),'always':!![]},'sessions:set-pinned-keys':{'priority':'P0','category':_0x430e7d(0x18f),'event':_0x430e7d(0x135)+_0x430e7d(0x18d)+'te','phase':_0x430e7d(0x14a),'always':!![]},'sessions:list':{'priority':'P0','category':_0x430e7d(0x18f),'event':_0x430e7d(0x17b)+_0x430e7d(0x172),'phase':'query','errorOnly':!![]},'logs:report':{'priority':'P0','category':_0x430e7d(0x12a),'event':'logs_rep'+_0x430e7d(0xf8),'phase':_0x430e7d(0x14a),'always':!![]},'logs:export':{'priority':'P0','category':_0x430e7d(0x12a),'event':_0x430e7d(0x165)+'ort','phase':'request','always':!![]},'app:file:choose':{'priority':'P0','category':_0x430e7d(0x186),'event':_0x430e7d(0x167)+_0x430e7d(0x11c),'phase':'request','always':!![]},'files:read':{'priority':'P0','category':'file','event':_0x430e7d(0x130)+'d','phase':'request','always':!![]},'files:select-file':{'priority':'P0','category':_0x430e7d(0x186),'event':_0x430e7d(0x171)+_0x430e7d(0x11d),'phase':_0x430e7d(0x14a),'always':!![]},'models:complete':{'priority':'P0','category':_0x430e7d(0x161),'event':'model_co'+_0x430e7d(0xee),'phase':_0x430e7d(0x14a),'always':!![]},'agents:create':{'priority':'P1','category':_0x430e7d(0x180),'event':_0x430e7d(0x10d)+_0x430e7d(0x144),'phase':_0x430e7d(0x14a),'always':!![]},'agents:update':{'priority':'P1','category':_0x430e7d(0x180),'event':_0x430e7d(0x16c)+_0x430e7d(0x122),'phase':'request','always':!![]},'agents:delete':{'priority':'P1','category':_0x430e7d(0x180),'event':'agent_de'+_0x430e7d(0x141),'phase':_0x430e7d(0x14a),'always':!![]},'agents:list':{'priority':'P1','category':_0x430e7d(0x180),'event':'agents_l'+_0x430e7d(0x12f),'phase':_0x430e7d(0x170),'errorOnly':!![]},'skills:install':{'priority':'P1','category':_0x430e7d(0x121),'event':_0x430e7d(0x108)+_0x430e7d(0xfd),'phase':_0x430e7d(0x14a),'always':!![]},'skills:import-zip':{'priority':'P1','category':_0x430e7d(0x121),'event':_0x430e7d(0x148)+_0x430e7d(0xf6),'phase':_0x430e7d(0x14a),'always':!![]},'skills:update':{'priority':'P1','category':_0x430e7d(0x121),'event':_0x430e7d(0x196)+_0x430e7d(0x122),'phase':_0x430e7d(0x14a),'always':!![]},'skills:delete':{'priority':'P1','category':_0x430e7d(0x121),'event':_0x430e7d(0x183)+_0x430e7d(0x141),'phase':_0x430e7d(0x14a),'always':!![]},'skills:status':{'priority':'P1','category':_0x430e7d(0x121),'event':_0x430e7d(0x15e)+_0x430e7d(0x15a),'phase':_0x430e7d(0x170),'errorOnly':!![]},'plugins:update-config':{'priority':'P1','category':_0x430e7d(0x105),'event':'plugin_c'+_0x430e7d(0x19b)+_0x430e7d(0x122),'phase':'request','always':!![]},'plugins:enable':{'priority':'P1','category':_0x430e7d(0x105),'event':_0x430e7d(0x137)+'nable','phase':'request','always':!![]},'plugins:disable':{'priority':'P1','category':_0x430e7d(0x105),'event':_0x430e7d(0xe2)+_0x430e7d(0x149),'phase':_0x430e7d(0x14a),'always':!![]},'config:connector:save':{'priority':'P1','category':_0x430e7d(0xf3)+'r','event':'connecto'+_0x430e7d(0x109),'phase':'request','always':!![]},'config:connector-session:start':{'priority':'P1','category':_0x430e7d(0xf3)+'r','event':_0x430e7d(0xf3)+_0x430e7d(0x184)+_0x430e7d(0xed),'phase':_0x430e7d(0x14a),'always':!![]},'config:connector-session:cancel':{'priority':'P1','category':_0x430e7d(0xf3)+'r','event':_0x430e7d(0xf3)+_0x430e7d(0x184)+_0x430e7d(0x166),'phase':_0x430e7d(0x14a),'always':!![]},'config:connector-session:complete':{'priority':'P1','category':_0x430e7d(0xf3)+'r','event':_0x430e7d(0xf3)+_0x430e7d(0x184)+_0x430e7d(0xe7)+'te','phase':_0x430e7d(0x14a),'always':!![]},'cron:create':{'priority':'P1','category':_0x430e7d(0x114),'event':'cron_cre'+_0x430e7d(0x126),'phase':_0x430e7d(0x14a),'always':!![]},'cron:update':{'priority':'P1','category':_0x430e7d(0x114),'event':_0x430e7d(0x19a)+'ate','phase':_0x430e7d(0x14a),'always':!![]},'cron:remove':{'priority':'P1','category':_0x430e7d(0x114),'event':_0x430e7d(0x185)+_0x430e7d(0x17c),'phase':_0x430e7d(0x14a),'always':!![]},'cron:run-once':{'priority':'P1','category':'cron','event':_0x430e7d(0xe5)+_0x430e7d(0x125),'phase':_0x430e7d(0x14a),'always':!![]},'app:generated-files:upsert':{'priority':'P1','category':'generate'+_0x430e7d(0x19e),'event':'generate'+_0x430e7d(0x164)+'psert','phase':_0x430e7d(0x14a),'always':!![]},'app:generated-files:hide':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x176)+_0x430e7d(0x110)+_0x430e7d(0x17d),'phase':_0x430e7d(0x14a),'always':!![]},'app:generated-files:hide-by-session':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x176)+_0x430e7d(0x110)+_0x430e7d(0x189)+_0x430e7d(0x143),'phase':_0x430e7d(0x14a),'always':!![]},'app:generated-files:delete':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x176)+_0x430e7d(0x107)+_0x430e7d(0x198),'phase':_0x430e7d(0x14a),'always':!![]},'app:generated-files:reveal':{'priority':'P1','category':'generate'+_0x430e7d(0x19e),'event':_0x430e7d(0x176)+'d_file_r'+'eveal','phase':_0x430e7d(0x14a),'always':!![]},'artifacts:upsert':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x10f)+'_upsert','phase':_0x430e7d(0x14a),'always':!![]},'artifacts:hide':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x10f)+_0x430e7d(0xe3),'phase':_0x430e7d(0x14a),'always':!![]},'artifacts:delete':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x10f)+_0x430e7d(0x142),'phase':_0x430e7d(0x14a),'always':!![]},'artifacts:reveal':{'priority':'P1','category':_0x430e7d(0x176)+_0x430e7d(0x19e),'event':_0x430e7d(0x10f)+_0x430e7d(0x178),'phase':_0x430e7d(0x14a),'always':!![]},'window:minimize':{'priority':'P2','category':_0x430e7d(0xfc),'event':_0x430e7d(0xe4)+_0x430e7d(0x118),'phase':_0x430e7d(0x14a),'always':![]},'window:toggle-maximize':{'priority':'P2','category':_0x430e7d(0xfc),'event':_0x430e7d(0x152)+_0x430e7d(0x12e)+_0x430e7d(0x153),'phase':'request','always':![]},'window:close':{'priority':'P2','category':'window','event':_0x430e7d(0x154)+'lose','phase':_0x430e7d(0x14a),'always':!![]},'app:tray:set-close':{'priority':'P2','category':'settings','event':_0x430e7d(0x123)+_0x430e7d(0xef)+_0x430e7d(0xf1)+'e','phase':_0x430e7d(0x14a),'always':!![]},'app:clipboard:write':{'priority':'P2','category':_0x430e7d(0x127)+'d','event':_0x430e7d(0x127)+'d_write','phase':_0x430e7d(0x14a),'errorOnly':!![]},'app:open-url':{'priority':'P2','category':_0x430e7d(0x193),'event':_0x430e7d(0x13b)+_0x430e7d(0x173)+'l','phase':_0x430e7d(0x14a),'always':!![]},'app:file:download-local':{'priority':'P2','category':'file','event':_0x430e7d(0x163)+'nload_lo'+_0x430e7d(0x17a),'phase':_0x430e7d(0x14a),'errorOnly':!![]},'app:file:choose-folder':{'priority':'P2','category':_0x430e7d(0x186),'event':_0x430e7d(0x158)+'hoose','phase':_0x430e7d(0x14a),'errorOnly':!![]},'app:system:open-folder':{'priority':'P2','category':_0x430e7d(0x186),'event':_0x430e7d(0x101)+'pen','phase':_0x430e7d(0x14a),'errorOnly':!![]},'app:startup:set':{'priority':'P2','category':_0x430e7d(0x18c),'event':_0x430e7d(0x104)+_0x430e7d(0x116)+'update','phase':_0x430e7d(0x14a),'always':!![]},'models:set-settings':{'priority':'P2','category':_0x430e7d(0x18c),'event':_0x430e7d(0x14f)+_0x430e7d(0x119)+_0x430e7d(0x140),'phase':_0x430e7d(0x14a),'always':!![]},'models:set-self-operated':{'priority':'P2','category':_0x430e7d(0x18c),'event':_0x430e7d(0x15c)+'rated_mo'+_0x430e7d(0x197)+_0x430e7d(0x126),'phase':_0x430e7d(0x14a),'always':!![]},'workspace:open-directory':{'priority':'P2','category':'workspac'+'e','event':'workspac'+'e_open_d'+'irectory','phase':'request','always':!![]},'workspace:write-shared-context':{'priority':'P2','category':'workspac'+'e','event':_0x430e7d(0x179)+_0x430e7d(0x11b)+'_context'+_0x430e7d(0x10b),'phase':_0x430e7d(0x14a),'always':!![]},'openclaw:gateway-restart':{'priority':'P1','category':'gateway','event':'gateway_'+_0x430e7d(0x19c),'phase':_0x430e7d(0x14a),'always':!![]},'openclaw:open-cli-window':{'priority':'P2','category':_0x430e7d(0x151),'event':_0x430e7d(0x194)+_0x430e7d(0x10c),'phase':'request','always':!![]},'terminal:create':{'priority':'P2','category':_0x430e7d(0x19d),'event':'terminal'+'_create','phase':_0x430e7d(0x14a),'always':!![]},'terminal:close':{'priority':'P2','category':_0x430e7d(0x19d),'event':_0x430e7d(0x19d)+'_close','phase':_0x430e7d(0x14a),'always':!![]},'terminal:input':{'priority':'P2','category':'terminal','event':_0x430e7d(0x19d)+_0x430e7d(0x139),'phase':_0x430e7d(0x14a),'errorOnly':!![]},'terminal:resize':{'priority':'P2','category':_0x430e7d(0x19d),'event':_0x430e7d(0x19d)+_0x430e7d(0x14e),'phase':'request','errorOnly':!![]}},CONNECTOR_SAVE_CHANNEL_RE=/^config:connector:save-/;function hashValue(_0x19e1f5){const _0x3c8000=_0x430e7d;return createHash('sha256')[_0x3c8000(0x168)](String(_0x19e1f5??''))[_0x3c8000(0x111)](_0x3c8000(0x150))[_0x3c8000(0x133)](0x0,0xa);}function compactText(_0x2c08b3,_0x506975=USER_EVENT_PREVIEW_LENGTH){const _0x2fc8cb=_0x430e7d;return String(_0x2c08b3??'')[_0x2fc8cb(0x13d)](/\s+/g,'\x20')['trim']()['slice'](0x0,_0x506975);}function _0x3428(){const _0x556bd5=['error','always','window','stall','info','sessionK','143XdcHRD','folder_o','sessionI','outputSu','startup_','plugin','runId','d_file_d','skill_in','r_save','sage','_write','_window','agent_cr','observed','artifact','d_file_h','digest','failed','930EIxffg','cron','size','setting_','visibleE','inimize','ttings_u','status','e_shared','ose','ect','1071CPbQzE','paths','output','skill','date','tray_clo','filename','_once','ate','clipboar','key','trim','logs','object','create','filePath','oggle_ma','ist','file_rea','flat','string','slice','path','session_','41350XWhIHw','plugin_e','agentId','_input','ncyKey','open_ext','nts','replace','requestI','meta','pdate','lete','_delete','ession','eate','2872ISdXxZ','has','user-eve','skill_im','isable','request','fileName','chat','map','_resize','model_se','hex','gateway','window_t','ximize','window_c','category','content','rename','folder_c','type','tatus','errorOnl','self_ope','phase','skills_s','rror','115930woIojV','model','answer','file_dow','d_file_u','logs_exp','n_cancel','file_cho','update','errorMes','attachme','stringif','agent_up','duration','chat_abo','text','query','file_sel','_list','ernal_ur','eam','length','generate','kind','_reveal','workspac','cal','sessions','ove','ide','delete','338788OlCmno','agent','5613755NCRWrr','priority','skill_de','r_sessio','cron_rem','file','nt.log','captureI','ide_by_s','tory','event','settings','pin_upda','files','session','15nZZYNZ','uri','mmary','open_url','open_cli','get','skill_up','dels_upd','elete','chat_his','cron_upd','onfig_up','restart','terminal','d_files','mime','plugin_d','_hide','window_m','cron_run','306WOwkac','n_comple','64968LoxCbh','message','inputSum','isArray','succeede','n_start','mplete','se_setti','filter','ng_updat','name','connecto','336464FPbgyR','mary','port_zip','level','ort','ncident'];_0x3428=function(){return _0x556bd5;};return _0x3428();}function redactFileName(_0x52cd7b){const _0x48f778=_0x430e7d,_0x31ca3b=basename(String(_0x52cd7b||'')[_0x48f778(0x129)]());if(!_0x31ca3b)return'';const _0x83bcc0=extname(_0x31ca3b),_0x330ae5=_0x83bcc0?_0x31ca3b[_0x48f778(0x133)](0x0,-_0x83bcc0['length']):_0x31ca3b,_0x310da7=compactText(_0x330ae5,0x10);return(_0x310da7||_0x48f778(0x186))+'_'+hashValue(_0x31ca3b)+_0x83bcc0;}function summarizeAttachment(_0xcabbee){const _0x48c16a=_0x430e7d;if(!_0xcabbee||typeof _0xcabbee!=='object'){const _0x52142f=String(_0xcabbee||'');return{'type':_0x48c16a(0x186),'fileName':redactFileName(_0x52142f)};}const _0x611c73=_0xcabbee,_0x3d89d7=_0x611c73[_0x48c16a(0x14b)]||_0x611c73[_0x48c16a(0x124)]||_0x611c73[_0x48c16a(0xf2)]||_0x611c73[_0x48c16a(0x134)]||_0x611c73[_0x48c16a(0x191)]||'';return{'type':_0x611c73[_0x48c16a(0x159)]||_0x611c73[_0x48c16a(0x177)]||_0x48c16a(0x186),'mimeType':_0x611c73['mimeType']||_0x611c73[_0x48c16a(0xe1)]||undefined,'fileName':redactFileName(_0x3d89d7),'size':Number['isFinite'](_0x611c73[_0x48c16a(0x115)])?_0x611c73[_0x48c16a(0x115)]:undefined};}export function summarizeUserEventAttachments(_0x893f55={}){const _0x51924f=_0x430e7d,_0x39bc24=_0x893f55&&typeof _0x893f55==='object'?_0x893f55:{},_0x20bd58=[_0x39bc24[_0x51924f(0x12d)+'s'],_0x39bc24['files'],_0x39bc24[_0x51924f(0x16a)+'nts'],_0x39bc24[_0x51924f(0x11f)]][_0x51924f(0xf0)](Array['isArray']),_0x4fee31=_0x20bd58[_0x51924f(0x131)]()[_0x51924f(0x14d)](summarizeAttachment)[_0x51924f(0xf0)](Boolean);return{'count':_0x4fee31['length'],'types':[...new Set(_0x4fee31[_0x51924f(0x14d)](_0x23975f=>_0x23975f['mimeType']||_0x23975f[_0x51924f(0x159)])['filter'](Boolean))],'files':_0x4fee31[_0x51924f(0x133)](0x0,0xa),'truncated':_0x4fee31[_0x51924f(0x175)]>0xa};}function inferSessionKey(_0x48e531={}){const _0x507958=_0x430e7d;if(!_0x48e531||typeof _0x48e531!==_0x507958(0x12b))return undefined;return _0x48e531[_0x507958(0xff)+'ey']||_0x48e531[_0x507958(0x128)]||_0x48e531[_0x507958(0x102)+'d']||_0x48e531[_0x507958(0x18f)]?.[_0x507958(0x128)]||_0x48e531[_0x507958(0x13f)]?.[_0x507958(0xff)+'ey']||undefined;}function inferRunId(_0x3970ef={},_0x21e06c={}){const _0x220a74=_0x430e7d;if(_0x3970ef&&typeof _0x3970ef==='object'){const _0x50e993=_0x3970ef[_0x220a74(0x106)]||_0x3970ef[_0x220a74(0x13e)+'d']||_0x3970ef['idempote'+_0x220a74(0x13a)];if(_0x50e993)return _0x50e993;}if(_0x21e06c&&typeof _0x21e06c==='object')return _0x21e06c[_0x220a74(0x106)]||_0x21e06c[_0x220a74(0x13e)+'d']||undefined;return undefined;}function inferAgentId(_0x5d5772={},_0xd9eed3={}){const _0x56021b=_0x430e7d;if(_0x5d5772&&typeof _0x5d5772===_0x56021b(0x12b)){const _0x251cdd=_0x5d5772[_0x56021b(0x138)]||_0x5d5772['agent']||_0x5d5772['agent_id'];if(_0x251cdd)return _0x251cdd;}if(_0xd9eed3&&typeof _0xd9eed3===_0x56021b(0x12b))return _0xd9eed3[_0x56021b(0x138)]||_0xd9eed3[_0x56021b(0x180)]?.['id'];return undefined;}function inferInputSummary(_0x4f831f={}){const _0x4209b7=_0x430e7d;if(!_0x4f831f||typeof _0x4f831f!=='object')return undefined;const _0x8f0d0e=_0x4f831f[_0x4209b7(0xe9)]||_0x4f831f['prompt']||_0x4f831f['input']||_0x4f831f[_0x4209b7(0x156)]||_0x4f831f['text'];if(typeof _0x8f0d0e!==_0x4209b7(0x132)||!_0x8f0d0e[_0x4209b7(0x129)]())return undefined;return summarizeText(_0x8f0d0e,USER_EVENT_PREVIEW_LENGTH);}function inferOutputSummary(_0x42057f={}){const _0x549ba0=_0x430e7d;if(!_0x42057f||typeof _0x42057f!==_0x549ba0(0x12b))return undefined;const _0x266845=_0x42057f[_0x549ba0(0xe9)]||_0x42057f[_0x549ba0(0x16f)]||_0x42057f['content']||_0x42057f[_0x549ba0(0x120)]||_0x42057f[_0x549ba0(0x162)];if(typeof _0x266845!=='string'||!_0x266845[_0x549ba0(0x129)]())return undefined;return summarizeText(_0x266845,USER_EVENT_PREVIEW_LENGTH);}function inferVisibleError(_0x35675c,_0x514fcd){const _0x54216f=_0x430e7d;if(_0x35675c)return _0x35675c instanceof Error?_0x35675c['message']:String(_0x35675c);if(_0x514fcd&&typeof _0x514fcd==='object')return _0x514fcd[_0x54216f(0x169)+_0x54216f(0x10a)]||_0x514fcd[_0x54216f(0xe9)]||_0x514fcd[_0x54216f(0xfa)]?.[_0x54216f(0xe9)]||undefined;return undefined;}function normalizePolicy(_0x55d1f0){const _0x517ccd=_0x430e7d;if(CHANNEL_POLICIES[_0x55d1f0])return CHANNEL_POLICIES[_0x55d1f0];if(CONNECTOR_SAVE_CHANNEL_RE['test'](_0x55d1f0))return{'priority':'P1','category':_0x517ccd(0xf3)+'r','event':_0x517ccd(0xf3)+_0x517ccd(0x109),'phase':_0x517ccd(0x14a),'always':!![]};return null;}export function getUserOperationPolicy(_0x32a217){return normalizePolicy(String(_0x32a217||''));}function summarizeSafeIpcPayload(_0x1df031={}){const _0x4b0c06=_0x430e7d,_0x2a27c3=summarizePayload(_0x1df031,{'maxDepth':0x3,'textPreviewLength':0xa0});if(!_0x2a27c3||typeof _0x2a27c3!==_0x4b0c06(0x12b)||Array[_0x4b0c06(0xeb)](_0x2a27c3))return _0x2a27c3;const _0x9b70cc={..._0x2a27c3};for(const _0x1606f0 of['filePath'+'s',_0x4b0c06(0x18e),_0x4b0c06(0x16a)+'nts',_0x4b0c06(0x11f)]){if(_0x1606f0 in _0x9b70cc)_0x9b70cc[_0x1606f0]=summarizeUserEventAttachments(_0x1df031);}return _0x9b70cc;}export function createUserEventWriter({logsDir:_0x3ba77b,diagnosticsWriter:_0x3911c2}={}){const _0x4d2981=_0x430e7d;if(!_0x3ba77b)return null;const _0x14b5da=join(_0x3ba77b,'client',_0x4d2981(0x147)+_0x4d2981(0x187));!loggers[_0x4d2981(0x146)](_0x14b5da)&&loggers['set'](_0x14b5da,createFileLogger({'filePath':_0x14b5da,'context':_0x4d2981(0x147)+'nt','maxBytes':USER_EVENT_LOG_MAX_BYTES,'keepCount':USER_EVENT_LOG_KEEP_COUNT}));const _0x3cbaf3=loggers[_0x4d2981(0x195)](_0x14b5da);async function _0x4ab399(_0x3b3b1c={}){const _0x24c93d=_0x4d2981,_0x3ffc65=Number['isFinite'](_0x3b3b1c['ts'])?_0x3b3b1c['ts']:Date['now'](),_0x559452=_0x3b3b1c[_0x24c93d(0xf7)]||(_0x3b3b1c[_0x24c93d(0x11a)]===_0x24c93d(0x112)?_0x24c93d(0xfa):_0x24c93d(0xfe)),_0x504f9e=_0x3b3b1c['status']||_0x24c93d(0x10e),_0x1c4cac=_0x3b3b1c[_0x24c93d(0x18b)]||'user_eve'+'nt',_0x4810b7=_0x3b3b1c['category']||'user',_0x5d92bc=_0x3b3b1c[_0x24c93d(0xff)+'ey']||_0x3b3b1c[_0x24c93d(0x102)+'d'],_0x586ed8=_0x3b3b1c['runId'],_0x48e69f=_0x3b3b1c[_0x24c93d(0x138)],_0x199f99=_0x3b3b1c[_0x24c93d(0x117)+_0x24c93d(0x15f)],_0x29e14c=redactLogValue({'ts':_0x3ffc65,'priority':_0x3b3b1c[_0x24c93d(0x182)],'category':_0x4810b7,'event':_0x1c4cac,'status':_0x504f9e,'sessionKey':_0x5d92bc,'runId':_0x586ed8,'agentId':_0x48e69f,'message':compactText(_0x3b3b1c[_0x24c93d(0xe9)]||_0x1c4cac,USER_EVENT_PREVIEW_LENGTH),'inputSummary':_0x3b3b1c[_0x24c93d(0xea)+_0x24c93d(0xf5)],'outputSummary':_0x3b3b1c['outputSu'+_0x24c93d(0x192)],'attachments':_0x3b3b1c[_0x24c93d(0x16a)+'nts'],'visibleError':_0x199f99,'durationMs':_0x3b3b1c[_0x24c93d(0x16d)+'Ms'],'meta':_0x3b3b1c[_0x24c93d(0x13f)]});await _0x3cbaf3?.[_0x24c93d(0xfe)](JSON[_0x24c93d(0x16b)+'y'](_0x29e14c)),await _0x3911c2?.['writeEve'+'nt']({'ts':_0x3ffc65,'level':_0x559452,'category':_0x4810b7,'event':_0x1c4cac,'message':_0x3b3b1c[_0x24c93d(0xe9)]||_0x1c4cac,'sessionId':_0x5d92bc,'runId':_0x586ed8,'agentId':_0x48e69f,'durationMs':_0x3b3b1c[_0x24c93d(0x16d)+'Ms'],'meta':summarizePayload({'priority':_0x3b3b1c[_0x24c93d(0x182)],'status':_0x504f9e,'visibleError':_0x199f99,'inputSummary':_0x3b3b1c[_0x24c93d(0xea)+_0x24c93d(0xf5)],'outputSummary':_0x3b3b1c[_0x24c93d(0x103)+_0x24c93d(0x192)],'attachments':_0x3b3b1c[_0x24c93d(0x16a)+_0x24c93d(0x13c)],..._0x3b3b1c[_0x24c93d(0x13f)]},{'maxDepth':0x5,'textPreviewLength':DIAGNOSTIC_EVENT_PREVIEW_LENGTH})},{'captureIncident':_0x3b3b1c[_0x24c93d(0x188)+_0x24c93d(0xf9)]===![]?![]:_0x3b3b1c['captureI'+_0x24c93d(0xf9)]===!![]||_0x559452===_0x24c93d(0xfa)});}return{'filePath':_0x14b5da,'write':_0x4ab399,'fromIpc':async({channel:_0x6e84cb,payload:_0x3f43fb,result:_0x51396b,error:_0x3889e0,durationMs:_0x226bbf,status:_0x235f97})=>{const _0x1d1668=_0x4d2981,_0x1db58d=getUserOperationPolicy(_0x6e84cb);if(!_0x1db58d)return;const _0xb9f894=_0x235f97===_0x1d1668(0x112)||Boolean(_0x3889e0);if(_0x1db58d[_0x1d1668(0x15b)+'y']&&!_0xb9f894)return;if(!_0x1db58d[_0x1d1668(0xfb)]&&!_0xb9f894)return;const _0x52ab64=_0x235f97||(_0xb9f894?_0x1d1668(0x112):_0x1d1668(0xec)+'d');await _0x4ab399({'priority':_0x1db58d['priority'],'category':_0x1db58d[_0x1d1668(0x155)],'event':_0x1db58d[_0x1d1668(0x18b)]+'.'+_0x52ab64,'status':_0x52ab64,'level':_0xb9f894?_0x1d1668(0xfa):_0x1d1668(0xfe),'message':_0x6e84cb+'\x20'+_0x52ab64,'sessionKey':inferSessionKey(_0x3f43fb),'runId':inferRunId(_0x3f43fb,_0x51396b),'agentId':inferAgentId(_0x3f43fb,_0x51396b),'inputSummary':inferInputSummary(_0x3f43fb),'outputSummary':inferOutputSummary(_0x51396b),'attachments':summarizeUserEventAttachments(_0x3f43fb),'visibleError':inferVisibleError(_0x3889e0,_0x51396b),'durationMs':_0x226bbf,'captureIncident':![],'meta':{'channel':_0x6e84cb,'phase':_0x1db58d[_0x1d1668(0x15d)],'payload':summarizeSafeIpcPayload(_0x3f43fb),..._0xb9f894?{'error':summarizeError(_0x3889e0)}:{}}});}};}
@@ -0,0 +1 @@
1
+ (function(_0x423ee3,_0x37476f){const _0x272b91=_0x2c7a,_0x304997=_0x423ee3();while(!![]){try{const _0x12e69e=parseInt(_0x272b91(0x82))/0x1+parseInt(_0x272b91(0x76))/0x2*(-parseInt(_0x272b91(0x89))/0x3)+-parseInt(_0x272b91(0x7c))/0x4*(-parseInt(_0x272b91(0x8b))/0x5)+-parseInt(_0x272b91(0x7b))/0x6*(-parseInt(_0x272b91(0x7e))/0x7)+parseInt(_0x272b91(0x6f))/0x8+-parseInt(_0x272b91(0x80))/0x9*(-parseInt(_0x272b91(0x85))/0xa)+parseInt(_0x272b91(0x87))/0xb*(-parseInt(_0x272b91(0x7f))/0xc);if(_0x12e69e===_0x37476f)break;else _0x304997['push'](_0x304997['shift']());}catch(_0x343059){_0x304997['push'](_0x304997['shift']());}}}(_0x19d0,0xaae39));import{existsSync}from'node:fs';import{cp,mkdir,readFile,readdir,rm,stat,writeFile}from'node:fs/promises';import{basename,dirname,join,relative}from'node:path';export function asRecord(_0x381fb9){const _0xfe4862=_0x2c7a;return _0x381fb9&&typeof _0x381fb9===_0xfe4862(0x72)&&!Array[_0xfe4862(0x7a)](_0x381fb9)?_0x381fb9:{};}export function asStringArray(_0x1b6fa5){const _0x48249d=_0x2c7a;return Array['isArray'](_0x1b6fa5)?_0x1b6fa5['filter'](_0x5fd18e=>typeof _0x5fd18e===_0x48249d(0x70)&&_0x5fd18e[_0x48249d(0x6e)]())[_0x48249d(0x83)](_0x99bd80=>_0x99bd80[_0x48249d(0x6e)]()):[];}export function dedupeStrings(_0x37bc2a){const _0x117f6c=_0x2c7a;return[...new Set(_0x37bc2a[_0x117f6c(0x86)](Boolean))];}export function getTrimmedString(_0x322e20){const _0x388c18=_0x2c7a;return typeof _0x322e20===_0x388c18(0x70)?_0x322e20[_0x388c18(0x6e)]():'';}export async function readJson(_0x3f7a69,_0xdd1777={}){const _0x18b0b6=_0x2c7a;try{return JSON[_0x18b0b6(0x77)](await readFile(_0x3f7a69,_0x18b0b6(0x81)));}catch{return _0xdd1777;}}export async function writeJson(_0x407a9e,_0x49dc0a){const _0x165f1a=_0x2c7a;await mkdir(dirname(_0x407a9e),{'recursive':!![]}),await writeFile(_0x407a9e,JSON[_0x165f1a(0x75)+'y'](_0x49dc0a,null,0x2)+'\x0a',_0x165f1a(0x81));}export async function copyDirFresh(_0x215653,_0x16071b){await rm(_0x16071b,{'recursive':!![],'force':!![],'maxRetries':0x5,'retryDelay':0x96}),await mkdir(dirname(_0x16071b),{'recursive':!![]}),await cp(_0x215653,_0x16071b,{'recursive':!![]});}export async function ensureDir(_0x22e033){await mkdir(_0x22e033,{'recursive':!![]});}function _0x2c7a(_0x3da0d5,_0x3de123){_0x3da0d5=_0x3da0d5-0x6e;const _0x19d00a=_0x19d0();let _0x2c7aac=_0x19d00a[_0x3da0d5];return _0x2c7aac;}export function pathExists(_0x525a0b){return existsSync(_0x525a0b);}export async function listDirs(_0x58a9ad){const _0x9714a0=_0x2c7a;try{const _0xcb2a53=await readdir(_0x58a9ad,{'withFileTypes':!![],'encoding':_0x9714a0(0x81)});return _0xcb2a53[_0x9714a0(0x86)](_0x38f617=>_0x38f617['isDirect'+_0x9714a0(0x74)]())[_0x9714a0(0x83)](_0xb790c6=>_0xb790c6['name']);}catch{return[];}}export async function getPackageMetadata(_0x2271a3){const _0x1474d=_0x2c7a,_0x229451=await readJson(join(_0x2271a3,_0x1474d(0x88)+_0x1474d(0x73)),{}),_0x25ad49=asRecord(_0x229451[_0x1474d(0x79)]);return{'name':getTrimmedString(_0x229451[_0x1474d(0x84)])||basename(_0x2271a3),'version':getTrimmedString(_0x229451[_0x1474d(0x71)])||'0.0.0','pluginId':getTrimmedString(_0x25ad49['id'])||getTrimmedString(_0x229451[_0x1474d(0x79)+'Id'])||basename(_0x2271a3)};}function _0x19d0(){const _0x4b5dfc=['replaceA','openclaw','isArray','485808AxvUIG','188ypqwJJ','isFile','84bUlPTF','96MJbJuu','65115FpAZdf','utf8','1132069LuskwT','map','name','140nCHFzd','filter','3637942hWFfYQ','package.','6SGABfv','.plugin.','99955VenEhO','trim','10969832dbQFAg','string','version','object','json','ory','stringif','1170044NwiQDs','parse'];_0x19d0=function(){return _0x4b5dfc;};return _0x19d0();}export async function readPluginManifest(_0x4900ea){const _0x283b79=_0x2c7a,_0x783b73=join(_0x4900ea,_0x283b79(0x79)+_0x283b79(0x8a)+'json'),_0x5e2fc6=await readJson(_0x783b73,{});return asRecord(_0x5e2fc6);}export async function hasFile(_0x58464e){const _0x1e13d5=_0x2c7a;try{const _0x163508=await stat(_0x58464e);return _0x163508[_0x1e13d5(0x7d)]();}catch{return![];}}export function toRuntimeRelative(_0x467171,_0x3636b5){const _0xfede4d=_0x2c7a;return relative(_0x467171,_0x3636b5)[_0xfede4d(0x78)+'ll']('\x5c','/');}
@@ -0,0 +1 @@
1
+ const _0x102b41=_0x4a24;function _0x4a24(_0x90b80e,_0x5cc52a){_0x90b80e=_0x90b80e-0x108;const _0xb9aa55=_0xb9aa();let _0x4a2458=_0xb9aa55[_0x90b80e];return _0x4a2458;}(function(_0x5f342f,_0x26d610){const _0x4c2548=_0x4a24,_0x536374=_0x5f342f();while(!![]){try{const _0x451757=parseInt(_0x4c2548(0x160))/0x1+parseInt(_0x4c2548(0x17d))/0x2+parseInt(_0x4c2548(0x1ce))/0x3*(parseInt(_0x4c2548(0x122))/0x4)+parseInt(_0x4c2548(0x1bc))/0x5*(-parseInt(_0x4c2548(0x1b7))/0x6)+parseInt(_0x4c2548(0x1dd))/0x7+-parseInt(_0x4c2548(0x1af))/0x8+parseInt(_0x4c2548(0x153))/0x9;if(_0x451757===_0x26d610)break;else _0x536374['push'](_0x536374['shift']());}catch(_0x541e44){_0x536374['push'](_0x536374['shift']());}}}(_0xb9aa,0x3efd1));import{randomBytes}from'node:crypto';import{existsSync,unwatchFile,watchFile}from'node:fs';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import _0x47195b,{portNumbers}from'get-port';import{ensureShellStateDirs,getConfigPaths,readJsonFile,writeJsonFile}from'@wujie-shell/config';import{asRecord,asStringArray,dedupeStrings,getTrimmedString,writeJson}from'../common/utils.mjs';import{loadRuntimeInfo}from'../runtime/index.mjs';import{createRuntimeLogger,summarizeRuntimeManifest}from'../common/runtime-logger.mjs';import{syncRuntimeManifestPlugins}from'../runtime/plugin-sync.mjs';const MEMORY_CORE_PLUGIN_ID=_0x102b41(0x155)+_0x102b41(0x1ad),ACTIVE_MEMORY_PLUGIN_ID='active-m'+_0x102b41(0x184),ASK_USER_QUESTION_PLUGIN_ID='ask-user'+_0x102b41(0x12f)+'n',AUTO_RELOAD_EXTERNAL_CONFIG=process.env.WUJIE_SHELL_CONFIG_AUTO_RELOAD==='1';function createToken(){const _0x8af18f=_0x102b41;return randomBytes(0x18)[_0x8af18f(0x152)](_0x8af18f(0x10d));}function createProviderModelConfig(_0x763745,_0x331cfb=![]){const _0x766af3=_0x102b41;return{'id':_0x763745,'name':_0x763745,'reasoning':!![],'input':_0x331cfb?[_0x766af3(0x19c),_0x766af3(0x15c)]:[_0x766af3(0x19c)],'cost':{'input':0x0,'output':0x0,'cacheRead':0x0,'cacheWrite':0x0},'contextWindow':0x3e800,'maxTokens':0x3e800};}function createProviderConfig(_0x141ed8){const _0x3b77a8=_0x102b41;return{'apiKey':_0x141ed8[_0x3b77a8(0x10e)],'api':_0x141ed8[_0x3b77a8(0x196)]===_0x3b77a8(0x165)+'c'?_0x3b77a8(0x165)+_0x3b77a8(0x1b4)+'es':'openai-c'+_0x3b77a8(0x1ac)+'ns',..._0x141ed8[_0x3b77a8(0x1c5)]?{'baseUrl':_0x141ed8[_0x3b77a8(0x1c5)]}:{},'models':[createProviderModelConfig(_0x141ed8[_0x3b77a8(0x144)+'e'])]};}function isConfiguredAskUserQuestionPlugin(_0x322d0f,_0xc1156f){const _0x1dffef=_0x102b41;if(getTrimmedString(_0x322d0f['pluginId'])!==ASK_USER_QUESTION_PLUGIN_ID)return!![];const _0x5bdcaf=new Set(_0xc1156f[_0x1dffef(0x1c1)]?.[_0x1dffef(0x1de)+'ecs']??[]),_0x3aeeac=new Set((_0xc1156f[_0x1dffef(0x1c1)]?.[_0x1dffef(0x156)+_0x1dffef(0x168)+_0x1dffef(0x18e)]??[])[_0x1dffef(0x127)](_0x187c29=>_0x1dffef(0x12d)+_0x187c29));return[_0x322d0f[_0x1dffef(0x146)],_0x322d0f['spec'],_0x322d0f[_0x1dffef(0x156)+_0x1dffef(0x16a)],_0x322d0f[_0x1dffef(0x156)+'Name']][_0x1dffef(0x174)](_0x41463a=>{const _0x5b58c4=_0x1dffef,_0x180e22=getTrimmedString(_0x41463a);return _0x5bdcaf[_0x5b58c4(0x113)](_0x180e22)||_0x3aeeac[_0x5b58c4(0x113)](_0x180e22);});}function getConfiguredRuntimePlugins(_0x462f66,_0x20ba4d){const _0xf5d4c2=_0x102b41;return(_0x462f66??[])[_0xf5d4c2(0x1a4)](_0x5d4787=>isConfiguredAskUserQuestionPlugin(_0x5d4787,_0x20ba4d));}function removeAskUserQuestionPluginConfig(_0x3bb9da){const _0x319e40=_0x102b41,_0x427fa6={...asRecord(_0x3bb9da)},_0x3e9f22={...asRecord(_0x427fa6[_0x319e40(0x16e)])},_0x28e7a6=ASK_USER_QUESTION_PLUGIN_ID in _0x3e9f22;delete _0x3e9f22[ASK_USER_QUESTION_PLUGIN_ID];const _0x1eb58f=Array[_0x319e40(0x1d0)](_0x427fa6[_0x319e40(0x195)])?_0x427fa6[_0x319e40(0x195)][_0x319e40(0x1a4)](_0x152b81=>_0x152b81!==ASK_USER_QUESTION_PLUGIN_ID):[],_0x283d67=Array[_0x319e40(0x1d0)](_0x427fa6[_0x319e40(0x195)])&&_0x1eb58f[_0x319e40(0x13e)]!==_0x427fa6[_0x319e40(0x195)][_0x319e40(0x13e)];return _0x427fa6[_0x319e40(0x16e)]=_0x3e9f22,_0x427fa6[_0x319e40(0x195)]=_0x1eb58f,{'plugins':_0x427fa6,'changed':_0x28e7a6||_0x283d67};}function createRuntimePluginBootstrap(_0x3fe4d4,_0x9ade1e){const _0x4b2db1=_0x102b41,_0xd6a72b={},_0x2173e6=[];for(const _0x3be638 of getConfiguredRuntimePlugins(_0x3fe4d4,_0x9ade1e)){const _0x185c8f=getTrimmedString(_0x3be638[_0x4b2db1(0x146)]);if(!_0x185c8f)continue;_0xd6a72b[_0x185c8f]={'enabled':!![]},_0x2173e6[_0x4b2db1(0x1d5)](_0x185c8f);}return!_0xd6a72b[MEMORY_CORE_PLUGIN_ID]&&(_0xd6a72b[MEMORY_CORE_PLUGIN_ID]={'enabled':!![],'config':{'dreaming':{'enabled':!![]}}}),!_0xd6a72b[ACTIVE_MEMORY_PLUGIN_ID]&&(_0xd6a72b[ACTIVE_MEMORY_PLUGIN_ID]={'enabled':!![]}),{'entries':_0xd6a72b,'allow':dedupeStrings([..._0x2173e6,MEMORY_CORE_PLUGIN_ID,ACTIVE_MEMORY_PLUGIN_ID]),'bundledDiscovery':'compat'};}function _0xb9aa(){const _0x5bdfbf=['id\x20is\x20re','penclaw\x20','dmScope','tatePath','\x20skill\x20c','all','hex','apiKey','current','servers','ired','ModelSet','has','onfig\x20al','ports','mcp','model\x20co','config\x20s','stateDir','merge','ers','ailed','projectR','odel\x20del','already\x20','elPrimar','skills','40SDwwlU','fig','onfig\x20up','ver\x20upda','dels','map','onfig\x20ch','self-ope','session','customMo','updated','local:','gatewayS','-questio','er\x20name\x20','runtime\x20','plugin\x20i','pdated\x20w','ompleted','mode','ConfigPa','missing;','utf8','eUrl','ttings\x20u','nChange','models','enabled','length','defaultM','odel\x20nam','yName','sanitize','config\x20f','modelNam','odel','pluginId','boolean','config\x20c','onfig\x20de','dels\x20alr','config','oot','nel-peer','restart','ded\x20for\x20','Version','default','toString','745605EpTzyu','modelBas','memory-c','resolved','local','is\x20requi','dataDir','odel\x20sav','created','image','skill\x20id','model\x20se','agents','88698AxfpiH','ver\x20dele','lastGood','openai','custom\x20m','anthropi','last-goo','error','LocalPlu','openai-c','Spec','d\x20opencl','estart','eady\x20cur','entries','slice','restartO','ated;\x20de','deleted','nitial\x20o','some','plugins','ateway\x20r','auto','logsDir','ent\x20ensu','uired','defaults','stringif','434718pwGJaZ','\x20plugin\x20','memory','provider','e\x20is\x20req','aw\x20confi','cheduled','emory','initial\x20','imageMod','primary','Name','\x20creatin','workspac','gateway\x20','nfig\x20alr','mcp_serv','ginPaths','claw\x20con','nfig\x20syn','ced','now','tings','exists','allow','protocol','ensure\x20i','ernal\x20ch','per-chan','reload\x20s','ile\x20watc','text','idle','plugin\x20c','ted','info','\x20mcp\x20ser','tarted','d\x20is\x20req','filter','ttings\x20a','persiste','pdated','leted','rated\x20mo','mtimeMs','fig\x20chan','ompletio','ore','toISOStr','2533536PPCPed','\x20config\x20','extraDir','g\x20writte','indexOf','c-messag','updated\x20','channel\x20','26646suhhoF','keys','red','manifest','\x20is\x20requ','495KWUgHe','modelId','ithout\x20g','connecto','quired','openclaw','shellUiS','model','256kb','baseUrl','deviceId','environm','mcpServe','ync','assign','plugins\x20','nto\x20open','function','86715owJKvX','rrent','isArray','anged','configPa','onboard','rnal\x20wri','push','fallback','full','channels','product\x20','entityPa','changed','info\x20loa','2354800SXbjHT','pluginSp','mcp\x20serv','tart','synced\x20i'];_0xb9aa=function(){return _0x5bdfbf;};return _0xb9aa();}function createInitialOpenClawConfig(_0xf01b60,_0x45393b){const _0x4329c8=_0x102b41,_0x3a053d=new Date()[_0x4329c8(0x1ae)+'ing'](),_0x3bab7e=join(_0xf01b60[_0x4329c8(0x159)],_0x4329c8(0x18a)+'e'),_0x1a617b=asRecord(_0xf01b60[_0x4329c8(0x13c)]),_0x3b699d=getTrimmedString(_0x1a617b[_0x4329c8(0x13f)+_0x4329c8(0x145)]),_0x35014d={'workspace':_0x3bab7e,'memorySearch':{'enabled':!![],'sources':[_0x4329c8(0x17f)],'provider':_0x4329c8(0x177)},'compaction':{'memoryFlush':{'enabled':!![],'forceFlushTranscriptBytes':_0x4329c8(0x1c4),'softThresholdTokens':0x30d40}}};return _0x3b699d&&(_0x35014d[_0x4329c8(0x1c3)]={'primary':_0x3b699d}),{'meta':{'lastTouchedVersion':_0x45393b['openclaw'+_0x4329c8(0x150)],'lastTouchedAt':_0x3a053d},'wizard':{'lastRunAt':_0x3a053d,'lastRunVersion':_0x45393b[_0x4329c8(0x1c1)+_0x4329c8(0x150)],'lastRunCommand':_0x4329c8(0x1d3),'lastRunMode':_0x4329c8(0x157)},'models':{'mode':_0x4329c8(0x11a),'providers':asRecord(_0x1a617b[_0x4329c8(0x180)+'s'])},'agents':{'defaults':_0x35014d},'tools':{'profile':_0x4329c8(0x1d7)},'plugins':createRuntimePluginBootstrap(_0x45393b[_0x4329c8(0x175)],_0xf01b60),'skills':{'load':{'extraDirs':[_0x4329c8(0x121)]}},'session':{'dmScope':_0x4329c8(0x199)+'nel-peer','reset':{'mode':_0x4329c8(0x19d)}}};}function hasMeaningfulProductModels(_0x3525a8){const _0x3d7f0b=_0x102b41,_0x257ecb=asRecord(_0x3525a8[_0x3d7f0b(0x13c)]);return Object[_0x3d7f0b(0x1b8)](asRecord(_0x257ecb['provider'+'s']))[_0x3d7f0b(0x13e)]>0x0||Boolean(getTrimmedString(_0x257ecb[_0x3d7f0b(0x13f)+_0x3d7f0b(0x145)]));}function summarizeOpenClawConfig(_0x1b56e8){const _0x4c8b06=_0x102b41,_0xc791a0=asRecord(_0x1b56e8[_0x4c8b06(0x13c)]),_0x238c2c=asRecord(_0xc791a0[_0x4c8b06(0x180)+'s']),_0x25126e=asRecord(_0x1b56e8[_0x4c8b06(0x15f)]),_0x400f40=asRecord(_0x25126e['defaults']),_0x2ffc19=asRecord(_0x400f40[_0x4c8b06(0x1c3)]),_0x584e5b=asRecord(_0x1b56e8[_0x4c8b06(0x175)]),_0x597998=asRecord(_0x584e5b['entries']),_0x3b9fe4=asRecord(_0x1b56e8['skills']),_0x32a771=asRecord(_0x3b9fe4['load']),_0xe309ab=asRecord(_0x1b56e8['session']),_0x2405ef=Array['isArray'](_0x32a771['extraDir'+'s'])?_0x32a771[_0x4c8b06(0x1b1)+'s']:[];return{'providerCount':Object[_0x4c8b06(0x1b8)](_0x238c2c)['length'],'defaultModel':getTrimmedString(_0x2ffc19[_0x4c8b06(0x187)]),'pluginEntryCount':Object[_0x4c8b06(0x1b8)](_0x597998)[_0x4c8b06(0x13e)],'pluginAllowCount':Array[_0x4c8b06(0x1d0)](_0x584e5b[_0x4c8b06(0x195)])?_0x584e5b['allow'][_0x4c8b06(0x13e)]:0x0,'skillExtraDirCount':_0x2405ef[_0x4c8b06(0x13e)],'sessionDmScope':getTrimmedString(_0xe309ab[_0x4c8b06(0x109)])};}function isSameJson(_0x225be6,_0x39d9b3){const _0x47d082=_0x102b41;return JSON[_0x47d082(0x17c)+'y'](_0x225be6)===JSON['stringif'+'y'](_0x39d9b3);}function getCustomModelsFromConfig(_0x232e26){const _0x52a4fe=_0x102b41,_0x196515=asRecord(_0x232e26[_0x52a4fe(0x13c)]);return Array['isArray'](_0x196515['customMo'+_0x52a4fe(0x126)])?_0x196515[_0x52a4fe(0x12b)+'dels']:[];}function readOpenClawMcpServersFromConfig(_0x3b95c4){const _0x6325a3=_0x102b41,_0x49e26b=asRecord(_0x3b95c4[_0x6325a3(0x116)]),_0x7d2a91=[asRecord(_0x49e26b['servers']),asRecord(_0x3b95c4['mcpServe'+'rs']),asRecord(_0x3b95c4['mcp_serv'+_0x6325a3(0x11b)])];return Object[_0x6325a3(0x1ca)]({},..._0x7d2a91);}function writeOpenClawMcpServersToConfig(_0x15c8f3,_0x479c5e){const _0x27527e=_0x102b41,_0x5cffa9=asRecord(_0x15c8f3[_0x27527e(0x116)]);_0x5cffa9[_0x27527e(0x110)]=_0x479c5e,_0x15c8f3['mcp']=_0x5cffa9,delete _0x15c8f3[_0x27527e(0x1c8)+'rs'],delete _0x15c8f3[_0x27527e(0x18d)+_0x27527e(0x11b)];}function syncProductModels(_0x2e4e92,_0x2791ac){const _0x209ba3=_0x102b41;if(!hasMeaningfulProductModels(_0x2791ac))return{'config':_0x2e4e92,'changed':![]};let _0x105012=![];const _0x578f10=asRecord(_0x2791ac[_0x209ba3(0x13c)]),_0x5b19b8=asRecord(_0x578f10[_0x209ba3(0x180)+'s']),_0x5aae6c=getTrimmedString(_0x578f10[_0x209ba3(0x13f)+_0x209ba3(0x145)]),_0x3246a7=asRecord(_0x2e4e92['models']),_0x5bbfaf=asRecord(_0x3246a7['provider'+'s']);for(const [_0x90ec,_0x412582]of Object['entries'](_0x5b19b8)){const _0x2ed70d=asRecord(_0x5bbfaf[_0x90ec]),_0x45975d=asRecord(_0x412582);JSON[_0x209ba3(0x17c)+'y'](_0x2ed70d)!==JSON[_0x209ba3(0x17c)+'y'](_0x45975d)&&(_0x5bbfaf[_0x90ec]=_0x45975d,_0x105012=!![]);}_0x3246a7['mode']!=='merge'&&(_0x3246a7[_0x209ba3(0x135)]='merge',_0x105012=!![]);_0x3246a7[_0x209ba3(0x180)+'s']!==_0x5bbfaf&&(_0x3246a7['provider'+'s']=_0x5bbfaf,_0x105012=!![]);_0x2e4e92[_0x209ba3(0x13c)]!==_0x3246a7&&(_0x2e4e92[_0x209ba3(0x13c)]=_0x3246a7,_0x105012=!![]);if(_0x5aae6c){const _0xfee867=asRecord(_0x2e4e92[_0x209ba3(0x15f)]),_0x309164=asRecord(_0xfee867[_0x209ba3(0x17b)]),_0x253a94=asRecord(_0x309164[_0x209ba3(0x1c3)]);_0x253a94['primary']!==_0x5aae6c&&(_0x309164[_0x209ba3(0x1c3)]={..._0x253a94,'primary':_0x5aae6c},_0xfee867['defaults']=_0x309164,_0x2e4e92['agents']=_0xfee867,_0x105012=!![]);}return{'config':_0x2e4e92,'changed':_0x105012};}export function createConfigController(_0x41ec54){const _0x572919=_0x102b41,_0x1b08d1=getConfigPaths(_0x41ec54),_0x24d333=createRuntimeLogger(_0x1b08d1,_0x572919(0x14b));let _0x120d66=![],_0x2c8a47=0x0,_0x20c67d=null,_0x57e33d=null,_0x4e9ff0=null;function _0x1d7209(){const _0x13e4af=_0x572919;return _0x1b08d1[_0x13e4af(0x1d2)+'th'];}function _0x24e3bb(){return _0x1b08d1['stateDir'];}function _0x4e8ea0(){const _0x47c95d=_0x572919;return _0x1b08d1[_0x47c95d(0x1c6)+_0x47c95d(0x1da)+'th'];}async function _0x26ba24(){const _0x26c955=_0x572919;await ensureShellStateDirs(_0x41ec54),process.env.OPENCLAW_STATE_DIR=_0x1b08d1[_0x26c955(0x119)],process.env.OPENCLAW_CONFIG_PATH=_0x1b08d1[_0x26c955(0x1d2)+'th'],_0x24d333?.[_0x26c955(0x1a0)]('openclaw'+_0x26c955(0x1b0)+_0x26c955(0x1c7)+_0x26c955(0x179)+_0x26c955(0x1b9),{'stateDir':_0x1b08d1[_0x26c955(0x119)],'configPath':_0x1b08d1['configPa'+'th'],'logsDir':_0x1b08d1[_0x26c955(0x178)]});}async function _0x539258(){const _0x363989=_0x572919,_0x2ccb43=Date[_0x363989(0x192)]();_0x24d333?.[_0x363989(0x1a0)](_0x363989(0x197)+_0x363989(0x173)+'penclaw\x20'+_0x363989(0x118)+_0x363989(0x1a2),{'configPath':_0x1b08d1['configPa'+'th'],'stateDir':_0x1b08d1[_0x363989(0x119)]});try{await _0x26ba24();const _0x44d371=await loadRuntimeInfo(_0x41ec54[_0x363989(0x11d)+'oot']);_0x24d333?.['info'](_0x363989(0x131)+_0x363989(0x1dc)+_0x363989(0x14f)+_0x363989(0x118)+_0x363989(0x1c9),{'runtimeRoot':_0x44d371['runtimeR'+_0x363989(0x14c)],'manifest':summarizeRuntimeManifest(_0x44d371[_0x363989(0x1ba)])});if(!existsSync(_0x1b08d1[_0x363989(0x1d2)+'th'])){const _0x5912a9=createInitialOpenClawConfig(_0x41ec54,_0x44d371);_0x24d333?.[_0x363989(0x1a0)]('initial\x20'+_0x363989(0x1c1)+_0x363989(0x1b0)+_0x363989(0x137)+_0x363989(0x189)+'g',{'configPath':_0x1b08d1['configPa'+'th'],'config':summarizeOpenClawConfig(_0x5912a9)}),_0x1a3e83();const _0x2a82cd=await _0x39f81e(_0x5912a9,_0x363989(0x185)+_0x363989(0x1c1)+_0x363989(0x1b0)+_0x363989(0x15b));await writeJson(_0x1b08d1['lastGood'+_0x363989(0x136)+'th'],_0x2a82cd),_0x24d333?.[_0x363989(0x1a0)](_0x363989(0x166)+_0x363989(0x16b)+_0x363989(0x182)+_0x363989(0x1b2)+'n',{'path':_0x1b08d1[_0x363989(0x162)+_0x363989(0x136)+'th'],'reason':_0x363989(0x185)+_0x363989(0x1c1)+'\x20config\x20'+_0x363989(0x15b)});}else _0x24d333?.['info'](_0x363989(0x185)+'openclaw'+_0x363989(0x1b0)+_0x363989(0x194),{'configPath':_0x1b08d1['configPa'+'th']}),await _0x2df5ee();await _0x4c8e10(),await _0x1f7485(),_0x24d333?.[_0x363989(0x1a0)](_0x363989(0x197)+_0x363989(0x173)+_0x363989(0x108)+_0x363989(0x148)+_0x363989(0x134),{'durationMs':Date[_0x363989(0x192)]()-_0x2ccb43});}catch(_0x187405){_0x24d333?.[_0x363989(0x167)](_0x363989(0x197)+'nitial\x20o'+_0x363989(0x108)+'config\x20f'+_0x363989(0x11c),{'durationMs':Date[_0x363989(0x192)]()-_0x2ccb43,'error':_0x187405});throw _0x187405;}}async function _0x52b766(){return await _0x539258(),asRecord(await readJsonFile(_0x1b08d1['configPa'+'th'],{}));}async function _0x1a823c(){const _0x4d5b6f=_0x572919;return asRecord(await readJsonFile(_0x1b08d1[_0x4d5b6f(0x1d2)+'th'],{}));}async function _0x58da5d(){const _0x313497=_0x572919;return asRecord(await readJsonFile(_0x1b08d1[_0x313497(0x1c2)+'tatePath'],{}));}async function _0x5dc987(_0x57aff3){const _0x3246ce=_0x572919,_0x585777=asRecord(_0x57aff3);return await writeJson(_0x1b08d1[_0x3246ce(0x1c2)+_0x3246ce(0x10a)],_0x585777),_0x585777;}async function _0x341d3e(){const _0x260498=_0x572919,[_0x5639d6,_0x2297dc]=await Promise[_0x260498(0x10c)]([_0x1a823c(),_0x58da5d()]);return{..._0x5639d6,'connectors':asRecord(_0x2297dc[_0x260498(0x1bf)+'rs'])};}async function _0x2df5ee(){const _0x266905=_0x572919,_0x2bcc84=await readJsonFile(_0x1b08d1[_0x266905(0x1d2)+'th'],{}),_0x12b8f4=asRecord(_0x2bcc84);!isSameJson(_0x2bcc84,_0x12b8f4)&&(_0x1a3e83(),await _0x39f81e(_0x12b8f4,_0x266905(0x1c1)+_0x266905(0x1b0)+_0x266905(0x142)+'d'),await writeJson(_0x1b08d1[_0x266905(0x162)+'ConfigPa'+'th'],_0x12b8f4),_0x24d333?.['info']('last-goo'+_0x266905(0x16b)+_0x266905(0x182)+_0x266905(0x1b2)+'n',{'path':_0x1b08d1[_0x266905(0x162)+_0x266905(0x136)+'th'],'reason':_0x266905(0x1c1)+_0x266905(0x1b0)+_0x266905(0x142)+'d'}));}async function _0x39f81e(_0x4aae3c,_0x47c975=_0x572919(0x1c1)+_0x572919(0x1b0)+'written'){const _0x554521=_0x572919,_0x2ebb56=asRecord(_0x4aae3c);return await mkdir(dirname(_0x1b08d1[_0x554521(0x1d2)+'th']),{'recursive':!![]}),await writeFile(_0x1b08d1[_0x554521(0x1d2)+'th'],JSON[_0x554521(0x17c)+'y'](_0x2ebb56,null,0x2)+'\x0a',_0x554521(0x138)),_0x24d333?.[_0x554521(0x1a0)](_0x47c975,{'configPath':_0x1b08d1[_0x554521(0x1d2)+'th'],'config':summarizeOpenClawConfig(_0x2ebb56)}),_0x2ebb56;}async function _0x1f7485(){const _0x403613=_0x572919,_0x2d6946=await loadRuntimeInfo(_0x41ec54['projectR'+'oot']),_0x146f30=await _0x1a823c(),_0x478392=getConfiguredRuntimePlugins(_0x2d6946[_0x403613(0x175)],_0x41ec54),_0x610b9f=syncRuntimeManifestPlugins(_0x146f30[_0x403613(0x175)],_0x478392),_0x9c98d6=_0x478392[_0x403613(0x174)](_0x2fda5c=>getTrimmedString(_0x2fda5c[_0x403613(0x146)])===ASK_USER_QUESTION_PLUGIN_ID),_0x86a00a=_0x9c98d6?_0x610b9f:removeAskUserQuestionPluginConfig(_0x610b9f[_0x403613(0x175)]);_0x610b9f[_0x403613(0x1db)]||_0x86a00a[_0x403613(0x1db)]||!_0x146f30[_0x403613(0x175)]?(_0x146f30[_0x403613(0x175)]=_0x86a00a[_0x403613(0x175)],_0x1a3e83(),await _0x39f81e(_0x146f30,_0x403613(0x131)+_0x403613(0x1cb)+_0x403613(0x1e1)+_0x403613(0x1cc)+_0x403613(0x18f)+_0x403613(0x123)),_0x24d333?.[_0x403613(0x1a0)](_0x403613(0x131)+_0x403613(0x19e)+_0x403613(0x128)+_0x403613(0x1d1),{'runtimePluginCount':_0x478392[_0x403613(0x13e)],'config':summarizeOpenClawConfig(_0x146f30)})):_0x24d333?.[_0x403613(0x1a0)](_0x403613(0x131)+'plugin\x20c'+_0x403613(0x114)+'ready\x20cu'+_0x403613(0x1cf),{'runtimePluginCount':_0x478392[_0x403613(0x13e)]});}async function _0x4c8e10(){const _0x321634=_0x572919,_0x25105c=await _0x1a823c(),_0x1fe876=syncProductModels(_0x25105c,_0x41ec54);if(_0x1fe876[_0x321634(0x1db)]){_0x1a3e83();const _0x18d1c8=await _0x39f81e(_0x1fe876['config'],_0x321634(0x1d9)+_0x321634(0x117)+_0x321634(0x190)+'ced');await writeJsonFile(_0x1b08d1[_0x321634(0x162)+'ConfigPa'+'th'],_0x18d1c8),_0x24d333?.[_0x321634(0x1a0)](_0x321634(0x1d9)+_0x321634(0x117)+_0x321634(0x190)+_0x321634(0x191),{'config':summarizeOpenClawConfig(_0x1fe876[_0x321634(0x14b)])});}else _0x24d333?.[_0x321634(0x1a0)](_0x321634(0x1d9)+_0x321634(0x117)+_0x321634(0x18c)+_0x321634(0x16d)+'rent',{'hasProductModels':hasMeaningfulProductModels(_0x41ec54)});}async function _0x1a7468(){const _0x2a9d44=_0x572919;await _0x539258();if(_0x4e9ff0)return _0x4e9ff0;const _0x44dc01=await _0x47195b({'port':portNumbers(_0x41ec54[_0x2a9d44(0x115)]['gatewayS'+_0x2a9d44(0x1e0)],_0x41ec54[_0x2a9d44(0x115)][_0x2a9d44(0x12e)+_0x2a9d44(0x1e0)]+0x63)});return _0x4e9ff0={'token':createToken(),'port':_0x44dc01},_0x4e9ff0;}async function _0x26e6af(){const _0x68aa31=_0x572919,_0x3b90ab=await _0x52b766(),_0x1157f0=asRecord(_0x3b90ab[_0x68aa31(0x15f)]),_0x56e475=asRecord(_0x1157f0[_0x68aa31(0x17b)]),_0x58fe80=asRecord(_0x56e475[_0x68aa31(0x1c3)]),_0x3cf79e=getTrimmedString(_0x58fe80[_0x68aa31(0x187)]),_0x339931=_0x3cf79e[_0x68aa31(0x1b3)]('/'),_0x2f064e=_0x339931>0x0?_0x3cf79e[_0x68aa31(0x16f)](0x0,_0x339931):_0x3cf79e,_0x45a762=_0x339931>0x0?_0x3cf79e[_0x68aa31(0x16f)](_0x339931+0x1):'',_0x17efbb=asRecord(asRecord(_0x3b90ab['models'])[_0x68aa31(0x180)+'s']),_0x5d1d5f=asRecord(_0x17efbb[_0x2f064e]);return{'provider':_0x2f064e||'','apiKey':getTrimmedString(_0x5d1d5f[_0x68aa31(0x10e)]),'modelName':_0x45a762,'modelBaseUrl':getTrimmedString(_0x5d1d5f[_0x68aa31(0x1c5)])};}async function _0x5d5d86(_0xfe3af,_0x199806={}){const _0x4c3e30=_0x572919,_0xb02989=await _0x52b766(),_0x2b8a78=structuredClone(_0xb02989),_0x2f2d5d=_0xfe3af['provider']||_0x4c3e30(0x151),_0x4d5f2c=_0x2f2d5d+'/'+_0xfe3af[_0x4c3e30(0x144)+'e'],_0x5d6f3b=asRecord(_0xb02989[_0x4c3e30(0x13c)]),_0x11fc79=asRecord(_0x5d6f3b['provider'+'s']);_0x11fc79[_0x2f2d5d]={...asRecord(_0x11fc79[_0x2f2d5d]),...createProviderConfig({'apiKey':_0xfe3af[_0x4c3e30(0x10e)]||'','protocol':_0xfe3af[_0x4c3e30(0x196)]||_0x4c3e30(0x163),'baseUrl':_0xfe3af[_0x4c3e30(0x154)+_0x4c3e30(0x139)]||_0xfe3af[_0x4c3e30(0x1c5)]||'','modelName':_0xfe3af[_0x4c3e30(0x144)+'e']})},_0x5d6f3b[_0x4c3e30(0x180)+'s']=_0x11fc79,_0xb02989['models']=_0x5d6f3b;const _0x586a5a=asRecord(_0xb02989['agents']),_0x61d687=asRecord(_0x586a5a[_0x4c3e30(0x17b)]);_0x61d687[_0x4c3e30(0x1c3)]={...asRecord(_0x61d687[_0x4c3e30(0x1c3)]),'primary':_0x4d5f2c},_0x61d687['models']={...asRecord(_0x61d687['models']),[_0x4d5f2c]:asRecord(asRecord(_0x61d687[_0x4c3e30(0x13c)])[_0x4d5f2c])},_0x586a5a[_0x4c3e30(0x17b)]=_0x61d687,_0xb02989[_0x4c3e30(0x15f)]=_0x586a5a,_0xb02989[_0x4c3e30(0x12a)]={...asRecord(_0xb02989[_0x4c3e30(0x12a)]),'dmScope':'per-chan'+_0x4c3e30(0x14d)};if(isSameJson(_0x2b8a78,_0xb02989))return _0x24d333?.['info'](_0x4c3e30(0x15e)+_0x4c3e30(0x1a5)+'lready\x20c'+'urrent',{'config':summarizeOpenClawConfig(_0xb02989)}),{'ok':!![],'changed':![]};if(_0x199806['restartO'+_0x4c3e30(0x13b)])await _0x57a85f(_0xb02989,_0x4c3e30(0x15e)+_0x4c3e30(0x13a)+'pdated');else{_0x1a3e83();const _0x457fd5=await _0x39f81e(_0xb02989,_0x4c3e30(0x15e)+_0x4c3e30(0x13a)+_0x4c3e30(0x133)+_0x4c3e30(0x1be)+_0x4c3e30(0x176)+'estart');await writeJsonFile(_0x1b08d1[_0x4c3e30(0x162)+_0x4c3e30(0x136)+'th'],_0x457fd5),_0x24d333?.[_0x4c3e30(0x1a0)](_0x4c3e30(0x166)+_0x4c3e30(0x16b)+'aw\x20confi'+_0x4c3e30(0x1b2)+'n',{'path':_0x1b08d1['lastGood'+'ConfigPa'+'th'],'reason':_0x4c3e30(0x15e)+_0x4c3e30(0x13a)+_0x4c3e30(0x133)+_0x4c3e30(0x1be)+'ateway\x20r'+'estart'});}return{'ok':!![],'changed':!![]};}async function _0x586f7e(_0x1e43dd){const _0x2b1366=_0x572919,_0x311514=await _0x52b766(),_0x22f6d1=structuredClone(_0x311514),_0x520245=_0x1e43dd['provider'+'Key'],_0x307a85=asRecord(_0x311514[_0x2b1366(0x13c)]),_0xd7b635=asRecord(_0x307a85[_0x2b1366(0x180)+'s']);_0xd7b635[_0x520245]={...asRecord(_0xd7b635[_0x520245]),'apiKey':_0x1e43dd[_0x2b1366(0x10e)],'api':_0x2b1366(0x169)+_0x2b1366(0x1ac)+'ns','baseUrl':_0x1e43dd[_0x2b1366(0x1c5)],'models':(_0x1e43dd[_0x2b1366(0x144)+'es']??[])['map'](_0x131e76=>createProviderModelConfig(_0x131e76,_0x131e76===_0x1e43dd[_0x2b1366(0x186)+_0x2b1366(0x120)+'yName']))},_0x307a85[_0x2b1366(0x180)+'s']=_0xd7b635,_0x311514[_0x2b1366(0x13c)]=_0x307a85;if(_0x1e43dd['imageMod'+_0x2b1366(0x120)+_0x2b1366(0x141)]){const _0x227e9f=asRecord(_0x311514[_0x2b1366(0x15f)]),_0x1fe2d9=asRecord(_0x227e9f[_0x2b1366(0x17b)]);_0x1fe2d9['imageMod'+'el']={...asRecord(_0x1fe2d9['imageMod'+'el']),'primary':_0x520245+'/'+_0x1e43dd[_0x2b1366(0x186)+_0x2b1366(0x120)+'yName']},_0x227e9f[_0x2b1366(0x17b)]=_0x1fe2d9,_0x311514['agents']=_0x227e9f;}if(isSameJson(_0x22f6d1,_0x311514))return _0x24d333?.['info'](_0x2b1366(0x129)+_0x2b1366(0x1a9)+_0x2b1366(0x14a)+_0x2b1366(0x16d)+'rent',{'config':summarizeOpenClawConfig(_0x311514)}),{'ok':!![],'changed':![]};return _0x1a3e83(),await _0x39f81e(_0x311514,_0x2b1366(0x129)+_0x2b1366(0x1a9)+'dels\x20upd'+_0x2b1366(0x171)+'ferred\x20g'+_0x2b1366(0x176)+_0x2b1366(0x16c)),{'ok':!![],'changed':!![]};}async function _0x4869df(_0x11ae43,_0x13a6ee,_0x5f5162={}){const _0x1df091=_0x572919;if(typeof _0x11ae43!==_0x1df091(0x1cd))throw new Error('openclaw'+_0x1df091(0x1b0)+'mutator\x20'+_0x1df091(0x158)+_0x1df091(0x1b9));const _0x557aa5=await _0x52b766(),_0x3a730d=structuredClone(_0x557aa5),_0x14991b=await _0x11ae43(_0x557aa5);if(isSameJson(_0x3a730d,_0x557aa5))return _0x24d333?.[_0x1df091(0x1a0)]('openclaw'+_0x1df091(0x1b0)+_0x1df091(0x11f)+_0x1df091(0x10f),{'reason':_0x13a6ee,'config':summarizeOpenClawConfig(_0x557aa5)}),{'ok':!![],'changed':![],...asRecord(_0x14991b)};return _0x5f5162[_0x1df091(0x170)+_0x1df091(0x13b)]===![]?(_0x1a3e83(),await _0x39f81e(_0x557aa5,_0x13a6ee||_0x1df091(0x1c1)+_0x1df091(0x1b0)+_0x1df091(0x1b5)+'without\x20'+'gateway\x20'+_0x1df091(0x14e))):await _0x57a85f(_0x557aa5,_0x13a6ee||_0x1df091(0x1c1)+'\x20config\x20'+_0x1df091(0x12c)),{'ok':!![],'changed':!![],...asRecord(_0x14991b)};}async function _0x1b3c52({pluginId:_0x1b76a5,enabled:_0x4ec2f7,config:_0x344d61,allow:allow=!![],reason:_0x330e01}={}){const _0x55bf67=_0x572919,_0x48f1b6=getTrimmedString(_0x1b76a5);if(!_0x48f1b6)throw new Error(_0x55bf67(0x132)+_0x55bf67(0x1a3)+'uired');return _0x4869df(_0x7cda95=>{const _0x36d403=_0x55bf67,_0x2427a2=asRecord(_0x7cda95[_0x36d403(0x175)]),_0x2de643=asRecord(_0x2427a2['entries']),_0x26c61c=asRecord(_0x2de643[_0x48f1b6]),_0xe596d7={..._0x26c61c,...typeof _0x4ec2f7===_0x36d403(0x147)?{'enabled':_0x4ec2f7}:{}};if(_0x344d61!==undefined){const _0x2666b6=asRecord(_0x344d61);if(Object['keys'](_0x2666b6)[_0x36d403(0x13e)]>0x0)_0xe596d7[_0x36d403(0x14b)]=_0x2666b6;else delete _0xe596d7[_0x36d403(0x14b)];}_0x2de643[_0x48f1b6]=_0xe596d7,_0x2427a2[_0x36d403(0x16e)]=_0x2de643,allow&&(_0x2427a2['allow']=_0x4ec2f7===![]?asStringArray(_0x2427a2[_0x36d403(0x195)])[_0x36d403(0x1a4)](_0x4f40b5=>_0x4f40b5!==_0x48f1b6):dedupeStrings([...asStringArray(_0x2427a2['allow']),_0x48f1b6])),_0x7cda95['plugins']=_0x2427a2;},_0x330e01||_0x48f1b6+(_0x55bf67(0x17e)+'config\x20u'+_0x55bf67(0x1a7)));}async function _0x3e532f({channelId:_0x1b8c6a,channel:_0x43474e,pluginId:_0x4b37ce,pluginEnabled:_0x284f9f,reason:_0x295dd2}={}){const _0x56402f=_0x572919,_0x4a57b2=getTrimmedString(_0x1b8c6a);if(!_0x4a57b2)throw new Error(_0x56402f(0x1b6)+_0x56402f(0x1e2)+'quired');return _0x4869df(_0x2118c9=>{const _0x5e99cb=_0x56402f,_0x6db955=asRecord(_0x2118c9[_0x5e99cb(0x1d8)]);_0x6db955[_0x4a57b2]=asRecord(_0x43474e),_0x2118c9['channels']=_0x6db955;const _0x35b823=getTrimmedString(_0x4b37ce);if(_0x35b823){const _0x503afa=asRecord(_0x2118c9[_0x5e99cb(0x175)]),_0x1ae2ee=asRecord(_0x503afa[_0x5e99cb(0x16e)]);_0x1ae2ee[_0x35b823]={...asRecord(_0x1ae2ee[_0x35b823]),'enabled':typeof _0x284f9f===_0x5e99cb(0x147)?_0x284f9f:asRecord(_0x43474e)[_0x5e99cb(0x13d)]!==![]},_0x503afa[_0x5e99cb(0x16e)]=_0x1ae2ee,_0x503afa[_0x5e99cb(0x195)]=_0x1ae2ee[_0x35b823][_0x5e99cb(0x13d)]===![]?asStringArray(_0x503afa['allow'])[_0x5e99cb(0x1a4)](_0x25b1e0=>_0x25b1e0!==_0x35b823):dedupeStrings([...asStringArray(_0x503afa[_0x5e99cb(0x195)]),_0x35b823]),_0x2118c9[_0x5e99cb(0x175)]=_0x503afa;}},_0x295dd2||_0x4a57b2+('\x20channel'+_0x56402f(0x1b0)+_0x56402f(0x12c)));}async function _0x3825ab({channelId:_0x2656a6,pluginId:_0x568513,reason:_0x22cfa0}={}){const _0x409524=_0x572919,_0x1481e3=getTrimmedString(_0x2656a6);if(!_0x1481e3)throw new Error(_0x409524(0x1b6)+'id\x20is\x20re'+_0x409524(0x1c0));return _0x4869df(_0x1342b1=>{const _0x4c2412=_0x409524,_0x25b289=asRecord(_0x1342b1['channels']);delete _0x25b289[_0x1481e3],_0x1342b1[_0x4c2412(0x1d8)]=_0x25b289;const _0x58b1d5=getTrimmedString(_0x568513);if(_0x58b1d5){const _0x33e165=asRecord(_0x1342b1[_0x4c2412(0x175)]),_0x3d4d3e=asRecord(_0x33e165[_0x4c2412(0x16e)]);_0x3d4d3e[_0x58b1d5]={...asRecord(_0x3d4d3e[_0x58b1d5]),'enabled':![]},_0x33e165[_0x4c2412(0x16e)]=_0x3d4d3e,_0x33e165[_0x4c2412(0x195)]=asStringArray(_0x33e165[_0x4c2412(0x195)])[_0x4c2412(0x1a4)](_0x470a3a=>_0x470a3a!==_0x58b1d5),_0x1342b1[_0x4c2412(0x175)]=_0x33e165;}},_0x22cfa0||_0x1481e3+('\x20channel'+_0x409524(0x1b0)+_0x409524(0x172)));}async function _0x36aa42({skillId:_0x3bb660,entry:_0x4b7609,reason:_0x595a23}={}){const _0x16dc98=_0x572919,_0x41c334=getTrimmedString(_0x3bb660);if(!_0x41c334)throw new Error(_0x16dc98(0x15d)+_0x16dc98(0x1bb)+_0x16dc98(0x111));return _0x4869df(_0x24d1d8=>{const _0x5f4ac5=_0x16dc98,_0x2abac1=asRecord(_0x24d1d8[_0x5f4ac5(0x121)]),_0x2dab18=asRecord(_0x2abac1[_0x5f4ac5(0x16e)]);_0x2dab18[_0x41c334]=asRecord(_0x4b7609),_0x2abac1[_0x5f4ac5(0x16e)]=_0x2dab18,_0x24d1d8['skills']=_0x2abac1;},_0x595a23||_0x41c334+(_0x16dc98(0x10b)+_0x16dc98(0x124)+'dated'));}async function _0x98e383({skillId:_0x213163,reason:_0x41adf3}={}){const _0x4c6d90=_0x572919,_0x13fcf0=getTrimmedString(_0x213163);if(!_0x13fcf0)throw new Error(_0x4c6d90(0x15d)+_0x4c6d90(0x1bb)+'ired');return _0x4869df(_0x1e7a09=>{const _0x54cdc7=_0x4c6d90,_0x42ccde=asRecord(_0x1e7a09[_0x54cdc7(0x121)]),_0x5e4fb3=asRecord(_0x42ccde[_0x54cdc7(0x16e)]);delete _0x5e4fb3[_0x13fcf0],_0x42ccde[_0x54cdc7(0x16e)]=_0x5e4fb3,_0x1e7a09[_0x54cdc7(0x121)]=_0x42ccde;},_0x41adf3||_0x13fcf0+(_0x4c6d90(0x10b)+_0x4c6d90(0x149)+_0x4c6d90(0x1a8)));}async function _0x4ba411({serverName:_0x253133,server:_0x5068e1,reason:_0x6a8e2c}={}){const _0x581e8d=_0x572919,_0x59e869=getTrimmedString(_0x253133);if(!_0x59e869)throw new Error(_0x581e8d(0x1df)+_0x581e8d(0x130)+_0x581e8d(0x158)+_0x581e8d(0x1b9));return _0x4869df(_0x4d6cea=>{const _0x55b969=readOpenClawMcpServersFromConfig(_0x4d6cea);_0x55b969[_0x59e869]=asRecord(_0x5068e1),writeOpenClawMcpServersToConfig(_0x4d6cea,_0x55b969);},_0x6a8e2c||_0x59e869+('\x20mcp\x20ser'+_0x581e8d(0x125)+_0x581e8d(0x19f)));}async function _0x3f8cd1({serverName:_0x4ff770,reason:_0xfae81e}={}){const _0x2e6dfd=_0x572919,_0x567a5b=getTrimmedString(_0x4ff770);if(!_0x567a5b)throw new Error('mcp\x20serv'+'er\x20name\x20'+_0x2e6dfd(0x158)+_0x2e6dfd(0x1b9));return _0x4869df(_0xea2d88=>{const _0x57e625=readOpenClawMcpServersFromConfig(_0xea2d88);delete _0x57e625[_0x567a5b],writeOpenClawMcpServersToConfig(_0xea2d88,_0x57e625);},_0xfae81e||_0x567a5b+(_0x2e6dfd(0x1a1)+_0x2e6dfd(0x161)+_0x2e6dfd(0x19f)));}async function _0x263dca(_0x1d9212,_0x5c0668){const _0x590097=_0x572919,_0x492e55=await _0x52b766(),_0x3691e0=asRecord(_0x492e55[_0x590097(0x13c)]),_0x37b37a=asRecord(_0x3691e0['provider'+'s']);for(const _0x3a696f of _0x1d9212){if(!_0x3a696f?.['id'])continue;_0x37b37a[_0x3a696f['id']]={...asRecord(_0x37b37a[_0x3a696f['id']]),'apiKey':_0x3a696f[_0x590097(0x10e)]||'','api':_0x3a696f[_0x590097(0x196)]===_0x590097(0x165)+'c'?_0x590097(0x165)+_0x590097(0x1b4)+'es':_0x590097(0x169)+_0x590097(0x1ac)+'ns',..._0x3a696f['baseUrl']?{'baseUrl':_0x3a696f[_0x590097(0x1c5)]}:{},'models':[createProviderModelConfig(_0x3a696f[_0x590097(0x144)+'e'])]};}const _0x5dd061=new Set(_0x1d9212['map'](_0x3c058a=>_0x3c058a?.['id'])['filter'](Boolean));for(const _0x3de722 of Object[_0x590097(0x1b8)](_0x37b37a)){const _0x5b724d=getCustomModelsFromConfig(_0x492e55)[_0x590097(0x174)](_0x58f615=>_0x58f615?.['id']===_0x3de722);if(_0x5b724d&&!_0x5dd061['has'](_0x3de722))delete _0x37b37a[_0x3de722];}return _0x3691e0[_0x590097(0x180)+'s']=_0x37b37a,_0x3691e0['customMo'+_0x590097(0x126)]=_0x1d9212,_0x492e55[_0x590097(0x13c)]=_0x3691e0,_0x1a3e83(),await _0x39f81e(_0x492e55,_0x5c0668),_0x1d9212;}async function _0x2aef7a(_0x3e7715={}){const _0x2fc953=_0x572919,_0x36db61=getTrimmedString(_0x3e7715['id']);if(!_0x36db61)throw new Error(_0x2fc953(0x164)+'odel\x20id\x20'+_0x2fc953(0x158)+'red');const _0x5b40c2=await _0x52b766(),_0x534e3e=getCustomModelsFromConfig(_0x5b40c2),_0x9baa29={'id':_0x36db61,'modelName':getTrimmedString(_0x3e7715[_0x2fc953(0x144)+'e']),'provider':getTrimmedString(_0x3e7715[_0x2fc953(0x180)])||'custom',..._0x3e7715[_0x2fc953(0x180)+_0x2fc953(0x188)]?{'providerName':String(_0x3e7715[_0x2fc953(0x180)+'Name'])}:{},..._0x3e7715['customPr'+'oviderNa'+'me']?{'customProviderName':String(_0x3e7715['customPr'+'oviderNa'+'me'])}:{},'apiKey':String(_0x3e7715[_0x2fc953(0x10e)]||''),'protocol':_0x3e7715[_0x2fc953(0x196)]==='anthropi'+'c'?_0x2fc953(0x165)+'c':'openai','baseUrl':String(_0x3e7715['baseUrl']||'')};if(!_0x9baa29[_0x2fc953(0x144)+'e'])throw new Error(_0x2fc953(0x164)+_0x2fc953(0x140)+_0x2fc953(0x181)+_0x2fc953(0x17a));const _0x147d91=_0x534e3e[_0x2fc953(0x174)](_0x32be2f=>_0x32be2f?.['id']===_0x36db61)?_0x534e3e[_0x2fc953(0x127)](_0x600dfb=>_0x600dfb?.['id']===_0x36db61?_0x9baa29:_0x600dfb):[..._0x534e3e,_0x9baa29];return await _0x263dca(_0x147d91,'custom\x20m'+_0x2fc953(0x15a)+'ed'),{'ok':!![],'model':_0x9baa29,'models':_0x147d91};}async function _0x5f4724(_0x22ae84={}){const _0xbcbdfb=_0x572919,_0x126838=getTrimmedString(_0x22ae84['id']||_0x22ae84[_0xbcbdfb(0x1bd)]);if(!_0x126838)throw new Error(_0xbcbdfb(0x164)+'odel\x20id\x20'+_0xbcbdfb(0x158)+_0xbcbdfb(0x1b9));const _0x2dfdca=await _0x52b766(),_0x5ca588=getCustomModelsFromConfig(_0x2dfdca),_0x145660=_0x5ca588['filter'](_0x38572b=>_0x38572b?.['id']!==_0x126838);return await _0x263dca(_0x145660,_0xbcbdfb(0x164)+_0xbcbdfb(0x11e)+'eted'),_0x22ae84[_0xbcbdfb(0x1d6)+_0xbcbdfb(0x112)+'tings']&&await _0x5d5d86(_0x22ae84[_0xbcbdfb(0x1d6)+'ModelSet'+_0xbcbdfb(0x193)],{'restartOnChange':!![]}),{'ok':!![],'id':_0x126838,'models':_0x145660,'modelRef':_0x22ae84[_0xbcbdfb(0x1d6)+'ModelSet'+_0xbcbdfb(0x193)]?.[_0xbcbdfb(0x144)+'e']};}async function _0x47ef95({callbackUrl:_0x6b5105,secret:_0x2e734c}){const _0x485ff9=_0x572919,_0x17cb2a=await _0x52b766(),_0x50d6ff=asRecord(_0x17cb2a['plugins']),_0x2f4dc3=asRecord(_0x50d6ff[_0x485ff9(0x16e)]),_0x3e7206=asRecord(_0x2f4dc3[ASK_USER_QUESTION_PLUGIN_ID]);return _0x2f4dc3[ASK_USER_QUESTION_PLUGIN_ID]={..._0x3e7206,'enabled':!![],'config':{...asRecord(_0x3e7206[_0x485ff9(0x14b)]),'callbackUrl':_0x6b5105,'secret':_0x2e734c}},_0x50d6ff[_0x485ff9(0x16e)]=_0x2f4dc3,_0x50d6ff[_0x485ff9(0x195)]=dedupeStrings([...(Array[_0x485ff9(0x1d0)](_0x50d6ff[_0x485ff9(0x195)])?_0x50d6ff[_0x485ff9(0x195)]:[])[_0x485ff9(0x1a4)](Boolean),ASK_USER_QUESTION_PLUGIN_ID]),_0x17cb2a['plugins']=_0x50d6ff,await _0x57a85f(_0x17cb2a,''),{'ok':!![]};}async function _0x2d91bc(){const _0x1cbf1a=_0x572919,_0x4ad9de=await _0x52b766(),_0x32a232=asRecord(_0x4ad9de[_0x1cbf1a(0x175)]),_0x5a2a33=asRecord(_0x32a232[_0x1cbf1a(0x16e)]),_0x3e912d=asRecord(_0x5a2a33[ASK_USER_QUESTION_PLUGIN_ID]);return _0x3e912d[_0x1cbf1a(0x13d)]===!![];}async function _0x57a85f(_0x1e1a91,_0x265249=''){const _0x445854=_0x572919;_0x1a3e83();const _0x1a945b=await _0x39f81e(_0x1e1a91,_0x265249||_0x445854(0x1c1)+_0x445854(0x1b0)+_0x445854(0x1a6)+'d');await writeJsonFile(_0x1b08d1[_0x445854(0x162)+_0x445854(0x136)+'th'],_0x1a945b),_0x24d333?.[_0x445854(0x1a0)](_0x445854(0x166)+'d\x20opencl'+_0x445854(0x182)+_0x445854(0x1b2)+'n',{'path':_0x1b08d1['lastGood'+_0x445854(0x136)+'th'],'reason':_0x265249||_0x445854(0x1c1)+_0x445854(0x1b0)+_0x445854(0x1a6)+'d'});if(_0x265249)_0x11e97b(_0x265249);}function _0x1a3e83(){if(_0x120d66)_0x2c8a47+=0x1;}function _0x26d21a(_0x3c0622){_0x57e33d=_0x3c0622;}function _0x11e97b(_0x11f742){const _0x33073c=_0x572919;if(!_0x57e33d)return;if(_0x20c67d)clearTimeout(_0x20c67d);_0x24d333?.['info'](_0x33073c(0x18b)+_0x33073c(0x19a)+_0x33073c(0x183)+'\x20for\x20con'+_0x33073c(0x1ab)+'ge',{'reason':_0x11f742,'debounceMs':0xfa}),_0x20c67d=setTimeout(()=>_0x57e33d(_0x11f742),0xfa);}function _0x4309fd(){const _0x9dcdf0=_0x572919;unwatchFile(_0x1b08d1['configPa'+'th']),_0x120d66=!![],watchFile(_0x1b08d1[_0x9dcdf0(0x1d2)+'th'],{'interval':0x3e8},(_0x361158,_0x419e03)=>{const _0x3e9dfd=_0x9dcdf0;if(_0x361158['mtimeMs']===_0x419e03[_0x3e9dfd(0x1aa)])return;if(_0x2c8a47>0x0){_0x2c8a47-=0x1,_0x24d333?.[_0x3e9dfd(0x1a0)](_0x3e9dfd(0x143)+'ile\x20watc'+'her\x20igno'+'red\x20inte'+_0x3e9dfd(0x1d4)+'te',{'configPath':_0x1b08d1['configPa'+'th'],'ignoredConfigWatchReloads':_0x2c8a47});return;}_0x24d333?.['info'](_0x3e9dfd(0x143)+_0x3e9dfd(0x19b)+'her\x20obse'+'rved\x20ext'+_0x3e9dfd(0x198)+'ange',{'configPath':_0x1b08d1['configPa'+'th'],'autoReload':AUTO_RELOAD_EXTERNAL_CONFIG});if(AUTO_RELOAD_EXTERNAL_CONFIG)_0x11e97b(_0x3e9dfd(0x148)+'hange');});}function _0x1a6309(){const _0x50e95e=_0x572919;if(_0x20c67d)clearTimeout(_0x20c67d);unwatchFile(_0x1b08d1[_0x50e95e(0x1d2)+'th']),_0x120d66=![],_0x2c8a47=0x0;}return{'paths':_0x1b08d1,'resolveConfigPath':_0x1d7209,'resolveStateDir':_0x24e3bb,'resolveDeviceIdentityPath':_0x4e8ea0,'ensureConfigPathEnv':_0x26ba24,'ensureInitialConfig':_0x539258,'ensureGatewaySettings':_0x1a7468,'readConfig':_0x52b766,'readConfigRaw':_0x1a823c,'readShellUiState':_0x58da5d,'writeShellUiState':_0x5dc987,'readConfigSnapshotRaw':_0x341d3e,'persistConfig':_0x57a85f,'writeConfig':_0x39f81e,'syncRuntimePlugins':_0x1f7485,'getModelSettings':_0x26e6af,'setModelSettings':_0x5d5d86,'setSelfOperatedModels':_0x586f7e,'updateOpenClawConfig':_0x4869df,'setOpenClawPluginConfig':_0x1b3c52,'setOpenClawChannelConfig':_0x3e532f,'deleteOpenClawChannelConfig':_0x3825ab,'setOpenClawSkillEntry':_0x36aa42,'deleteOpenClawSkillEntry':_0x98e383,'setOpenClawMcpServer':_0x4ba411,'deleteOpenClawMcpServer':_0x3f8cd1,'saveCustomModel':_0x2aef7a,'deleteCustomModel':_0x5f4724,'ensureAskUserQuestionPluginConfig':_0x47ef95,'isAskUserQuestionPluginEnabled':_0x2d91bc,'markConfigWriteHandledInternally':_0x1a3e83,'setGatewayRestartHandler':_0x26d21a,'watchConfigChanges':_0x4309fd,'dispose':_0x1a6309};}
@@ -0,0 +1 @@
1
+ const _0x3e0cc2=_0x1e4c;(function(_0x5d675f,_0x44af34){const _0xba55c=_0x1e4c,_0x10e8e4=_0x5d675f();while(!![]){try{const _0x3631eb=-parseInt(_0xba55c(0x197))/0x1+-parseInt(_0xba55c(0x177))/0x2+-parseInt(_0xba55c(0x17a))/0x3+parseInt(_0xba55c(0x17b))/0x4*(parseInt(_0xba55c(0x15f))/0x5)+-parseInt(_0xba55c(0x17c))/0x6+parseInt(_0xba55c(0x189))/0x7+parseInt(_0xba55c(0x185))/0x8*(parseInt(_0xba55c(0x187))/0x9);if(_0x3631eb===_0x44af34)break;else _0x10e8e4['push'](_0x10e8e4['shift']());}catch(_0x31218e){_0x10e8e4['push'](_0x10e8e4['shift']());}}}(_0x1f27,0x59d63));import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';import{FEISHU_DOC_CONNECTOR_PLUGIN_ID,FEISHU_PLUGIN_ID,NETEASE_MAIL_CONNECTOR_PLUGIN_ID,QQ_MAIL_CONNECTOR_PLUGIN_ID,TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID}from'./constants.mjs';const CONNECTOR_CONFIG_FIELDS={[FEISHU_DOC_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x160),_0x3e0cc2(0x175),'accountN'+_0x3e0cc2(0x199)],[QQ_MAIL_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x160),_0x3e0cc2(0x16d),'authoriz'+_0x3e0cc2(0x16a)+'e','imapHost',_0x3e0cc2(0x167),_0x3e0cc2(0x17e),_0x3e0cc2(0x164),'secure'],[NETEASE_MAIL_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x160),_0x3e0cc2(0x16d),'authoriz'+_0x3e0cc2(0x16a)+'e',_0x3e0cc2(0x194),'imapPort',_0x3e0cc2(0x17e),_0x3e0cc2(0x164),_0x3e0cc2(0x16f)+_0x3e0cc2(0x193),_0x3e0cc2(0x16f)+_0x3e0cc2(0x170)+'n','imapClie'+_0x3e0cc2(0x19b),_0x3e0cc2(0x16f)+_0x3e0cc2(0x162)+_0x3e0cc2(0x18f),_0x3e0cc2(0x196)],[TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID]:['enabled',_0x3e0cc2(0x16d),_0x3e0cc2(0x176)+_0x3e0cc2(0x16a)+'e',_0x3e0cc2(0x194),_0x3e0cc2(0x167),_0x3e0cc2(0x17e),_0x3e0cc2(0x164),'imapClie'+_0x3e0cc2(0x193),_0x3e0cc2(0x16f)+_0x3e0cc2(0x170)+'n','imapClie'+_0x3e0cc2(0x19b),_0x3e0cc2(0x16f)+_0x3e0cc2(0x162)+_0x3e0cc2(0x18f),_0x3e0cc2(0x196)]},CONNECTOR_EFFECTIVE_FIELDS={[FEISHU_DOC_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x18e)+'ame'],[QQ_MAIL_CONNECTOR_PLUGIN_ID]:['account',_0x3e0cc2(0x176)+_0x3e0cc2(0x16a)+'e'],[NETEASE_MAIL_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x16d),_0x3e0cc2(0x176)+_0x3e0cc2(0x16a)+'e'],[TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID]:[_0x3e0cc2(0x16d),'authoriz'+_0x3e0cc2(0x16a)+'e']};function _0x1e4c(_0x33e458,_0x460812){_0x33e458=_0x33e458-0x15d;const _0x1f275a=_0x1f27();let _0x1e4c4d=_0x1f275a[_0x33e458];return _0x1e4c4d;}export function pickPluginConfigFields(_0x1c8b55,_0x5e4998){const _0x25bb2b={};for(const _0x3ef778 of _0x5e4998){if(_0x1c8b55[_0x3ef778]!==undefined)_0x25bb2b[_0x3ef778]=_0x1c8b55[_0x3ef778];}return _0x25bb2b;}function _0x1f27(){const _0x2f3e96=['userInfo','ame','channels','ntVendor','Config','mcp_serv','5dgmPcB','enabled','le-http','ntSuppor','ention','smtpPort','allowlis','config','imapPort','length','requireM','ationCod','servers','disabled','account','domain','imapClie','ntVersio','openId','mcpServe','owFrom','icy','authMode','authoriz','955052QfIBaO','trim','ers','395124JTsrEm','2909948JbYDEj','3813474IrYdng','onMode','smtpHost','feishu','plugins','open','dmPolicy','allow','preserve','232YpSWLt','streamab','353277NrglMm','allowFro','2796766oUTUyq','user','includes','appId','mcp','accountN','tEmail','boolean','entries','websocke','ntName','imapHost','some','secure','652578UVCTeL'];_0x1f27=function(){return _0x2f3e96;};return _0x1f27();}function hasConnectorConfigValue(_0x3a012c,_0xb0cb1d){const _0x1ba8ff=_0x3e0cc2,_0x4f8f2d=CONNECTOR_EFFECTIVE_FIELDS[_0x3a012c]??[];return _0x4f8f2d[_0x1ba8ff(0x195)](_0x4cf674=>{const _0x238fe0=_0x1ba8ff,_0x27f369=_0xb0cb1d[_0x4cf674];if(typeof _0x27f369==='string')return _0x27f369[_0x238fe0(0x178)]()[_0x238fe0(0x168)]>0x0;if(typeof _0x27f369===_0x238fe0(0x190))return _0x27f369;return _0x27f369!==undefined&&_0x27f369!==null;});}export function createConnectorPluginEntry(_0x5a3ef1,_0x5ad1d5,_0x553c8b,_0x3bd79e,_0x2185ea={}){const _0x34d9fd=_0x3e0cc2,_0x5cb3c3=asRecord(_0x5ad1d5),_0x1c3e93=CONNECTOR_CONFIG_FIELDS[_0x5a3ef1]??['enabled'],_0x3b4aa1=_0x2185ea[_0x34d9fd(0x184)+'Existing'+_0x34d9fd(0x15d)]?{...pickPluginConfigFields(asRecord(_0x5cb3c3[_0x34d9fd(0x166)]),_0x1c3e93),..._0x3bd79e,'enabled':_0x553c8b}:{..._0x3bd79e,'enabled':_0x553c8b},_0x212399=pickPluginConfigFields(_0x3b4aa1,_0x1c3e93);if(_0x5a3ef1===FEISHU_DOC_CONNECTOR_PLUGIN_ID)_0x212399[_0x34d9fd(0x175)]=_0x34d9fd(0x18a);const _0x2113fd={..._0x5cb3c3,'enabled':_0x553c8b};delete _0x2113fd[_0x34d9fd(0x166)];if(_0x553c8b||hasConnectorConfigValue(_0x5a3ef1,_0x212399))_0x2113fd[_0x34d9fd(0x166)]=_0x212399;for(const _0x3978a1 of _0x1c3e93){if(_0x3978a1!==_0x34d9fd(0x160))delete _0x2113fd[_0x3978a1];}return _0x2113fd;}export function readOpenClawMcpServersFromConfig(_0x44d509){const _0x3cf5b2=_0x3e0cc2,_0x57b3a6=asRecord(_0x44d509[_0x3cf5b2(0x18d)]),_0x3b594e=[asRecord(_0x57b3a6['servers']),asRecord(_0x44d509[_0x3cf5b2(0x172)+'rs']),asRecord(_0x44d509[_0x3cf5b2(0x15e)+_0x3cf5b2(0x179)])];return Object['assign']({},..._0x3b594e);}export function writeOpenClawMcpServersToConfig(_0x3bd6e6,_0x21eda6){const _0x324ec8=_0x3e0cc2,_0x183a54=asRecord(_0x3bd6e6['mcp']);_0x183a54[_0x324ec8(0x16b)]=_0x21eda6,_0x3bd6e6[_0x324ec8(0x18d)]=_0x183a54;}export function createDingtalkDocMcpServerConfig(_0x2d9ea9,_0x25c20d={}){const _0x16381c=_0x3e0cc2;return{'url':_0x2d9ea9,'transport':_0x16381c(0x186)+_0x16381c(0x161),'enabled':_0x25c20d[_0x16381c(0x160)]??!![]};}export function normalizeFeishuDmPolicy(_0x2f8009){const _0x26b172=_0x3e0cc2,_0x1f0a0c=getTrimmedString(_0x2f8009);return['pairing',_0x26b172(0x181),_0x26b172(0x165)+'t',_0x26b172(0x16c)]['includes'](_0x1f0a0c)?_0x1f0a0c:null;}export function normalizeFeishuGroupPolicy(_0x1224c6){const _0x2b88ae=_0x3e0cc2,_0x54d9ce=getTrimmedString(_0x1224c6);return[_0x2b88ae(0x181),_0x2b88ae(0x165)+'t',_0x2b88ae(0x16c)][_0x2b88ae(0x18b)](_0x54d9ce)?_0x54d9ce:null;}export function applyFeishuChannelConfig(_0x259b8b,_0x54c5b4){const _0x39b089=_0x3e0cc2,_0x5e0a32=asRecord(_0x259b8b[_0x39b089(0x19a)]),_0x327f06=asRecord(_0x5e0a32[_0x39b089(0x17f)]),_0x40ba2a=asStringArray(_0x327f06[_0x39b089(0x188)+'m']),_0x210561=asStringArray(_0x327f06['groupAll'+_0x39b089(0x173)]),_0x1b63b4=getTrimmedString(_0x54c5b4[_0x39b089(0x198)]?.[_0x39b089(0x171)]),_0x14d4b6={..._0x327f06,'enabled':typeof _0x327f06[_0x39b089(0x160)]===_0x39b089(0x190)?_0x327f06[_0x39b089(0x160)]:!![],'appId':_0x54c5b4[_0x39b089(0x18c)],'appSecret':_0x54c5b4['appSecre'+'t'],'domain':getTrimmedString(_0x327f06[_0x39b089(0x16e)])||'feishu','connectionMode':getTrimmedString(_0x327f06['connecti'+_0x39b089(0x17d)])||_0x39b089(0x192)+'t','requireMention':typeof _0x327f06['requireM'+_0x39b089(0x163)]==='boolean'?_0x327f06[_0x39b089(0x169)+_0x39b089(0x163)]:!![],'dmPolicy':normalizeFeishuDmPolicy(_0x327f06['dmPolicy'])??'open','groupPolicy':normalizeFeishuGroupPolicy(_0x327f06['groupPol'+_0x39b089(0x174)])??_0x39b089(0x181),'streaming':!![],'allowFrom':_0x40ba2a,'groupAllowFrom':_0x210561};delete _0x14d4b6['footer'];if(_0x54c5b4['userInfo'])_0x1b63b4?(_0x14d4b6[_0x39b089(0x182)]=_0x39b089(0x165)+'t',_0x14d4b6[_0x39b089(0x188)+'m']=dedupeStrings([..._0x40ba2a,_0x1b63b4])):(_0x14d4b6[_0x39b089(0x182)]='open',_0x14d4b6[_0x39b089(0x188)+'m']=['*']);else _0x14d4b6[_0x39b089(0x182)]===_0x39b089(0x181)&&(_0x14d4b6[_0x39b089(0x188)+'m']=['*']);_0x5e0a32[_0x39b089(0x17f)]=_0x14d4b6,_0x259b8b['channels']=_0x5e0a32;const _0x59265a=asRecord(_0x259b8b[_0x39b089(0x180)]),_0x1bc334=asRecord(_0x59265a['entries']);return _0x1bc334[FEISHU_PLUGIN_ID]={...asRecord(_0x1bc334[FEISHU_PLUGIN_ID]),'enabled':!![]},_0x59265a[_0x39b089(0x191)]=_0x1bc334,_0x59265a[_0x39b089(0x183)]=dedupeStrings([...asStringArray(_0x59265a['allow'])['filter'](_0x474b55=>_0x474b55!==FEISHU_PLUGIN_ID),FEISHU_PLUGIN_ID]),_0x259b8b[_0x39b089(0x180)]=_0x59265a,_0x259b8b;}
@@ -0,0 +1 @@
1
+ const _0x52b6e9=_0x4f64;function _0x2445(){const _0x133998=['prod','-weixin','.feishu-','wecom-op','ctor','1730pGJWdh','7572016OAlkdJ','feishu-d','feishu','https://','49396550QPUvTE','nector','kdocs','boe.cn','onnector','19122PYOHux','openclaw','DOCS_TOK','oc-conne','lugin','钉钉文档','connecto','netease-','55248JmWElB','17082720VwaJBZ','docs','accounts','qq-mail-','230QyoCLI','4290860vLiCXG','3TsZCAy','3372xuQLnO'];_0x2445=function(){return _0x133998;};return _0x2445();}(function(_0x22ae74,_0x1674aa){const _0x2d11f9=_0x4f64,_0x204ca9=_0x22ae74();while(!![]){try{const _0x576695=-parseInt(_0x2d11f9(0x110))/0x1*(-parseInt(_0x2d11f9(0x10d))/0x2)+-parseInt(_0x2d11f9(0x10f))/0x3*(-parseInt(_0x2d11f9(0xf7))/0x4)+parseInt(_0x2d11f9(0xf6))/0x5*(parseInt(_0x2d11f9(0x100))/0x6)+parseInt(_0x2d11f9(0x10e))/0x7+parseInt(_0x2d11f9(0x108))/0x8+parseInt(_0x2d11f9(0x109))/0x9+-parseInt(_0x2d11f9(0xfb))/0xa;if(_0x576695===_0x1674aa)break;else _0x204ca9['push'](_0x204ca9['shift']());}catch(_0x6f2a0e){_0x204ca9['push'](_0x204ca9['shift']());}}}(_0x2445,0xead05));function _0x4f64(_0x1c7105,_0x28fc91){_0x1c7105=_0x1c7105-0xf6;const _0x2445fe=_0x2445();let _0x4f64da=_0x2445fe[_0x1c7105];return _0x4f64da;}export const FEISHU_PLUGIN_ID=_0x52b6e9(0xf9);export const QQBOT_PLUGIN_ID='qqbot';export const WECOM_PLUGIN_ID=_0x52b6e9(0x114)+'enclaw-p'+_0x52b6e9(0x104);export const WECHAT_PLUGIN_ID=_0x52b6e9(0x101)+_0x52b6e9(0x112);export const QQ_MAIL_CONNECTOR_PLUGIN_ID=_0x52b6e9(0x10c)+_0x52b6e9(0x106)+'r';export const NETEASE_MAIL_CONNECTOR_PLUGIN_ID=_0x52b6e9(0x107)+'mail-con'+_0x52b6e9(0xfc);export const TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID='tencent-'+'exmail-c'+_0x52b6e9(0xff);export const FEISHU_DOC_CONNECTOR_PLUGIN_ID=_0x52b6e9(0xf8)+_0x52b6e9(0x103)+_0x52b6e9(0x115);export const TENCENT_DOCS_SKILL_ID='tencent-'+_0x52b6e9(0x10a);export const TENCENT_DOCS_TOKEN_ENV='TENCENT_'+_0x52b6e9(0x102)+'EN';export const KDOCS_SKILL_ID=_0x52b6e9(0xfd);export const DINGTALK_DOC_MCP_SERVER_NAME=_0x52b6e9(0x105);export const FEISHU_REGISTRATION_ENV_URLS={'prod':_0x52b6e9(0xfa)+'accounts'+'.feishu.'+'cn','boe':_0x52b6e9(0xfa)+'accounts'+_0x52b6e9(0x113)+_0x52b6e9(0xfe),'pre':_0x52b6e9(0xfa)+_0x52b6e9(0x10b)+_0x52b6e9(0x113)+'pre.cn'};export const DEFAULT_FEISHU_REGISTRATION_ENV=_0x52b6e9(0x111);export const DEFAULT_FEISHU_REGISTRATION_TIMEOUT_MS=0x2710;export const DEFAULT_FEISHU_REGISTRATION_INTERVAL_MS=0x1388;