@wujie-shell/core 1.0.3 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/wujie-shell.mjs +1 -1
- package/dist/src/agents/bundled-agent-skills.mjs +1 -1
- package/dist/src/agents/bundled-agents.mjs +1 -1
- package/dist/src/agents/runtime-config.mjs +1 -1
- package/dist/src/chat/media-archive.mjs +1 -1
- package/dist/src/chat/queue.mjs +1 -1
- package/dist/src/common/cron-session-key.mjs +1 -1
- package/dist/src/common/diagnostics.mjs +1 -1
- package/dist/src/common/logging.mjs +1 -1
- package/dist/src/common/runtime-logger.mjs +1 -1
- package/dist/src/common/sqlite-paths.mjs +1 -1
- package/dist/src/common/user-events.mjs +1 -1
- package/dist/src/common/utils.mjs +1 -1
- package/dist/src/config/controller.mjs +1 -1
- package/dist/src/connectors/config-utils.mjs +1 -1
- package/dist/src/connectors/constants.mjs +1 -1
- package/dist/src/connectors/controller.mjs +1 -1
- package/dist/src/connectors/kdocs-cli.mjs +1 -1
- package/dist/src/connectors/lark-cli.mjs +1 -1
- package/dist/src/electron/main.mjs +1 -1
- package/dist/src/electron/preload.mjs +1 -1
- package/dist/src/electron/protocol-url-state.mjs +1 -1
- package/dist/src/events/domain-event-journal.mjs +1 -1
- package/dist/src/files/generated-files-store.mjs +1 -1
- package/dist/src/files/handlers.mjs +1 -1
- package/dist/src/gateway/chat-delta.mjs +1 -1
- package/dist/src/gateway/controller.mjs +1 -1
- package/dist/src/gateway/request-id-title-events.mjs +1 -1
- package/dist/src/gateway/ws-client.mjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/log-reporting/handlers.mjs +1 -1
- package/dist/src/log-reporting/report-logs.mjs +1 -1
- package/dist/src/models/handlers.mjs +1 -1
- package/dist/src/preferences/store.mjs +1 -1
- package/dist/src/request-id/handlers.mjs +1 -1
- package/dist/src/request-id/runtime-bridge.mjs +1 -1
- package/dist/src/request-id/session-store.mjs +1 -1
- package/dist/src/request-id/title.mjs +1 -1
- package/dist/src/runtime/cron-missed-run-policy.mjs +1 -1
- package/dist/src/runtime/index.mjs +1 -1
- package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -1
- package/dist/src/runtime/patch-chat-attachment-base64.mjs +1 -0
- package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -1
- package/dist/src/runtime/patch-provider-request-id-header.mjs +1 -1
- package/dist/src/runtime/patch-qqbot-outbound-session-route.mjs +1 -1
- package/dist/src/runtime/patch-request-id-title-runtime.mjs +1 -1
- package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -1
- package/dist/src/runtime/patch-weixin-outbound-session-route.mjs +1 -1
- package/dist/src/runtime/plugin-sync.mjs +1 -1
- package/dist/src/sessions/agent-sessions-map-store.mjs +1 -1
- package/dist/src/sessions/runtime-bridge.mjs +1 -1
- package/dist/src/sessions/session-data-service.mjs +1 -1
- package/dist/src/sessions/session-runtime-state-service.mjs +1 -1
- package/dist/src/sessions/session-runtime-state.mjs +1 -1
- package/dist/src/sessions/session-sqlite-store.mjs +1 -1
- package/dist/src/skills/import.mjs +1 -1
- package/dist/src/skills/market.mjs +1 -1
- package/dist/src/terminal/manager.mjs +1 -1
- package/dist/src/updates/controller.mjs +1 -1
- package/dist/src/updates/loader.mjs +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x869a0f=_0x378c;(function(_0x53b586,_0x1a9340){const _0x56fa95=_0x378c,_0x186577=_0x53b586();while(!![]){try{const _0x3b7214=-parseInt(_0x56fa95(0x485))/0x1+parseInt(_0x56fa95(0x2b4))/0x2*(parseInt(_0x56fa95(0x41a))/0x3)+-parseInt(_0x56fa95(0x2d3))/0x4*(-parseInt(_0x56fa95(0x2cf))/0x5)+-parseInt(_0x56fa95(0x2a4))/0x6+-parseInt(_0x56fa95(0x244))/0x7+parseInt(_0x56fa95(0x4d3))/0x8*(-parseInt(_0x56fa95(0x45c))/0x9)+parseInt(_0x56fa95(0x3e7))/0xa*(parseInt(_0x56fa95(0x1ac))/0xb);if(_0x3b7214===_0x1a9340)break;else _0x186577['push'](_0x186577['shift']());}catch(_0x3ccab8){_0x186577['push'](_0x186577['shift']());}}}(_0x2ce2,0x87d5b));import _0x4e78b8 from'electron';import{fileURLToPath,pathToFileURL}from'node:url';import{dirname,join,resolve,sep}from'node:path';import{createReadStream,existsSync,statSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{Readable}from'node:stream';import{loadShellConfig}from'@wujie-shell/config';import{formatLogLine}from'@wujie-shell/logger';import{createConfigController}from'../config/controller.mjs';import{createGatewayController}from'../gateway/controller.mjs';import{deleteManagedSkill,importSkillZip,updateManagedSkillConfig}from'../skills/import.mjs';import{deleteMarketSkillRegistryEntry,importMarketSkillZip}from'../skills/market.mjs';import{createAgentSessionsMapStore}from'../sessions/agent-sessions-map-store.mjs';import{createSessionDataService}from'../sessions/session-data-service.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,getShellLoggerLevel,setShellLoggerLevel,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.mjs';import{setRuntimeLoggerLevel}from'../common/runtime-logger.mjs';import{createUserEventWriter}from'../common/user-events.mjs';import{createConnectorController}from'../connectors/controller.mjs';import{resolveRuntimeKdocsCliCommand}from'../connectors/kdocs-cli.mjs';import{createGeneratedFilesStore}from'../files/generated-files-store.mjs';import{registerFileHandlers}from'../files/handlers.mjs';import{registerProductLogHandlers}from'../log-reporting/handlers.mjs';import{resolveWujieApiEndpoint}from'../log-reporting/report-logs.mjs';import{extractModelMessageContent,registerModelHandlers}from'../models/handlers.mjs';import{createPreferencesStore}from'../preferences/store.mjs';import{registerRequestIdHandlers}from'../request-id/handlers.mjs';import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';import{createProtocolUrlState}from'./protocol-url-state.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x869a0f(0x2f6)+_0x869a0f(0x1bd)),{app,BrowserWindow,Menu,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x4e78b8,DEVTOOLS_ACCELERATOR=_0x869a0f(0x23e)+_0x869a0f(0x156)+_0x869a0f(0x4e0),APP_RENDERER_PROTOCOL_SCHEME='app',APP_RENDERER_PROTOCOL_HOST='-',APP_RENDERER_ENTRY_URL=APP_RENDERER_PROTOCOL_SCHEME+_0x869a0f(0x2d4)+APP_RENDERER_PROTOCOL_HOST+(_0x869a0f(0x14c)+'tml'),CLAWSPACE_PROTOCOL_SCHEME=_0x869a0f(0x1b5)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x869a0f(0x4ab)+'on',IPC_SLOW_REQUEST_THRESHOLD_MS=0x1f4,SHELL_LOG_LEVELS=new Set([_0x869a0f(0x450),_0x869a0f(0x374),_0x869a0f(0x3be),'debug']),LOCAL_FILE_MIME_TYPES=new Map([['.html',_0x869a0f(0x172)+_0x869a0f(0x2d6)+_0x869a0f(0x3ab)],['.htm','text/htm'+'l;\x20chars'+_0x869a0f(0x3ab)],[_0x869a0f(0x1d0),_0x869a0f(0x266)+_0x869a0f(0x322)+_0x869a0f(0x2e2)+'8'],['.md','text/mar'+'kdown;\x20c'+_0x869a0f(0x19f)+_0x869a0f(0x1d3)],[_0x869a0f(0x124),_0x869a0f(0x2fe)+_0x869a0f(0x34b)+'script;\x20'+_0x869a0f(0x270)+'utf-8'],[_0x869a0f(0x438),_0x869a0f(0x2fe)+'ion/java'+_0x869a0f(0x3cd)+'charset='+'utf-8'],[_0x869a0f(0x3ad),'text/css'+_0x869a0f(0x1b8)+_0x869a0f(0x225)],[_0x869a0f(0x31e),_0x869a0f(0x2fe)+_0x869a0f(0x166)+_0x869a0f(0x1b8)+_0x869a0f(0x225)],[_0x869a0f(0x463),_0x869a0f(0x2fe)+_0x869a0f(0x166)+_0x869a0f(0x1b8)+_0x869a0f(0x225)],[_0x869a0f(0x259),_0x869a0f(0x354)+'eg'],['.jpeg',_0x869a0f(0x354)+'eg'],[_0x869a0f(0x3c9),_0x869a0f(0x478)+'g'],[_0x869a0f(0x186),_0x869a0f(0x388)+'f'],[_0x869a0f(0x1c3),'image/bm'+'p'],['.svg',_0x869a0f(0x3c5)+_0x869a0f(0x4a4)],['.webp','image/we'+'bp'],[_0x869a0f(0x27e),_0x869a0f(0x440)+_0x869a0f(0x358)],[_0x869a0f(0x48e),_0x869a0f(0x417)+'4'],[_0x869a0f(0x381),_0x869a0f(0x112)+_0x869a0f(0x4e5)],[_0x869a0f(0x199),_0x869a0f(0x26d)+_0x869a0f(0x37c)],['.mkv',_0x869a0f(0x26d)+'matroska'],['.webm',_0x869a0f(0x4e2)+'bm'],[_0x869a0f(0x2af),_0x869a0f(0x3af)+'eg'],[_0x869a0f(0x4c0),_0x869a0f(0x2e7)+'v'],[_0x869a0f(0x1ed),_0x869a0f(0x3af)+'4'],[_0x869a0f(0x32e),'audio/aa'+'c'],['.ogg',_0x869a0f(0x396)+'g'],[_0x869a0f(0x229),_0x869a0f(0x1eb)+'ac'],['.woff',_0x869a0f(0x169)+'f'],[_0x869a0f(0x284),_0x869a0f(0x169)+'f2'],[_0x869a0f(0x204),_0x869a0f(0x12f)],[_0x869a0f(0x458),_0x869a0f(0x2c1)],[_0x869a0f(0x276),'applicat'+_0x869a0f(0x13a)+_0x869a0f(0x3ea)+_0x869a0f(0x2c5)],['.wasm',_0x869a0f(0x2fe)+_0x869a0f(0x44f)]]);protocol['register'+_0x869a0f(0x3eb)+_0x869a0f(0x2b3)+'ged']([{'scheme':APP_RENDERER_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}},{'scheme':CLAWSPACE_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}}]);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null,terminalManager=null,connectorController=null,generatedFilesStore=null,productRuntime=null,productRuntimeHooks={},requestIdHooks={},gatewayRuntimeHooks={},sessionSqliteStore=null,sessionDataService=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null,pendingProtocolArgs=null;const protocolUrlState=createProtocolUrlState();let createWindowPromise=null,ipcHandlersInstalled=![];const rendererSessionMetrics={'inactiveEventCount':0x0,'inactiveBodyReadSuppressedCount':0x0},RENDERER_SESSION_METRIC_LOG_INTERVAL=0x19;function isProductionMode(){return process.env.NODE_ENV==='producti'+'on';}function resolveDevToolsFlagPath(){const _0x2ed0dc=_0x869a0f;return shellConfig?.[_0x2ed0dc(0x23c)]?join(shellConfig[_0x2ed0dc(0x23c)],_0x2ed0dc(0x4bc)+_0x2ed0dc(0x1d9)):'';}function isDevToolsEnabled(){if(!isProductionMode())return!![];const _0x16e5ac=resolveDevToolsFlagPath();return Boolean(_0x16e5ac)&&existsSync(_0x16e5ac);}function attachGatewayBroadcastHandlers(_0x5f4184){const _0x82274d=_0x869a0f;for(const _0x2151d1 of[_0x82274d(0x3dc)+'status',_0x82274d(0x3dc)+_0x82274d(0x437),_0x82274d(0x3da)+_0x82274d(0x392)+'t',_0x82274d(0x1f3)+_0x82274d(0x47b),_0x82274d(0x237)+_0x82274d(0x219),_0x82274d(0x2e0)+_0x82274d(0x30f)+'n']){_0x5f4184['on'](_0x2151d1,_0x448031=>broadcast(_0x2151d1,_0x448031));}}function ensureSessionSqliteStore(){const _0x356d62=_0x869a0f;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error('wujie-sh'+_0x356d62(0x371)+'ig\x20is\x20no'+_0x356d62(0x4c7)+_0x356d62(0x2ef));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0x356d62(0x3d6)+'tateDir']()}),sessionSqliteStore;}function ensureSessionDataService(){const _0x5b0a14=_0x869a0f;if(sessionDataService)return sessionDataService['attachGa'+_0x5b0a14(0x1b0)+_0x5b0a14(0x3c7)]?.(gatewayController),sessionDataService;if(!configController)throw new Error(_0x5b0a14(0x3a7)+_0x5b0a14(0x371)+_0x5b0a14(0x1e6)+'t\x20initia'+_0x5b0a14(0x2ef));return sessionDataService=createSessionDataService({'stateDir':configController[_0x5b0a14(0x3d6)+_0x5b0a14(0x23b)](),'sessionSqliteStore':ensureSessionSqliteStore(),'gatewayController':gatewayController,'broadcast':broadcast,'logger':mainLogger}),sessionDataService[_0x5b0a14(0x192)+'eRuntime'+'State']?.(_0x57fd6b=>{const _0x298278=_0x5b0a14;broadcast('sessions'+_0x298278(0x441)+'-state-c'+_0x298278(0x410),_0x57fd6b);}),sessionDataService['attachGa'+_0x5b0a14(0x1b0)+_0x5b0a14(0x3c7)]?.(),sessionDataService;}function updateRendererSessionMetrics(_0x305a5d){const _0x22b0b8=_0x869a0f;if(!_0x305a5d||typeof _0x305a5d!==_0x22b0b8(0x314))return;if(_0x305a5d['event']!==_0x22b0b8(0x251)+_0x22b0b8(0x3cc)+'_body_re'+_0x22b0b8(0x2a2)+'essed')return;const _0x4b34c4=_0x305a5d[_0x22b0b8(0x380)]&&typeof _0x305a5d[_0x22b0b8(0x380)]===_0x22b0b8(0x314)?_0x305a5d[_0x22b0b8(0x380)]:{},_0x3edb2a=Number(_0x4b34c4[_0x22b0b8(0x1c5)]);if(!Number[_0x22b0b8(0x144)](_0x3edb2a)||_0x3edb2a<=rendererSessionMetrics[_0x22b0b8(0x251)+_0x22b0b8(0x16c)+_0x22b0b8(0x1ad)+_0x22b0b8(0x395)])return;rendererSessionMetrics['inactive'+_0x22b0b8(0x16c)+_0x22b0b8(0x1ad)+_0x22b0b8(0x395)]=_0x3edb2a,rendererSessionMetrics['inactive'+_0x22b0b8(0x198)+'nt']=Math[_0x22b0b8(0x1ca)](rendererSessionMetrics['inactive'+'EventCou'+'nt'],_0x3edb2a);if(_0x3edb2a!==0x1&&_0x3edb2a%RENDERER_SESSION_METRIC_LOG_INTERVAL!==0x0)return;mainLogger?.[_0x22b0b8(0x3be)]?.(_0x22b0b8(0x461)+_0x22b0b8(0x3e9)+_0x22b0b8(0x3e6)+'updated',{'metric':_0x22b0b8(0x251)+_0x22b0b8(0x3cc)+_0x22b0b8(0x25f)+'ad_suppr'+_0x22b0b8(0x413),'inactiveEventCount':rendererSessionMetrics[_0x22b0b8(0x251)+_0x22b0b8(0x198)+'nt'],'inactiveBodyReadSuppressedCount':rendererSessionMetrics['inactive'+_0x22b0b8(0x16c)+'Suppress'+_0x22b0b8(0x395)],'changeKind':typeof _0x4b34c4[_0x22b0b8(0x468)+'nd']==='string'?_0x4b34c4[_0x22b0b8(0x468)+'nd']:null,'origin':typeof _0x4b34c4[_0x22b0b8(0x46e)]===_0x22b0b8(0x25d)?_0x4b34c4[_0x22b0b8(0x46e)]:null});}function ensureGeneratedFilesStore(){const _0x5b2e38=_0x869a0f;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x5b2e38(0x3a7)+'ell\x20conf'+'ig\x20is\x20no'+_0x5b2e38(0x4c7)+_0x5b2e38(0x2ef));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController[_0x5b2e38(0x3d6)+_0x5b2e38(0x23b)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x1f397f=_0x869a0f;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x1f397f(0x3a7)+_0x1f397f(0x490)+_0x1f397f(0x1dd)+'\x20'+bootError:_0x1f397f(0x3a7)+_0x1f397f(0x35d)+_0x1f397f(0x35e)+'ot\x20initi'+_0x1f397f(0x14a));return!gatewayController&&(mainLogger?.[_0x1f397f(0x374)](_0x1f397f(0x4a2)+_0x1f397f(0x3f3)+_0x1f397f(0x3f0)+_0x1f397f(0x423)+_0x1f397f(0x29d)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x1f397f(0x445)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService()),await gatewayController[_0x1f397f(0x487)](),gatewayController;}function getMode(){const _0x54fa42=_0x869a0f;return process.env.VITE_DEV_SERVER_URL?_0x54fa42(0x4c8):_0x54fa42(0x4eb);}function isGatewayNotInitializedError(_0x3f184c){const _0x5c2359=_0x869a0f;return _0x3f184c instanceof Error&&_0x3f184c[_0x5c2359(0x48f)]===_0x5c2359(0x3a7)+_0x5c2359(0x35d)+_0x5c2359(0x35e)+_0x5c2359(0x4d7)+_0x5c2359(0x14a);}function revealPathInFolder(_0x420245){const _0x2b2d03=_0x869a0f,_0x30fed3=String(_0x420245||'')[_0x2b2d03(0x4c2)]();if(!_0x30fed3)return{'ok':![],'error':_0x2b2d03(0x21a)+_0x2b2d03(0x302)};return shell[_0x2b2d03(0x128)+_0x2b2d03(0x1e0)](_0x30fed3),{'ok':!![]};}function resolveProjectRoot(){const _0x36285a=_0x869a0f;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x36285a(0x378)+'ed']&&process[_0x36285a(0x474)+_0x36285a(0x3d3)])return join(process[_0x36285a(0x474)+'sPath'],_0x36285a(0x3b4));return resolve(process['cwd']());}function resolveProtocolScheme(){const _0x5a2f0a=_0x869a0f;return typeof shellConfig?.[_0x5a2f0a(0x268)]===_0x5a2f0a(0x25d)?shellConfig[_0x5a2f0a(0x268)][_0x5a2f0a(0x4c2)]():'';}function summarizeProtocolUrl(_0x16e7be){const _0x253993=_0x869a0f,_0x117721=typeof _0x16e7be==='string'?_0x16e7be:'';if(!_0x117721)return summarizeText('',0xa0);try{const _0x4b5e3f=new URL(_0x117721);for(const _0x1dd528 of[_0x253993(0x403),_0x253993(0x1d6)+'e',_0x253993(0x260),_0x253993(0x3ef),'state']){_0x4b5e3f[_0x253993(0x3dd)+_0x253993(0x4c6)][_0x253993(0x170)](_0x1dd528)&&_0x4b5e3f[_0x253993(0x3dd)+_0x253993(0x4c6)][_0x253993(0x35a)](_0x1dd528,_0x253993(0x4a6)+'D]');}return summarizeText(_0x4b5e3f['toString'](),0xa0);}catch{return summarizeText(_0x117721,0xa0);}}function extractProtocolUrlFromArgs(_0x44055c=[]){const _0x430212=_0x869a0f,_0x301990=resolveProtocolScheme();if(!_0x301990)return null;return _0x44055c[_0x430212(0x33d)](_0x592604=>{const _0x2f9549=_0x430212;if(typeof _0x592604!==_0x2f9549(0x25d))return![];return _0x592604[_0x2f9549(0x3b3)+'th'](_0x301990+_0x2f9549(0x2d4));})||null;}function getUsableMainWindow(){const _0x49fe5c=_0x869a0f;if(!mainWindow)return null;if(mainWindow['isDestro'+'yed']())return mainWindow=null,protocolUrlState[_0x49fe5c(0x17f)+_0x49fe5c(0x37a)](![]),null;if(mainWindow[_0x49fe5c(0x4e9)+_0x49fe5c(0x3c7)]?.[_0x49fe5c(0x291)+_0x49fe5c(0x39f)]?.())return mainWindow=null,protocolUrlState[_0x49fe5c(0x17f)+_0x49fe5c(0x37a)](![]),null;return mainWindow;}function _0x2ce2(){const _0x16c600=['isArray','les:list','\x20request','cron:rem',':process','hanged','nt-state','openAtLo','essed','ector\x20se','-weixin','Event','video/mp','mail','HEAD','809181cVgfrM','hostname',':input','top_star','onfig','type','ipc_requ','ap:entry','g\x20native','ng;\x20recr','oggle-ma','pendingU','onnectSt','wechat','ndows','before-i','ll-close','\x20main\x20wi','m-channe','ssionKey','name','startBac','ile\x20read','quired','roductDa','openPath','darwin','IPC\x20requ','entDocsC','log','.mjs','ipc\x20requ','pened','\x20entry\x20f','togglefu','indexOf','extensio','s:upsert','image/x-',':runtime','-status','ocolClie','resh-age','getVersi','filters','nstance\x20','director','h\x0aexec\x20\x22','catch','setAppli',':choose-','window:o','setLogin','ion/wasm','error','length','startKdo','workspac','hell:eve','paths','Context','tedModel','.otf','index.ht','uit:\x20upd','lue','439038KkzTLV','download','ssion:\x20','getFocus','files:se','session\x20','product\x20','.map','arch','nfig','oken','status','changeKi','getRunti','ued\x20befo','igate','help','elete','origin','rce','isMaximi','update_g','shared-c','entExmai','resource','napshot','range,\x20c','agent\x20de','image/pn','g\x20level\x20','readConf','ent','feishu_d','child-pr','shuRegis','lt\x20model','st-direc','loadURL','ens','cron','then','298525qVgxKQ',':status','start','paste','isabled','dispose','inned','Custom','app:syst','.mp4','message','ell\x20boot','toLowerC','sync-bun','slice',':summary','debug','provider','pluginId','n-direct','closeToT','agents:d','ile\x20not\x20','isDirect','tSession','otAfterI','gatewayP','ailed','nstance','gateway\x20','record','g+xml',':save-kd','[REDACTE','url','leted','eated','openclaw','producti','zed','getStatu','s-maximi','dRejecti','setImCha','enClawSk','kdocs','ad-binar','cron:run','app:star','showOpen','groups','s:list','eted','meState','method','devtools',':save-fe','agent_id','get','.wav','ngs','trim','parse','limit','ed:\x20','rams','t\x20initia','dev','les:dele','Entry','eam','cutoffRo','\x20window\x20','ChannelC','\x20client\x20','showSave','getSumma','annelCon','104AnUJZq','ion','cron:cre','cutoffTe','ot\x20initi','getAllWi','request-','nnectSes','Dialog','ngUrl','projectR','and-inst','ion/octe','+Shift+I','now','video/we','n\x20not\x20fo','sessionK','icktime','includes',':choose','ion-menu','webConte','window:i','prod','mand','-by-sess','some',':save-ne','hecks','bot-chan','app:open','t-messag','dated','rn、info\x20','openFile','tion\x20fai','multiSel','video/qu','window:c','lawPlugi','markConf','selectAl','app:file','saveWeco','getKdocs','-logs','before\x20i','listImCh','captureI','logs:wri','tease-ma','index.mj','acts','chat','isIntege','.js','lConnect','ired','ources','showItem','ase','configPa','-info','listBySe','returnVa','ocsCliCo','font/ttf','temperat','window-a','ey\x20is\x20re',':answer-','node','disable','em:resta','ell:even','runtime:','cle','ion/vnd.','writeCon','size','agents:u','app:tray','context','id\x20title','appId','ead','ndow','isFinite','exec','\x20process','text','-state-s','OPTIONS','alized','openDire','/index.h','quitAndI','ishuDocC',':message','aultProt',':unpin','board:wr','omModel','number','indowTok','rControl','restore\x20','rayOnClo','focus','syncRunt','deleteIm','temp','manifest','les:hide','xOf',':save-qq','ory-info','\x20CLI\x20wra','inimize','file\x20rea','logs','ion/json','agent\x20al','storyLoa','font/wof','agents','byteLeng','BodyRead','relaunch','csCliCon','setSelec','has','cancelKd','text/htm','onChatHi','node:fs/','lClient','sender',':save-we','nelSessi','ate\x20inst','pServer','-url','runtimeI','peratedM','meFilter','setRende','tabs-com','d\x20is\x20req','-shortcu','dCheck','-level',':fork','.gif','uit','fromIpc','send','agent\x20id','getURL','te:get-s','Bearer\x20','hell]\x20fa','app:info','unhandle','map','subscrib','rocess-g','deleteCu','ontent-t',':downloa','requestB','EventCou','.avi',':get-clo','deleteFi','onnector','red;\x20set','elConfig','harset=u',':loading','runtime\x20','stream','dSession','rogress,','select\x20d','redo','#f8fafc','Level','defaults','filePath','main-fra','851653wnrfkr','Suppress','title','filter','tewayEve','finally',':gateway','jie-shel','updateOp','clawspac','aries','dist',';\x20charse','unmaximi','nectorCo',':start','stion','mjs','ocus','e\x20direct','Unsuppor','skills:u','saveFeis','.bmp','ssion','count','stomMode','e:direct','boot\x20ele','gatewayT','max','saveQqMa','file\x20wri','ensureIn','productN','\x20found:\x20','.txt','fromEntr','\x20rendere','tf-8','saveKdoc','lect-fil','auth_cod','runOnce','ls:list','.flag','efault','ted\x20conn','llscreen','\x20failed:','pop','\x20pending','InFolder','lConfig','ell-cli.','torConfi','app:log-','enable','ig\x20is\x20no','artifact','orted','nabled','test','audio/fl','windowMe','.m4a','buildFro','execPath','logs:ope','versions','Session','agent-ev','replace','logsDir','ted-ever','-session','nfo','tabs:ref','Update','est\x20comp','redConte','rename','models','ate','path','match','n\x20loaded','-data','.ttf','-token','\x20log','feishu','split','ections','defaultF','https://','recursiv','plugin\x20d','agent-','ings','lawChann','detach','timeout','folder','open-url','skills:s','nel','\x20open\x20bl','ionUsage','pdated','path\x20is\x20','register','targetDi','window:m','settings','uired','complete','les:upse','answerAs','ap:get','electron','t=utf-8','setPendi','isLoadin','tml','.flac','mTemplat','maxToken','ap:upser','te:downl','ilConnec','lingUpda','sessions','\x20quit','config:i','migrateP','timeoutM','Not\x20foun',':resize','agents-u','agent\x20up','whenRead','ready','tateDir','dataDir','ontext','CommandO','channelI','open\x20ext','generate','quit','cron:lis','5787257WIoJYx','selected','enClawCo','upsert','ite-bina','second-i','startFei','CliConne','com-chan','agentId','tabs-age','ncent-do','reload','inactive',':complet','assign','platform','avatar','s:hide','et-selec','FeishuDo','.jpg','files:re','-life-cy','reorderP','string','ocess-go','_body_re','code','handle','est\x20fail','tIdTitle','elected-','agent','text/pla','Everywhe','protocol','ntime','remove','maximize','runtimeR','video/x-','fig','before\x20q','charset=','close','succeede','setSelfO','logs:get','senderFr','.eot','agents:l','argv','\x20url\x20que',':save','hideOthe','preferen','deletedS','.ico','sses','snapshot','ateway_s','entModel','GET,\x20HEA','.woff2','equested','illEntry','l\x20prepar','ession','getFeish','messages','shouldLo','toISOStr','separato','files','saveQqbo','ng\x20gatew','isDestro','resolveC','getState','parentSe','shuDocCl',':pin','registra','customNa','[wujie-s','Config','oad','entries','eating','Invalid\x20','window','sion','input','ad_suppr','或\x20debug','278166BEiBQF','uncaught','g_conten','agents:c','isMinimi','tProtoco','chat:str','nstall','onReques','isFile','\x20gone','.mp3','mpletion','setAsDef','nnel','sPrivile','4QdJmmz','tabs:req','recordBo','fromWebC','ted-stat','ove','getPinne','te:check','huChanne','uDocCliC','getMessa','pen-devt','orConfig','font/otf','pathname','enClawMc','hide','bject','restore','initiali','logs\x20dir','payload','app:prot','skills','Version','models:s','unref','2532685wDWXNg','ued\x20for\x20','primary','sessionI','4xMHtpt','://','atus','l;\x20chars','forceRel','preventD','services','install','hideBySe','before-q','i-window','e\x20comple','\x20url\x20dis','ask-user','sConnect','set=utf-','logLevel','\x20open-ur','et-setti','create','audio/wa',':\x20gatewa','maxEntri','ort','write','edWindow','stop','lect-dir','lized','g\x20update','ipc','ocol-url','-restart',':delete','ame','preload.',':usage','model','update','-request','headers','minimize','te\x20compl','applicat','app:gene','saveNetE',':save-di','required','wBin','ncident','main\x20win','all\x20in\x20p',':create','function','iled\x20to\x20','logs:lis','te:quit-','nstallin','Observed','ishuRegi','-questio','e\x20url','kgroundC','chatChan','yInfo','object','tabs:pos','role','unregist','plugins:','checkFor','ure','ctory','ith-sess','nConfig','.json','roductCo','\x20main\x20bo','tate','in;\x20char','activate','model-id','emoji','sourcePa','tic','POST','agents:w','ded','elSessio','delete','irectory','.aac','shellLog','ype',':open-cl','ishu-doc','customMo','startWec','setName','open','show','r\x20ready',':run-onc','liConnec','dels','onfig\x20up','find','content','readSess','list',':rename','ctron\x20ma','s:delete','min','getPath','failed','contextW','rver','getLogin','config:c','ion/java','Ready','canceled','toWeb',':agent-m',':save-te','\x20excepti','oot','th\x20is\x20re','image/jp','skills:i','t-stream','#ffffff','icon','ools','set','keys','range','ell\x20gate','way\x20is\x20n','hatChann','length,\x20','\x20updater','render-p','dow\x20load','ory','shing','config','ontents','plugin\x20e','ies','nges','main','-pinned','creating','no\x20defau','/chat/co','uRegistr','ell\x20conf','figs','keyDown','warn','ists','setOpenC','y\x20stoppe','isPackag','d-state','rerReady','child\x20pr','msvideo','resolve','href','deleteOp','meta','.mov','\x20url\x20flu','ctStatus','writeEve','terminal','bytes','hell:ipc','image/gi','ItemSett','ingleIns','aseMailC',':set-clo','n\x20failed','ocs','error、wa','getArtif','queueUrl','eam-even','est_fail','reasonin','edCount','audio/og','-once','select\x20f','tabs:nav','logs:set','getAppPa','key','loading-','untimeHa','yed','listSumm','itialize','dled-res','omplete\x20','ProductR','stringif','led','wujie-sh','app_acti','mChannel','vate','et=utf-8','#!/bin/s','.css','sharedCo','audio/mp','ncent-ex','will-qui','content-','startsWi','app.asar','e:open-d','level','lose','d\x20failed','ngtalk-d',':revisio','keepUnti','user','utf8','info','ternally','imePlugi','ectory','rnal','lawSkill','ntext','image/sv','all','nts','lastInde','.png','tp\x20','logs:exp','_session','script;\x20','d\x20reject','Updates','resize','Keys','ite','sPath','sourceSe','tChannel','resolveS','parseInt','unknown','-status-','chat-str','ocked','gateway-','searchPa','gMainFra','files:wr','bytes\x20',':cancel','report-r','about','ModelId','app:upda','\x20metric\x20','170xRDvUR','chat:abo','renderer','ms-fonto','SchemesA','missing-','huDocCon','writeSha','token','er\x20missi','shell\x20lo','\x20is\x20requ','controll','les:reve','ndlers','g\x20ready','ted','ile\x20comp','pdate','diagnost',':artifac','s:reveal','ist','ot\x20compl','shell-ru','saveTenc','rated-fi','plugins','authCode','trationS',':close','openDevT','ishu-cha','enClawCh','binary\x20f','wujiecla'];_0x2ce2=function(){return _0x16c600;};return _0x2ce2();}function _0x378c(_0x4705a6,_0x53a5bf){_0x4705a6=_0x4705a6-0x110;const _0x2ce2cc=_0x2ce2();let _0x378c48=_0x2ce2cc[_0x4705a6];return _0x378c48;}async function ensureMainWindow(){const _0x20b255=_0x869a0f,_0x4c2343=getUsableMainWindow();if(_0x4c2343)return _0x4c2343;if(!shellConfig||!ipcHandlersInstalled)return null;return!createWindowPromise&&(createWindowPromise=createWindow()[_0x20b255(0x1b1)](()=>{createWindowPromise=null;})),await createWindowPromise,getUsableMainWindow();}function restoreMainWindowForPendingProtocolUrl(){const _0x25860e=_0x869a0f;if(!shellConfig)return;void ensureMainWindow()[_0x25860e(0x44a)](_0x5aa030=>{const _0x4ee209=_0x25860e;mainLogger?.[_0x4ee209(0x450)]('protocol'+_0x4ee209(0x4cd)+_0x4ee209(0x157)+_0x4ee209(0x346),summarizeError(_0x5aa030));});}function queueProtocolUrl(_0x14cbfe,_0x368e58,_0x435cb7=null){const _0x45d389=_0x869a0f,{duplicate:_0xbdffde}=protocolUrlState[_0x45d389(0x391)](_0x14cbfe);mainLogger?.[_0x45d389(0x374)](_0x45d389(0x268)+_0x45d389(0x279)+_0x45d389(0x2d0)+_0x45d389(0x3e9),{'url':summarizeProtocolUrl(_0x14cbfe),'reason':_0x368e58,'duplicatePending':_0xbdffde,'hasWindow':Boolean(_0x435cb7),'isLoadingMainFrame':Boolean(_0x435cb7?.[_0x45d389(0x4e9)+_0x45d389(0x3c7)][_0x45d389(0x227)+_0x45d389(0x3de)+'me']()),'protocolRendererReady':protocolUrlState[_0x45d389(0x3e9)+_0x45d389(0x34c)]});}function dispatchProtocolUrl(_0x256ca9){const _0x22bfac=_0x869a0f,_0x49f003=resolveProtocolScheme();if(typeof _0x256ca9!==_0x22bfac(0x25d))return;if(!_0x49f003){protocolUrlState[_0x22bfac(0x226)+_0x22bfac(0x4dc)](_0x256ca9),mainLogger?.[_0x22bfac(0x374)](_0x22bfac(0x268)+_0x22bfac(0x279)+_0x22bfac(0x46a)+'re\x20confi'+_0x22bfac(0x3f6),{'url':summarizeProtocolUrl(_0x256ca9)});return;}if(!_0x256ca9[_0x22bfac(0x3b3)+'th'](_0x49f003+_0x22bfac(0x2d4)))return;mainLogger?.[_0x22bfac(0x374)](_0x22bfac(0x268)+'\x20url\x20rec'+'eived',{'url':summarizeProtocolUrl(_0x256ca9)});const _0x47b615=getUsableMainWindow();if(!_0x47b615){queueProtocolUrl(_0x256ca9,_0x22bfac(0x3ec)+_0x22bfac(0x29f));if(!_0x47b615)restoreMainWindowForPendingProtocolUrl();return;}if(_0x47b615[_0x22bfac(0x4e9)+_0x22bfac(0x3c7)]['isLoadin'+_0x22bfac(0x3de)+'me']()){queueProtocolUrl(_0x256ca9,_0x22bfac(0x39d)+_0x22bfac(0x1ab)+'me',_0x47b615);return;}if(!protocolUrlState['renderer'+'Ready']){queueProtocolUrl(_0x256ca9,'renderer'+'-not-rea'+'dy',_0x47b615);return;}_0x47b615[_0x22bfac(0x337)](),_0x47b615[_0x22bfac(0x159)](),broadcast('app:prot'+_0x22bfac(0x2f2),_0x256ca9),mainLogger?.[_0x22bfac(0x374)](_0x22bfac(0x268)+_0x22bfac(0x2df)+'patched',{'url':summarizeProtocolUrl(_0x256ca9),'protocolRendererReady':protocolUrlState[_0x22bfac(0x3e9)+_0x22bfac(0x34c)]});}function flushPendingProtocolUrl(){const _0x559d2f=_0x869a0f,_0x205b49=protocolUrlState['clearPen'+'dingUrl']();if(!_0x205b49)return;mainLogger?.[_0x559d2f(0x374)](_0x559d2f(0x268)+_0x559d2f(0x1df)+_0x559d2f(0x382)+_0x559d2f(0x365),{'url':summarizeProtocolUrl(_0x205b49)}),void dispatchProtocolUrl(_0x205b49);}function getLocalFileMimeType(_0x3eaccd){const _0x3d920d=_0x869a0f;return LOCAL_FILE_MIME_TYPES['get'](_0x3eaccd[_0x3d920d(0x493)](_0x3eaccd[_0x3d920d(0x3c8)+_0x3d920d(0x15f)]('.'))[_0x3d920d(0x491)+_0x3d920d(0x129)]())||_0x3d920d(0x2fe)+_0x3d920d(0x4df)+_0x3d920d(0x356);}function resolveRendererDistDir(){const _0x4f5d39=_0x869a0f;return join(shellConfig[_0x4f5d39(0x4dd)+_0x4f5d39(0x352)],_0x4f5d39(0x1b7));}function decodeAppRendererPath(_0x378d64){const _0x5bf703=_0x869a0f;try{const _0x4c161e=new URL(_0x378d64);if(_0x4c161e['protocol']!==APP_RENDERER_PROTOCOL_SCHEME+':')return null;if(_0x4c161e[_0x5bf703(0x41b)]!==APP_RENDERER_PROTOCOL_HOST)return null;const _0x52991c=resolveRendererDistDir(),_0x4ab801=decodeURIComponent(_0x4c161e['pathname']||_0x5bf703(0x14c)+_0x5bf703(0x228)),_0xa67dae=_0x4ab801['replace'](/^\/+/,'')||_0x5bf703(0x459)+'ml',_0x34254f=resolve(_0x52991c,_0xa67dae);if(_0x34254f!==_0x52991c&&!_0x34254f[_0x5bf703(0x3b3)+'th'](''+_0x52991c+sep))return null;return{'url':_0x4c161e,'distDir':_0x52991c,'filePath':_0x34254f};}catch{return null;}}function parseSingleRangeHeader(_0x5e7c83,_0x2a2497){const _0x5e6a18=_0x869a0f,_0xc7d87f=/^bytes=(\d*)-(\d*)$/i[_0x5e6a18(0x145)](_0x5e7c83['trim']());if(!_0xc7d87f)return null;const [,_0x37daa8,_0x2fe842]=_0xc7d87f;if(!_0x37daa8&&!_0x2fe842)return null;if(!_0x37daa8){const _0x55753e=Number['parseInt'](_0x2fe842,0xa);if(!Number[_0x5e6a18(0x144)](_0x55753e)||_0x55753e<=0x0)return null;const _0x4cceee=Math[_0x5e6a18(0x1ca)](_0x2a2497-_0x55753e,0x0);return{'start':_0x4cceee,'end':_0x2a2497-0x1};}const _0x574b0c=Number[_0x5e6a18(0x3d7)](_0x37daa8,0xa);if(!Number[_0x5e6a18(0x144)](_0x574b0c)||_0x574b0c<0x0||_0x574b0c>=_0x2a2497)return null;const _0x1e351f=_0x2fe842?Number['parseInt'](_0x2fe842,0xa):_0x2a2497-0x1;if(!Number[_0x5e6a18(0x144)](_0x1e351f)||_0x1e351f<_0x574b0c)return null;return{'start':_0x574b0c,'end':Math[_0x5e6a18(0x344)](_0x1e351f,_0x2a2497-0x1)};}function decodeClawspacePath(_0x2e3a1d){const _0x287340=_0x869a0f;try{const _0x102d89=new URL(_0x2e3a1d);if(_0x102d89['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x102d89['hostname']!=='local')return null;const _0x49d35b=decodeURIComponent(_0x102d89[_0x287340(0x2c2)]);if(!_0x49d35b)return null;if(/^\/[A-Za-z]:\//[_0x287340(0x1ea)](_0x49d35b))return _0x49d35b['slice'](0x1);return _0x49d35b;}catch{return null;}}function createClawspaceHeaders(_0x4ed525={}){const _0x286b86=_0x869a0f;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x286b86(0x283)+'D,\x20OPTIO'+'NS','access-control-allow-headers':_0x286b86(0x476)+_0x286b86(0x195)+_0x286b86(0x330),'access-control-expose-headers':_0x286b86(0x3b2)+_0x286b86(0x360)+_0x286b86(0x3b2)+'range,\x20a'+'ccept-ra'+_0x286b86(0x36a),..._0x4ed525});}function createLocalFileResponse(_0x398b5e,_0x37742e){const _0x2cab01=_0x869a0f,_0x420eee=statSync(_0x37742e);if(!_0x420eee[_0x2cab01(0x2ad)]())return new Response(_0x2cab01(0x235)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x2cab01(0x322)+_0x2cab01(0x2e2)+'8'})});const _0x45b59e=getLocalFileMimeType(_0x37742e),_0x530c73=createClawspaceHeaders({'content-type':_0x45b59e,'accept-ranges':_0x2cab01(0x386),'cache-control':'no-store'});if(_0x398b5e[_0x2cab01(0x4bb)]===_0x2cab01(0x419))return _0x530c73[_0x2cab01(0x35a)]('content-'+'length',String(_0x420eee[_0x2cab01(0x13c)])),new Response(null,{'status':0xc8,'headers':_0x530c73});const _0x177792=_0x398b5e['headers'][_0x2cab01(0x4bf)](_0x2cab01(0x35c));if(!_0x177792)return _0x530c73[_0x2cab01(0x35a)]('content-'+_0x2cab01(0x451),String(_0x420eee[_0x2cab01(0x13c)])),new Response(Readable[_0x2cab01(0x34e)](createReadStream(_0x37742e)),{'status':0xc8,'headers':_0x530c73});const _0x3cbf3a=parseSingleRangeHeader(_0x177792,_0x420eee[_0x2cab01(0x13c)]);if(!_0x3cbf3a)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x2cab01(0x1d1)+_0x2cab01(0x369)](_0x530c73[_0x2cab01(0x29c)]()),'content-range':'bytes\x20*/'+_0x420eee[_0x2cab01(0x13c)]})});const {start:_0x820cd8,end:_0x11eaf3}=_0x3cbf3a,_0x27afa4=_0x11eaf3-_0x820cd8+0x1,_0x39d225=new Headers(_0x530c73);return _0x39d225[_0x2cab01(0x35a)]('content-'+'length',String(_0x27afa4)),_0x39d225[_0x2cab01(0x35a)]('content-'+_0x2cab01(0x35c),_0x2cab01(0x3e0)+_0x820cd8+'-'+_0x11eaf3+'/'+_0x420eee[_0x2cab01(0x13c)]),new Response(Readable[_0x2cab01(0x34e)](createReadStream(_0x37742e,{'start':_0x820cd8,'end':_0x11eaf3})),{'status':0xce,'headers':_0x39d225});}function installClawspaceProtocolHandler(){const _0x5c3ed3=_0x869a0f;protocol[_0x5c3ed3(0x261)](CLAWSPACE_PROTOCOL_SCHEME,_0x4e84e=>{const _0x4182aa=_0x5c3ed3;if(_0x4e84e[_0x4182aa(0x4bb)]==='OPTIONS')return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x1e475b=decodeClawspacePath(_0x4e84e[_0x4182aa(0x4a7)]);if(!_0x1e475b)return new Response(_0x4182aa(0x29e)+_0x4182aa(0x1b5)+_0x4182aa(0x310),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x4182aa(0x266)+_0x4182aa(0x322)+'set=utf-'+'8'})});if(!existsSync(_0x1e475b))return new Response(_0x4182aa(0x235)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x4182aa(0x266)+'in;\x20char'+_0x4182aa(0x2e2)+'8'})});return createLocalFileResponse(_0x4e84e,_0x1e475b);});}function installAppRendererProtocolHandler(){const _0x4f7a5d=_0x869a0f;protocol[_0x4f7a5d(0x261)](APP_RENDERER_PROTOCOL_SCHEME,_0xe62e49=>{const _0x558fb7=_0x4f7a5d;if(_0xe62e49[_0x558fb7(0x4bb)]===_0x558fb7(0x149))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x28c676=decodeAppRendererPath(_0xe62e49[_0x558fb7(0x4a7)]);if(!_0x28c676)return new Response(_0x558fb7(0x29e)+'app\x20url',{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x558fb7(0x266)+_0x558fb7(0x322)+_0x558fb7(0x2e2)+'8'})});const {url:_0x20446b,distDir:_0x465237,filePath:_0x3db860}=_0x28c676,_0x405799=join(_0x465237,_0x558fb7(0x459)+'ml'),_0x44d52f=existsSync(_0x3db860),_0xeaa5dd=_0x44d52f?_0x3db860:_0x405799;if(!_0x44d52f&&_0x20446b[_0x558fb7(0x2c2)]['includes']('.'))return new Response(_0x558fb7(0x235)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x558fb7(0x266)+_0x558fb7(0x322)+_0x558fb7(0x2e2)+'8'})});if(!existsSync(_0xeaa5dd))return mainLogger?.['error']('renderer'+_0x558fb7(0x43b)+_0x558fb7(0x49b)+'found',{'requestUrl':_0xe62e49[_0x558fb7(0x4a7)],'targetPath':_0xeaa5dd}),new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x558fb7(0x266)+_0x558fb7(0x322)+_0x558fb7(0x2e2)+'8'})});return createLocalFileResponse(_0xe62e49,_0xeaa5dd);});}function broadcast(_0x2755e6,_0x542228){const _0x114503=_0x869a0f;DEBUG_STDOUT&&console[_0x114503(0x3be)](_0x114503(0x299)+_0x114503(0x454)+'nt]',_0x2755e6,summarizePayload(_0x542228,{'maxDepth':0x2}));for(const _0x29e896 of BrowserWindow['getAllWi'+'ndows']()){!_0x29e896[_0x114503(0x4e9)+_0x114503(0x3c7)][_0x114503(0x291)+_0x114503(0x39f)]()&&_0x29e896[_0x114503(0x4e9)+_0x114503(0x3c7)][_0x114503(0x189)](_0x114503(0x3a7)+_0x114503(0x137)+'t',{'name':_0x2755e6,'payload':_0x542228});}}function requestLogReportFromRenderer(_0x192316){const _0x32e911=_0x869a0f,_0xfc7082=BrowserWindow[_0x32e911(0x45f)+_0x32e911(0x2ec)]()||(mainWindow&&!mainWindow[_0x32e911(0x291)+_0x32e911(0x39f)]()?mainWindow:null),_0xf5a1d2={'source':_0x192316};if(!_0xfc7082||_0xfc7082[_0x32e911(0x4e9)+'nts'][_0x32e911(0x291)+_0x32e911(0x39f)]()){broadcast(_0x32e911(0x1e4)+_0x32e911(0x3e2)+_0x32e911(0x285),_0xf5a1d2);return;}_0xfc7082[_0x32e911(0x2a8)+_0x32e911(0x4ac)]()&&_0xfc7082[_0x32e911(0x2c6)](),_0xfc7082[_0x32e911(0x337)](),_0xfc7082['focus'](),_0xfc7082['webConte'+_0x32e911(0x3c7)][_0x32e911(0x189)](_0x32e911(0x3a7)+'ell:even'+'t',{'name':_0x32e911(0x1e4)+_0x32e911(0x3e2)+'equested','payload':_0xf5a1d2});}function installApplicationMenu(){const _0x2e3f30=_0x869a0f;if(process[_0x2e3f30(0x254)]!==_0x2e3f30(0x434))return;const _0x5a7368=[{'label':shellConfig?.[_0x2e3f30(0x1ce)+'ame']||app['name'],'submenu':[{'role':_0x2e3f30(0x3e3)},{'type':'separato'+'r'},{'role':_0x2e3f30(0x2d9)},{'type':_0x2e3f30(0x28d)+'r'},{'role':_0x2e3f30(0x2c4)},{'role':_0x2e3f30(0x27b)+'rs'},{'role':'unhide'},{'type':'separato'+'r'},{'role':_0x2e3f30(0x242)}]},{'label':'编辑','submenu':[{'role':'undo'},{'role':_0x2e3f30(0x1a6)},{'type':_0x2e3f30(0x28d)+'r'},{'role':'cut'},{'role':'copy'},{'role':_0x2e3f30(0x488)},{'role':_0x2e3f30(0x116)+'l'}]},{'label':'显示','submenu':[{'role':_0x2e3f30(0x250)},{'role':_0x2e3f30(0x2d7)+_0x2e3f30(0x29b)},{'type':_0x2e3f30(0x28d)+'r'},{'role':_0x2e3f30(0x43c)+_0x2e3f30(0x1dc)}]},{'role':_0x2e3f30(0x1ec)+'nu','label':'窗口'},{'role':_0x2e3f30(0x46c),'label':'帮助','submenu':[{'label':'上传日志...','click':()=>{const _0x3497ba=_0x2e3f30;requestLogReportFromRenderer(_0x3497ba(0x2fe)+_0x3497ba(0x4e8));}}]}];Menu[_0x2e3f30(0x44b)+'cationMe'+'nu'](Menu[_0x2e3f30(0x1ee)+_0x2e3f30(0x22a)+'e'](_0x5a7368));}async function loadProductRuntime(){const _0x3ca582=_0x869a0f,_0x5932c1=[join(shellConfig['projectR'+_0x3ca582(0x352)],_0x3ca582(0x3ff)+_0x3ca582(0x269),_0x3ca582(0x120)+'s'),join(app[_0x3ca582(0x39b)+'th'](),_0x3ca582(0x3ff)+'ntime',_0x3ca582(0x120)+'s')],_0x2a4378=_0x5932c1['find'](_0x6d5d44=>existsSync(_0x6d5d44));if(!_0x2a4378)return mainLogger?.[_0x3ca582(0x3be)]('product\x20'+_0x3ca582(0x1a1)+_0x3ca582(0x43e)+_0x3ca582(0x4e3)+'und',{'runtimeCandidates':_0x5932c1}),{};try{const _0x44a937=await import(pathToFileURL(_0x2a4378)[_0x3ca582(0x37e)]);return mainLogger?.['info']('product\x20'+_0x3ca582(0x1a1)+_0x3ca582(0x43e)+_0x3ca582(0x202),{'runtimePath':_0x2a4378}),_0x44a937;}catch(_0x12e167){mainLogger?.['error'](_0x3ca582(0x462)+_0x3ca582(0x1a1)+_0x3ca582(0x43e)+_0x3ca582(0x38d)+'\x20to\x20load',{'runtimePath':_0x2a4378,'error':summarizeError(_0x12e167)});throw _0x12e167;}}function openDevToolsForActiveContext(){const _0x48e3fa=_0x869a0f;if(!isDevToolsEnabled())return mainLogger?.[_0x48e3fa(0x3be)](_0x48e3fa(0x4bc)+_0x48e3fa(0x217)+_0x48e3fa(0x3db),{'mode':getMode(),'flagPath':resolveDevToolsFlagPath()}),{'ok':![]};const _0x3e2524=BrowserWindow[_0x48e3fa(0x45f)+_0x48e3fa(0x2ec)]()||mainWindow;if(!_0x3e2524||_0x3e2524[_0x48e3fa(0x291)+_0x48e3fa(0x39f)]())return{'ok':![]};return _0x3e2524[_0x48e3fa(0x4e9)+_0x48e3fa(0x3c7)][_0x48e3fa(0x406)+'ools']({'mode':_0x48e3fa(0x211)}),_0x3e2524[_0x48e3fa(0x4e9)+_0x48e3fa(0x3c7)][_0x48e3fa(0x189)]('wujie-sh'+_0x48e3fa(0x137)+'t',{'name':_0x48e3fa(0x4bc)+_0x48e3fa(0x182)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0xe4100=_0x869a0f;globalShortcut[_0xe4100(0x317)+'er'](DEVTOOLS_ACCELERATOR);if(!isDevToolsEnabled())return;const _0x41a8f4=globalShortcut[_0xe4100(0x21b)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x41a8f4&&console[_0xe4100(0x374)](_0xe4100(0x299)+_0xe4100(0x18e)+_0xe4100(0x309)+_0xe4100(0x21b)+'\x20shortcu'+'t:\x20'+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x5d745a=_0x869a0f;try{const _0x22da97=await loadRuntimeInfo(shellConfig[_0x5d745a(0x4dd)+'oot']),_0x499fc7=_0x22da97[_0x5d745a(0x15d)]||{};return{'ok':!![],'runtimeRoot':_0x22da97[_0x5d745a(0x26c)+'oot'],'openclawVersion':_0x22da97['openclaw'+_0x5d745a(0x2cc)],'generatedAt':_0x499fc7[_0x5d745a(0x241)+'dAt']||null,'pluginCount':Array[_0x5d745a(0x40b)](_0x499fc7[_0x5d745a(0x402)])?_0x499fc7[_0x5d745a(0x402)][_0x5d745a(0x451)]:0x0,'plugins':Array[_0x5d745a(0x40b)](_0x499fc7[_0x5d745a(0x402)])?_0x499fc7['plugins']:[],'agents':_0x499fc7[_0x5d745a(0x16a)]||null,'skills':_0x499fc7['skills']||null,'wrapper':_0x499fc7[_0x5d745a(0x40a)+_0x5d745a(0x303)]||null,'product':_0x499fc7['product']||null};}catch(_0x2ac2d0){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.['projectR'+_0x5d745a(0x352)]||resolveProjectRoot()),'error':_0x2ac2d0 instanceof Error?_0x2ac2d0[_0x5d745a(0x48f)]:String(_0x2ac2d0)};}}async function createWindow(){const _0x4348b1=_0x869a0f,_0x208cac=process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL,_0x14d54e=process[_0x4348b1(0x254)]===_0x4348b1(0x434),_0x539627=process[_0x4348b1(0x254)]==='win32'?![]:!![],_0x55394f=isDevToolsEnabled();mainLogger?.[_0x4348b1(0x3be)](_0x4348b1(0x36d)+_0x4348b1(0x42b)+_0x4348b1(0x143),{'rendererUrl':_0x208cac,'mode':getMode(),'devToolsEnabled':_0x55394f,'devToolsFlagPath':resolveDevToolsFlagPath()});const _0x3c0994=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x4348b1(0x1ce)+_0x4348b1(0x2f5)],'backgroundColor':_0x14d54e?_0x4348b1(0x357):_0x4348b1(0x1a7),'autoHideMenuBar':!![],'titleBarStyle':'hidden','titleBarOverlay':_0x539627,..._0x14d54e?{'trafficLightPosition':{'x':0x10,'y':0xc}}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![],'devTools':_0x55394f}});mainWindow=_0x3c0994,protocolUrlState[_0x4348b1(0x17f)+'rerReady'](![]),_0x3c0994['on']('closed',()=>{const _0x2ed7e4=_0x4348b1;if(mainWindow!==_0x3c0994)return;mainWindow=null,protocolUrlState[_0x2ed7e4(0x17f)+'rerReady'](![]);}),_0x3c0994['webConte'+'nts']['on'](_0x4348b1(0x429)+'nput-eve'+'nt',_0x2611e3=>{const _0x501b25=_0x4348b1,_0x5d2b6a=_0x2611e3[_0x501b25(0x2a1)];if(!_0x5d2b6a||_0x5d2b6a[_0x501b25(0x41f)]!==_0x501b25(0x373))return;const _0x3b9e59=String(_0x5d2b6a[_0x501b25(0x39c)]||'')[_0x501b25(0x491)+'ase'](),_0x42988c=_0x3b9e59==='r',_0x39b2b5=process[_0x501b25(0x254)]===_0x501b25(0x434)?_0x5d2b6a[_0x501b25(0x380)]===!![]:_0x5d2b6a['control']===!![];if(!_0x42988c||!_0x39b2b5)return;_0x2611e3[_0x501b25(0x2d8)+_0x501b25(0x1da)](),broadcast(_0x501b25(0x180)+_0x501b25(0x4ec),{'type':'navigati'+'on','action':_0x501b25(0x250)});}),_0x3c0994['on']('focus',()=>{const _0x12a178=_0x4348b1;updateController?.[_0x12a178(0x197)+'ackgroun'+_0x12a178(0x183)]('window_f'+_0x12a178(0x1be));});const _0x56e776=process.env.VITE_DEV_SERVER_URL;_0x56e776?(await _0x3c0994['loadURL'](_0x56e776),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&_0x55394f&&_0x3c0994[_0x4348b1(0x4e9)+_0x4348b1(0x3c7)][_0x4348b1(0x406)+_0x4348b1(0x359)]({'mode':_0x4348b1(0x211)})):await _0x3c0994[_0x4348b1(0x481)](APP_RENDERER_ENTRY_URL),mainLogger?.[_0x4348b1(0x3be)](_0x4348b1(0x305)+_0x4348b1(0x363)+'ed',{'rendererUrl':_0x208cac,'mode':getMode(),'devToolsEnabled':_0x55394f});}function registerProtocolHandlers(){const _0x240212=_0x869a0f,_0xeef91b=resolveProtocolScheme();if(!_0xeef91b)return;let _0x1359d7=![];try{_0x1359d7=app[_0x240212(0x378)+'ed']?app[_0x240212(0x2b1)+_0x240212(0x150)+_0x240212(0x443)+'nt'](_0xeef91b,process[_0x240212(0x1ef)],[app[_0x240212(0x39b)+'th']()]):![];}catch(_0x556daa){mainLogger?.[_0x240212(0x450)](_0x240212(0x268)+_0x240212(0x4cf)+_0x240212(0x297)+_0x240212(0x110)+_0x240212(0x3a6),{'protocol':_0xeef91b,'error':summarizeError(_0x556daa)});}mainLogger?.[_0x240212(0x374)](_0x240212(0x268)+_0x240212(0x4cf)+_0x240212(0x21b)+'ed',{'protocol':_0xeef91b,'registered':_0x1359d7,'packaged':app[_0x240212(0x378)+'ed'],'defaultClient':app['isDefaul'+_0x240212(0x2a9)+_0x240212(0x175)](_0xeef91b),'execPath':toHomePath(process[_0x240212(0x1ef)]),'appPath':toHomePath(app[_0x240212(0x39b)+'th']())});const _0x4addeb=extractProtocolUrlFromArgs(process[_0x240212(0x278)]);if(_0x4addeb)protocolUrlState[_0x240212(0x226)+_0x240212(0x4dc)](_0x4addeb);const _0x33407d=extractProtocolUrlFromArgs(pendingProtocolArgs||[]);pendingProtocolArgs=null;if(_0x33407d)protocolUrlState[_0x240212(0x226)+_0x240212(0x4dc)](_0x33407d);}function normalizeRequestedLogLevel(_0x17d644){const _0x6a739f=_0x869a0f,_0x5e9899=typeof _0x17d644===_0x6a739f(0x25d)?_0x17d644[_0x6a739f(0x4c2)]()[_0x6a739f(0x491)+_0x6a739f(0x129)]():'';if(!SHELL_LOG_LEVELS['has'](_0x5e9899))throw new Error('日志等级必须是\x20'+_0x6a739f(0x38f)+_0x6a739f(0x4f5)+_0x6a739f(0x2a3));return _0x5e9899;}function writeMainAuditLog(_0x2628d5,_0x34f365){const _0xb8f376=_0x869a0f;return mainLogger?.[_0xb8f376(0x2eb)]?.(formatLogLine({'level':'INFO','context':_0xb8f376(0x36b),'message':_0x2628d5,'meta':_0x34f365}));}async function installIpcHandlers(){const _0x53d726=_0x869a0f,_0xbaa641=(_0x445203,_0x1e2cd0)=>{const _0x5f345d=_0x378c;ipcMain[_0x5f345d(0x261)](_0x445203,async(_0x1bd23f,_0x133aa6)=>{const _0x1b52a2=_0x5f345d,_0x34f2c0=Date[_0x1b52a2(0x4e1)](),_0x333d13=_0x1bd23f[_0x1b52a2(0x275)+_0x1b52a2(0x2f5)]?.['url']||_0x1bd23f[_0x1b52a2(0x176)][_0x1b52a2(0x18b)](),_0x17679c=ipcLogger?.[_0x1b52a2(0x28b)+'g'](_0x1b52a2(0x495));_0x17679c&&ipcLogger[_0x1b52a2(0x3be)](_0x1b52a2(0x439)+'est\x20star'+_0x1b52a2(0x3f7),{'channel':_0x445203,'senderUrl':_0x333d13});DEBUG_STDOUT&&_0x17679c&&console[_0x1b52a2(0x3be)](_0x1b52a2(0x299)+_0x1b52a2(0x387)+']',_0x445203,'started');try{let _0x1adf9a;try{_0x1adf9a=await _0x1e2cd0(_0x1bd23f,_0x133aa6);}catch(_0xabda0f){if(!isGatewayNotInitializedError(_0xabda0f))throw _0xabda0f;await ensureGatewayControllerStarted(),_0x1adf9a=await _0x1e2cd0(_0x1bd23f,_0x133aa6);}const _0x4afebe=Date['now']()-_0x34f2c0;return(_0x17679c||_0x4afebe>IPC_SLOW_REQUEST_THRESHOLD_MS)&&ipcLogger?.[_0x1b52a2(0x3be)]('ipc\x20requ'+_0x1b52a2(0x1fb)+_0x1b52a2(0x4a8),{'channel':_0x445203,'durationMs':_0x4afebe,'status':_0x1b52a2(0x272)+'d'}),await userEventWriter?.[_0x1b52a2(0x188)]({'channel':_0x445203,'payload':_0x133aa6,'result':_0x1adf9a,'durationMs':_0x4afebe,'status':_0x1b52a2(0x272)+'d'}),DEBUG_STDOUT&&_0x17679c&&console[_0x1b52a2(0x3be)](_0x1b52a2(0x299)+_0x1b52a2(0x387)+']',_0x445203,_0x1b52a2(0x220)+'d',{'durationMs':_0x4afebe,'status':_0x1b52a2(0x272)+'d'}),_0x1adf9a;}catch(_0x4fd65e){const _0x56a8df=Date['now']()-_0x34f2c0;ipcLogger?.[_0x1b52a2(0x450)](_0x1b52a2(0x439)+_0x1b52a2(0x262)+'ed',{'channel':_0x445203,'durationMs':_0x56a8df,'error':summarizeError(_0x4fd65e)}),await userEventWriter?.[_0x1b52a2(0x188)]({'channel':_0x445203,'payload':_0x133aa6,'error':_0x4fd65e,'durationMs':_0x56a8df,'status':_0x1b52a2(0x346)}),await diagnosticsWriter?.[_0x1b52a2(0x11d)+_0x1b52a2(0x304)](diagnosticEventFromError(_0x4fd65e,{'category':'ipc','event':_0x1b52a2(0x420)+_0x1b52a2(0x393)+'ed','message':_0x1b52a2(0x435)+_0x1b52a2(0x262)+_0x1b52a2(0x4c5)+_0x445203,'durationMs':_0x56a8df,'meta':{'channel':_0x445203,'senderUrl':_0x333d13,'payload':summarizePayload(_0x133aa6)}}));DEBUG_STDOUT&&console[_0x1b52a2(0x450)]('[wujie-s'+_0x1b52a2(0x387)+']',_0x445203,_0x1b52a2(0x346),summarizeError(_0x4fd65e));throw _0x4fd65e;}});},_0x5c9636=()=>{const _0x5c5d24=_0x378c;if(!gatewayController)throw new Error(bootError?'wujie-sh'+_0x5c5d24(0x490)+'\x20failed:'+'\x20'+bootError:'wujie-sh'+_0x5c5d24(0x35d)+'way\x20is\x20n'+_0x5c5d24(0x4d7)+_0x5c5d24(0x14a));return gatewayController;};function _0x468ad7(){const _0x1e743e=_0x378c;for(const _0x2fcb88 of Object[_0x1e743e(0x35b)](gatewayRuntimeHooks)){delete gatewayRuntimeHooks[_0x2fcb88];}Object[_0x1e743e(0x253)](gatewayRuntimeHooks,productRuntimeHooks,{'onChatHistoryLoaded':async _0x2c9505=>{const _0x4021f7=_0x1e743e;await requestIdHooks?.[_0x4021f7(0x173)+'storyLoa'+_0x4021f7(0x32a)]?.(_0x2c9505),await productRuntimeHooks?.[_0x4021f7(0x173)+_0x4021f7(0x168)+_0x4021f7(0x32a)]?.(_0x2c9505);},'onRequestIdTitleEvent':async _0x5b5ec3=>{const _0xb2f21c=_0x1e743e;await requestIdHooks?.[_0xb2f21c(0x2ac)+_0xb2f21c(0x263)+_0xb2f21c(0x416)]?.(_0x5b5ec3),await productRuntimeHooks?.['onReques'+_0xb2f21c(0x263)+_0xb2f21c(0x416)]?.(_0x5b5ec3);}});}const _0x54719d=()=>{const _0xe2be0f=_0x378c;if(typeof productRuntime[_0xe2be0f(0x21b)+_0xe2be0f(0x3a4)+_0xe2be0f(0x39e)+_0xe2be0f(0x3f5)]!==_0xe2be0f(0x308))return;const _0x3a7342=productRuntime[_0xe2be0f(0x21b)+'ProductR'+_0xe2be0f(0x39e)+_0xe2be0f(0x3f5)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0xbaa641,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x5c9636,'sep':sep,'openClawConfigHandlers':{'update':(..._0x29fd9f)=>configController[_0xe2be0f(0x1b4)+'enClawCo'+_0xe2be0f(0x465)](..._0x29fd9f),'setPluginConfig':_0x54d1bd=>configController[_0xe2be0f(0x376)+_0xe2be0f(0x114)+'nConfig'](_0x54d1bd),'setChannelConfig':_0x2033ef=>configController[_0xe2be0f(0x376)+_0xe2be0f(0x210)+_0xe2be0f(0x19e)](_0x2033ef),'deleteChannelConfig':_0x407788=>configController[_0xe2be0f(0x37f)+_0xe2be0f(0x408)+_0xe2be0f(0x4d2)+'fig'](_0x407788),'setSkillEntry':_0x1694a3=>configController[_0xe2be0f(0x376)+_0xe2be0f(0x3c3)+'Entry'](_0x1694a3),'deleteSkillEntry':_0x4c6de6=>configController[_0xe2be0f(0x37f)+_0xe2be0f(0x4b1)+_0xe2be0f(0x286)](_0x4c6de6),'setMcpServer':_0x3bf1b0=>configController['setOpenC'+'lawMcpSe'+_0xe2be0f(0x348)](_0x3bf1b0),'deleteMcpServer':_0x154306=>configController[_0xe2be0f(0x37f)+_0xe2be0f(0x2c3)+'pServer'](_0x154306)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x33007e})||{};Object['assign'](productRuntimeHooks,_0x3a7342),_0x468ad7();};ipcMain['on'](_0x53d726(0x2ca)+_0x53d726(0x2f2)+'-ready',()=>{const _0x2153ee=_0x53d726;protocolUrlState[_0x2153ee(0x17f)+_0x2153ee(0x37a)](!![]),mainLogger?.[_0x2153ee(0x374)](_0x2153ee(0x268)+_0x2153ee(0x1d2)+_0x2153ee(0x338),{'hasPendingProtocolUrl':Boolean(protocolUrlState[_0x2153ee(0x425)+'rl'])}),flushPendingProtocolUrl();}),_0xbaa641(_0x53d726(0x18f),async()=>({'name':shellConfig['productN'+_0x53d726(0x2f5)],'version':app[_0x53d726(0x445)+'on'](),'appId':shellConfig[_0x53d726(0x141)],'dataDir':shellConfig['dataDir']})),_0xbaa641(_0x53d726(0x4f2)+_0x53d726(0x17b),async(_0x1b6f76,_0x37e030)=>{const _0x45e6a6=_0x53d726,_0x21bd09=typeof _0x37e030===_0x45e6a6(0x25d)?_0x37e030:'';if(!_0x21bd09)return{'ok':![]};return filesLogger?.[_0x45e6a6(0x3be)](_0x45e6a6(0x240)+'ernal\x20ur'+'l\x20reques'+_0x45e6a6(0x3f7),{'url':summarizeText(_0x21bd09,0xa0)}),await shell['openExte'+_0x45e6a6(0x3c2)](_0x21bd09),{'ok':!![]};});const _0x33007e=async(_0x896af4,_0x4c9fe8)=>{const _0x426b5e=_0x53d726;return configController[_0x426b5e(0x115)+'igWriteH'+'andledIn'+_0x426b5e(0x3bf)](),await configController[_0x426b5e(0x13b)+_0x426b5e(0x26e)](_0x896af4,_0x4c9fe8),{'ok':!![]};};Object[_0x53d726(0x253)](requestIdHooks,registerRequestIdHandlers({'configController':configController,'handle':_0xbaa641,'mainLogger':mainLogger})),_0x468ad7(),_0x54719d(),_0xbaa641(_0x53d726(0x355)+'mport-zi'+'p',async(_0x33187b,_0x24321b)=>importMarketSkillZip({'payload':_0x24321b,'importSkillZip':_0x52427e=>importSkillZip({..._0x52427e,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow[_0x53d726(0x2b7)+_0x53d726(0x367)](_0x33187b[_0x53d726(0x176)])||mainWindow,'configController':configController}),'configController':configController})),_0xbaa641(_0x53d726(0x1c1)+_0x53d726(0x3f9),(_0x4592d5,_0x4a60dc)=>updateManagedSkillConfig({'payload':_0x4a60dc,'configController':configController})),_0xbaa641('skills:d'+_0x53d726(0x46d),(_0x587c7f,_0x3b9cbd)=>deleteMarketSkillRegistryEntry({'payload':_0x3b9cbd,'deleteManagedSkill':_0x188516=>deleteManagedSkill({..._0x188516,'gateway':_0x5c9636(),'configController':configController}),'configController':configController}));const _0x2825dd=ensureGeneratedFilesStore();_0xbaa641('app:gene'+_0x53d726(0x401)+'les:list',async()=>_0x2825dd[_0x53d726(0x340)]()),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+_0x53d726(0x40c)+_0x53d726(0x4ed)+'ion',async(_0x468e02,_0x5c7cca)=>_0x2825dd[_0x53d726(0x12c)+_0x53d726(0x1c4)](String(_0x5c7cca||''))),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+_0x53d726(0x221)+'rt',async(_0x1c1df9,_0x3b035f={})=>_0x2825dd[_0x53d726(0x247)](_0x3b035f)),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+_0x53d726(0x15e),async(_0x1713c2,_0x2c66c4)=>_0x2825dd[_0x53d726(0x2c4)](String(_0x2c66c4||''))),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+'les:hide'+_0x53d726(0x4ed)+'ion',async(_0x350540,_0x1a25da)=>_0x2825dd[_0x53d726(0x2db)+_0x53d726(0x1c4)](String(_0x1a25da||''))),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+_0x53d726(0x4c9)+'te',async(_0x5e1703,_0xc57a33)=>_0x2825dd['deleteFi'+'le'](String(_0xc57a33||''))),_0xbaa641(_0x53d726(0x2ff)+_0x53d726(0x401)+_0x53d726(0x4c9)+_0x53d726(0x2b8)+'e',async(_0x5ed487,_0x5c78a6=[])=>_0x2825dd[_0x53d726(0x27d)+'tate'](_0x5c78a6)),_0xbaa641(_0x53d726(0x2ff)+'rated-fi'+_0x53d726(0x3f4)+'al',async(_0x4704b1,_0xfe4b10)=>revealPathInFolder(_0xfe4b10)),_0xbaa641('artifact'+_0x53d726(0x4b8),async(_0x4cf803,_0x151a5a={})=>{const _0x36cce0=_0x53d726,_0x2d9efc=_0x151a5a&&typeof _0x151a5a===_0x36cce0(0x314)&&'sessionK'+'ey'in _0x151a5a?String(_0x151a5a[_0x36cce0(0x4e4)+'ey']||''):'';return _0x2d9efc?_0x2825dd[_0x36cce0(0x12c)+_0x36cce0(0x1c4)](_0x2d9efc):_0x2825dd[_0x36cce0(0x340)]();}),_0xbaa641(_0x53d726(0x1e7)+_0x53d726(0x43f),async(_0x33ef5d,_0x10365e={})=>_0x2825dd['upsert'](_0x10365e)),_0xbaa641(_0x53d726(0x1e7)+_0x53d726(0x256),async(_0x2bc02a,_0xfc0122={})=>_0x2825dd['hide'](String(_0xfc0122['id']||_0xfc0122||''))),_0xbaa641(_0x53d726(0x1e7)+_0x53d726(0x343),async(_0x176728,_0x1dd1aa={})=>_0x2825dd[_0x53d726(0x19b)+'le'](String(_0x1dd1aa['id']||_0x1dd1aa||''))),_0xbaa641(_0x53d726(0x1e7)+'s:delete'+_0x53d726(0x379),async(_0xe803e3,_0x48bd57={})=>_0x2825dd[_0x53d726(0x27d)+_0x53d726(0x321)](_0x48bd57['paths']||_0x48bd57)),_0xbaa641('artifact'+_0x53d726(0x3fc),async(_0x21617f,_0x2d7380={})=>{const _0x320fa1=_0x53d726,_0x1e9260=typeof _0x2d7380===_0x320fa1(0x25d)?_0x2d7380:_0x2d7380['path']||_0x2d7380['uri'];return revealPathInFolder(_0x1e9260);});const _0x5bd7f2=createPreferencesStore({'stateDir':configController[_0x53d726(0x3d6)+_0x53d726(0x23b)](),'storeFile':'product-'+_0x53d726(0x27c)+'ces.json'}),_0x6e6fe=await _0x5bd7f2[_0x53d726(0x4bf)]('shellLog'+_0x53d726(0x1a8),configController[_0x53d726(0x455)]['logLevel']),_0x59d3aa=setShellLoggerLevel(_0x6e6fe);setRuntimeLoggerLevel(_0x6e6fe),mainLogger?.[_0x53d726(0x3be)](_0x53d726(0x3f1)+_0x53d726(0x479)+'initiali'+'zed',{'level':_0x59d3aa,'configuredLevel':configController[_0x53d726(0x455)][_0x53d726(0x2e3)],'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),_0xbaa641(_0x53d726(0x13e)+_0x53d726(0x19a)+'se',async()=>_0x5bd7f2[_0x53d726(0x4bf)](_0x53d726(0x499)+_0x53d726(0x158)+'se',![])),_0xbaa641(_0x53d726(0x13e)+_0x53d726(0x38c)+'se',async(_0xef69d9,_0x5e78c2)=>_0x5bd7f2[_0x53d726(0x35a)]('closeToT'+_0x53d726(0x158)+'se',_0x5e78c2===!![])),_0xbaa641(_0x53d726(0x274)+_0x53d726(0x184),async()=>({'level':getShellLoggerLevel(configController['paths']),'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)})),_0xbaa641(_0x53d726(0x39a)+_0x53d726(0x184),async(_0x3d7984,_0x1f6465={})=>{const _0xca4d3f=_0x53d726,_0x1f9fab=normalizeRequestedLogLevel(typeof _0x1f6465===_0xca4d3f(0x25d)?_0x1f6465:_0x1f6465[_0xca4d3f(0x3b6)]);await _0x5bd7f2[_0xca4d3f(0x35a)](_0xca4d3f(0x32f)+_0xca4d3f(0x1a8),_0x1f9fab);const _0xea6e56=setShellLoggerLevel(_0x1f9fab);return setRuntimeLoggerLevel(_0x1f9fab),await writeMainAuditLog(_0xca4d3f(0x3f1)+'g\x20level\x20'+'changed',{'requestedLevel':_0x1f9fab,'level':_0xea6e56,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),{'ok':!![],'level':_0xea6e56,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)};}),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0xbaa641,'sep':sep,'stateDir':configController[_0x53d726(0x3d6)+_0x53d726(0x23b)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0xbaa641,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0xbaa641,'modelHandlers':{'saveCustomModel':_0x252d22=>_0x5c9636()[_0x53d726(0x1fe)]['saveCust'+_0x53d726(0x153)](_0x252d22),'deleteCustomModel':_0x568d61=>_0x5c9636()[_0x53d726(0x1fe)][_0x53d726(0x194)+_0x53d726(0x1c6)+'l'](_0x568d61)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x4622a0)=>configController[_0x53d726(0x1b4)+_0x53d726(0x246)+_0x53d726(0x465)](..._0x4622a0),'setPluginConfig':_0x173e56=>configController['setOpenC'+_0x53d726(0x114)+_0x53d726(0x31d)](_0x173e56),'setChannelConfig':_0x1a300d=>configController['setOpenC'+_0x53d726(0x210)+_0x53d726(0x19e)](_0x1a300d),'deleteChannelConfig':_0x1664c9=>configController['deleteOp'+_0x53d726(0x408)+_0x53d726(0x4d2)+'fig'](_0x1664c9),'setSkillEntry':_0xc234f4=>configController[_0x53d726(0x376)+'lawSkill'+_0x53d726(0x4ca)](_0xc234f4),'deleteSkillEntry':_0x5c4ddf=>configController[_0x53d726(0x37f)+'enClawSk'+_0x53d726(0x286)](_0x5c4ddf),'setMcpServer':_0x6d40e=>configController['setOpenC'+'lawMcpSe'+_0x53d726(0x348)](_0x6d40e),'deleteMcpServer':_0x350b40=>configController[_0x53d726(0x37f)+_0x53d726(0x2c3)+_0x53d726(0x17a)](_0x350b40)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0xbaa641(_0x53d726(0x232)+_0x53d726(0x42c)+_0x53d726(0x1d8),async()=>connectorController[_0x53d726(0x11c)+_0x53d726(0x4d2)+_0x53d726(0x372)]()),_0xbaa641(_0x53d726(0x232)+_0x53d726(0x42c)+'ls:delet'+'e',async(_0x2405b8,_0x529045={})=>connectorController[_0x53d726(0x15b)+_0x53d726(0x4ce)+_0x53d726(0x41e)](_0x529045)),_0xbaa641(_0x53d726(0x232)+_0x53d726(0x42c)+'ls:set-e'+_0x53d726(0x1e9),async(_0x43d06b,_0x5a6b84={})=>connectorController[_0x53d726(0x4b0)+'nnelEnab'+'led'](_0x5a6b84)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x27a),async(_0x6bc95f,_0x3eba30={})=>{const _0x401ee4=_0x53d726,_0x1b7bed=String(_0x3eba30[_0x401ee4(0x23f)+'d']||_0x3eba30[_0x401ee4(0x2c9)]?.[_0x401ee4(0x23f)+'d']||_0x3eba30[_0x401ee4(0x2c9)]?.['id']||'');if(!_0x1b7bed)throw new Error('channelI'+_0x401ee4(0x181)+_0x401ee4(0x21f));const _0x690483=_0x3eba30[_0x401ee4(0x2c9)]||_0x3eba30,_0x4743be={'feishu':connectorController[_0x401ee4(0x1c2)+'huChanne'+_0x401ee4(0x1e1)],'qqbot':connectorController[_0x401ee4(0x28f)+'tChannel'+_0x401ee4(0x29a)],'wecom':connectorController[_0x401ee4(0x118)+_0x401ee4(0x3a9)+_0x401ee4(0x29a)],'qq_mail':connectorController[_0x401ee4(0x1cb)+_0x401ee4(0x22e)+_0x401ee4(0x1e3)+'g'],'netease_mail':connectorController[_0x401ee4(0x300)+'aseMailC'+_0x401ee4(0x19c)+_0x401ee4(0x29a)],'tencent_exmail':connectorController[_0x401ee4(0x400)+_0x401ee4(0x473)+_0x401ee4(0x125)+_0x401ee4(0x2c0)],'feishu_doc':connectorController[_0x401ee4(0x1c2)+_0x401ee4(0x3ed)+_0x401ee4(0x1ba)+_0x401ee4(0x465)],'tencent_docs':connectorController[_0x401ee4(0x400)+_0x401ee4(0x436)+'onnector'+_0x401ee4(0x29a)],'kdocs':connectorController['saveKdoc'+_0x401ee4(0x2e1)+'orConfig'],'dingtalk_doc':connectorController['saveDing'+'talkDocC'+_0x401ee4(0x19c)+_0x401ee4(0x29a)]},_0x3defb2=_0x4743be[_0x1b7bed];if(!_0x3defb2)throw new Error(_0x401ee4(0x1c0)+'ted\x20conn'+'ector:\x20'+_0x1b7bed);return _0x3defb2(_0x690483);}),_0xbaa641(_0x53d726(0x34a)+'onnector'+_0x53d726(0x4bd)+_0x53d726(0x407)+_0x53d726(0x2b2),async(_0x3f9c3e,_0x30142f={})=>connectorController[_0x53d726(0x1c2)+_0x53d726(0x2bc)+_0x53d726(0x1e1)](_0x30142f)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x160)+_0x53d726(0x4f1)+_0x53d726(0x216),async(_0x4974a7,_0x3987e2={})=>connectorController[_0x53d726(0x28f)+_0x53d726(0x3d5)+'Config'](_0x3987e2)),_0xbaa641(_0x53d726(0x34a)+'onnector'+_0x53d726(0x177)+_0x53d726(0x24c)+_0x53d726(0x216),async(_0x4b3991,_0xf3eef1={})=>connectorController[_0x53d726(0x118)+_0x53d726(0x3a9)+'Config'](_0xf3eef1)),_0xbaa641(_0x53d726(0x34a)+'onnector'+_0x53d726(0x160)+'-mail',async(_0x250a89,_0x3ffc63={})=>connectorController[_0x53d726(0x1cb)+_0x53d726(0x22e)+_0x53d726(0x1e3)+'g'](_0x3ffc63)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x4ef)+_0x53d726(0x11f)+'il',async(_0x3fe2f5,_0x216005={})=>connectorController[_0x53d726(0x300)+_0x53d726(0x38b)+_0x53d726(0x19c)+_0x53d726(0x29a)](_0x216005)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x350)+_0x53d726(0x3b0)+_0x53d726(0x418),async(_0x42e303,_0x22edfc={})=>connectorController[_0x53d726(0x400)+_0x53d726(0x473)+_0x53d726(0x125)+_0x53d726(0x2c0)](_0x22edfc)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x4bd)+_0x53d726(0x332),async(_0x2e57a6,_0x22d37d={})=>connectorController[_0x53d726(0x1c2)+_0x53d726(0x3ed)+_0x53d726(0x1ba)+'nfig'](_0x22d37d)),_0xbaa641('config:c'+_0x53d726(0x19c)+_0x53d726(0x350)+_0x53d726(0x24f)+'cs',async(_0x337f84,_0x51e980={})=>connectorController['saveTenc'+_0x53d726(0x436)+_0x53d726(0x19c)+'Config'](_0x51e980)),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x4a5)+_0x53d726(0x38e),async(_0x520b5a,_0x4b4b2b={})=>connectorController[_0x53d726(0x1d4)+_0x53d726(0x2e1)+_0x53d726(0x2c0)](_0x4b4b2b)),_0xbaa641('config:c'+'onnector'+_0x53d726(0x301)+_0x53d726(0x3b9)+'oc',async(_0x2b8668,_0x4ff3c8={})=>connectorController['saveDing'+'talkDocC'+_0x53d726(0x19c)+'Config'](_0x4ff3c8)),_0xbaa641('config:c'+_0x53d726(0x19c)+_0x53d726(0x1f7)+_0x53d726(0x1bb),async(_0x3c9453,_0x342d59={})=>{const _0x303dd8=_0x53d726,_0x513f60=String(_0x342d59['channelI'+'d']||_0x342d59[_0x303dd8(0x41f)]||'');if(_0x513f60===_0x303dd8(0x4b2))return connectorController[_0x303dd8(0x452)+_0x303dd8(0x16e)+'nectSess'+_0x303dd8(0x4d4)]();if(_0x513f60===_0x303dd8(0x47c)+'oc')return connectorController[_0x303dd8(0x24a)+_0x303dd8(0x295)+'iConnect'+'Session']();if(_0x513f60===_0x303dd8(0x207))return connectorController[_0x303dd8(0x24a)+_0x303dd8(0x47e)+_0x303dd8(0x404)+_0x303dd8(0x288)](_0x342d59);if(_0x513f60===_0x303dd8(0x4aa)+_0x303dd8(0x415)||_0x513f60==='wechat')return connectorController[_0x303dd8(0x334)+_0x303dd8(0x35f)+_0x303dd8(0x32b)+'n']({'gatewayPort':_0x5c9636()[_0x303dd8(0x49f)+_0x303dd8(0x2ea)](),'gatewayToken':_0x5c9636()['gatewayT'+_0x303dd8(0x466)]()});throw new Error(_0x303dd8(0x1c0)+'ted\x20conn'+_0x303dd8(0x414)+_0x303dd8(0x45e)+(_0x513f60||_0x303dd8(0x3d8)));}),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x1f7)+_0x53d726(0x486),async(_0x209194,_0x5b69f8={})=>{const _0x1b0507=_0x53d726,_0x3a4065=String(_0x5b69f8[_0x1b0507(0x23f)+'d']||_0x5b69f8[_0x1b0507(0x41f)]||'');if(_0x3a4065==='kdocs')return connectorController[_0x1b0507(0x119)+_0x1b0507(0x24b)+_0x1b0507(0x383)](_0x5b69f8);if(_0x3a4065===_0x1b0507(0x47c)+'oc')return connectorController[_0x1b0507(0x289)+_0x1b0507(0x2bd)+_0x1b0507(0x426)+_0x1b0507(0x2d5)](_0x5b69f8);if(_0x3a4065===_0x1b0507(0x207))return connectorController[_0x1b0507(0x289)+_0x1b0507(0x370)+'ationSta'+'tus'](_0x5b69f8);throw new Error('Unsuppor'+_0x1b0507(0x1db)+_0x1b0507(0x414)+'ssion:\x20'+(_0x3a4065||_0x1b0507(0x3d8)));}),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+_0x53d726(0x1f7)+_0x53d726(0x3e1),async(_0x4103ca,_0x3d7b5f={})=>{const _0x7c757f=_0x53d726,_0x52c9f0=String(_0x3d7b5f[_0x7c757f(0x23f)+'d']||_0x3d7b5f[_0x7c757f(0x41f)]||'');if(_0x52c9f0===_0x7c757f(0x4b2))return connectorController[_0x7c757f(0x171)+_0x7c757f(0x12e)+_0x7c757f(0x4da)+_0x7c757f(0x2a0)](_0x3d7b5f);if(_0x52c9f0==='feishu_d'+'oc')return connectorController['cancelFe'+_0x7c757f(0x14e)+_0x7c757f(0x33a)+_0x7c757f(0x49d)](_0x3d7b5f);if(_0x52c9f0==='feishu')return connectorController['cancelFe'+_0x7c757f(0x30e)+'stration'+_0x7c757f(0x1f2)](_0x3d7b5f);if(_0x52c9f0===_0x7c757f(0x4aa)+_0x7c757f(0x415)||_0x52c9f0===_0x7c757f(0x427))return connectorController['cancelWe'+_0x7c757f(0x312)+_0x7c757f(0x178)+'on']();return{'ok':!![]};}),_0xbaa641(_0x53d726(0x34a)+_0x53d726(0x19c)+'-session'+_0x53d726(0x252)+'e',async(_0x1b13fd,_0x1f8a21={})=>{const _0x1c35f8=_0x53d726,_0xe390e=String(_0x1f8a21['channelI'+'d']||_0x1f8a21['type']||'');if(_0xe390e===_0x1c35f8(0x47c)+'oc')return connectorController[_0x1c35f8(0x220)+_0x1c35f8(0x258)+'cCliConn'+'ectSessi'+'on'](_0x1f8a21);throw new Error(_0x1c35f8(0x1c0)+_0x1c35f8(0x1db)+_0x1c35f8(0x414)+'ssion:\x20'+(_0xe390e||_0x1c35f8(0x3d8)));}),_0xbaa641('config:r'+_0x53d726(0x142),()=>connectorController[_0x53d726(0x47a)+'igSnapsh'+'ot']());const _0x2d88b6=_0x3e4535=>{const _0x3eb4e6=_0x53d726,_0x6b8dc3=_0x3e4535[_0x3eb4e6(0x16a)]&&typeof _0x3e4535[_0x3eb4e6(0x16a)]===_0x3eb4e6(0x314)?_0x3e4535[_0x3eb4e6(0x16a)]:{};return Array['isArray'](_0x6b8dc3[_0x3eb4e6(0x340)])?_0x6b8dc3[_0x3eb4e6(0x340)]:[];},_0x110d5c=_0x1e5499=>{const _0x295c7f=_0x53d726,_0x5cbf8a=typeof _0x1e5499===_0x295c7f(0x25d)?_0x1e5499[_0x295c7f(0x4c2)]():'',_0x263a5a=_0x5cbf8a[_0x295c7f(0x201)](/^agent:([^:]+):/);return _0x263a5a?.[0x1]||'';},_0x179e30=(_0x418436={},_0x45eada=[])=>{const _0x543eac=_0x53d726,_0x4a43a5=Array[_0x543eac(0x40b)](_0x418436[_0x543eac(0x4b7)])?_0x418436[_0x543eac(0x4b7)]:[],_0x991c95=Array[_0x543eac(0x40b)](_0x418436[_0x543eac(0x16a)])?_0x418436[_0x543eac(0x16a)]:Array[_0x543eac(0x40b)](_0x418436[_0x543eac(0x340)])?_0x418436[_0x543eac(0x340)]:_0x4a43a5[_0x543eac(0x191)](_0x42a7cb=>_0x42a7cb?.[_0x543eac(0x265)])[_0x543eac(0x1af)](Boolean),_0x14551f=Array['isArray'](_0x45eada)?_0x45eada:[];return _0x991c95['map'](_0x50cfff=>{const _0x5e48f4=_0x543eac,_0x1e97c1=String(_0x50cfff?.['id']||_0x50cfff?.[_0x5e48f4(0x24d)]||'')[_0x5e48f4(0x4c2)](),_0xbaf578=_0x4a43a5[_0x5e48f4(0x33d)](_0x2e0bab=>{const _0x349454=_0x5e48f4,_0x31e044=String(_0x2e0bab?.[_0x349454(0x265)]?.['id']||_0x2e0bab?.['agent']?.['agentId']||'')['trim']();return _0x31e044===_0x1e97c1;});return{..._0xbaf578&&typeof _0xbaf578==='object'?_0xbaf578:{},'agent':_0x50cfff,'sessions':_0x1e97c1?_0x14551f[_0x5e48f4(0x1af)](_0x43d3f4=>{const _0x5c2835=_0x5e48f4,_0x318dd1=String(_0x43d3f4?.[_0x5c2835(0x24d)]||_0x43d3f4?.[_0x5c2835(0x4be)]||_0x43d3f4?.[_0x5c2835(0x265)]?.['id']||_0x110d5c(_0x43d3f4?.[_0x5c2835(0x39c)])||'')['trim']();return _0x318dd1?_0x318dd1===_0x1e97c1:_0x1e97c1===_0x5c2835(0x36b);}):[]};});};_0xbaa641(_0x53d726(0x3e5)+_0x53d726(0x18c)+'tate',async()=>updateController?.[_0x53d726(0x293)]()),_0xbaa641(_0x53d726(0x3e5)+_0x53d726(0x2bb),async()=>updateController?.[_0x53d726(0x319)+_0x53d726(0x3cf)]()),_0xbaa641(_0x53d726(0x3e5)+_0x53d726(0x22d)+_0x53d726(0x29b),async()=>updateController?.[_0x53d726(0x45d)+_0x53d726(0x1fa)]()),_0xbaa641(_0x53d726(0x3e5)+_0x53d726(0x30b)+_0x53d726(0x4de)+'all',async()=>updateController?.[_0x53d726(0x14d)+_0x53d726(0x2ab)]()),_0xbaa641('app:file'+_0x53d726(0x4e7),async(_0x4734e5,_0x369539={})=>{const _0x5f099b=_0x53d726,_0x1ae2a2=await dialog['showOpen'+_0x5f099b(0x4db)](BrowserWindow[_0x5f099b(0x2b7)+'ontents'](_0x4734e5[_0x5f099b(0x176)])??mainWindow,{'properties':[_0x5f099b(0x4f6),..._0x369539?.[_0x5f099b(0x4c4)]!==0x1?['multiSel'+_0x5f099b(0x209)]:[]],'filters':_0x369539?.[_0x5f099b(0x298)+_0x5f099b(0x17e)+'s']?[{'name':_0x5f099b(0x48c),'extensions':_0x369539['customNa'+_0x5f099b(0x17e)+'s']}]:undefined});return _0x1ae2a2[_0x5f099b(0x1aa)+'s'][_0x5f099b(0x191)](_0x277469=>({'path':_0x277469,'name':_0x277469['split'](/[\\/]/)[_0x5f099b(0x1de)]()||_0x277469}));}),_0xbaa641(_0x53d726(0x117)+_0x53d726(0x196)+'d-local',async(_0x3c433d,_0x1c3daa={})=>{const _0x131959=_0x53d726,_0x4d401c=String(_0x1c3daa[_0x131959(0x326)+'th']||'');if(!_0x4d401c)return{'success':![],'error':_0x131959(0x326)+_0x131959(0x353)+'quired'};const _0x37000d=await dialog[_0x131959(0x4d0)+_0x131959(0x4db)](mainWindow,{'defaultPath':_0x1c3daa[_0x131959(0x20a)+'ileName']||_0x4d401c[_0x131959(0x208)](/[\\/]/)[_0x131959(0x1de)]()});if(_0x37000d[_0x131959(0x34d)]||!_0x37000d['filePath'])return{'success':![],'canceled':!![]};const {copyFile:_0x462d67}=await import(_0x131959(0x174)+'promises');return await _0x462d67(_0x4d401c,_0x37000d[_0x131959(0x1aa)]),{'success':!![],'filePath':_0x37000d[_0x131959(0x1aa)]};}),_0xbaa641('app:clip'+_0x53d726(0x152)+_0x53d726(0x3d2),async(_0xf9a7d5,_0x38c95d)=>{return clipboard['writeTex'+'t'](String(_0x38c95d??'')),{'ok':!![]};}),_0xbaa641(_0x53d726(0x48d)+_0x53d726(0x136)+'rt',async()=>{const _0x509822=_0x53d726;return app[_0x509822(0x16d)](),app[_0x509822(0x242)](),{'ok':!![]};}),_0xbaa641(_0x53d726(0x4ea)+_0x53d726(0x4ae)+'zed',_0x223b6b=>Boolean(BrowserWindow[_0x53d726(0x2b7)+'ontents'](_0x223b6b[_0x53d726(0x176)])?.[_0x53d726(0x470)+_0x53d726(0x4ac)]())),_0xbaa641(_0x53d726(0x4b5)+'tup:set',async(_0x2dc45a,_0x79ae7f)=>{const _0x39dda5=_0x53d726;return app[_0x39dda5(0x44e)+_0x39dda5(0x389)+_0x39dda5(0x20f)]({'openAtLogin':_0x79ae7f===!![]}),{'ok':!![],'enabled':_0x79ae7f===!![]};}),_0xbaa641('app:star'+'tup:get',async()=>app[_0x53d726(0x349)+_0x53d726(0x389)+_0x53d726(0x20f)]()[_0x53d726(0x412)+'gin']),_0xbaa641(_0x53d726(0x117)+_0x53d726(0x44c)+_0x53d726(0x213),async _0xa9602b=>{const _0x130456=_0x53d726,_0x288233=await dialog[_0x130456(0x4b6)+_0x130456(0x4db)](BrowserWindow[_0x130456(0x2b7)+'ontents'](_0xa9602b[_0x130456(0x176)])??mainWindow,{'properties':[_0x130456(0x14b)+_0x130456(0x31b)]});return _0x288233[_0x130456(0x1aa)+'s'][0x0]||'';}),_0xbaa641(_0x53d726(0x48d)+'em:open-'+_0x53d726(0x213),async(_0x2dda35,_0xd94a16)=>{const _0x48baf9=_0x53d726,_0x3085c5=await shell[_0x48baf9(0x433)](String(_0xd94a16||''));return _0x3085c5||'';}),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x1b2)+_0x53d726(0x205),async()=>_0x5c9636()[_0x53d726(0x1c9)+_0x53d726(0x466)]()),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x1b2)+'-port',async()=>_0x5c9636()[_0x53d726(0x49f)+_0x53d726(0x2ea)]()),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x339)+'e',async(_0x48fb3d,_0x4325c5=[])=>{const _0x340b85=_0x53d726,_0x2b584f=await runClawOnce(shellConfig[_0x340b85(0x4dd)+_0x340b85(0x352)],Array[_0x340b85(0x40b)](_0x4325c5)?_0x4325c5:[]);return{'ok':_0x2b584f[_0x340b85(0x260)]===0x0,..._0x2b584f};});const _0x1d9d63=configController[_0x53d726(0x3d6)+_0x53d726(0x23b)]();sessionSqliteStore=ensureSessionSqliteStore();const _0xb98bff=createAgentSessionsMapStore({'stateDir':_0x1d9d63});_0xbaa641(_0x53d726(0x230)+_0x53d726(0x185),async(_0x73a16c,_0x2bc985={})=>{const _0x1a84af=_0x53d726,_0x119611=_0x2bc985&&typeof _0x2bc985==='object'?_0x2bc985:{},_0x12a5eb=_0x119611[_0x1a84af(0x294)+_0x1a84af(0x42d)]||_0x119611[_0x1a84af(0x4e4)+'ey'],_0x15019c=await _0x5c9636()['sessions'][_0x1a84af(0x2e6)]({..._0x119611,'parentSessionKey':_0x12a5eb}),_0x40a865=String(_0x15019c?.[_0x1a84af(0x39c)]||'')[_0x1a84af(0x4c2)](),_0x13b213=String(_0x15019c?.[_0x1a84af(0x2d2)+'d']||'')[_0x1a84af(0x4c2)]();return _0x40a865&&_0x13b213&&await _0xb98bff['upsert']({'sessionKey':_0x40a865,'sessionId':_0x13b213,'sourceSessionKey':_0x119611[_0x1a84af(0x3d4)+_0x1a84af(0x42d)]||_0x12a5eb,...typeof _0x119611[_0x1a84af(0x3bb)+'lTs']===_0x1a84af(0x154)?{'keepUntilTs':_0x119611[_0x1a84af(0x3bb)+'lTs']}:{},...typeof _0x119611[_0x1a84af(0x4cc)+'le']===_0x1a84af(0x25d)?{'cutoffRole':_0x119611['cutoffRo'+'le']}:{},...typeof _0x119611[_0x1a84af(0x4d6)+'xt']===_0x1a84af(0x25d)?{'cutoffText':_0x119611[_0x1a84af(0x4d6)+'xt']}:{}}),_0x15019c;}),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x34f)+_0x53d726(0x223),async(_0x5850d3,_0x2b4342={})=>_0xb98bff['get'](_0x2b4342)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x34f)+_0x53d726(0x22c)+'t',async(_0x707e51,_0x507743={})=>_0xb98bff['upsert'](_0x507743)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x34f)+_0x53d726(0x421),async(_0x7bd813,_0x69423c={})=>{const _0x5a4d58=String(_0x69423c['sessionK'+'ey']||'')['trim']();if(!_0x5a4d58)return null;return await sessionSqliteStore['readSess'+'ionEntry'](_0x5a4d58);}),_0xbaa641(_0x53d726(0x2a7)+'reate',async(_0x1d58b9,_0x5499d9={})=>{const _0x60687b=_0x53d726,_0x1d404c=await readMutableConfig(),_0x2c868b=_0x1d404c[_0x60687b(0x16a)]&&typeof _0x1d404c[_0x60687b(0x16a)]===_0x60687b(0x314)?_0x1d404c[_0x60687b(0x16a)]:{},_0x2e421d=_0x2d88b6(_0x1d404c),_0x583203=String(_0x5499d9['id']||_0x5499d9[_0x60687b(0x42e)]||_0x60687b(0x20e)+Date[_0x60687b(0x4e1)]())[_0x60687b(0x4c2)]()['replace'](/\s+/g,'-'),_0x4da39a={'id':_0x583203,'name':String(_0x5499d9[_0x60687b(0x42e)]||_0x583203),..._0x5499d9[_0x60687b(0x453)+'e']?{'workspace':String(_0x5499d9['workspac'+'e'])}:{},..._0x5499d9[_0x60687b(0x2f8)]?{'model':_0x5499d9[_0x60687b(0x2f8)]}:{},..._0x5499d9[_0x60687b(0x325)]?{'emoji':_0x5499d9[_0x60687b(0x325)]}:{},..._0x5499d9[_0x60687b(0x255)]?{'avatar':_0x5499d9[_0x60687b(0x255)]}:{},...Array['isArray'](_0x5499d9[_0x60687b(0x2cb)])?{'skills':_0x5499d9[_0x60687b(0x2cb)]}:{}};if(_0x2e421d[_0x60687b(0x4ee)](_0x5b6d94=>_0x5b6d94?.['id']===_0x583203))throw new Error(_0x60687b(0x167)+'ready\x20ex'+_0x60687b(0x375));return _0x2c868b[_0x60687b(0x340)]=[..._0x2e421d,_0x4da39a],_0x1d404c[_0x60687b(0x16a)]=_0x2c868b,await _0x33007e(_0x1d404c,'agent\x20cr'+_0x60687b(0x4a9)),{'ok':!![],'agent':_0x4da39a};}),_0xbaa641(_0x53d726(0x13d)+_0x53d726(0x3f9),async(_0x440f20,_0x757b86={})=>{const _0x234960=_0x53d726,_0x20b2d8=String(_0x757b86['id']||_0x757b86[_0x234960(0x24d)]||'')[_0x234960(0x4c2)]();if(!_0x20b2d8)throw new Error('agent\x20id'+_0x234960(0x3f2)+_0x234960(0x126));const _0x1b7e40=await readMutableConfig(),_0x1a71c1=_0x1b7e40[_0x234960(0x16a)]&&typeof _0x1b7e40[_0x234960(0x16a)]===_0x234960(0x314)?_0x1b7e40[_0x234960(0x16a)]:{},_0x236941=_0x2d88b6(_0x1b7e40),_0x4317e8=_0x236941[_0x234960(0x191)](_0x5e97ae=>_0x5e97ae?.['id']===_0x20b2d8?{..._0x5e97ae,..._0x757b86,'id':_0x20b2d8}:_0x5e97ae);return _0x1a71c1[_0x234960(0x340)]=_0x4317e8,_0x1b7e40['agents']=_0x1a71c1,await _0x33007e(_0x1b7e40,_0x234960(0x238)+'dated'),{'ok':!![],'agent':_0x4317e8[_0x234960(0x33d)](_0x3d6924=>_0x3d6924?.['id']===_0x20b2d8)||null};}),_0xbaa641(_0x53d726(0x49a)+'elete',async(_0x5d8dd5,_0x2c8954={})=>{const _0xda1988=_0x53d726,_0xc8f50d=String(_0x2c8954['id']||_0x2c8954[_0xda1988(0x24d)]||'')[_0xda1988(0x4c2)]();if(!_0xc8f50d)throw new Error(_0xda1988(0x18a)+'\x20is\x20requ'+_0xda1988(0x126));const _0x58928a=await readMutableConfig(),_0x290cea=_0x58928a['agents']&&typeof _0x58928a[_0xda1988(0x16a)]==='object'?_0x58928a[_0xda1988(0x16a)]:{};return _0x290cea['list']=_0x2d88b6(_0x58928a)[_0xda1988(0x1af)](_0x41a564=>_0x41a564?.['id']!==_0xc8f50d),_0x58928a['agents']=_0x290cea,await _0x33007e(_0x58928a,_0xda1988(0x477)+_0xda1988(0x4a8)),{'ok':!![],'agentId':_0xc8f50d};}),_0xbaa641(_0x53d726(0x329)+_0x53d726(0x31c)+'ions-lis'+'t',async(_0x5e1f4e,_0x19bdaa={})=>{const _0x2bb6b2=_0x53d726,[_0x4157b0,_0x59e404]=await Promise[_0x2bb6b2(0x3c6)]([_0x5c9636()[_0x2bb6b2(0x16a)][_0x2bb6b2(0x340)](),ensureSessionDataService()[_0x2bb6b2(0x3a0)+'aries'](_0x19bdaa)['catch'](()=>({'sessions':[]}))]),_0x10093c=Array[_0x2bb6b2(0x40b)](_0x59e404[_0x2bb6b2(0x230)])?_0x59e404[_0x2bb6b2(0x230)]:[];return{..._0x4157b0,'sessions':_0x10093c,'groups':_0x179e30(_0x4157b0,_0x10093c)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x53d726(0x3d6)+_0x53d726(0x23b)](),_0x53d726(0x453)+'e'),'emitData':_0x401bc5=>broadcast(_0x53d726(0x385)+_0x53d726(0x203),_0x401bc5),'emitExit':_0x2aec8f=>broadcast(_0x53d726(0x385)+'-exit',_0x2aec8f)}),_0xbaa641('terminal'+_0x53d726(0x307),async(_0x12bfce,_0xe42598={})=>terminalManager[_0x53d726(0x2e6)](_0xe42598)),_0xbaa641(_0x53d726(0x385)+_0x53d726(0x41c),async(_0x46d1f1,_0x59d827={})=>terminalManager[_0x53d726(0x2a1)](_0x59d827)),_0xbaa641('terminal'+_0x53d726(0x236),async(_0x2d502c,_0x106d69={})=>terminalManager[_0x53d726(0x3d0)](_0x106d69)),_0xbaa641('terminal'+_0x53d726(0x405),async(_0x86b045,_0x2eb2fb={})=>terminalManager[_0x53d726(0x271)](_0x2eb2fb)),_0xbaa641(_0x53d726(0x318)+'list',async()=>{const _0x23fb65=_0x53d726,_0xc12e47=gatewayController?.[_0x23fb65(0x17c)+'nfo']?.()||{};return _0xc12e47[_0x23fb65(0x402)]||[];}),_0xbaa641(_0x53d726(0x318)+'get-conf'+'ig',async(_0xa6d2ce,_0x881802={})=>{const _0x454f8d=_0x53d726,_0x4aaeee=String(_0x881802[_0x454f8d(0x497)]||_0x881802['id']||''),_0x260f00=await readMutableConfig(),_0x355cc2=_0x260f00[_0x454f8d(0x402)]?.[_0x454f8d(0x29c)]||{};return _0x4aaeee?_0x355cc2[_0x4aaeee]||null:_0x355cc2;}),_0xbaa641(_0x53d726(0x318)+'update-c'+_0x53d726(0x41e),async(_0x3a67fa,_0x75ac38={})=>{const _0x2b8d50=_0x53d726,_0x396273=String(_0x75ac38['pluginId']||_0x75ac38['id']||'');if(!_0x396273)throw new Error('pluginId'+_0x2b8d50(0x3f2)+_0x2b8d50(0x126));const _0x3dba56=await readMutableConfig(),_0x43f0e7=_0x3dba56[_0x2b8d50(0x402)]&&typeof _0x3dba56[_0x2b8d50(0x402)]===_0x2b8d50(0x314)?_0x3dba56[_0x2b8d50(0x402)]:{},_0x3d9919=_0x43f0e7[_0x2b8d50(0x29c)]&&typeof _0x43f0e7['entries']==='object'?_0x43f0e7[_0x2b8d50(0x29c)]:{};return _0x3d9919[_0x396273]={..._0x3d9919[_0x396273]||{},..._0x75ac38[_0x2b8d50(0x366)]||_0x75ac38['patch']||{}},_0x43f0e7['entries']=_0x3d9919,_0x3dba56[_0x2b8d50(0x402)]=_0x43f0e7,_0x33007e(_0x3dba56,'plugin\x20c'+_0x2b8d50(0x33c)+_0x2b8d50(0x4f4));}),_0xbaa641(_0x53d726(0x318)+_0x53d726(0x1e5),async(_0x9cecc1,_0x1e2a14={})=>{const _0x3cd8ec=_0x53d726,_0x36301d=String(_0x1e2a14[_0x3cd8ec(0x497)]||_0x1e2a14['id']||'');if(!_0x36301d)throw new Error('pluginId'+'\x20is\x20requ'+_0x3cd8ec(0x126));const _0x2a3837=await readMutableConfig(),_0x21e727=_0x2a3837[_0x3cd8ec(0x402)]&&typeof _0x2a3837[_0x3cd8ec(0x402)]===_0x3cd8ec(0x314)?_0x2a3837[_0x3cd8ec(0x402)]:{},_0x3637d7=_0x21e727[_0x3cd8ec(0x29c)]&&typeof _0x21e727['entries']===_0x3cd8ec(0x314)?_0x21e727[_0x3cd8ec(0x29c)]:{};return _0x3637d7[_0x36301d]={..._0x3637d7[_0x36301d]||{},'enabled':!![]},_0x21e727[_0x3cd8ec(0x29c)]=_0x3637d7,_0x2a3837[_0x3cd8ec(0x402)]=_0x21e727,_0x33007e(_0x2a3837,_0x3cd8ec(0x368)+_0x3cd8ec(0x1e9));}),_0xbaa641(_0x53d726(0x318)+_0x53d726(0x135),async(_0x4b06f6,_0xd7aa48={})=>{const _0x4e2d36=_0x53d726,_0x1003e4=String(_0xd7aa48['pluginId']||_0xd7aa48['id']||'');if(!_0x1003e4)throw new Error(_0x4e2d36(0x497)+_0x4e2d36(0x3f2)+'ired');const _0x58b286=await readMutableConfig(),_0x4ae841=_0x58b286['plugins']&&typeof _0x58b286['plugins']===_0x4e2d36(0x314)?_0x58b286[_0x4e2d36(0x402)]:{},_0x2091b1=_0x4ae841['entries']&&typeof _0x4ae841[_0x4e2d36(0x29c)]===_0x4e2d36(0x314)?_0x4ae841[_0x4e2d36(0x29c)]:{};return _0x2091b1[_0x1003e4]={..._0x2091b1[_0x1003e4]||{},'enabled':![]},_0x4ae841[_0x4e2d36(0x29c)]=_0x2091b1,_0x58b286['plugins']=_0x4ae841,_0x33007e(_0x58b286,_0x4e2d36(0x20d)+_0x4e2d36(0x489));}),_0xbaa641(_0x53d726(0x318)+_0x53d726(0x467),async(_0x5f5c60,_0x471805={})=>({'plugins':await((async()=>{const _0x274aaf=_0x53d726,_0x1165b3=gatewayController?.[_0x274aaf(0x17c)+_0x274aaf(0x1f8)]?.()||{};if(!_0x471805?.['pluginId']&&!_0x471805?.['id'])return _0x1165b3[_0x274aaf(0x402)]||[];const _0x257c08=String(_0x471805['pluginId']||_0x471805['id']||'');return(_0x1165b3['plugins']||[])[_0x274aaf(0x1af)](_0x2b8397=>_0x2b8397['pluginId']===_0x257c08);})())})),_0xbaa641(_0x53d726(0x399)+_0x53d726(0x46b),async(_0x1c0a36,_0x5a34cf)=>({'ok':!![],'payload':_0x5a34cf})),_0xbaa641(_0x53d726(0x315)+_0x53d726(0x4f3)+'e',async(_0x1f6652,_0x48d686)=>{const _0x4bc0d0=_0x53d726;return broadcast(_0x4bc0d0(0x180)+'mand',_0x48d686),{'ok':!![]};}),_0xbaa641(_0x53d726(0x2b5)+'uest-age'+_0x53d726(0x411),async()=>{const _0x163fa7=_0x53d726;return broadcast(_0x163fa7(0x24e)+_0x163fa7(0x411)+_0x163fa7(0x2fa),{}),{'ok':!![]};}),_0xbaa641(_0x53d726(0x1f9)+_0x53d726(0x444)+'nt-state',async(_0x26d7c0,_0x27084b={})=>{const _0x592a28=_0x53d726;return broadcast(_0x592a28(0x24e)+'nt-state'+'-refresh'+'-request',_0x27084b),{'ok':!![]};}),_0xbaa641(_0x53d726(0x21d)+_0x53d726(0x163),_0x549a9c=>{const _0x4b8842=_0x53d726;return BrowserWindow[_0x4b8842(0x2b7)+'ontents'](_0x549a9c[_0x4b8842(0x176)])?.[_0x4b8842(0x2fc)](),{'ok':!![]};}),_0xbaa641('window:t'+_0x53d726(0x424)+'ximize',_0x2360f2=>{const _0x2358bd=_0x53d726,_0xf0711=BrowserWindow['fromWebC'+'ontents'](_0x2360f2[_0x2358bd(0x176)]);if(!_0xf0711)return{'isMaximized':![]};if(_0xf0711[_0x2358bd(0x470)+_0x2358bd(0x4ac)]())_0xf0711[_0x2358bd(0x1b9)+'ze']();else _0xf0711[_0x2358bd(0x26b)]();return{'isMaximized':_0xf0711[_0x2358bd(0x470)+_0x2358bd(0x4ac)]()};}),_0xbaa641(_0x53d726(0x113)+_0x53d726(0x3b7),_0x299a6a=>{const _0x3399e1=_0x53d726;return BrowserWindow[_0x3399e1(0x2b7)+_0x3399e1(0x367)](_0x299a6a[_0x3399e1(0x176)])?.[_0x3399e1(0x271)](),{'ok':!![]};}),_0xbaa641(_0x53d726(0x44d)+_0x53d726(0x2bf)+'ools',()=>openDevToolsForActiveContext()),_0xbaa641('openclaw'+_0x53d726(0x441)+_0x53d726(0x12b),()=>_0x5c9636()[_0x53d726(0x17c)+'nfo']()),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x1b2)+_0x53d726(0x442),async()=>(await ensureGatewayControllerStarted())['getStatu'+'s']()),ipcMain['on'](_0x53d726(0x4aa)+':gateway'+_0x53d726(0x3d9)+_0x53d726(0x280),_0x1775c2=>{const _0x5db278=_0x53d726;_0x1775c2[_0x5db278(0x12d)+_0x5db278(0x45b)]=gatewayController?.[_0x5db278(0x4ad)+'s']?.()??null;}),_0xbaa641(_0x53d726(0x4aa)+':gateway'+_0x53d726(0x2f3),()=>_0x5c9636()['restart']('renderer'+_0x53d726(0x40d))),_0xbaa641('openclaw'+_0x53d726(0x1a0)+_0x53d726(0x25b)+_0x53d726(0x139),async()=>({'loadingLifeCycle':_0x53d726(0x23a),'message':'','updatedAt':new Date()['toISOStr'+'ing']()})),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x1b2)+_0x53d726(0x11a),(_0x55e8db,_0x5d0a53={})=>_0x5c9636()['getRecen'+'tLogs'](_0x5d0a53?.[_0x53d726(0x4c4)]??0xc8)),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x133)+_0x53d726(0x2e0)+_0x53d726(0x30f)+'n',(_0x23c5b8,_0x4a1025)=>_0x5c9636()[_0x53d726(0x222)+'kUserQue'+_0x53d726(0x1bc)](_0x4a1025)),_0xbaa641(_0x53d726(0x4aa)+_0x53d726(0x331)+_0x53d726(0x2dd),async()=>{const _0x45a8d9=_0x53d726,_0x5ab1f4=join(resolveRuntimeRoot(shellConfig[_0x45a8d9(0x4dd)+_0x45a8d9(0x352)]),'bin',_0x45a8d9(0x40a)+'w');if(!existsSync(_0x5ab1f4))throw new Error(_0x45a8d9(0x4aa)+_0x45a8d9(0x162)+'pper\x20not'+_0x45a8d9(0x1cf)+_0x5ab1f4+('.\x20Run\x20wu'+_0x45a8d9(0x1b3)+_0x45a8d9(0x287)+'e\x20first.'));const _0x3ba5e8=join(app[_0x45a8d9(0x345)](_0x45a8d9(0x15c)),_0x45a8d9(0x3a7)+_0x45a8d9(0x1e2)+'command');await writeFile(_0x3ba5e8,_0x45a8d9(0x3ac)+_0x45a8d9(0x449)+_0x5ab1f4[_0x45a8d9(0x1f4)](/\\/g,'\x5c\x5c')[_0x45a8d9(0x1f4)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x2a7c5b=spawn(_0x45a8d9(0x336),['-a','Terminal',_0x3ba5e8],{'detached':!![],'stdio':'ignore'});return _0x2a7c5b[_0x45a8d9(0x2ce)](),{'ok':!![],'cliPath':_0x5ab1f4};}),_0xbaa641(_0x53d726(0x277)+_0x53d726(0x3fd),()=>_0x5c9636()['agents'][_0x53d726(0x340)]()),_0xbaa641(_0x53d726(0x215)+'tatus',(_0x530b5f,_0x5164c2)=>_0x5c9636()[_0x53d726(0x2cb)][_0x53d726(0x467)](_0x5164c2)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x307),(_0x110718,_0x313b7b)=>_0x5c9636()['sessions']['create'](_0x313b7b)),_0xbaa641('sessions'+':snapsho'+'t',(_0x11397f,_0x71009b)=>ensureSessionDataService()[_0x53d726(0x3a0)+_0x53d726(0x1b6)](_0x71009b)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x494),(_0x1da735,_0x4918b5)=>ensureSessionDataService()[_0x53d726(0x4d1)+'ry'](_0x4918b5)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x3ba)+'n',(_0x23b1f5,_0x40785f)=>ensureSessionDataService()['getRevis'+_0x53d726(0x4d4)](_0x40785f)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x14f)+'s-snapsh'+'ot',(_0x149b1f,_0x127451)=>ensureSessionDataService()[_0x53d726(0x2be)+'ges'](_0x127451)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x3fb)+'ts',(_0x1be75d,_0x394949)=>ensureSessionDataService()[_0x53d726(0x390)+_0x53d726(0x121)](_0x394949)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x40f)+'es',(_0x40322b,_0x3b5b9c)=>ensureSessionDataService()['getProce'+_0x53d726(0x27f)](_0x3b5b9c)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x441)+_0x53d726(0x148)+_0x53d726(0x475),(_0x481e5c,_0x22b2ac={})=>ensureSessionDataService()[_0x53d726(0x469)+_0x53d726(0x4ba)](String(_0x22b2ac[_0x53d726(0x4e4)+'ey']||_0x22b2ac[_0x53d726(0x39c)]||''))),_0xbaa641(_0x53d726(0x230)+':events',(_0x1e8aac,_0x390cf0={})=>ensureSessionDataService()['listSess'+'ionEvent'+'s'](_0x390cf0)),_0xbaa641('sessions'+_0x53d726(0x2f7),async(_0x372d86,_0x5412d7={})=>{const _0x10d5a2=_0x53d726,_0x863658=String(_0x5412d7[_0x10d5a2(0x4e4)+'ey']||_0x5412d7[_0x10d5a2(0x39c)]||'')[_0x10d5a2(0x4c2)](),_0x2426ab=await ensureSessionSqliteStore()[_0x10d5a2(0x33f)+_0x10d5a2(0x218)](_0x863658),_0x22198c=await configController['readCurr'+_0x10d5a2(0x282)+_0x10d5a2(0x456)]();return{..._0x2426ab,'contextWindowTokens':_0x22198c[_0x10d5a2(0x347)+_0x10d5a2(0x155)+_0x10d5a2(0x482)],'contextWindowSource':_0x22198c[_0x10d5a2(0x347)+'indowSou'+_0x10d5a2(0x46f)]};}),_0xbaa641('sessions'+_0x53d726(0x2f4),(_0x1c82b4,_0x5356d2)=>_0x5c9636()[_0x53d726(0x230)][_0x53d726(0x32c)](_0x5356d2)),_0xbaa641(_0x53d726(0x2aa)+_0x53d726(0x4cb),(_0x54861b,_0x1c1e9e)=>_0x5c9636()[_0x53d726(0x122)][_0x53d726(0x1a2)](_0x1c1e9e)),_0xbaa641(_0x53d726(0x3e8)+'rt',(_0x14d14b,_0x2d0e5d)=>_0x5c9636()[_0x53d726(0x122)]['abort'](_0x2d0e5d)),_0xbaa641(_0x53d726(0x11e)+'te',async(_0x3cf342,_0x98945a={})=>{const _0x270dcb=_0x53d726,_0x3083f1=typeof _0x98945a[_0x270dcb(0x3b6)]==='string'?_0x98945a['level']:_0x270dcb(0x3be),_0x2d444b=typeof _0x98945a[_0x270dcb(0x48f)]===_0x270dcb(0x25d)?_0x98945a['message']:_0x270dcb(0x3e9)+_0x270dcb(0x206),_0x16eb2c=typeof _0x98945a[_0x270dcb(0x13f)]===_0x270dcb(0x25d)&&_0x98945a[_0x270dcb(0x13f)][_0x270dcb(0x4c2)]()?_0x270dcb(0x3e9)+':'+_0x98945a[_0x270dcb(0x13f)][_0x270dcb(0x4c2)]():_0x270dcb(0x3e9),_0x1712ac=_0x98945a[_0x270dcb(0x380)]&&typeof _0x98945a[_0x270dcb(0x380)]===_0x270dcb(0x314)?{...summarizePayload(_0x98945a[_0x270dcb(0x380)]),'context':_0x16eb2c}:{'context':_0x16eb2c},_0x8cc36e=rendererLogger;if(_0x8cc36e?.[_0x3083f1])await _0x8cc36e[_0x3083f1](_0x2d444b,_0x1712ac);else await _0x8cc36e?.[_0x270dcb(0x3be)](_0x2d444b,_0x1712ac);if(_0x98945a[_0x270dcb(0x3fa)+'ic']===!![]||_0x16eb2c===_0x270dcb(0x3e9)+':diagnos'+_0x270dcb(0x327)){const _0x21940d=_0x98945a[_0x270dcb(0x4a3)]&&typeof _0x98945a[_0x270dcb(0x4a3)]===_0x270dcb(0x314)?_0x98945a[_0x270dcb(0x4a3)]:_0x98945a['meta']?.[_0x270dcb(0x4a3)]&&typeof _0x98945a['meta'][_0x270dcb(0x4a3)]==='object'?_0x98945a[_0x270dcb(0x380)][_0x270dcb(0x4a3)]:{'level':_0x3083f1,'category':_0x270dcb(0x3e9),'event':_0x16eb2c,'message':_0x2d444b,'meta':_0x98945a[_0x270dcb(0x380)]};updateRendererSessionMetrics(_0x21940d),await diagnosticsWriter?.[_0x270dcb(0x384)+'nt'](_0x21940d,{'captureIncident':String(_0x21940d[_0x270dcb(0x3b6)]||_0x3083f1)[_0x270dcb(0x491)+_0x270dcb(0x129)]()==='error'||_0x98945a['captureI'+_0x270dcb(0x304)]===!![]});}return{'ok':!![]};}),_0xbaa641(_0x53d726(0x3cb)+_0x53d726(0x2ea),async(_0x5be903,_0xe79e52={})=>{const _0x4101ef=_0x53d726,_0x4151f2=typeof _0xe79e52[_0x4101ef(0x21c)+'r']===_0x4101ef(0x25d)&&_0xe79e52[_0x4101ef(0x21c)+'r'][_0x4101ef(0x4c2)]()?_0xe79e52['targetDi'+'r']:undefined,_0x5ba796=await exportLogsArchive({'logsDir':configController[_0x4101ef(0x455)][_0x4101ef(0x1f5)],'targetDir':_0x4151f2,'appVersion':app[_0x4101ef(0x445)+'on']()});return mainLogger?.['info']('logs\x20exp'+_0x4101ef(0x1e8),{'path':toHomePath(_0x5ba796[_0x4101ef(0x200)])}),_0x5ba796;}),_0xbaa641(_0x53d726(0x1f0)+_0x53d726(0x498)+_0x53d726(0x364),async()=>{const _0x104ffd=_0x53d726;return await shell['openPath'](configController[_0x104ffd(0x455)][_0x104ffd(0x1f5)]),mainLogger?.[_0x104ffd(0x3be)](_0x104ffd(0x2c8)+'ectory\x20o'+_0x104ffd(0x43a),{'logsDir':toHomePath(configController['paths'][_0x104ffd(0x1f5)])}),{'ok':!![],'path':configController[_0x104ffd(0x455)][_0x104ffd(0x1f5)]};}),_0xbaa641(_0x53d726(0x30a)+'t',async()=>{const _0x36093b=_0x53d726,_0x1c0bd4=await readdir(configController[_0x36093b(0x455)][_0x36093b(0x1f5)],{'recursive':!![]})[_0x36093b(0x44a)](()=>[]);return _0x1c0bd4;}),_0xbaa641('logs:rea'+'d',async(_0x13204b,_0x2c0770={})=>{const _0x4c7afb=_0x53d726,_0x8e994b=String(_0x2c0770[_0x4c7afb(0x200)]||'');if(!_0x8e994b)throw new Error(_0x4c7afb(0x21a)+_0x4c7afb(0x302));return readFile(_0x8e994b,_0x4c7afb(0x3bd));}),_0xbaa641(_0x53d726(0x25a)+'ad',async(_0x1de427,_0x5b0b19)=>{const _0x13dc93=_0x53d726,_0x40d759=Date[_0x13dc93(0x4e1)]();try{const _0x32c2d4=await readFile(_0x5b0b19,'utf8');return filesLogger?.[_0x13dc93(0x3be)](_0x13dc93(0x164)+'d\x20comple'+_0x13dc93(0x3f7),{'path':toHomePath(_0x5b0b19),'bytes':Buffer[_0x13dc93(0x16b)+'th'](_0x32c2d4),'durationMs':Date[_0x13dc93(0x4e1)]()-_0x40d759}),_0x32c2d4;}catch(_0xde8ba){filesLogger?.['error'](_0x13dc93(0x164)+_0x13dc93(0x3b8),{'path':toHomePath(_0x5b0b19),'durationMs':Date[_0x13dc93(0x4e1)]()-_0x40d759,'error':summarizeError(_0xde8ba)});throw _0xde8ba;}}),_0xbaa641(_0x53d726(0x25a)+_0x53d726(0x4b3)+'y',async(_0x202c55,_0x587647)=>{const _0x3e9663=_0x53d726,_0x36b4b1=Date[_0x3e9663(0x4e1)]();try{const _0x5922f8=await readFile(_0x587647);return filesLogger?.[_0x3e9663(0x3be)](_0x3e9663(0x409)+_0x3e9663(0x430)+'\x20complet'+'ed',{'path':toHomePath(_0x587647),'bytes':_0x5922f8[_0x3e9663(0x16b)+'th'],'durationMs':Date[_0x3e9663(0x4e1)]()-_0x36b4b1}),new Uint8Array(_0x5922f8);}catch(_0x4865a8){filesLogger?.[_0x3e9663(0x450)](_0x3e9663(0x409)+_0x3e9663(0x430)+'\x20failed',{'path':toHomePath(_0x587647),'durationMs':Date['now']()-_0x36b4b1,'error':summarizeError(_0x4865a8)});throw _0x4865a8;}}),_0xbaa641(_0x53d726(0x3df)+_0x53d726(0x3d2),async(_0x3252cf,_0x5f0bfe={})=>{const _0x3613e2=_0x53d726,_0x30625c=Date['now']();return await writeFile(_0x5f0bfe[_0x3613e2(0x200)],_0x5f0bfe[_0x3613e2(0x33e)]??'','utf8'),filesLogger?.[_0x3613e2(0x3be)](_0x3613e2(0x1cc)+_0x3613e2(0x2fd)+_0x3613e2(0x4b9),{'path':toHomePath(_0x5f0bfe[_0x3613e2(0x200)]),'bytes':Buffer[_0x3613e2(0x16b)+'th'](String(_0x5f0bfe[_0x3613e2(0x33e)]??'')),'durationMs':Date['now']()-_0x30625c}),{'ok':!![]};}),_0xbaa641(_0x53d726(0x3df)+_0x53d726(0x248)+'ry',async(_0x4328ee,_0x38c8fd={})=>{const _0x2e8e1b=_0x53d726,_0x15d627=Date[_0x2e8e1b(0x4e1)]();await writeFile(_0x38c8fd[_0x2e8e1b(0x200)],Buffer['from'](_0x38c8fd[_0x2e8e1b(0x33e)]??[]));const _0x554317=await stat(_0x38c8fd[_0x2e8e1b(0x200)])[_0x2e8e1b(0x44a)](()=>null);return filesLogger?.[_0x2e8e1b(0x3be)](_0x2e8e1b(0x409)+'ile\x20writ'+_0x2e8e1b(0x2de)+_0x2e8e1b(0x3f7),{'path':toHomePath(_0x38c8fd[_0x2e8e1b(0x200)]),'bytes':_0x554317?.['size']??0x0,'durationMs':Date['now']()-_0x15d627}),{'ok':!![]};}),_0xbaa641(_0x53d726(0x460)+_0x53d726(0x1d5)+'e',async(_0x2efcd3,_0x4dca81={})=>{const _0x3dc812=_0x53d726,_0x179465=await dialog[_0x3dc812(0x4b6)+_0x3dc812(0x4db)](BrowserWindow[_0x3dc812(0x2b7)+_0x3dc812(0x367)](_0x2efcd3[_0x3dc812(0x176)])??mainWindow,{'title':typeof _0x4dca81[_0x3dc812(0x1ae)]===_0x3dc812(0x25d)?_0x4dca81[_0x3dc812(0x1ae)]:undefined,'properties':[_0x3dc812(0x4f6),..._0x4dca81[_0x3dc812(0x111)+_0x3dc812(0x209)]?[_0x3dc812(0x111)+_0x3dc812(0x209)]:[]],'filters':Array['isArray'](_0x4dca81[_0x3dc812(0x446)])?_0x4dca81[_0x3dc812(0x446)]:undefined});return filesLogger?.[_0x3dc812(0x3be)](_0x3dc812(0x398)+_0x3dc812(0x3f8)+_0x3dc812(0x4a8),{'canceled':_0x179465[_0x3dc812(0x34d)],'count':_0x179465[_0x3dc812(0x1aa)+'s'][_0x3dc812(0x451)],'paths':_0x179465['filePath'+'s'][_0x3dc812(0x191)](toHomePath)}),{'canceled':_0x179465[_0x3dc812(0x34d)],'paths':_0x179465[_0x3dc812(0x1aa)+'s']};}),_0xbaa641('files:li'+_0x53d726(0x480)+'tory',async(_0x2c0723,_0x56242c={})=>{const _0x4b7cc0=_0x53d726,_0x486cde=resolve(String(_0x56242c[_0x4b7cc0(0x200)]||'')),_0xd56b5b=_0x56242c[_0x4b7cc0(0x20c)+'e']!==![],_0x212e80=Array[_0x4b7cc0(0x40b)](_0x56242c[_0x4b7cc0(0x43e)+'ns'])?_0x56242c[_0x4b7cc0(0x43e)+'ns']['map'](_0x2b8c40=>String(_0x2b8c40)[_0x4b7cc0(0x491)+_0x4b7cc0(0x129)]()[_0x4b7cc0(0x1f4)](/^\./,''))[_0x4b7cc0(0x1af)](Boolean):null,_0x500cd9=Number['isIntege'+'r'](_0x56242c[_0x4b7cc0(0x2e9)+'es'])&&_0x56242c[_0x4b7cc0(0x2e9)+'es']>0x0?_0x56242c[_0x4b7cc0(0x2e9)+'es']:0xc350,_0x57ecd0=[];let _0x1f4960=![];async function _0x4f06fb(_0x1b2b44){const _0x7e2cc3=_0x4b7cc0;if(_0x1f4960)return;let _0x1e2dfa;try{_0x1e2dfa=await readdir(_0x1b2b44,{'withFileTypes':!![]});}catch{return;}for(const _0x1cfc51 of _0x1e2dfa){if(_0x1f4960)return;if(_0x1cfc51['name'][_0x7e2cc3(0x3b3)+'th']('.'))continue;const _0x424d23=join(_0x1b2b44,_0x1cfc51[_0x7e2cc3(0x42e)]);if(_0x1cfc51[_0x7e2cc3(0x49c)+_0x7e2cc3(0x364)]()){if(_0xd56b5b)await _0x4f06fb(_0x424d23);continue;}if(!_0x1cfc51[_0x7e2cc3(0x2ad)]())continue;if(_0x212e80){const _0x252a24=_0x1cfc51[_0x7e2cc3(0x42e)][_0x7e2cc3(0x3c8)+_0x7e2cc3(0x15f)]('.'),_0xd20c64=_0x252a24>=0x0?_0x1cfc51[_0x7e2cc3(0x42e)][_0x7e2cc3(0x493)](_0x252a24+0x1)['toLowerC'+_0x7e2cc3(0x129)]():'';if(!_0x212e80[_0x7e2cc3(0x4e6)](_0xd20c64))continue;}if(_0x57ecd0['length']>=_0x500cd9){_0x1f4960=!![];return;}_0x57ecd0['push']({'name':_0x1cfc51[_0x7e2cc3(0x42e)],'path':_0x424d23});}}return await _0x4f06fb(_0x486cde),{'path':_0x486cde,'entries':_0x57ecd0,'truncated':_0x1f4960};}),_0xbaa641(_0x53d726(0x460)+_0x53d726(0x2ee)+_0x53d726(0x3c1),async(_0x3d651e,_0x3b773c={})=>{const _0x450d68=_0x53d726,_0x21e63c=await dialog[_0x450d68(0x4b6)+'Dialog'](BrowserWindow['fromWebC'+'ontents'](_0x3d651e[_0x450d68(0x176)])??mainWindow,{'title':typeof _0x3b773c[_0x450d68(0x1ae)]===_0x450d68(0x25d)?_0x3b773c[_0x450d68(0x1ae)]:undefined,'properties':[_0x450d68(0x14b)+'ctory']});return filesLogger?.[_0x450d68(0x3be)](_0x450d68(0x1a5)+_0x450d68(0x32d)+'\x20complet'+'ed',{'canceled':_0x21e63c[_0x450d68(0x34d)],'count':_0x21e63c[_0x450d68(0x1aa)+'s'][_0x450d68(0x451)],'paths':_0x21e63c[_0x450d68(0x1aa)+'s']['map'](toHomePath)}),{'canceled':_0x21e63c[_0x450d68(0x34d)],'paths':_0x21e63c[_0x450d68(0x1aa)+'s']};}),_0xbaa641(_0x53d726(0x453)+_0x53d726(0x1c7)+_0x53d726(0x161),()=>_0x5c9636()[_0x53d726(0x453)+'e'][_0x53d726(0x448)+'yInfo']()),_0xbaa641(_0x53d726(0x453)+_0x53d726(0x3b5)+_0x53d726(0x32d),async()=>{const _0xb60cca=_0x53d726,_0x513907=await _0x5c9636()['workspac'+'e'][_0xb60cca(0x448)+_0xb60cca(0x313)]();return await shell[_0xb60cca(0x433)](_0x513907[_0xb60cca(0x200)]),filesLogger?.['info'](_0xb60cca(0x453)+_0xb60cca(0x1bf)+'ory\x20open'+'ed',{'path':toHomePath(_0x513907[_0xb60cca(0x200)])}),{'ok':!![],'path':_0x513907[_0xb60cca(0x200)]};}),_0xbaa641(_0x53d726(0x453)+'e:shared'+'-context',()=>_0x5c9636()['workspac'+'e'][_0x53d726(0x3ae)+_0x53d726(0x3c4)]()),_0xbaa641(_0x53d726(0x453)+'e:write-'+_0x53d726(0x472)+_0x53d726(0x23d),(_0x311e8d,_0x94ea8a)=>_0x5c9636()['workspac'+'e'][_0x53d726(0x3ee)+_0x53d726(0x1fc)+'xt'](_0x94ea8a)),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x341),(_0xbcf4e4,_0x6b8765)=>_0x5c9636()[_0x53d726(0x230)][_0x53d726(0x1fd)](_0x6b8765)),_0xbaa641('sessions'+_0x53d726(0x296),async(_0x1277bf,_0x3446c1={})=>{const _0x48bafd=_0x53d726,_0x4721d4=String(_0x3446c1[_0x48bafd(0x4e4)+'ey']||_0x3446c1[_0x48bafd(0x39c)]||'')['trim']();if(!_0x4721d4)throw new Error(_0x48bafd(0x4e4)+_0x48bafd(0x132)+_0x48bafd(0x431));const _0x1f1716=await ensureSessionSqliteStore()[_0x48bafd(0x2ba)+_0x48bafd(0x1a3)+_0x48bafd(0x3d1)](),_0x573c49=await _0x5c9636()['sessions'][_0x48bafd(0x25c)+'inned']([_0x4721d4,..._0x1f1716[_0x48bafd(0x1af)](_0x571f03=>_0x571f03!==_0x4721d4)]);return _0x573c49;}),_0xbaa641(_0x53d726(0x230)+_0x53d726(0x151),async(_0x57caf1,_0x46e3a7={})=>{const _0x51ca95=_0x53d726,_0x5f5be4=String(_0x46e3a7[_0x51ca95(0x4e4)+'ey']||_0x46e3a7[_0x51ca95(0x39c)]||'')[_0x51ca95(0x4c2)]();if(!_0x5f5be4)throw new Error(_0x51ca95(0x4e4)+'ey\x20is\x20re'+_0x51ca95(0x431));const _0x20c9bb=await ensureSessionSqliteStore()['getPinne'+_0x51ca95(0x1a3)+_0x51ca95(0x3d1)]();return await _0x5c9636()[_0x51ca95(0x230)][_0x51ca95(0x25c)+_0x51ca95(0x48b)](_0x20c9bb[_0x51ca95(0x1af)](_0x409afc=>_0x409afc!==_0x5f5be4));}),_0xbaa641(_0x53d726(0x230)+':reorder'+_0x53d726(0x36c),async(_0x2d054a,_0x5c52f3={})=>{const _0x4f1e85=_0x53d726,_0x3d8f50=Array[_0x4f1e85(0x40b)](_0x5c52f3['keys'])?_0x5c52f3[_0x4f1e85(0x35b)]:_0x5c52f3;return await _0x5c9636()[_0x4f1e85(0x230)]['reorderP'+_0x4f1e85(0x48b)](_0x3d8f50);}),_0xbaa641(_0x53d726(0x355)+_0x53d726(0x2ab),(_0x57499f,_0x5069a8)=>_0x5c9636()['skills'][_0x53d726(0x2da)](_0x5069a8)),_0xbaa641(_0x53d726(0x243)+'t',(_0xf47b6f,_0x48953d)=>_0x5c9636()[_0x53d726(0x483)][_0x53d726(0x340)](_0x48953d)),_0xbaa641(_0x53d726(0x4d5)+_0x53d726(0x1ff),(_0x3b8e4f,_0x5e253)=>_0x5c9636()[_0x53d726(0x483)]['create'](_0x5e253)),_0xbaa641('cron:upd'+_0x53d726(0x1ff),(_0xc71a0e,_0x52c80f)=>_0x5c9636()[_0x53d726(0x483)][_0x53d726(0x2f9)](_0x52c80f)),_0xbaa641(_0x53d726(0x40e)+_0x53d726(0x2b9),(_0x4d42c5,_0x371f69)=>_0x5c9636()['cron'][_0x53d726(0x26a)](_0x371f69)),_0xbaa641(_0x53d726(0x4b4)+_0x53d726(0x397),(_0x2123ab,_0x4ad487)=>_0x5c9636()['cron'][_0x53d726(0x1d7)](_0x4ad487)),_0xbaa641('cron:log'+'s',(_0x44a7dd,_0x42217f)=>_0x5c9636()[_0x53d726(0x483)][_0x53d726(0x165)](_0x42217f)),_0xbaa641('models:c'+'omplete',async(_0x1690a8,_0x9b6ec2={})=>{const _0x2003b1=_0x53d726,_0x2bcfea=configController[_0x2003b1(0x292)+'onfigPat'+'h'](),_0x50796c=JSON[_0x2003b1(0x4c3)](await readFile(_0x2bcfea,_0x2003b1(0x3bd))),_0x5c9a88=_0x50796c?.[_0x2003b1(0x1fe)]?.[_0x2003b1(0x496)+'s']&&typeof _0x50796c[_0x2003b1(0x1fe)][_0x2003b1(0x496)+'s']===_0x2003b1(0x314)?_0x50796c[_0x2003b1(0x1fe)][_0x2003b1(0x496)+'s']:{},_0xc2d93=typeof _0x50796c?.[_0x2003b1(0x16a)]?.['defaults']?.[_0x2003b1(0x2f8)]?.[_0x2003b1(0x2d1)]===_0x2003b1(0x25d)?_0x50796c[_0x2003b1(0x16a)][_0x2003b1(0x1a9)][_0x2003b1(0x2f8)][_0x2003b1(0x2d1)]:'',_0x59201c=String(_0x9b6ec2['model']||_0xc2d93||'');if(!_0x59201c['includes']('/'))throw new Error(_0x2003b1(0x36e)+_0x2003b1(0x47f)+'\x20configu'+_0x2003b1(0x19d)+'\x20a\x20provi'+'der/mode'+'l\x20first');const _0xc1c8ff=_0x59201c[_0x2003b1(0x43d)]('/'),_0x181f12=_0x59201c['slice'](0x0,_0xc1c8ff),_0x50617d=_0x59201c[_0x2003b1(0x493)](_0xc1c8ff+0x1),_0x2ca29d=_0x5c9a88[_0x181f12];if(!_0x2ca29d||typeof _0x2ca29d!==_0x2003b1(0x314))throw new Error(_0x2003b1(0x496)+'\x20not\x20con'+'figured:'+'\x20'+_0x181f12);const _0x76f550=String(_0x2ca29d['baseUrl']||_0x2003b1(0x20b)+'api.open'+'ai.com/v'+'1')[_0x2003b1(0x4c2)]()['replace'](/\/$/,''),_0x330761=await fetch(_0x76f550+(_0x2003b1(0x36f)+_0x2003b1(0x2b0)+'s'),{'method':_0x2003b1(0x328),'headers':{'content-type':_0x2003b1(0x2fe)+'ion/json','Authorization':_0x2003b1(0x18d)+(_0x2ca29d['apiKey']||''),..._0x2ca29d[_0x2003b1(0x2fb)]&&typeof _0x2ca29d[_0x2003b1(0x2fb)]===_0x2003b1(0x314)?_0x2ca29d[_0x2003b1(0x2fb)]:{}},'body':JSON[_0x2003b1(0x3a5)+'y']({'model':_0x50617d,'max_tokens':Number[_0x2003b1(0x123)+'r'](_0x9b6ec2[_0x2003b1(0x22b)+'s'])?_0x9b6ec2[_0x2003b1(0x22b)+'s']:0x400,'temperature':typeof _0x9b6ec2[_0x2003b1(0x130)+_0x2003b1(0x31a)]===_0x2003b1(0x154)?_0x9b6ec2[_0x2003b1(0x130)+_0x2003b1(0x31a)]:undefined,'messages':Array[_0x2003b1(0x40b)](_0x9b6ec2[_0x2003b1(0x28a)])?_0x9b6ec2[_0x2003b1(0x28a)]:[]}),'signal':AbortSignal[_0x2003b1(0x212)](Number['isIntege'+'r'](_0x9b6ec2[_0x2003b1(0x234)+'s'])?_0x9b6ec2['timeoutM'+'s']:0x1d4c0)});if(!_0x330761['ok']){const _0x32fe7b=await _0x330761[_0x2003b1(0x147)]();throw new Error('model\x20ht'+_0x2003b1(0x3ca)+_0x330761[_0x2003b1(0x467)]+':\x20'+_0x32fe7b[_0x2003b1(0x493)](0x0,0x190));}const _0x4cfadc=_0x330761[_0x2003b1(0x2fb)][_0x2003b1(0x4bf)](_0x2003b1(0x4d9)+'id'),_0x179361=await _0x330761['json'](),_0x18001e=_0x179361?.['choices']?.[0x0]?.[_0x2003b1(0x48f)]??{};if(_0x4cfadc){const _0xdd3de9=typeof _0x9b6ec2[_0x2003b1(0x1ae)]===_0x2003b1(0x25d)&&_0x9b6ec2[_0x2003b1(0x1ae)][_0x2003b1(0x4c2)]()?_0x9b6ec2[_0x2003b1(0x1ae)][_0x2003b1(0x4c2)]():Array[_0x2003b1(0x40b)](_0x9b6ec2[_0x2003b1(0x28a)])?String([..._0x9b6ec2['messages']]['reverse']()[_0x2003b1(0x33d)](_0x5d1697=>_0x5d1697?.[_0x2003b1(0x316)]===_0x2003b1(0x3bc))?.['content']||'')[_0x2003b1(0x4c2)]():'';_0xdd3de9&&Promise[_0x2003b1(0x37d)](requestIdHooks?.[_0x2003b1(0x2ac)+_0x2003b1(0x263)+_0x2003b1(0x416)]?.({'requestId':_0x4cfadc,'title':_0xdd3de9,'source':'provider'+'_respons'+'e','model':_0x179361?.[_0x2003b1(0x2f8)]||_0x50617d,'provider':_0x181f12,'timestamp':Date[_0x2003b1(0x4e1)]()}))['catch'](_0x91feb4=>{const _0x16e7dc=_0x2003b1;mainLogger?.[_0x16e7dc(0x374)]?.('models\x20c'+_0x16e7dc(0x3a3)+_0x16e7dc(0x4d9)+_0x16e7dc(0x140)+'\x20event\x20f'+_0x16e7dc(0x4a0),{'error':_0x91feb4?.['message']||String(_0x91feb4)});});}return{'content':extractModelMessageContent(_0x18001e[_0x2003b1(0x33e)]),'reasoning':typeof _0x18001e[_0x2003b1(0x394)+_0x2003b1(0x2a6)+'t']==='string'?_0x18001e['reasonin'+_0x2003b1(0x2a6)+'t']:'','model':_0x179361?.[_0x2003b1(0x2f8)]||_0x50617d};}),_0xbaa641(_0x53d726(0x2cd)+'ettings',()=>_0x5c9636()[_0x53d726(0x1fe)][_0x53d726(0x21e)]()),_0xbaa641(_0x53d726(0x2cd)+_0x53d726(0x2e5)+_0x53d726(0x4c1),(_0x515143,_0x122794)=>_0x5c9636()['models']['setSetti'+'ngs'](_0x122794)),_0xbaa641(_0x53d726(0x2cd)+_0x53d726(0x257)+_0x53d726(0x1f6)+'ywhere',(_0xa9f3d2,_0x4fa527)=>_0x5c9636()['models'][_0x53d726(0x16f)+_0x53d726(0x457)+_0x53d726(0x267)+'re'](_0x4fa527)),_0xbaa641('models:s'+'et-self-'+'operated',(_0x478cda,_0x48b0ea)=>_0x5c9636()[_0x53d726(0x1fe)][_0x53d726(0x273)+_0x53d726(0x17d)+'odels'](_0x48b0ea)),_0xbaa641(_0x53d726(0x2cd)+_0x53d726(0x264)+_0x53d726(0x324),()=>_0x5c9636()[_0x53d726(0x1fe)][_0x53d726(0x245)+_0x53d726(0x3e4)]()),_0xbaa641('models:c'+'ustom-mo'+_0x53d726(0x33b),()=>_0x5c9636()[_0x53d726(0x1fe)][_0x53d726(0x333)+_0x53d726(0x33b)]()),_0xbaa641('runtime:'+_0x53d726(0x492)+_0x53d726(0x3a2)+_0x53d726(0x127),async()=>{const _0x40a9fc=_0x53d726,_0x1bca44=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x40a9fc(0x15a)+_0x40a9fc(0x3c0)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x40a9fc(0x28c)+'ing'](),'manifest':_0x1bca44,'status':await getRuntimeResourceStatus()};}),_0xbaa641(_0x53d726(0x138)+_0x53d726(0x474)+_0x53d726(0x442),async()=>getRuntimeResourceStatus());}async function boot(){const _0x1d12b5=_0x869a0f;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x1d12b5(0x335)](shellConfig[_0x1d12b5(0x1ce)+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x1d12b5(0x455)],_0x1d12b5(0x36b)),ipcLogger=createShellLogger(configController['paths'],_0x1d12b5(0x2f1)),filesLogger=createShellLogger(configController['paths'],_0x1d12b5(0x28e)),rendererLogger=createShellLogger(configController[_0x1d12b5(0x455)],'renderer'),productRuntime=await loadProductRuntime();const _0x343dd8=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController['paths'][_0x1d12b5(0x1f5)],'appContext':{'productName':shellConfig[_0x1d12b5(0x1ce)+'ame'],'appId':shellConfig['appId'],'appVersion':app['getVersi'+'on'](),'platform':process[_0x1d12b5(0x254)],'arch':process[_0x1d12b5(0x464)],..._0x343dd8?{'apiEndpoint':_0x343dd8}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x1d12b5(0x455)][_0x1d12b5(0x1f5)],'diagnosticsWriter':diagnosticsWriter});const _0x1353e2=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x1353e2({'shellConfig':shellConfig,'appName':()=>app[_0x1d12b5(0x42e)],'appVersion':()=>app['getVersi'+'on'](),'broadcast':broadcast,'logger':mainLogger,'prepareQuitAndInstall':async()=>{const _0x4738ad=_0x1d12b5;await stopGatewayBeforeQuit(_0x4738ad(0x11b)+_0x4738ad(0x30c)+_0x4738ad(0x2f0));}}),updateController[_0x1d12b5(0x2c7)+'ze'](),registerProcessLogHooks(),registerProtocolHandlers(),installApplicationMenu(),mainLogger?.[_0x1d12b5(0x3be)](_0x1d12b5(0x224)+_0x1d12b5(0x320)+'ot\x20start'+'ed',{'appVersion':app[_0x1d12b5(0x445)+'on'](),'electronVersion':process[_0x1d12b5(0x1f1)][_0x1d12b5(0x224)],'nodeVersion':process[_0x1d12b5(0x1f1)][_0x1d12b5(0x134)],'chromeVersion':process[_0x1d12b5(0x1f1)]['chrome'],'platform':process[_0x1d12b5(0x254)],'arch':process['arch'],'mode':getMode(),'projectRoot':shellConfig[_0x1d12b5(0x4dd)+_0x1d12b5(0x352)],'configPath':shellConfig[_0x1d12b5(0x12a)+'th'],'dataDir':shellConfig[_0x1d12b5(0x23c)],'devToolsEnabled':isDevToolsEnabled(),'devToolsFlagPath':resolveDevToolsFlagPath(),'logsDir':configController[_0x1d12b5(0x455)][_0x1d12b5(0x1f5)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x1d12b5(0x445)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x1d12b5(0x233)+_0x1d12b5(0x31f)+_0x1d12b5(0x465)]==='function'&&await productRuntime['migrateP'+_0x1d12b5(0x31f)+_0x1d12b5(0x465)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x1d12b5(0x233)+_0x1d12b5(0x432)+'ta']===_0x1d12b5(0x308)?await productRuntime[_0x1d12b5(0x233)+_0x1d12b5(0x432)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x1d12b5(0x1cd)+_0x1d12b5(0x3a1)+'d'](),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService(),await installIpcHandlers(),ipcHandlersInstalled=!![],installAppRendererProtocolHandler(),installClawspaceProtocolHandler(),registerShellShortcuts(),await ensureMainWindow(),await gatewayController[_0x1d12b5(0x487)](),updateController[_0x1d12b5(0x42f)+_0x1d12b5(0x311)+_0x1d12b5(0x4f0)](),mainLogger?.[_0x1d12b5(0x3be)](_0x1d12b5(0x224)+'\x20main\x20bo'+_0x1d12b5(0x3fe)+'eted'),updateController[_0x1d12b5(0x2b6)+_0x1d12b5(0x49e)+'nstall']?.();}function registerProcessLogHooks(){const _0x1480fb=_0x869a0f;if(registerProcessLogHooks[_0x1480fb(0x21b)+'ed'])return;registerProcessLogHooks['register'+'ed']=!![],process['on']('uncaught'+'Exceptio'+'n',_0x40056a=>{const _0x33ade7=_0x1480fb;mainLogger?.[_0x33ade7(0x450)](_0x33ade7(0x2a5)+_0x33ade7(0x351)+'on',summarizeError(_0x40056a));}),process['on'](_0x1480fb(0x190)+_0x1480fb(0x4af)+'on',_0x4f6df4=>{const _0x59865e=_0x1480fb;mainLogger?.[_0x59865e(0x450)](_0x59865e(0x190)+_0x59865e(0x3ce)+_0x59865e(0x4d4),summarizeError(_0x4f6df4));}),app['on'](_0x1480fb(0x362)+_0x1480fb(0x193)+'one',(_0xaf3782,_0x5d766b,_0x246f8b)=>{const _0x415de6=_0x1480fb;mainLogger?.[_0x415de6(0x450)]('renderer'+_0x415de6(0x146)+_0x415de6(0x2ae),{'url':_0x5d766b['getURL'](),'details':_0x246f8b});}),app['on'](_0x1480fb(0x47d)+_0x1480fb(0x25e)+'ne',(_0x1f2104,_0x2b4ee9)=>{const _0x461def=_0x1480fb;mainLogger?.[_0x461def(0x450)](_0x461def(0x37b)+'ocess\x20go'+'ne',{'details':_0x2b4ee9});});}async function stopGatewayBeforeQuit(_0x2510a4){const _0x574887=_0x869a0f;if(!gatewayController)return;const _0x3a787e=gatewayController,_0x1efcaf=Date[_0x574887(0x4e1)]();mainLogger?.[_0x574887(0x3be)](_0x2510a4+(':\x20stoppi'+_0x574887(0x290)+'ay'),{'event':_0x2510a4==='before\x20i'+_0x574887(0x30c)+_0x574887(0x2f0)?'update_g'+_0x574887(0x281)+_0x574887(0x41d)+'t':undefined}),await _0x3a787e[_0x574887(0x2ed)](),gatewayController===_0x3a787e&&(gatewayController=null),mainLogger?.[_0x574887(0x3be)](_0x2510a4+(_0x574887(0x2e8)+_0x574887(0x377)+'d'),{'event':_0x2510a4===_0x574887(0x11b)+_0x574887(0x30c)+_0x574887(0x2f0)?_0x574887(0x471)+_0x574887(0x281)+'top_done':undefined,'elapsedMs':Date[_0x574887(0x4e1)]()-_0x1efcaf});}app['on'](_0x869a0f(0x131)+_0x869a0f(0x42a)+'d',()=>{const _0x3dbc4d=_0x869a0f;if(process[_0x3dbc4d(0x254)]!==_0x3dbc4d(0x434))app[_0x3dbc4d(0x242)]();}),app['on'](_0x869a0f(0x214),(_0x151799,_0x23039e)=>{const _0x278410=_0x869a0f;_0x151799[_0x278410(0x2d8)+_0x278410(0x1da)](),mainLogger?.['warn'](_0x278410(0x268)+_0x278410(0x2e4)+'l\x20event',{'url':summarizeProtocolUrl(_0x23039e),'hasShellConfig':Boolean(shellConfig)}),dispatchProtocolUrl(_0x23039e);});const gotSingleInstanceLock=app['requestS'+_0x869a0f(0x38a)+'tanceLoc'+'k']();!gotSingleInstanceLock?app[_0x869a0f(0x242)]():app['on'](_0x869a0f(0x249)+_0x869a0f(0x4a1),(_0xc9d69b,_0x57f360)=>{const _0x382d86=_0x869a0f,_0x4178be=extractProtocolUrlFromArgs(_0x57f360);mainLogger?.[_0x382d86(0x374)](_0x382d86(0x249)+_0x382d86(0x447)+'event',{'argc':Array[_0x382d86(0x40b)](_0x57f360)?_0x57f360[_0x382d86(0x451)]:0x0,'hasShellConfig':Boolean(shellConfig),'hasProtocolUrl':Boolean(_0x4178be),'protocolUrl':_0x4178be?summarizeProtocolUrl(_0x4178be):undefined});if(!resolveProtocolScheme()){pendingProtocolArgs=_0x57f360;return;}if(_0x4178be){dispatchProtocolUrl(_0x4178be);return;}const _0x154119=getUsableMainWindow();if(_0x154119){if(_0x154119[_0x382d86(0x2a8)+_0x382d86(0x4ac)]())_0x154119[_0x382d86(0x2c6)]();_0x154119[_0x382d86(0x337)](),_0x154119[_0x382d86(0x159)]();}});app['on'](_0x869a0f(0x323),async()=>{const _0x5ce33b=_0x869a0f;if(isQuitting){app[_0x5ce33b(0x242)]();return;}updateController?.[_0x5ce33b(0x197)+'ackgroun'+'dCheck'](_0x5ce33b(0x3a8)+_0x5ce33b(0x3aa)),BrowserWindow[_0x5ce33b(0x4d8)+_0x5ce33b(0x428)]()[_0x5ce33b(0x451)]===0x0&&shellConfig&&await ensureMainWindow();}),app['on'](_0x869a0f(0x2dc)+_0x869a0f(0x187),_0x43c340=>{const _0xad8894=_0x869a0f;isQuitting=!![],updateController?.['markQuit'+_0xad8894(0x30d)](),terminalManager?.[_0xad8894(0x48a)](),terminalManager=null,productRuntimeHooks?.[_0xad8894(0x48a)]?.();for(const _0x53c15b of Object[_0xad8894(0x35b)](productRuntimeHooks))delete productRuntimeHooks[_0x53c15b];requestIdHooks?.[_0xad8894(0x48a)]?.();for(const _0x126345 of Object[_0xad8894(0x35b)](requestIdHooks))delete requestIdHooks[_0x126345];if(updateController?.['isInstal'+_0xad8894(0x22f)+'te']?.()){mainLogger?.['info']('before\x20q'+_0xad8894(0x45a)+_0xad8894(0x179)+_0xad8894(0x306)+_0xad8894(0x1a4)+'\x20allowin'+_0xad8894(0x422)+_0xad8894(0x361)+_0xad8894(0x231));return;}if(!gatewayController)return;_0x43c340[_0xad8894(0x2d8)+'efault'](),void stopGatewayBeforeQuit(_0xad8894(0x26f)+_0xad8894(0x187))[_0xad8894(0x1b1)](()=>{const _0x150943=_0xad8894;app[_0x150943(0x242)]();});}),app['on'](_0x869a0f(0x3b1)+'t',()=>{const _0x5df491=_0x869a0f;globalShortcut[_0x5df491(0x317)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x869a0f(0x239)+'y']()[_0x869a0f(0x484)](boot)['catch'](_0x318531=>{const _0x472f72=_0x869a0f;bootError=_0x318531 instanceof Error?_0x318531[_0x472f72(0x48f)]:String(_0x318531),mainLogger?.[_0x472f72(0x450)](_0x472f72(0x224)+_0x472f72(0x320)+'ot\x20faile'+'d',summarizeError(_0x318531)),console[_0x472f72(0x450)](_0x472f72(0x299)+_0x472f72(0x18e)+_0x472f72(0x309)+_0x472f72(0x1c8)+_0x472f72(0x342)+'in',_0x318531);});
|
|
1
|
+
const _0x209495=_0x1223;(function(_0x10035c,_0x1003f2){const _0x41f6df=_0x1223,_0x172210=_0x10035c();while(!![]){try{const _0xd621d4=-parseInt(_0x41f6df(0x2e4))/0x1+-parseInt(_0x41f6df(0x15c))/0x2+parseInt(_0x41f6df(0x3a4))/0x3+-parseInt(_0x41f6df(0x49a))/0x4+-parseInt(_0x41f6df(0x215))/0x5*(-parseInt(_0x41f6df(0x276))/0x6)+parseInt(_0x41f6df(0x338))/0x7*(-parseInt(_0x41f6df(0x390))/0x8)+parseInt(_0x41f6df(0x24c))/0x9;if(_0xd621d4===_0x1003f2)break;else _0x172210['push'](_0x172210['shift']());}catch(_0x52d2b5){_0x172210['push'](_0x172210['shift']());}}}(_0x1e97,0xf2289));import _0x1e84bc from'electron';import{fileURLToPath,pathToFileURL}from'node:url';import{dirname,join,resolve,sep}from'node:path';import{createReadStream,existsSync,statSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{Readable}from'node:stream';import{loadShellConfig}from'@wujie-shell/config';import{formatLogLine}from'@wujie-shell/logger';import{createConfigController}from'../config/controller.mjs';import{createGatewayController}from'../gateway/controller.mjs';import{deleteManagedSkill,importSkillZip,updateManagedSkillConfig}from'../skills/import.mjs';import{deleteMarketSkillRegistryEntry,importMarketSkillZip}from'../skills/market.mjs';import{createAgentSessionsMapStore}from'../sessions/agent-sessions-map-store.mjs';import{createSessionDataService}from'../sessions/session-data-service.mjs';import{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,getShellLoggerLevel,setShellLoggerLevel,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.mjs';import{setRuntimeLoggerLevel}from'../common/runtime-logger.mjs';import{createUserEventWriter}from'../common/user-events.mjs';import{createConnectorController}from'../connectors/controller.mjs';import{resolveRuntimeKdocsCliCommand}from'../connectors/kdocs-cli.mjs';import{createGeneratedFilesStore}from'../files/generated-files-store.mjs';import{registerFileHandlers}from'../files/handlers.mjs';import{registerProductLogHandlers}from'../log-reporting/handlers.mjs';import{resolveWujieApiEndpoint}from'../log-reporting/report-logs.mjs';import{extractModelMessageContent,registerModelHandlers}from'../models/handlers.mjs';import{createPreferencesStore}from'../preferences/store.mjs';import{registerRequestIdHandlers}from'../request-id/handlers.mjs';import{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';import{createProtocolUrlState}from'./protocol-url-state.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,'preload.'+_0x209495(0x2ab)),{app,BrowserWindow,Menu,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x1e84bc,DEVTOOLS_ACCELERATOR=_0x209495(0x400)+_0x209495(0x23e)+_0x209495(0x49f),APP_RENDERER_PROTOCOL_SCHEME='app',APP_RENDERER_PROTOCOL_HOST='-',APP_RENDERER_ENTRY_URL=APP_RENDERER_PROTOCOL_SCHEME+_0x209495(0x2c1)+APP_RENDERER_PROTOCOL_HOST+(_0x209495(0x1a7)+'tml'),CLAWSPACE_PROTOCOL_SCHEME=_0x209495(0x4f1)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x209495(0x444)+'on',IPC_SLOW_REQUEST_THRESHOLD_MS=0x1f4,SHELL_LOG_LEVELS=new Set([_0x209495(0x18e),_0x209495(0x1db),'info','debug']),LOCAL_FILE_MIME_TYPES=new Map([['.html',_0x209495(0x3ea)+'l;\x20chars'+_0x209495(0x1cc)],[_0x209495(0x457),_0x209495(0x3ea)+'l;\x20chars'+_0x209495(0x1cc)],['.txt',_0x209495(0x4d7)+_0x209495(0x22b)+_0x209495(0x1ab)+'8'],['.md',_0x209495(0x363)+'kdown;\x20c'+_0x209495(0x1c1)+_0x209495(0x32a)],[_0x209495(0x1ac),_0x209495(0x439)+_0x209495(0x1c0)+'script;\x20'+_0x209495(0x3eb)+_0x209495(0x4c8)],['.mjs',_0x209495(0x439)+_0x209495(0x1c0)+_0x209495(0x2fc)+_0x209495(0x3eb)+_0x209495(0x4c8)],[_0x209495(0x2c7),_0x209495(0x3f2)+_0x209495(0x28c)+'t=utf-8'],[_0x209495(0x24b),_0x209495(0x439)+'ion/json'+_0x209495(0x28c)+'t=utf-8'],['.map',_0x209495(0x439)+'ion/json'+';\x20charse'+_0x209495(0x31a)],[_0x209495(0x327),_0x209495(0x289)+'eg'],[_0x209495(0x27b),'image/jp'+'eg'],[_0x209495(0x355),_0x209495(0x1f8)+'g'],[_0x209495(0x1d2),_0x209495(0x305)+'f'],['.bmp',_0x209495(0x493)+'p'],['.svg','image/sv'+_0x209495(0x471)],[_0x209495(0x2fe),'image/we'+'bp'],[_0x209495(0x4cf),'image/x-'+_0x209495(0x37b)],[_0x209495(0x4c6),'video/mp'+'4'],['.mov',_0x209495(0x453)+_0x209495(0x409)],[_0x209495(0x296),_0x209495(0x2ef)+_0x209495(0x199)],[_0x209495(0x210),_0x209495(0x2ef)+_0x209495(0x4bd)],[_0x209495(0x36d),_0x209495(0x2c6)+'bm'],[_0x209495(0x4b7),_0x209495(0x17b)+'eg'],[_0x209495(0x10f),_0x209495(0x1c4)+'v'],['.m4a',_0x209495(0x17b)+'4'],['.aac',_0x209495(0x24d)+'c'],[_0x209495(0x30d),_0x209495(0x2a5)+'g'],[_0x209495(0x197),_0x209495(0x2cc)+'ac'],['.woff',_0x209495(0x143)+'f'],[_0x209495(0x47a),_0x209495(0x143)+'f2'],[_0x209495(0x18a),'font/ttf'],[_0x209495(0x4ae),_0x209495(0x15f)],[_0x209495(0x4de),_0x209495(0x439)+_0x209495(0x47e)+_0x209495(0x171)+_0x209495(0x131)],[_0x209495(0x1da),_0x209495(0x439)+_0x209495(0x1bb)]]);function _0x1223(_0x5bc59c,_0x335a8a){_0x5bc59c=_0x5bc59c-0x10f;const _0x1e97aa=_0x1e97();let _0x12230b=_0x1e97aa[_0x5bc59c];return _0x12230b;}protocol['register'+_0x209495(0x490)+_0x209495(0x369)+'ged']([{'scheme':APP_RENDERER_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}},{'scheme':CLAWSPACE_PROTOCOL_SCHEME,'privileges':{'secure':!![],'standard':!![],'supportFetchAPI':!![],'corsEnabled':!![]}}]);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null,terminalManager=null,connectorController=null,generatedFilesStore=null,productRuntime=null,productRuntimeHooks={},requestIdHooks={},gatewayRuntimeHooks={},sessionSqliteStore=null,sessionDataService=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null,pendingProtocolArgs=null;const protocolUrlState=createProtocolUrlState();let createWindowPromise=null,ipcHandlersInstalled=![];const rendererSessionMetrics={'inactiveEventCount':0x0,'inactiveBodyReadSuppressedCount':0x0},RENDERER_SESSION_METRIC_LOG_INTERVAL=0x19;function isProductionMode(){const _0x463187=_0x209495;return process.env.NODE_ENV===_0x463187(0x444)+'on';}function resolveDevToolsFlagPath(){const _0x2f0a60=_0x209495;return shellConfig?.[_0x2f0a60(0x121)]?join(shellConfig[_0x2f0a60(0x121)],_0x2f0a60(0x21e)+_0x2f0a60(0x1fe)):'';}function isDevToolsEnabled(){if(!isProductionMode())return!![];const _0x73d405=resolveDevToolsFlagPath();return Boolean(_0x73d405)&&existsSync(_0x73d405);}function attachGatewayBroadcastHandlers(_0x69c379){const _0x4cbc82=_0x209495;for(const _0x16b415 of[_0x4cbc82(0x421)+_0x4cbc82(0x226),'gateway-'+_0x4cbc82(0x2de),_0x4cbc82(0x4f3)+_0x4cbc82(0x4bc)+'t','agent-ev'+'ent',_0x4cbc82(0x33a)+_0x4cbc82(0x45b),_0x4cbc82(0x1fa)+_0x4cbc82(0x1e2)+'n']){_0x69c379['on'](_0x16b415,_0x3db0a9=>broadcast(_0x16b415,_0x3db0a9));}}function ensureSessionSqliteStore(){const _0x4d9a36=_0x209495;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x4d9a36(0x3cb)+_0x4d9a36(0x479)+'ig\x20is\x20no'+'t\x20initia'+_0x4d9a36(0x21b));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController['resolveS'+_0x4d9a36(0x3ca)]()}),sessionSqliteStore;}function ensureSessionDataService(){const _0x5ed8cf=_0x209495;if(sessionDataService)return sessionDataService['attachGa'+_0x5ed8cf(0x3fb)+_0x5ed8cf(0x1c7)]?.(gatewayController),sessionDataService;if(!configController)throw new Error(_0x5ed8cf(0x3cb)+_0x5ed8cf(0x479)+_0x5ed8cf(0x2cd)+_0x5ed8cf(0x38a)+_0x5ed8cf(0x21b));return sessionDataService=createSessionDataService({'stateDir':configController[_0x5ed8cf(0x137)+_0x5ed8cf(0x3ca)](),'sessionSqliteStore':ensureSessionSqliteStore(),'gatewayController':gatewayController,'broadcast':broadcast,'logger':mainLogger}),sessionDataService[_0x5ed8cf(0x14c)+_0x5ed8cf(0x3b1)+_0x5ed8cf(0x4cc)]?.(_0x24606e=>{const _0x23c04f=_0x5ed8cf;broadcast('sessions'+_0x23c04f(0x119)+_0x23c04f(0x350)+'hanged',_0x24606e);}),sessionDataService[_0x5ed8cf(0x339)+_0x5ed8cf(0x3fb)+_0x5ed8cf(0x1c7)]?.(),sessionDataService;}function updateRendererSessionMetrics(_0xd79ca1){const _0x45a603=_0x209495;if(!_0xd79ca1||typeof _0xd79ca1!==_0x45a603(0x18c))return;if(_0xd79ca1[_0x45a603(0x377)]!==_0x45a603(0x2c5)+_0x45a603(0x486)+'_body_re'+_0x45a603(0x161)+_0x45a603(0x424))return;const _0xc84fdb=_0xd79ca1[_0x45a603(0x1c5)]&&typeof _0xd79ca1['meta']===_0x45a603(0x18c)?_0xd79ca1['meta']:{},_0x199548=Number(_0xc84fdb[_0x45a603(0x315)]);if(!Number[_0x45a603(0x3aa)](_0x199548)||_0x199548<=rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x284)+_0x45a603(0x2e9)+_0x45a603(0x246)])return;rendererSessionMetrics[_0x45a603(0x2c5)+'BodyRead'+_0x45a603(0x2e9)+_0x45a603(0x246)]=_0x199548,rendererSessionMetrics['inactive'+_0x45a603(0x420)+'nt']=Math['max'](rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x420)+'nt'],_0x199548);if(_0x199548!==0x1&&_0x199548%RENDERER_SESSION_METRIC_LOG_INTERVAL!==0x0)return;mainLogger?.[_0x45a603(0x448)]?.(_0x45a603(0x31c)+_0x45a603(0x14b)+_0x45a603(0x3dd)+_0x45a603(0x3ff),{'metric':'inactive'+_0x45a603(0x486)+_0x45a603(0x28b)+'ad_suppr'+_0x45a603(0x424),'inactiveEventCount':rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x420)+'nt'],'inactiveBodyReadSuppressedCount':rendererSessionMetrics[_0x45a603(0x2c5)+_0x45a603(0x284)+'Suppress'+'edCount'],'changeKind':typeof _0xc84fdb['changeKi'+'nd']==='string'?_0xc84fdb['changeKi'+'nd']:null,'origin':typeof _0xc84fdb['origin']===_0x45a603(0x40e)?_0xc84fdb[_0x45a603(0x324)]:null});}function ensureGeneratedFilesStore(){const _0x13701c=_0x209495;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error('wujie-sh'+_0x13701c(0x479)+_0x13701c(0x2cd)+'t\x20initia'+_0x13701c(0x21b));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController['resolveS'+_0x13701c(0x3ca)]()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x5bb182=_0x209495;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x5bb182(0x3cb)+_0x5bb182(0x3a9)+'\x20failed:'+'\x20'+bootError:_0x5bb182(0x3cb)+_0x5bb182(0x4ea)+_0x5bb182(0x12b)+_0x5bb182(0x291)+'alized');return!gatewayController&&(mainLogger?.['warn'](_0x5bb182(0x231)+'controll'+_0x5bb182(0x4c5)+'ng;\x20recr'+'eating'),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x5bb182(0x172)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService()),await gatewayController['start'](),gatewayController;}function getMode(){const _0x2fc6e5=_0x209495;return process.env.VITE_DEV_SERVER_URL?_0x2fc6e5(0x2f0):'prod';}function isGatewayNotInitializedError(_0x36ee89){const _0x217ef2=_0x209495;return _0x36ee89 instanceof Error&&_0x36ee89[_0x217ef2(0x2b6)]===_0x217ef2(0x3cb)+_0x217ef2(0x4ea)+_0x217ef2(0x12b)+_0x217ef2(0x291)+_0x217ef2(0x3e8);}function revealPathInFolder(_0x34acc3){const _0x317a38=_0x209495,_0x48b97f=String(_0x34acc3||'')['trim']();if(!_0x48b97f)return{'ok':![],'error':'path\x20is\x20'+_0x317a38(0x4e0)};return shell[_0x317a38(0x4d8)+_0x317a38(0x2f7)](_0x48b97f),{'ok':!![]};}function resolveProjectRoot(){const _0x3132e7=_0x209495;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x3132e7(0x280)+'ed']&&process[_0x3132e7(0x3c3)+_0x3132e7(0x247)])return join(process[_0x3132e7(0x3c3)+_0x3132e7(0x247)],'app.asar');return resolve(process[_0x3132e7(0x4a0)]());}function resolveProtocolScheme(){const _0x489d83=_0x209495;return typeof shellConfig?.[_0x489d83(0x2e7)]==='string'?shellConfig[_0x489d83(0x2e7)]['trim']():'';}function summarizeProtocolUrl(_0x8b132b){const _0x5eb8d0=_0x209495,_0x1d0e56=typeof _0x8b132b===_0x5eb8d0(0x40e)?_0x8b132b:'';if(!_0x1d0e56)return summarizeText('',0xa0);try{const _0x21d1e0=new URL(_0x1d0e56);for(const _0x4fd16e of[_0x5eb8d0(0x1f4),_0x5eb8d0(0x2b8)+'e','code',_0x5eb8d0(0x44f),_0x5eb8d0(0x118)]){_0x21d1e0[_0x5eb8d0(0x4b9)+_0x5eb8d0(0x264)][_0x5eb8d0(0x38f)](_0x4fd16e)&&_0x21d1e0[_0x5eb8d0(0x4b9)+_0x5eb8d0(0x264)][_0x5eb8d0(0x39a)](_0x4fd16e,_0x5eb8d0(0x4e7)+'D]');}return summarizeText(_0x21d1e0['toString'](),0xa0);}catch{return summarizeText(_0x1d0e56,0xa0);}}function extractProtocolUrlFromArgs(_0x5885ee=[]){const _0x254e88=_0x209495,_0x4bd619=resolveProtocolScheme();if(!_0x4bd619)return null;return _0x5885ee[_0x254e88(0x189)](_0x4e7b51=>{const _0x40bd34=_0x254e88;if(typeof _0x4e7b51!==_0x40bd34(0x40e))return![];return _0x4e7b51[_0x40bd34(0x4a2)+'th'](_0x4bd619+_0x40bd34(0x2c1));})||null;}function getUsableMainWindow(){const _0x4c1fa8=_0x209495;if(!mainWindow)return null;if(mainWindow['isDestro'+'yed']())return mainWindow=null,protocolUrlState['setRende'+'rerReady'](![]),null;if(mainWindow[_0x4c1fa8(0x19a)+_0x4c1fa8(0x1c7)]?.[_0x4c1fa8(0x2c4)+_0x4c1fa8(0x130)]?.())return mainWindow=null,protocolUrlState['setRende'+_0x4c1fa8(0x45c)](![]),null;return mainWindow;}async function ensureMainWindow(){const _0x12a596=_0x209495,_0x3c30fa=getUsableMainWindow();if(_0x3c30fa)return _0x3c30fa;if(!shellConfig||!ipcHandlersInstalled)return null;return!createWindowPromise&&(createWindowPromise=createWindow()[_0x12a596(0x111)](()=>{createWindowPromise=null;})),await createWindowPromise,getUsableMainWindow();}function restoreMainWindowForPendingProtocolUrl(){if(!shellConfig)return;void ensureMainWindow()['catch'](_0x3ae0eb=>{const _0x334759=_0x1223;mainLogger?.[_0x334759(0x18e)]('protocol'+_0x334759(0x3ac)+_0x334759(0x1d9)+_0x334759(0x365),summarizeError(_0x3ae0eb));});}function queueProtocolUrl(_0x28a408,_0x54ee83,_0x302e22=null){const _0x5c5acc=_0x209495,{duplicate:_0x26bbde}=protocolUrlState['queueUrl'](_0x28a408);mainLogger?.[_0x5c5acc(0x1db)]('protocol'+_0x5c5acc(0x29d)+'ued\x20for\x20'+_0x5c5acc(0x14b),{'url':summarizeProtocolUrl(_0x28a408),'reason':_0x54ee83,'duplicatePending':_0x26bbde,'hasWindow':Boolean(_0x302e22),'isLoadingMainFrame':Boolean(_0x302e22?.[_0x5c5acc(0x19a)+_0x5c5acc(0x1c7)]['isLoadin'+'gMainFra'+'me']()),'protocolRendererReady':protocolUrlState[_0x5c5acc(0x14b)+'Ready']});}function dispatchProtocolUrl(_0x33661d){const _0x590677=_0x209495,_0x25bc35=resolveProtocolScheme();if(typeof _0x33661d!==_0x590677(0x40e))return;if(!_0x25bc35){protocolUrlState[_0x590677(0x3d9)+_0x590677(0x28a)](_0x33661d),mainLogger?.[_0x590677(0x1db)]('protocol'+_0x590677(0x29d)+_0x590677(0x1a6)+_0x590677(0x300)+_0x590677(0x232),{'url':summarizeProtocolUrl(_0x33661d)});return;}if(!_0x33661d[_0x590677(0x4a2)+'th'](_0x25bc35+'://'))return;mainLogger?.[_0x590677(0x1db)](_0x590677(0x2e7)+'\x20url\x20rec'+_0x590677(0x1e6),{'url':summarizeProtocolUrl(_0x33661d)});const _0x33285a=getUsableMainWindow();if(!_0x33285a){queueProtocolUrl(_0x33661d,_0x590677(0x48f)+_0x590677(0x436));if(!_0x33285a)restoreMainWindowForPendingProtocolUrl();return;}if(_0x33285a[_0x590677(0x19a)+'nts'][_0x590677(0x32c)+_0x590677(0x279)+'me']()){queueProtocolUrl(_0x33661d,_0x590677(0x13e)+'main-fra'+'me',_0x33285a);return;}if(!protocolUrlState[_0x590677(0x14b)+_0x590677(0x48e)]){queueProtocolUrl(_0x33661d,'renderer'+_0x590677(0x142)+'dy',_0x33285a);return;}_0x33285a[_0x590677(0x1a9)](),_0x33285a['focus'](),broadcast(_0x590677(0x314)+_0x590677(0x35c),_0x33661d),mainLogger?.[_0x590677(0x1db)](_0x590677(0x2e7)+_0x590677(0x4b1)+_0x590677(0x492),{'url':summarizeProtocolUrl(_0x33661d),'protocolRendererReady':protocolUrlState[_0x590677(0x14b)+'Ready']});}function flushPendingProtocolUrl(){const _0x34ffa7=_0x209495,_0x15cfc6=protocolUrlState[_0x34ffa7(0x47b)+'dingUrl']();if(!_0x15cfc6)return;mainLogger?.['warn'](_0x34ffa7(0x2e7)+_0x34ffa7(0x2ff)+_0x34ffa7(0x3c6)+'shing',{'url':summarizeProtocolUrl(_0x15cfc6)}),void dispatchProtocolUrl(_0x15cfc6);}function getLocalFileMimeType(_0x371ac8){const _0x34ca12=_0x209495;return LOCAL_FILE_MIME_TYPES[_0x34ca12(0x308)](_0x371ac8[_0x34ca12(0x347)](_0x371ac8[_0x34ca12(0x3fa)+_0x34ca12(0x2d4)]('.'))[_0x34ca12(0x469)+_0x34ca12(0x4a4)]())||_0x34ca12(0x439)+_0x34ca12(0x349)+_0x34ca12(0x312);}function resolveRendererDistDir(){const _0x447fa9=_0x209495;return join(shellConfig[_0x447fa9(0x22f)+_0x447fa9(0x326)],_0x447fa9(0x41e));}function decodeAppRendererPath(_0x5f556d){const _0xe87f25=_0x209495;try{const _0x1f5fec=new URL(_0x5f556d);if(_0x1f5fec[_0xe87f25(0x2e7)]!==APP_RENDERER_PROTOCOL_SCHEME+':')return null;if(_0x1f5fec[_0xe87f25(0x3ee)]!==APP_RENDERER_PROTOCOL_HOST)return null;const _0x170efd=resolveRendererDistDir(),_0x148129=decodeURIComponent(_0x1f5fec[_0xe87f25(0x11d)]||_0xe87f25(0x1a7)+'tml'),_0x437b4f=_0x148129[_0xe87f25(0x3b9)](/^\/+/,'')||_0xe87f25(0x38e)+'ml',_0x27477e=resolve(_0x170efd,_0x437b4f);if(_0x27477e!==_0x170efd&&!_0x27477e['startsWi'+'th'](''+_0x170efd+sep))return null;return{'url':_0x1f5fec,'distDir':_0x170efd,'filePath':_0x27477e};}catch{return null;}}function parseSingleRangeHeader(_0x31cb2c,_0x5736d0){const _0x5ebd7e=_0x209495,_0x525e08=/^bytes=(\d*)-(\d*)$/i['exec'](_0x31cb2c[_0x5ebd7e(0x36b)]());if(!_0x525e08)return null;const [,_0x448191,_0x13a4f8]=_0x525e08;if(!_0x448191&&!_0x13a4f8)return null;if(!_0x448191){const _0x2eb422=Number[_0x5ebd7e(0x290)](_0x13a4f8,0xa);if(!Number[_0x5ebd7e(0x3aa)](_0x2eb422)||_0x2eb422<=0x0)return null;const _0x45376f=Math[_0x5ebd7e(0x23d)](_0x5736d0-_0x2eb422,0x0);return{'start':_0x45376f,'end':_0x5736d0-0x1};}const _0xb9b08e=Number[_0x5ebd7e(0x290)](_0x448191,0xa);if(!Number[_0x5ebd7e(0x3aa)](_0xb9b08e)||_0xb9b08e<0x0||_0xb9b08e>=_0x5736d0)return null;const _0x3e4611=_0x13a4f8?Number[_0x5ebd7e(0x290)](_0x13a4f8,0xa):_0x5736d0-0x1;if(!Number['isFinite'](_0x3e4611)||_0x3e4611<_0xb9b08e)return null;return{'start':_0xb9b08e,'end':Math[_0x5ebd7e(0x465)](_0x3e4611,_0x5736d0-0x1)};}function decodeClawspacePath(_0x45a038){const _0x5657c6=_0x209495;try{const _0x4b236e=new URL(_0x45a038);if(_0x4b236e['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x4b236e[_0x5657c6(0x3ee)]!==_0x5657c6(0x3ef))return null;const _0xc45d77=decodeURIComponent(_0x4b236e[_0x5657c6(0x11d)]);if(!_0xc45d77)return null;if(/^\/[A-Za-z]:\//[_0x5657c6(0x25c)](_0xc45d77))return _0xc45d77['slice'](0x1);return _0xc45d77;}catch{return null;}}function createClawspaceHeaders(_0x12ef70={}){const _0x2b7115=_0x209495;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x2b7115(0x433)+_0x2b7115(0x345)+'NS','access-control-allow-headers':_0x2b7115(0x29c)+_0x2b7115(0x12f)+_0x2b7115(0x49b),'access-control-expose-headers':_0x2b7115(0x4b4)+'length,\x20'+_0x2b7115(0x4b4)+_0x2b7115(0x397)+_0x2b7115(0x176)+_0x2b7115(0x4a3),..._0x12ef70});}function createLocalFileResponse(_0x15c624,_0x22aec1){const _0x2b1c20=_0x209495,_0x49b9aa=statSync(_0x22aec1);if(!_0x49b9aa[_0x2b1c20(0x3ab)]())return new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x2b1c20(0x22b)+'set=utf-'+'8'})});const _0x5dea32=getLocalFileMimeType(_0x22aec1),_0x2b445a=createClawspaceHeaders({'content-type':_0x5dea32,'accept-ranges':_0x2b1c20(0x43c),'cache-control':_0x2b1c20(0x1df)});if(_0x15c624[_0x2b1c20(0x2d1)]===_0x2b1c20(0x243))return _0x2b445a[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x49b9aa[_0x2b1c20(0x4a9)])),new Response(null,{'status':0xc8,'headers':_0x2b445a});const _0x104167=_0x15c624[_0x2b1c20(0x430)]['get'](_0x2b1c20(0x3ec));if(!_0x104167)return _0x2b445a[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x49b9aa[_0x2b1c20(0x4a9)])),new Response(Readable[_0x2b1c20(0x336)](createReadStream(_0x22aec1)),{'status':0xc8,'headers':_0x2b445a});const _0x136402=parseSingleRangeHeader(_0x104167,_0x49b9aa[_0x2b1c20(0x4a9)]);if(!_0x136402)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x2b1c20(0x35a)+_0x2b1c20(0x4b5)](_0x2b445a[_0x2b1c20(0x3da)]()),'content-range':'bytes\x20*/'+_0x49b9aa[_0x2b1c20(0x4a9)]})});const {start:_0x25104e,end:_0x3eedd2}=_0x136402,_0x160bc8=_0x3eedd2-_0x25104e+0x1,_0xa26b81=new Headers(_0x2b445a);return _0xa26b81[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x407),String(_0x160bc8)),_0xa26b81[_0x2b1c20(0x39a)](_0x2b1c20(0x4b4)+_0x2b1c20(0x3ec),_0x2b1c20(0x3bb)+_0x25104e+'-'+_0x3eedd2+'/'+_0x49b9aa[_0x2b1c20(0x4a9)]),new Response(Readable[_0x2b1c20(0x336)](createReadStream(_0x22aec1,{'start':_0x25104e,'end':_0x3eedd2})),{'status':0xce,'headers':_0xa26b81});}function installClawspaceProtocolHandler(){protocol['handle'](CLAWSPACE_PROTOCOL_SCHEME,_0x4be8be=>{const _0x3deed0=_0x1223;if(_0x4be8be[_0x3deed0(0x2d1)]===_0x3deed0(0x15e))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x5d4607=decodeClawspacePath(_0x4be8be[_0x3deed0(0x298)]);if(!_0x5d4607)return new Response(_0x3deed0(0x16f)+_0x3deed0(0x4f1)+_0x3deed0(0x27f),{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x3deed0(0x4d7)+'in;\x20char'+_0x3deed0(0x1ab)+'8'})});if(!existsSync(_0x5d4607))return new Response(_0x3deed0(0x459)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x3deed0(0x4d7)+_0x3deed0(0x22b)+_0x3deed0(0x1ab)+'8'})});return createLocalFileResponse(_0x4be8be,_0x5d4607);});}function installAppRendererProtocolHandler(){protocol['handle'](APP_RENDERER_PROTOCOL_SCHEME,_0x1000f4=>{const _0x59685a=_0x1223;if(_0x1000f4[_0x59685a(0x2d1)]==='OPTIONS')return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x9c00ff=decodeAppRendererPath(_0x1000f4[_0x59685a(0x298)]);if(!_0x9c00ff)return new Response(_0x59685a(0x16f)+'app\x20url',{'status':0x190,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});const {url:_0x56fc2e,distDir:_0x210943,filePath:_0x1d8e2d}=_0x9c00ff,_0x74e38b=join(_0x210943,_0x59685a(0x38e)+'ml'),_0x4bac13=existsSync(_0x1d8e2d),_0x248060=_0x4bac13?_0x1d8e2d:_0x74e38b;if(!_0x4bac13&&_0x56fc2e[_0x59685a(0x11d)][_0x59685a(0x257)]('.'))return new Response(_0x59685a(0x459)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});if(!existsSync(_0x248060))return mainLogger?.[_0x59685a(0x18e)](_0x59685a(0x14b)+_0x59685a(0x2ee)+'ile\x20not\x20'+_0x59685a(0x18f),{'requestUrl':_0x1000f4['url'],'targetPath':_0x248060}),new Response('Not\x20foun'+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':_0x59685a(0x4d7)+_0x59685a(0x22b)+_0x59685a(0x1ab)+'8'})});return createLocalFileResponse(_0x1000f4,_0x248060);});}function broadcast(_0x561d32,_0x243147){const _0x3ec12f=_0x209495;DEBUG_STDOUT&&console['info'](_0x3ec12f(0x256)+_0x3ec12f(0x33e)+_0x3ec12f(0x222),_0x561d32,summarizePayload(_0x243147,{'maxDepth':0x2}));for(const _0x23a18a of BrowserWindow[_0x3ec12f(0x1cf)+_0x3ec12f(0x3b5)]()){!_0x23a18a[_0x3ec12f(0x19a)+'nts'][_0x3ec12f(0x2c4)+_0x3ec12f(0x130)]()&&_0x23a18a[_0x3ec12f(0x19a)+_0x3ec12f(0x1c7)]['send']('wujie-sh'+_0x3ec12f(0x46e)+'t',{'name':_0x561d32,'payload':_0x243147});}}function requestLogReportFromRenderer(_0x35a36f){const _0x25bd0a=_0x209495,_0x4ae8a0=BrowserWindow[_0x25bd0a(0x4ed)+_0x25bd0a(0x495)]()||(mainWindow&&!mainWindow[_0x25bd0a(0x2c4)+'yed']()?mainWindow:null),_0x222b89={'source':_0x35a36f};if(!_0x4ae8a0||_0x4ae8a0[_0x25bd0a(0x19a)+_0x25bd0a(0x1c7)][_0x25bd0a(0x2c4)+'yed']()){broadcast(_0x25bd0a(0x277)+_0x25bd0a(0x23f)+_0x25bd0a(0x1f5),_0x222b89);return;}_0x4ae8a0[_0x25bd0a(0x3bf)+'zed']()&&_0x4ae8a0[_0x25bd0a(0x429)](),_0x4ae8a0['show'](),_0x4ae8a0[_0x25bd0a(0x3d5)](),_0x4ae8a0['webConte'+_0x25bd0a(0x1c7)][_0x25bd0a(0x356)](_0x25bd0a(0x3cb)+_0x25bd0a(0x46e)+'t',{'name':'app:log-'+_0x25bd0a(0x23f)+_0x25bd0a(0x1f5),'payload':_0x222b89});}function installApplicationMenu(){const _0x50e9d5=_0x209495;if(process[_0x50e9d5(0x443)]!=='darwin')return;const _0x112d62=[{'label':shellConfig?.[_0x50e9d5(0x2a7)+_0x50e9d5(0x3af)]||app[_0x50e9d5(0x454)],'submenu':[{'role':'about'},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x368)},{'type':'separato'+'r'},{'role':_0x50e9d5(0x2b3)},{'role':_0x50e9d5(0x16e)+'rs'},{'role':_0x50e9d5(0x411)},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x318)}]},{'label':'编辑','submenu':[{'role':'undo'},{'role':_0x50e9d5(0x233)},{'type':_0x50e9d5(0x4f7)+'r'},{'role':_0x50e9d5(0x20f)},{'role':_0x50e9d5(0x19b)},{'role':_0x50e9d5(0x1a3)},{'role':_0x50e9d5(0x3df)+'l'}]},{'label':'显示','submenu':[{'role':'reload'},{'role':_0x50e9d5(0x2c2)+'oad'},{'type':'separato'+'r'},{'role':_0x50e9d5(0x385)+_0x50e9d5(0x4e3)}]},{'role':'windowMe'+'nu','label':'窗口'},{'role':_0x50e9d5(0x40a),'label':'帮助','submenu':[{'label':_0x50e9d5(0x344),'click':()=>{const _0x592bd1=_0x50e9d5;requestLogReportFromRenderer(_0x592bd1(0x439)+'ion-menu');}}]}];Menu[_0x50e9d5(0x2aa)+_0x50e9d5(0x381)+'nu'](Menu[_0x50e9d5(0x22a)+_0x50e9d5(0x3be)+'e'](_0x112d62));}async function loadProductRuntime(){const _0x3cc721=_0x209495,_0x41cf0c=[join(shellConfig[_0x3cc721(0x22f)+_0x3cc721(0x326)],'shell-ru'+_0x3cc721(0x3d2),_0x3cc721(0x2e3)+'s'),join(app[_0x3cc721(0x412)+'th'](),_0x3cc721(0x364)+_0x3cc721(0x3d2),'index.mj'+'s')],_0x1fcfca=_0x41cf0c['find'](_0x63a5a8=>existsSync(_0x63a5a8));if(!_0x1fcfca)return mainLogger?.[_0x3cc721(0x448)]('product\x20'+_0x3cc721(0x120)+'extensio'+_0x3cc721(0x2dd)+_0x3cc721(0x168),{'runtimeCandidates':_0x41cf0c}),{};try{const _0x1922e7=await import(pathToFileURL(_0x1fcfca)[_0x3cc721(0x1d7)]);return mainLogger?.['info'](_0x3cc721(0x141)+_0x3cc721(0x120)+_0x3cc721(0x2a1)+_0x3cc721(0x39c),{'runtimePath':_0x1fcfca}),_0x1922e7;}catch(_0x41ebc5){mainLogger?.[_0x3cc721(0x18e)](_0x3cc721(0x141)+_0x3cc721(0x120)+_0x3cc721(0x2a1)+_0x3cc721(0x316)+_0x3cc721(0x302),{'runtimePath':_0x1fcfca,'error':summarizeError(_0x41ebc5)});throw _0x41ebc5;}}function _0x1e97(){const _0x11a3d2=['s:reveal','elected-','lastInde','tewayEve','openAtLo','app:clip','record','updated','CommandO','config:c','skills:i','keys','plugins:','get-conf','ist','length','setName','icktime','help','before\x20q','agent','ishuRegi','string',':events','uri','unhide','getAppPa','te:quit-','ted','agent_id','meState','contextW','before-q','m-channe','lawMcpSe','andledIn','lConnect','redConte','dist','models\x20c','EventCou','gateway-','select\x20f',':save-we','essed','sync-bun','all','lClient','shellLog','restore','-request','csCliCon','est_fail','showOpen','app:open','getPath','headers','s-snapsh','hatChann','GET,\x20HEA','manifest','g_conten','window','tLogs','terminal','applicat','filters','getPinne','bytes','ishuDocC','#!/bin/s','ngs','Entry','pop','uit:\x20upd','platform','producti','app:star','uncaught','title','info','ximize',':save-di','folder','markQuit','ilConnec','entModel','token','\x20request','stomMode','dispose','video/qu','name','tabs:nav','sourceSe','.htm','lawPlugi','Not\x20foun','recursiv','pdated','rerReady','FeishuDo','hell]\x20fa','all\x20in\x20p','ionUsage','saveWeco','-pinned','dCheck','isabled','min',':save-qq','cron:rem','assign','toLowerC','update','plugin\x20e','electron','logs','ell:even','hecks','abort','g+xml','trationS','setAsDef','atus','config','product-','agents:u','ateway_s','ell\x20conf','.woff2','clearPen','stion','itialize','ion/vnd.','lingUpda','cutoffRo','ens','succeede','changed','leted','d\x20failed','_session','pluginId','workspac','getState','saveTenc','start',':status','models:c','Ready','missing-','SchemesA','update_g','patched','image/bm','ndlers','edWindow','isArray',':get-clo','-level','list','659908lRvnzy','ype','selected',':unpin','s:upsert','+Shift+I','cwd','-life-cy','startsWi','nges','ase','_respons','saveQqbo','appId','agents:l','size','ignore','nectorCo','provider','path','.otf','entDocsC','ges','\x20url\x20dis','ProductR','est\x20comp','content-','ies','saveFeis','.mp3','est\x20star','searchPa','files','level','eam-even','matroska','readConf','indexOf','error、wa','agent\x20de',':rename','lawChann','resolveC','er\x20missi','.mp4','ionEvent','utf-8','openDevT','te:check','model-id','State','tup:get','les:reve','.ico','hell:ipc','g\x20native','inned','\x20client\x20','ls:set-e','ctory','Keys','text/pla','showItem','eam','tate','peratedM','app:syst','defaults','.eot',':\x20gatewa','required','ate\x20inst','register','llscreen','cancelFe','openclaw','startFei','[REDACTE','logs:get','resh-age','ell\x20gate','updateOp','-status','getFocus','lect-fil','syncRunt','dow\x20load','clawspac','top_done','chat-str','untimeHa','Session','ion','separato','models','huChanne','imePlugi','unref','.wav','agent-','finally','agents:c','nput-eve','getRevis',':save-kd','uDocCliC','ocs','state',':runtime','ocolClie',':save','tIdTitle','pathname',':diagnos','function','runtime\x20','dataDir','bot-chan','handle','e\x20first.','enClawMc','\x20CLI\x20wra','dels','enClawCo','config:r','quitAndI','way\x20is\x20n','argv','id\x20title','senderFr','ontent-t','yed','bject',':choose','runtime:','tabs-age','window:i','preventD','resolveS','cron:lis','ItemSett','ap:get',':save-fe','nelSessi','update-c','loading-','ionEntry','apiKey','product\x20','-not-rea','font/wof','shell\x20lo','and-inst','node','ad-binar','lTs',':snapsho','mand','renderer','subscrib','sses','navigati','efault','ileName','window:o','logs:ope','initiali','arch','lConfig',':gateway','files:li','node:fs/','-ready','debug','sender','2984718TRpAoj','plugin\x20c','OPTIONS','font/otf','g\x20update','ad_suppr','listSumm','gatewayP','ncent-ex',':answer-','timeout','saveKdoc','und','getStatu','messages','main','artifact','ocsCliCo','hideOthe','Invalid\x20','rayOnClo','ms-fonto','getVersi','top_star','app:tray','nfig','ccept-ra','logLevel','tup:set','\x20rendere','stringif','audio/mp','writeEve','director','tabs:pos','wujiecla','em:resta','avatar','pServer','indowTok','setSelec',':pin','getKdocs','ead','key','find','.ttf','\x20allowin','object','startWec','error','found','download','plugins','th\x20is\x20re','upsert','unknown','byteLeng','reasonin','.flac','torConfi','msvideo','webConte','copy','orted','skills:u','t-messag','logsDir','utf8','igWriteH','ll-close','paste','ssion:\x20','before-i','ued\x20befo','/index.h','diagnost','show','ith-sess','set=utf-','.js','sharedCo','onReques','saveNetE','-session','window:t','ces.json','s-maximi','iConnect','ectory\x20o','unregist','#f8fafc','kdocs','ite-bina','ipc','ion/wasm','rnal','nabled',':set-clo','ModelId','ion/java','harset=u','ready\x20ex','\x20open-ur','audio/wa','meta','te:get-s','nts','rated-fi','minimize','figs','boot\x20ele','et=utf-8','/chat/co','model','getAllWi','tion\x20fai','number','.gif','fig','#ffffff','filter','quired','href','getMessa','restore\x20','.wasm','warn','startKdo','tabs-com','enClawCh','no-store','roductDa','tatus','-questio','onnector','-url','-logs','eived','cron:cre','\x20main\x20bo','ap:upser','ector\x20se','eted','no\x20defau',':open-cl','content','close','some','ectory','requestB','cle','authCode','equested','irectory','control','image/pn','enClawSk','ask-user','d-state','agent\x20id','map','.flag','setLogin','tease-ma','uest-age','whenRead','cancelKd','loadURL','cancelWe','will-qui','logs:lis','ure','feishu_d','board:wr','customMo','before\x20i','em:open-','app:upda','cut','.mkv','ctron\x20ma','rn、info\x20','Config','uit','33330mgIrBO','ections','app:file','ishu-doc','showSave','\x20quit','lized','e\x20comple','migrateP','devtools','otAfterI',':agent-m','text','nt]','from','Dialog','chat:abo','status','openExte','shouldLo','igate','buildFro','in;\x20char','pendingU','ory-info','unmaximi','projectR','child-pr','gateway\x20','g\x20ready','redo','nstallin','ted\x20conn','models:s','ackgroun',':reorder','ession','yInfo','main\x20win','sessionK','max','rControl','report-r','ile\x20writ','-by-sess','annelCon','HEAD','gin','eated','edCount','sPath','oggle-ma',':usage','d\x20reject','.json','25725564SEHlsA','audio/aa','Version','ools',':\x20stoppi','win32','iled\x20to\x20','n-direct','ot\x20start','checkFor','[wujie-s','includes','tanceLoc','ted-ever','cutoffTe','sConnect','test','aseMailC','vate','Unsuppor','targetDi','sourcePa','unhandle','ort','rams','Terminal',':downloa','relaunch','customNa','parentSe','IPC\x20requ','maxToken','les:dele','complete','ite','stream','elSessio','setImCha','readCurr','limit','meFilter','e:open-d','444cLfUub','app:log-','storyLoa','gMainFra','setRende','.jpeg','filePath','files:re','inimize','e\x20url','isPackag','execPath','api.open','tic','BodyRead','promises','INFO','rocess-g','-shortcu','image/jp','ngUrl','_body_re',';\x20charse','ls:delet','ationSta','dSession','parseInt','ot\x20initi','isIntege','timeoutM','elConfig','\x20shortcu','.avi','roductCo','url','closeToT','s:list','ingleIns','range,\x20c','\x20url\x20que','agent\x20up','generate','ings','extensio','\x20updater','sessionI','ocess\x20go','audio/og','onnectSt','productN','ectSessi','getURL','setAppli','mjs','getLogin','ssion','ing',':resize','fromIpc','nstance','napshot','hide','huDocCon','r\x20ready','message','dated','auth_cod','ions-lis','nConfig','app:info','user','window_f','pdate','child\x20pr','tory','://','forceRel',':message','isDestro','inactive','video/we','.css','now','pen-devt','-port','markConf','audio/fl','ig\x20is\x20no','acts','\x20log','stration','method','ng\x20gatew','ey\x20is\x20re','xOf','ate','cron','skills','maxEntri','ernal\x20ur','zed','onfig','te:downl','n\x20not\x20fo','log','gatewayT','illEntry','mport-zi','oken','index.mj','208568JFRmQC','d-local','type','protocol','feishu','Suppress','sessions','json','ipc\x20requ','shuDocCl','\x20entry\x20f','video/x-','dev','push','lt\x20model','emoji','open','liConnec','startBac','InFolder','deletedS','figured:','versions','ed:\x20','script;\x20','\x20main\x20wi','.webp','\x20pending','re\x20confi','keyDown','\x20to\x20load','role','lawSkill','image/gi','runtimeI','e:shared','get','cron:log','nel','ists',':save-ne','.ogg','d\x20comple','openDire','les:upse','temperat','t-stream','Event','app:prot','count','n\x20failed','catch','quit','choices','t=utf-8','nstall','session\x20','d\x20is\x20req','deleteIm','agentId','saveQqMa','e\x20direct','-state-s','code','origin','Bearer\x20','oot','.jpg','captureI','nfo','tf-8','bin','isLoadin','l\x20prepar','reorderP','s:delete','file\x20rea','reverse','talkDocC','render-p','agents','rver','toWeb','s:hide','1827JUnBPF','attachGa','agents-u','red;\x20set','ettings','listBySe','hell:eve','ocess-go','ources','tabs:req','hideBySe','create','上传日志...','D,\x20OPTIO','runtimeR','slice','dled-res','ion/octe','agents:w','requestS','lect-dir','ternally','kUserQue','baseUrl','-state-c','Everywhe','ncident','keepUnti','agents:d','.png','send','orConfig','config:i','ted-stat','fromEntr','app:gene','ocol-url',':save-te','isInstal','或\x20debug','activate','deleteOp','mChannel','text/mar','shell-ru','failed','\x20is\x20requ','logs:set','services','sPrivile','isMaximi','trim','tp\x20','.webm','operated','onChatHi','setOpenC','ired','ipc_requ','open\x20ext','closed','select\x20d','payload','event','dRejecti','readSess',':choose-','icon',':loading','tabs:ref','canceled','binary\x20f','chat','cationMe','fromWebC','ChannelC','darwin','togglefu','ell-cli.','nt-state','logs\x20exp','request-','t\x20initia','\x20open\x20bl','getRecen','multiSel','index.ht','has','59872oZEuxn','ded','ndow','日志等级必须是\x20','window-a','wechat','mail','range,\x20a','ensureIn','ontext','set','paths','n\x20loaded','mpletion','ready','ap:entry','configPa','match','ector:\x20','h\x0aexec\x20\x22','4378287cyxmWf','command',':process','nnel','files:se','ell\x20boot','isFinite','isFile','\x20window\x20','listSess','wBin','ame','detach','eRuntime','lose','channelI',':summary','ndows',':run-onc','cron:upd','te\x20compl','replace','Updates','bytes\x20','Level','omplete','mTemplat','isMinimi','ywhere','-weixin','tSession','resource','files:wr','l\x20reques','\x20url\x20flu','Update','hidden','ontents','tateDir','wujie-sh','second-i','plugin\x20d','-exit','.\x20Run\x20wu','g\x20level\x20','window:c','ntime','openPath','chrome','focus','groups','\x20complet','nnelEnab','setPendi','entries','ls:list','restart','\x20metric\x20','toISOStr','selectAl','et-self-','t:\x20','settings','-status-','ory\x20open','ocus',':revisio','jie-shel','alized','one','text/htm','charset=','range','Observed','hostname','local','l\x20first','writeCon','text/css','elete','est\x20fail','-token','ncent-do','ory'];_0x1e97=function(){return _0x11a3d2;};return _0x1e97();}function openDevToolsForActiveContext(){const _0x540d28=_0x209495;if(!isDevToolsEnabled())return mainLogger?.[_0x540d28(0x448)](_0x540d28(0x21e)+_0x540d28(0x38b)+'ocked',{'mode':getMode(),'flagPath':resolveDevToolsFlagPath()}),{'ok':![]};const _0x369f37=BrowserWindow['getFocus'+_0x540d28(0x495)]()||mainWindow;if(!_0x369f37||_0x369f37[_0x540d28(0x2c4)+'yed']())return{'ok':![]};return _0x369f37[_0x540d28(0x19a)+_0x540d28(0x1c7)]['openDevT'+_0x540d28(0x24f)]({'mode':_0x540d28(0x3b0)}),_0x369f37[_0x540d28(0x19a)+_0x540d28(0x1c7)][_0x540d28(0x356)](_0x540d28(0x3cb)+_0x540d28(0x46e)+'t',{'name':_0x540d28(0x21e)+_0x540d28(0x288)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x42c2ec=_0x209495;globalShortcut[_0x42c2ec(0x1b6)+'er'](DEVTOOLS_ACCELERATOR);if(!isDevToolsEnabled())return;const _0x1c73b3=globalShortcut[_0x42c2ec(0x4e2)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x1c73b3&&console[_0x42c2ec(0x1db)](_0x42c2ec(0x256)+_0x42c2ec(0x45e)+'iled\x20to\x20'+'register'+_0x42c2ec(0x295)+_0x42c2ec(0x3e1)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0x187cc6=_0x209495;try{const _0x540240=await loadRuntimeInfo(shellConfig[_0x187cc6(0x22f)+_0x187cc6(0x326)]),_0x322ffa=_0x540240[_0x187cc6(0x434)]||{};return{'ok':!![],'runtimeRoot':_0x540240[_0x187cc6(0x346)+_0x187cc6(0x326)],'openclawVersion':_0x540240['openclaw'+_0x187cc6(0x24e)],'generatedAt':_0x322ffa[_0x187cc6(0x29f)+'dAt']||null,'pluginCount':Array[_0x187cc6(0x496)](_0x322ffa[_0x187cc6(0x191)])?_0x322ffa[_0x187cc6(0x191)][_0x187cc6(0x407)]:0x0,'plugins':Array[_0x187cc6(0x496)](_0x322ffa[_0x187cc6(0x191)])?_0x322ffa[_0x187cc6(0x191)]:[],'agents':_0x322ffa[_0x187cc6(0x334)]||null,'skills':_0x322ffa[_0x187cc6(0x2d7)]||null,'wrapper':_0x322ffa[_0x187cc6(0x17f)+_0x187cc6(0x3ae)]||null,'product':_0x322ffa['product']||null};}catch(_0x22f8f7){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0x187cc6(0x22f)+'oot']||resolveProjectRoot()),'error':_0x22f8f7 instanceof Error?_0x22f8f7[_0x187cc6(0x2b6)]:String(_0x22f8f7)};}}async function createWindow(){const _0x4ed4e7=_0x209495,_0x1fa179=process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL,_0x39b2b6=process[_0x4ed4e7(0x443)]===_0x4ed4e7(0x384),_0x420f02=process['platform']===_0x4ed4e7(0x251)?![]:!![],_0x40413b=isDevToolsEnabled();mainLogger?.[_0x4ed4e7(0x448)]('creating'+_0x4ed4e7(0x2fd)+_0x4ed4e7(0x392),{'rendererUrl':_0x1fa179,'mode':getMode(),'devToolsEnabled':_0x40413b,'devToolsFlagPath':resolveDevToolsFlagPath()});const _0x9919c4=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x4ed4e7(0x2a7)+_0x4ed4e7(0x3af)],'backgroundColor':_0x39b2b6?_0x4ed4e7(0x1d4):_0x4ed4e7(0x1b7),'autoHideMenuBar':!![],'titleBarStyle':_0x4ed4e7(0x3c8),'titleBarOverlay':_0x420f02,..._0x39b2b6?{'trafficLightPosition':{'x':0x10,'y':0xc}}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![],'devTools':_0x40413b}});mainWindow=_0x9919c4,protocolUrlState[_0x4ed4e7(0x27a)+'rerReady'](![]),_0x9919c4['on'](_0x4ed4e7(0x374),()=>{const _0x2500ab=_0x4ed4e7;if(mainWindow!==_0x9919c4)return;mainWindow=null,protocolUrlState[_0x2500ab(0x27a)+_0x2500ab(0x45c)](![]);}),_0x9919c4[_0x4ed4e7(0x19a)+_0x4ed4e7(0x1c7)]['on'](_0x4ed4e7(0x1a5)+_0x4ed4e7(0x113)+'nt',_0x4b6fce=>{const _0x2e84b9=_0x4ed4e7,_0x24ca9b=_0x4b6fce['input'];if(!_0x24ca9b||_0x24ca9b['type']!==_0x2e84b9(0x301))return;const _0x3b1960=String(_0x24ca9b[_0x2e84b9(0x188)]||'')[_0x2e84b9(0x469)+_0x2e84b9(0x4a4)](),_0x34d74e=_0x3b1960==='r',_0x227cdb=process[_0x2e84b9(0x443)]===_0x2e84b9(0x384)?_0x24ca9b['meta']===!![]:_0x24ca9b[_0x2e84b9(0x1f7)]===!![];if(!_0x34d74e||!_0x227cdb)return;_0x4b6fce[_0x2e84b9(0x136)+_0x2e84b9(0x14f)](),broadcast(_0x2e84b9(0x1dd)+_0x2e84b9(0x14a),{'type':_0x2e84b9(0x14e)+'on','action':'reload'});}),_0x9919c4['on'](_0x4ed4e7(0x3d5),()=>{const _0x1b9fcc=_0x4ed4e7;updateController?.['requestB'+'ackgroun'+_0x1b9fcc(0x463)](_0x1b9fcc(0x2bd)+_0x1b9fcc(0x3e5));});const _0x1b61c1=process.env.VITE_DEV_SERVER_URL;_0x1b61c1?(await _0x9919c4[_0x4ed4e7(0x204)](_0x1b61c1),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&_0x40413b&&_0x9919c4[_0x4ed4e7(0x19a)+_0x4ed4e7(0x1c7)][_0x4ed4e7(0x4c9)+_0x4ed4e7(0x24f)]({'mode':_0x4ed4e7(0x3b0)})):await _0x9919c4[_0x4ed4e7(0x204)](APP_RENDERER_ENTRY_URL),mainLogger?.['info'](_0x4ed4e7(0x23b)+_0x4ed4e7(0x4f0)+'ed',{'rendererUrl':_0x1fa179,'mode':getMode(),'devToolsEnabled':_0x40413b});}function registerProtocolHandlers(){const _0x564924=_0x209495,_0x109013=resolveProtocolScheme();if(!_0x109013)return;let _0x445b31=![];try{_0x445b31=app[_0x564924(0x280)+'ed']?app[_0x564924(0x473)+'aultProt'+_0x564924(0x11a)+'nt'](_0x109013,process[_0x564924(0x281)],[app[_0x564924(0x412)+'th']()]):![];}catch(_0xbdb6bc){mainLogger?.[_0x564924(0x18e)](_0x564924(0x2e7)+_0x564924(0x4d3)+'registra'+_0x564924(0x1d0)+'led',{'protocol':_0x109013,'error':summarizeError(_0xbdb6bc)});}mainLogger?.[_0x564924(0x1db)]('protocol'+_0x564924(0x4d3)+'register'+'ed',{'protocol':_0x109013,'registered':_0x445b31,'packaged':app[_0x564924(0x280)+'ed'],'defaultClient':app['isDefaul'+'tProtoco'+_0x564924(0x427)](_0x109013),'execPath':toHomePath(process[_0x564924(0x281)]),'appPath':toHomePath(app['getAppPa'+'th']())});const _0x168560=extractProtocolUrlFromArgs(process[_0x564924(0x12c)]);if(_0x168560)protocolUrlState['setPendi'+_0x564924(0x28a)](_0x168560);const _0x3cb456=extractProtocolUrlFromArgs(pendingProtocolArgs||[]);pendingProtocolArgs=null;if(_0x3cb456)protocolUrlState[_0x564924(0x3d9)+'ngUrl'](_0x3cb456);}function normalizeRequestedLogLevel(_0x225f97){const _0xdacb14=_0x209495,_0x37d042=typeof _0x225f97===_0xdacb14(0x40e)?_0x225f97[_0xdacb14(0x36b)]()[_0xdacb14(0x469)+_0xdacb14(0x4a4)]():'';if(!SHELL_LOG_LEVELS['has'](_0x37d042))throw new Error(_0xdacb14(0x393)+_0xdacb14(0x4c0)+_0xdacb14(0x212)+_0xdacb14(0x35f));return _0x37d042;}function writeMainAuditLog(_0x1e5360,_0x390ef9){const _0x13b892=_0x209495;return mainLogger?.['write']?.(formatLogLine({'level':_0x13b892(0x286),'context':'main','message':_0x1e5360,'meta':_0x390ef9}));}async function installIpcHandlers(){const _0x1eead3=_0x209495,_0x5776a7=(_0x2d5c46,_0x1f4931)=>{const _0x3111e0=_0x1223;ipcMain[_0x3111e0(0x123)](_0x2d5c46,async(_0x5cec2a,_0x3cb950)=>{const _0x269b6c=_0x3111e0,_0x15fc97=Date[_0x269b6c(0x2c8)](),_0x2ed91f=_0x5cec2a[_0x269b6c(0x12e)+_0x269b6c(0x3af)]?.[_0x269b6c(0x298)]||_0x5cec2a[_0x269b6c(0x15b)][_0x269b6c(0x2a9)](),_0x2fd7b2=ipcLogger?.[_0x269b6c(0x228)+'g'](_0x269b6c(0x15a));_0x2fd7b2&&ipcLogger[_0x269b6c(0x448)](_0x269b6c(0x2ec)+_0x269b6c(0x4b8)+'ted',{'channel':_0x2d5c46,'senderUrl':_0x2ed91f});DEBUG_STDOUT&&_0x2fd7b2&&console[_0x269b6c(0x448)](_0x269b6c(0x256)+'hell:ipc'+']',_0x2d5c46,'started');try{let _0x43064e;try{_0x43064e=await _0x1f4931(_0x5cec2a,_0x3cb950);}catch(_0x544a25){if(!isGatewayNotInitializedError(_0x544a25))throw _0x544a25;await ensureGatewayControllerStarted(),_0x43064e=await _0x1f4931(_0x5cec2a,_0x3cb950);}const _0x33df6d=Date[_0x269b6c(0x2c8)]()-_0x15fc97;return(_0x2fd7b2||_0x33df6d>IPC_SLOW_REQUEST_THRESHOLD_MS)&&ipcLogger?.[_0x269b6c(0x448)](_0x269b6c(0x2ec)+_0x269b6c(0x4b3)+'leted',{'channel':_0x2d5c46,'durationMs':_0x33df6d,'status':'succeede'+'d'}),await userEventWriter?.[_0x269b6c(0x2b0)]({'channel':_0x2d5c46,'payload':_0x3cb950,'result':_0x43064e,'durationMs':_0x33df6d,'status':_0x269b6c(0x482)+'d'}),DEBUG_STDOUT&&_0x2fd7b2&&console[_0x269b6c(0x448)]('[wujie-s'+_0x269b6c(0x4d0)+']',_0x2d5c46,_0x269b6c(0x26d)+'d',{'durationMs':_0x33df6d,'status':'succeede'+'d'}),_0x43064e;}catch(_0x3912b5){const _0x61069d=Date['now']()-_0x15fc97;ipcLogger?.[_0x269b6c(0x18e)](_0x269b6c(0x2ec)+'est\x20fail'+'ed',{'channel':_0x2d5c46,'durationMs':_0x61069d,'error':summarizeError(_0x3912b5)}),await userEventWriter?.[_0x269b6c(0x2b0)]({'channel':_0x2d5c46,'payload':_0x3cb950,'error':_0x3912b5,'durationMs':_0x61069d,'status':_0x269b6c(0x365)}),await diagnosticsWriter?.['captureI'+_0x269b6c(0x352)](diagnosticEventFromError(_0x3912b5,{'category':'ipc','event':_0x269b6c(0x372)+_0x269b6c(0x42c)+'ed','message':_0x269b6c(0x26a)+_0x269b6c(0x3f4)+_0x269b6c(0x2fb)+_0x2d5c46,'durationMs':_0x61069d,'meta':{'channel':_0x2d5c46,'senderUrl':_0x2ed91f,'payload':summarizePayload(_0x3cb950)}}));DEBUG_STDOUT&&console[_0x269b6c(0x18e)](_0x269b6c(0x256)+'hell:ipc'+']',_0x2d5c46,_0x269b6c(0x365),summarizeError(_0x3912b5));throw _0x3912b5;}});},_0xab79f1=()=>{const _0x2b5138=_0x1223;if(!gatewayController)throw new Error(bootError?_0x2b5138(0x3cb)+_0x2b5138(0x3a9)+'\x20failed:'+'\x20'+bootError:_0x2b5138(0x3cb)+_0x2b5138(0x4ea)+'way\x20is\x20n'+'ot\x20initi'+'alized');return gatewayController;};function _0x467567(){const _0x10e687=_0x1223;for(const _0xb488af of Object[_0x10e687(0x403)](gatewayRuntimeHooks)){delete gatewayRuntimeHooks[_0xb488af];}Object[_0x10e687(0x468)](gatewayRuntimeHooks,productRuntimeHooks,{'onChatHistoryLoaded':async _0x43bb5d=>{const _0x5c5379=_0x10e687;await requestIdHooks?.[_0x5c5379(0x36f)+_0x5c5379(0x278)+_0x5c5379(0x391)]?.(_0x43bb5d),await productRuntimeHooks?.[_0x5c5379(0x36f)+_0x5c5379(0x278)+_0x5c5379(0x391)]?.(_0x43bb5d);},'onRequestIdTitleEvent':async _0x63b057=>{const _0x1aabab=_0x10e687;await requestIdHooks?.[_0x1aabab(0x1ae)+_0x1aabab(0x11c)+'Event']?.(_0x63b057),await productRuntimeHooks?.[_0x1aabab(0x1ae)+_0x1aabab(0x11c)+_0x1aabab(0x313)]?.(_0x63b057);}});}const _0x1f1672=()=>{const _0x360c1b=_0x1223;if(typeof productRuntime[_0x360c1b(0x4e2)+_0x360c1b(0x4b2)+'untimeHa'+_0x360c1b(0x494)]!==_0x360c1b(0x11f))return;const _0x3a2d07=productRuntime[_0x360c1b(0x4e2)+_0x360c1b(0x4b2)+_0x360c1b(0x4f4)+_0x360c1b(0x494)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x5776a7,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0xab79f1,'sep':sep,'openClawConfigHandlers':{'update':(..._0x2d9dd9)=>configController[_0x360c1b(0x4eb)+_0x360c1b(0x128)+_0x360c1b(0x175)](..._0x2d9dd9),'setPluginConfig':_0x3c4067=>configController[_0x360c1b(0x370)+_0x360c1b(0x458)+_0x360c1b(0x2ba)](_0x3c4067),'setChannelConfig':_0x2d621a=>configController[_0x360c1b(0x370)+_0x360c1b(0x4c3)+_0x360c1b(0x294)](_0x2d621a),'deleteChannelConfig':_0x2e947e=>configController[_0x360c1b(0x361)+_0x360c1b(0x1de)+'annelCon'+_0x360c1b(0x1d3)](_0x2e947e),'setSkillEntry':_0x56aa70=>configController[_0x360c1b(0x370)+_0x360c1b(0x304)+_0x360c1b(0x440)](_0x56aa70),'deleteSkillEntry':_0x11df4c=>configController['deleteOp'+_0x360c1b(0x1f9)+'illEntry'](_0x11df4c),'setMcpServer':_0x591ee9=>configController[_0x360c1b(0x370)+_0x360c1b(0x41a)+'rver'](_0x591ee9),'deleteMcpServer':_0xa5766e=>configController['deleteOp'+'enClawMc'+_0x360c1b(0x182)](_0xa5766e)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x2c1ef4})||{};Object[_0x360c1b(0x468)](productRuntimeHooks,_0x3a2d07),_0x467567();};ipcMain['on'](_0x1eead3(0x314)+_0x1eead3(0x35c)+_0x1eead3(0x159),()=>{const _0x330821=_0x1eead3;protocolUrlState[_0x330821(0x27a)+_0x330821(0x45c)](!![]),mainLogger?.[_0x330821(0x1db)](_0x330821(0x2e7)+_0x330821(0x179)+_0x330821(0x2b5),{'hasPendingProtocolUrl':Boolean(protocolUrlState[_0x330821(0x22c)+'rl'])}),flushPendingProtocolUrl();}),_0x5776a7(_0x1eead3(0x2bb),async()=>({'name':shellConfig[_0x1eead3(0x2a7)+_0x1eead3(0x3af)],'version':app['getVersi'+'on'](),'appId':shellConfig[_0x1eead3(0x4a7)],'dataDir':shellConfig[_0x1eead3(0x121)]})),_0x5776a7(_0x1eead3(0x42e)+_0x1eead3(0x1e4),async(_0x30d281,_0x2189ed)=>{const _0x1bbf65=_0x1eead3,_0x10eaa3=typeof _0x2189ed===_0x1bbf65(0x40e)?_0x2189ed:'';if(!_0x10eaa3)return{'ok':![]};return filesLogger?.[_0x1bbf65(0x448)](_0x1bbf65(0x373)+_0x1bbf65(0x2d9)+_0x1bbf65(0x3c5)+_0x1bbf65(0x414),{'url':summarizeText(_0x10eaa3,0xa0)}),await shell[_0x1bbf65(0x227)+_0x1bbf65(0x1bc)](_0x10eaa3),{'ok':!![]};});const _0x2c1ef4=async(_0x361cd3,_0x257809)=>{const _0x383f7a=_0x1eead3;return configController[_0x383f7a(0x2cb)+_0x383f7a(0x1a1)+_0x383f7a(0x41b)+_0x383f7a(0x34d)](),await configController[_0x383f7a(0x3f1)+'fig'](_0x361cd3,_0x257809),{'ok':!![]};};Object['assign'](requestIdHooks,registerRequestIdHandlers({'configController':configController,'handle':_0x5776a7,'mainLogger':mainLogger})),_0x467567(),_0x1f1672(),_0x5776a7(_0x1eead3(0x402)+_0x1eead3(0x2e1)+'p',async(_0x382d3d,_0x2c7a69)=>importMarketSkillZip({'payload':_0x2c7a69,'importSkillZip':_0x131d1b=>importSkillZip({..._0x131d1b,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow[_0x1eead3(0x382)+_0x1eead3(0x3c9)](_0x382d3d['sender'])||mainWindow,'configController':configController}),'configController':configController})),_0x5776a7(_0x1eead3(0x19d)+_0x1eead3(0x2be),(_0x5ac473,_0x1b6650)=>updateManagedSkillConfig({'payload':_0x1b6650,'configController':configController})),_0x5776a7('skills:d'+_0x1eead3(0x3f3),(_0x426b9a,_0x5d84e5)=>deleteMarketSkillRegistryEntry({'payload':_0x5d84e5,'deleteManagedSkill':_0x4a081f=>deleteManagedSkill({..._0x4a081f,'gateway':_0xab79f1(),'configController':configController}),'configController':configController}));const _0x2a7fa4=ensureGeneratedFilesStore();_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+'les:list',async()=>_0x2a7fa4[_0x1eead3(0x499)]()),_0x5776a7('app:gene'+'rated-fi'+'les:list'+_0x1eead3(0x241)+'ion',async(_0x49c7fe,_0x508348)=>_0x2a7fa4[_0x1eead3(0x33d)+'ssion'](String(_0x508348||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x310)+'rt',async(_0x2d2b5f,_0x3a79d8={})=>_0x2a7fa4['upsert'](_0x3a79d8)),_0x5776a7(_0x1eead3(0x35b)+'rated-fi'+'les:hide',async(_0x6f3d5b,_0xb1157a)=>_0x2a7fa4[_0x1eead3(0x2b3)](String(_0xb1157a||''))),_0x5776a7(_0x1eead3(0x35b)+'rated-fi'+'les:hide'+_0x1eead3(0x241)+_0x1eead3(0x4f6),async(_0x7e7ebe,_0x14e179)=>_0x2a7fa4[_0x1eead3(0x342)+_0x1eead3(0x2ad)](String(_0x14e179||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x26c)+'te',async(_0x22d025,_0x396a50)=>_0x2a7fa4['deleteFi'+'le'](String(_0x396a50||''))),_0x5776a7(_0x1eead3(0x35b)+_0x1eead3(0x1c8)+_0x1eead3(0x26c)+_0x1eead3(0x359)+'e',async(_0x2cf8a5,_0x5a5bf1=[])=>_0x2a7fa4[_0x1eead3(0x2f8)+'tate'](_0x5a5bf1)),_0x5776a7('app:gene'+_0x1eead3(0x1c8)+_0x1eead3(0x4ce)+'al',async(_0x25bef6,_0x2670b7)=>revealPathInFolder(_0x2670b7)),_0x5776a7('artifact'+_0x1eead3(0x29a),async(_0x5cf9eb,_0x5748d2={})=>{const _0x2f59ad=_0x1eead3,_0x2344d0=_0x5748d2&&typeof _0x5748d2===_0x2f59ad(0x18c)&&_0x2f59ad(0x23c)+'ey'in _0x5748d2?String(_0x5748d2[_0x2f59ad(0x23c)+'ey']||''):'';return _0x2344d0?_0x2a7fa4[_0x2f59ad(0x33d)+'ssion'](_0x2344d0):_0x2a7fa4[_0x2f59ad(0x499)]();}),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x49e),async(_0xafda46,_0x5d3d3b={})=>_0x2a7fa4[_0x1eead3(0x193)](_0x5d3d3b)),_0x5776a7('artifact'+_0x1eead3(0x337),async(_0x1a874e,_0x2f6d28={})=>_0x2a7fa4[_0x1eead3(0x2b3)](String(_0x2f6d28['id']||_0x2f6d28||''))),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x32f),async(_0x3c489c,_0x83d373={})=>_0x2a7fa4['deleteFi'+'le'](String(_0x83d373['id']||_0x83d373||''))),_0x5776a7(_0x1eead3(0x16c)+'s:delete'+_0x1eead3(0x1fb),async(_0x10ce14,_0x2d42bd={})=>_0x2a7fa4[_0x1eead3(0x2f8)+_0x1eead3(0x4da)](_0x2d42bd['paths']||_0x2d42bd)),_0x5776a7(_0x1eead3(0x16c)+_0x1eead3(0x3f8),async(_0x1d481d,_0x52665c={})=>{const _0x18c821=_0x1eead3,_0x561b4a=typeof _0x52665c===_0x18c821(0x40e)?_0x52665c:_0x52665c[_0x18c821(0x4ad)]||_0x52665c[_0x18c821(0x410)];return revealPathInFolder(_0x561b4a);});const _0x2b0730=createPreferencesStore({'stateDir':configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)](),'storeFile':_0x1eead3(0x476)+'preferen'+_0x1eead3(0x1b2)}),_0x32d8b1=await _0x2b0730[_0x1eead3(0x308)](_0x1eead3(0x428)+_0x1eead3(0x3bc),configController['paths'][_0x1eead3(0x177)]),_0x4976dd=setShellLoggerLevel(_0x32d8b1);setRuntimeLoggerLevel(_0x32d8b1),mainLogger?.[_0x1eead3(0x448)](_0x1eead3(0x144)+'g\x20level\x20'+_0x1eead3(0x153)+'zed',{'level':_0x4976dd,'configuredLevel':configController[_0x1eead3(0x39b)]['logLevel'],'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),_0x5776a7(_0x1eead3(0x174)+_0x1eead3(0x497)+'se',async()=>_0x2b0730[_0x1eead3(0x308)](_0x1eead3(0x299)+_0x1eead3(0x170)+'se',![])),_0x5776a7('app:tray'+_0x1eead3(0x1be)+'se',async(_0x3e9b51,_0x395f0e)=>_0x2b0730[_0x1eead3(0x39a)](_0x1eead3(0x299)+'rayOnClo'+'se',_0x395f0e===!![])),_0x5776a7(_0x1eead3(0x4e8)+_0x1eead3(0x498),async()=>({'level':getShellLoggerLevel(configController[_0x1eead3(0x39b)]),'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)})),_0x5776a7(_0x1eead3(0x367)+_0x1eead3(0x498),async(_0x29ad32,_0x52e4fe={})=>{const _0x269f98=_0x1eead3,_0x2c3e5b=normalizeRequestedLogLevel(typeof _0x52e4fe===_0x269f98(0x40e)?_0x52e4fe:_0x52e4fe[_0x269f98(0x4bb)]);await _0x2b0730['set'](_0x269f98(0x428)+_0x269f98(0x3bc),_0x2c3e5b);const _0xf1dbc7=setShellLoggerLevel(_0x2c3e5b);return setRuntimeLoggerLevel(_0x2c3e5b),await writeMainAuditLog(_0x269f98(0x144)+_0x269f98(0x3d0)+_0x269f98(0x483),{'requestedLevel':_0x2c3e5b,'level':_0xf1dbc7,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)}),{'ok':!![],'level':_0xf1dbc7,'overriddenByEnv':Boolean(process.env.WUJIE_SHELL_LOG_LEVEL)};}),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x5776a7,'sep':sep,'stateDir':configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x5776a7,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x5776a7,'modelHandlers':{'saveCustomModel':_0xad9edb=>_0xab79f1()[_0x1eead3(0x4f8)]['saveCust'+'omModel'](_0xad9edb),'deleteCustomModel':_0x193390=>_0xab79f1()['models']['deleteCu'+_0x1eead3(0x451)+'l'](_0x193390)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x22fd44)=>configController['updateOp'+_0x1eead3(0x128)+_0x1eead3(0x175)](..._0x22fd44),'setPluginConfig':_0x91dc56=>configController[_0x1eead3(0x370)+_0x1eead3(0x458)+_0x1eead3(0x2ba)](_0x91dc56),'setChannelConfig':_0x16b2e3=>configController[_0x1eead3(0x370)+_0x1eead3(0x4c3)+_0x1eead3(0x294)](_0x16b2e3),'deleteChannelConfig':_0x5cd593=>configController[_0x1eead3(0x361)+_0x1eead3(0x1de)+_0x1eead3(0x242)+_0x1eead3(0x1d3)](_0x5cd593),'setSkillEntry':_0x34accc=>configController[_0x1eead3(0x370)+'lawSkill'+_0x1eead3(0x440)](_0x34accc),'deleteSkillEntry':_0x334413=>configController[_0x1eead3(0x361)+_0x1eead3(0x1f9)+_0x1eead3(0x2e0)](_0x334413),'setMcpServer':_0xf6453b=>configController[_0x1eead3(0x370)+'lawMcpSe'+_0x1eead3(0x335)](_0xf6453b),'deleteMcpServer':_0x48f84c=>configController[_0x1eead3(0x361)+_0x1eead3(0x125)+_0x1eead3(0x182)](_0x48f84c)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x5776a7(_0x1eead3(0x358)+_0x1eead3(0x419)+_0x1eead3(0x3db),async()=>connectorController['listImCh'+_0x1eead3(0x242)+_0x1eead3(0x1ca)]()),_0x5776a7(_0x1eead3(0x358)+_0x1eead3(0x419)+_0x1eead3(0x28d)+'e',async(_0x403caf,_0x45b95f={})=>connectorController[_0x1eead3(0x31e)+_0x1eead3(0x383)+_0x1eead3(0x2db)](_0x45b95f)),_0x5776a7(_0x1eead3(0x358)+'m-channe'+_0x1eead3(0x4d4)+'nabled',async(_0xdf616e,_0xad12ee={})=>connectorController[_0x1eead3(0x271)+_0x1eead3(0x3d8)+'led'](_0xad12ee)),_0x5776a7('config:c'+_0x1eead3(0x1e3)+_0x1eead3(0x11b),async(_0x39c565,_0x356f4b={})=>{const _0x42a845=_0x1eead3,_0x456392=String(_0x356f4b['channelI'+'d']||_0x356f4b[_0x42a845(0x376)]?.['channelI'+'d']||_0x356f4b[_0x42a845(0x376)]?.['id']||'');if(!_0x456392)throw new Error(_0x42a845(0x3b3)+_0x42a845(0x31d)+'uired');const _0x2cbd89=_0x356f4b[_0x42a845(0x376)]||_0x356f4b,_0x13bfa9={'feishu':connectorController[_0x42a845(0x4b6)+'huChanne'+_0x42a845(0x155)],'qqbot':connectorController[_0x42a845(0x4a6)+'tChannel'+'Config'],'wecom':connectorController[_0x42a845(0x461)+_0x42a845(0x362)+_0x42a845(0x213)],'qq_mail':connectorController[_0x42a845(0x320)+_0x42a845(0x44d)+_0x42a845(0x198)+'g'],'netease_mail':connectorController[_0x42a845(0x1af)+'aseMailC'+'onnector'+_0x42a845(0x213)],'tencent_exmail':connectorController[_0x42a845(0x48a)+'entExmai'+'lConnect'+_0x42a845(0x357)],'feishu_doc':connectorController['saveFeis'+_0x42a845(0x2b4)+_0x42a845(0x4ab)+_0x42a845(0x175)],'tencent_docs':connectorController[_0x42a845(0x48a)+_0x42a845(0x4af)+_0x42a845(0x1e3)+_0x42a845(0x213)],'kdocs':connectorController[_0x42a845(0x167)+'sConnect'+_0x42a845(0x357)],'dingtalk_doc':connectorController['saveDing'+_0x42a845(0x332)+'onnector'+_0x42a845(0x213)]},_0x4c79c2=_0x13bfa9[_0x456392];if(!_0x4c79c2)throw new Error(_0x42a845(0x25f)+_0x42a845(0x235)+_0x42a845(0x3a2)+_0x456392);return _0x4c79c2(_0x2cbd89);}),_0x5776a7('config:c'+_0x1eead3(0x1e3)+_0x1eead3(0x13b)+'ishu-cha'+_0x1eead3(0x3a7),async(_0x43d9fd,_0x1aede8={})=>connectorController[_0x1eead3(0x4b6)+_0x1eead3(0x4f9)+'lConfig'](_0x1aede8)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x466)+_0x1eead3(0x122)+_0x1eead3(0x30a),async(_0x5eee67,_0x5156ce={})=>connectorController[_0x1eead3(0x4a6)+'tChannel'+'Config'](_0x5156ce)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x423)+'com-chan'+_0x1eead3(0x30a),async(_0x3cdbcc,_0x418edb={})=>connectorController[_0x1eead3(0x461)+_0x1eead3(0x362)+_0x1eead3(0x213)](_0x418edb)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+':save-qq'+'-mail',async(_0x15f113,_0x2062b5={})=>connectorController[_0x1eead3(0x320)+_0x1eead3(0x44d)+'torConfi'+'g'](_0x2062b5)),_0x5776a7('config:c'+'onnector'+_0x1eead3(0x30c)+_0x1eead3(0x200)+'il',async(_0x161572,_0x2baf2b={})=>connectorController[_0x1eead3(0x1af)+_0x1eead3(0x25d)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x2baf2b)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x35d)+_0x1eead3(0x164)+_0x1eead3(0x396),async(_0x5a0dce,_0x4c7a17={})=>connectorController['saveTenc'+'entExmai'+_0x1eead3(0x41c)+_0x1eead3(0x357)](_0x4c7a17)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x13b)+_0x1eead3(0x218),async(_0x1fb9da,_0x3d4fe9={})=>connectorController[_0x1eead3(0x4b6)+_0x1eead3(0x2b4)+_0x1eead3(0x4ab)+_0x1eead3(0x175)](_0x3d4fe9)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x35d)+_0x1eead3(0x3f6)+'cs',async(_0x1d61e1,_0x1e3eef={})=>connectorController[_0x1eead3(0x48a)+_0x1eead3(0x4af)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x1e3eef)),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x115)+_0x1eead3(0x117),async(_0x412483,_0x1e00b9={})=>connectorController[_0x1eead3(0x167)+_0x1eead3(0x25b)+_0x1eead3(0x357)](_0x1e00b9)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x44a)+'ngtalk-d'+'oc',async(_0xd60e6d,_0x2c4c55={})=>connectorController['saveDing'+_0x1eead3(0x332)+_0x1eead3(0x1e3)+_0x1eead3(0x213)](_0x2c4c55)),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+'-session'+':start',async(_0x46ebb8,_0x21fb1e={})=>{const _0xea5c1b=_0x1eead3,_0x59620b=String(_0x21fb1e[_0xea5c1b(0x3b3)+'d']||_0x21fb1e['type']||'');if(_0x59620b===_0xea5c1b(0x1b8))return connectorController[_0xea5c1b(0x1dc)+_0xea5c1b(0x42b)+'nectSess'+_0xea5c1b(0x4f6)]();if(_0x59620b===_0xea5c1b(0x209)+'oc')return connectorController[_0xea5c1b(0x4e6)+_0xea5c1b(0x2ed)+_0xea5c1b(0x1b4)+_0xea5c1b(0x4f5)]();if(_0x59620b===_0xea5c1b(0x2e8))return connectorController[_0xea5c1b(0x4e6)+'shuRegis'+_0xea5c1b(0x472)+_0xea5c1b(0x239)](_0x21fb1e);if(_0x59620b==='openclaw'+_0xea5c1b(0x3c1)||_0x59620b===_0xea5c1b(0x395))return connectorController[_0xea5c1b(0x18d)+_0xea5c1b(0x432)+_0xea5c1b(0x270)+'n']({'gatewayPort':_0xab79f1()['gatewayP'+_0xea5c1b(0x263)](),'gatewayToken':_0xab79f1()[_0xea5c1b(0x2df)+_0xea5c1b(0x2e2)]()});throw new Error(_0xea5c1b(0x25f)+'ted\x20conn'+'ector\x20se'+'ssion:\x20'+(_0x59620b||_0xea5c1b(0x194)));}),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x1b0)+_0x1eead3(0x48c),async(_0x14356d,_0x11b6b8={})=>{const _0x4b7689=_0x1eead3,_0x288c17=String(_0x11b6b8[_0x4b7689(0x3b3)+'d']||_0x11b6b8[_0x4b7689(0x2e6)]||'');if(_0x288c17===_0x4b7689(0x1b8))return connectorController[_0x4b7689(0x186)+'CliConne'+'ctStatus'](_0x11b6b8);if(_0x288c17===_0x4b7689(0x209)+'oc')return connectorController['getFeish'+_0x4b7689(0x116)+_0x4b7689(0x2a6)+_0x4b7689(0x474)](_0x11b6b8);if(_0x288c17===_0x4b7689(0x2e8))return connectorController['getFeish'+'uRegistr'+_0x4b7689(0x28e)+'tus'](_0x11b6b8);throw new Error(_0x4b7689(0x25f)+_0x4b7689(0x235)+_0x4b7689(0x1ea)+_0x4b7689(0x1a4)+(_0x288c17||'unknown'));}),_0x5776a7(_0x1eead3(0x401)+'onnector'+_0x1eead3(0x1b0)+':cancel',async(_0x142ca2,_0x4c7c9b={})=>{const _0x3e38ef=_0x1eead3,_0x2e7d71=String(_0x4c7c9b[_0x3e38ef(0x3b3)+'d']||_0x4c7c9b[_0x3e38ef(0x2e6)]||'');if(_0x2e7d71===_0x3e38ef(0x1b8))return connectorController[_0x3e38ef(0x203)+_0x3e38ef(0x16d)+'nnectSes'+'sion'](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x209)+'oc')return connectorController[_0x3e38ef(0x4e4)+_0x3e38ef(0x43d)+_0x3e38ef(0x2f5)+_0x3e38ef(0x3c2)](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x2e8))return connectorController[_0x3e38ef(0x4e4)+_0x3e38ef(0x40d)+_0x3e38ef(0x2d0)+_0x3e38ef(0x4f5)](_0x4c7c9b);if(_0x2e7d71===_0x3e38ef(0x4e5)+_0x3e38ef(0x3c1)||_0x2e7d71===_0x3e38ef(0x395))return connectorController[_0x3e38ef(0x205)+'chatChan'+_0x3e38ef(0x13c)+'on']();return{'ok':!![]};}),_0x5776a7(_0x1eead3(0x401)+_0x1eead3(0x1e3)+_0x1eead3(0x1b0)+':complet'+'e',async(_0x350f57,_0x220650={})=>{const _0x3aa236=_0x1eead3,_0x5cdb0c=String(_0x220650[_0x3aa236(0x3b3)+'d']||_0x220650[_0x3aa236(0x2e6)]||'');if(_0x5cdb0c===_0x3aa236(0x209)+'oc')return connectorController[_0x3aa236(0x26d)+_0x3aa236(0x45d)+'cCliConn'+_0x3aa236(0x2a8)+'on'](_0x220650);throw new Error('Unsuppor'+_0x3aa236(0x235)+'ector\x20se'+'ssion:\x20'+(_0x5cdb0c||'unknown'));}),_0x5776a7(_0x1eead3(0x129)+_0x1eead3(0x187),()=>connectorController[_0x1eead3(0x4be)+'igSnapsh'+'ot']());const _0xd811cf=_0x51b10f=>{const _0x3f0798=_0x1eead3,_0x952570=_0x51b10f['agents']&&typeof _0x51b10f[_0x3f0798(0x334)]==='object'?_0x51b10f[_0x3f0798(0x334)]:{};return Array['isArray'](_0x952570[_0x3f0798(0x499)])?_0x952570[_0x3f0798(0x499)]:[];},_0x2be380=_0x48a4cd=>{const _0x286382=_0x1eead3,_0x5e09c7=typeof _0x48a4cd===_0x286382(0x40e)?_0x48a4cd[_0x286382(0x36b)]():'',_0x5ded20=_0x5e09c7[_0x286382(0x3a1)](/^agent:([^:]+):/);return _0x5ded20?.[0x1]||'';},_0x8e0781=(_0xf4366b={},_0x209d5d=[])=>{const _0x391ced=_0x1eead3,_0x308259=Array[_0x391ced(0x496)](_0xf4366b[_0x391ced(0x3d6)])?_0xf4366b['groups']:[],_0x34dd50=Array[_0x391ced(0x496)](_0xf4366b['agents'])?_0xf4366b[_0x391ced(0x334)]:Array[_0x391ced(0x496)](_0xf4366b[_0x391ced(0x499)])?_0xf4366b[_0x391ced(0x499)]:_0x308259[_0x391ced(0x1fd)](_0x215b16=>_0x215b16?.[_0x391ced(0x40c)])[_0x391ced(0x1d5)](Boolean),_0x4846fd=Array[_0x391ced(0x496)](_0x209d5d)?_0x209d5d:[];return _0x34dd50['map'](_0x502178=>{const _0xddea39=_0x391ced,_0x48343f=String(_0x502178?.['id']||_0x502178?.[_0xddea39(0x31f)]||'')['trim'](),_0x336fdc=_0x308259['find'](_0x5f4330=>{const _0x2bdeaf=_0xddea39,_0x241d0e=String(_0x5f4330?.[_0x2bdeaf(0x40c)]?.['id']||_0x5f4330?.['agent']?.['agentId']||'')[_0x2bdeaf(0x36b)]();return _0x241d0e===_0x48343f;});return{..._0x336fdc&&typeof _0x336fdc===_0xddea39(0x18c)?_0x336fdc:{},'agent':_0x502178,'sessions':_0x48343f?_0x4846fd[_0xddea39(0x1d5)](_0x4abe95=>{const _0x2aa691=_0xddea39,_0x77a538=String(_0x4abe95?.[_0x2aa691(0x31f)]||_0x4abe95?.[_0x2aa691(0x415)]||_0x4abe95?.['agent']?.['id']||_0x2be380(_0x4abe95?.[_0x2aa691(0x188)])||'')[_0x2aa691(0x36b)]();return _0x77a538?_0x77a538===_0x48343f:_0x48343f==='main';}):[]};});};_0x5776a7('app:upda'+_0x1eead3(0x1c6)+_0x1eead3(0x4da),async()=>updateController?.[_0x1eead3(0x489)]()),_0x5776a7(_0x1eead3(0x20e)+_0x1eead3(0x4ca),async()=>updateController?.[_0x1eead3(0x255)+_0x1eead3(0x3ba)]()),_0x5776a7('app:upda'+_0x1eead3(0x2dc)+'oad',async()=>updateController?.[_0x1eead3(0x190)+_0x1eead3(0x3c7)]()),_0x5776a7(_0x1eead3(0x20e)+_0x1eead3(0x413)+_0x1eead3(0x145)+_0x1eead3(0x426),async()=>updateController?.[_0x1eead3(0x12a)+'nstall']()),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x132),async(_0x182d15,_0x34f5ce={})=>{const _0x34fcdc=_0x1eead3,_0x49b782=await dialog[_0x34fcdc(0x42d)+_0x34fcdc(0x224)](BrowserWindow[_0x34fcdc(0x382)+_0x34fcdc(0x3c9)](_0x182d15['sender'])??mainWindow,{'properties':['openFile',..._0x34f5ce?.[_0x34fcdc(0x273)]!==0x1?[_0x34fcdc(0x38d)+_0x34fcdc(0x216)]:[]],'filters':_0x34f5ce?.[_0x34fcdc(0x268)+_0x34fcdc(0x274)+'s']?[{'name':'Custom','extensions':_0x34f5ce[_0x34fcdc(0x268)+_0x34fcdc(0x274)+'s']}]:undefined});return _0x49b782[_0x34fcdc(0x27c)+'s'][_0x34fcdc(0x1fd)](_0x53865a=>({'path':_0x53865a,'name':_0x53865a['split'](/[\\/]/)[_0x34fcdc(0x441)]()||_0x53865a}));}),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x266)+_0x1eead3(0x2e5),async(_0x5e487a,_0x1e234c={})=>{const _0xc49b6e=_0x1eead3,_0x482e7c=String(_0x1e234c[_0xc49b6e(0x261)+'th']||'');if(!_0x482e7c)return{'success':![],'error':_0xc49b6e(0x261)+_0xc49b6e(0x192)+'quired'};const _0x36d8ce=await dialog[_0xc49b6e(0x219)+_0xc49b6e(0x224)](mainWindow,{'defaultPath':_0x1e234c['defaultF'+_0xc49b6e(0x150)]||_0x482e7c['split'](/[\\/]/)[_0xc49b6e(0x441)]()});if(_0x36d8ce[_0xc49b6e(0x37e)]||!_0x36d8ce[_0xc49b6e(0x27c)])return{'success':![],'canceled':!![]};const {copyFile:_0x2695fe}=await import(_0xc49b6e(0x158)+_0xc49b6e(0x285));return await _0x2695fe(_0x482e7c,_0x36d8ce[_0xc49b6e(0x27c)]),{'success':!![],'filePath':_0x36d8ce['filePath']};}),_0x5776a7(_0x1eead3(0x3fd)+_0x1eead3(0x20a)+_0x1eead3(0x26e),async(_0xd58527,_0x1681bb)=>{return clipboard['writeTex'+'t'](String(_0x1681bb??'')),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x4dc)+_0x1eead3(0x180)+'rt',async()=>{const _0x1561ac=_0x1eead3;return app[_0x1561ac(0x267)](),app[_0x1561ac(0x318)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x135)+_0x1eead3(0x1b3)+_0x1eead3(0x2da),_0x576756=>Boolean(BrowserWindow[_0x1eead3(0x382)+_0x1eead3(0x3c9)](_0x576756[_0x1eead3(0x15b)])?.[_0x1eead3(0x36a)+_0x1eead3(0x2da)]())),_0x5776a7(_0x1eead3(0x445)+_0x1eead3(0x178),async(_0x27e9f8,_0x29b9ad)=>{const _0x17f494=_0x1eead3;return app[_0x17f494(0x1ff)+'ItemSett'+_0x17f494(0x2a0)]({'openAtLogin':_0x29b9ad===!![]}),{'ok':!![],'enabled':_0x29b9ad===!![]};}),_0x5776a7(_0x1eead3(0x445)+_0x1eead3(0x4cd),async()=>app[_0x1eead3(0x2ac)+_0x1eead3(0x139)+'ings']()[_0x1eead3(0x3fc)+_0x1eead3(0x244)]),_0x5776a7(_0x1eead3(0x217)+_0x1eead3(0x37a)+_0x1eead3(0x44b),async _0x450590=>{const _0x4811c6=_0x1eead3,_0xd2d11e=await dialog[_0x4811c6(0x42d)+_0x4811c6(0x224)](BrowserWindow[_0x4811c6(0x382)+'ontents'](_0x450590[_0x4811c6(0x15b)])??mainWindow,{'properties':[_0x4811c6(0x30f)+_0x4811c6(0x4d5)]});return _0xd2d11e[_0x4811c6(0x27c)+'s'][0x0]||'';}),_0x5776a7('app:syst'+_0x1eead3(0x20d)+'folder',async(_0x4ead5d,_0x32300e)=>{const _0x37a026=_0x1eead3,_0x5557db=await shell[_0x37a026(0x3d3)](String(_0x32300e||''));return _0x5557db||'';}),_0x5776a7('openclaw'+_0x1eead3(0x156)+_0x1eead3(0x3f5),async()=>_0xab79f1()[_0x1eead3(0x2df)+_0x1eead3(0x2e2)]()),_0x5776a7(_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x2ca),async()=>_0xab79f1()[_0x1eead3(0x163)+_0x1eead3(0x263)]()),_0x5776a7('openclaw'+_0x1eead3(0x3b6)+'e',async(_0x403be7,_0x2a6585=[])=>{const _0x4926b3=_0x1eead3,_0x298be4=await runClawOnce(shellConfig[_0x4926b3(0x22f)+_0x4926b3(0x326)],Array[_0x4926b3(0x496)](_0x2a6585)?_0x2a6585:[]);return{'ok':_0x298be4[_0x4926b3(0x323)]===0x0,..._0x298be4};});const _0x1f74f1=configController[_0x1eead3(0x137)+_0x1eead3(0x3ca)]();sessionSqliteStore=ensureSessionSqliteStore();const _0x2696a1=createAgentSessionsMapStore({'stateDir':_0x1f74f1});_0x5776a7(_0x1eead3(0x2ea)+':fork',async(_0x3bb3a8,_0x19205b={})=>{const _0x4b5533=_0x1eead3,_0x30dd4e=_0x19205b&&typeof _0x19205b===_0x4b5533(0x18c)?_0x19205b:{},_0x1830d2=_0x30dd4e[_0x4b5533(0x269)+'ssionKey']||_0x30dd4e[_0x4b5533(0x23c)+'ey'],_0x61f736=await _0xab79f1()[_0x4b5533(0x2ea)]['create']({..._0x30dd4e,'parentSessionKey':_0x1830d2}),_0x352248=String(_0x61f736?.[_0x4b5533(0x188)]||'')[_0x4b5533(0x36b)](),_0x5e7658=String(_0x61f736?.[_0x4b5533(0x2a3)+'d']||'')['trim']();return _0x352248&&_0x5e7658&&await _0x2696a1[_0x4b5533(0x193)]({'sessionKey':_0x352248,'sessionId':_0x5e7658,'sourceSessionKey':_0x30dd4e[_0x4b5533(0x456)+'ssionKey']||_0x1830d2,...typeof _0x30dd4e[_0x4b5533(0x353)+_0x4b5533(0x148)]==='number'?{'keepUntilTs':_0x30dd4e[_0x4b5533(0x353)+_0x4b5533(0x148)]}:{},...typeof _0x30dd4e[_0x4b5533(0x480)+'le']==='string'?{'cutoffRole':_0x30dd4e[_0x4b5533(0x480)+'le']}:{},...typeof _0x30dd4e['cutoffTe'+'xt']===_0x4b5533(0x40e)?{'cutoffText':_0x30dd4e[_0x4b5533(0x25a)+'xt']}:{}}),_0x61f736;}),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x220)+_0x1eead3(0x13a),async(_0x2e766c,_0x3554dc={})=>_0x2696a1[_0x1eead3(0x308)](_0x3554dc)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x220)+_0x1eead3(0x1e9)+'t',async(_0x5a2620,_0x4a3a3b={})=>_0x2696a1[_0x1eead3(0x193)](_0x4a3a3b)),_0x5776a7(_0x1eead3(0x2ea)+':agent-m'+_0x1eead3(0x39f),async(_0xf7fd86,_0x31da2c={})=>{const _0x1d0a39=_0x1eead3,_0x53d799=String(_0x31da2c[_0x1d0a39(0x23c)+'ey']||'')[_0x1d0a39(0x36b)]();if(!_0x53d799)return null;return await sessionSqliteStore[_0x1d0a39(0x379)+_0x1d0a39(0x13f)](_0x53d799);}),_0x5776a7(_0x1eead3(0x112)+'reate',async(_0x59c241,_0x10fc89={})=>{const _0x27a868=_0x1eead3,_0x5f5d24=await readMutableConfig(),_0x230ec0=_0x5f5d24[_0x27a868(0x334)]&&typeof _0x5f5d24['agents']==='object'?_0x5f5d24[_0x27a868(0x334)]:{},_0x69b8f8=_0xd811cf(_0x5f5d24),_0x5c035a=String(_0x10fc89['id']||_0x10fc89['name']||_0x27a868(0x110)+Date['now']())['trim']()[_0x27a868(0x3b9)](/\s+/g,'-'),_0x99274c={'id':_0x5c035a,'name':String(_0x10fc89['name']||_0x5c035a),..._0x10fc89[_0x27a868(0x488)+'e']?{'workspace':String(_0x10fc89[_0x27a868(0x488)+'e'])}:{},..._0x10fc89[_0x27a868(0x1ce)]?{'model':_0x10fc89[_0x27a868(0x1ce)]}:{},..._0x10fc89[_0x27a868(0x2f3)]?{'emoji':_0x10fc89[_0x27a868(0x2f3)]}:{},..._0x10fc89[_0x27a868(0x181)]?{'avatar':_0x10fc89[_0x27a868(0x181)]}:{},...Array[_0x27a868(0x496)](_0x10fc89[_0x27a868(0x2d7)])?{'skills':_0x10fc89['skills']}:{}};if(_0x69b8f8[_0x27a868(0x1f0)](_0xe2bd05=>_0xe2bd05?.['id']===_0x5c035a))throw new Error('agent\x20al'+_0x27a868(0x1c2)+_0x27a868(0x30b));return _0x230ec0[_0x27a868(0x499)]=[..._0x69b8f8,_0x99274c],_0x5f5d24[_0x27a868(0x334)]=_0x230ec0,await _0x2c1ef4(_0x5f5d24,'agent\x20cr'+_0x27a868(0x245)),{'ok':!![],'agent':_0x99274c};}),_0x5776a7(_0x1eead3(0x477)+_0x1eead3(0x2be),async(_0x251671,_0x3b2f0a={})=>{const _0x48d7aa=_0x1eead3,_0xf07129=String(_0x3b2f0a['id']||_0x3b2f0a['agentId']||'')['trim']();if(!_0xf07129)throw new Error(_0x48d7aa(0x1fc)+_0x48d7aa(0x366)+_0x48d7aa(0x371));const _0x4647b1=await readMutableConfig(),_0x1920e0=_0x4647b1[_0x48d7aa(0x334)]&&typeof _0x4647b1['agents']===_0x48d7aa(0x18c)?_0x4647b1[_0x48d7aa(0x334)]:{},_0x96f315=_0xd811cf(_0x4647b1),_0xda53d0=_0x96f315['map'](_0x3857ac=>_0x3857ac?.['id']===_0xf07129?{..._0x3857ac,..._0x3b2f0a,'id':_0xf07129}:_0x3857ac);return _0x1920e0[_0x48d7aa(0x499)]=_0xda53d0,_0x4647b1[_0x48d7aa(0x334)]=_0x1920e0,await _0x2c1ef4(_0x4647b1,_0x48d7aa(0x29e)+_0x48d7aa(0x2b7)),{'ok':!![],'agent':_0xda53d0[_0x48d7aa(0x189)](_0x2eb85e=>_0x2eb85e?.['id']===_0xf07129)||null};}),_0x5776a7(_0x1eead3(0x354)+'elete',async(_0x65bb97,_0x2fb9d6={})=>{const _0x471bd0=_0x1eead3,_0x37bef7=String(_0x2fb9d6['id']||_0x2fb9d6[_0x471bd0(0x31f)]||'')['trim']();if(!_0x37bef7)throw new Error('agent\x20id'+'\x20is\x20requ'+_0x471bd0(0x371));const _0x3e73c2=await readMutableConfig(),_0x1d5873=_0x3e73c2[_0x471bd0(0x334)]&&typeof _0x3e73c2[_0x471bd0(0x334)]==='object'?_0x3e73c2[_0x471bd0(0x334)]:{};return _0x1d5873[_0x471bd0(0x499)]=_0xd811cf(_0x3e73c2)[_0x471bd0(0x1d5)](_0x1743a3=>_0x1743a3?.['id']!==_0x37bef7),_0x3e73c2[_0x471bd0(0x334)]=_0x1d5873,await _0x2c1ef4(_0x3e73c2,_0x471bd0(0x4c1)+_0x471bd0(0x484)),{'ok':!![],'agentId':_0x37bef7};}),_0x5776a7(_0x1eead3(0x34a)+_0x1eead3(0x1aa)+_0x1eead3(0x2b9)+'t',async(_0x27454b,_0x2fe27c={})=>{const _0x3da45d=_0x1eead3,[_0x11168a,_0x5a1242]=await Promise[_0x3da45d(0x426)]([_0xab79f1()[_0x3da45d(0x334)][_0x3da45d(0x499)](),ensureSessionDataService()[_0x3da45d(0x162)+'aries'](_0x2fe27c)[_0x3da45d(0x317)](()=>({'sessions':[]}))]),_0x262456=Array[_0x3da45d(0x496)](_0x5a1242[_0x3da45d(0x2ea)])?_0x5a1242['sessions']:[];return{..._0x11168a,'sessions':_0x262456,'groups':_0x8e0781(_0x11168a,_0x262456)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x1eead3(0x137)+'tateDir'](),_0x1eead3(0x488)+'e'),'emitData':_0x8da1f4=>broadcast(_0x1eead3(0x438)+'-data',_0x8da1f4),'emitExit':_0x30510b=>broadcast(_0x1eead3(0x438)+_0x1eead3(0x3ce),_0x30510b)}),_0x5776a7('terminal'+':create',async(_0x4e4c6c,_0x18c8d4={})=>terminalManager[_0x1eead3(0x343)](_0x18c8d4)),_0x5776a7(_0x1eead3(0x438)+':input',async(_0x16acc5,_0x38546e={})=>terminalManager['input'](_0x38546e)),_0x5776a7('terminal'+_0x1eead3(0x2af),async(_0x135d4b,_0x425907={})=>terminalManager['resize'](_0x425907)),_0x5776a7(_0x1eead3(0x438)+':close',async(_0x3997d3,_0x2d5908={})=>terminalManager[_0x1eead3(0x1ef)](_0x2d5908)),_0x5776a7('plugins:'+_0x1eead3(0x499),async()=>{const _0x396bd0=_0x1eead3,_0x4f423c=gatewayController?.['runtimeI'+'nfo']?.()||{};return _0x4f423c[_0x396bd0(0x191)]||[];}),_0x5776a7('plugins:'+_0x1eead3(0x405)+'ig',async(_0x1dfc4f,_0x53c6dc={})=>{const _0x5eacd7=String(_0x53c6dc['pluginId']||_0x53c6dc['id']||''),_0x3e3ec5=await readMutableConfig(),_0x44751b=_0x3e3ec5['plugins']?.['entries']||{};return _0x5eacd7?_0x44751b[_0x5eacd7]||null:_0x44751b;}),_0x5776a7(_0x1eead3(0x404)+_0x1eead3(0x13d)+'onfig',async(_0x105ee6,_0x278262={})=>{const _0x109e9e=_0x1eead3,_0x49b888=String(_0x278262[_0x109e9e(0x487)]||_0x278262['id']||'');if(!_0x49b888)throw new Error(_0x109e9e(0x487)+_0x109e9e(0x366)+_0x109e9e(0x371));const _0x9a1eeb=await readMutableConfig(),_0x29c6a9=_0x9a1eeb[_0x109e9e(0x191)]&&typeof _0x9a1eeb[_0x109e9e(0x191)]==='object'?_0x9a1eeb[_0x109e9e(0x191)]:{},_0x3f4a01=_0x29c6a9[_0x109e9e(0x3da)]&&typeof _0x29c6a9[_0x109e9e(0x3da)]==='object'?_0x29c6a9[_0x109e9e(0x3da)]:{};return _0x3f4a01[_0x49b888]={..._0x3f4a01[_0x49b888]||{},..._0x278262[_0x109e9e(0x475)]||_0x278262['patch']||{}},_0x29c6a9[_0x109e9e(0x3da)]=_0x3f4a01,_0x9a1eeb[_0x109e9e(0x191)]=_0x29c6a9,_0x2c1ef4(_0x9a1eeb,_0x109e9e(0x15d)+'onfig\x20up'+_0x109e9e(0x2b7));}),_0x5776a7(_0x1eead3(0x404)+'enable',async(_0x13cefd,_0x5de36d={})=>{const _0xdc7a75=_0x1eead3,_0xe456e3=String(_0x5de36d[_0xdc7a75(0x487)]||_0x5de36d['id']||'');if(!_0xe456e3)throw new Error(_0xdc7a75(0x487)+_0xdc7a75(0x366)+_0xdc7a75(0x371));const _0x5718b3=await readMutableConfig(),_0x4ba6b5=_0x5718b3[_0xdc7a75(0x191)]&&typeof _0x5718b3[_0xdc7a75(0x191)]==='object'?_0x5718b3[_0xdc7a75(0x191)]:{},_0xf034a0=_0x4ba6b5['entries']&&typeof _0x4ba6b5[_0xdc7a75(0x3da)]===_0xdc7a75(0x18c)?_0x4ba6b5[_0xdc7a75(0x3da)]:{};return _0xf034a0[_0xe456e3]={..._0xf034a0[_0xe456e3]||{},'enabled':!![]},_0x4ba6b5[_0xdc7a75(0x3da)]=_0xf034a0,_0x5718b3[_0xdc7a75(0x191)]=_0x4ba6b5,_0x2c1ef4(_0x5718b3,_0xdc7a75(0x46b)+_0xdc7a75(0x1bd));}),_0x5776a7(_0x1eead3(0x404)+'disable',async(_0x74be2,_0x6d3f89={})=>{const _0x5d517e=_0x1eead3,_0x1966ad=String(_0x6d3f89[_0x5d517e(0x487)]||_0x6d3f89['id']||'');if(!_0x1966ad)throw new Error(_0x5d517e(0x487)+'\x20is\x20requ'+_0x5d517e(0x371));const _0xe1d342=await readMutableConfig(),_0x58f03c=_0xe1d342[_0x5d517e(0x191)]&&typeof _0xe1d342[_0x5d517e(0x191)]===_0x5d517e(0x18c)?_0xe1d342[_0x5d517e(0x191)]:{},_0x307ae1=_0x58f03c['entries']&&typeof _0x58f03c[_0x5d517e(0x3da)]===_0x5d517e(0x18c)?_0x58f03c[_0x5d517e(0x3da)]:{};return _0x307ae1[_0x1966ad]={..._0x307ae1[_0x1966ad]||{},'enabled':![]},_0x58f03c[_0x5d517e(0x3da)]=_0x307ae1,_0xe1d342['plugins']=_0x58f03c,_0x2c1ef4(_0xe1d342,_0x5d517e(0x3cd)+_0x5d517e(0x464));}),_0x5776a7(_0x1eead3(0x404)+_0x1eead3(0x226),async(_0x294d4c,_0x1284c7={})=>({'plugins':await((async()=>{const _0x29eb51=_0x1eead3,_0x2b8ef4=gatewayController?.[_0x29eb51(0x306)+_0x29eb51(0x329)]?.()||{};if(!_0x1284c7?.[_0x29eb51(0x487)]&&!_0x1284c7?.['id'])return _0x2b8ef4['plugins']||[];const _0x4058c5=String(_0x1284c7[_0x29eb51(0x487)]||_0x1284c7['id']||'');return(_0x2b8ef4['plugins']||[])[_0x29eb51(0x1d5)](_0x3be427=>_0x3be427[_0x29eb51(0x487)]===_0x4058c5);})())})),_0x5776a7(_0x1eead3(0x455)+_0x1eead3(0x229),async(_0x2511ff,_0x48d121)=>({'ok':!![],'payload':_0x48d121})),_0x5776a7(_0x1eead3(0x17e)+_0x1eead3(0x19e)+'e',async(_0x160375,_0x5371c1)=>{const _0x24f7e0=_0x1eead3;return broadcast('tabs-com'+_0x24f7e0(0x14a),_0x5371c1),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x341)+_0x1eead3(0x201)+_0x1eead3(0x387),async()=>{const _0x761696=_0x1eead3;return broadcast(_0x761696(0x134)+_0x761696(0x387)+_0x761696(0x42a),{}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x37d)+_0x1eead3(0x4e9)+_0x1eead3(0x387),async(_0x18f8a7,_0x1b6f4a={})=>{const _0x4fd566=_0x1eead3;return broadcast('tabs-age'+_0x4fd566(0x387)+'-refresh'+'-request',_0x1b6f4a),{'ok':!![]};}),_0x5776a7('window:m'+_0x1eead3(0x27e),_0x132978=>{const _0x2443cf=_0x1eead3;return BrowserWindow[_0x2443cf(0x382)+_0x2443cf(0x3c9)](_0x132978[_0x2443cf(0x15b)])?.[_0x2443cf(0x1c9)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x1b1)+_0x1eead3(0x248)+_0x1eead3(0x449),_0x2e16d=>{const _0x3cae52=_0x1eead3,_0x458154=BrowserWindow[_0x3cae52(0x382)+_0x3cae52(0x3c9)](_0x2e16d[_0x3cae52(0x15b)]);if(!_0x458154)return{'isMaximized':![]};if(_0x458154[_0x3cae52(0x36a)+_0x3cae52(0x2da)]())_0x458154[_0x3cae52(0x22e)+'ze']();else _0x458154['maximize']();return{'isMaximized':_0x458154[_0x3cae52(0x36a)+_0x3cae52(0x2da)]()};}),_0x5776a7(_0x1eead3(0x3d1)+_0x1eead3(0x3b2),_0xe00c3e=>{const _0x5f4217=_0x1eead3;return BrowserWindow[_0x5f4217(0x382)+'ontents'](_0xe00c3e[_0x5f4217(0x15b)])?.[_0x5f4217(0x1ef)](),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x151)+_0x1eead3(0x2c9)+_0x1eead3(0x24f),()=>openDevToolsForActiveContext()),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x119)+'-info',()=>_0xab79f1()[_0x1eead3(0x306)+_0x1eead3(0x329)]()),_0x5776a7('openclaw'+_0x1eead3(0x156)+_0x1eead3(0x4ec),async()=>(await ensureGatewayControllerStarted())[_0x1eead3(0x169)+'s']()),ipcMain['on'](_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x3e3)+'snapshot',_0x5ce464=>{_0x5ce464['returnVa'+'lue']=gatewayController?.['getStatu'+'s']?.()??null;}),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x156)+'-restart',()=>_0xab79f1()[_0x1eead3(0x3dc)](_0x1eead3(0x14b)+_0x1eead3(0x450))),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x37c)+_0x1eead3(0x4a1)+_0x1eead3(0x1f3),async()=>({'loadingLifeCycle':_0x1eead3(0x39e),'message':'','updatedAt':new Date()[_0x1eead3(0x3de)+_0x1eead3(0x2ae)]()})),_0x5776a7(_0x1eead3(0x4e5)+':gateway'+_0x1eead3(0x1e5),(_0x31068e,_0x424329={})=>_0xab79f1()[_0x1eead3(0x38c)+_0x1eead3(0x437)](_0x424329?.[_0x1eead3(0x273)]??0xc8)),_0x5776a7(_0x1eead3(0x4e5)+_0x1eead3(0x165)+_0x1eead3(0x1fa)+_0x1eead3(0x1e2)+'n',(_0xfd1c30,_0x1389c4)=>_0xab79f1()['answerAs'+_0x1eead3(0x34e)+_0x1eead3(0x47c)](_0x1389c4)),_0x5776a7('openclaw'+_0x1eead3(0x1ed)+'i-window',async()=>{const _0x395ee3=_0x1eead3,_0x2f51af=join(resolveRuntimeRoot(shellConfig[_0x395ee3(0x22f)+_0x395ee3(0x326)]),_0x395ee3(0x32b),_0x395ee3(0x17f)+'w');if(!existsSync(_0x2f51af))throw new Error(_0x395ee3(0x4e5)+_0x395ee3(0x126)+'pper\x20not'+'\x20found:\x20'+_0x2f51af+(_0x395ee3(0x3cf)+_0x395ee3(0x3e7)+_0x395ee3(0x32d)+_0x395ee3(0x124)));const _0x129e92=join(app[_0x395ee3(0x42f)]('temp'),_0x395ee3(0x3cb)+_0x395ee3(0x386)+_0x395ee3(0x3a5));await writeFile(_0x129e92,_0x395ee3(0x43e)+_0x395ee3(0x3a3)+_0x2f51af[_0x395ee3(0x3b9)](/\\/g,'\x5c\x5c')[_0x395ee3(0x3b9)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x3bf9c3=spawn(_0x395ee3(0x2f4),['-a',_0x395ee3(0x265),_0x129e92],{'detached':!![],'stdio':_0x395ee3(0x4aa)});return _0x3bf9c3[_0x395ee3(0x4fb)](),{'ok':!![],'cliPath':_0x2f51af};}),_0x5776a7(_0x1eead3(0x4a8)+_0x1eead3(0x406),()=>_0xab79f1()[_0x1eead3(0x334)][_0x1eead3(0x499)]()),_0x5776a7('skills:s'+_0x1eead3(0x1e1),(_0x171ec3,_0x14768c)=>_0xab79f1()[_0x1eead3(0x2d7)][_0x1eead3(0x226)](_0x14768c)),_0x5776a7(_0x1eead3(0x2ea)+':create',(_0x413f11,_0x49ed36)=>_0xab79f1()[_0x1eead3(0x2ea)]['create'](_0x49ed36)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x149)+'t',(_0x4c78c2,_0x368122)=>ensureSessionDataService()[_0x1eead3(0x162)+'aries'](_0x368122)),_0x5776a7('sessions'+_0x1eead3(0x3b4),(_0x1b2b97,_0x34532f)=>ensureSessionDataService()['getSumma'+'ry'](_0x34532f)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x3e6)+'n',(_0x533f48,_0x201ced)=>ensureSessionDataService()[_0x1eead3(0x114)+_0x1eead3(0x4f6)](_0x201ced)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x2c3)+_0x1eead3(0x431)+'ot',(_0x55a4ce,_0x258617)=>ensureSessionDataService()[_0x1eead3(0x1d8)+_0x1eead3(0x4b0)](_0x258617)),_0x5776a7(_0x1eead3(0x2ea)+':artifac'+'ts',(_0xb3e417,_0x3dd64e)=>ensureSessionDataService()['getArtif'+_0x1eead3(0x2ce)](_0x3dd64e)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x3a6)+'es',(_0x1edcb8,_0x51aeca)=>ensureSessionDataService()['getProce'+_0x1eead3(0x14d)](_0x51aeca)),_0x5776a7('sessions'+':runtime'+_0x1eead3(0x322)+_0x1eead3(0x2b2),(_0x1503d1,_0x279230={})=>ensureSessionDataService()['getRunti'+_0x1eead3(0x416)](String(_0x279230[_0x1eead3(0x23c)+'ey']||_0x279230[_0x1eead3(0x188)]||''))),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x40f),(_0x4259fe,_0x299066={})=>ensureSessionDataService()[_0x1eead3(0x3ad)+_0x1eead3(0x4c7)+'s'](_0x299066)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x249),async(_0x5f073e,_0x312249={})=>{const _0x1bf17e=_0x1eead3,_0x3fe817=String(_0x312249[_0x1bf17e(0x23c)+'ey']||_0x312249['key']||'')[_0x1bf17e(0x36b)](),_0x3442ff=await ensureSessionSqliteStore()['readSess'+_0x1bf17e(0x460)](_0x3fe817),_0x453c38=await configController[_0x1bf17e(0x272)+_0x1bf17e(0x44e)+'Context']();return{..._0x3442ff,'contextWindowTokens':_0x453c38[_0x1bf17e(0x417)+_0x1bf17e(0x183)+_0x1bf17e(0x481)],'contextWindowSource':_0x453c38['contextW'+'indowSou'+'rce']};}),_0x5776a7('sessions'+':delete',(_0x33bf45,_0x3dd6bf)=>_0xab79f1()['sessions']['delete'](_0x3dd6bf)),_0x5776a7('chat:str'+_0x1eead3(0x4d9),(_0xb7ea0c,_0xb0201a)=>_0xab79f1()['chat'][_0x1eead3(0x26f)](_0xb0201a)),_0x5776a7(_0x1eead3(0x225)+'rt',(_0x1c0685,_0xfdf70d)=>_0xab79f1()[_0x1eead3(0x380)][_0x1eead3(0x470)](_0xfdf70d)),_0x5776a7('logs:wri'+'te',async(_0x5d9592,_0x1311ad={})=>{const _0x4eb53c=_0x1eead3,_0x2cac46=typeof _0x1311ad['level']===_0x4eb53c(0x40e)?_0x1311ad[_0x4eb53c(0x4bb)]:_0x4eb53c(0x448),_0x2541f4=typeof _0x1311ad[_0x4eb53c(0x2b6)]==='string'?_0x1311ad[_0x4eb53c(0x2b6)]:_0x4eb53c(0x14b)+_0x4eb53c(0x2cf),_0x1fc321=typeof _0x1311ad['context']===_0x4eb53c(0x40e)&&_0x1311ad['context'][_0x4eb53c(0x36b)]()?_0x4eb53c(0x14b)+':'+_0x1311ad['context'][_0x4eb53c(0x36b)]():_0x4eb53c(0x14b),_0x14d4d6=_0x1311ad[_0x4eb53c(0x1c5)]&&typeof _0x1311ad['meta']===_0x4eb53c(0x18c)?{...summarizePayload(_0x1311ad[_0x4eb53c(0x1c5)]),'context':_0x1fc321}:{'context':_0x1fc321},_0x551349=rendererLogger;if(_0x551349?.[_0x2cac46])await _0x551349[_0x2cac46](_0x2541f4,_0x14d4d6);else await _0x551349?.[_0x4eb53c(0x448)](_0x2541f4,_0x14d4d6);if(_0x1311ad[_0x4eb53c(0x1a8)+'ic']===!![]||_0x1fc321==='renderer'+_0x4eb53c(0x11e)+_0x4eb53c(0x283)){const _0x51b899=_0x1311ad[_0x4eb53c(0x3fe)]&&typeof _0x1311ad['record']==='object'?_0x1311ad[_0x4eb53c(0x3fe)]:_0x1311ad['meta']?.[_0x4eb53c(0x3fe)]&&typeof _0x1311ad[_0x4eb53c(0x1c5)][_0x4eb53c(0x3fe)]===_0x4eb53c(0x18c)?_0x1311ad[_0x4eb53c(0x1c5)][_0x4eb53c(0x3fe)]:{'level':_0x2cac46,'category':'renderer','event':_0x1fc321,'message':_0x2541f4,'meta':_0x1311ad[_0x4eb53c(0x1c5)]};updateRendererSessionMetrics(_0x51b899),await diagnosticsWriter?.[_0x4eb53c(0x17c)+'nt'](_0x51b899,{'captureIncident':String(_0x51b899[_0x4eb53c(0x4bb)]||_0x2cac46)[_0x4eb53c(0x469)+_0x4eb53c(0x4a4)]()===_0x4eb53c(0x18e)||_0x1311ad[_0x4eb53c(0x328)+_0x4eb53c(0x352)]===!![]});}return{'ok':!![]};}),_0x5776a7('logs:exp'+_0x1eead3(0x263),async(_0xed4890,_0x16d639={})=>{const _0x243b99=_0x1eead3,_0x1f586d=typeof _0x16d639[_0x243b99(0x260)+'r']===_0x243b99(0x40e)&&_0x16d639[_0x243b99(0x260)+'r'][_0x243b99(0x36b)]()?_0x16d639[_0x243b99(0x260)+'r']:undefined,_0x23aaba=await exportLogsArchive({'logsDir':configController[_0x243b99(0x39b)][_0x243b99(0x19f)],'targetDir':_0x1f586d,'appVersion':app[_0x243b99(0x172)+'on']()});return mainLogger?.[_0x243b99(0x448)](_0x243b99(0x388)+_0x243b99(0x19c),{'path':toHomePath(_0x23aaba[_0x243b99(0x4ad)])}),_0x23aaba;}),_0x5776a7(_0x1eead3(0x152)+_0x1eead3(0x253)+_0x1eead3(0x3f7),async()=>{const _0x3f4fc1=_0x1eead3;return await shell[_0x3f4fc1(0x3d3)](configController[_0x3f4fc1(0x39b)]['logsDir']),mainLogger?.[_0x3f4fc1(0x448)]('logs\x20dir'+_0x3f4fc1(0x1b5)+'pened',{'logsDir':toHomePath(configController[_0x3f4fc1(0x39b)][_0x3f4fc1(0x19f)])}),{'ok':!![],'path':configController['paths'][_0x3f4fc1(0x19f)]};}),_0x5776a7(_0x1eead3(0x207)+'t',async()=>{const _0x53fd27=_0x1eead3,_0x1d4168=await readdir(configController[_0x53fd27(0x39b)]['logsDir'],{'recursive':!![]})[_0x53fd27(0x317)](()=>[]);return _0x1d4168;}),_0x5776a7('logs:rea'+'d',async(_0x2b7709,_0x437409={})=>{const _0x2659d6=_0x1eead3,_0x69a904=String(_0x437409[_0x2659d6(0x4ad)]||'');if(!_0x69a904)throw new Error('path\x20is\x20'+'required');return readFile(_0x69a904,_0x2659d6(0x1a0));}),_0x5776a7('files:re'+'ad',async(_0x594eaa,_0x1af50b)=>{const _0xcaf7f9=_0x1eead3,_0x5244c2=Date[_0xcaf7f9(0x2c8)]();try{const _0x52e761=await readFile(_0x1af50b,_0xcaf7f9(0x1a0));return filesLogger?.[_0xcaf7f9(0x448)](_0xcaf7f9(0x330)+_0xcaf7f9(0x30e)+_0xcaf7f9(0x414),{'path':toHomePath(_0x1af50b),'bytes':Buffer[_0xcaf7f9(0x195)+'th'](_0x52e761),'durationMs':Date[_0xcaf7f9(0x2c8)]()-_0x5244c2}),_0x52e761;}catch(_0x574fe0){filesLogger?.[_0xcaf7f9(0x18e)]('file\x20rea'+_0xcaf7f9(0x485),{'path':toHomePath(_0x1af50b),'durationMs':Date[_0xcaf7f9(0x2c8)]()-_0x5244c2,'error':summarizeError(_0x574fe0)});throw _0x574fe0;}}),_0x5776a7(_0x1eead3(0x27d)+_0x1eead3(0x147)+'y',async(_0x2ba9bd,_0x2cbd3b)=>{const _0x4572b7=_0x1eead3,_0x1f57dc=Date['now']();try{const _0x4a15b7=await readFile(_0x2cbd3b);return filesLogger?.[_0x4572b7(0x448)](_0x4572b7(0x37f)+'ile\x20read'+_0x4572b7(0x3d7)+'ed',{'path':toHomePath(_0x2cbd3b),'bytes':_0x4a15b7[_0x4572b7(0x195)+'th'],'durationMs':Date[_0x4572b7(0x2c8)]()-_0x1f57dc}),new Uint8Array(_0x4a15b7);}catch(_0xddff96){filesLogger?.[_0x4572b7(0x18e)](_0x4572b7(0x37f)+'ile\x20read'+'\x20failed',{'path':toHomePath(_0x2cbd3b),'durationMs':Date['now']()-_0x1f57dc,'error':summarizeError(_0xddff96)});throw _0xddff96;}}),_0x5776a7(_0x1eead3(0x3c4)+_0x1eead3(0x26e),async(_0x406ecc,_0x13b0ae={})=>{const _0x49dff8=_0x1eead3,_0x1ab93e=Date[_0x49dff8(0x2c8)]();return await writeFile(_0x13b0ae[_0x49dff8(0x4ad)],_0x13b0ae['content']??'',_0x49dff8(0x1a0)),filesLogger?.[_0x49dff8(0x448)]('file\x20wri'+_0x49dff8(0x3b8)+_0x49dff8(0x1eb),{'path':toHomePath(_0x13b0ae[_0x49dff8(0x4ad)]),'bytes':Buffer[_0x49dff8(0x195)+'th'](String(_0x13b0ae[_0x49dff8(0x1ee)]??'')),'durationMs':Date[_0x49dff8(0x2c8)]()-_0x1ab93e}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x3c4)+_0x1eead3(0x1b9)+'ry',async(_0x43f017,_0x4eb170={})=>{const _0x57380d=_0x1eead3,_0x4c1ba9=Date[_0x57380d(0x2c8)]();await writeFile(_0x4eb170[_0x57380d(0x4ad)],Buffer[_0x57380d(0x223)](_0x4eb170[_0x57380d(0x1ee)]??[]));const _0x119cea=await stat(_0x4eb170[_0x57380d(0x4ad)])[_0x57380d(0x317)](()=>null);return filesLogger?.[_0x57380d(0x448)](_0x57380d(0x37f)+_0x57380d(0x240)+_0x57380d(0x21c)+_0x57380d(0x414),{'path':toHomePath(_0x4eb170[_0x57380d(0x4ad)]),'bytes':_0x119cea?.[_0x57380d(0x4a9)]??0x0,'durationMs':Date[_0x57380d(0x2c8)]()-_0x4c1ba9}),{'ok':!![]};}),_0x5776a7(_0x1eead3(0x3a8)+_0x1eead3(0x4ee)+'e',async(_0x379420,_0x178709={})=>{const _0x1e006b=_0x1eead3,_0x67e5b2=await dialog[_0x1e006b(0x42d)+_0x1e006b(0x224)](BrowserWindow[_0x1e006b(0x382)+_0x1e006b(0x3c9)](_0x379420[_0x1e006b(0x15b)])??mainWindow,{'title':typeof _0x178709[_0x1e006b(0x447)]===_0x1e006b(0x40e)?_0x178709['title']:undefined,'properties':['openFile',..._0x178709['multiSel'+_0x1e006b(0x216)]?[_0x1e006b(0x38d)+'ections']:[]],'filters':Array[_0x1e006b(0x496)](_0x178709[_0x1e006b(0x43a)])?_0x178709[_0x1e006b(0x43a)]:undefined});return filesLogger?.[_0x1e006b(0x448)](_0x1e006b(0x422)+'ile\x20comp'+'leted',{'canceled':_0x67e5b2[_0x1e006b(0x37e)],'count':_0x67e5b2[_0x1e006b(0x27c)+'s'][_0x1e006b(0x407)],'paths':_0x67e5b2[_0x1e006b(0x27c)+'s'][_0x1e006b(0x1fd)](toHomePath)}),{'canceled':_0x67e5b2['canceled'],'paths':_0x67e5b2['filePath'+'s']};}),_0x5776a7(_0x1eead3(0x157)+'st-direc'+_0x1eead3(0x2c0),async(_0x36a357,_0x36c245={})=>{const _0x22f071=_0x1eead3,_0x38d4f4=resolve(String(_0x36c245[_0x22f071(0x4ad)]||'')),_0x47727b=_0x36c245[_0x22f071(0x45a)+'e']!==![],_0x3ccbc7=Array['isArray'](_0x36c245[_0x22f071(0x2a1)+'ns'])?_0x36c245[_0x22f071(0x2a1)+'ns'][_0x22f071(0x1fd)](_0x31bb97=>String(_0x31bb97)[_0x22f071(0x469)+_0x22f071(0x4a4)]()['replace'](/^\./,''))['filter'](Boolean):null,_0x2abcec=Number['isIntege'+'r'](_0x36c245[_0x22f071(0x2d8)+'es'])&&_0x36c245[_0x22f071(0x2d8)+'es']>0x0?_0x36c245[_0x22f071(0x2d8)+'es']:0xc350,_0x3cacf7=[];let _0x4c7a80=![];async function _0x29a9e1(_0x4e3102){const _0x4c94c4=_0x22f071;if(_0x4c7a80)return;let _0x373aae;try{_0x373aae=await readdir(_0x4e3102,{'withFileTypes':!![]});}catch{return;}for(const _0x584f1d of _0x373aae){if(_0x4c7a80)return;if(_0x584f1d[_0x4c94c4(0x454)][_0x4c94c4(0x4a2)+'th']('.'))continue;const _0x272f67=join(_0x4e3102,_0x584f1d['name']);if(_0x584f1d['isDirect'+_0x4c94c4(0x3f7)]()){if(_0x47727b)await _0x29a9e1(_0x272f67);continue;}if(!_0x584f1d[_0x4c94c4(0x3ab)]())continue;if(_0x3ccbc7){const _0x511327=_0x584f1d['name']['lastInde'+_0x4c94c4(0x2d4)]('.'),_0x54099c=_0x511327>=0x0?_0x584f1d[_0x4c94c4(0x454)][_0x4c94c4(0x347)](_0x511327+0x1)['toLowerC'+_0x4c94c4(0x4a4)]():'';if(!_0x3ccbc7[_0x4c94c4(0x257)](_0x54099c))continue;}if(_0x3cacf7[_0x4c94c4(0x407)]>=_0x2abcec){_0x4c7a80=!![];return;}_0x3cacf7[_0x4c94c4(0x2f1)]({'name':_0x584f1d[_0x4c94c4(0x454)],'path':_0x272f67});}}return await _0x29a9e1(_0x38d4f4),{'path':_0x38d4f4,'entries':_0x3cacf7,'truncated':_0x4c7a80};}),_0x5776a7(_0x1eead3(0x3a8)+_0x1eead3(0x34c)+_0x1eead3(0x1f1),async(_0x47c9fd,_0x2e38a5={})=>{const _0x3a9b99=_0x1eead3,_0x73a677=await dialog[_0x3a9b99(0x42d)+_0x3a9b99(0x224)](BrowserWindow[_0x3a9b99(0x382)+_0x3a9b99(0x3c9)](_0x47c9fd['sender'])??mainWindow,{'title':typeof _0x2e38a5['title']===_0x3a9b99(0x40e)?_0x2e38a5[_0x3a9b99(0x447)]:undefined,'properties':[_0x3a9b99(0x30f)+_0x3a9b99(0x4d5)]});return filesLogger?.[_0x3a9b99(0x448)](_0x3a9b99(0x375)+_0x3a9b99(0x1f6)+_0x3a9b99(0x3d7)+'ed',{'canceled':_0x73a677['canceled'],'count':_0x73a677[_0x3a9b99(0x27c)+'s']['length'],'paths':_0x73a677[_0x3a9b99(0x27c)+'s'][_0x3a9b99(0x1fd)](toHomePath)}),{'canceled':_0x73a677[_0x3a9b99(0x37e)],'paths':_0x73a677['filePath'+'s']};}),_0x5776a7(_0x1eead3(0x488)+'e:direct'+_0x1eead3(0x22d),()=>_0xab79f1()[_0x1eead3(0x488)+'e'][_0x1eead3(0x17d)+_0x1eead3(0x23a)]()),_0x5776a7(_0x1eead3(0x488)+_0x1eead3(0x275)+_0x1eead3(0x1f6),async()=>{const _0x214eff=_0x1eead3,_0x54f44c=await _0xab79f1()['workspac'+'e'][_0x214eff(0x17d)+_0x214eff(0x23a)]();return await shell['openPath'](_0x54f44c['path']),filesLogger?.[_0x214eff(0x448)](_0x214eff(0x488)+_0x214eff(0x321)+_0x214eff(0x3e4)+'ed',{'path':toHomePath(_0x54f44c['path'])}),{'ok':!![],'path':_0x54f44c[_0x214eff(0x4ad)]};}),_0x5776a7('workspac'+_0x1eead3(0x307)+'-context',()=>_0xab79f1()[_0x1eead3(0x488)+'e'][_0x1eead3(0x1ad)+'ntext']()),_0x5776a7(_0x1eead3(0x488)+'e:write-'+'shared-c'+_0x1eead3(0x399),(_0x1ddf97,_0x22684d)=>_0xab79f1()[_0x1eead3(0x488)+'e']['writeSha'+_0x1eead3(0x41d)+'xt'](_0x22684d)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x4c2),(_0x36e29b,_0x1ea5fa)=>_0xab79f1()[_0x1eead3(0x2ea)]['rename'](_0x1ea5fa)),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x185),async(_0x59819f,_0x3fa80c={})=>{const _0x5d13df=_0x1eead3,_0x4c328e=String(_0x3fa80c[_0x5d13df(0x23c)+'ey']||_0x3fa80c[_0x5d13df(0x188)]||'')[_0x5d13df(0x36b)]();if(!_0x4c328e)throw new Error('sessionK'+'ey\x20is\x20re'+'quired');const _0x17ae3e=await ensureSessionSqliteStore()[_0x5d13df(0x43b)+'dSession'+_0x5d13df(0x4d6)](),_0x3282a2=await _0xab79f1()[_0x5d13df(0x2ea)][_0x5d13df(0x32e)+_0x5d13df(0x4d2)]([_0x4c328e,..._0x17ae3e['filter'](_0x1b2630=>_0x1b2630!==_0x4c328e)]);return _0x3282a2;}),_0x5776a7(_0x1eead3(0x2ea)+_0x1eead3(0x49d),async(_0x8a6709,_0x136c20={})=>{const _0x892f63=_0x1eead3,_0x4155a9=String(_0x136c20['sessionK'+'ey']||_0x136c20[_0x892f63(0x188)]||'')[_0x892f63(0x36b)]();if(!_0x4155a9)throw new Error(_0x892f63(0x23c)+_0x892f63(0x2d3)+_0x892f63(0x1d6));const _0x3f2167=await ensureSessionSqliteStore()['getPinne'+_0x892f63(0x28f)+'Keys']();return await _0xab79f1()[_0x892f63(0x2ea)][_0x892f63(0x32e)+'inned'](_0x3f2167['filter'](_0x4a9fdd=>_0x4a9fdd!==_0x4155a9));}),_0x5776a7('sessions'+_0x1eead3(0x238)+_0x1eead3(0x462),async(_0x5b2c8e,_0x1708f1={})=>{const _0x479441=_0x1eead3,_0x1cf8d3=Array['isArray'](_0x1708f1[_0x479441(0x403)])?_0x1708f1[_0x479441(0x403)]:_0x1708f1;return await _0xab79f1()[_0x479441(0x2ea)][_0x479441(0x32e)+'inned'](_0x1cf8d3);}),_0x5776a7(_0x1eead3(0x402)+_0x1eead3(0x31b),(_0x34ef8d,_0x29645e)=>_0xab79f1()[_0x1eead3(0x2d7)]['install'](_0x29645e)),_0x5776a7(_0x1eead3(0x138)+'t',(_0x31b006,_0x41b618)=>_0xab79f1()[_0x1eead3(0x2d6)]['list'](_0x41b618)),_0x5776a7(_0x1eead3(0x1e7)+'ate',(_0x5b2f76,_0x212fbf)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x343)](_0x212fbf)),_0x5776a7(_0x1eead3(0x3b7)+_0x1eead3(0x2d5),(_0x532f37,_0x56525f)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x46a)](_0x56525f)),_0x5776a7(_0x1eead3(0x467)+'ove',(_0xbf7cee,_0x1bf467)=>_0xab79f1()[_0x1eead3(0x2d6)]['remove'](_0x1bf467)),_0x5776a7('cron:run'+'-once',(_0x3712b6,_0x3a4e99)=>_0xab79f1()[_0x1eead3(0x2d6)]['runOnce'](_0x3a4e99)),_0x5776a7(_0x1eead3(0x309)+'s',(_0x19dc91,_0x4dd3d5)=>_0xab79f1()[_0x1eead3(0x2d6)][_0x1eead3(0x46d)](_0x4dd3d5)),_0x5776a7(_0x1eead3(0x48d)+_0x1eead3(0x3bd),async(_0x243864,_0x5e594f={})=>{const _0x590e22=_0x1eead3,_0x1cce23=configController[_0x590e22(0x4c4)+'onfigPat'+'h'](),_0x4ced22=JSON['parse'](await readFile(_0x1cce23,'utf8')),_0x2f23fa=_0x4ced22?.['models']?.['provider'+'s']&&typeof _0x4ced22['models']['provider'+'s']===_0x590e22(0x18c)?_0x4ced22[_0x590e22(0x4f8)][_0x590e22(0x4ac)+'s']:{},_0x2f7941=typeof _0x4ced22?.[_0x590e22(0x334)]?.[_0x590e22(0x4dd)]?.[_0x590e22(0x1ce)]?.['primary']===_0x590e22(0x40e)?_0x4ced22[_0x590e22(0x334)][_0x590e22(0x4dd)][_0x590e22(0x1ce)]['primary']:'',_0x5506ad=String(_0x5e594f['model']||_0x2f7941||'');if(!_0x5506ad[_0x590e22(0x257)]('/'))throw new Error(_0x590e22(0x1ec)+_0x590e22(0x2f2)+'\x20configu'+_0x590e22(0x33b)+'\x20a\x20provi'+'der/mode'+_0x590e22(0x3f0));const _0x1951ae=_0x5506ad[_0x590e22(0x4bf)]('/'),_0x30a5b1=_0x5506ad[_0x590e22(0x347)](0x0,_0x1951ae),_0x15ebd7=_0x5506ad[_0x590e22(0x347)](_0x1951ae+0x1),_0x52da1f=_0x2f23fa[_0x30a5b1];if(!_0x52da1f||typeof _0x52da1f!==_0x590e22(0x18c))throw new Error('provider'+'\x20not\x20con'+_0x590e22(0x2f9)+'\x20'+_0x30a5b1);const _0x3968d2=String(_0x52da1f[_0x590e22(0x34f)]||'https://'+_0x590e22(0x282)+'ai.com/v'+'1')['trim']()[_0x590e22(0x3b9)](/\/$/,''),_0x4b7124=await fetch(_0x3968d2+(_0x590e22(0x1cd)+_0x590e22(0x39d)+'s'),{'method':'POST','headers':{'content-type':'applicat'+'ion/json','Authorization':_0x590e22(0x325)+(_0x52da1f[_0x590e22(0x140)]||''),..._0x52da1f['headers']&&typeof _0x52da1f[_0x590e22(0x430)]==='object'?_0x52da1f['headers']:{}},'body':JSON[_0x590e22(0x17a)+'y']({'model':_0x15ebd7,'max_tokens':Number[_0x590e22(0x292)+'r'](_0x5e594f[_0x590e22(0x26b)+'s'])?_0x5e594f[_0x590e22(0x26b)+'s']:0x400,'temperature':typeof _0x5e594f[_0x590e22(0x311)+'ure']===_0x590e22(0x1d1)?_0x5e594f[_0x590e22(0x311)+_0x590e22(0x208)]:undefined,'messages':Array[_0x590e22(0x496)](_0x5e594f[_0x590e22(0x16a)])?_0x5e594f[_0x590e22(0x16a)]:[]}),'signal':AbortSignal[_0x590e22(0x166)](Number['isIntege'+'r'](_0x5e594f['timeoutM'+'s'])?_0x5e594f[_0x590e22(0x293)+'s']:0x1d4c0)});if(!_0x4b7124['ok']){const _0x1dd660=await _0x4b7124[_0x590e22(0x221)]();throw new Error('model\x20ht'+_0x590e22(0x36c)+_0x4b7124[_0x590e22(0x226)]+':\x20'+_0x1dd660['slice'](0x0,0x190));}const _0x44b0a1=_0x4b7124[_0x590e22(0x430)][_0x590e22(0x308)](_0x590e22(0x389)+'id'),_0xc32e9e=await _0x4b7124[_0x590e22(0x2eb)](),_0x47bbd5=_0xc32e9e?.[_0x590e22(0x319)]?.[0x0]?.[_0x590e22(0x2b6)]??{};if(_0x44b0a1){const _0x18b752=typeof _0x5e594f['title']===_0x590e22(0x40e)&&_0x5e594f[_0x590e22(0x447)][_0x590e22(0x36b)]()?_0x5e594f[_0x590e22(0x447)][_0x590e22(0x36b)]():Array[_0x590e22(0x496)](_0x5e594f[_0x590e22(0x16a)])?String([..._0x5e594f['messages']][_0x590e22(0x331)]()[_0x590e22(0x189)](_0x553a4f=>_0x553a4f?.[_0x590e22(0x303)]===_0x590e22(0x2bc))?.['content']||'')[_0x590e22(0x36b)]():'';_0x18b752&&Promise['resolve'](requestIdHooks?.[_0x590e22(0x1ae)+_0x590e22(0x11c)+_0x590e22(0x313)]?.({'requestId':_0x44b0a1,'title':_0x18b752,'source':_0x590e22(0x4ac)+_0x590e22(0x4a5)+'e','model':_0xc32e9e?.['model']||_0x15ebd7,'provider':_0x30a5b1,'timestamp':Date[_0x590e22(0x2c8)]()}))['catch'](_0x5be843=>{const _0xe54f6=_0x590e22;mainLogger?.[_0xe54f6(0x1db)]?.(_0xe54f6(0x41f)+'omplete\x20'+_0xe54f6(0x389)+_0xe54f6(0x12d)+'\x20event\x20f'+'ailed',{'error':_0x5be843?.[_0xe54f6(0x2b6)]||String(_0x5be843)});});}return{'content':extractModelMessageContent(_0x47bbd5[_0x590e22(0x1ee)]),'reasoning':typeof _0x47bbd5[_0x590e22(0x196)+_0x590e22(0x435)+'t']===_0x590e22(0x40e)?_0x47bbd5[_0x590e22(0x196)+_0x590e22(0x435)+'t']:'','model':_0xc32e9e?.[_0x590e22(0x1ce)]||_0x15ebd7};}),_0x5776a7(_0x1eead3(0x236)+_0x1eead3(0x33c),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x3e2)]()),_0x5776a7(_0x1eead3(0x236)+'et-setti'+_0x1eead3(0x43f),(_0x4d5e95,_0x51c3ee)=>_0xab79f1()[_0x1eead3(0x4f8)]['setSetti'+_0x1eead3(0x43f)](_0x51c3ee)),_0x5776a7(_0x1eead3(0x236)+'et-selec'+_0x1eead3(0x259)+_0x1eead3(0x3c0),(_0x5b0f1c,_0x21c50a)=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x184)+'tedModel'+_0x1eead3(0x351)+'re'](_0x21c50a)),_0x5776a7(_0x1eead3(0x236)+_0x1eead3(0x3e0)+_0x1eead3(0x36e),(_0x19727f,_0x1628e2)=>_0xab79f1()[_0x1eead3(0x4f8)]['setSelfO'+_0x1eead3(0x4db)+'odels'](_0x1628e2)),_0x5776a7('models:s'+_0x1eead3(0x3f9)+_0x1eead3(0x4cb),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x49c)+_0x1eead3(0x1bf)]()),_0x5776a7('models:c'+'ustom-mo'+_0x1eead3(0x127),()=>_0xab79f1()[_0x1eead3(0x4f8)][_0x1eead3(0x20b)+'dels']()),_0x5776a7(_0x1eead3(0x133)+_0x1eead3(0x425)+_0x1eead3(0x348)+_0x1eead3(0x340),async()=>{const _0x3db034=_0x1eead3,_0x4215b0=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x3db034(0x4ef)+_0x3db034(0x4fa)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x3db034(0x3de)+_0x3db034(0x2ae)](),'manifest':_0x4215b0,'status':await getRuntimeResourceStatus()};}),_0x5776a7(_0x1eead3(0x133)+_0x1eead3(0x3c3)+_0x1eead3(0x4ec),async()=>getRuntimeResourceStatus());}async function boot(){const _0x13efec=_0x209495;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x13efec(0x408)](shellConfig[_0x13efec(0x2a7)+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x16b)),ipcLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x1ba)),filesLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x4ba)),rendererLogger=createShellLogger(configController[_0x13efec(0x39b)],_0x13efec(0x14b)),productRuntime=await loadProductRuntime();const _0x5de271=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'appContext':{'productName':shellConfig[_0x13efec(0x2a7)+_0x13efec(0x3af)],'appId':shellConfig[_0x13efec(0x4a7)],'appVersion':app[_0x13efec(0x172)+'on'](),'platform':process['platform'],'arch':process[_0x13efec(0x154)],..._0x5de271?{'apiEndpoint':_0x5de271}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'diagnosticsWriter':diagnosticsWriter});const _0x37e400=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x37e400({'shellConfig':shellConfig,'appName':()=>app[_0x13efec(0x454)],'appVersion':()=>app[_0x13efec(0x172)+'on'](),'broadcast':broadcast,'logger':mainLogger,'prepareQuitAndInstall':async()=>{const _0xffd79d=_0x13efec;await stopGatewayBeforeQuit(_0xffd79d(0x20c)+_0xffd79d(0x234)+_0xffd79d(0x160));}}),updateController[_0x13efec(0x153)+'ze'](),registerProcessLogHooks(),registerProtocolHandlers(),installApplicationMenu(),mainLogger?.['info'](_0x13efec(0x46c)+_0x13efec(0x1e8)+_0x13efec(0x254)+'ed',{'appVersion':app[_0x13efec(0x172)+'on'](),'electronVersion':process[_0x13efec(0x2fa)][_0x13efec(0x46c)],'nodeVersion':process[_0x13efec(0x2fa)][_0x13efec(0x146)],'chromeVersion':process[_0x13efec(0x2fa)][_0x13efec(0x3d4)],'platform':process[_0x13efec(0x443)],'arch':process['arch'],'mode':getMode(),'projectRoot':shellConfig[_0x13efec(0x22f)+_0x13efec(0x326)],'configPath':shellConfig[_0x13efec(0x3a0)+'th'],'dataDir':shellConfig[_0x13efec(0x121)],'devToolsEnabled':isDevToolsEnabled(),'devToolsFlagPath':resolveDevToolsFlagPath(),'logsDir':configController[_0x13efec(0x39b)][_0x13efec(0x19f)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||APP_RENDERER_ENTRY_URL}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x13efec(0x172)+'on'](),'productRuntimeHooks':gatewayRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x13efec(0x21d)+'roductCo'+_0x13efec(0x175)]==='function'&&await productRuntime[_0x13efec(0x21d)+_0x13efec(0x297)+'nfig']({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x13efec(0x21d)+_0x13efec(0x1e0)+'ta']===_0x13efec(0x11f)?await productRuntime['migrateP'+_0x13efec(0x1e0)+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x13efec(0x398)+_0x13efec(0x47d)+'d'](),attachGatewayBroadcastHandlers(gatewayController),ensureSessionDataService(),await installIpcHandlers(),ipcHandlersInstalled=!![],installAppRendererProtocolHandler(),installClawspaceProtocolHandler(),registerShellShortcuts(),await ensureMainWindow(),await gatewayController[_0x13efec(0x48b)](),updateController[_0x13efec(0x2f6)+'kgroundC'+_0x13efec(0x46f)](),mainLogger?.[_0x13efec(0x448)](_0x13efec(0x46c)+_0x13efec(0x1e8)+'ot\x20compl'+_0x13efec(0x1eb)),updateController['recordBo'+_0x13efec(0x21f)+'nstall']?.();}function registerProcessLogHooks(){const _0x3b52a5=_0x209495;if(registerProcessLogHooks['register'+'ed'])return;registerProcessLogHooks[_0x3b52a5(0x4e2)+'ed']=!![],process['on'](_0x3b52a5(0x446)+'Exceptio'+'n',_0x11854f=>{const _0x5f59e2=_0x3b52a5;mainLogger?.[_0x5f59e2(0x18e)](_0x5f59e2(0x446)+'\x20excepti'+'on',summarizeError(_0x11854f));}),process['on']('unhandle'+_0x3b52a5(0x378)+'on',_0xfe1a03=>{const _0xe6960d=_0x3b52a5;mainLogger?.['error'](_0xe6960d(0x262)+_0xe6960d(0x24a)+_0xe6960d(0x4f6),summarizeError(_0xfe1a03));}),app['on'](_0x3b52a5(0x333)+_0x3b52a5(0x287)+_0x3b52a5(0x3e9),(_0x10e0b6,_0x3991cf,_0x4f6c45)=>{const _0x56942b=_0x3b52a5;mainLogger?.[_0x56942b(0x18e)]('renderer'+'\x20process'+'\x20gone',{'url':_0x3991cf[_0x56942b(0x2a9)](),'details':_0x4f6c45});}),app['on'](_0x3b52a5(0x230)+_0x3b52a5(0x33f)+'ne',(_0x42aae4,_0x32459d)=>{const _0x27809d=_0x3b52a5;mainLogger?.[_0x27809d(0x18e)](_0x27809d(0x2bf)+_0x27809d(0x2a4)+'ne',{'details':_0x32459d});});}async function stopGatewayBeforeQuit(_0x332ed8){const _0x183cba=_0x209495;if(!gatewayController)return;const _0x49a27f=gatewayController,_0x5dd76c=Date[_0x183cba(0x2c8)]();mainLogger?.[_0x183cba(0x448)](_0x332ed8+(_0x183cba(0x250)+_0x183cba(0x2d2)+'ay'),{'event':_0x332ed8===_0x183cba(0x20c)+_0x183cba(0x234)+_0x183cba(0x160)?_0x183cba(0x491)+_0x183cba(0x478)+_0x183cba(0x173)+'t':undefined}),await _0x49a27f['stop'](),gatewayController===_0x49a27f&&(gatewayController=null),mainLogger?.[_0x183cba(0x448)](_0x332ed8+(_0x183cba(0x4df)+'y\x20stoppe'+'d'),{'event':_0x332ed8==='before\x20i'+_0x183cba(0x234)+_0x183cba(0x160)?_0x183cba(0x491)+_0x183cba(0x478)+_0x183cba(0x4f2):undefined,'elapsedMs':Date[_0x183cba(0x2c8)]()-_0x5dd76c});}app['on'](_0x209495(0x394)+_0x209495(0x1a2)+'d',()=>{const _0x29932b=_0x209495;if(process[_0x29932b(0x443)]!==_0x29932b(0x384))app[_0x29932b(0x318)]();}),app['on']('open-url',(_0x3e4b67,_0x2c6686)=>{const _0x14e5ac=_0x209495;_0x3e4b67['preventD'+_0x14e5ac(0x14f)](),mainLogger?.['warn']('protocol'+_0x14e5ac(0x1c3)+'l\x20event',{'url':summarizeProtocolUrl(_0x2c6686),'hasShellConfig':Boolean(shellConfig)}),dispatchProtocolUrl(_0x2c6686);});const gotSingleInstanceLock=app[_0x209495(0x34b)+_0x209495(0x29b)+_0x209495(0x258)+'k']();!gotSingleInstanceLock?app[_0x209495(0x318)]():app['on']('second-i'+_0x209495(0x2b1),(_0x58aafe,_0x17187c)=>{const _0x4f9702=_0x209495,_0x2259ae=extractProtocolUrlFromArgs(_0x17187c);mainLogger?.[_0x4f9702(0x1db)](_0x4f9702(0x3cc)+'nstance\x20'+_0x4f9702(0x377),{'argc':Array[_0x4f9702(0x496)](_0x17187c)?_0x17187c[_0x4f9702(0x407)]:0x0,'hasShellConfig':Boolean(shellConfig),'hasProtocolUrl':Boolean(_0x2259ae),'protocolUrl':_0x2259ae?summarizeProtocolUrl(_0x2259ae):undefined});if(!resolveProtocolScheme()){pendingProtocolArgs=_0x17187c;return;}if(_0x2259ae){dispatchProtocolUrl(_0x2259ae);return;}const _0x5705bd=getUsableMainWindow();if(_0x5705bd){if(_0x5705bd[_0x4f9702(0x3bf)+_0x4f9702(0x2da)]())_0x5705bd[_0x4f9702(0x429)]();_0x5705bd[_0x4f9702(0x1a9)](),_0x5705bd[_0x4f9702(0x3d5)]();}});app['on'](_0x209495(0x360),async()=>{const _0x3bbd8f=_0x209495;if(isQuitting){app[_0x3bbd8f(0x318)]();return;}updateController?.[_0x3bbd8f(0x1f2)+_0x3bbd8f(0x237)+_0x3bbd8f(0x463)]('app_acti'+_0x3bbd8f(0x25e)),BrowserWindow[_0x3bbd8f(0x1cf)+_0x3bbd8f(0x3b5)]()[_0x3bbd8f(0x407)]===0x0&&shellConfig&&await ensureMainWindow();}),app['on'](_0x209495(0x418)+_0x209495(0x214),_0x34f4a8=>{const _0xc6529=_0x209495;isQuitting=!![],updateController?.[_0xc6529(0x44c)+_0xc6529(0x3ed)](),terminalManager?.[_0xc6529(0x452)](),terminalManager=null,productRuntimeHooks?.[_0xc6529(0x452)]?.();for(const _0x510910 of Object[_0xc6529(0x403)](productRuntimeHooks))delete productRuntimeHooks[_0x510910];requestIdHooks?.[_0xc6529(0x452)]?.();for(const _0x559fc1 of Object[_0xc6529(0x403)](requestIdHooks))delete requestIdHooks[_0x559fc1];if(updateController?.[_0xc6529(0x35e)+_0xc6529(0x47f)+'te']?.()){mainLogger?.[_0xc6529(0x448)](_0xc6529(0x40b)+_0xc6529(0x442)+_0xc6529(0x4e1)+_0xc6529(0x45f)+'rogress,'+_0xc6529(0x18b)+_0xc6529(0x4d1)+_0xc6529(0x2a2)+_0xc6529(0x21a));return;}if(!gatewayController)return;_0x34f4a8[_0xc6529(0x136)+'efault'](),void stopGatewayBeforeQuit(_0xc6529(0x40b)+'uit')[_0xc6529(0x111)](()=>{const _0x53ba6b=_0xc6529;app[_0x53ba6b(0x318)]();});}),app['on'](_0x209495(0x206)+'t',()=>{const _0x480676=_0x209495;globalShortcut[_0x480676(0x1b6)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x209495(0x202)+'y']()['then'](boot)[_0x209495(0x317)](_0x46c488=>{const _0x105feb=_0x209495;bootError=_0x46c488 instanceof Error?_0x46c488[_0x105feb(0x2b6)]:String(_0x46c488),mainLogger?.[_0x105feb(0x18e)](_0x105feb(0x46c)+_0x105feb(0x1e8)+'ot\x20faile'+'d',summarizeError(_0x46c488)),console[_0x105feb(0x18e)](_0x105feb(0x256)+_0x105feb(0x45e)+_0x105feb(0x252)+_0x105feb(0x1cb)+_0x105feb(0x211)+'in',_0x46c488);});
|