@wujie-shell/core 2.0.1 → 3.0.0

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 (45) hide show
  1. package/README.md +3 -3
  2. package/bin/wujie-shell.mjs +65 -0
  3. package/dist/bin/wujie-shell.mjs +1 -1
  4. package/dist/src/agents/bundled-agent-skills.mjs +1 -1
  5. package/dist/src/agents/bundled-agents.mjs +1 -1
  6. package/dist/src/chat/media-archive.mjs +1 -1
  7. package/dist/src/chat/queue.mjs +1 -1
  8. package/dist/src/common/diagnostics.mjs +1 -1
  9. package/dist/src/common/logging.mjs +1 -1
  10. package/dist/src/common/runtime-logger.mjs +1 -1
  11. package/dist/src/common/user-events.mjs +1 -1
  12. package/dist/src/common/utils.mjs +1 -1
  13. package/dist/src/config/controller.mjs +1 -1
  14. package/dist/src/connectors/config-utils.mjs +1 -1
  15. package/dist/src/connectors/constants.mjs +1 -1
  16. package/dist/src/connectors/controller.mjs +1 -1
  17. package/dist/src/connectors/kdocs-cli.mjs +1 -1
  18. package/dist/src/electron/main.mjs +1 -1
  19. package/dist/src/electron/preload.mjs +1 -1
  20. package/dist/src/files/generated-files-store.mjs +1 -1
  21. package/dist/src/files/handlers.mjs +1 -1
  22. package/dist/src/gateway/chat-delta.mjs +1 -0
  23. package/dist/src/gateway/controller.mjs +1 -1
  24. package/dist/src/gateway/ws-client.mjs +1 -1
  25. package/dist/src/index.mjs +1 -1
  26. package/dist/src/log-reporting/handlers.mjs +1 -1
  27. package/dist/src/log-reporting/report-logs.mjs +1 -1
  28. package/dist/src/models/handlers.mjs +1 -1
  29. package/dist/src/preferences/store.mjs +1 -1
  30. package/dist/src/runtime/index.mjs +1 -1
  31. package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
  32. package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
  33. package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -0
  34. package/dist/src/runtime/plugin-sync.mjs +1 -1
  35. package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
  36. package/dist/src/sessions/runtime-bridge.mjs +1 -0
  37. package/dist/src/sessions/session-sqlite-store.mjs +1 -0
  38. package/dist/src/sessions/sql/001_init.sql +120 -0
  39. package/dist/src/sessions/sql/002_session_local_metadata.sql +15 -0
  40. package/dist/src/sessions/sql/schema.md +115 -0
  41. package/dist/src/skills/import.mjs +1 -1
  42. package/dist/src/skills/market.mjs +1 -1
  43. package/dist/src/terminal/manager.mjs +1 -1
  44. package/dist/src/updates/controller.mjs +1 -0
  45. package/package.json +10 -4
package/README.md CHANGED
@@ -22,7 +22,7 @@ This package is shell infrastructure. It must not contain product UI business
22
22
  logic or hard-coded product asset lists.
23
23
 
24
24
  Product-specific historical compatibility lives in
25
- `apps/desktops/shell-runtime`; that runtime should only keep config migrations.
25
+ `apps/wujie-desktop/shell-runtime`; that runtime should only keep config migrations.
26
26
  New shell IPC capabilities should be added to the matching `src/*` module here,
27
27
  not to product runtime.
28
28
 
@@ -251,8 +251,8 @@ Shell-level DevTools ability:
251
251
  The package exposes `wujie-shell`:
252
252
 
253
253
  ```bash
254
- wujie-shell prepare --project ../desktops
255
- wujie-shell sync --project ../desktops
254
+ wujie-shell prepare --project ../wujie-desktop
255
+ wujie-shell sync --project ../wujie-desktop
256
256
  ```
257
257
 
258
258
  `prepare` can install/switch OpenClaw version. `sync` expects the prepared
@@ -0,0 +1,65 @@
1
+ #!/usr/bin/env node
2
+ import { existsSync } from 'node:fs'
3
+ import { resolve } from 'node:path'
4
+ import { loadShellConfig } from '@wujie-shell/config'
5
+
6
+ const runtimeEntry = existsSync(new URL('../dist/src/runtime/index.mjs', import.meta.url))
7
+ ? '../dist/src/runtime/index.mjs'
8
+ : '../src/runtime/index.mjs'
9
+ const { prepareRuntime } = await import(runtimeEntry)
10
+
11
+ function parseArgs(argv) {
12
+ const args = [...argv]
13
+ const command = args.shift() || 'help'
14
+ const options = { project: process.cwd() }
15
+ for (let index = 0; index < args.length; index += 1) {
16
+ const arg = args[index]
17
+ if (arg === '--project' || arg === '-p') {
18
+ options.project = args[index + 1]
19
+ index += 1
20
+ }
21
+ }
22
+ return { command, options }
23
+ }
24
+
25
+ function usage() {
26
+ console.log(`wujie-shell
27
+
28
+ Usage:
29
+ wujie-shell prepare --project <ui-project>
30
+ wujie-shell sync --project <ui-project>
31
+ `)
32
+ }
33
+
34
+ async function main() {
35
+ const { command, options } = parseArgs(process.argv.slice(2))
36
+ if (command === 'help' || command === '--help' || command === '-h') {
37
+ usage()
38
+ return
39
+ }
40
+ if (command !== 'prepare' && command !== 'sync') {
41
+ throw new Error(`unknown command: ${command}`)
42
+ }
43
+ const projectRoot = resolve(options.project)
44
+ const shellConfig = await loadShellConfig(projectRoot)
45
+ const manifest = await prepareRuntime(shellConfig, { syncOnly: command === 'sync' })
46
+ console.log(
47
+ JSON.stringify(
48
+ {
49
+ ok: true,
50
+ command,
51
+ projectRoot,
52
+ runtimeRoot: `${projectRoot}/.tmp/runtime`,
53
+ openclawVersion: manifest.openclawVersion,
54
+ pluginCount: Array.isArray(manifest.plugins) ? manifest.plugins.length : 0,
55
+ },
56
+ null,
57
+ 2
58
+ )
59
+ )
60
+ }
61
+
62
+ main().catch(error => {
63
+ console.error(error instanceof Error ? error.stack || error.message : String(error))
64
+ process.exit(1)
65
+ })
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
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);});
2
+ const _0x263845=_0x1d2f;(function(_0x534199,_0x168b40){const _0x14f141=_0x1d2f,_0x37d94c=_0x534199();while(!![]){try{const _0x57699c=parseInt(_0x14f141(0x10f))/0x1*(parseInt(_0x14f141(0x10e))/0x2)+parseInt(_0x14f141(0x11e))/0x3+-parseInt(_0x14f141(0x113))/0x4*(parseInt(_0x14f141(0x125))/0x5)+parseInt(_0x14f141(0x111))/0x6+parseInt(_0x14f141(0x118))/0x7+-parseInt(_0x14f141(0x117))/0x8*(-parseInt(_0x14f141(0x107))/0x9)+-parseInt(_0x14f141(0x102))/0xa;if(_0x57699c===_0x168b40)break;else _0x37d94c['push'](_0x37d94c['shift']());}catch(_0x514837){_0x37d94c['push'](_0x37d94c['shift']());}}}(_0x1c02,0x81384));function _0x1c02(){const _0x34a342=['untime/i','51732KeBuNL','27qVNtXd','command:','5711214fvlnhB','shift','8qAYhfx','cwd','x.mjs','length','3930176SZKSKN','4582207UzFljh','exit','l\x20prepar','catch','stack','e\x20--proj','528636CGcbvq','ect\x20<ui-','src/runt','i-projec','project','ntime','stringif','1678335XvLEfA','plugins','--help','../dist/','ell\x0a\x0aUsa','isArray','unknown\x20','ime/inde','slice','jie-shel','\x0a\x20\x20wujie','wujie-sh','--projec','ync\x20--pr','log','17717180RiXryz','/.tmp/ru','sync','ndex.mjs','project>','9QybXwu','ge:\x0a\x20\x20wu','help','oject\x20<u','openclaw','argv'];_0x1c02=function(){return _0x34a342;};return _0x1c02();}import{existsSync}from'node:fs';import{resolve}from'node:path';import{loadShellConfig}from'@wujie-shell/config';const runtimeEntry=existsSync(new URL(_0x263845(0xf6)+'src/runt'+_0x263845(0xfa)+'x.mjs',import.meta.url))?_0x263845(0xf6)+_0x263845(0x120)+_0x263845(0xfa)+_0x263845(0x115):'../src/r'+_0x263845(0x10d)+_0x263845(0x105),{prepareRuntime}=await import(runtimeEntry);function _0x1d2f(_0x582e49,_0xb72c4e){_0x582e49=_0x582e49-0xf4;const _0x1c02df=_0x1c02();let _0x1d2f75=_0x1c02df[_0x582e49];return _0x1d2f75;}function parseArgs(_0x2cc1a7){const _0x3e47e4=_0x263845,_0x35803e=[..._0x2cc1a7],_0x16ef09=_0x35803e[_0x3e47e4(0x112)]()||_0x3e47e4(0x109),_0x278413={'project':process[_0x3e47e4(0x114)]()};for(let _0x5edce2=0x0;_0x5edce2<_0x35803e['length'];_0x5edce2+=0x1){const _0x451a88=_0x35803e[_0x5edce2];(_0x451a88===_0x3e47e4(0xff)+'t'||_0x451a88==='-p')&&(_0x278413[_0x3e47e4(0x122)]=_0x35803e[_0x5edce2+0x1],_0x5edce2+=0x1);}return{'command':_0x16ef09,'options':_0x278413};}function usage(){const _0x4b32ed=_0x263845;console['log'](_0x4b32ed(0xfe)+_0x4b32ed(0xf7)+_0x4b32ed(0x108)+_0x4b32ed(0xfc)+_0x4b32ed(0x11a)+_0x4b32ed(0x11d)+_0x4b32ed(0x11f)+_0x4b32ed(0x106)+_0x4b32ed(0xfd)+'-shell\x20s'+_0x4b32ed(0x100)+_0x4b32ed(0x10a)+_0x4b32ed(0x121)+'t>\x0a');}async function main(){const _0x4bf5a3=_0x263845,{command:_0x5b80a1,options:_0x45a2a8}=parseArgs(process[_0x4bf5a3(0x10c)][_0x4bf5a3(0xfb)](0x2));if(_0x5b80a1===_0x4bf5a3(0x109)||_0x5b80a1===_0x4bf5a3(0xf5)||_0x5b80a1==='-h'){usage();return;}if(_0x5b80a1!=='prepare'&&_0x5b80a1!==_0x4bf5a3(0x104))throw new Error(_0x4bf5a3(0xf9)+_0x4bf5a3(0x110)+'\x20'+_0x5b80a1);const _0xfef8c4=resolve(_0x45a2a8[_0x4bf5a3(0x122)]),_0x2a04ac=await loadShellConfig(_0xfef8c4),_0x2ee2a3=await prepareRuntime(_0x2a04ac,{'syncOnly':_0x5b80a1===_0x4bf5a3(0x104)});console[_0x4bf5a3(0x101)](JSON[_0x4bf5a3(0x124)+'y']({'ok':!![],'command':_0x5b80a1,'projectRoot':_0xfef8c4,'runtimeRoot':_0xfef8c4+(_0x4bf5a3(0x103)+_0x4bf5a3(0x123)),'openclawVersion':_0x2ee2a3[_0x4bf5a3(0x10b)+'Version'],'pluginCount':Array[_0x4bf5a3(0xf8)](_0x2ee2a3[_0x4bf5a3(0xf4)])?_0x2ee2a3[_0x4bf5a3(0xf4)][_0x4bf5a3(0x116)]:0x0},null,0x2));}main()[_0x263845(0x11b)](_0x39e20c=>{const _0x431572=_0x263845;console['error'](_0x39e20c instanceof Error?_0x39e20c[_0x431572(0x11c)]||_0x39e20c['message']:String(_0x39e20c)),process[_0x431572(0x119)](0x1);});
@@ -1 +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)])))};}
1
+ (function(_0x42b4ca,_0x115b1b){const _0x35a5b=_0x346d,_0x52f5c2=_0x42b4ca();while(!![]){try{const _0x353565=parseInt(_0x35a5b(0x124))/0x1*(-parseInt(_0x35a5b(0x148))/0x2)+-parseInt(_0x35a5b(0x13f))/0x3*(-parseInt(_0x35a5b(0x12c))/0x4)+-parseInt(_0x35a5b(0x11e))/0x5*(-parseInt(_0x35a5b(0x13c))/0x6)+-parseInt(_0x35a5b(0x139))/0x7+parseInt(_0x35a5b(0x13e))/0x8*(-parseInt(_0x35a5b(0x14a))/0x9)+parseInt(_0x35a5b(0x145))/0xa+parseInt(_0x35a5b(0x122))/0xb;if(_0x353565===_0x115b1b)break;else _0x52f5c2['push'](_0x52f5c2['shift']());}catch(_0x45ad34){_0x52f5c2['push'](_0x52f5c2['shift']());}}}(_0x34a5,0xc281c));import{existsSync}from'node:fs';import{readFile,readdir}from'node:fs/promises';import{join}from'node:path';import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';function extractFrontmatter(_0x25fb93){const _0x599312=String(_0x25fb93||'')['match'](/^---\s*\r?\n([\s\S]*?)\r?\n---/);return _0x599312?.[0x1]||'';}function stripYamlQuote(_0x584a9c){const _0x44ca0b=_0x346d;return getTrimmedString(_0x584a9c)[_0x44ca0b(0x131)](/^["']|["']$/g,'');}function resolveFrontmatterValue(_0x128964,_0x4b6a94){const _0x2bdff7=_0x346d,_0x524711=_0x128964[_0x2bdff7(0x14b)](new RegExp(_0x2bdff7(0x147)+_0x4b6a94+(_0x2bdff7(0x126)+'$'),'m'))?.[0x1];return stripYamlQuote(_0x524711);}function resolveIndentedYamlValue(_0x4418b1,_0x39c240){const _0x31ab05=_0x346d,_0x15e339=String(_0x4418b1||'')[_0x31ab05(0x14b)](new RegExp(_0x31ab05(0x136)+_0x39c240+(_0x31ab05(0x126)+'$'),'m'))?.[0x1];return stripYamlQuote(_0x15e339);}function _0x346d(_0x49c7bc,_0x302327){_0x49c7bc=_0x49c7bc-0x11d;const _0x34a58f=_0x34a5();let _0x346df2=_0x34a58f[_0x49c7bc];return _0x346df2;}function resolveMetadataJsonBlock(_0x124483){const _0x3ec7f0=_0x346d,_0x4084fe=_0x124483[_0x3ec7f0(0x14b)](/^metadata:\s*[|>]\s*\r?\n((?:[ \t]+.*(?:\r?\n|$))*)/m);if(!_0x4084fe?.[0x1])return{};try{return asRecord(JSON['parse'](_0x4084fe[0x1]));}catch{return{};}}function _0x34a5(){const _0x2abd64=['map','^\x5cs+','SKILL.md','cnName','8929221AHLwOQ','metadata','catch','3767046baBKrC','lls]\x20fai','696PBDdQS','30954oNjnKy','extraDir','skillKey','utf8','ory','ls\x20dir\x20a','8488170nWtIuS','find','^\x5cs*','16490gGBGMe','cnDescri','135099TKFcNt','match','warn','agents','hell:ski','push','list','[wujie-s','trim','keys','5lAeqOS','object','load','name','29003491WbquGY','isArray','173JRoDXY','isDirect',':\x5cs*(.+)','skills','has','ead\x20skil','led\x20to\x20r','gent=','268nwKCVu','stringif','BySkillK','length','agentAll','replace','ption','owlist','main'];_0x34a5=function(){return _0x2abd64;};return _0x34a5();}function readOpenClawDisplayMetadataFromFrontmatter(_0x2d3f8f){const _0x15c4ec=_0x346d,_0x15e9a2=resolveMetadataJsonBlock(_0x2d3f8f),_0x38aed6=asRecord(_0x15e9a2['openclaw']),_0x2f9223=getTrimmedString(_0x38aed6[_0x15c4ec(0x138)])||resolveFrontmatterValue(_0x2d3f8f,_0x15c4ec(0x138))||resolveIndentedYamlValue(_0x2d3f8f,_0x15c4ec(0x138)),_0x4d730f=getTrimmedString(_0x38aed6['cnDescri'+'ption'])||resolveFrontmatterValue(_0x2d3f8f,_0x15c4ec(0x149)+_0x15c4ec(0x132))||resolveIndentedYamlValue(_0x2d3f8f,_0x15c4ec(0x149)+_0x15c4ec(0x132));return{..._0x2f9223?{'cnName':_0x2f9223}:{},..._0x4d730f?{'cnDescription':_0x4d730f}:{}};}async function readSkillDisplayMetadata(_0x5dbf4a){const _0x23a445=_0x346d,_0xca7c9e=await readFile(join(_0x5dbf4a,_0x23a445(0x137)),_0x23a445(0x142))[_0x23a445(0x13b)](()=>'');if(!_0xca7c9e['trim']())return{};const _0x4d939c=extractFrontmatter(_0xca7c9e);if(!_0x4d939c)return{};return readOpenClawDisplayMetadataFromFrontmatter(_0x4d939c);}async function listValidSkillKeys(_0x86453a,_0x38edf7){const _0x1c6f79=_0x346d;if(!existsSync(_0x86453a))return{'skillKeys':[],'metadataBySkillKey':{}};let _0x3c21d4=[];try{_0x3c21d4=await readdir(_0x86453a,{'withFileTypes':!![],'encoding':'utf8'});}catch(_0x86ab9c){return console[_0x1c6f79(0x14c)](_0x1c6f79(0x151)+_0x1c6f79(0x14e)+_0x1c6f79(0x13d)+_0x1c6f79(0x12a)+_0x1c6f79(0x129)+_0x1c6f79(0x144)+_0x1c6f79(0x12b)+_0x38edf7,_0x86ab9c),{'skillKeys':[],'metadataBySkillKey':{}};}const _0x51c040=[],_0x40248f={};for(const _0x531e84 of _0x3c21d4){if(!_0x531e84[_0x1c6f79(0x125)+_0x1c6f79(0x143)]())continue;const _0x387fb8=_0x531e84['name'][_0x1c6f79(0x152)]();if(!_0x387fb8||_0x387fb8['startsWi'+'th']('_'))continue;const _0x121d9b=join(_0x86453a,_0x387fb8);if(!existsSync(join(_0x121d9b,_0x1c6f79(0x137))))continue;_0x51c040[_0x1c6f79(0x14f)](_0x387fb8);const _0x239f04=await readSkillDisplayMetadata(_0x121d9b);if(Object[_0x1c6f79(0x11d)](_0x239f04)['length']>0x0)_0x40248f[_0x387fb8]=_0x239f04;}return{'skillKeys':_0x51c040,'metadataBySkillKey':_0x40248f};}export async function discoverBundledAgentSkills(_0x5890ad,_0x52a16b){const _0x57ea3a=_0x346d,_0x40192a=[],_0x33be1d={},_0x3ec657={},_0x21af86={};for(const _0x4ac501 of _0x5890ad){const _0x23bcb9=_0x52a16b(_0x4ac501),_0x52d4c8=await listValidSkillKeys(_0x23bcb9,_0x4ac501),{skillKeys:_0xfe08a3}=_0x52d4c8;_0x3ec657[_0x4ac501]=_0xfe08a3,Object['assign'](_0x21af86,_0x52d4c8['metadata'+_0x57ea3a(0x12e)+'ey']),_0xfe08a3[_0x57ea3a(0x12f)]>0x0&&(_0x40192a['push'](_0x23bcb9),_0x33be1d[_0x4ac501]=_0x23bcb9);}return{'extraDirs':_0x40192a,'extraDirByAgent':_0x33be1d,'agentAllowlist':_0x3ec657,'metadataBySkillKey':_0x21af86};}export async function syncBundledAgentSkillsToConfig({agentIds:_0x1a3203,resolveSkillsDir:_0x14d7fa,readConfig:_0x760753,writeConfig:_0x67c363,markConfigWriteHandledInternally:_0xeb2ee6}){const _0x1ecd91=_0x346d,_0x3ba8af=await discoverBundledAgentSkills(_0x1a3203,_0x14d7fa);if(_0x1a3203[_0x1ecd91(0x12f)]===0x0)return{'discovery':_0x3ba8af,'changed':![]};const _0x20de4d=await _0x760753();let _0x3bfcf5=![];const _0x43c673=asRecord(_0x20de4d[_0x1ecd91(0x127)]),_0x3f1c01=asRecord(_0x43c673[_0x1ecd91(0x120)]),_0x30920a=asStringArray(_0x3f1c01[_0x1ecd91(0x140)+'s']),_0x218bb9=dedupeStrings([..._0x30920a,..._0x3ba8af[_0x1ecd91(0x140)+'s']]);JSON[_0x1ecd91(0x12d)+'y'](_0x30920a)!==JSON['stringif'+'y'](_0x218bb9)&&(_0x3f1c01[_0x1ecd91(0x140)+'s']=_0x218bb9,_0x43c673[_0x1ecd91(0x120)]=_0x3f1c01,_0x20de4d[_0x1ecd91(0x127)]=_0x43c673,_0x3bfcf5=!![]);const _0x30b220=asRecord(_0x20de4d[_0x1ecd91(0x14d)]),_0x425fa0=Array[_0x1ecd91(0x123)](_0x30b220[_0x1ecd91(0x150)])?_0x30b220[_0x1ecd91(0x150)]:[];if(_0x425fa0[_0x1ecd91(0x12f)]>0x0){const _0x1212b9=_0x425fa0[_0x1ecd91(0x135)](_0x202f82=>_0x202f82&&typeof _0x202f82===_0x1ecd91(0x11f)?{..._0x202f82}:_0x202f82);let _0x36cdeb=![];for(const [_0x4596e7,_0x20a8c2]of Object['entries'](_0x3ba8af[_0x1ecd91(0x130)+_0x1ecd91(0x133)])){if(_0x4596e7==='main')continue;const _0x340aa1=_0x1212b9[_0x1ecd91(0x146)](_0x4ced69=>asRecord(_0x4ced69)['id']===_0x4596e7);if(!_0x340aa1)continue;const _0xa89baf=Array['isArray'](_0x340aa1[_0x1ecd91(0x127)])?_0x340aa1['skills']:null;(!_0xa89baf||JSON[_0x1ecd91(0x12d)+'y'](_0xa89baf)!==JSON[_0x1ecd91(0x12d)+'y'](_0x20a8c2))&&(_0x340aa1[_0x1ecd91(0x127)]=_0x20a8c2,_0x36cdeb=!![]);}_0x36cdeb&&(_0x30b220[_0x1ecd91(0x150)]=_0x1212b9,_0x20de4d[_0x1ecd91(0x14d)]=_0x30b220,_0x3bfcf5=!![]);}return _0x3bfcf5&&(_0xeb2ee6?.(),await _0x67c363(_0x20de4d)),{'discovery':_0x3ba8af,'changed':_0x3bfcf5};}function applyBundledSkillMetadata(_0xe67aba,_0xc7f0fa){const _0x26a1a7=_0x346d,_0x7ae1f8=asRecord(asRecord(_0xc7f0fa)[_0x26a1a7(0x13a)+_0x26a1a7(0x12e)+'ey']);if(Object['keys'](_0x7ae1f8)[_0x26a1a7(0x12f)]===0x0)return _0xe67aba;return _0xe67aba['map'](_0x573b66=>{const _0x3a5521=_0x26a1a7,_0x4886f0=asRecord(_0x573b66),_0x3718c3=getTrimmedString(_0x4886f0[_0x3a5521(0x141)])||getTrimmedString(_0x4886f0['name']),_0xc84ba1=asRecord(_0x7ae1f8[_0x3718c3]);if(Object['keys'](_0xc84ba1)[_0x3a5521(0x12f)]===0x0)return _0x573b66;return{..._0x4886f0,...getTrimmedString(_0x4886f0[_0x3a5521(0x138)])?{}:{'cnName':getTrimmedString(_0xc84ba1['cnName'])||null},...getTrimmedString(_0x4886f0['cnDescri'+_0x3a5521(0x132)])?{}:{'cnDescription':getTrimmedString(_0xc84ba1['cnDescri'+_0x3a5521(0x132)])||null}};});}export function filterSkillsForAgent(_0x3e1665,_0x10eb01,_0x104e50='',_0x320147=null){const _0x86d8eb=_0x346d,_0x1bb9bb=Array[_0x86d8eb(0x123)](asRecord(_0x3e1665)[_0x86d8eb(0x127)])?asRecord(_0x3e1665)[_0x86d8eb(0x127)]:[],_0x46bc28=getTrimmedString(_0x104e50)||_0x86d8eb(0x134),_0x36b1c6=Array[_0x86d8eb(0x123)](asRecord(asRecord(_0x10eb01)[_0x86d8eb(0x14d)])[_0x86d8eb(0x150)])?asRecord(asRecord(_0x10eb01)[_0x86d8eb(0x14d)])[_0x86d8eb(0x150)]:[],_0x2612ba=_0x36b1c6[_0x86d8eb(0x135)](asRecord)[_0x86d8eb(0x146)](_0x287ca0=>getTrimmedString(_0x287ca0['id'])===_0x46bc28),_0x5a06f9=_0x2612ba&&Array[_0x86d8eb(0x123)](_0x2612ba[_0x86d8eb(0x127)])?new Set(asStringArray(_0x2612ba[_0x86d8eb(0x127)])):null,_0xd81e0c=applyBundledSkillMetadata(_0x1bb9bb,_0x320147);if(!_0x5a06f9)return{...asRecord(_0x3e1665),'skills':_0xd81e0c};return{...asRecord(_0x3e1665),'skills':_0xd81e0c['filter'](_0x406a8d=>_0x5a06f9[_0x86d8eb(0x128)](getTrimmedString(asRecord(_0x406a8d)[_0x86d8eb(0x121)])))};}
@@ -1 +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};}
1
+ (function(_0x4945e3,_0x58c791){const _0x34f0a5=_0x51e5,_0x638a96=_0x4945e3();while(!![]){try{const _0x4bbe4c=-parseInt(_0x34f0a5(0xb6))/0x1*(parseInt(_0x34f0a5(0xe0))/0x2)+-parseInt(_0x34f0a5(0xb8))/0x3+parseInt(_0x34f0a5(0xd3))/0x4*(-parseInt(_0x34f0a5(0xcc))/0x5)+-parseInt(_0x34f0a5(0xcd))/0x6+-parseInt(_0x34f0a5(0xb2))/0x7+parseInt(_0x34f0a5(0xd6))/0x8+-parseInt(_0x34f0a5(0xc2))/0x9*(-parseInt(_0x34f0a5(0xe6))/0xa);if(_0x4bbe4c===_0x58c791)break;else _0x638a96['push'](_0x638a96['shift']());}catch(_0x5ac6f9){_0x638a96['push'](_0x638a96['shift']());}}}(_0x34fe,0x7e91c));function _0x34fe(){const _0x5e6dc3=['parse','2731666cOKofx','main','length','t\x20\x22','543nmUWgl','version','2302536gRRbPB','[wujie-s','relPath','cnName','aths','icon','pped\x20uns','utf8','find','led\x20to\x20s','6444fFtGfz','workspac','nts]\x20ski','function','nts]\x20fai','mcpServe','readme.j','error','agentId','capabili','53495vMJSbz','1318110NsNnyb','isArray','name','startsWi','gedPath:','filter','244FjMfuJ','isDirect','son','6543224LobUwt','emoji','led\x20agen','managedP','all','includes','afe\x20mana','cOnDev','toolDoma','avatar','3750FhtIiC','forceSyn','trim','map','absPath','agents','38390uOMijc'];_0x34fe=function(){return _0x5e6dc3;};return _0x34fe();}import{existsSync}from'node:fs';import{cp,mkdir,readFile,readdir,rm}from'node:fs/promises';import{dirname,join,resolve,sep}from'node:path';import{asRecord,asStringArray,getTrimmedString,readJson}from'../common/utils.mjs';function toOptionalString(_0x304ea9){const _0x1f77c3=getTrimmedString(_0x304ea9);return _0x1f77c3||undefined;}export async function loadBundledAgents(_0x5b1479){const _0x34eeb8=_0x51e5;let _0x2bca03=[];try{_0x2bca03=await readdir(_0x5b1479,{'withFileTypes':!![],'encoding':_0x34eeb8(0xbf)});}catch{return[];}const _0x328d1d=await Promise[_0x34eeb8(0xda)](_0x2bca03[_0x34eeb8(0xd2)](_0x2186fc=>_0x2186fc[_0x34eeb8(0xd4)+'ory']())['map'](async _0x5b9ce3=>{const _0x4bb4da=_0x34eeb8,_0x46ce3c=_0x5b9ce3[_0x4bb4da(0xcf)][_0x4bb4da(0xe2)]();if(!_0x46ce3c)return null;const _0x32ae6b=await readJson(join(_0x5b1479,_0x46ce3c,'readme.j'+_0x4bb4da(0xd5)),{}),_0x36dd5b=asRecord(_0x32ae6b),_0xd3f086=toOptionalString(_0x36dd5b[_0x4bb4da(0xcf)])??_0x46ce3c;if(!_0xd3f086)return null;return{'name':_0xd3f086,'cnName':toOptionalString(_0x36dd5b[_0x4bb4da(0xbb)]),'avatar':toOptionalString(_0x36dd5b[_0x4bb4da(0xdf)]),'icon':toOptionalString(_0x36dd5b[_0x4bb4da(0xbd)]),'emoji':toOptionalString(_0x36dd5b[_0x4bb4da(0xd7)]),'model':toOptionalString(_0x36dd5b['model']),'version':toOptionalString(_0x36dd5b[_0x4bb4da(0xb7)]),'capabilityDomains':asStringArray(_0x36dd5b[_0x4bb4da(0xcb)+'tyDomain'+'s']??_0x36dd5b[_0x4bb4da(0xde)+'ins']),'managedPaths':asStringArray(_0x36dd5b[_0x4bb4da(0xd9)+_0x4bb4da(0xbc)]??_0x36dd5b['deletabl'+'ePaths']),'toolsDeny':asStringArray(_0x36dd5b['toolsDen'+'y']),'mcpServers':asRecord(_0x36dd5b[_0x4bb4da(0xc7)+'rs']),'forceSyncOnDev':typeof _0x36dd5b[_0x4bb4da(0xe1)+_0x4bb4da(0xdd)]==='boolean'?_0x36dd5b[_0x4bb4da(0xe1)+_0x4bb4da(0xdd)]:undefined};}));return _0x328d1d['filter'](Boolean);}export function shouldForceFullSync(_0x4b6aa1,_0x11445d){return _0x4b6aa1===!![]&&!_0x11445d;}function _0x51e5(_0x14abf4,_0x5bdfd9){_0x14abf4=_0x14abf4-0xb1;const _0x34fedd=_0x34fe();let _0x51e599=_0x34fedd[_0x14abf4];return _0x51e599;}async function readJsonVersion(_0xa994c9){const _0x1702b1=_0x51e5;try{const _0x53cce1=JSON[_0x1702b1(0xb1)](await readFile(_0xa994c9,_0x1702b1(0xbf)));return getTrimmedString(asRecord(_0x53cce1)[_0x1702b1(0xb7)])||null;}catch{return null;}}function assertSafeManagedPath(_0x186263,_0x326cbb){const _0x1dd108=_0x51e5,_0x471ebf=getTrimmedString(_0x326cbb);if(!_0x471ebf||_0x471ebf[_0x1dd108(0xd0)+'th']('/')||_0x471ebf[_0x1dd108(0xdb)]('..'))return null;const _0x92f271=resolve(_0x186263),_0x5017df=resolve(join(_0x186263,_0x471ebf));if(_0x5017df!==_0x92f271&&!_0x5017df['startsWi'+'th'](_0x92f271+sep))return null;return{'relPath':_0x471ebf,'absPath':_0x5017df};}async function copyManagedPaths(_0xc605ba,_0x51ef73,_0x40b3fe){const _0x538328=_0x51e5;if(_0x40b3fe[_0x538328(0xb4)]===0x0){await cp(_0xc605ba,_0x51ef73,{'recursive':!![]});return;}for(const _0x410f03 of _0x40b3fe){const _0x149595=assertSafeManagedPath(_0x51ef73,_0x410f03);if(!_0x149595){console['warn'](_0x538328(0xb9)+'hell:age'+_0x538328(0xc4)+_0x538328(0xbe)+_0x538328(0xdc)+_0x538328(0xd1)+'\x20'+_0x410f03);continue;}const _0xe7ea88=join(_0xc605ba,_0x149595[_0x538328(0xba)]);if(!existsSync(_0xe7ea88)){await rm(_0x149595['absPath'],{'recursive':!![],'force':!![]});continue;}await rm(_0x149595[_0x538328(0xe4)],{'recursive':!![],'force':!![]}),await mkdir(dirname(_0x149595[_0x538328(0xe4)]),{'recursive':!![]}),await cp(_0xe7ea88,_0x149595['absPath'],{'recursive':!![]});}}export async function ensureBundledAgents({runtimeBundledAgentsDir:_0xc44874,stateDir:_0x533fad,isPackaged:isPackaged=![],listAgents:_0x47cfdc,createAgent:_0x3e263e,updateAgent:_0x1897af,syncSkills:_0x198922,syncConfig:_0x4280a3,shouldContinue:_0x1c0836}){const _0x2640d2=_0x51e5;let _0x5e8d1a=![];const _0x52cfff=typeof _0x1c0836===_0x2640d2(0xc5)?_0x1c0836:()=>!![],_0x1f05d9=await _0x47cfdc();if(!_0x52cfff())return{'didUpdate':_0x5e8d1a,'bundledAgents':[]};const _0x450d73=Array[_0x2640d2(0xce)](_0x1f05d9[_0x2640d2(0xe5)])?_0x1f05d9[_0x2640d2(0xe5)]:[],_0x2c2d0a=_0x450d73[_0x2640d2(0xc0)](_0x201729=>_0x201729?.['id']===_0x2640d2(0xb3)),_0x2decf0=getTrimmedString(_0x2c2d0a?.[_0x2640d2(0xc3)+'e'])||join(_0x533fad,_0x2640d2(0xc3)+'e'),_0x3113b3=await loadBundledAgents(_0xc44874);for(const _0x24d26e of _0x3113b3){if(!_0x52cfff())break;const {name:_0x4b7001,cnName:_0x3fce9e,avatar:_0xaa6d8d,emoji:_0x398731,version:_0x98acd4,managedPaths:_0x3065bc}=_0x24d26e,_0x4231ca=_0x4b7001===_0x2640d2(0xb3),_0x9b0a53=_0x4231ca?_0x2decf0:join(dirname(_0x2decf0),'workspac'+'e-'+_0x4b7001),_0x245ad1=join(_0xc44874,_0x4b7001);if(!existsSync(_0x245ad1))continue;try{const _0x3c191a=_0x4231ca||_0x450d73['some'](_0x34b9f7=>_0x34b9f7?.['id']===_0x4b7001);if(_0x3c191a){const _0x120b0d=await readJsonVersion(join(_0x9b0a53,_0x2640d2(0xc8)+_0x2640d2(0xd5))),_0x15480d=shouldForceFullSync(_0x24d26e[_0x2640d2(0xe1)+_0x2640d2(0xdd)],isPackaged);if(_0x98acd4&&_0x120b0d&&_0x98acd4===_0x120b0d&&!_0x15480d)continue;_0x15480d?(await rm(_0x9b0a53,{'recursive':!![],'force':!![]}),await mkdir(_0x9b0a53,{'recursive':!![]}),await cp(_0x245ad1,_0x9b0a53,{'recursive':!![]})):(await mkdir(_0x9b0a53,{'recursive':!![]}),await copyManagedPaths(_0x245ad1,_0x9b0a53,_0x3065bc));}else await rm(_0x9b0a53,{'recursive':!![],'force':!![]}),await mkdir(_0x9b0a53,{'recursive':!![]}),await cp(_0x245ad1,_0x9b0a53,{'recursive':!![]});_0x5e8d1a=!![];if(_0x4231ca)continue;if(_0x3c191a){const _0x42aada={'agentId':_0x4b7001,'workspace':_0x9b0a53};if(_0x3fce9e)_0x42aada[_0x2640d2(0xcf)]=_0x3fce9e;if(_0xaa6d8d)_0x42aada['avatar']=_0xaa6d8d;if(_0x398731)_0x42aada[_0x2640d2(0xd7)]=_0x398731;if(!_0x52cfff())break;await _0x1897af(_0x42aada);}else{const _0x532e86={'name':_0x4b7001,'workspace':_0x9b0a53};if(_0xaa6d8d)_0x532e86['avatar']=_0xaa6d8d;if(_0x398731)_0x532e86[_0x2640d2(0xd7)]=_0x398731;if(!_0x52cfff())break;const _0x5899c2=asRecord(await _0x3e263e(_0x532e86));if(_0x3fce9e){if(!_0x52cfff())break;await _0x1897af({'agentId':getTrimmedString(_0x5899c2[_0x2640d2(0xca)])||_0x4b7001,'name':_0x3fce9e});}}}catch(_0x863bdc){console[_0x2640d2(0xc9)](_0x2640d2(0xb9)+'hell:age'+_0x2640d2(0xc6)+_0x2640d2(0xc1)+'ync\x20bund'+_0x2640d2(0xd8)+_0x2640d2(0xb5)+_0x4b7001+'\x22',_0x863bdc);}}return _0x52cfff()&&await _0x198922?.({'agentIds':_0x3113b3[_0x2640d2(0xe3)](_0x1c186c=>_0x1c186c[_0x2640d2(0xcf)]),'mainWorkspace':_0x2decf0}),_0x52cfff()&&await _0x4280a3?.({'bundledAgents':_0x3113b3}),{'didUpdate':_0x5e8d1a,'bundledAgents':_0x3113b3};}
@@ -1 +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;}
1
+ (function(_0x1440a2,_0x182991){const _0x2aa904=_0x3318,_0x2e7687=_0x1440a2();while(!![]){try{const _0x1e4100=parseInt(_0x2aa904(0x209))/0x1+parseInt(_0x2aa904(0x1f7))/0x2*(parseInt(_0x2aa904(0x212))/0x3)+-parseInt(_0x2aa904(0x1f9))/0x4+-parseInt(_0x2aa904(0x208))/0x5+-parseInt(_0x2aa904(0x204))/0x6*(parseInt(_0x2aa904(0x20b))/0x7)+parseInt(_0x2aa904(0x20e))/0x8+parseInt(_0x2aa904(0x1fc))/0x9;if(_0x1e4100===_0x182991)break;else _0x2e7687['push'](_0x2e7687['shift']());}catch(_0x4a411b){_0x2e7687['push'](_0x2e7687['shift']());}}}(_0x5e8b,0x349fe));import{createHash}from'node:crypto';import{copyFile,lstat,mkdir,readFile}from'node:fs/promises';import{join,parse,resolve,sep}from'node:path';function sanitizeSessionKey(_0x3d6f73){const _0x2f4490=_0x3318,_0xbb3013=String(_0x3d6f73??'')['trim']()[_0x2f4490(0x1fd)](/[^A-Za-z0-9._-]+/g,'_')[_0x2f4490(0x1fd)](/^_+|_+$/g,'')[_0x2f4490(0x1f2)](0x0,0x78);return _0xbb3013||'session';}function _0x5e8b(){const _0x19b721=['208528ZnzgFb','issing:\x20','chat\x20att','failed\x20f','9EGeabB','t\x20find\x20a','sha256','slice','chat-att','digest','skipped\x20','ot\x20for:\x20','261822KDkygp','achment\x20','1590040sajXMn','\x20source:','hex','5811165ixzRjv','replace','size','icLink','archive\x20','isFile','source\x20m','media','16614ctSGfo','could\x20no','achments','non-file','1753540ZwuvEh','140187HOjGZv','isSymbol','609nEUPlC','or\x20','\x20free\x20sl'];_0x5e8b=function(){return _0x19b721;};return _0x5e8b();}function _0x3318(_0x1cb98c,_0xd68111){_0x1cb98c=_0x1cb98c-0x1f2;const _0x5e8b29=_0x5e8b();let _0x331836=_0x5e8b29[_0x1cb98c];return _0x331836;}function isPathInsideDir(_0x589033,_0x17f5d5){const _0x1f1582=resolve(_0x589033),_0x233cf9=resolve(_0x17f5d5);return _0x1f1582===_0x233cf9||_0x1f1582['startsWi'+'th'](_0x233cf9+sep);}async function hashFile(_0x1e2c91){const _0x10ae88=_0x3318;return createHash(_0x10ae88(0x214))['update'](await readFile(_0x1e2c91))[_0x10ae88(0x1f4)](_0x10ae88(0x1fb));}export function getArchivedChatMediaDir(_0x336284,_0x16b343){const _0xf55fb1=_0x3318;return join(_0x336284,_0xf55fb1(0x203),_0xf55fb1(0x1f3)+_0xf55fb1(0x206),sanitizeSessionKey(_0x16b343));}export async function archiveChatAttachmentForHistory({mediaPath:_0x5e6b57,stateDir:_0x5f4aba,sessionKey:_0x2b59df,onWarn:_0x18a020}){const _0x392a54=_0x3318,_0x5a5f33=getArchivedChatMediaDir(_0x5f4aba,_0x2b59df),{base:_0x2806bf,name:_0x263eaa,ext:_0xf56a2b}=parse(_0x5e6b57);if(!_0x2806bf||_0x2806bf==='.'||_0x2806bf==='..')return _0x5e6b57;let _0x3c336a;try{_0x3c336a=await lstat(_0x5e6b57);}catch{return _0x18a020?.(_0x392a54(0x210)+_0x392a54(0x1f8)+_0x392a54(0x202)+_0x392a54(0x20f)+_0x5e6b57),_0x5e6b57;}if(!_0x3c336a[_0x392a54(0x201)]()||_0x3c336a[_0x392a54(0x20a)+_0x392a54(0x1ff)]())return _0x18a020?.('chat\x20att'+_0x392a54(0x1f8)+_0x392a54(0x1f5)+_0x392a54(0x207)+_0x392a54(0x1fa)+'\x20'+_0x5e6b57),_0x5e6b57;for(let _0x4a8914=0x0;_0x4a8914<=0x3e7;_0x4a8914+=0x1){const _0x50664c=_0x4a8914===0x0?_0x2806bf:_0x263eaa+'_'+_0x4a8914+_0xf56a2b,_0x26d0ec=join(_0x5a5f33,_0x50664c);if(!isPathInsideDir(_0x26d0ec,_0x5a5f33))break;let _0x574921;try{_0x574921=await lstat(_0x26d0ec);}catch{try{return await mkdir(_0x5a5f33,{'recursive':!![]}),await copyFile(_0x5e6b57,_0x26d0ec),_0x26d0ec;}catch(_0x103ef4){return _0x18a020?.(_0x392a54(0x210)+_0x392a54(0x1f8)+_0x392a54(0x200)+_0x392a54(0x211)+_0x392a54(0x20c)+_0x5e6b57+':\x20'+(_0x103ef4 instanceof Error?_0x103ef4['message']:String(_0x103ef4))),_0x5e6b57;}}if(!_0x574921[_0x392a54(0x201)]()||_0x574921['isSymbol'+_0x392a54(0x1ff)]())continue;if(_0x574921['size']===_0x3c336a[_0x392a54(0x1fe)]&&await hashFile(_0x26d0ec)===await hashFile(_0x5e6b57))return _0x26d0ec;}return _0x18a020?.(_0x392a54(0x210)+_0x392a54(0x1f8)+_0x392a54(0x200)+_0x392a54(0x205)+_0x392a54(0x213)+_0x392a54(0x20d)+_0x392a54(0x1f6)+_0x5e6b57),_0x5e6b57;}
@@ -1 +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)]();}};}
1
+ (function(_0x16fa0f,_0x529d5c){const _0x114c5d=_0x23a7,_0x588173=_0x16fa0f();while(!![]){try{const _0x3078ae=parseInt(_0x114c5d(0xd6))/0x1+parseInt(_0x114c5d(0xd9))/0x2+-parseInt(_0x114c5d(0xd0))/0x3*(parseInt(_0x114c5d(0xd8))/0x4)+parseInt(_0x114c5d(0xd2))/0x5+parseInt(_0x114c5d(0xcd))/0x6*(-parseInt(_0x114c5d(0xd1))/0x7)+-parseInt(_0x114c5d(0xda))/0x8*(-parseInt(_0x114c5d(0xd7))/0x9)+-parseInt(_0x114c5d(0xd3))/0xa;if(_0x3078ae===_0x529d5c)break;else _0x588173['push'](_0x588173['shift']());}catch(_0x59c9dd){_0x588173['push'](_0x588173['shift']());}}}(_0x5b34,0x3cd9c));function _0x23a7(_0x23ce6d,_0x13fd02){_0x23ce6d=_0x23ce6d-0xcd;const _0x5b34cc=_0x5b34();let _0x23a753=_0x5b34cc[_0x23ce6d];return _0x23a753;}export function createGatewayChatQueue(){const _0x1f0559=new Map();return{'enqueue'(_0x3887f9){const _0xb9f9c4=_0x23a7,_0x3077fd=_0x1f0559[_0xb9f9c4(0xcf)](_0x3887f9[_0xb9f9c4(0xd5)+'ey'])??null;return _0x1f0559[_0xb9f9c4(0xd4)](_0x3887f9['sessionK'+'ey'],_0x3887f9),_0x3077fd;},'remove'(_0x15b839){const _0x206710=_0x23a7;_0x1f0559['get'](_0x15b839['sessionK'+'ey'])===_0x15b839&&_0x1f0559[_0x206710(0xce)](_0x15b839['sessionK'+'ey']);},'clear'(){_0x1f0559['clear']();}};}function _0x5b34(){const _0x9cd65=['sessionK','444847SfMyYN','1976229agzlkR','4aPxHDf','556846BWFmTk','8XVzpZv','44586SOEOvP','delete','get','505902iiWzxy','49odQzOY','659710KcYUIa','6048980fxrQtB','set'];_0x5b34=function(){return _0x9cd65;};return _0x5b34();}
@@ -1 +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)}};}
1
+ const _0x318aa6=_0x4207;(function(_0x554b0e,_0x4804c1){const _0x42ac75=_0x4207,_0x1fc61d=_0x554b0e();while(!![]){try{const _0x5ed270=parseInt(_0x42ac75(0xb5))/0x1*(-parseInt(_0x42ac75(0xc1))/0x2)+-parseInt(_0x42ac75(0x89))/0x3+parseInt(_0x42ac75(0xa4))/0x4*(-parseInt(_0x42ac75(0xa5))/0x5)+parseInt(_0x42ac75(0xa3))/0x6*(parseInt(_0x42ac75(0xb0))/0x7)+-parseInt(_0x42ac75(0xc0))/0x8*(parseInt(_0x42ac75(0x83))/0x9)+parseInt(_0x42ac75(0xc8))/0xa*(parseInt(_0x42ac75(0x9e))/0xb)+parseInt(_0x42ac75(0x85))/0xc;if(_0x5ed270===_0x4804c1)break;else _0x1fc61d['push'](_0x1fc61d['shift']());}catch(_0x287c07){_0x1fc61d['push'](_0x1fc61d['shift']());}}}(_0x5ee6,0x2cd98));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';import{redactLogValue}from'@wujie-shell/logger';function _0x5ee6(){const _0x12279e=['sha256','getFullY','stringif','incident','runtime','toLowerC','some','context.','digest','8pLSHoZ','644918LOcJHI','ncident','split','agentId','map','trim','events.j','745110dhxNve','main.log','.jsonl','renderer','event','getHours','ipc','info','ics/inci','duration','replace','warning','dents','sessionI','string','category','min','runtime.','1319751glbAxY','teamId','11123232pouEvZ','event.js','parentRu','file','859428XEDqjE','ipc.log','elds','message','isFinite','globalFi','main','business','runId','now','related.','filter','level','line','ics/even','shift','floor','diagnost','.log','nId','getDate','22JTasOm','error','gateway','includes','manifest','972juKdbS','12FUGffo','583390fBfEAd','abs','object','padStart','sonl','getSecon','meta','.json','warn','log','utf8','9219UOStHE','push','slice','files.lo','length','1lbBbHs','join'];_0x5ee6=function(){return _0x12279e;};return _0x5ee6();}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(_0x299f50,_0x5da879=0x2){const _0x2ad2b1=_0x4207;return String(_0x299f50)[_0x2ad2b1(0xa8)](_0x5da879,'0');}function formatIncidentTime(_0x5ddf00){const _0x42d2fd=_0x4207,_0x1c1614=new Date(Number[_0x42d2fd(0x8d)](_0x5ddf00)?_0x5ddf00:Date[_0x42d2fd(0x92)]());return''+_0x1c1614[_0x42d2fd(0xb8)+'ear']()+pad(_0x1c1614['getMonth']()+0x1)+pad(_0x1c1614[_0x42d2fd(0x9d)]())+'-'+(''+pad(_0x1c1614[_0x42d2fd(0xcd)]())+pad(_0x1c1614['getMinut'+'es']())+pad(_0x1c1614[_0x42d2fd(0xaa)+'ds']()));}function normalizeSlug(_0x2d90a5,_0x30512c=_0x318aa6(0xcc)){const _0x360539=_0x318aa6;return String(_0x2d90a5||_0x30512c)['trim']()[_0x360539(0xbc)+'ase']()[_0x360539(0xd2)](/[^a-z0-9._-]+/g,'-')[_0x360539(0xd2)](/^-+|-+$/g,'')[_0x360539(0xb2)](0x0,0x50)||_0x30512c;}function hashValue(_0x312261){const _0x4f4226=_0x318aa6;return createHash(_0x4f4226(0xb7))['update'](JSON['stringif'+'y'](_0x312261??''))[_0x4f4226(0xbf)]('hex')['slice'](0x0,0xc);}function safeJsonStringify(_0x24b779){const _0xf5b607=_0x318aa6;return JSON[_0xf5b607(0xb9)+'y'](redactLogValue(_0x24b779));}function normalizeLevel(_0x29b549){const _0x4f8b59=_0x318aa6,_0x4060ff=String(_0x29b549||_0x4f8b59(0xcf))[_0x4f8b59(0xbc)+'ase']();if(_0x4060ff===_0x4f8b59(0xd3))return _0x4f8b59(0xad);if(['debug',_0x4f8b59(0xcf),_0x4f8b59(0xad),_0x4f8b59(0x9f)][_0x4f8b59(0xa1)](_0x4060ff))return _0x4060ff;return _0x4f8b59(0xcf);}function normalizeDiagnosticEvent(_0x5384fa={}){const _0x58a62c=_0x318aa6,_0x28bcf8=_0x5384fa&&typeof _0x5384fa===_0x58a62c(0xa7)?_0x5384fa:{},_0x1db9e7=Number[_0x58a62c(0x8d)](_0x28bcf8['ts'])?_0x28bcf8['ts']:Date['now'](),_0x2c5d5b=normalizeSlug(_0x28bcf8[_0x58a62c(0x80)]||'runtime',_0x58a62c(0xbb)),_0x5275ee=normalizeSlug(_0x28bcf8[_0x58a62c(0xcc)]||_0x28bcf8['type']||_0x58a62c(0xcc),_0x58a62c(0xcc)),_0x16fe9f=String(_0x28bcf8['message']||_0x5275ee),_0x515492=_0x28bcf8[_0x58a62c(0xab)]&&typeof _0x28bcf8['meta']===_0x58a62c(0xa7)?_0x28bcf8['meta']:undefined;return{'ts':_0x1db9e7,'level':normalizeLevel(_0x28bcf8[_0x58a62c(0x95)]),'category':_0x2c5d5b,'event':_0x5275ee,'message':_0x16fe9f,'sessionId':typeof _0x28bcf8['sessionI'+'d']===_0x58a62c(0x7f)?_0x28bcf8[_0x58a62c(0xd5)+'d']:undefined,'runId':typeof _0x28bcf8[_0x58a62c(0x91)]===_0x58a62c(0x7f)?_0x28bcf8[_0x58a62c(0x91)]:undefined,'parentRunId':typeof _0x28bcf8[_0x58a62c(0x87)+'nId']==='string'?_0x28bcf8[_0x58a62c(0x87)+_0x58a62c(0x9c)]:undefined,'agentId':typeof _0x28bcf8[_0x58a62c(0xc4)]===_0x58a62c(0x7f)?_0x28bcf8[_0x58a62c(0xc4)]:undefined,'teamId':typeof _0x28bcf8[_0x58a62c(0x84)]===_0x58a62c(0x7f)?_0x28bcf8[_0x58a62c(0x84)]:undefined,'durationMs':Number['isFinite'](_0x28bcf8['duration'+'Ms'])?_0x28bcf8[_0x58a62c(0xd1)+'Ms']:undefined,'meta':_0x515492?summarizePayload(_0x515492,{'maxDepth':0x5,'textPreviewLength':0x1f4}):undefined,'globalFields':_0x28bcf8[_0x58a62c(0x8e)+_0x58a62c(0x8b)]&&typeof _0x28bcf8['globalFi'+_0x58a62c(0x8b)]===_0x58a62c(0xa7)?summarizePayload(_0x28bcf8['globalFi'+_0x58a62c(0x8b)],{'maxDepth':0x3,'textPreviewLength':0xc8}):undefined};}export function createIncidentId(_0xc6408a){const _0x231e09=_0x318aa6,_0x21cfa6=_0xc6408a[_0x231e09(0x91)]||_0xc6408a[_0x231e09(0xd5)+'d']||_0xc6408a[_0x231e09(0x80)]+':'+_0xc6408a[_0x231e09(0xcc)]+':'+Math[_0x231e09(0x99)](_0xc6408a['ts']/INCIDENT_BUCKET_MS)+':'+hashValue({'message':_0xc6408a['message'],'meta':_0xc6408a[_0x231e09(0xab)]}),_0x53e57c=normalizeSlug(_0x21cfa6,hashValue(_0x21cfa6))[_0x231e09(0xb2)](0x0,0x60);return formatIncidentTime(_0xc6408a['ts'])+'-'+_0xc6408a[_0x231e09(0x80)]+'-'+_0xc6408a[_0x231e09(0xcc)]+'-'+_0x53e57c;}function _0x4207(_0x9b73dd,_0x3e82b5){_0x9b73dd=_0x9b73dd-0x7f;const _0x5ee63e=_0x5ee6();let _0x4207fb=_0x5ee63e[_0x9b73dd];return _0x4207fb;}async function ensureManifest(_0x25056b,_0x55d3b6={}){const _0x13c231=_0x318aa6,_0xe7e8ad=join(_0x25056b,_0x13c231(0xa2)+_0x13c231(0xac));if(existsSync(_0xe7e8ad))return;await mkdir(dirname(_0xe7e8ad),{'recursive':!![]}),await writeFile(_0xe7e8ad,JSON[_0x13c231(0xb9)+'y']({'schemaVersion':0x1,'index':_0x13c231(0x9a)+_0x13c231(0x97)+'ts.jsonl','incidentsDir':'diagnost'+_0x13c231(0xd0)+_0x13c231(0xd4),'generatedAt':Date[_0x13c231(0x92)](),'app':_0x55d3b6},null,0x2)+'\x0a',_0x13c231(0xaf));}function getLogFilesForContext(_0x434caf){const _0x3512d7=_0x318aa6;return[join(_0x434caf,_0x3512d7(0x8f),_0x3512d7(0xc9)),join(_0x434caf,_0x3512d7(0xcb),_0x3512d7(0xcb)+_0x3512d7(0x9b)),join(_0x434caf,_0x3512d7(0xce),_0x3512d7(0x8a)),join(_0x434caf,_0x3512d7(0xa0),'gateway.'+_0x3512d7(0xae)),join(_0x434caf,_0x3512d7(0xbb),_0x3512d7(0x82)+_0x3512d7(0xae)),join(_0x434caf,_0x3512d7(0x90),_0x3512d7(0x90)+_0x3512d7(0x9b)),join(_0x434caf,'files',_0x3512d7(0xb3)+'g')];}async function readRelatedLogLines(_0x6793e0,_0x118748){const _0x33a541=_0x318aa6,_0x4ec9cf=[_0x118748[_0x33a541(0x91)],_0x118748[_0x33a541(0xd5)+'d'],_0x118748['agentId'],_0x118748[_0x33a541(0xcc)],_0x118748[_0x33a541(0x8c)]]['filter'](_0x54ed2e=>typeof _0x54ed2e==='string'&&_0x54ed2e['trim']())[_0x33a541(0xc5)](_0x55762c=>_0x55762c[_0x33a541(0xc6)]()),_0xd96f78=[];for(const _0x51f672 of getLogFilesForContext(_0x6793e0)){if(!existsSync(_0x51f672))continue;try{const _0x321c77=(await readFile(_0x51f672,_0x33a541(0xaf)))[_0x33a541(0xc3)](/\r?\n/)[_0x33a541(0x94)](Boolean),_0x4563b9=_0x4ec9cf['length']?_0x321c77[_0x33a541(0x94)](_0x26453f=>_0x4ec9cf[_0x33a541(0xbd)](_0x452381=>_0x26453f['includes'](_0x452381))):[],_0xe9a8a4=_0x4563b9[_0x33a541(0xb4)]?_0x4563b9[_0x33a541(0xb2)](-MAX_RELATED_LINES):_0x321c77[_0x33a541(0xb2)](-Math[_0x33a541(0x81)](MAX_RELATED_LINES,0x50));for(const _0x58e32b of _0xe9a8a4){_0xd96f78['push']({'file':relative(_0x6793e0,_0x51f672),'line':truncateText(_0x58e32b,MAX_RELATED_LINE_LENGTH)});}}catch{}}return _0xd96f78[_0x33a541(0xb2)](-MAX_RELATED_LINES);}async function appendJsonLine(_0x3cf3e3,_0x5f44b0){const _0x2d458d=_0x318aa6;await mkdir(dirname(_0x3cf3e3),{'recursive':!![]}),await appendFile(_0x3cf3e3,safeJsonStringify(_0x5f44b0)+'\x0a',_0x2d458d(0xaf));}export function createDiagnosticsWriter({logsDir:_0x4d836a,appContext:appContext={}}={}){const _0x414f06=_0x4d836a?join(_0x4d836a,'diagnost'+'ics'):'',_0x326913=[];async function _0x56c7c4(_0x168efe,_0x249869={}){const _0x10cc36=_0x4207;if(!_0x414f06)return null;const _0x1d2d92=normalizeDiagnosticEvent(_0x168efe),_0xb5254c=_0x249869['captureI'+_0x10cc36(0xc2)]===!![]||_0x1d2d92['level']===_0x10cc36(0x9f),_0x21691d=_0xb5254c?_0x249869['incident'+'Id']||createIncidentId(_0x1d2d92):undefined,_0x249bdb={..._0x1d2d92,'incidentId':_0x21691d};await ensureManifest(_0x414f06,appContext),await appendJsonLine(join(_0x414f06,_0x10cc36(0xc7)+_0x10cc36(0xa9)),_0x249bdb),_0x326913[_0x10cc36(0xb1)](_0x249bdb);if(_0x326913[_0x10cc36(0xb4)]>MAX_TIMELINE_EVENTS)_0x326913[_0x10cc36(0x98)]();if(_0x21691d)await _0xb8337(_0x249bdb,{'incidentId':_0x21691d});return _0x249bdb;}async function _0xb8337(_0x523d26,{incidentId:incidentId=_0x523d26['incident'+'Id']}={}){const _0x17c025=_0x4207;if(!_0x414f06||!incidentId)return null;const _0x2d709e=join(_0x414f06,_0x17c025(0xba)+'s',normalizeSlug(incidentId,hashValue(incidentId)));await mkdir(_0x2d709e,{'recursive':!![]});const _0x352b9a=await readRelatedLogLines(_0x4d836a,_0x523d26),_0x5854af={'schemaVersion':0x1,'incidentId':incidentId,'capturedAt':Date[_0x17c025(0x92)](),'app':appContext,'event':{'category':_0x523d26[_0x17c025(0x80)],'event':_0x523d26[_0x17c025(0xcc)],'level':_0x523d26['level'],'message':_0x523d26[_0x17c025(0x8c)],'ts':_0x523d26['ts'],'sessionId':_0x523d26[_0x17c025(0xd5)+'d'],'runId':_0x523d26[_0x17c025(0x91)],'agentId':_0x523d26['agentId']},'relatedLogFiles':[...new Set(_0x352b9a['map'](_0x2fd62e=>_0x2fd62e['file']))],'logsDir':toHomePath(_0x4d836a)};return await writeFile(join(_0x2d709e,_0x17c025(0x86)+'on'),safeJsonStringify(_0x523d26)+'\x0a','utf8'),await writeFile(join(_0x2d709e,_0x17c025(0xbe)+'json'),JSON[_0x17c025(0xb9)+'y'](_0x5854af,null,0x2)+'\x0a',_0x17c025(0xaf)),await writeFile(join(_0x2d709e,'timeline'+_0x17c025(0xca)),_0x326913[_0x17c025(0x94)](_0x3f4f3e=>{const _0x1abcbc=_0x17c025;if(_0x3f4f3e[_0x1abcbc(0xba)+'Id']===incidentId)return!![];if(_0x523d26[_0x1abcbc(0x91)]&&_0x3f4f3e[_0x1abcbc(0x91)]===_0x523d26[_0x1abcbc(0x91)])return!![];if(_0x523d26['sessionI'+'d']&&_0x3f4f3e['sessionI'+'d']===_0x523d26[_0x1abcbc(0xd5)+'d'])return!![];return Math[_0x1abcbc(0xa6)](_0x3f4f3e['ts']-_0x523d26['ts'])<=INCIDENT_BUCKET_MS;})[_0x17c025(0xc5)](_0x10fa0d=>safeJsonStringify(_0x10fa0d))[_0x17c025(0xb6)]('\x0a')+'\x0a',_0x17c025(0xaf)),await writeFile(join(_0x2d709e,_0x17c025(0x93)+_0x17c025(0xae)),_0x352b9a[_0x17c025(0xc5)](_0x53a0ac=>'['+_0x53a0ac[_0x17c025(0x88)]+']\x20'+_0x53a0ac[_0x17c025(0x96)])[_0x17c025(0xb6)]('\x0a')+(_0x352b9a[_0x17c025(0xb4)]?'\x0a':''),_0x17c025(0xaf)),{'incidentId':incidentId,'path':_0x2d709e};}return{'writeEvent':_0x56c7c4,'captureIncident':(_0x3d6d8d,_0x26ce69={})=>_0x56c7c4(_0x3d6d8d,{..._0x26ce69,'captureIncident':!![]})};}export function diagnosticEventFromError(_0x3c378a,_0x5c00e1={}){const _0x2229bb=_0x318aa6;return{'level':'error','category':_0x5c00e1[_0x2229bb(0x80)]||_0x2229bb(0xbb),'event':_0x5c00e1[_0x2229bb(0xcc)]||_0x2229bb(0x9f),'message':_0x5c00e1[_0x2229bb(0x8c)]||(_0x3c378a instanceof Error?_0x3c378a[_0x2229bb(0x8c)]:String(_0x3c378a||_0x2229bb(0x9f))),'sessionId':_0x5c00e1[_0x2229bb(0xd5)+'d'],'runId':_0x5c00e1[_0x2229bb(0x91)],'agentId':_0x5c00e1[_0x2229bb(0xc4)],'durationMs':_0x5c00e1[_0x2229bb(0xd1)+'Ms'],'meta':{..._0x5c00e1['meta']&&typeof _0x5c00e1[_0x2229bb(0xab)]===_0x2229bb(0xa7)?_0x5c00e1[_0x2229bb(0xab)]:{},'error':summarizeError(_0x3c378a)}};}
@@ -1 +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};}
1
+ const _0x3a11ae=_0x4d4f;(function(_0xfeb0d9,_0x3492c8){const _0x276dab=_0x4d4f,_0x25a5a7=_0xfeb0d9();while(!![]){try{const _0x2b614e=-parseInt(_0x276dab(0xf3))/0x1+-parseInt(_0x276dab(0xb8))/0x2*(-parseInt(_0x276dab(0xf4))/0x3)+-parseInt(_0x276dab(0xda))/0x4+parseInt(_0x276dab(0xbc))/0x5*(parseInt(_0x276dab(0x109))/0x6)+parseInt(_0x276dab(0xfa))/0x7*(-parseInt(_0x276dab(0x106))/0x8)+parseInt(_0x276dab(0xd0))/0x9*(parseInt(_0x276dab(0xf6))/0xa)+-parseInt(_0x276dab(0x113))/0xb*(-parseInt(_0x276dab(0xc8))/0xc);if(_0x2b614e===_0x3492c8)break;else _0x25a5a7['push'](_0x25a5a7['shift']());}catch(_0xbf11cb){_0x25a5a7['push'](_0x25a5a7['shift']());}}}(_0x9f92,0xe4b55));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(_0x75ad15,_0x279537,_0x2ab8dd=_0x279537){const _0x1ee938=_0x4d4f,_0x3c9006=_0x75ad15?.[_0x1ee938(0x118)];if(!_0x3c9006||!_0x279537)return null;const _0x28d68c=join(_0x3c9006,_0x279537,_0x279537+_0x1ee938(0xc7)),_0x51ed62=_0x28d68c+':'+_0x2ab8dd;return!loggers[_0x1ee938(0xc6)](_0x51ed62)&&loggers[_0x1ee938(0xbd)](_0x51ed62,createFileLogger({'filePath':_0x28d68c,'context':_0x2ab8dd,'maxBytes':LOG_MAX_BYTES,'keepCount':LOG_KEEP_COUNT})),loggers['get'](_0x51ed62);}export function toHomePath(_0x37695b){const _0x188f90=_0x4d4f,_0x3e7b64=typeof _0x37695b==='string'?_0x37695b:'';if(!_0x3e7b64)return'';const _0x3639bd=homedir(),_0x1028e7=isAbsolute(_0x3e7b64)?_0x3e7b64:resolve(_0x3e7b64),_0x23c9f6=relative(_0x3639bd,_0x1028e7);if(!_0x23c9f6||!_0x23c9f6[_0x188f90(0x101)+'th']('..')&&!isAbsolute(_0x23c9f6))return _0x23c9f6?'~/'+_0x23c9f6:'~';return _0x1028e7;}export function hashText(_0x3f7130){const _0x5ed4d7=_0x4d4f;return createHash(_0x5ed4d7(0xe1))['update'](String(_0x3f7130))['digest'](_0x5ed4d7(0x100))['slice'](0x0,0x10);}export function truncateText(_0x5e4c63,_0x554120=CONTENT_PREVIEW_LENGTH){const _0x3b0656=_0x4d4f,_0x5404c7=String(_0x5e4c63??'')['replace'](/\s+/g,'\x20')[_0x3b0656(0x114)]();if(_0x5404c7[_0x3b0656(0xce)]<=_0x554120)return _0x5404c7;return _0x5404c7[_0x3b0656(0xe9)](0x0,_0x554120)+_0x3b0656(0xba);}export function summarizeText(_0x2fef9c,_0x5622d5=CONTENT_PREVIEW_LENGTH){const _0x477133=_0x4d4f,_0x444f02=String(_0x2fef9c??'');return{'length':_0x444f02[_0x477133(0xce)],'hash':hashText(_0x444f02),'preview':truncateText(_0x444f02,_0x5622d5),'truncated':_0x444f02['length']>_0x5622d5};}export function summarizeError(_0x33095e){const _0x588105=_0x4d4f;if(_0x33095e instanceof Error)return{'name':_0x33095e[_0x588105(0xc3)],'message':_0x33095e['message'],'stack':_0x33095e[_0x588105(0x108)]};return{'message':String(_0x33095e)};}function _0x9f92(){const _0x2365cc=['split','groups','.DS_Stor','base','\x20-Force','add','isFile','11hBvBcD','trim','index','test','tinue\x27;','logsDir','\x20-Destin','dev','4AaxuKz','replaceA','...','ationPat','97690jWidPT','set','.json','-NoProfi','pid','endsWith','ot\x20found','name','toISOStr','dules/','has','.log','21462468EBpDgA','\x20log\x20fil','$Progres','.jsonl','cwd','-Archive','length','/.cache/','351711RJNAQr','isArray','join','platform','Compress','map','sPrefere','with\x20cod','wujie-sh','textPrev','3451172FVtKsQ','/node_mo','catch','Object','data','ectory\x20n','from','sha256','stderr','stringif','diagnost','filter','isDirect','some','exec','slice','object','win32','toString','entlyCon','zip','error','\x20failed\x20','\x20-Path\x20','close','513995ZfiMax','981555yNbvLX','ell-logs','110KRVspv','includes','ics','ory','1760689pERcEm','/tmp/','-Encoded','.zip','[Circula','iewLengt','hex','startsWi','nce=\x27Sil','pipe','entries','string','24LldzVT','maxDepth','stack','60ZXrKAl','replace','ll.exe'];_0x9f92=function(){return _0x2365cc;};return _0x9f92();}function summarizePathValue(_0x1a226e){const _0x3ab702=_0x4d4f;if(typeof _0x1a226e!==_0x3ab702(0x105))return _0x1a226e;if(_0x1a226e[_0x3ab702(0xf7)]('/')||_0x1a226e[_0x3ab702(0xf7)]('\x5c'))return toHomePath(_0x1a226e);return _0x1a226e;}export function summarizePayload(_0x4eb06f,_0x10dc77={}){const _0x4cb9aa=_0x4d4f,_0x26a192=_0x10dc77[_0x4cb9aa(0x107)]??0x4,_0x4c727e=new WeakSet();function _0x57bf1d(_0x182185,_0xd42f92,_0xf965dd=''){const _0x2373a0=_0x4cb9aa;if(_0x182185==null)return _0x182185;if(typeof _0x182185===_0x2373a0(0x105)){if(/message|content|prompt|text|body/i[_0x2373a0(0x116)](_0xf965dd))return summarizeText(_0x182185,_0x10dc77[_0x2373a0(0xd9)+_0x2373a0(0xff)+'h']);return summarizePathValue(_0x182185);}if(typeof _0x182185!==_0x2373a0(0xea))return _0x182185;if(_0x182185 instanceof Error)return summarizeError(_0x182185);if(_0x4c727e[_0x2373a0(0xc6)](_0x182185))return _0x2373a0(0xfe)+'r]';if(_0xd42f92>=_0x26a192)return'['+(Array[_0x2373a0(0xd1)](_0x182185)?'Array':_0x2373a0(0xdd))+']';_0x4c727e[_0x2373a0(0x111)](_0x182185);if(Array[_0x2373a0(0xd1)](_0x182185))return{'type':'array','length':_0x182185[_0x2373a0(0xce)],'items':_0x182185['slice'](0x0,0x5)['map'](_0x17db6d=>_0x57bf1d(_0x17db6d,_0xd42f92+0x1,_0xf965dd)),'truncated':_0x182185[_0x2373a0(0xce)]>0x5};const _0x23bc11={};for(const [_0x27576d,_0x206d32]of Object[_0x2373a0(0x104)](_0x182185)){_0x23bc11[_0x27576d]=_0x57bf1d(_0x206d32,_0xd42f92+0x1,_0x27576d);}return redactLogValue(_0x23bc11);}return _0x57bf1d(_0x4eb06f,0x0);}export function summarizeFilePaths(_0x30b452=[]){const _0x3e3f73=_0x4d4f;return(Array[_0x3e3f73(0xd1)](_0x30b452)?_0x30b452:[])[_0x3e3f73(0xd5)](_0x16216d=>String(_0x16216d||'')[_0x3e3f73(0x114)]())[_0x3e3f73(0xe5)](Boolean)[_0x3e3f73(0xd5)](_0x493d84=>({'path':toHomePath(_0x493d84),'name':basename(_0x493d84)}));}function run(_0x26cc4b,_0x3e0cf4,_0x4a406f={}){return new Promise((_0x18b664,_0x2c33f6)=>{const _0x53f00d=_0x4d4f,_0x2e51ef=spawn(_0x26cc4b,_0x3e0cf4,{'cwd':_0x4a406f[_0x53f00d(0xcc)],'env':{...process.env,..._0x4a406f['env']??{}},'stdio':['ignore',_0x53f00d(0x103),_0x53f00d(0x103)]});let _0x4d9d67='';_0x2e51ef[_0x53f00d(0xe2)]?.['on'](_0x53f00d(0xde),_0x37f04c=>{const _0x5dd61c=_0x53f00d;_0x4d9d67+=_0x37f04c[_0x5dd61c(0xec)]();}),_0x2e51ef['on'](_0x53f00d(0xef),_0x2c33f6),_0x2e51ef['on'](_0x53f00d(0xf2),_0x4ca6b=>{const _0x2971c7=_0x53f00d;if(_0x4ca6b===0x0){_0x18b664();return;}_0x2c33f6(new Error(_0x26cc4b+(_0x2971c7(0xf0)+_0x2971c7(0xd7)+'e=')+_0x4ca6b+':\x20'+_0x4d9d67));});});}function isMetadataJunk(_0x5d45fa){const _0x3f3e9c=_0x4d4f;return _0x5d45fa===_0x3f3e9c(0x10e)+'e'||_0x5d45fa==='Thumbs.d'+'b';}function shouldIncludeRotatingLog(_0x5db7c1){const _0x34e1b1=_0x4d4f;if(LEGACY_LOG_FILE_RE['test'](_0x5db7c1))return![];const _0x2306f5=LOG_FILE_RE[_0x34e1b1(0xe8)](_0x5db7c1);if(!_0x2306f5)return![];if(_0x2306f5[_0x34e1b1(0x10d)][_0x34e1b1(0x115)])return![];return!/^\d+$/[_0x34e1b1(0x116)](_0x2306f5[_0x34e1b1(0x10d)][_0x34e1b1(0x10f)]);}export function shouldIncludeLogArchiveEntry(_0x378786){const _0x41bf71=_0x4d4f,_0x48e988=String(_0x378786||'')[_0x41bf71(0xb9)+'ll']('\x5c','/');if(!_0x48e988||_0x48e988[_0x41bf71(0x10c)]('/')[_0x41bf71(0xe7)](isMetadataJunk))return![];if(_0x48e988[_0x41bf71(0xf7)](_0x41bf71(0xdb)+_0x41bf71(0xc5))||_0x48e988['includes'](_0x41bf71(0xcf)))return![];if(_0x48e988[_0x41bf71(0xf7)]('/staging'+'/')||_0x48e988[_0x41bf71(0xf7)](_0x41bf71(0xfb)))return![];const _0x9fa318=_0x48e988[_0x41bf71(0x10c)]('/'),_0x53b37d=_0x9fa318['at'](-0x1)||'';if(!_0x53b37d)return![];if(_0x9fa318[0x0]===_0x41bf71(0xe4)+_0x41bf71(0xf8)){if(_0x53b37d[_0x41bf71(0xc1)](_0x41bf71(0xbe))||_0x53b37d[_0x41bf71(0xc1)](_0x41bf71(0xcb))||_0x53b37d[_0x41bf71(0xc1)](_0x41bf71(0xc7)))return!![];return![];}return shouldIncludeRotatingLog(_0x53b37d);}function _0x4d4f(_0x5da4b3,_0x1a0591){_0x5da4b3=_0x5da4b3-0xb8;const _0x9f9269=_0x9f92();let _0x4d4f96=_0x9f9269[_0x5da4b3];return _0x4d4f96;}async function copyAllowedLogs(_0x4aab23,_0x487785,_0x17541c=_0x4aab23){const _0xf0e7d4=_0x4d4f;let _0x3a6565=0x0;const _0x28a20c=await readdir(_0x17541c,{'withFileTypes':!![]})[_0xf0e7d4(0xdc)](()=>[]);for(const _0xb8e277 of _0x28a20c){if(isMetadataJunk(_0xb8e277[_0xf0e7d4(0xc3)]))continue;const _0xa5bdf7=join(_0x17541c,_0xb8e277['name']),_0xff81a0=relative(_0x4aab23,_0xa5bdf7);if(_0xb8e277[_0xf0e7d4(0xe6)+_0xf0e7d4(0xf9)]()){_0x3a6565+=await copyAllowedLogs(_0x4aab23,_0x487785,_0xa5bdf7);continue;}if(!_0xb8e277[_0xf0e7d4(0x112)]()||!shouldIncludeLogArchiveEntry(_0xff81a0))continue;const _0xd2ba6d=join(_0x487785,_0xff81a0);try{await mkdir(dirname(_0xd2ba6d),{'recursive':!![]}),await copyFile(_0xa5bdf7,_0xd2ba6d),_0x3a6565+=0x1;}catch{}}return _0x3a6565;}export async function exportLogsArchive({logsDir:_0x2ffa95,targetDir:_0x1c76d9,appVersion:appVersion=_0x3a11ae(0x11a)}){const _0x4b13d5=_0x3a11ae;if(!_0x2ffa95||!existsSync(_0x2ffa95))throw new Error('logs\x20dir'+_0x4b13d5(0xdf)+_0x4b13d5(0xc2)+':\x20'+(_0x2ffa95||''));const _0x1dbad2=String(appVersion||_0x4b13d5(0x11a))[_0x4b13d5(0x10a)](/[^A-Za-z0-9._-]/g,'_'),_0x49ed88=new Date()[_0x4b13d5(0xc4)+'ing']()['replace'](/[-:]/g,'')[_0x4b13d5(0x10a)](/\..+$/,''),_0x21beed=_0x1c76d9||tmpdir();await mkdir(_0x21beed,{'recursive':!![]});const _0x20792f=join(_0x21beed,_0x4b13d5(0xd8)+_0x4b13d5(0xf5)+'-'+_0x49ed88+'-'+_0x1dbad2+_0x4b13d5(0xfd)),_0x2f3fe5=join(tmpdir(),_0x4b13d5(0xd8)+_0x4b13d5(0xf5)+'-'+process[_0x4b13d5(0xc0)]+'-'+Date['now']());await rm(_0x2f3fe5,{'recursive':!![],'force':!![]}),await mkdir(_0x2f3fe5,{'recursive':!![]});try{const _0x3e9aee=await copyAllowedLogs(_0x2ffa95,_0x2f3fe5);if(_0x3e9aee===0x0)throw new Error('no\x20valid'+_0x4b13d5(0xc9)+'es\x20found'+':\x20'+_0x2ffa95);if(process[_0x4b13d5(0xd3)]===_0x4b13d5(0xeb)){const _0x1d2e17=[_0x4b13d5(0xca)+_0x4b13d5(0xd6)+_0x4b13d5(0x102)+_0x4b13d5(0xed)+_0x4b13d5(0x117),_0x4b13d5(0xd4)+_0x4b13d5(0xcd)+_0x4b13d5(0xf1)+JSON[_0x4b13d5(0xe3)+'y'](join(_0x2f3fe5,'*'))+(_0x4b13d5(0x119)+_0x4b13d5(0xbb)+'h\x20')+JSON[_0x4b13d5(0xe3)+'y'](_0x20792f)+_0x4b13d5(0x110)][_0x4b13d5(0xd2)]('\x20'),_0x558572=Buffer[_0x4b13d5(0xe0)](_0x1d2e17,'utf16le')[_0x4b13d5(0xec)]('base64');await run('powershe'+_0x4b13d5(0x10b),[_0x4b13d5(0xbf)+'le',_0x4b13d5(0xfc)+'Command',_0x558572]);}else await run(_0x4b13d5(0xee),['-r',_0x20792f,'.'],{'cwd':_0x2f3fe5});}finally{await rm(_0x2f3fe5,{'recursive':!![],'force':!![]})[_0x4b13d5(0xdc)](()=>{});}return{'ok':!![],'path':_0x20792f};}
@@ -1 +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']};}
1
+ const _0x3b31ae=_0x22a4;(function(_0x545940,_0x47b671){const _0x134319=_0x22a4,_0x995990=_0x545940();while(!![]){try{const _0x57f060=-parseInt(_0x134319(0xde))/0x1*(-parseInt(_0x134319(0xd9))/0x2)+-parseInt(_0x134319(0xeb))/0x3*(parseInt(_0x134319(0xf6))/0x4)+parseInt(_0x134319(0xed))/0x5*(-parseInt(_0x134319(0xe2))/0x6)+parseInt(_0x134319(0xdf))/0x7+-parseInt(_0x134319(0xf0))/0x8+parseInt(_0x134319(0xd5))/0x9+-parseInt(_0x134319(0xf4))/0xa*(-parseInt(_0x134319(0xd8))/0xb);if(_0x57f060===_0x47b671)break;else _0x995990['push'](_0x995990['shift']());}catch(_0xacaa36){_0x995990['push'](_0x995990['shift']());}}}(_0x4cd9,0x6bdbf));function _0x4cd9(){const _0x8204fe=['ame','plugins','22233viYJDz','wBin','5GjDCla','dataDir','logsDir','4905568RJCYWM','installP','LocalPlu','Version','910XQMGwa','agents','12KpiFQL','get','ecs','logsDirN','dAt','wujiecla','ginPaths','appId','nodeVers','set','ntPaths','isArray','pluginSp','runtime.','1401588xoCtpC','logger','resolved','56683QtjTWj','170026AaPRAL','has','runtime','ath','openclaw','3cJztrF','5135333tQrMvV','length','ion','3216558gymLBT','productN','llPaths','skills','oot','LocalAge','log'];_0x4cd9=function(){return _0x8204fe;};return _0x4cd9();}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(_0x51abda,_0x2c60b9=_0x3b31ae(0xdb)){const _0x283a4f=_0x3b31ae,_0x3eadf7=_0x51abda?.['logsDir'];if(!_0x3eadf7)return null;const _0x4ed89c=join(_0x3eadf7,_0x283a4f(0xdb),_0x283a4f(0xd4)+_0x283a4f(0xe8)),_0x52b7f8=_0x4ed89c+':'+_0x2c60b9;return!runtimeLoggers[_0x283a4f(0xda)](_0x52b7f8)&&runtimeLoggers[_0x283a4f(0xd0)](_0x52b7f8,createFileLogger({'filePath':_0x4ed89c,'context':_0x2c60b9,'maxBytes':RUNTIME_LOG_MAX_BYTES,'keepCount':RUNTIME_LOG_KEEP_COUNT})),runtimeLoggers[_0x283a4f(0xf7)](_0x52b7f8);}function _0x22a4(_0x35387b,_0x468196){_0x35387b=_0x35387b-0xcb;const _0x4cd9a7=_0x4cd9();let _0x22a414=_0x4cd9a7[_0x35387b];return _0x22a414;}export function summarizeShellConfig(_0x320091){const _0x2e31fc=_0x3b31ae;return{'appId':_0x320091[_0x2e31fc(0xce)],'productName':_0x320091[_0x2e31fc(0xe3)+_0x2e31fc(0xe9)],'projectRoot':_0x320091['projectR'+_0x2e31fc(0xe6)],'dataDir':_0x320091[_0x2e31fc(0xee)],'dataDirName':_0x320091['dataDirN'+_0x2e31fc(0xe9)],'logsDirName':_0x320091[_0x2e31fc(0xd6)]?.[_0x2e31fc(0xf9)+_0x2e31fc(0xe9)],'logsDir':_0x320091[_0x2e31fc(0xd6)]?.[_0x2e31fc(0xef)],'openclawVersion':_0x320091[_0x2e31fc(0xdd)]?.['openclaw'+_0x2e31fc(0xf3)],'nodeVersion':_0x320091[_0x2e31fc(0xdd)]?.[_0x2e31fc(0xcf)+'ion'],'pluginSpecCount':_0x320091[_0x2e31fc(0xdd)]?.[_0x2e31fc(0xd3)+_0x2e31fc(0xf8)]?.[_0x2e31fc(0xe0)]??0x0,'localPluginCount':_0x320091[_0x2e31fc(0xdd)]?.['resolved'+_0x2e31fc(0xf2)+_0x2e31fc(0xcd)]?.[_0x2e31fc(0xe0)]??0x0,'localAgentCount':_0x320091[_0x2e31fc(0xdd)]?.[_0x2e31fc(0xd7)+'LocalAge'+_0x2e31fc(0xd1)]?.['length']??0x0,'localSkillCount':_0x320091['openclaw']?.[_0x2e31fc(0xd7)+'LocalSki'+'llPaths']?.[_0x2e31fc(0xe0)]??0x0,'localAgentPaths':_0x320091[_0x2e31fc(0xdd)]?.[_0x2e31fc(0xd7)+_0x2e31fc(0xe7)+_0x2e31fc(0xd1)],'localSkillPaths':_0x320091[_0x2e31fc(0xdd)]?.['resolved'+'LocalSki'+_0x2e31fc(0xe4)],'workflowsDir':_0x320091[_0x2e31fc(0xdd)]?.['workflow'+'sDir']};}export function summarizeRuntimeManifest(_0x20f509){const _0x333e63=_0x3b31ae;return{'generatedAt':_0x20f509?.['generate'+_0x333e63(0xcb)],'openclawVersion':_0x20f509?.[_0x333e63(0xdd)+_0x333e63(0xf3)],'nodeVersion':_0x20f509?.[_0x333e63(0xcf)+_0x333e63(0xe1)],'pluginCount':Array[_0x333e63(0xd2)](_0x20f509?.['plugins'])?_0x20f509[_0x333e63(0xea)][_0x333e63(0xe0)]:0x0,'pluginSpecCount':Array[_0x333e63(0xd2)](_0x20f509?.['pluginSp'+_0x333e63(0xf8)])?_0x20f509[_0x333e63(0xd3)+_0x333e63(0xf8)][_0x333e63(0xe0)]:0x0,'agentsInstallPath':_0x20f509?.[_0x333e63(0xf5)]?.[_0x333e63(0xf1)+_0x333e63(0xdc)],'skillsInstallPath':_0x20f509?.[_0x333e63(0xe5)]?.[_0x333e63(0xf1)+_0x333e63(0xdc)],'wujieclawBin':_0x20f509?.[_0x333e63(0xcc)+_0x333e63(0xec)],'product':_0x20f509?.['product']};}