@wujie-shell/core 0.1.5 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +36 -5
  2. package/bin/wujie-shell.mjs +65 -0
  3. package/dist/bin/wujie-shell.mjs +1 -1
  4. package/dist/src/agents/bundled-agent-skills.mjs +1 -0
  5. package/dist/src/agents/bundled-agents.mjs +1 -0
  6. package/dist/src/chat/media-archive.mjs +1 -0
  7. package/dist/src/chat/queue.mjs +1 -0
  8. package/dist/src/common/diagnostics.mjs +1 -0
  9. package/dist/src/common/logging.mjs +1 -0
  10. package/dist/src/common/runtime-logger.mjs +1 -0
  11. package/dist/src/common/user-events.mjs +1 -0
  12. package/dist/src/common/utils.mjs +1 -0
  13. package/dist/src/config/controller.mjs +1 -0
  14. package/dist/src/connectors/config-utils.mjs +1 -0
  15. package/dist/src/connectors/constants.mjs +1 -0
  16. package/dist/src/connectors/controller.mjs +1 -0
  17. package/dist/src/connectors/kdocs-cli.mjs +1 -0
  18. package/dist/src/electron/main.mjs +1 -1
  19. package/dist/src/electron/preload.mjs +1 -1
  20. package/dist/src/files/generated-files-store.mjs +1 -0
  21. package/dist/src/files/handlers.mjs +1 -0
  22. package/dist/src/gateway/chat-delta.mjs +1 -0
  23. package/dist/src/gateway/controller.mjs +1 -0
  24. package/dist/src/gateway/ws-client.mjs +1 -0
  25. package/dist/src/index.mjs +1 -1
  26. package/dist/src/log-reporting/handlers.mjs +1 -0
  27. package/dist/src/log-reporting/report-logs.mjs +1 -0
  28. package/dist/src/models/handlers.mjs +1 -0
  29. package/dist/src/preferences/store.mjs +1 -0
  30. package/dist/src/runtime/index.mjs +1 -0
  31. package/dist/src/runtime/patch-channel-plugin-runtime.mjs +1 -0
  32. package/dist/src/runtime/patch-chat-history-mixed-tool-content.mjs +1 -0
  33. package/dist/src/runtime/patch-session-store-sqlite.mjs +1 -0
  34. package/dist/src/runtime/plugin-sync.mjs +1 -0
  35. package/dist/src/sessions/agent-sessions-map-store.mjs +1 -0
  36. package/dist/src/sessions/runtime-bridge.mjs +1 -0
  37. package/dist/src/sessions/session-sqlite-store.mjs +1 -0
  38. package/dist/src/sessions/sql/001_init.sql +120 -0
  39. package/dist/src/sessions/sql/002_session_local_metadata.sql +15 -0
  40. package/dist/src/sessions/sql/schema.md +115 -0
  41. package/dist/src/skills/import.mjs +1 -0
  42. package/dist/src/skills/market.mjs +1 -0
  43. package/dist/src/terminal/manager.mjs +1 -0
  44. package/dist/src/updates/controller.mjs +1 -0
  45. package/dist/src/updates/loader.mjs +1 -0
  46. package/package.json +13 -6
  47. package/dist/src/bundled-agent-skills.mjs +0 -1
  48. package/dist/src/bundled-agents.mjs +0 -1
  49. package/dist/src/config-controller.mjs +0 -1
  50. package/dist/src/gateway-controller.mjs +0 -1
  51. package/dist/src/gateway-ws.mjs +0 -1
  52. package/dist/src/logging.mjs +0 -1
  53. package/dist/src/plugin-sync.mjs +0 -1
  54. package/dist/src/runtime-logger.mjs +0 -1
  55. package/dist/src/runtime.mjs +0 -1
  56. package/dist/src/utils.mjs +0 -1
@@ -0,0 +1 @@
1
+ (function(_0x26d65e,_0x36b8fa){const _0x2d037c=_0x99ec,_0x3fb1ff=_0x26d65e();while(!![]){try{const _0x75ea13=-parseInt(_0x2d037c(0x180))/0x1+-parseInt(_0x2d037c(0x15e))/0x2+parseInt(_0x2d037c(0x2d1))/0x3+-parseInt(_0x2d037c(0x263))/0x4*(-parseInt(_0x2d037c(0x268))/0x5)+-parseInt(_0x2d037c(0x25b))/0x6+parseInt(_0x2d037c(0x28f))/0x7*(parseInt(_0x2d037c(0x155))/0x8)+parseInt(_0x2d037c(0x15f))/0x9*(parseInt(_0x2d037c(0x1f4))/0xa);if(_0x75ea13===_0x36b8fa)break;else _0x3fb1ff['push'](_0x3fb1ff['shift']());}catch(_0x48f316){_0x3fb1ff['push'](_0x3fb1ff['shift']());}}}(_0x1e09,0xaae2a));import{spawn}from'node:child_process';import{randomUUID}from'node:crypto';import{mkdir,readFile,readdir,rm,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import{asRecord,asStringArray,dedupeStrings,getTrimmedString}from'../common/utils.mjs';function _0x99ec(_0x69e5f6,_0x5a9f05){_0x69e5f6=_0x69e5f6-0x11f;const _0x1e0928=_0x1e09();let _0x99ec1e=_0x1e0928[_0x69e5f6];return _0x99ec1e;}import{DEFAULT_FEISHU_REGISTRATION_ENV,DEFAULT_FEISHU_REGISTRATION_INTERVAL_MS,DEFAULT_FEISHU_REGISTRATION_TIMEOUT_MS,DINGTALK_DOC_MCP_SERVER_NAME,FEISHU_DOC_CONNECTOR_PLUGIN_ID,FEISHU_REGISTRATION_ENV_URLS,KDOCS_SKILL_ID,NETEASE_MAIL_CONNECTOR_PLUGIN_ID,QQBOT_PLUGIN_ID,QQ_MAIL_CONNECTOR_PLUGIN_ID,TENCENT_DOCS_SKILL_ID,TENCENT_DOCS_TOKEN_ENV,TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID,WECOM_PLUGIN_ID,WECHAT_PLUGIN_ID}from'./constants.mjs';import{applyFeishuChannelConfig,createConnectorPluginEntry,createDingtalkDocMcpServerConfig,normalizeFeishuDmPolicy,normalizeFeishuGroupPolicy,readOpenClawMcpServersFromConfig,writeOpenClawMcpServersToConfig}from'./config-utils.mjs';const KDOCS_CLI_STEP_TIMEOUT_MS=0x2bf20,KDOCS_CLI_AUTH_POLL_INTERVAL_MS=0x5dc,FEISHU_DOC_CLI_STEP_TIMEOUT_MS=0xa*0x3c*0x3e8;function safeString(_0x3e32bf){const _0xadaf51=_0x99ec;return typeof _0x3e32bf===_0xadaf51(0x2a5)?_0x3e32bf[_0xadaf51(0x279)]():'';}function findDingtalkDocMcpServer(_0x16b953){const _0x4d4f51=_0x99ec,_0x46b1d5=asRecord(_0x16b953[DINGTALK_DOC_MCP_SERVER_NAME]);if(Object['keys'](_0x46b1d5)[_0x4d4f51(0x21f)]>0x0)return _0x46b1d5;for(const [_0x47596f,_0x48b66c]of Object[_0x4d4f51(0x198)](_0x16b953)){const _0x1db3e6=asRecord(_0x48b66c),_0x4fb089=getTrimmedString(_0x47596f)[_0x4d4f51(0x130)+'ase'](),_0x37e90c=getTrimmedString(_0x1db3e6[_0x4d4f51(0x1d5)])['toLowerC'+_0x4d4f51(0x234)]();if(_0x4fb089[_0x4d4f51(0x2e9)](_0x4d4f51(0x202))||_0x4fb089['includes'](_0x4d4f51(0x26d))||_0x4fb089[_0x4d4f51(0x2e9)]('钉钉')||_0x37e90c[_0x4d4f51(0x2e9)](_0x4d4f51(0x202))||_0x37e90c['includes'](_0x4d4f51(0x26d)))return _0x1db3e6;}return{};}function createFeishuRegistrationClient(){const _0x36a267=_0x99ec,_0x5ad901=FEISHU_REGISTRATION_ENV_URLS[DEFAULT_FEISHU_REGISTRATION_ENV];if(!_0x5ad901)throw new Error(_0x36a267(0x208)+'ted\x20Feis'+_0x36a267(0x235)+'tration\x20'+_0x36a267(0x260)+DEFAULT_FEISHU_REGISTRATION_ENV);return{'baseUrl':_0x5ad901,'headers':{'Content-Type':_0x36a267(0x261)+_0x36a267(0x31d)+_0x36a267(0x178)+'rlencode'+'d'},'timeoutMs':DEFAULT_FEISHU_REGISTRATION_TIMEOUT_MS};}async function postFeishuRegistration(_0x383d17,_0x412da5){const _0x3ec291=_0x99ec,_0x4305b3=await fetch(_0x383d17[_0x3ec291(0x22a)]+(_0x3ec291(0x1cd)+'1/app/re'+_0x3ec291(0x2a8)+'on'),{'method':_0x3ec291(0x15d),'headers':_0x383d17[_0x3ec291(0x1d7)],'body':new URLSearchParams(_0x412da5)[_0x3ec291(0x291)](),'signal':AbortSignal['timeout'](_0x383d17[_0x3ec291(0x18a)+'s'])}),_0x2044fc=await _0x4305b3[_0x3ec291(0x22b)]()[_0x3ec291(0x132)](()=>({}));if(!_0x4305b3['ok']){const _0x41a66c=new Error(_0x3ec291(0x156)+_0x4305b3['status']);_0x41a66c[_0x3ec291(0x320)+_0x3ec291(0x230)]=_0x2044fc;throw _0x41a66c;}return asRecord(_0x2044fc);}async function initFeishuRegistration(_0x393bd2){const _0x5908c0=_0x99ec;return postFeishuRegistration(_0x393bd2,{'action':_0x5908c0(0x2ab)});}function _0x1e09(){const _0x43e4cb=['飞书\x20CLI\x20连','spawn\x20op','begin','expiresA','search','lient','lastInde','HTTPS_PR','qq\x20mail\x20','streamab','\x20not\x20sup','resolve','ing','p\x20URL','cret','lugin\x20de','user','map','cliAppId','plugins','plugin','ation_ur','then','tencent\x20','appSecre','error','utable','setSkill','appDevic','权状态验证失败','ail.qq.c','\x22\x20not\x20fo','call','set','rvalMs','replace','66747gSHInm','connecte','docs-cli','fresh','wecom','http:','clientSe','oxy','QR_READY','i\x20auth\x20l','slow_dow','client_s','fig','test','-weixin','usTimer','ession\x20i','\x20is\x20requ','\x20connect','正在检查飞书\x20C','oot','resolveS','连接成功','leted','includes','I\x20sessio','nConfig','enclaw\x20c','import','_doc','腾讯文档\x20Key','illEntry',',请先完成\x20kd','\x20doc\x20mcp','nector\x20p','join','微信连接插件,请','https_pr','docs\x20ski','poll','feishu-d','exists','d_auth_m','owFrom','igRaw','boolean','Invalid\x20','utf8','请输入有效的钉钉','deleteCh','openExte','Kdocs\x20CL','li_user','spawn','timer','scanned','kill','status','streamin','登录成功','接失败','ready','connecti','n?flow_i','kdocs-cl','r\x20\x22','hannel\x20c','netease\x20','pServer','失败,请确认\x20k','正在进入用户授权','match','login','cliAppSe','-code','权状态不符合用户','ion/x-ww','wechat-q','message','response','nodeExec','open_id','.json','deleteSk','oc\x20conne',',sheets,','ecret\x20应用','otRaw','allowFro','cliHostC','appTimer','verifyTi','startedA','\x20config\x20','飞书机器人\x20Ap','\x20chars)','channels','ope-auth','slice','egistrat','toLowerC','用绑定失败','catch','isArray','163\x20邮箱','auth','com','once','supporte','channelI','docs','s\x20requir','的新版客户端','allow','ion_uri','--versio','process','r\x20plugin','logout','\x20已安装','lePath','footer','transpor','setChann','扫码成功','wechat-l','pollInte','andledIn','tateDir','max','find','valid','device_c','elConfig','ternally','connecto','创建失败','88kYsEdc','HTTP\x20','d\x20is\x20req','groupPol','rnal','验证失败','protocol','complete','POST','2207196wtQNsd','6795648VRkHGa','onSucces','授权状态','logged\x20i','disabled','\x20device_','mcp','\x20plugin\x20','ode','annel\x20co','all_prox','end','update','CLOSED','飞书机器人','feishu_d','dated','\x20或\x20devic','dmPolicy','Feishu\x20r','identity','feishu\x20c','own,wiki','已连接过','ector','w-form-u','正在验证金山文档','onnector','code,请重试','setMcpSe','openId','push','writeCon','1279480rRCCXP','QQ\x20邮箱','企微助手\x20Sec','clear','groupAll','账号\x20is\x20re','.opencla','authStat','tionUriC','apiKey','timeoutM','error_de','onFailur','port\x20cli','pluginId','验证超时','output','金山文档授权状态','等待飞书用户授权','or\x20plugi','<empty>','ctor\x20plu','availabl','expired','entries','飞书绑定失败','smtp.163','scope_au','keys','thorizat','e\x20or\x20dev','quired','appId','gin\x20upda','onfig\x20up','http_pro','appExpir','slides,b','scriptio','support@','OXY','n\x20id\x20is\x20','enabled','ent_secr','tatus','文档\x20Strea','权状态验证超时','read','latest','function','完成应用创建','ession\x20n','skill','ll\x20updat','_id','errorMes','\x20channel','expire_i','--device','indexOf','open','ion_uri_','annelCon','ll\x20conne','client_i','nding','interval','飞书用户身份授权','wecom\x20ch','\x20in\x20begi','正在打开飞书用户','户授权失败','stdin','ocs-cli\x20','ccess','environm','Spawn\x20er','/oauth/v','openclaw','setPlugi','1.0.0','飞书绑定失败:','stdout','accountN','--brand','url','nfig\x20upd','headers','ALL_PROX','stderr','飞书开放平台应用','se.','entry','feishu_c','oc\x20CLI\x20s','get','身份要求:\x20','led','deleteMc','scriptPa','feishu','QQ机器人\x20Ap','金山文档登录启动','feishu\x20d','needs_re','\x20专用应用凭据缺','环境不支持创建\x20','parse','ill\x20','ion_flow','delete','zationCo','ocs:read','pending','mail','已扫描','30CdybvV','values','name',':authori','authoriz','lark-cli','企微助手','readConf','rcode','netease_','eCode','飞书开放平台未返','und','--domain','dingtalk','account','phase','smtp.qq.','mer','stringif','Unsuppor','n\x20update','ctor\x20del','full','close','ret\x20is\x20r','n\x20respon','exmail\x20c','oc-cli','回应用创建页面或','i_comple','flow_id','red','ame','飞书用户身份','金山文档已连接','expired_','check','sage','qqbot','ired','purpose','wechat','length','mail\x20con','金山文档','ethods','qq_mail','ot\x20found','tus','ecret','kdocs','tencent_','ation_pe','baseUrl','json','ated','WujieAI','verifica','飞书\x20CLI\x20执','Data','igSnapsh','ror:\x20','\x20deleted','ase','hu\x20regis','with\x20cod','sessionI','ocr','\x20updated','飞书应用创建失败','wujie.ai','onMode','Missing\x20','access_d','kdocs\x20sk','pID\x20is\x20r','ntervalM','user_inf','env','secret','Connecto','export','ill\x20enab','uired','ted','n\x20not\x20fo','create','ion\x20not\x20','dAt','--force-','code','飞书文档\x20CLI','object','https:','verify','ion_url','cret-std','钉钉文档\x20Str','toISOStr','botId','ector\x20de','ion\x20sess','3146406JgRSCz','data','accounts','飞书\x20CLI\x20授','skills','env:\x20','applicat','is\x20requi','428AODhxT','腾讯文档','doc_conn','飞书应用已创建,','rver','19610nFjZIV','mableHtt','equired','请在浏览器完成金','deleted','dingding','QQ助手',':user','hannels\x20','markConf','projectR','icy','imap.exm','ill\x20conn','Entry','already\x20','d\x20auth','trim','eted','prototyp','config','_complet','Error','bind','appPollC','et\x20auth.','pSecret\x20','executab','nfig\x20del','imap.163','cess','.com','ationUri','id\x20is\x20re','now','ERROR','行失败','websocke','tokenSta','572922QxwsXv','ent\x20does','toString','qqbot\x20ch','wechat-s','山文档授权','Feishu\x20d','--no-wai','usStarte','xOf','client','persistC','search:d','正在验证飞书授权','Login\x20su','金山文档尚未授权','tion_uri','found','/page/sc','r-log','exmail','失,无法初始化','string','用户已取消飞书机','重新生成','gistrati','Channel\x20','腾讯企业邮箱','init','filter'];_0x1e09=function(){return _0x43e4cb;};return _0x1e09();}async function beginFeishuRegistration(_0x2a3348){const _0x3ee424=_0x99ec;return postFeishuRegistration(_0x2a3348,{'action':_0x3ee424(0x2af),'archetype':'Personal'+'Agent','auth_method':_0x3ee424(0x2dc)+_0x3ee424(0x226),'request_user_info':_0x3ee424(0x322)});}async function pollFeishuRegistration(_0x49dad8,_0x2d6823){const _0x51a2fe=_0x99ec;try{return await postFeishuRegistration(_0x49dad8,{'action':_0x51a2fe(0x2f8),'device_code':_0x2d6823});}catch(_0x44e4af){if(_0x44e4af?.['response'+_0x51a2fe(0x230)]&&typeof _0x44e4af[_0x51a2fe(0x320)+_0x51a2fe(0x230)]===_0x51a2fe(0x251))return asRecord(_0x44e4af[_0x51a2fe(0x320)+_0x51a2fe(0x230)]);throw _0x44e4af;}}function extractFeishuRegistrationAuthorizationUri(_0x5d07c3){const _0x12d77e=_0x99ec,_0x4e3c5d=getTrimmedString(_0x5d07c3[_0x12d77e(0x1f8)+_0x12d77e(0x2c2)+_0x12d77e(0x212)+'te'])||getTrimmedString(_0x5d07c3['authoriz'+_0x12d77e(0x2c2)+'i'])||getTrimmedString(_0x5d07c3[_0x12d77e(0x19b)+_0x12d77e(0x19d)+_0x12d77e(0x1bd)+_0x12d77e(0x15c)])||getTrimmedString(_0x5d07c3[_0x12d77e(0x19b)+_0x12d77e(0x19d)+_0x12d77e(0x13e)])||getTrimmedString(_0x5d07c3['scope_au'+_0x12d77e(0x19d)+_0x12d77e(0x254)])||getTrimmedString(_0x5d07c3[_0x12d77e(0x1f8)+_0x12d77e(0x2c2)+'l']);if(_0x4e3c5d)return _0x4e3c5d;const _0xf8f594=getTrimmedString(_0x5d07c3[_0x12d77e(0x213)])||getTrimmedString(_0x5d07c3[_0x12d77e(0x19b)+_0x12d77e(0x19d)+_0x12d77e(0x1ed)+_0x12d77e(0x1b6)]);return _0xf8f594?FEISHU_REGISTRATION_ENV_URLS[DEFAULT_FEISHU_REGISTRATION_ENV]+(_0x12d77e(0x2a1)+_0x12d77e(0x12d)+'orizatio'+_0x12d77e(0x310)+'d=')+encodeURIComponent(_0xf8f594):null;}function serializeFeishuRegistrationSession(_0x8818cc){const _0x28cb0a=_0x99ec;return{'sessionId':_0x8818cc[_0x28cb0a(0x237)+'d'],'verificationUriComplete':_0x8818cc[_0x28cb0a(0x22e)+_0x28cb0a(0x188)+'omplete'],'expiresAt':new Date(_0x8818cc[_0x28cb0a(0x2b0)+'t'])[_0x28cb0a(0x257)+_0x28cb0a(0x2b9)](),'pollIntervalMs':_0x8818cc[_0x28cb0a(0x14a)+_0x28cb0a(0x2cf)],'status':_0x8818cc[_0x28cb0a(0x30a)],'errorMessage':_0x8818cc[_0x28cb0a(0x1b7)+_0x28cb0a(0x21a)],'purpose':_0x8818cc[_0x28cb0a(0x21d)],'authorizationUri':_0x8818cc['authoriz'+_0x28cb0a(0x288)]};}function extractFirstUrl(_0x4c4a56){const _0x30048b=_0x99ec,_0x468077=_0x4c4a56[_0x30048b(0x318)](/https?:\/\/[^\s"'<>]+/i);return _0x468077?_0x468077[0x0]:null;}function isKdocsAuthStatusReady(_0x1172ca){const _0x134cdf=_0x99ec,_0x786b71=_0x1172ca[_0x134cdf(0x130)+'ase']();if(/not\s+login|not\s+logged|unauth|未登录|未认证|未授权|失败/[_0x134cdf(0x2de)](_0x786b71))return![];return/login|logged|auth|valid|success|已登录|已认证|已授权|有效|成功/[_0x134cdf(0x2de)](_0x786b71);}function parseFeishuDocCliJson(_0x55b611){const _0x7bcc52=_0x99ec,_0x2cf64a=_0x55b611[_0x7bcc52(0x279)]();if(!_0x2cf64a)return{};try{return asRecord(JSON[_0x7bcc52(0x1eb)](_0x2cf64a));}catch{for(let _0x7fb94a=_0x2cf64a[_0x7bcc52(0x1bb)]('{');_0x7fb94a>=0x0;_0x7fb94a=_0x2cf64a[_0x7bcc52(0x1bb)]('{',_0x7fb94a+0x1)){for(let _0x38a83c=_0x2cf64a[_0x7bcc52(0x2b3)+_0x7bcc52(0x298)]('}');_0x38a83c>_0x7fb94a;_0x38a83c=_0x2cf64a[_0x7bcc52(0x2b3)+_0x7bcc52(0x298)]('}',_0x38a83c-0x1)){try{return asRecord(JSON[_0x7bcc52(0x1eb)](_0x2cf64a[_0x7bcc52(0x12e)](_0x7fb94a,_0x38a83c+0x1)));}catch{}}}return{};}}function summarizeCliOutput(_0x16a63d){const _0x4704bd=_0x99ec,_0x27e3e1=_0x16a63d['trim']();if(!_0x27e3e1)return _0x4704bd(0x194);return _0x27e3e1[_0x4704bd(0x21f)]>0x320?_0x27e3e1['slice'](0x0,0x320)+'...('+_0x27e3e1['length']+_0x4704bd(0x12b):_0x27e3e1;}function extractFeishuDocCliError(_0xd2c0ca,_0x9877f2){const _0x7af825=_0x99ec,_0x342bb8=parseFeishuDocCliJson(_0xd2c0ca),_0xc51af4=asRecord(_0x342bb8[_0x7af825(0x2c6)]),_0x1f5a71=getTrimmedString(_0xc51af4[_0x7af825(0x31f)]),_0x33952d=getTrimmedString(_0xc51af4['hint']);if(_0x1f5a71&&_0x33952d)return _0x1f5a71+'\x0a'+_0x33952d;if(_0x1f5a71)return _0x1f5a71;return _0xd2c0ca[_0x7af825(0x279)]()||_0x9877f2;}function getFeishuDocCliFailureMessage(_0x1648d0,_0x53240f,_0x20060b){const _0x5cd2bb=_0x99ec,_0x338c7a=_0x53240f[_0x5cd2bb(0x279)]()['split']('\x0a')[_0x5cd2bb(0x12e)](-0x8)[_0x5cd2bb(0x2f4)]('\x0a')[_0x5cd2bb(0x279)](),_0x26d8d2=_0x1648d0===_0x5cd2bb(0x24b)?_0x5cd2bb(0x1da)+_0x5cd2bb(0x154):_0x1648d0==='bind'?'飞书\x20CLI\x20应'+_0x5cd2bb(0x131):_0x1648d0===_0x5cd2bb(0x135)?'飞书\x20CLI\x20用'+_0x5cd2bb(0x1c7):_0x5cd2bb(0x25e)+_0x5cd2bb(0x2ca);return _0x338c7a?_0x26d8d2+':\x20'+_0x338c7a:_0x26d8d2+':\x20'+_0x20060b;}function ensureFeishuDocCliUserStatus(_0x2c9845){const _0x5af5cc=_0x99ec,_0x5040ee=parseFeishuDocCliJson(_0x2c9845),_0x2167fc=asRecord(_0x5040ee['identiti'+'es']),_0x3e7885=asRecord(_0x2167fc[_0x5af5cc(0x2bd)]),_0x398e9c=getTrimmedString(_0x5040ee[_0x5af5cc(0x173)]),_0x2b1885=getTrimmedString(_0x5040ee[_0x5af5cc(0x28e)+'tus'])||getTrimmedString(_0x3e7885[_0x5af5cc(0x28e)+_0x5af5cc(0x225)]),_0x3442aa=getTrimmedString(_0x3e7885[_0x5af5cc(0x30a)]),_0x36a662=_0x3e7885[_0x5af5cc(0x196)+'e']===!![];if(_0x398e9c!==_0x5af5cc(0x2bd)||_0x3442aa&&_0x3442aa!==_0x5af5cc(0x30e)||Object[_0x5af5cc(0x19c)](_0x3e7885)[_0x5af5cc(0x21f)]>0x0&&!_0x36a662||_0x2b1885!==_0x5af5cc(0x14f)&&_0x2b1885!==_0x5af5cc(0x1e8)+_0x5af5cc(0x2d4))throw new Error(_0x5af5cc(0x25e)+_0x5af5cc(0x31c)+_0x5af5cc(0x1e0)+_0x2c9845[_0x5af5cc(0x279)]());}function createKdocsCliStatus(_0x34f105){const _0x285aac=_0x99ec;return{'sessionId':_0x34f105[_0x285aac(0x237)+'d'],'status':_0x34f105[_0x285aac(0x30a)],'phase':_0x34f105['phase'],'url':_0x34f105[_0x285aac(0x1d5)],'message':_0x34f105['message'],'errorMessage':_0x34f105['errorMes'+_0x285aac(0x21a)]};}function createFeishuDocCliStatus(_0x17ce98){const _0x1ed09f=_0x99ec;return{'sessionId':_0x17ce98[_0x1ed09f(0x237)+'d'],'status':_0x17ce98['status'],'phase':_0x17ce98[_0x1ed09f(0x204)],'url':_0x17ce98[_0x1ed09f(0x1d5)],'message':_0x17ce98['message'],'errorMessage':_0x17ce98[_0x1ed09f(0x1b7)+_0x1ed09f(0x21a)]};}export function createConnectorController({shellConfig:_0x289442,configController:_0x4c5d4e,broadcast:_0x5f0c95,shell:_0x26bd83,getRuntimeSpawnContext:_0x565727,openClawConfigHandlers:openClawConfigHandlers={},resolveRuntimeKdocsCliCommand:_0x584c35,resolveRuntimeLarkCliCommand:_0x5a009f}){const _0x5b9c83=_0x99ec,_0x52a7c6=new Map(),_0x4979e9=new Map(),_0x1e7952=new Map();let _0x33111b=null;const _0x1c51aa=()=>_0x4c5d4e[_0x5b9c83(0x1fb)+_0x5b9c83(0x2fd)]();async function _0x228312(_0x15156a,_0x9d5f41){const _0x573360=_0x5b9c83;if(typeof openClawConfigHandlers[_0x573360(0x16b)]===_0x573360(0x1b1))return openClawConfigHandlers[_0x573360(0x16b)](_0x446245=>{const _0x48cabc=_0x573360;for(const _0x593684 of Object[_0x48cabc(0x19c)](_0x446245)){!Object[_0x48cabc(0x27b)+'e']['hasOwnPr'+'operty'][_0x48cabc(0x2cd)](_0x15156a,_0x593684)&&delete _0x446245[_0x593684];}Object['assign'](_0x446245,_0x15156a);},_0x9d5f41);return typeof _0x4c5d4e['persistC'+'onfig']==='function'?await _0x4c5d4e[_0x573360(0x29a)+'onfig'](_0x15156a,_0x9d5f41):(_0x4c5d4e[_0x573360(0x271)+'igWriteH'+_0x573360(0x14b)+_0x573360(0x152)]?.(),await _0x4c5d4e[_0x573360(0x17f)+_0x573360(0x2dd)](_0x15156a,_0x9d5f41)),{'ok':!![]};}function _0x13b585(){const _0x52c52e=_0x5b9c83;return join(_0x4c5d4e[_0x52c52e(0x2e6)+'tateDir'](),_0x52c52e(0x2f9)+_0x52c52e(0x210));}function _0x236006(){const _0x494c0c=_0x5b9c83;return join(_0x13b585(),_0x494c0c(0x186)+'w',_0x494c0c(0x1ce)+_0x494c0c(0x323));}async function _0x5f155f(_0x218ef1={}){const _0x24cebf=_0x5b9c83;return _0x565727(_0x289442[_0x24cebf(0x272)+_0x24cebf(0x2e5)],_0x218ef1);}async function _0x339c8b(_0x67b6a1,_0x12fa62){const _0x403155=_0x5b9c83,{env:_0x2e3ce3,runtime:_0x5a095d}=await _0x5f155f({'FORCE_COLOR':'0','HOME':homedir()}),_0x10592e=await _0x584c35(_0x5a095d);return _0x5f0c95(_0x403155(0x153)+'r-log',{'connector':_0x403155(0x227),'phase':_0x403155(0x306),'message':'kdocs-cl'+'i\x20'+_0x67b6a1[_0x403155(0x2f4)]('\x20')}),new Promise((_0x296bbc,_0x5f06c9)=>{const _0x591c09=_0x403155,_0x3e4311=spawn(_0x10592e[_0x591c09(0x283)+_0x591c09(0x144)],_0x67b6a1,{'cwd':homedir(),'env':_0x2e3ce3});let _0x38ff1e='';const _0x4c2521=_0x5c0f98=>{const _0x125e24=_0x591c09,_0x5e9623=_0x5c0f98[_0x125e24(0x291)](_0x125e24(0x300));_0x38ff1e+=_0x5e9623,_0x5f0c95(_0x125e24(0x153)+_0x125e24(0x2a2),{'connector':_0x125e24(0x227),'phase':'output','message':_0x5e9623});};_0x3e4311['stdout']['on']('data',_0x4c2521),_0x3e4311[_0x591c09(0x1d9)]['on'](_0x591c09(0x25c),_0x4c2521),_0x3e4311[_0x591c09(0x137)]('error',_0x5f06c9),_0x3e4311[_0x591c09(0x137)](_0x591c09(0x20c),_0x4f6abc=>_0x296bbc({'code':_0x4f6abc,'output':_0x38ff1e}));if(typeof _0x12fa62==='string')_0x3e4311[_0x591c09(0x1c8)][_0x591c09(0x16a)](_0x12fa62);else _0x3e4311[_0x591c09(0x1c8)]['end']();});}async function _0x52da7b(){const _0x213460=_0x5b9c83,_0x5eef05=await _0x1c51aa(),_0x65de3a=asRecord(_0x5eef05[_0x213460(0x25f)]),_0x453c24=asRecord(_0x65de3a[_0x213460(0x198)]),_0x41a0bb={...asRecord(_0x453c24[KDOCS_SKILL_ID]),'enabled':!![]};if(typeof openClawConfigHandlers[_0x213460(0x2c8)+_0x213460(0x276)]===_0x213460(0x1b1)){await openClawConfigHandlers[_0x213460(0x2c8)+_0x213460(0x276)]({'skillId':KDOCS_SKILL_ID,'entry':_0x41a0bb,'reason':_0x213460(0x23f)+_0x213460(0x247)+_0x213460(0x1e1)});return;}_0x453c24[KDOCS_SKILL_ID]=_0x41a0bb,_0x65de3a[_0x213460(0x198)]=_0x453c24,_0x5eef05['skills']=_0x65de3a,await _0x228312(_0x5eef05,_0x213460(0x23f)+_0x213460(0x247)+_0x213460(0x1e1));}async function _0x17bd77(_0x5a6598){const _0x25ca36=_0x5b9c83,_0x5b7a50=await _0x1c51aa(),_0x346997=asRecord(_0x5b7a50[_0x25ca36(0x25f)]),_0x224628=asRecord(_0x346997[_0x25ca36(0x198)]),_0x375678={...asRecord(_0x224628[KDOCS_SKILL_ID]),'enabled':Boolean(_0x5a6598)};if(typeof openClawConfigHandlers['setSkill'+'Entry']==='function'){await openClawConfigHandlers[_0x25ca36(0x2c8)+_0x25ca36(0x276)]({'skillId':KDOCS_SKILL_ID,'entry':_0x375678,'reason':_0x25ca36(0x23f)+_0x25ca36(0x1ec)+(_0x5a6598?_0x25ca36(0x1aa):_0x25ca36(0x163))});return;}_0x224628[KDOCS_SKILL_ID]=_0x375678,_0x346997[_0x25ca36(0x198)]=_0x224628,_0x5b7a50[_0x25ca36(0x25f)]=_0x346997,await _0x228312(_0x5b7a50,'kdocs\x20sk'+_0x25ca36(0x1ec)+(_0x5a6598?_0x25ca36(0x1aa):_0x25ca36(0x163)));}async function _0x4c5199(){const _0x4e4632=_0x5b9c83;if(typeof openClawConfigHandlers[_0x4e4632(0x11f)+_0x4e4632(0x2f0)]===_0x4e4632(0x1b1)){await openClawConfigHandlers[_0x4e4632(0x11f)+_0x4e4632(0x2f0)]({'skillId':KDOCS_SKILL_ID,'reason':_0x4e4632(0x23f)+_0x4e4632(0x275)+_0x4e4632(0x259)+_0x4e4632(0x2e8)});return;}const _0x449d45=await _0x1c51aa(),_0x23e247=asRecord(_0x449d45[_0x4e4632(0x25f)]),_0x42611e=asRecord(_0x23e247[_0x4e4632(0x198)]);delete _0x42611e[KDOCS_SKILL_ID],_0x23e247[_0x4e4632(0x198)]=_0x42611e,_0x449d45['skills']=_0x23e247,await _0x228312(_0x449d45,_0x4e4632(0x23f)+_0x4e4632(0x275)+_0x4e4632(0x259)+_0x4e4632(0x2e8));}async function _0x30c170(){const _0xca8206=_0x5b9c83;if(!await _0x4461a5())throw new Error('金山文档尚未授权'+_0xca8206(0x2f1)+_0xca8206(0x1c9)+'连接');return await _0x52da7b(),{'ok':!![]};}async function _0x4461a5(){const _0x500f29=_0x5b9c83,_0x1a4820=await _0x339c8b(['auth','status'])[_0x500f29(0x132)](()=>({'code':null,'output':''}));return _0x1a4820[_0x500f29(0x24f)]===0x0&&isKdocsAuthStatusReady(_0x1a4820[_0x500f29(0x190)]);}async function _0xd478cc({appId:_0x5310ef,appSecret:_0x3c539a,userInfo:userInfo=null}){const _0x40eedd=_0x5b9c83,_0x4dab42=await _0x1c51aa();applyFeishuChannelConfig(_0x4dab42,{'appId':_0x5310ef,'appSecret':_0x3c539a,'userInfo':userInfo});const _0x171f2c=asRecord(_0x4dab42[_0x40eedd(0x12c)]);if(typeof openClawConfigHandlers[_0x40eedd(0x147)+_0x40eedd(0x151)]==='function')return openClawConfigHandlers[_0x40eedd(0x147)+'elConfig']({'channelId':'feishu','channel':asRecord(_0x171f2c[_0x40eedd(0x1e4)]),'pluginId':_0x40eedd(0x1e4),'pluginEnabled':!![],'reason':_0x40eedd(0x174)+_0x40eedd(0x313)+_0x40eedd(0x1a2)+_0x40eedd(0x16f)});await _0x228312(_0x4dab42,_0x40eedd(0x174)+_0x40eedd(0x313)+_0x40eedd(0x1a2)+'dated');}async function _0x5c22ef({appId:_0x15b929,appSecret:_0x3db6ba,userInfo:userInfo=null,configPath:_0x2a2683}){const _0x5950a3=_0x5b9c83,_0x5a2ef6=getTrimmedString(userInfo?.[_0x5950a3(0x17d)]),_0x4d7f52={'channels':{'feishu':{'enabled':![],'appId':_0x15b929,'appSecret':_0x3db6ba,'domain':_0x5950a3(0x1e4),'connectionMode':_0x5950a3(0x28d)+'t','requireMention':!![],'dmPolicy':_0x5a2ef6?'allowlis'+'t':_0x5950a3(0x163),'groupPolicy':_0x5950a3(0x163),'streaming':!![],'allowFrom':_0x5a2ef6?[_0x5a2ef6]:[],'groupAllowFrom':[]}},'plugins':{'entries':{},'allow':[]},'tools':{'profile':_0x5950a3(0x20b)}};await mkdir(dirname(_0x2a2683),{'recursive':!![]}),await writeFile(_0x2a2683,JSON[_0x5950a3(0x207)+'y'](_0x4d7f52,null,0x2)+'\x0a',_0x5950a3(0x300));}async function _0x3f14c3(_0x4ca4aa={}){const _0x20f245=_0x5b9c83,_0x437236=safeString(_0x4ca4aa[_0x20f245(0x1a0)]),_0x318aea=safeString(_0x4ca4aa[_0x20f245(0x2c5)+'t']);if(!_0x437236)throw new Error('飞书机器人\x20Ap'+_0x20f245(0x240)+_0x20f245(0x26a));if(!_0x318aea)throw new Error(_0x20f245(0x12a)+_0x20f245(0x282)+_0x20f245(0x262)+_0x20f245(0x214));return await _0xd478cc({'appId':_0x437236,'appSecret':_0x318aea,'userInfo':null}),{'ok':!![]};}async function _0x1ff2ac(_0x110262={}){const _0x291e55=_0x5b9c83,_0x164489=safeString(_0x110262[_0x291e55(0x1a0)]),_0x19c4aa=safeString(_0x110262[_0x291e55(0x2d7)+_0x291e55(0x2bb)]);if(!_0x164489)throw new Error(_0x291e55(0x1e5)+_0x291e55(0x240)+'equired');if(!_0x19c4aa)throw new Error(_0x291e55(0x1e5)+_0x291e55(0x282)+_0x291e55(0x262)+_0x291e55(0x214));const _0x1490e0=await _0x1c51aa(),_0x27a068=asRecord(_0x1490e0['channels']),_0x24dc57=asRecord(_0x27a068[_0x291e55(0x21b)]),_0x520349={'enabled':typeof _0x24dc57['enabled']===_0x291e55(0x2fe)?_0x24dc57[_0x291e55(0x1aa)]:!![],'allowFrom':['*'],'appId':_0x164489,'clientSecret':_0x19c4aa};if(typeof openClawConfigHandlers[_0x291e55(0x147)+'elConfig']===_0x291e55(0x1b1))return openClawConfigHandlers['setChann'+_0x291e55(0x151)]({'channelId':_0x291e55(0x21b),'channel':_0x520349,'pluginId':QQBOT_PLUGIN_ID,'pluginEnabled':!![],'reason':'qqbot\x20ch'+_0x291e55(0x168)+_0x291e55(0x1d6)+_0x291e55(0x22c)});_0x27a068[_0x291e55(0x21b)]=_0x520349,_0x1490e0[_0x291e55(0x12c)]=_0x27a068;const _0x53a2da=asRecord(_0x1490e0[_0x291e55(0x2c0)]),_0x347fca=asRecord(_0x53a2da[_0x291e55(0x198)]);return _0x347fca[QQBOT_PLUGIN_ID]={...asRecord(_0x347fca[QQBOT_PLUGIN_ID]),'enabled':!![]},_0x53a2da[_0x291e55(0x198)]=_0x347fca,_0x53a2da['allow']=dedupeStrings([...asStringArray(_0x53a2da[_0x291e55(0x13d)]),QQBOT_PLUGIN_ID]),_0x1490e0[_0x291e55(0x2c0)]=_0x53a2da,await _0x228312(_0x1490e0,_0x291e55(0x292)+'annel\x20co'+_0x291e55(0x1d6)+_0x291e55(0x22c)),{'ok':!![]};}async function _0x118efe(_0x312bad={}){const _0x34d3a7=_0x5b9c83,_0x33db0a=safeString(_0x312bad[_0x34d3a7(0x258)]),_0x2efbd4=safeString(_0x312bad[_0x34d3a7(0x244)]);if(!_0x33db0a)throw new Error('企微助手\x20Bot'+'ID\x20is\x20re'+'quired');if(!_0x2efbd4)throw new Error(_0x34d3a7(0x182)+_0x34d3a7(0x20d)+_0x34d3a7(0x26a));const _0x567989=await _0x1c51aa(),_0x14f87a=asRecord(_0x567989[_0x34d3a7(0x12c)]),_0x370bba=asRecord(_0x14f87a['wecom']),_0x5698ab={..._0x370bba,'enabled':typeof _0x370bba[_0x34d3a7(0x1aa)]===_0x34d3a7(0x2fe)?_0x370bba['enabled']:!![],'name':getTrimmedString(_0x370bba[_0x34d3a7(0x1f6)])||'企微助手','connectionMode':getTrimmedString(_0x370bba[_0x34d3a7(0x30f)+_0x34d3a7(0x23c)])||'websocke'+'t','dmPolicy':normalizeFeishuDmPolicy(_0x370bba[_0x34d3a7(0x171)])??_0x34d3a7(0x1bc),'groupPolicy':normalizeFeishuGroupPolicy(_0x370bba[_0x34d3a7(0x158)+_0x34d3a7(0x273)])??_0x34d3a7(0x1bc),'allowFrom':asStringArray(_0x370bba[_0x34d3a7(0x124)+'m']),'groupAllowFrom':asStringArray(_0x370bba[_0x34d3a7(0x184)+_0x34d3a7(0x2fc)]),'botId':_0x33db0a,'secret':_0x2efbd4};if(typeof openClawConfigHandlers[_0x34d3a7(0x147)+'elConfig']===_0x34d3a7(0x1b1))return openClawConfigHandlers['setChann'+_0x34d3a7(0x151)]({'channelId':_0x34d3a7(0x2d5),'channel':_0x5698ab,'pluginId':WECOM_PLUGIN_ID,'pluginEnabled':!![],'reason':_0x34d3a7(0x1c4)+_0x34d3a7(0x168)+_0x34d3a7(0x1d6)+_0x34d3a7(0x22c)});_0x14f87a[_0x34d3a7(0x2d5)]=_0x5698ab,_0x567989[_0x34d3a7(0x12c)]=_0x14f87a;const _0x2430f2=asRecord(_0x567989[_0x34d3a7(0x2c0)]),_0x40a59c=asRecord(_0x2430f2[_0x34d3a7(0x198)]);return _0x40a59c[WECOM_PLUGIN_ID]={...asRecord(_0x40a59c[WECOM_PLUGIN_ID]),'enabled':!![]},_0x2430f2['entries']=_0x40a59c,_0x2430f2[_0x34d3a7(0x13d)]=dedupeStrings([...asStringArray(_0x2430f2[_0x34d3a7(0x13d)]),WECOM_PLUGIN_ID]),_0x567989[_0x34d3a7(0x2c0)]=_0x2430f2,await _0x228312(_0x567989,_0x34d3a7(0x1c4)+_0x34d3a7(0x168)+_0x34d3a7(0x1d6)+_0x34d3a7(0x22c)),{'ok':!![]};}async function _0xe8344c(_0x37761e,_0x273f27,_0x4e3830,_0x55f78c){const _0x1d0876=_0x5b9c83,_0x2d7fc5=safeString(_0x273f27[_0x1d0876(0x203)]),_0x3a87db=String(_0x273f27['authoriz'+'ationCod'+'e']||'')[_0x1d0876(0x2d0)](/\s+/g,'');if(!_0x2d7fc5)throw new Error(_0x55f78c+(_0x1d0876(0x185)+_0x1d0876(0x19f)));if(!_0x3a87db)throw new Error(_0x55f78c+('授权码\x20is\x20r'+_0x1d0876(0x26a)));const _0x147ebe=await _0x1c51aa(),_0x2367f2=asRecord(_0x147ebe[_0x1d0876(0x2c0)]),_0x280c59=asRecord(_0x2367f2[_0x1d0876(0x198)]),_0x3f6d73=createConnectorPluginEntry(_0x37761e,_0x280c59[_0x37761e],!![],{'account':_0x2d7fc5,'authorizationCode':_0x3a87db,..._0x4e3830});if(typeof openClawConfigHandlers[_0x1d0876(0x1cf)+_0x1d0876(0x2eb)]==='function')return openClawConfigHandlers[_0x1d0876(0x1cf)+'nConfig']({'pluginId':_0x37761e,'enabled':!![],'config':asRecord(_0x3f6d73[_0x1d0876(0x27c)]),'reason':_0x37761e+(_0x1d0876(0x2e3)+_0x1d0876(0x193)+_0x1d0876(0x209)+'d')});return _0x280c59[_0x37761e]=_0x3f6d73,_0x2367f2[_0x1d0876(0x198)]=_0x280c59,_0x2367f2['allow']=dedupeStrings([...asStringArray(_0x2367f2[_0x1d0876(0x13d)]),_0x37761e]),_0x147ebe[_0x1d0876(0x2c0)]=_0x2367f2,await _0x228312(_0x147ebe,_0x37761e+(_0x1d0876(0x2e3)+_0x1d0876(0x193)+_0x1d0876(0x209)+'d')),{'ok':!![]};}const _0x5bcffa=_0x391eb0=>_0xe8344c(QQ_MAIL_CONNECTOR_PLUGIN_ID,_0x391eb0,{'imapHost':'imap.qq.'+'com','imapPort':0x3e1,'smtpHost':_0x5b9c83(0x205)+_0x5b9c83(0x136),'smtpPort':0x1d1,'secure':!![]},_0x5b9c83(0x181)),_0x10e776=_0x2a4d88=>_0xe8344c(NETEASE_MAIL_CONNECTOR_PLUGIN_ID,_0x2a4d88,{'imapHost':_0x5b9c83(0x285)+_0x5b9c83(0x287),'imapPort':0x3e1,'smtpHost':_0x5b9c83(0x19a)+_0x5b9c83(0x287),'smtpPort':0x1d1,'imapClientName':'WujieAI','imapClientVersion':_0x5b9c83(0x1d0),'imapClientVendor':_0x5b9c83(0x22d),'imapClientSupportEmail':_0x5b9c83(0x1a7)+_0x5b9c83(0x23b),'secure':!![]},'163\x20邮箱'),_0x2d50c5=_0x5dab91=>_0xe8344c(TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID,_0x5dab91,{'imapHost':_0x5b9c83(0x274)+'ail.qq.c'+'om','imapPort':0x3e1,'smtpHost':'smtp.exm'+_0x5b9c83(0x2cb)+'om','smtpPort':0x1d1,'secure':!![]},'腾讯企业邮箱');async function _0x3f4da3(_0xc7a6e5={}){const _0x4a9977=_0x5b9c83,_0x25a2b5=safeString(_0xc7a6e5[_0x4a9977(0x1d3)+_0x4a9977(0x215)])||_0x4a9977(0x216),_0x51c652=await _0x1c51aa(),_0x532f50=asRecord(_0x51c652[_0x4a9977(0x2c0)]),_0xf3446e=asRecord(_0x532f50[_0x4a9977(0x198)]),_0x570cbf=createConnectorPluginEntry(FEISHU_DOC_CONNECTOR_PLUGIN_ID,_0xf3446e[FEISHU_DOC_CONNECTOR_PLUGIN_ID],!![],{'authMode':_0x4a9977(0x2bd),'accountName':_0x25a2b5});if(typeof openClawConfigHandlers['setPlugi'+_0x4a9977(0x2eb)]===_0x4a9977(0x1b1))return openClawConfigHandlers[_0x4a9977(0x1cf)+'nConfig']({'pluginId':FEISHU_DOC_CONNECTOR_PLUGIN_ID,'enabled':!![],'config':asRecord(_0x570cbf[_0x4a9977(0x27c)]),'reason':'feishu\x20d'+'oc\x20conne'+_0x4a9977(0x195)+'gin\x20upda'+_0x4a9977(0x249)});return _0xf3446e[FEISHU_DOC_CONNECTOR_PLUGIN_ID]=_0x570cbf,_0x532f50[_0x4a9977(0x198)]=_0xf3446e,_0x532f50['allow']=dedupeStrings([...asStringArray(_0x532f50['allow']),FEISHU_DOC_CONNECTOR_PLUGIN_ID]),_0x51c652[_0x4a9977(0x2c0)]=_0x532f50,await _0x228312(_0x51c652,_0x4a9977(0x1e7)+_0x4a9977(0x120)+_0x4a9977(0x195)+_0x4a9977(0x1a1)+_0x4a9977(0x249)),{'ok':!![]};}async function _0x2ce4ec(_0x43fc9f={}){const _0x38324b=_0x5b9c83,_0x3189de=safeString(_0x43fc9f[_0x38324b(0x189)]);if(!_0x3189de)throw new Error(_0x38324b(0x2ef)+_0x38324b(0x2e2)+_0x38324b(0x21c));const _0x1f3077=await _0x1c51aa(),_0x2c8359=asRecord(_0x1f3077[_0x38324b(0x25f)]),_0x7fb00c=asRecord(_0x2c8359[_0x38324b(0x198)]),_0x381b53=asRecord(_0x7fb00c[TENCENT_DOCS_SKILL_ID]),_0x1787ac={..._0x381b53,'enabled':!![],'env':{...asRecord(_0x381b53[_0x38324b(0x243)]),[TENCENT_DOCS_TOKEN_ENV]:_0x3189de}};if(typeof openClawConfigHandlers[_0x38324b(0x2c8)+_0x38324b(0x276)]===_0x38324b(0x1b1))return openClawConfigHandlers[_0x38324b(0x2c8)+_0x38324b(0x276)]({'skillId':TENCENT_DOCS_SKILL_ID,'entry':_0x1787ac,'reason':_0x38324b(0x2c4)+_0x38324b(0x2f7)+_0x38324b(0x1b5)+'ed'});return _0x7fb00c[TENCENT_DOCS_SKILL_ID]=_0x1787ac,_0x2c8359[_0x38324b(0x198)]=_0x7fb00c,_0x1f3077[_0x38324b(0x25f)]=_0x2c8359,await _0x228312(_0x1f3077,_0x38324b(0x2c4)+_0x38324b(0x2f7)+_0x38324b(0x1b5)+'ed'),{'ok':!![]};}async function _0x430570(_0xe92d48={}){const _0x222849=_0x5b9c83,_0x20ab79=safeString(_0xe92d48[_0x222849(0x1d5)]);if(!_0x20ab79)throw new Error(_0x222849(0x256)+'eamableH'+'ttp\x20URL\x20'+_0x222849(0x262)+_0x222849(0x214));try{const _0x364e79=new URL(_0x20ab79);if(![_0x222849(0x2d6),_0x222849(0x252)][_0x222849(0x2e9)](_0x364e79[_0x222849(0x15b)]))throw new Error(_0x222849(0x2ff)+_0x222849(0x15b));}catch{throw new Error(_0x222849(0x301)+_0x222849(0x1ad)+_0x222849(0x269)+_0x222849(0x2ba));}if(typeof openClawConfigHandlers[_0x222849(0x17c)+_0x222849(0x267)]===_0x222849(0x1b1))return openClawConfigHandlers[_0x222849(0x17c)+_0x222849(0x267)]({'serverName':DINGTALK_DOC_MCP_SERVER_NAME,'server':createDingtalkDocMcpServerConfig(_0x20ab79),'reason':_0x222849(0x202)+_0x222849(0x2f2)+_0x222849(0x239)});const _0x456030=await _0x1c51aa(),_0x2e44f1=readOpenClawMcpServersFromConfig(_0x456030);return _0x2e44f1[DINGTALK_DOC_MCP_SERVER_NAME]=createDingtalkDocMcpServerConfig(_0x20ab79),writeOpenClawMcpServersToConfig(_0x456030,_0x2e44f1),await _0x228312(_0x456030,_0x222849(0x202)+'\x20doc\x20mcp'+_0x222849(0x239)),{'ok':!![]};}async function _0x3d4b65(){const _0x4cbd1a=_0x5b9c83,_0x369075=await _0x1c51aa(),_0xac322=asRecord(_0x369075[_0x4cbd1a(0x2c0)]),_0x379cf5=asRecord(_0xac322[_0x4cbd1a(0x198)]),_0x33b163=asRecord(_0x369075[_0x4cbd1a(0x25f)]),_0x379a60=asRecord(_0x33b163['entries']),_0x238b51={},_0x542852=_0x3b022b=>{const _0x325ed8=_0x4cbd1a,_0xc6e959=asRecord(_0x379cf5[_0x3b022b]);return{'entry':_0xc6e959,'config':asRecord(_0xc6e959[_0x325ed8(0x27c)])};},_0x5bf6fb=(_0x53e433,_0x24c11f,_0x349bfd)=>{const _0xe21a99=_0x4cbd1a,{entry:_0xd338db,config:_0xfb1e51}=_0x542852(_0x24c11f),_0x1f5cba=getTrimmedString(_0xfb1e51[_0xe21a99(0x203)]);if(!_0x1f5cba)return;_0x238b51[_0x53e433]={'provider':_0x53e433,'sourceType':_0xe21a99(0x2c1),'adapter':_0x24c11f,'enabled':_0xd338db[_0xe21a99(0x1aa)]!==![]&&_0xfb1e51[_0xe21a99(0x1aa)]!==![],'account':_0x1f5cba,'credentialRef':_0x24c11f+(_0xe21a99(0x1f7)+_0xe21a99(0x1ef)+'de'),'name':_0x349bfd};};_0x5bf6fb(_0x4cbd1a(0x223),QQ_MAIL_CONNECTOR_PLUGIN_ID,'QQ\x20邮箱'),_0x5bf6fb(_0x4cbd1a(0x1fd)+_0x4cbd1a(0x1f2),NETEASE_MAIL_CONNECTOR_PLUGIN_ID,_0x4cbd1a(0x134)),_0x5bf6fb(_0x4cbd1a(0x228)+_0x4cbd1a(0x2a3),TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID,_0x4cbd1a(0x2aa));const _0x9c5691=_0x542852(FEISHU_DOC_CONNECTOR_PLUGIN_ID),_0x2c8dc4=getTrimmedString(_0x9c5691[_0x4cbd1a(0x27c)]['accountN'+_0x4cbd1a(0x215)]);_0x2c8dc4&&(_0x238b51[_0x4cbd1a(0x1e4)]={'provider':_0x4cbd1a(0x1e4),'sourceType':_0x4cbd1a(0x1f9),'adapter':_0x4cbd1a(0x1dd)+_0x4cbd1a(0x305),'enabled':_0x9c5691[_0x4cbd1a(0x1dc)]['enabled']!==![]&&_0x9c5691[_0x4cbd1a(0x27c)][_0x4cbd1a(0x1aa)]!==![],'authMode':_0x4cbd1a(0x2bd),'accountName':_0x2c8dc4,'account':_0x2c8dc4,'credentialRef':FEISHU_DOC_CONNECTOR_PLUGIN_ID+_0x4cbd1a(0x26f),'capabilities':[_0x4cbd1a(0x1b0),_0x4cbd1a(0x2b1),'create',_0x4cbd1a(0x1af),_0x4cbd1a(0x16b),_0x4cbd1a(0x1ee),_0x4cbd1a(0x246)]});const _0x4a97aa=asRecord(_0x379a60[TENCENT_DOCS_SKILL_ID]),_0x454765=asRecord(_0x4a97aa[_0x4cbd1a(0x243)]),_0x5782c3=getTrimmedString(_0x454765[TENCENT_DOCS_TOKEN_ENV]);_0x5782c3&&(_0x238b51[_0x4cbd1a(0x228)+_0x4cbd1a(0x13a)]={'provider':_0x4cbd1a(0x228)+_0x4cbd1a(0x13a),'sourceType':_0x4cbd1a(0x1b4),'adapter':TENCENT_DOCS_SKILL_ID,'enabled':_0x4a97aa[_0x4cbd1a(0x1aa)]!==![],'account':_0x4cbd1a(0x264),'credentialRef':TENCENT_DOCS_SKILL_ID+':'+TENCENT_DOCS_TOKEN_ENV,'capabilities':[_0x4cbd1a(0x24b),_0x4cbd1a(0x1af),_0x4cbd1a(0x16b),'delete',_0x4cbd1a(0x2ed),_0x4cbd1a(0x246),_0x4cbd1a(0x238)]});const _0x55f601=asRecord(_0x379a60[KDOCS_SKILL_ID]);Object['keys'](_0x55f601)['length']>0x0&&await _0x4461a5()&&(_0x238b51[_0x4cbd1a(0x227)]={'provider':_0x4cbd1a(0x227),'sourceType':_0x4cbd1a(0x1b4),'adapter':KDOCS_SKILL_ID,'enabled':_0x55f601[_0x4cbd1a(0x1aa)]!==![],'account':_0x4cbd1a(0x221),'credentialRef':_0x4cbd1a(0x311)+'i:keycha'+'in','capabilities':[_0x4cbd1a(0x24b),_0x4cbd1a(0x1af),_0x4cbd1a(0x16b),_0x4cbd1a(0x2b1),'share',_0x4cbd1a(0x2ed),_0x4cbd1a(0x246)]});const _0x315587=readOpenClawMcpServersFromConfig(_0x369075),_0x5a5fd3=findDingtalkDocMcpServer(_0x315587),_0x7a36e6=getTrimmedString(_0x5a5fd3[_0x4cbd1a(0x1d5)]);return _0x7a36e6&&(_0x238b51['dingtalk'+_0x4cbd1a(0x2ee)]={'provider':_0x4cbd1a(0x202)+_0x4cbd1a(0x2ee),'sourceType':_0x4cbd1a(0x165),'adapter':DINGTALK_DOC_MCP_SERVER_NAME,'enabled':_0x5a5fd3[_0x4cbd1a(0x1aa)]!==![],'url':_0x7a36e6,'transport':getTrimmedString(_0x5a5fd3[_0x4cbd1a(0x146)+'t'])||_0x4cbd1a(0x2b6)+'le-http'}),_0x238b51;}async function _0x1b31a9(){const _0x2e6d9d=_0x5b9c83,_0x22d5cf=await _0x4c5d4e[_0x2e6d9d(0x1fb)+_0x2e6d9d(0x231)+_0x2e6d9d(0x123)]();return{..._0x22d5cf,'connectors':{...asRecord(_0x22d5cf[_0x2e6d9d(0x153)+'rs']),...await _0x3d4b65()}};}function _0x13a853(_0x50ecf2){const _0x308225=_0x5b9c83;if(!_0x50ecf2['verifyTi'+_0x308225(0x206)])return;clearTimeout(_0x50ecf2[_0x308225(0x127)+_0x308225(0x206)]),_0x50ecf2['verifyTi'+_0x308225(0x206)]=null;}function _0x203471(_0x47f5db,_0x167f16=KDOCS_CLI_AUTH_POLL_INTERVAL_MS){const _0x380340=_0x5b9c83;if(_0x47f5db['status']!==_0x380340(0x1f1))return;_0x13a853(_0x47f5db),_0x47f5db[_0x380340(0x127)+_0x380340(0x206)]=setTimeout(()=>void _0x5491b0(_0x47f5db),_0x167f16);}async function _0x5491b0(_0x297f17){const _0xc4cd83=_0x5b9c83;if(_0x297f17[_0xc4cd83(0x30a)]!==_0xc4cd83(0x1f1))return;_0x297f17[_0xc4cd83(0x204)]=_0xc4cd83(0x253),_0x297f17['message']=_0xc4cd83(0x179)+'授权状态';try{const _0x781834=await _0x339c8b([_0xc4cd83(0x135),'status']);_0x297f17[_0xc4cd83(0x190)]=_0x781834[_0xc4cd83(0x190)];if(_0x781834[_0xc4cd83(0x24f)]===0x0&&isKdocsAuthStatusReady(_0x781834[_0xc4cd83(0x190)])){_0x13a853(_0x297f17),await _0x52da7b(),_0x297f17['phase']=_0xc4cd83(0x15c)+'d',_0x297f17[_0xc4cd83(0x30a)]='complete'+'d',_0x297f17[_0xc4cd83(0x31f)]=_0xc4cd83(0x217);return;}if(Date[_0xc4cd83(0x28a)]()-_0x297f17[_0xc4cd83(0x128)+'t']>KDOCS_CLI_STEP_TIMEOUT_MS){_0x297f17['status']=_0xc4cd83(0x2c6),_0x297f17[_0xc4cd83(0x1b7)+_0xc4cd83(0x21a)]=_0xc4cd83(0x191)+_0xc4cd83(0x18f);return;}_0x203471(_0x297f17);}catch(_0x7d1e98){if(Date[_0xc4cd83(0x28a)]()-_0x297f17[_0xc4cd83(0x128)+'t']>KDOCS_CLI_STEP_TIMEOUT_MS){_0x297f17[_0xc4cd83(0x30a)]=_0xc4cd83(0x2c6),_0x297f17[_0xc4cd83(0x1b7)+_0xc4cd83(0x21a)]=_0x7d1e98 instanceof Error?_0x7d1e98[_0xc4cd83(0x31f)]:_0xc4cd83(0x191)+_0xc4cd83(0x15a);return;}_0x203471(_0x297f17);}}async function _0x4461a4(){const _0x5a80b2=_0x5b9c83,_0x127eb5=randomUUID(),_0x1f1a74={'sessionId':_0x127eb5,'status':_0x5a80b2(0x1f1),'phase':_0x5a80b2(0x219),'url':null,'message':'正在启动金山文档'+'登录','errorMessage':null,'output':'','process':null,'verifyTimer':null,'startedAt':Date[_0x5a80b2(0x28a)]()};return _0x52a7c6[_0x5a80b2(0x2ce)](_0x127eb5,_0x1f1a74),void _0x5f155f({'FORCE_COLOR':'0','HOME':homedir()})[_0x5a80b2(0x2c3)](async({env:_0x35f413,runtime:_0x5bf1a5})=>{const _0x1b435f=_0x5a80b2,_0x3b95a=await _0x584c35(_0x5bf1a5);_0x5f0c95('connecto'+_0x1b435f(0x2a2),{'connector':_0x1b435f(0x227),'phase':_0x1b435f(0x306),'message':'kdocs-cl'+_0x1b435f(0x2da)+'ogin'});const _0x2da02c=spawn(_0x3b95a['executab'+_0x1b435f(0x144)],[_0x1b435f(0x135),_0x1b435f(0x319)],{'cwd':homedir(),'env':_0x35f413});_0x1f1a74['process']=_0x2da02c;const _0x484273=setTimeout(()=>{const _0x4dc631=_0x1b435f;if(_0x1f1a74[_0x4dc631(0x30a)]!==_0x4dc631(0x1f1))return;_0x2da02c[_0x4dc631(0x309)](),_0x1f1a74['status']=_0x4dc631(0x2c6),_0x1f1a74[_0x4dc631(0x1b7)+'sage']=_0x4dc631(0x1e6)+'超时',_0x1f1a74[_0x4dc631(0x140)]=null;},KDOCS_CLI_STEP_TIMEOUT_MS),_0x39a2e6=_0x232834=>{const _0x512010=_0x1b435f,_0x1eb475=_0x232834[_0x512010(0x291)](_0x512010(0x300));_0x1f1a74['output']+=_0x1eb475,_0x5f0c95(_0x512010(0x153)+_0x512010(0x2a2),{'connector':_0x512010(0x227),'phase':_0x512010(0x190),'message':_0x1eb475});const _0x13cce6=extractFirstUrl(_0x1f1a74['output']);_0x13cce6&&!_0x1f1a74[_0x512010(0x1d5)]&&(_0x1f1a74[_0x512010(0x1d5)]=_0x13cce6,_0x1f1a74[_0x512010(0x204)]=_0x512010(0x135),_0x1f1a74['message']=_0x512010(0x26b)+_0x512010(0x294),_0x203471(_0x1f1a74,0x1f4),void _0x26bd83[_0x512010(0x303)+_0x512010(0x159)](_0x13cce6)['catch'](()=>{}));};_0x2da02c[_0x1b435f(0x1d2)]['on']('data',_0x39a2e6),_0x2da02c[_0x1b435f(0x1d9)]['on'](_0x1b435f(0x25c),_0x39a2e6),_0x2da02c[_0x1b435f(0x1c8)][_0x1b435f(0x16a)](),_0x2da02c[_0x1b435f(0x137)]('error',_0x350edd=>{const _0x10f1a8=_0x1b435f;clearTimeout(_0x484273),_0x1f1a74['status']=_0x10f1a8(0x2c6),_0x1f1a74['errorMes'+_0x10f1a8(0x21a)]=_0x350edd instanceof Error?_0x350edd[_0x10f1a8(0x31f)]:_0x10f1a8(0x1e6)+'失败,请确认\x20k'+_0x10f1a8(0x2d3)+_0x10f1a8(0x143),_0x1f1a74[_0x10f1a8(0x140)]=null,_0x5f0c95(_0x10f1a8(0x153)+_0x10f1a8(0x2a2),{'connector':_0x10f1a8(0x227),'phase':_0x10f1a8(0x2c6),'message':_0x1f1a74['errorMes'+_0x10f1a8(0x21a)]});}),_0x2da02c[_0x1b435f(0x137)](_0x1b435f(0x20c),_0x18aaf0=>{const _0x1b2d3d=_0x1b435f;clearTimeout(_0x484273),_0x1f1a74['process']=null;if(_0x1f1a74['status']!==_0x1b2d3d(0x1f1))return;const _0x377187=extractFirstUrl(_0x1f1a74[_0x1b2d3d(0x190)]);if(_0x377187&&!_0x1f1a74[_0x1b2d3d(0x1d5)]){_0x1f1a74[_0x1b2d3d(0x1d5)]=_0x377187,_0x1f1a74['phase']=_0x1b2d3d(0x135),_0x1f1a74[_0x1b2d3d(0x31f)]=_0x1b2d3d(0x26b)+_0x1b2d3d(0x294),_0x203471(_0x1f1a74,0x1f4);return;}if(_0x18aaf0!==0x0){_0x1f1a74[_0x1b2d3d(0x30a)]=_0x1b2d3d(0x2c6),_0x1f1a74['errorMes'+_0x1b2d3d(0x21a)]=_0x1f1a74[_0x1b2d3d(0x190)]['trim']()||_0x1b2d3d(0x1e6)+_0x1b2d3d(0x316)+_0x1b2d3d(0x2d3)+_0x1b2d3d(0x143),_0x5f0c95(_0x1b2d3d(0x153)+_0x1b2d3d(0x2a2),{'connector':'kdocs','phase':'error','message':_0x1f1a74[_0x1b2d3d(0x1b7)+_0x1b2d3d(0x21a)]});return;}_0x1f1a74[_0x1b2d3d(0x204)]=_0x1b2d3d(0x253),_0x1f1a74[_0x1b2d3d(0x31f)]=_0x1b2d3d(0x179)+_0x1b2d3d(0x161),_0x203471(_0x1f1a74,0x1f4);});})[_0x5a80b2(0x132)](_0x3d2e2a=>{const _0x18d032=_0x5a80b2;_0x1f1a74[_0x18d032(0x30a)]=_0x18d032(0x2c6),_0x1f1a74[_0x18d032(0x1b7)+_0x18d032(0x21a)]=_0x3d2e2a instanceof Error?_0x3d2e2a['message']:_0x18d032(0x1e6)+_0x18d032(0x316)+_0x18d032(0x2d3)+_0x18d032(0x143),_0x5f0c95('connecto'+'r-log',{'connector':_0x18d032(0x227),'phase':'error','message':_0x1f1a74[_0x18d032(0x1b7)+'sage']});}),createKdocsCliStatus(_0x1f1a74);}function _0x30f729(_0x39ed39={}){const _0x582856=_0x5b9c83,_0x32a0f5=safeString(_0x39ed39['sessionI'+'d']);if(!_0x32a0f5)throw new Error(_0x582856(0x304)+'I\x20sessio'+_0x582856(0x1a9)+'required');const _0x20b8eb=_0x52a7c6[_0x582856(0x1df)](_0x32a0f5);if(!_0x20b8eb)throw new Error(_0x582856(0x304)+_0x582856(0x2ea)+_0x582856(0x24a)+_0x582856(0x200));return createKdocsCliStatus(_0x20b8eb);}function _0x6a3a2d(_0xbef5fd={}){const _0x25806d=_0x5b9c83,_0x1fd82b=safeString(_0xbef5fd['sessionI'+'d']);if(!_0x1fd82b)return{'ok':!![]};const _0x51f1f6=_0x52a7c6['get'](_0x1fd82b);if(!_0x51f1f6)return{'ok':!![]};return _0x13a853(_0x51f1f6),_0x51f1f6['process']?.['kill'](),_0x52a7c6[_0x25806d(0x1ee)](_0x1fd82b),{'ok':!![]};}function _0x3d90a5(_0x1b02b4){const _0x784700=_0x5b9c83;if(!_0x1b02b4[_0x784700(0x307)])return;clearTimeout(_0x1b02b4[_0x784700(0x307)]),_0x1b02b4['timer']=null;}function _0x5257c8(_0x29c0ca){const _0x2809d8=_0x5b9c83,_0x712a39=_0x4979e9[_0x2809d8(0x1df)](_0x29c0ca);if(!_0x712a39||_0x712a39[_0x2809d8(0x30a)]!==_0x2809d8(0x1f1))return;_0x3d90a5(_0x712a39),_0x712a39[_0x2809d8(0x307)]=setTimeout(()=>void _0x56c595(_0x29c0ca),_0x712a39[_0x2809d8(0x14a)+_0x2809d8(0x2cf)]);}async function _0x56c595(_0x17dd8f){const _0x52a25b=_0x5b9c83,_0x3f04d4=_0x4979e9[_0x52a25b(0x1df)](_0x17dd8f);if(!_0x3f04d4||_0x3f04d4[_0x52a25b(0x30a)]!=='pending')return;if(Date[_0x52a25b(0x28a)]()>=_0x3f04d4[_0x52a25b(0x2b0)+'t']){_0x3f04d4['status']=_0x52a25b(0x197),_0x3f04d4[_0x52a25b(0x1b7)+'sage']='二维码已过期,请'+_0x52a25b(0x2a7),_0x3d90a5(_0x3f04d4);return;}try{const _0x58e8e9=await pollFeishuRegistration(_0x3f04d4[_0x52a25b(0x299)],_0x3f04d4['deviceCo'+'de']),_0x2729b2=getTrimmedString(_0x58e8e9['client_i'+'d']),_0x45edda=getTrimmedString(_0x58e8e9[_0x52a25b(0x2dc)+_0x52a25b(0x226)]),_0x3efcf5=getTrimmedString(_0x58e8e9[_0x52a25b(0x2c6)]),_0x3186d9=extractFeishuRegistrationAuthorizationUri(_0x58e8e9)||_0x3f04d4[_0x52a25b(0x1f8)+_0x52a25b(0x288)];if(_0x3186d9!==_0x3f04d4[_0x52a25b(0x1f8)+_0x52a25b(0x288)])_0x3f04d4['authoriz'+'ationUri']=_0x3186d9;if(_0x2729b2&&_0x45edda){const _0x4b90e3=asRecord(_0x58e8e9['user_inf'+'o']);await _0xd478cc({'appId':_0x2729b2,'appSecret':_0x45edda,'userInfo':{'openId':getTrimmedString(_0x4b90e3[_0x52a25b(0x322)])||null}}),_0x3f04d4[_0x52a25b(0x30a)]=_0x52a25b(0x15c)+'d',_0x3f04d4[_0x52a25b(0x1b7)+_0x52a25b(0x21a)]=null,_0x3d90a5(_0x3f04d4);return;}if(!_0x3efcf5||_0x3efcf5==='authoriz'+'ation_pe'+'nding'){_0x5257c8(_0x17dd8f);return;}if(_0x3efcf5===_0x52a25b(0x2db)+'n'){_0x3f04d4['pollInte'+_0x52a25b(0x2cf)]+=0x1388,_0x5257c8(_0x17dd8f);return;}if(_0x3efcf5===_0x52a25b(0x218)+'token'){_0x3f04d4[_0x52a25b(0x30a)]=_0x52a25b(0x197),_0x3f04d4[_0x52a25b(0x1b7)+'sage']='二维码已过期,请'+'重新生成',_0x3d90a5(_0x3f04d4);return;}_0x3f04d4[_0x52a25b(0x30a)]='error',_0x3f04d4[_0x52a25b(0x1b7)+_0x52a25b(0x21a)]=getTrimmedString(_0x58e8e9['error_de'+_0x52a25b(0x1a6)+'n'])||(_0x3efcf5===_0x52a25b(0x23e)+'enied'?_0x52a25b(0x2a6)+'器人绑定':_0x52a25b(0x1d1)+_0x3efcf5),_0x3d90a5(_0x3f04d4);}catch(_0x2f2511){_0x3f04d4['status']='error',_0x3f04d4[_0x52a25b(0x1b7)+_0x52a25b(0x21a)]=_0x2f2511 instanceof Error?_0x2f2511[_0x52a25b(0x31f)]:_0x52a25b(0x199),_0x3d90a5(_0x3f04d4);}}async function _0x5ca285(_0x40fd2b={}){const _0x5934ad=_0x5b9c83,_0x38f908=_0x40fd2b[_0x5934ad(0x21d)]===_0x5934ad(0x265)+_0x5934ad(0x177)?_0x5934ad(0x265)+'ector':'channel',_0x3db46c=createFeishuRegistrationClient(),_0x24436d=await initFeishuRegistration(_0x3db46c),_0x5b3328=Array[_0x5934ad(0x133)](_0x24436d[_0x5934ad(0x138)+_0x5934ad(0x2fb)+_0x5934ad(0x222)])?_0x24436d[_0x5934ad(0x138)+_0x5934ad(0x2fb)+'ethods'][_0x5934ad(0x2be)](getTrimmedString)[_0x5934ad(0x2ac)](Boolean):[];if(!_0x5b3328[_0x5934ad(0x2e9)]('client_s'+'ecret'))throw new Error('Current\x20'+_0x5934ad(0x1cb)+_0x5934ad(0x290)+_0x5934ad(0x2b7)+_0x5934ad(0x18d)+_0x5934ad(0x1ab)+_0x5934ad(0x281));const _0x3ebe24=await beginFeishuRegistration(_0x3db46c),_0x4d2a50=getTrimmedString(_0x3ebe24[_0x5934ad(0x22e)+_0x5934ad(0x29f)+'_complet'+'e']),_0x6e24c0=extractFeishuRegistrationAuthorizationUri(_0x3ebe24),_0x534a11=getTrimmedString(_0x3ebe24[_0x5934ad(0x150)+_0x5934ad(0x167)]),_0x4dcbd9=Number(_0x3ebe24[_0x5934ad(0x1b9)+'n'])||0x258,_0x5a3ff7=Number(_0x3ebe24[_0x5934ad(0x1c2)])||0x5;if(!_0x4d2a50||!_0x534a11)throw new Error(_0x5934ad(0x23d)+'verifica'+_0x5934ad(0x29f)+_0x5934ad(0x27d)+_0x5934ad(0x19e)+'ice_code'+_0x5934ad(0x1c5)+_0x5934ad(0x20e)+_0x5934ad(0x1db));const _0x1863ed=randomUUID(),_0x52d140={'sessionId':_0x1863ed,'purpose':_0x38f908,'client':_0x3db46c,'deviceCode':_0x534a11,'verificationUriComplete':_0x4d2a50,'authorizationUri':_0x6e24c0,'expiresAt':Date[_0x5934ad(0x28a)]()+_0x4dcbd9*0x3e8,'pollIntervalMs':Math[_0x5934ad(0x14d)](_0x5a3ff7*0x3e8,DEFAULT_FEISHU_REGISTRATION_INTERVAL_MS),'status':_0x5934ad(0x1f1),'errorMessage':null,'timer':null};return _0x4979e9['set'](_0x1863ed,_0x52d140),_0x5257c8(_0x1863ed),serializeFeishuRegistrationSession(_0x52d140);}function _0xaa03ce(_0x366022={}){const _0x3bae1e=_0x5b9c83,_0x25c487=safeString(_0x366022[_0x3bae1e(0x237)+'d']);if(!_0x25c487)throw new Error(_0x3bae1e(0x172)+_0x3bae1e(0x12f)+'ion\x20sess'+'ion\x20id\x20i'+_0x3bae1e(0x13b)+'ed');const _0x378a54=_0x4979e9['get'](_0x25c487);if(!_0x378a54)throw new Error(_0x3bae1e(0x172)+_0x3bae1e(0x12f)+_0x3bae1e(0x25a)+_0x3bae1e(0x24c)+_0x3bae1e(0x2a0));return serializeFeishuRegistrationSession(_0x378a54);}function _0x13864b(_0x47ba41={}){const _0x3edde4=_0x5b9c83,_0x5886d3=safeString(_0x47ba41[_0x3edde4(0x237)+'d']);if(!_0x5886d3)return{'ok':!![]};const _0x519a77=_0x4979e9[_0x3edde4(0x1df)](_0x5886d3);if(!_0x519a77)return{'ok':!![]};return _0x3d90a5(_0x519a77),_0x4979e9[_0x3edde4(0x1ee)](_0x5886d3),{'ok':!![]};}async function _0x22b7f8(_0x43a310,_0x3be9c2){const _0xeab727=_0x5b9c83,_0x3e95a6=_0x13b585(),{env:_0x8fe9a1,runtime:_0x53c339}=await _0x5f155f({'FORCE_COLOR':'0','HOME':homedir(),'LARK_CLI_NO_PROXY':'1','OPENCLAW_HOME':_0x3e95a6,'OPENCLAW_CONFIG_PATH':_0x43a310[_0xeab727(0x125)+'onfigPat'+'h']});await mkdir(_0x3e95a6,{'recursive':!![]});const _0x2f2f49=await _0x5a009f(_0x53c339);for(const _0x1b2ea0 of['HTTP_PRO'+'XY',_0xeab727(0x2b4)+_0xeab727(0x1a8),_0xeab727(0x1d8)+'Y',_0xeab727(0x1a3)+'xy',_0xeab727(0x2f6)+_0xeab727(0x2d8),_0xeab727(0x169)+'y']){delete _0x8fe9a1[_0x1b2ea0];}return new Promise((_0x3d84e9,_0x3a467)=>{const _0x49a9c1=_0xeab727;_0x5f0c95(_0x49a9c1(0x153)+_0x49a9c1(0x2a2),{'connector':_0x49a9c1(0x16e)+'oc','phase':_0x49a9c1(0x306),'message':_0x49a9c1(0x1f9)+'\x20'+_0x3be9c2[_0x49a9c1(0x2f4)]('\x20')});const _0x31f667=spawn(_0x2f2f49[_0x49a9c1(0x321)+_0x49a9c1(0x2c7)],[_0x2f2f49[_0x49a9c1(0x1e3)+'th'],..._0x3be9c2],{'cwd':_0x3e95a6,'env':_0x8fe9a1});let _0x250970=![];_0x31f667['once'](_0x49a9c1(0x306),()=>{_0x250970=!![],_0x3d84e9(_0x31f667);}),_0x31f667[_0x49a9c1(0x137)](_0x49a9c1(0x2c6),_0x4493d0=>{if(_0x250970)return;_0x3a467(_0x4493d0);});});}function _0x52e59e(_0x322f8d,_0x4cf8c5,_0x39249b){const _0x4b1ef5=_0x5b9c83;_0x322f8d['phase']=_0x39249b[_0x4b1ef5(0x204)],_0x322f8d[_0x4b1ef5(0x31f)]=_0x39249b[_0x4b1ef5(0x31f)];if(_0x39249b[_0x4b1ef5(0x204)]!==_0x4b1ef5(0x253))_0x322f8d[_0x4b1ef5(0x1d5)]=null;_0x322f8d[_0x4b1ef5(0x190)]='',void _0x22b7f8(_0x322f8d,_0x4cf8c5)[_0x4b1ef5(0x2c3)](_0x4b9334=>{const _0x24e993=_0x4b1ef5;_0x322f8d[_0x24e993(0x140)]=_0x4b9334;const _0x327868=setTimeout(()=>{const _0x58a7c0=_0x24e993;if(_0x322f8d[_0x58a7c0(0x30a)]!==_0x58a7c0(0x1f1))return;_0x4b9334[_0x58a7c0(0x309)](),_0x322f8d['status']='error',_0x322f8d[_0x58a7c0(0x1b7)+_0x58a7c0(0x21a)]=_0x39249b['message']+'超时',_0x322f8d[_0x58a7c0(0x140)]=null;},FEISHU_DOC_CLI_STEP_TIMEOUT_MS),_0x929248=_0x4b1ba3=>{const _0x6efe9d=_0x24e993,_0x5112bf=_0x4b1ba3['toString'](_0x6efe9d(0x300));_0x322f8d[_0x6efe9d(0x190)]+=_0x5112bf,_0x5f0c95(_0x6efe9d(0x153)+_0x6efe9d(0x2a2),{'connector':_0x6efe9d(0x16e)+'oc','phase':_0x39249b[_0x6efe9d(0x204)],'message':_0x5112bf});};_0x4b9334[_0x24e993(0x1d2)]['on'](_0x24e993(0x25c),_0x929248),_0x4b9334[_0x24e993(0x1d9)]['on'](_0x24e993(0x25c),_0x929248);if(typeof _0x39249b[_0x24e993(0x1c8)]==='string')_0x4b9334[_0x24e993(0x1c8)][_0x24e993(0x16a)](_0x39249b[_0x24e993(0x1c8)]);else _0x4b9334[_0x24e993(0x1c8)][_0x24e993(0x16a)]();_0x4b9334['on'](_0x24e993(0x2c6),_0xec6459=>{const _0x1ec9fa=_0x24e993;clearTimeout(_0x327868),_0x322f8d[_0x1ec9fa(0x30a)]=_0x1ec9fa(0x2c6),_0x322f8d[_0x1ec9fa(0x1b7)+_0x1ec9fa(0x21a)]=_0xec6459 instanceof Error?_0xec6459[_0x1ec9fa(0x31f)]:_0x1ec9fa(0x22f)+_0x1ec9fa(0x28c),_0x322f8d[_0x1ec9fa(0x140)]=null,_0x5f0c95(_0x1ec9fa(0x153)+'r-log',{'connector':_0x1ec9fa(0x16e)+'oc','phase':_0x1ec9fa(0x2c6),'message':_0x322f8d[_0x1ec9fa(0x1b7)+_0x1ec9fa(0x21a)]});}),_0x4b9334['on']('close',_0x33e816=>{const _0x3c04bd=_0x24e993;clearTimeout(_0x327868),_0x322f8d[_0x3c04bd(0x140)]=null;if(_0x322f8d[_0x3c04bd(0x30a)]!==_0x3c04bd(0x1f1))return;if(_0x33e816!==0x0){if(_0x39249b['onFailur'+'e']){void Promise[_0x3c04bd(0x2b8)](_0x39249b[_0x3c04bd(0x18c)+'e'](_0x33e816,_0x322f8d[_0x3c04bd(0x190)]))['catch'](_0x27d2bf=>{const _0x15b02e=_0x3c04bd;_0x322f8d[_0x15b02e(0x30a)]=_0x15b02e(0x2c6),_0x322f8d['errorMes'+'sage']=_0x27d2bf instanceof Error?_0x27d2bf[_0x15b02e(0x31f)]:_0x15b02e(0x2ad)+_0x15b02e(0x30d);});return;}_0x322f8d[_0x3c04bd(0x30a)]=_0x3c04bd(0x2c6),_0x322f8d[_0x3c04bd(0x1b7)+_0x3c04bd(0x21a)]=getFeishuDocCliFailureMessage(_0x39249b[_0x3c04bd(0x204)],extractFeishuDocCliError(_0x322f8d['output'],_0x3c04bd(0x1f9)+'\x20'+_0x4cf8c5[_0x3c04bd(0x2f4)]('\x20')+('\x20exited\x20'+'with\x20cod'+'e\x20')+_0x33e816),_0x3c04bd(0x1f9)+'\x20'+_0x4cf8c5['join']('\x20')+('\x20exited\x20'+_0x3c04bd(0x236)+'e\x20')+_0x33e816),_0x5f0c95(_0x3c04bd(0x153)+'r-log',{'connector':_0x3c04bd(0x16e)+'oc','phase':_0x3c04bd(0x2c6),'message':_0x322f8d[_0x3c04bd(0x1b7)+_0x3c04bd(0x21a)]});return;}void Promise[_0x3c04bd(0x2b8)](_0x39249b[_0x3c04bd(0x160)+'s']())[_0x3c04bd(0x132)](_0x517c0c=>{const _0x47b139=_0x3c04bd;_0x322f8d[_0x47b139(0x30a)]=_0x47b139(0x2c6),_0x322f8d['errorMes'+_0x47b139(0x21a)]=_0x517c0c instanceof Error?_0x517c0c[_0x47b139(0x31f)]:_0x47b139(0x2ad)+_0x47b139(0x30d);});});})['catch'](_0x199f7a=>{const _0x54eb97=_0x4b1ef5;_0x322f8d['status']='error',_0x322f8d[_0x54eb97(0x1b7)+_0x54eb97(0x21a)]=_0x199f7a instanceof Error?_0x199f7a['message']:_0x54eb97(0x22f)+_0x54eb97(0x28c),_0x322f8d[_0x54eb97(0x140)]=null,_0x5f0c95('connecto'+_0x54eb97(0x2a2),{'connector':_0x54eb97(0x16e)+'oc','phase':_0x54eb97(0x2c6),'message':_0x322f8d[_0x54eb97(0x1b7)+'sage']});});}function _0x283b8f(_0x1f2e03){const _0x5eba49=_0x5b9c83;if(!_0x1f2e03[_0x5eba49(0x126)])return;clearTimeout(_0x1f2e03[_0x5eba49(0x126)]),_0x1f2e03[_0x5eba49(0x126)]=null;}function _0xe9655d(_0x439664){const _0x3e763=_0x5b9c83;if(!_0x439664[_0x3e763(0x187)+_0x3e763(0x2e0)])return;clearTimeout(_0x439664['authStat'+_0x3e763(0x2e0)]),_0x439664[_0x3e763(0x187)+_0x3e763(0x2e0)]=null;}function _0x59c06d(_0x2305b3,_0x38dae5=0x7d0){const _0x748776=_0x5b9c83;if(_0x2305b3['status']!=='pending')return;_0xe9655d(_0x2305b3),_0x2305b3['authStat'+_0x748776(0x2e0)]=setTimeout(()=>{const _0x3ad1a1=_0x748776;_0x52e59e(_0x2305b3,[_0x3ad1a1(0x135),_0x3ad1a1(0x30a)],{'phase':_0x3ad1a1(0x253),'message':_0x3ad1a1(0x29c)+'状态','onFailure':(_0x5a01bb,_0x1f89f9)=>{const _0x3037dc=_0x3ad1a1;if(Date[_0x3037dc(0x28a)]()-_0x2305b3[_0x3037dc(0x187)+_0x3037dc(0x297)+_0x3037dc(0x24d)]>FEISHU_DOC_CLI_STEP_TIMEOUT_MS){_0x2305b3['status']=_0x3037dc(0x2c6),_0x2305b3[_0x3037dc(0x1b7)+_0x3037dc(0x21a)]=getFeishuDocCliFailureMessage(_0x3037dc(0x253),extractFeishuDocCliError(_0x1f89f9,_0x3037dc(0x25e)+_0x3037dc(0x1ae)),'飞书\x20CLI\x20授'+_0x3037dc(0x1ae));return;}_0x59c06d(_0x2305b3);},'onSuccess':()=>{const _0x138763=_0x3ad1a1;try{ensureFeishuDocCliUserStatus(_0x2305b3[_0x138763(0x190)]);}catch(_0x35c36b){if(Date[_0x138763(0x28a)]()-_0x2305b3[_0x138763(0x187)+_0x138763(0x297)+'dAt']>FEISHU_DOC_CLI_STEP_TIMEOUT_MS){_0x2305b3[_0x138763(0x30a)]=_0x138763(0x2c6),_0x2305b3[_0x138763(0x1b7)+_0x138763(0x21a)]=_0x35c36b instanceof Error?_0x35c36b[_0x138763(0x31f)]:'飞书\x20CLI\x20授'+_0x138763(0x2ca);return;}_0x59c06d(_0x2305b3);return;}return _0xe9655d(_0x2305b3),_0x2de15c(_0x2305b3);}});},_0x38dae5);}function _0x52c30f(_0x37b01b){const _0x2124ac=_0x5b9c83;if(!_0x37b01b[_0x2124ac(0x2bf)]||!_0x37b01b['cliAppSe'+'cret']){_0x37b01b[_0x2124ac(0x30a)]=_0x2124ac(0x2c6),_0x37b01b[_0x2124ac(0x1b7)+_0x2124ac(0x21a)]=_0x2124ac(0x250)+_0x2124ac(0x1e9)+_0x2124ac(0x2a4);return;}const _0x30d43e=_0x37b01b['cliAppId'],_0x1d0918=_0x37b01b['cliAppSe'+_0x2124ac(0x2bb)];_0x52e59e(_0x37b01b,[_0x2124ac(0x13f)+'n'],{'phase':_0x2124ac(0x27f),'message':_0x2124ac(0x2e4)+'LI','onSuccess':()=>{const _0x382ea7=_0x2124ac;_0x52e59e(_0x37b01b,[_0x382ea7(0x27c),_0x382ea7(0x2ab),_0x382ea7(0x24e)+_0x382ea7(0x2ab),'--app-id',_0x30d43e,'--app-se'+_0x382ea7(0x255)+'in',_0x382ea7(0x1d4),'feishu'],{'phase':_0x382ea7(0x27f),'message':'正在初始化飞书\x20'+'CLI\x20用户身份'+'应用','stdin':_0x1d0918,'onSuccess':()=>{const _0x45d44f=_0x382ea7;_0x52e59e(_0x37b01b,[_0x45d44f(0x135),_0x45d44f(0x319),_0x45d44f(0x201),'docs,dri'+'ve,markd'+_0x45d44f(0x175)+_0x45d44f(0x121)+_0x45d44f(0x1a5)+_0x45d44f(0x234),'--scope',_0x45d44f(0x29b)+_0x45d44f(0x1f0),_0x45d44f(0x296)+'t'],{'phase':_0x45d44f(0x135),'message':_0x45d44f(0x1c6)+'授权页','onSuccess':()=>{const _0x564510=_0x45d44f,_0x1b6c37=parseFeishuDocCliJson(_0x37b01b[_0x564510(0x190)]),_0x2f30be=getTrimmedString(_0x1b6c37['verifica'+_0x564510(0x29f)+_0x564510(0x27d)+'e'])||getTrimmedString(_0x1b6c37[_0x564510(0x22e)+'tion_url'])||getTrimmedString(_0x1b6c37['verifica'+_0x564510(0x29f)]),_0x191a74=getTrimmedString(_0x1b6c37[_0x564510(0x150)+_0x564510(0x167)]);if(!_0x2f30be||!_0x191a74){_0x37b01b['status']=_0x564510(0x2c6),_0x37b01b[_0x564510(0x1b7)+'sage']='飞书\x20CLI\x20未'+'返回授权\x20URL'+_0x564510(0x170)+'e_code:\x20'+summarizeCliOutput(_0x37b01b['output']);return;}_0x37b01b[_0x564510(0x1d5)]=_0x2f30be,_0x37b01b['deviceCo'+'de']=_0x191a74,void _0x26bd83[_0x564510(0x303)+_0x564510(0x159)](_0x2f30be)[_0x564510(0x132)](()=>{}),_0x52e59e(_0x37b01b,[_0x564510(0x135),_0x564510(0x319),_0x564510(0x1ba)+_0x564510(0x31b),_0x191a74],{'phase':'verify','message':_0x564510(0x192)+'完成','onSuccess':()=>{const _0x25fdd5=_0x564510;_0x37b01b[_0x25fdd5(0x187)+_0x25fdd5(0x297)+_0x25fdd5(0x24d)]=Date[_0x25fdd5(0x28a)](),_0x59c06d(_0x37b01b,0x1f4);}});}});}});}});}function _0x20c6af(_0x5966da){const _0x386530=_0x5b9c83;if(_0x5966da[_0x386530(0x30a)]!=='pending')return;_0x283b8f(_0x5966da),_0x5966da[_0x386530(0x126)]=setTimeout(()=>void _0xf68643(_0x5966da),_0x5966da['appPollI'+'ntervalM'+'s']);}async function _0xf68643(_0x395607){const _0x81cf5c=_0x5b9c83;if(_0x395607[_0x81cf5c(0x30a)]!==_0x81cf5c(0x1f1)||_0x395607['phase']!==_0x81cf5c(0x24b)||!_0x395607[_0x81cf5c(0x280)+_0x81cf5c(0x2b2)]||!_0x395607[_0x81cf5c(0x2c9)+'eCode'])return;if(Date['now']()>=_0x395607[_0x81cf5c(0x1a4)+'esAt']){_0x395607['status']=_0x81cf5c(0x2c6),_0x395607['errorMes'+_0x81cf5c(0x21a)]='飞书应用创建超时'+',请重新连接',_0x283b8f(_0x395607);return;}try{const _0x28b779=await pollFeishuRegistration(_0x395607['appPollC'+_0x81cf5c(0x2b2)],_0x395607[_0x81cf5c(0x2c9)+_0x81cf5c(0x1fe)]),_0x1a0ee1=getTrimmedString(_0x28b779[_0x81cf5c(0x1c0)+'d']),_0x1a5930=getTrimmedString(_0x28b779[_0x81cf5c(0x2dc)+'ecret']),_0x595d47=getTrimmedString(_0x28b779[_0x81cf5c(0x2c6)]);if(_0x1a0ee1&&_0x1a5930){const _0x34763c=asRecord(_0x28b779[_0x81cf5c(0x242)+'o']);await _0x5c22ef({'appId':_0x1a0ee1,'appSecret':_0x1a5930,'userInfo':{'openId':getTrimmedString(_0x34763c['open_id'])||null},'configPath':_0x395607[_0x81cf5c(0x125)+'onfigPat'+'h']}),_0x395607[_0x81cf5c(0x2bf)]=_0x1a0ee1,_0x395607[_0x81cf5c(0x31a)+_0x81cf5c(0x2bb)]=_0x1a5930,_0x283b8f(_0x395607),_0x395607[_0x81cf5c(0x31f)]=_0x81cf5c(0x266)+_0x81cf5c(0x317),_0x52c30f(_0x395607);return;}if(!_0x595d47||_0x595d47===_0x81cf5c(0x1f8)+_0x81cf5c(0x229)+_0x81cf5c(0x1c1)){_0x20c6af(_0x395607);return;}if(_0x595d47===_0x81cf5c(0x2db)+'n'){_0x395607['appPollI'+_0x81cf5c(0x241)+'s']+=0x1388,_0x20c6af(_0x395607);return;}_0x395607[_0x81cf5c(0x30a)]=_0x81cf5c(0x2c6),_0x395607['errorMes'+_0x81cf5c(0x21a)]=getTrimmedString(_0x28b779[_0x81cf5c(0x18b)+_0x81cf5c(0x1a6)+'n'])||_0x81cf5c(0x23a)+':'+_0x595d47,_0x283b8f(_0x395607);}catch(_0x35393e){_0x395607['status']=_0x81cf5c(0x2c6),_0x395607['errorMes'+_0x81cf5c(0x21a)]=_0x35393e instanceof Error?_0x35393e[_0x81cf5c(0x31f)]:_0x81cf5c(0x23a),_0x283b8f(_0x395607);}}async function _0x2de15c(_0x562def){const _0x3da402=_0x5b9c83;await _0x3f4da3({'accountName':'飞书用户身份'}),_0x562def[_0x3da402(0x30a)]=_0x3da402(0x15c)+'d',_0x562def['phase']='complete'+'d',_0x562def[_0x3da402(0x31f)]=_0x3da402(0x1c3)+'完成',_0x562def[_0x3da402(0x1b7)+_0x3da402(0x21a)]=null;}async function _0x12e1ff(){const _0x2fcd80=_0x5b9c83,_0x1fcc4b=createFeishuRegistrationClient(),_0x55bc78=await initFeishuRegistration(_0x1fcc4b),_0x59d20d=Array['isArray'](_0x55bc78[_0x2fcd80(0x138)+_0x2fcd80(0x2fb)+_0x2fcd80(0x222)])?_0x55bc78[_0x2fcd80(0x138)+_0x2fcd80(0x2fb)+'ethods'][_0x2fcd80(0x2be)](getTrimmedString)['filter'](Boolean):[];if(!_0x59d20d[_0x2fcd80(0x2e9)]('client_s'+'ecret'))throw new Error('当前飞书开放平台'+_0x2fcd80(0x1ea)+_0x2fcd80(0x2dc)+_0x2fcd80(0x122));const _0x4ae980=await beginFeishuRegistration(_0x1fcc4b),_0x139a8a=getTrimmedString(_0x4ae980[_0x2fcd80(0x22e)+_0x2fcd80(0x29f)+_0x2fcd80(0x27d)+'e']),_0x187f9c=getTrimmedString(_0x4ae980['device_c'+_0x2fcd80(0x167)]),_0x21a33f=Number(_0x4ae980[_0x2fcd80(0x1b9)+'n'])||0x258,_0xbb773a=Number(_0x4ae980[_0x2fcd80(0x1c2)])||0x5;if(!_0x139a8a||!_0x187f9c)throw new Error(_0x2fcd80(0x1ff)+_0x2fcd80(0x211)+_0x2fcd80(0x164)+_0x2fcd80(0x17b));const _0x4fa779=randomUUID(),_0x2bbe7e={'sessionId':_0x4fa779,'status':'pending','phase':_0x2fcd80(0x24b),'url':_0x139a8a,'appDeviceCode':_0x187f9c,'appPollClient':_0x1fcc4b,'appPollIntervalMs':Math['max'](_0xbb773a*0x3e8,DEFAULT_FEISHU_REGISTRATION_INTERVAL_MS),'appExpiresAt':Date[_0x2fcd80(0x28a)]()+_0x21a33f*0x3e8,'appTimer':null,'authStatusTimer':null,'authStatusStartedAt':0x0,'deviceCode':null,'message':'请在飞书开放平台'+_0x2fcd80(0x1b2),'errorMessage':null,'process':null,'output':'','cliHostConfigPath':_0x236006(),'cliAppId':null,'cliAppSecret':null};return _0x1e7952[_0x2fcd80(0x2ce)](_0x4fa779,_0x2bbe7e),_0x20c6af(_0x2bbe7e),createFeishuDocCliStatus(_0x2bbe7e);}function _0x209476(_0x1c59c8={}){const _0x157335=_0x5b9c83,_0xde4a3=safeString(_0x1c59c8['sessionI'+'d']);if(!_0xde4a3)throw new Error(_0x157335(0x295)+_0x157335(0x1de)+_0x157335(0x2e1)+_0x157335(0x157)+_0x157335(0x248));const _0x3c5074=_0x1e7952[_0x157335(0x1df)](_0xde4a3);if(!_0x3c5074)throw new Error(_0x157335(0x295)+_0x157335(0x1de)+_0x157335(0x1b3)+_0x157335(0x224));return createFeishuDocCliStatus(_0x3c5074);}function _0x22130f(_0x43a141={}){const _0x5b6f7e=_0x5b9c83,_0x3f5fc2=safeString(_0x43a141[_0x5b6f7e(0x237)+'d']);if(!_0x3f5fc2)return{'ok':!![]};const _0xe226de=_0x1e7952[_0x5b6f7e(0x1df)](_0x3f5fc2);if(!_0xe226de)return{'ok':!![]};return _0x283b8f(_0xe226de),_0xe9655d(_0xe226de),_0xe226de[_0x5b6f7e(0x140)]?.[_0x5b6f7e(0x309)](),_0x1e7952[_0x5b6f7e(0x1ee)](_0x3f5fc2),{'ok':!![]};}function _0x20bb3b(_0x240a1c={}){const _0x48297f=_0x5b9c83,_0x5d7a2d=safeString(_0x240a1c[_0x48297f(0x237)+'d']);if(!_0x5d7a2d)throw new Error(_0x48297f(0x295)+_0x48297f(0x1de)+_0x48297f(0x2e1)+'d\x20is\x20req'+_0x48297f(0x248));const _0x4dcb59=_0x1e7952[_0x48297f(0x1df)](_0x5d7a2d);if(!_0x4dcb59)throw new Error(_0x48297f(0x295)+'oc\x20CLI\x20s'+_0x48297f(0x1b3)+_0x48297f(0x224));if(_0x4dcb59['status']===_0x48297f(0x2c6))throw new Error(_0x4dcb59[_0x48297f(0x1b7)+_0x48297f(0x21a)]||'飞书\x20CLI\x20连'+_0x48297f(0x30d));return{'ok':!![]};}async function _0x2196d2(_0x26fbe6){const _0x22468f=_0x5b9c83,_0x73089e=asRecord(_0x26fbe6[_0x22468f(0x2c0)]),_0x286151=asRecord(_0x73089e[_0x22468f(0x198)]),_0xb5e4a4=asStringArray(_0x73089e[_0x22468f(0x13d)]),_0x5333b3=asRecord(_0x286151[WECHAT_PLUGIN_ID]),_0x41a9e7=_0x5333b3[_0x22468f(0x1aa)]===!![]||_0xb5e4a4['includes'](WECHAT_PLUGIN_ID),_0x5255aa=join(_0x4c5d4e[_0x22468f(0x2e6)+_0x22468f(0x14c)](),WECHAT_PLUGIN_ID),_0x11d82c=join(_0x5255aa,_0x22468f(0x25d)+_0x22468f(0x323));let _0x14e175=![];try{const _0x20b57f=(await readFile(_0x11d82c,_0x22468f(0x300)))['trim']();if(_0x20b57f){const _0x1ae643=JSON[_0x22468f(0x1eb)](_0x20b57f);_0x14e175=Array[_0x22468f(0x133)](_0x1ae643)?_0x1ae643['length']>0x0:Object[_0x22468f(0x19c)](asRecord(_0x1ae643))[_0x22468f(0x21f)]>0x0;}}catch{}if(!_0x14e175)try{_0x14e175=(await readdir(join(_0x5255aa,'accounts')))[_0x22468f(0x21f)]>0x0;}catch{}return{'exists':_0x41a9e7||_0x14e175,'enabled':_0x41a9e7,'connected':_0x41a9e7&&_0x14e175};}async function _0x6d30bc(){const _0x12a6a3=_0x5b9c83,_0x236832=await _0x1c51aa(),_0x417ecf=asRecord(_0x236832[_0x12a6a3(0x12c)]),_0x4a675e=[],_0x4ed52d=await _0x2196d2(_0x236832);_0x4ed52d[_0x12a6a3(0x2fa)]&&_0x4a675e['push']({'id':WECHAT_PLUGIN_ID,'type':_0x12a6a3(0x21e),'name':'微信','enabled':_0x4ed52d[_0x12a6a3(0x1aa)],'connected':_0x4ed52d[_0x12a6a3(0x2d2)+'d']});const _0x3c4561=asRecord(_0x417ecf[_0x12a6a3(0x21b)]),_0x21db53=getTrimmedString(_0x3c4561[_0x12a6a3(0x1a0)]),_0x361a3d=getTrimmedString(_0x3c4561[_0x12a6a3(0x2d7)+_0x12a6a3(0x2bb)]);_0x21db53&&_0x361a3d&&_0x4a675e['push']({'id':'qqbot','type':'qqbot','name':_0x12a6a3(0x26e),'enabled':_0x3c4561[_0x12a6a3(0x1aa)]!==![],'appId':_0x21db53,'clientSecret':_0x361a3d});const _0x522445=asRecord(_0x417ecf[_0x12a6a3(0x2d5)]),_0x523fca=getTrimmedString(_0x522445[_0x12a6a3(0x258)]),_0x43eb59=getTrimmedString(_0x522445[_0x12a6a3(0x244)]);_0x523fca&&_0x43eb59&&_0x4a675e[_0x12a6a3(0x17e)]({'id':_0x12a6a3(0x2d5),'type':'wecom','name':_0x12a6a3(0x1fa),'enabled':_0x522445['enabled']!==![],'botId':_0x523fca,'secret':_0x43eb59});const _0x5e06c4=asRecord(_0x417ecf[_0x12a6a3(0x1e4)]),_0x2427e1=getTrimmedString(_0x5e06c4[_0x12a6a3(0x1a0)]),_0x1ca20f=getTrimmedString(_0x5e06c4[_0x12a6a3(0x2c5)+'t']);return _0x2427e1&&_0x1ca20f&&getTrimmedString(_0x5e06c4['managedB'+'y'])!==FEISHU_DOC_CONNECTOR_PLUGIN_ID&&_0x4a675e[_0x12a6a3(0x17e)]({'id':_0x12a6a3(0x1e4),'type':'feishu','name':_0x12a6a3(0x16d),'enabled':_0x5e06c4['enabled']!==![],'appId':_0x2427e1,'appSecret':_0x1ca20f}),_0x4a675e;}async function _0x2d226c(_0x4892a5){const _0x1f8090=_0x5b9c83;if(typeof openClawConfigHandlers[_0x1f8090(0x1cf)+'nConfig']===_0x1f8090(0x1b1))return openClawConfigHandlers[_0x1f8090(0x1cf)+_0x1f8090(0x2eb)]({'pluginId':WECHAT_PLUGIN_ID,'enabled':Boolean(_0x4892a5),'reason':WECHAT_PLUGIN_ID+_0x1f8090(0x166)+(_0x4892a5?'enabled':'disabled')});const _0x4a4b75=await _0x1c51aa(),_0x290a2c=asRecord(_0x4a4b75['plugins']),_0x72991e=asRecord(_0x290a2c[_0x1f8090(0x198)]);return _0x72991e[WECHAT_PLUGIN_ID]={...asRecord(_0x72991e[WECHAT_PLUGIN_ID]),'enabled':Boolean(_0x4892a5)},_0x290a2c['entries']=_0x72991e,_0x290a2c[_0x1f8090(0x13d)]=_0x4892a5?dedupeStrings([...asStringArray(_0x290a2c['allow']),WECHAT_PLUGIN_ID]):asStringArray(_0x290a2c[_0x1f8090(0x13d)])[_0x1f8090(0x2ac)](_0x5f125a=>_0x5f125a!==WECHAT_PLUGIN_ID),_0x4a4b75[_0x1f8090(0x2c0)]=_0x290a2c,await _0x228312(_0x4a4b75,WECHAT_PLUGIN_ID+_0x1f8090(0x166)+(_0x4892a5?_0x1f8090(0x1aa):'disabled')),{'ok':!![]};}async function _0x1cbf46(_0x97c823={}){const _0x480836=_0x5b9c83,_0x300b9b=safeString(_0x97c823['channelI'+'d']||_0x97c823['id']);if(!_0x300b9b)throw new Error('Channel\x20'+'id\x20is\x20re'+_0x480836(0x19f));const _0x7b7893=await _0x1c51aa(),_0x1beea6=asRecord(_0x7b7893['channels']),_0x2407f5=asRecord(_0x7b7893[_0x480836(0x2c0)]),_0x4af640=asRecord(_0x2407f5[_0x480836(0x198)]),_0xf7b820=_0x4f31da=>{const _0x5b69d7=_0x480836;_0x4af640[_0x4f31da]=createConnectorPluginEntry(_0x4f31da,_0x4af640[_0x4f31da],![],{}),_0x2407f5[_0x5b69d7(0x13d)]=asStringArray(_0x2407f5[_0x5b69d7(0x13d)])[_0x5b69d7(0x2ac)](_0x262cc4=>_0x262cc4!==_0x4f31da),_0x2407f5['entries']=_0x4af640,_0x7b7893['plugins']=_0x2407f5;};if(_0x300b9b==='feishu_d'+'oc')return _0xf7b820(FEISHU_DOC_CONNECTOR_PLUGIN_ID),getTrimmedString(asRecord(_0x1beea6[_0x480836(0x1e4)])['managedB'+'y'])===FEISHU_DOC_CONNECTOR_PLUGIN_ID&&(delete _0x1beea6['feishu'],_0x7b7893['channels']=_0x1beea6),await rm(_0x13b585(),{'recursive':!![],'force':!![]})[_0x480836(0x132)](()=>{}),_0x228312(_0x7b7893,_0x480836(0x1e7)+_0x480836(0x120)+_0x480836(0x195)+'gin\x20dele'+_0x480836(0x249));if(_0x300b9b===_0x480836(0x223)){if(typeof openClawConfigHandlers[_0x480836(0x1cf)+'nConfig']===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x1cf)+_0x480836(0x2eb)]({'pluginId':QQ_MAIL_CONNECTOR_PLUGIN_ID,'enabled':![],'config':{},'reason':_0x480836(0x2b5)+_0x480836(0x153)+_0x480836(0x141)+'\x20deleted'});return _0xf7b820(QQ_MAIL_CONNECTOR_PLUGIN_ID),_0x228312(_0x7b7893,_0x480836(0x2b5)+'connecto'+_0x480836(0x141)+_0x480836(0x233));}if(_0x300b9b===_0x480836(0x1fd)+_0x480836(0x1f2)){if(typeof openClawConfigHandlers['setPlugi'+_0x480836(0x2eb)]==='function')return openClawConfigHandlers[_0x480836(0x1cf)+_0x480836(0x2eb)]({'pluginId':NETEASE_MAIL_CONNECTOR_PLUGIN_ID,'enabled':![],'config':{},'reason':_0x480836(0x314)+_0x480836(0x220)+_0x480836(0x2f3)+_0x480836(0x2bc)+_0x480836(0x2e8)});return _0xf7b820(NETEASE_MAIL_CONNECTOR_PLUGIN_ID),_0x228312(_0x7b7893,_0x480836(0x314)+_0x480836(0x220)+_0x480836(0x2f3)+_0x480836(0x2bc)+_0x480836(0x2e8));}if(_0x300b9b===_0x480836(0x228)+_0x480836(0x2a3)){if(typeof openClawConfigHandlers[_0x480836(0x1cf)+'nConfig']===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x1cf)+_0x480836(0x2eb)]({'pluginId':TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID,'enabled':![],'config':{},'reason':_0x480836(0x2c4)+_0x480836(0x20f)+_0x480836(0x17a)+_0x480836(0x166)+_0x480836(0x26c)});return _0xf7b820(TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID),_0x228312(_0x7b7893,'tencent\x20'+_0x480836(0x20f)+_0x480836(0x17a)+_0x480836(0x166)+_0x480836(0x26c));}if(_0x300b9b==='tencent_'+_0x480836(0x13a)){if(typeof openClawConfigHandlers['deleteSk'+_0x480836(0x2f0)]===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x11f)+'illEntry']({'skillId':TENCENT_DOCS_SKILL_ID,'reason':_0x480836(0x2c4)+_0x480836(0x2f7)+_0x480836(0x1bf)+_0x480836(0x20a)+_0x480836(0x27a)});const _0x318a13=asRecord(_0x7b7893[_0x480836(0x25f)]),_0x7b4bb2=asRecord(_0x318a13[_0x480836(0x198)]);return delete _0x7b4bb2[TENCENT_DOCS_SKILL_ID],_0x318a13[_0x480836(0x198)]=_0x7b4bb2,_0x7b7893[_0x480836(0x25f)]=_0x318a13,_0x228312(_0x7b7893,_0x480836(0x2c4)+_0x480836(0x2f7)+'ll\x20conne'+_0x480836(0x20a)+_0x480836(0x27a));}if(_0x300b9b===_0x480836(0x227))return await _0x339c8b([_0x480836(0x135),_0x480836(0x142)])[_0x480836(0x132)](()=>({'code':null,'output':''})),await _0x4c5199(),{'ok':!![]};if(_0x300b9b===_0x480836(0x202)+_0x480836(0x2ee)){if(typeof openClawConfigHandlers[_0x480836(0x1e2)+_0x480836(0x315)]===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x1e2)+_0x480836(0x315)]({'serverName':DINGTALK_DOC_MCP_SERVER_NAME,'reason':_0x480836(0x202)+_0x480836(0x2f2)+_0x480836(0x233)});const _0xa21626=readOpenClawMcpServersFromConfig(_0x7b7893);return delete _0xa21626[DINGTALK_DOC_MCP_SERVER_NAME],writeOpenClawMcpServersToConfig(_0x7b7893,_0xa21626),_0x228312(_0x7b7893,_0x480836(0x202)+_0x480836(0x2f2)+'\x20deleted');}if(_0x300b9b===WECHAT_PLUGIN_ID||_0x300b9b==='openclaw'+'-weixin'){_0x4af640[WECHAT_PLUGIN_ID]={...asRecord(_0x4af640[WECHAT_PLUGIN_ID]),'enabled':![]},_0x2407f5[_0x480836(0x198)]=_0x4af640,_0x2407f5[_0x480836(0x13d)]=asStringArray(_0x2407f5[_0x480836(0x13d)])[_0x480836(0x2ac)](_0x187836=>_0x187836!==WECHAT_PLUGIN_ID&&_0x187836!==_0x480836(0x1ce)+_0x480836(0x2df)),_0x7b7893[_0x480836(0x2c0)]=_0x2407f5;const _0x2c827d=join(_0x4c5d4e[_0x480836(0x2e6)+_0x480836(0x14c)](),WECHAT_PLUGIN_ID);return await rm(join(_0x2c827d,_0x480836(0x25d)+_0x480836(0x323)),{'force':!![]})[_0x480836(0x132)](()=>{}),await rm(join(_0x2c827d,'accounts'),{'recursive':!![],'force':!![]})[_0x480836(0x132)](()=>{}),_0x228312(_0x7b7893,_0x300b9b+(_0x480836(0x1b8)+_0x480836(0x129)+_0x480836(0x26c)));}if(_0x300b9b===_0x480836(0x1e4)){if(typeof openClawConfigHandlers[_0x480836(0x302)+'annelCon'+_0x480836(0x2dd)]===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x302)+'annelCon'+_0x480836(0x2dd)]({'channelId':_0x480836(0x1e4),'pluginId':_0x480836(0x1e4),'reason':_0x480836(0x174)+_0x480836(0x313)+'onfig\x20de'+_0x480836(0x2e8)});return delete _0x1beea6['feishu'],_0x7b7893[_0x480836(0x12c)]=_0x1beea6,_0x4af640[_0x480836(0x1e4)]={...asRecord(_0x4af640[_0x480836(0x1e4)]),'enabled':![]},_0x2407f5[_0x480836(0x198)]=_0x4af640,_0x2407f5['allow']=asStringArray(_0x2407f5[_0x480836(0x13d)])[_0x480836(0x2ac)](_0x3907be=>_0x3907be!==_0x480836(0x1e4)),_0x7b7893[_0x480836(0x2c0)]=_0x2407f5,_0x228312(_0x7b7893,'feishu\x20c'+_0x480836(0x313)+'onfig\x20de'+_0x480836(0x2e8));}if(_0x300b9b===_0x480836(0x21b)){if(typeof openClawConfigHandlers['deleteCh'+'annelCon'+_0x480836(0x2dd)]===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x302)+_0x480836(0x1be)+_0x480836(0x2dd)]({'channelId':_0x480836(0x21b),'pluginId':QQBOT_PLUGIN_ID,'reason':_0x480836(0x292)+_0x480836(0x168)+_0x480836(0x284)+_0x480836(0x27a)});delete _0x1beea6[_0x480836(0x21b)],_0x4af640[QQBOT_PLUGIN_ID]={...asRecord(_0x4af640[QQBOT_PLUGIN_ID]),'enabled':![]},_0x2407f5[_0x480836(0x13d)]=asStringArray(_0x2407f5[_0x480836(0x13d)])[_0x480836(0x2ac)](_0x45ec5b=>_0x45ec5b!==QQBOT_PLUGIN_ID);}if(_0x300b9b==='wecom'){if(typeof openClawConfigHandlers[_0x480836(0x302)+'annelCon'+_0x480836(0x2dd)]===_0x480836(0x1b1))return openClawConfigHandlers[_0x480836(0x302)+_0x480836(0x1be)+_0x480836(0x2dd)]({'channelId':_0x480836(0x2d5),'pluginId':WECOM_PLUGIN_ID,'reason':_0x480836(0x1c4)+_0x480836(0x168)+_0x480836(0x284)+_0x480836(0x27a)});delete _0x1beea6[_0x480836(0x2d5)],_0x4af640[WECOM_PLUGIN_ID]={...asRecord(_0x4af640[WECOM_PLUGIN_ID]),'enabled':![]},_0x2407f5[_0x480836(0x13d)]=asStringArray(_0x2407f5[_0x480836(0x13d)])[_0x480836(0x2ac)](_0x140c0a=>_0x140c0a!==WECOM_PLUGIN_ID);}return _0x7b7893[_0x480836(0x12c)]=_0x1beea6,_0x2407f5[_0x480836(0x198)]=_0x4af640,_0x7b7893[_0x480836(0x2c0)]=_0x2407f5,_0x228312(_0x7b7893,_0x300b9b+(_0x480836(0x1b8)+_0x480836(0x129)+_0x480836(0x26c)));}async function _0x51bcf0(_0x32e285={}){const _0x1f74cd=_0x5b9c83,_0x374961=safeString(_0x32e285[_0x1f74cd(0x139)+'d']||_0x32e285['id']);if(!_0x374961)throw new Error(_0x1f74cd(0x2a9)+_0x1f74cd(0x289)+'quired');const _0x2a530a=_0x32e285[_0x1f74cd(0x1aa)]===!![],_0x2687ca=await _0x1c51aa(),_0x1fac25=asRecord(_0x2687ca[_0x1f74cd(0x2c0)]),_0x273510=asRecord(_0x1fac25[_0x1f74cd(0x198)]),_0xbd8f7c=_0x1ef8cd=>{const _0x45eacc=_0x1f74cd;_0x273510[_0x1ef8cd]=createConnectorPluginEntry(_0x1ef8cd,_0x273510[_0x1ef8cd],_0x2a530a,{},{'preserveExistingConfig':!![]}),_0x1fac25[_0x45eacc(0x13d)]=_0x2a530a?dedupeStrings([...asStringArray(_0x1fac25['allow']),_0x1ef8cd]):asStringArray(_0x1fac25[_0x45eacc(0x13d)])[_0x45eacc(0x2ac)](_0x443e53=>_0x443e53!==_0x1ef8cd),_0x1fac25[_0x45eacc(0x198)]=_0x273510,_0x2687ca[_0x45eacc(0x2c0)]=_0x1fac25;};if(_0x374961===_0x1f74cd(0x16e)+'oc'){const _0x46a9e6=asRecord(_0x273510[FEISHU_DOC_CONNECTOR_PLUGIN_ID]);if(Object[_0x1f74cd(0x19c)](_0x46a9e6)[_0x1f74cd(0x21f)]===0x0)throw new Error(_0x1f74cd(0x245)+_0x1f74cd(0x312)+_0x374961+('\x22\x20not\x20fo'+'und'));if(typeof openClawConfigHandlers[_0x1f74cd(0x1cf)+_0x1f74cd(0x2eb)]===_0x1f74cd(0x1b1))return openClawConfigHandlers[_0x1f74cd(0x1cf)+_0x1f74cd(0x2eb)]({'pluginId':FEISHU_DOC_CONNECTOR_PLUGIN_ID,'enabled':_0x2a530a,'reason':_0x374961+(_0x1f74cd(0x1b8)+_0x1f74cd(0x129))+(_0x2a530a?_0x1f74cd(0x1aa):_0x1f74cd(0x163))});_0xbd8f7c(FEISHU_DOC_CONNECTOR_PLUGIN_ID);}else{if(_0x374961===_0x1f74cd(0x223)){if(typeof openClawConfigHandlers[_0x1f74cd(0x1cf)+'nConfig']==='function')return openClawConfigHandlers['setPlugi'+_0x1f74cd(0x2eb)]({'pluginId':QQ_MAIL_CONNECTOR_PLUGIN_ID,'enabled':_0x2a530a,'reason':_0x374961+('\x20channel'+_0x1f74cd(0x129))+(_0x2a530a?_0x1f74cd(0x1aa):_0x1f74cd(0x163))});_0xbd8f7c(QQ_MAIL_CONNECTOR_PLUGIN_ID);}else{if(_0x374961===_0x1f74cd(0x1fd)+_0x1f74cd(0x1f2)){if(typeof openClawConfigHandlers[_0x1f74cd(0x1cf)+_0x1f74cd(0x2eb)]===_0x1f74cd(0x1b1))return openClawConfigHandlers[_0x1f74cd(0x1cf)+_0x1f74cd(0x2eb)]({'pluginId':NETEASE_MAIL_CONNECTOR_PLUGIN_ID,'enabled':_0x2a530a,'reason':_0x374961+('\x20channel'+_0x1f74cd(0x129))+(_0x2a530a?_0x1f74cd(0x1aa):_0x1f74cd(0x163))});_0xbd8f7c(NETEASE_MAIL_CONNECTOR_PLUGIN_ID);}else{if(_0x374961===_0x1f74cd(0x228)+'exmail'){if(typeof openClawConfigHandlers['setPlugi'+_0x1f74cd(0x2eb)]==='function')return openClawConfigHandlers['setPlugi'+'nConfig']({'pluginId':TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID,'enabled':_0x2a530a,'reason':_0x374961+(_0x1f74cd(0x1b8)+_0x1f74cd(0x129))+(_0x2a530a?'enabled':_0x1f74cd(0x163))});_0xbd8f7c(TENCENT_EXMAIL_CONNECTOR_PLUGIN_ID);}else{if(_0x374961===_0x1f74cd(0x228)+_0x1f74cd(0x13a)){const _0x23d6e9=asRecord(_0x2687ca['skills']),_0x5da808=asRecord(_0x23d6e9[_0x1f74cd(0x198)]),_0x3cc6f9=asRecord(_0x5da808[TENCENT_DOCS_SKILL_ID]);if(typeof openClawConfigHandlers['setSkill'+_0x1f74cd(0x276)]==='function')return openClawConfigHandlers[_0x1f74cd(0x2c8)+'Entry']({'skillId':TENCENT_DOCS_SKILL_ID,'entry':{..._0x3cc6f9,'enabled':_0x2a530a},'reason':_0x374961+(_0x1f74cd(0x1b8)+_0x1f74cd(0x129))+(_0x2a530a?_0x1f74cd(0x1aa):'disabled')});_0x5da808[TENCENT_DOCS_SKILL_ID]={..._0x3cc6f9,'enabled':_0x2a530a},_0x23d6e9[_0x1f74cd(0x198)]=_0x5da808,_0x2687ca[_0x1f74cd(0x25f)]=_0x23d6e9;}else{if(_0x374961==='kdocs'){if(_0x2a530a&&!await _0x4461a5())throw new Error(_0x1f74cd(0x29e)+',请先连接');return await _0x17bd77(_0x2a530a),{'ok':!![]};}else{if(_0x374961===_0x1f74cd(0x202)+_0x1f74cd(0x2ee)){const _0x2f8dcd=readOpenClawMcpServersFromConfig(_0x2687ca),_0xeb4245=findDingtalkDocMcpServer(_0x2f8dcd);if(!getTrimmedString(_0xeb4245[_0x1f74cd(0x1d5)]))throw new Error('Connecto'+_0x1f74cd(0x312)+_0x374961+(_0x1f74cd(0x2cc)+'und'));_0x2f8dcd[DINGTALK_DOC_MCP_SERVER_NAME]=createDingtalkDocMcpServerConfig(_0xeb4245[_0x1f74cd(0x1d5)],{'enabled':_0x2a530a}),writeOpenClawMcpServersToConfig(_0x2687ca,_0x2f8dcd);}else{const _0x4abe86=asRecord(_0x2687ca[_0x1f74cd(0x12c)]),_0x5dee30=asRecord(_0x4abe86[_0x374961]);if(Object['keys'](_0x5dee30)['length']===0x0)throw new Error(_0x1f74cd(0x2a9)+'\x22'+_0x374961+(_0x1f74cd(0x2cc)+'und'));_0x5dee30[_0x1f74cd(0x1aa)]=_0x2a530a;let _0xbab223=null;_0x374961===_0x1f74cd(0x1e4)&&(_0xbab223=_0x1f74cd(0x1e4),_0x2a530a&&(_0x5dee30[_0x1f74cd(0x30b)+'g']=!![],delete _0x5dee30[_0x1f74cd(0x145)]));if(_0x374961==='qqbot')_0xbab223=QQBOT_PLUGIN_ID;if(_0x374961===_0x1f74cd(0x2d5))_0xbab223=WECOM_PLUGIN_ID;if(_0xbab223&&typeof openClawConfigHandlers[_0x1f74cd(0x147)+'elConfig']==='function')return openClawConfigHandlers[_0x1f74cd(0x147)+_0x1f74cd(0x151)]({'channelId':_0x374961,'channel':_0x5dee30,'pluginId':_0xbab223,'pluginEnabled':_0x2a530a,'reason':_0x374961+('\x20channel'+'\x20config\x20')+(_0x2a530a?_0x1f74cd(0x1aa):_0x1f74cd(0x163))});_0x4abe86[_0x374961]=_0x5dee30,_0x2687ca[_0x1f74cd(0x12c)]=_0x4abe86;if(_0x374961===_0x1f74cd(0x1e4))_0xbd8f7c(_0x1f74cd(0x1e4));if(_0x374961===_0x1f74cd(0x21b))_0xbd8f7c(QQBOT_PLUGIN_ID);if(_0x374961===_0x1f74cd(0x2d5))_0xbd8f7c(WECOM_PLUGIN_ID);}}}}}}}return _0x228312(_0x2687ca,_0x374961+(_0x1f74cd(0x1b8)+_0x1f74cd(0x129))+(_0x2a530a?'enabled':'disabled'));}async function _0xc46b99({gatewayPort:_0x204aad,gatewayToken:_0x68756a}={}){const _0x36c647=_0x5b9c83;_0x33111b&&(_0x33111b[_0x36c647(0x309)](),_0x33111b=null);const {cwd:_0x493782,env:_0xfa08e2,runtime:_0xa7ebe6}=await _0x5f155f({'FORCE_COLOR':'0',..._0x204aad?{'OPENCLAW_GATEWAY_PORT':String(_0x204aad)}:{},..._0x68756a?{'OPENCLAW_GATEWAY_TOKEN':_0x68756a}:{}}),_0x1fa915=_0xa7ebe6[_0x36c647(0x2c0)][_0x36c647(0x14e)](_0x13d21e=>_0x13d21e[_0x36c647(0x18e)]===WECHAT_PLUGIN_ID);if(!_0x1fa915){const _0x4a8c22='当前客户端未内置'+_0x36c647(0x2f5)+'安装包含微信插件'+_0x36c647(0x13c);return _0x5f0c95(_0x36c647(0x293)+_0x36c647(0x1ac),_0x36c647(0x28b)),_0x5f0c95(_0x36c647(0x149)+'og',_0x4a8c22),{'ok':![],'error':_0x4a8c22};}await _0x2d226c(!![]),_0x5f0c95(_0x36c647(0x149)+'og',_0x36c647(0x2ae)+_0x36c647(0x2ec)+_0x36c647(0x270)+'login\x20--'+'channel\x20'+_0x1fa915[_0x36c647(0x18e)]),_0x33111b=spawn(_0xa7ebe6['nodeExec'+_0x36c647(0x2c7)],[_0xa7ebe6[_0x36c647(0x1ce)+'Bin'],_0x36c647(0x12c),_0x36c647(0x319),'--channe'+'l',_0x1fa915[_0x36c647(0x18e)]],{'cwd':_0x493782,'env':_0xfa08e2});let _0x5077ed='',_0x53a9c5=![],_0x41dcb5=![];const _0x158477=_0x5c91cb=>{const _0x4ccfeb=_0x36c647,_0x50e5e2=_0x5c91cb[_0x4ccfeb(0x291)]();_0x5077ed+=_0x50e5e2;if(!_0x53a9c5){const _0x502f17=_0x5077ed[_0x4ccfeb(0x318)](/(https:\/\/(?:[a-zA-Z0-9-]+\.)*weixin\.qq\.com\S+)/i);_0x502f17?.[0x1]&&(_0x53a9c5=!![],_0x5f0c95(_0x4ccfeb(0x31e)+_0x4ccfeb(0x1fc),_0x502f17[0x1]),_0x5f0c95('wechat-s'+_0x4ccfeb(0x1ac),_0x4ccfeb(0x2d9)));}if(_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x1f3))||_0x50e5e2[_0x4ccfeb(0x2e9)]('Scan\x20suc'+_0x4ccfeb(0x286))||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x308)))_0x5f0c95(_0x4ccfeb(0x293)+_0x4ccfeb(0x1ac),'SCANNED');else{if(_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x30c))||_0x50e5e2['includes'](_0x4ccfeb(0x2e7))||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x148))||_0x50e5e2['includes'](_0x4ccfeb(0x162)+'n')||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x29d)+_0x4ccfeb(0x1ca))||_0x50e5e2[_0x4ccfeb(0x2e9)]('启动成功')||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x176))||_0x50e5e2[_0x4ccfeb(0x2e9)]('无需重复连接')||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x277)+_0x4ccfeb(0x2d2)+'d')||_0x50e5e2[_0x4ccfeb(0x2e9)]('Local\x20lo'+'gin\x20save'+_0x4ccfeb(0x278)))_0x41dcb5=!![],_0x5f0c95(_0x4ccfeb(0x293)+_0x4ccfeb(0x1ac),'SUCCESS'),setTimeout(()=>{const _0x4ab987=_0x4ccfeb;_0x33111b&&(_0x33111b[_0x4ab987(0x309)](),_0x33111b=null);},0xbb8);else{if(_0x50e5e2[_0x4ccfeb(0x2e9)]('过期')||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x197)))_0x5f0c95(_0x4ccfeb(0x293)+_0x4ccfeb(0x1ac),'EXPIRED');else(_0x50e5e2[_0x4ccfeb(0x2e9)]('失败')||_0x50e5e2[_0x4ccfeb(0x2e9)]('Failed')||_0x50e5e2[_0x4ccfeb(0x2e9)](_0x4ccfeb(0x27e)))&&_0x5f0c95(_0x4ccfeb(0x293)+'tatus','ERROR');}}_0x5f0c95(_0x4ccfeb(0x149)+'og',_0x50e5e2);};return _0x33111b['stdout']?.['on'](_0x36c647(0x25c),_0x158477),_0x33111b['stderr']?.['on'](_0x36c647(0x25c),_0x158477),_0x33111b['on'](_0x36c647(0x2c6),_0x10167e=>{const _0x479a99=_0x36c647;_0x33111b=null,_0x5f0c95(_0x479a99(0x293)+'tatus',_0x479a99(0x28b)),_0x5f0c95('wechat-l'+'og',_0x479a99(0x1cc)+_0x479a99(0x232)+_0x10167e[_0x479a99(0x31f)]);}),_0x33111b['on'](_0x36c647(0x20c),_0x3e250a=>{const _0x35b9a9=_0x36c647;_0x33111b=null,_0x41dcb5?_0x2d226c(!![])['catch'](()=>{}):(_0x2d226c(![])[_0x35b9a9(0x132)](()=>{}),_0x5f0c95(_0x35b9a9(0x293)+_0x35b9a9(0x1ac),_0x3e250a===0x0?_0x35b9a9(0x16c):_0x35b9a9(0x28b)));}),{'ok':!![]};}function _0x18a52e(){const _0x193805=_0x5b9c83;return _0x33111b&&(_0x33111b[_0x193805(0x309)](),_0x33111b=null),{'ok':!![]};}function _0x549b20(){const _0x3a5a6b=_0x5b9c83;for(const _0x1cfe1f of _0x52a7c6[_0x3a5a6b(0x1f5)]()){_0x13a853(_0x1cfe1f),_0x1cfe1f[_0x3a5a6b(0x140)]?.[_0x3a5a6b(0x309)]();}_0x52a7c6['clear']();for(const _0x533ebf of _0x4979e9['values']()){_0x3d90a5(_0x533ebf);}_0x4979e9[_0x3a5a6b(0x183)]();for(const _0x20d085 of _0x1e7952[_0x3a5a6b(0x1f5)]()){_0x283b8f(_0x20d085),_0xe9655d(_0x20d085),_0x20d085[_0x3a5a6b(0x140)]?.[_0x3a5a6b(0x309)]();}_0x1e7952[_0x3a5a6b(0x183)](),_0x33111b&&(_0x33111b[_0x3a5a6b(0x309)](),_0x33111b=null);}return{'saveFeishuChannelConfig':_0x3f14c3,'saveQqbotChannelConfig':_0x1ff2ac,'saveWecomChannelConfig':_0x118efe,'saveQqMailConnectorConfig':_0x5bcffa,'saveNetEaseMailConnectorConfig':_0x10e776,'saveTencentExmailConnectorConfig':_0x2d50c5,'saveFeishuDocConnectorConfig':_0x3f4da3,'saveTencentDocsConnectorConfig':_0x2ce4ec,'saveKdocsConnectorConfig':_0x30c170,'saveDingtalkDocConnectorConfig':_0x430570,'readConfigSnapshot':_0x1b31a9,'startKdocsCliConnectSession':_0x4461a4,'getKdocsCliConnectStatus':_0x30f729,'cancelKdocsCliConnectSession':_0x6a3a2d,'startFeishuDocCliConnectSession':_0x12e1ff,'getFeishuDocCliConnectStatus':_0x209476,'cancelFeishuDocCliConnectSession':_0x22130f,'completeFeishuDocCliConnectSession':_0x20bb3b,'startFeishuRegistrationSession':_0x5ca285,'getFeishuRegistrationStatus':_0xaa03ce,'cancelFeishuRegistrationSession':_0x13864b,'listImChannelConfigs':_0x6d30bc,'deleteImChannelConfig':_0x1cbf46,'setImChannelEnabled':_0x51bcf0,'startWechatChannelSession':_0xc46b99,'cancelWechatChannelSession':_0x18a52e,'dispose':_0x549b20};}
@@ -0,0 +1 @@
1
+ const _0x2e8b53=_0x222f;(function(_0x58b797,_0x525e18){const _0x17c10b=_0x222f,_0x4c9419=_0x58b797();while(!![]){try{const _0x47283b=parseInt(_0x17c10b(0xa3))/0x1*(-parseInt(_0x17c10b(0x7e))/0x2)+parseInt(_0x17c10b(0xa5))/0x3+parseInt(_0x17c10b(0x82))/0x4+-parseInt(_0x17c10b(0xb9))/0x5*(-parseInt(_0x17c10b(0x90))/0x6)+-parseInt(_0x17c10b(0x84))/0x7+parseInt(_0x17c10b(0xb0))/0x8+-parseInt(_0x17c10b(0x74))/0x9*(parseInt(_0x17c10b(0xcc))/0xa);if(_0x47283b===_0x525e18)break;else _0x4c9419['push'](_0x4c9419['shift']());}catch(_0x1b2f44){_0x4c9419['push'](_0x4c9419['shift']());}}}(_0x539d,0xe1cae));import{existsSync,readdirSync}from'node:fs';import{createWriteStream}from'node:fs';import{chmod,cp,mkdir,readFile,readdir,rm,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{get}from'node:https';function _0x539d(){const _0x1bb011=['7593381tgWMJW','-xzf','\x20failed\x20','close','unzip','rsion\x20fr','ld_proce','cwd','llPaths','with\x20cod','2836KHCywz','ogger','o\x20resolv','nd\x20in\x20ar','3049820epJnMP','i\x20versio','2924348AuSkzg','i\x20alread','openclaw','stdout','WorkingD','tools','li-extra','timeoutM','wujie-sh','test','SIGTERM','time]\x20do','766008kkoPwm','x64','wpsai.wp','skillhub','headers','SKILL.md','ell-runt','/pro','stderr','node:chi','skill\x20ve','push','ebuild\x20t','LocalSki','isFile','location','wnloadin','resume','led','321XUASay','arch','4339383BsUGCC','amd64','info','.tar.gz','filter','i\x20binary','\x20timed\x20o','sing\x20fro','i\x20instal','trim','/release','2039568jOYzKa','join','ime\x0a','extract\x20','error','resolved','utf8','runtimeL','m\x20OpenCl','40TIsarF','i.exe','then','pipe','kdocs-cl','runtimeR','ll\x20prepa','catch','tar','pid','platform','oot','re\x22\x20to\x20r','name','ujie-she','now','data','ignore','log','20MzorBL','Bundled\x20','win32','i\x20is\x20mis','ory','https://','.\x20Run\x20\x22w','statusCo','om\x20','env','isDirect','toString','label','map','y\x20instal'];_0x539d=function(){return _0x1bb011;};return _0x539d();}import{pipeline}from'node:stream/promises';const KDOCS_CLI_CDN_BASE=(process.env.KDOCS_CLI_CDN??_0x2e8b53(0xd1)+_0x2e8b53(0x92)+'scdn.cn/'+_0x2e8b53(0x93)+_0x2e8b53(0x97))['replace'](/\/$/,''),DOWNLOAD_TIMEOUT_MS=0xf*0x3c*0x3e8;async function runProcess(_0x55a2f5,_0x4ac6ce,_0x25d6d0={}){const _0x10e756=_0x2e8b53,{spawn:_0x2419ed}=await import(_0x10e756(0x99)+_0x10e756(0x7a)+'ss'),_0x10d4ca=_0x25d6d0[_0x10e756(0x71)]||[_0x55a2f5,..._0x4ac6ce][_0x10e756(0xb1)]('\x20'),_0x4d7f1e=_0x25d6d0[_0x10e756(0x8b)+'s']??DOWNLOAD_TIMEOUT_MS;return await new Promise((_0x54e281,_0x4f8b45)=>{const _0x59e971=_0x10e756,_0x41ed72=_0x2419ed(_0x55a2f5,_0x4ac6ce,{'cwd':_0x25d6d0[_0x59e971(0x7b)],'env':_0x25d6d0[_0x59e971(0x6e)],'stdio':[_0x59e971(0xca),_0x59e971(0xbc),_0x59e971(0xbc)]});let _0x236dd1='',_0x3b27eb='';const _0x376da0=setTimeout(()=>{const _0x18b954=_0x59e971;_0x41ed72['kill'](_0x18b954(0x8e)),_0x4f8b45(new Error(_0x10d4ca+(_0x18b954(0xab)+'ut\x20after'+'\x20')+_0x4d7f1e+'ms'));},_0x4d7f1e);_0x41ed72[_0x59e971(0x87)]['on'](_0x59e971(0xc9),_0x532382=>{const _0x2f85f3=_0x59e971;_0x236dd1+=_0x532382[_0x2f85f3(0x70)]();}),_0x41ed72[_0x59e971(0x98)]['on'](_0x59e971(0xc9),_0x2bab21=>{_0x3b27eb+=_0x2bab21['toString']();}),_0x41ed72['on'](_0x59e971(0xb4),_0x4618a1=>{clearTimeout(_0x376da0),_0x4f8b45(_0x4618a1);}),_0x41ed72['on'](_0x59e971(0x77),_0x4db5f0=>{const _0x347b34=_0x59e971;clearTimeout(_0x376da0);if(_0x4db5f0===0x0)_0x54e281({'stdout':_0x236dd1,'stderr':_0x3b27eb,'code':_0x4db5f0});else _0x4f8b45(new Error(_0x10d4ca+(_0x347b34(0x76)+_0x347b34(0x7d)+'e\x20')+_0x4db5f0+':\x20'+(_0x3b27eb||_0x236dd1)));});});}async function downloadFile(_0x27c33c,_0x7a9aed){await mkdir(dirname(_0x7a9aed),{'recursive':!![]});const _0xd4fb89=await new Promise((_0x1a561d,_0x1992ca)=>{const _0x43cdd4=_0x222f,_0x2633f8=get(_0x27c33c,_0x57242e=>{const _0x32bbcd=_0x222f;if([0x12d,0x12e,0x12f,0x133,0x134]['includes'](_0x57242e['statusCo'+'de']||0x0)&&_0x57242e[_0x32bbcd(0x94)][_0x32bbcd(0x9f)]){_0x57242e['resume'](),downloadFile(new URL(_0x57242e[_0x32bbcd(0x94)][_0x32bbcd(0x9f)],_0x27c33c)['href'],_0x7a9aed)[_0x32bbcd(0xbb)](()=>_0x1a561d(null))[_0x32bbcd(0xc0)](_0x1992ca);return;}if((_0x57242e['statusCo'+'de']||0x0)>=0x190){_0x57242e[_0x32bbcd(0xa1)](),_0x1992ca(new Error('download'+_0x32bbcd(0x76)+_0x57242e[_0x32bbcd(0xd3)+'de']+':\x20'+_0x27c33c));return;}_0x1a561d(_0x57242e);});_0x2633f8['on'](_0x43cdd4(0xb4),_0x1992ca);});if(!_0xd4fb89)return;await pipeline(_0xd4fb89,createWriteStream(_0x7a9aed));}async function findRuntimeKdocsCliBin(_0x3a5b4e){const _0xde30eb=_0x2e8b53,_0x302e64=join(_0x3a5b4e[_0xde30eb(0x86)+_0xde30eb(0x88)+'ir'],_0xde30eb(0x89),_0xde30eb(0xbd)+'i'),_0x559292=join(_0x302e64,process['platform']===_0xde30eb(0xce)?'kdocs-cl'+_0xde30eb(0xba):_0xde30eb(0xbd)+'i');return{'installDir':_0x302e64,'binPath':existsSync(_0x559292)?_0x559292:null};}export async function resolveRuntimeKdocsCliCommand(_0x2ee9e4){const _0x28b664=_0x2e8b53,{installDir:_0x14276c,binPath:_0x106321}=await findRuntimeKdocsCliBin(_0x2ee9e4);if(!_0x106321||!existsSync(_0x106321))throw new Error(_0x28b664(0xcd)+'kdocs-cl'+_0x28b664(0xcf)+_0x28b664(0xac)+_0x28b664(0xb8)+'aw\x20runti'+'me:\x20'+_0x14276c+(_0x28b664(0xd2)+_0x28b664(0xc7)+_0x28b664(0xbf)+_0x28b664(0xc5)+_0x28b664(0x9c)+'he\x20runti'+'me.'));return{'executablePath':_0x106321,'installDir':_0x14276c};}function toKdocsCliPlatform(_0x2686d9){if(_0x2686d9==='win32')return'windows';return _0x2686d9;}function toKdocsCliArch(_0x409913){const _0xe75232=_0x2e8b53;if(_0x409913===_0xe75232(0x91))return _0xe75232(0xa6);return _0x409913;}async function resolveKdocsSkillVersion(_0x10ed3e){const _0x16aab3=_0x2e8b53,_0x357ab4=_0x10ed3e['openclaw'][_0x16aab3(0xb5)+_0x16aab3(0x9d)+_0x16aab3(0x7c)]??[],_0x97c20d=[];for(const _0x2c252a of _0x357ab4){if(!existsSync(_0x2c252a))continue;_0x97c20d[_0x16aab3(0x9b)](join(_0x2c252a,_0x16aab3(0x95))),_0x97c20d['push'](...(await readdir(_0x2c252a,{'withFileTypes':!![]}))[_0x16aab3(0xa9)](_0x431e31=>_0x431e31[_0x16aab3(0x6f)+_0x16aab3(0xd0)]())['map'](_0x9a3bb5=>join(_0x2c252a,_0x9a3bb5[_0x16aab3(0xc6)],_0x16aab3(0x95))));}for(const _0x9a762b of _0x97c20d){if(!existsSync(_0x9a762b))continue;const _0x6b10d5=await readFile(_0x9a762b,_0x16aab3(0xb6));if(!/^name:\s*kdocs\s*$/m[_0x16aab3(0x8d)](_0x6b10d5))continue;const _0x5dff3c=_0x6b10d5['match'](/^version:\s*"?([^"\s]+)"?\s*$/m);if(_0x5dff3c?.[0x1])return _0x5dff3c[0x1];}throw new Error('Unable\x20t'+_0x16aab3(0x80)+'e\x20kdocs\x20'+_0x16aab3(0x9a)+_0x16aab3(0x79)+_0x16aab3(0xd4)+_0x357ab4[_0x16aab3(0xb1)](',\x20'));}export async function hasConfiguredKdocsSkill(_0x290807){const _0x1e27e5=_0x2e8b53,_0x22a4e0=_0x290807[_0x1e27e5(0x86)]['resolved'+_0x1e27e5(0x9d)+_0x1e27e5(0x7c)]??[],_0x5b1b5d=[];for(const _0x5c3ed3 of _0x22a4e0){if(!existsSync(_0x5c3ed3))continue;_0x5b1b5d[_0x1e27e5(0x9b)](join(_0x5c3ed3,_0x1e27e5(0x95))),_0x5b1b5d['push'](...(await readdir(_0x5c3ed3,{'withFileTypes':!![]}))[_0x1e27e5(0xa9)](_0xcc043f=>_0xcc043f[_0x1e27e5(0x6f)+_0x1e27e5(0xd0)]())[_0x1e27e5(0x72)](_0x1c10f1=>join(_0x5c3ed3,_0x1c10f1['name'],'SKILL.md')));}for(const _0x1f3325 of _0x5b1b5d){if(!existsSync(_0x1f3325))continue;const _0x5749bf=await readFile(_0x1f3325,'utf8');if(/^name:\s*kdocs\s*$/m['test'](_0x5749bf))return!![];}return![];}function _0x222f(_0x469cac,_0xcdf98b){_0x469cac=_0x469cac-0x6e;const _0x539d07=_0x539d();let _0x222fe9=_0x539d07[_0x469cac];return _0x222fe9;}export const __test__={'hasConfiguredKdocsSkill':hasConfiguredKdocsSkill,'resolveKdocsSkillVersion':resolveKdocsSkillVersion};function findFileByName(_0x1c99d7,_0x43a44a){const _0x1cce83=_0x2e8b53;if(!existsSync(_0x1c99d7))return null;for(const _0x56d58f of readdirSync(_0x1c99d7,{'withFileTypes':!![]})){const _0x5280a5=join(_0x1c99d7,_0x56d58f[_0x1cce83(0xc6)]);if(_0x56d58f['isDirect'+'ory']()){const _0x41612a=findFileByName(_0x5280a5,_0x43a44a);if(_0x41612a)return _0x41612a;continue;}if(_0x56d58f[_0x1cce83(0x9e)]()&&_0x56d58f[_0x1cce83(0xc6)]===_0x43a44a)return _0x5280a5;}return null;}export async function installKdocsCliBinary(_0x1a07f3,_0xc309a0,_0x24ae16={}){const _0x33bc45=_0x2e8b53,_0x4b34bb=await resolveKdocsSkillVersion(_0x1a07f3),_0x152057=toKdocsCliPlatform(process[_0x33bc45(0xc3)]),_0x37fa72=toKdocsCliArch(process[_0x33bc45(0xa4)]),_0x21f838=process[_0x33bc45(0xc3)]===_0x33bc45(0xce)?_0x33bc45(0xbd)+_0x33bc45(0xba):_0x33bc45(0xbd)+'i',_0x3e3fdd=join(_0xc309a0[_0x33bc45(0x86)+_0x33bc45(0x88)+'ir'],_0x33bc45(0x89),'kdocs-cl'+'i'),_0x4289f9=join(_0x3e3fdd,_0x21f838);if(existsSync(_0x4289f9))try{const _0x2b829b=(await runProcess(_0x4289f9,['version'],{'label':_0x33bc45(0xbd)+_0x33bc45(0x83)+'n','timeoutMs':0x7530}))[_0x33bc45(0x87)][_0x33bc45(0xae)]();if(_0x2b829b===_0x4b34bb){_0x24ae16[_0x33bc45(0xb7)+_0x33bc45(0x7f)]?.[_0x33bc45(0xa7)](_0x33bc45(0xbd)+_0x33bc45(0x85)+_0x33bc45(0x73)+_0x33bc45(0xa2),{'version':_0x4b34bb,'installDir':_0x3e3fdd});return;}}catch{}const _0x333af4=_0x152057==='windows'?'.zip':_0x33bc45(0xa8),_0x4d99cd=_0x33bc45(0xbd)+'i-'+_0x4b34bb+'-'+_0x152057+'-'+_0x37fa72+_0x333af4,_0x48727e=join(_0xc309a0[_0x33bc45(0xbe)+_0x33bc45(0xc4)],'.cache'),_0x5d3487=join(_0x48727e,_0x4d99cd),_0x30d8b0=join(_0xc309a0['runtimeR'+_0x33bc45(0xc4)],'.kdocs-c'+_0x33bc45(0x8a)+'ct-'+process[_0x33bc45(0xc2)]+'-'+Date[_0x33bc45(0xc8)]()),_0x26ddc5=KDOCS_CLI_CDN_BASE+'/v'+_0x4b34bb+(_0x33bc45(0xaf)+'s/')+_0x4d99cd;await mkdir(_0x48727e,{'recursive':!![]});!existsSync(_0x5d3487)&&(console[_0x33bc45(0xcb)]('[wujie-s'+'hell:run'+_0x33bc45(0x8f)+_0x33bc45(0xa0)+'g\x20'+_0x26ddc5),await downloadFile(_0x26ddc5,_0x5d3487));await rm(_0x30d8b0,{'recursive':!![],'force':!![]}),await mkdir(_0x30d8b0,{'recursive':!![]});_0x5d3487['endsWith']('.zip')?await runProcess(_0x33bc45(0x78),['-q',_0x5d3487,'-d',_0x30d8b0],{'label':_0x33bc45(0xb3)+_0x4d99cd}):await runProcess(_0x33bc45(0xc1),[_0x33bc45(0x75),_0x5d3487,'-C',_0x30d8b0],{'label':'extract\x20'+_0x4d99cd});const _0x2a886f=findFileByName(_0x30d8b0,_0x21f838);if(!_0x2a886f)throw new Error(_0x33bc45(0xbd)+_0x33bc45(0xaa)+'\x20not\x20fou'+_0x33bc45(0x81)+'chive:\x20'+_0x4d99cd);await rm(_0x3e3fdd,{'recursive':!![],'force':!![]}),await mkdir(_0x3e3fdd,{'recursive':!![]}),await cp(_0x2a886f,_0x4289f9);if(process[_0x33bc45(0xc3)]!==_0x33bc45(0xce))await chmod(_0x4289f9,0x1ed);await writeFile(join(_0x3e3fdd,'.source'),_0x33bc45(0x8c)+_0x33bc45(0x96)+_0x33bc45(0xb2),_0x33bc45(0xb6)),await rm(_0x30d8b0,{'recursive':!![],'force':!![]}),_0x24ae16[_0x33bc45(0xb7)+_0x33bc45(0x7f)]?.[_0x33bc45(0xa7)](_0x33bc45(0xbd)+_0x33bc45(0xad)+_0x33bc45(0xa2),{'version':_0x4b34bb,'installDir':_0x3e3fdd,'binPath':_0x4289f9});}
@@ -1 +1 @@
1
- const _0x4723b7=_0x4a72;(function(_0x436912,_0x366c18){const _0x3175f2=_0x4a72,_0x216284=_0x436912();while(!![]){try{const _0xc9cdd6=-parseInt(_0x3175f2(0x1c8))/0x1*(-parseInt(_0x3175f2(0x1e0))/0x2)+parseInt(_0x3175f2(0x119))/0x3*(parseInt(_0x3175f2(0x204))/0x4)+-parseInt(_0x3175f2(0xf1))/0x5*(-parseInt(_0x3175f2(0x21c))/0x6)+parseInt(_0x3175f2(0x229))/0x7*(-parseInt(_0x3175f2(0x112))/0x8)+parseInt(_0x3175f2(0x183))/0x9+parseInt(_0x3175f2(0x149))/0xa+-parseInt(_0x3175f2(0x11f))/0xb;if(_0xc9cdd6===_0x366c18)break;else _0x216284['push'](_0x216284['shift']());}catch(_0x40a63f){_0x216284['push'](_0x216284['shift']());}}}(_0x4a12,0xf3229));import _0x169d1d from'electron';import{fileURLToPath}from'node:url';import{dirname,join,resolve}from'node:path';import{existsSync}from'node:fs';import{readFile,readdir,stat,writeFile}from'node:fs/promises';import{spawn}from'node:child_process';import{loadShellConfig}from'@wujie-shell/config';import{createConfigController}from'../config-controller.mjs';import{createGatewayController}from'../gateway-controller.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../logging.mjs';import{resolveRuntimeRoot}from'../runtime.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x4723b7(0x128)+_0x4723b7(0x21e)),{app,BrowserWindow,dialog,globalShortcut,ipcMain,shell}=_0x169d1d,DEVTOOLS_ACCELERATOR=_0x4723b7(0x108)+_0x4723b7(0xd9)+_0x4723b7(0x13f);let mainWindow=null,shellConfig=null,configController=null,gatewayController=null,bootError=null,mainLogger=null,ipcLogger=null,filesLogger=null,rendererLogger=null;function getMode(){const _0x53f7e2=_0x4723b7;return process.env.VITE_DEV_SERVER_URL?_0x53f7e2(0x21a):_0x53f7e2(0x13a);}function resolveProjectRoot(){return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT||process['cwd']());}function broadcast(_0x410a2f,_0x2ee768){const _0x522375=_0x4723b7;for(const _0xc4b04 of BrowserWindow[_0x522375(0x1ed)+'ndows']()){!_0xc4b04['webConte'+_0x522375(0x1e1)][_0x522375(0x1a8)+_0x522375(0x1ab)]()&&_0xc4b04['webConte'+_0x522375(0x1e1)][_0x522375(0x1f3)]('wujie-sh'+'ell:even'+'t',{'name':_0x410a2f,'payload':_0x2ee768});}}function openDevToolsForActiveContext(){const _0x2586ce=_0x4723b7,_0x5d50d4=BrowserWindow['getFocus'+_0x2586ce(0x251)]()||mainWindow;if(!_0x5d50d4||_0x5d50d4[_0x2586ce(0x1a8)+_0x2586ce(0x1ab)]())return{'ok':![]};return _0x5d50d4[_0x2586ce(0x131)+_0x2586ce(0x1e1)][_0x2586ce(0x105)+'ools']({'mode':_0x2586ce(0x1f7)}),_0x5d50d4[_0x2586ce(0x131)+_0x2586ce(0x1e1)]['send'](_0x2586ce(0x15d)+_0x2586ce(0xde)+'t',{'name':_0x2586ce(0x221)+_0x2586ce(0x168)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x15bd12=_0x4723b7;globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);const _0x266039=globalShortcut[_0x15bd12(0x1ff)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0x266039&&console[_0x15bd12(0x22f)](_0x15bd12(0x20a)+'hell]\x20fa'+_0x15bd12(0x1b1)+_0x15bd12(0x1ff)+'\x20shortcu'+'t:\x20'+DEVTOOLS_ACCELERATOR);}async function createWindow(){const _0x31c2c0=_0x4723b7,_0x4fa422=process.env.VITE_DEV_SERVER_URL||join(shellConfig['projectR'+_0x31c2c0(0x23c)],_0x31c2c0(0x1e8),'index.ht'+'ml'),_0x1093ab=process[_0x31c2c0(0xf5)]===_0x31c2c0(0x15a);mainLogger?.[_0x31c2c0(0xf3)](_0x31c2c0(0xe4)+_0x31c2c0(0x202)+_0x31c2c0(0x226),{'rendererUrl':_0x4fa422,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig[_0x31c2c0(0x1e6)+_0x31c2c0(0x114)],'backgroundColor':_0x1093ab?_0x31c2c0(0x1d4)+'0':_0x31c2c0(0x14b),'titleBarStyle':_0x1093ab?'hiddenIn'+'set':_0x31c2c0(0xdf),..._0x1093ab?{'trafficLightPosition':{'x':0x12,'y':0x16}}:{},..._0x1093ab?{'vibrancy':_0x31c2c0(0xfe)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}});const _0x257c26=process.env.VITE_DEV_SERVER_URL;_0x257c26?(await mainWindow[_0x31c2c0(0x22e)](_0x257c26),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow['webConte'+_0x31c2c0(0x1e1)][_0x31c2c0(0x105)+_0x31c2c0(0xdb)]({'mode':'detach'})):await mainWindow[_0x31c2c0(0x14c)](join(shellConfig[_0x31c2c0(0x122)+_0x31c2c0(0x23c)],'dist','index.ht'+'ml')),mainLogger?.[_0x31c2c0(0xf3)](_0x31c2c0(0x1ee)+_0x31c2c0(0x20d)+'ed',{'rendererUrl':_0x4fa422,'mode':getMode()});}function installIpcHandlers(){const _0x3f09d7=_0x4723b7,_0x5a0d83=(_0x50ece4,_0x320c78)=>{const _0x2159b4=_0x4a72;ipcMain[_0x2159b4(0x247)](_0x50ece4,async(_0x39c96e,_0x38235c)=>{const _0xee4533=_0x2159b4,_0x541e9c=Date[_0xee4533(0x24f)](),_0x190cbd=_0x39c96e['senderFr'+_0xee4533(0x114)]?.[_0xee4533(0x127)]||_0x39c96e[_0xee4533(0x22c)]['getURL']();ipcLogger?.[_0xee4533(0xf3)]('ipc\x20requ'+_0xee4533(0xf2)+_0xee4533(0x23d),{'channel':_0x50ece4,'senderUrl':_0x190cbd,'payload':summarizePayload(_0x38235c)});try{const _0x4738c5=await _0x320c78(_0x39c96e,_0x38235c);return ipcLogger?.[_0xee4533(0xf3)](_0xee4533(0x113)+'est\x20comp'+_0xee4533(0x228),{'channel':_0x50ece4,'durationMs':Date['now']()-_0x541e9c,'result':summarizePayload(_0x4738c5,{'maxDepth':0x2})}),_0x4738c5;}catch(_0x40f9be){ipcLogger?.['error'](_0xee4533(0x113)+_0xee4533(0x140)+'ed',{'channel':_0x50ece4,'durationMs':Date[_0xee4533(0x24f)]()-_0x541e9c,'error':summarizeError(_0x40f9be)});throw _0x40f9be;}});},_0x5951dc=()=>{const _0x41a3d6=_0x4a72;if(!gatewayController)throw new Error(bootError?_0x41a3d6(0x15d)+_0x41a3d6(0x185)+_0x41a3d6(0x14a)+'\x20'+bootError:_0x41a3d6(0x15d)+_0x41a3d6(0x1f2)+'way\x20is\x20n'+_0x41a3d6(0x1a9)+_0x41a3d6(0x178));return gatewayController;};_0x5a0d83(_0x3f09d7(0x206),async()=>({'name':shellConfig['productN'+_0x3f09d7(0x114)],'version':app[_0x3f09d7(0x1d2)+'on'](),'appId':shellConfig['appId'],'dataDir':shellConfig[_0x3f09d7(0xe7)]})),_0x5a0d83(_0x3f09d7(0x100)+_0x3f09d7(0x1aa),async(_0x3987fa,_0xf63413)=>{const _0x3ead8c=_0x3f09d7,_0x427256=typeof _0xf63413===_0x3ead8c(0x20b)?_0xf63413:'';if(!_0x427256)return{'ok':![]};return filesLogger?.['info'](_0x3ead8c(0x106)+_0x3ead8c(0x1bc)+_0x3ead8c(0x215)+_0x3ead8c(0x23d),{'url':summarizeText(_0x427256,0xa0)}),await shell[_0x3ead8c(0x1a4)+_0x3ead8c(0xee)](_0x427256),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xe0)+_0x3f09d7(0x10a),_0x6708ed=>{const _0x1859c7=_0x3f09d7;return BrowserWindow['fromWebC'+_0x1859c7(0x22b)](_0x6708ed['sender'])?.['minimize'](),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xea)+_0x3f09d7(0x1dc)+_0x3f09d7(0x150),_0x1cfb3b=>{const _0x4568c9=_0x3f09d7,_0x24cf15=BrowserWindow[_0x4568c9(0x1b2)+_0x4568c9(0x22b)](_0x1cfb3b[_0x4568c9(0x22c)]);if(!_0x24cf15)return{'isMaximized':![]};if(_0x24cf15['isMaximi'+_0x4568c9(0x152)]())_0x24cf15[_0x4568c9(0x22d)+'ze']();else _0x24cf15[_0x4568c9(0xe8)]();return{'isMaximized':_0x24cf15[_0x4568c9(0x1de)+_0x4568c9(0x152)]()};}),_0x5a0d83(_0x3f09d7(0x1b6)+_0x3f09d7(0x11d),_0x42ff48=>{const _0x1ef947=_0x3f09d7;return BrowserWindow[_0x1ef947(0x1b2)+_0x1ef947(0x22b)](_0x42ff48[_0x1ef947(0x22c)])?.[_0x1ef947(0x18a)](),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0x1f8)+_0x3f09d7(0x197)+_0x3f09d7(0xdb),()=>openDevToolsForActiveContext()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xf0)+'-info',()=>_0x5951dc()[_0x3f09d7(0x16b)+_0x3f09d7(0x16e)]()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+_0x3f09d7(0x1e5),()=>_0x5951dc()[_0x3f09d7(0x1c2)+'s']()),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+_0x3f09d7(0x24d),()=>_0x5951dc()['restart'](_0x3f09d7(0x165)+'\x20request')),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0xd6)+'-logs',(_0x2c5491,_0x73001b={})=>_0x5951dc()[_0x3f09d7(0x243)+_0x3f09d7(0x151)](_0x73001b?.[_0x3f09d7(0x17e)]??0xc8)),_0x5a0d83(_0x3f09d7(0x1d6)+_0x3f09d7(0x171)+_0x3f09d7(0x23f)+_0x3f09d7(0x1a7)+'n',(_0x332859,_0x3ac52a)=>_0x5951dc()['answerAs'+_0x3f09d7(0x24b)+_0x3f09d7(0x103)](_0x3ac52a)),_0x5a0d83('openclaw'+_0x3f09d7(0x12d)+'i-window',async()=>{const _0x56b84f=_0x3f09d7,_0x5cafca=join(resolveRuntimeRoot(shellConfig[_0x56b84f(0x122)+'oot']),_0x56b84f(0x18e),_0x56b84f(0x242)+'w');if(!existsSync(_0x5cafca))throw new Error(_0x56b84f(0x1d6)+'\x20CLI\x20wra'+_0x56b84f(0x13c)+_0x56b84f(0x209)+_0x5cafca+(_0x56b84f(0x1a5)+_0x56b84f(0x249)+_0x56b84f(0x1c5)+_0x56b84f(0x15f)));const _0x4155ac=join(app[_0x56b84f(0x154)](_0x56b84f(0x1e4)),_0x56b84f(0x15d)+_0x56b84f(0x19a)+_0x56b84f(0x20e));await writeFile(_0x4155ac,_0x56b84f(0x179)+_0x56b84f(0x10e)+_0x5cafca[_0x56b84f(0x143)](/\\/g,'\x5c\x5c')[_0x56b84f(0x143)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x19a5c4=spawn(_0x56b84f(0x1b5),['-a',_0x56b84f(0x1c9),_0x4155ac],{'detached':!![],'stdio':_0x56b84f(0x1f5)});return _0x19a5c4[_0x56b84f(0x110)](),{'ok':!![],'cliPath':_0x5cafca};}),_0x5a0d83(_0x3f09d7(0x174)+_0x3f09d7(0x144),()=>_0x5951dc()[_0x3f09d7(0x123)]['list']()),_0x5a0d83(_0x3f09d7(0xd7)+_0x3f09d7(0x1a2),(_0x204511,_0x23f283)=>_0x5951dc()[_0x3f09d7(0x1ba)][_0x3f09d7(0x241)](_0x23f283)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x101),(_0x3340e7,_0x5c83c4)=>_0x5951dc()['sessions'][_0x3f09d7(0x191)](_0x5c83c4)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x23a),(_0x483636,_0xde449a)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x1b4)](_0xde449a)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x177),(_0x2a25cd,_0x4ef436)=>_0x5951dc()['sessions'][_0x3f09d7(0x240)](_0x4ef436)),_0x5a0d83(_0x3f09d7(0x1fb)+'eam',(_0x90269d,_0x3b249b)=>_0x5951dc()[_0x3f09d7(0x245)][_0x3f09d7(0x13d)](_0x3b249b)),_0x5a0d83(_0x3f09d7(0x14d)+'rt',(_0x4ed5b2,_0x3fffdb)=>_0x5951dc()['chat'][_0x3f09d7(0x1fd)](_0x3fffdb)),_0x5a0d83(_0x3f09d7(0x1b9)+_0x3f09d7(0x220),(_0x7140b,_0x1e4649)=>_0x5951dc()[_0x3f09d7(0x245)][_0x3f09d7(0xfb)](_0x1e4649)),_0x5a0d83(_0x3f09d7(0x233)+'te',async(_0x1b7170,_0x4e605a={})=>{const _0x101152=_0x3f09d7,_0x1736b0=typeof _0x4e605a[_0x101152(0x216)]===_0x101152(0x20b)?_0x4e605a['level']:_0x101152(0xf3),_0x5b8ab6=typeof _0x4e605a[_0x101152(0x192)]===_0x101152(0x20b)?_0x4e605a[_0x101152(0x192)]:'renderer'+'\x20log',_0x129ea9=typeof _0x4e605a['context']===_0x101152(0x20b)&&_0x4e605a[_0x101152(0x1c1)][_0x101152(0x16d)]()?'renderer'+':'+_0x4e605a[_0x101152(0x1c1)][_0x101152(0x16d)]():_0x101152(0x165),_0x670b90=_0x4e605a[_0x101152(0x1ad)]&&typeof _0x4e605a[_0x101152(0x1ad)]===_0x101152(0x1cf)?summarizePayload(_0x4e605a['meta']):undefined,_0x5c7d63=rendererLogger;if(_0x5c7d63?.[_0x1736b0])await _0x5c7d63[_0x1736b0](_0x5b8ab6,_0x670b90);else await _0x5c7d63?.['info'](_0x5b8ab6,_0x670b90);return{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0x109)+_0x3f09d7(0x1fe),async(_0xaa770a,_0x3d1210={})=>{const _0x412928=_0x3f09d7,_0x57b909=typeof _0x3d1210[_0x412928(0x1ef)+'r']===_0x412928(0x20b)&&_0x3d1210[_0x412928(0x1ef)+'r'][_0x412928(0x16d)]()?_0x3d1210[_0x412928(0x1ef)+'r']:undefined,_0x23698f=await exportLogsArchive({'logsDir':configController[_0x412928(0x159)][_0x412928(0x230)],'targetDir':_0x57b909,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x412928(0xf3)](_0x412928(0xf6)+'orted',{'path':toHomePath(_0x23698f[_0x412928(0x115)])}),_0x23698f;}),_0x5a0d83(_0x3f09d7(0xe9)+'n-direct'+'ory',async()=>{const _0xb9cd3e=_0x3f09d7;return await shell[_0xb9cd3e(0x11e)](configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)]),mainLogger?.[_0xb9cd3e(0xf3)](_0xb9cd3e(0x11b)+_0xb9cd3e(0x1e2)+'pened',{'logsDir':toHomePath(configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)])}),{'ok':!![],'path':configController[_0xb9cd3e(0x159)][_0xb9cd3e(0x230)]};}),_0x5a0d83(_0x3f09d7(0x102)+'ad',async(_0x52c1ae,_0x39719d)=>{const _0x47720f=_0x3f09d7,_0x493e96=Date[_0x47720f(0x24f)]();try{const _0x4285df=await readFile(_0x39719d,_0x47720f(0x162));return filesLogger?.[_0x47720f(0xf3)](_0x47720f(0xf7)+_0x47720f(0x196)+_0x47720f(0x23d),{'path':toHomePath(_0x39719d),'bytes':Buffer[_0x47720f(0x1c4)+'th'](_0x4285df),'durationMs':Date[_0x47720f(0x24f)]()-_0x493e96}),_0x4285df;}catch(_0x82c413){filesLogger?.[_0x47720f(0x1d5)](_0x47720f(0xf7)+_0x47720f(0x182),{'path':toHomePath(_0x39719d),'durationMs':Date[_0x47720f(0x24f)]()-_0x493e96,'error':summarizeError(_0x82c413)});throw _0x82c413;}}),_0x5a0d83('files:re'+_0x3f09d7(0x12e)+'y',async(_0x398792,_0x5c459c)=>{const _0x4ab393=_0x3f09d7,_0x361860=Date[_0x4ab393(0x24f)]();try{const _0x2cc034=await readFile(_0x5c459c);return filesLogger?.[_0x4ab393(0xf3)](_0x4ab393(0x175)+'ile\x20read'+'\x20complet'+'ed',{'path':toHomePath(_0x5c459c),'bytes':_0x2cc034[_0x4ab393(0x1c4)+'th'],'durationMs':Date['now']()-_0x361860}),new Uint8Array(_0x2cc034);}catch(_0x4591b8){filesLogger?.[_0x4ab393(0x1d5)]('binary\x20f'+'ile\x20read'+_0x4ab393(0x141),{'path':toHomePath(_0x5c459c),'durationMs':Date[_0x4ab393(0x24f)]()-_0x361860,'error':summarizeError(_0x4591b8)});throw _0x4591b8;}}),_0x5a0d83('files:wr'+_0x3f09d7(0x1ce),async(_0x1575b1,_0x184d3e={})=>{const _0x45bb3a=_0x3f09d7,_0x1d0775=Date['now']();return await writeFile(_0x184d3e[_0x45bb3a(0x115)],_0x184d3e['content']??'','utf8'),filesLogger?.[_0x45bb3a(0xf3)](_0x45bb3a(0x133)+_0x45bb3a(0x24c)+'eted',{'path':toHomePath(_0x184d3e[_0x45bb3a(0x115)]),'bytes':Buffer['byteLeng'+'th'](String(_0x184d3e[_0x45bb3a(0x1b3)]??'')),'durationMs':Date[_0x45bb3a(0x24f)]()-_0x1d0775}),{'ok':!![]};}),_0x5a0d83(_0x3f09d7(0xdc)+_0x3f09d7(0xf4)+'ry',async(_0x21b5f2,_0x54c319={})=>{const _0xf2cee4=_0x3f09d7,_0xbaf394=Date[_0xf2cee4(0x24f)]();await writeFile(_0x54c319[_0xf2cee4(0x115)],Buffer[_0xf2cee4(0x1cc)](_0x54c319[_0xf2cee4(0x1b3)]??[]));const _0x3fcda0=await stat(_0x54c319[_0xf2cee4(0x115)])[_0xf2cee4(0x24e)](()=>null);return filesLogger?.['info'](_0xf2cee4(0x175)+_0xf2cee4(0x1a0)+'e\x20comple'+_0xf2cee4(0x23d),{'path':toHomePath(_0x54c319[_0xf2cee4(0x115)]),'bytes':_0x3fcda0?.[_0xf2cee4(0x246)]??0x0,'durationMs':Date[_0xf2cee4(0x24f)]()-_0xbaf394}),{'ok':!![]};}),_0x5a0d83('files:se'+_0x3f09d7(0x142)+'e',async(_0x254223,_0x125a83={})=>{const _0x36dd01=_0x3f09d7,_0x583c50=await dialog['showOpen'+'Dialog'](BrowserWindow[_0x36dd01(0x1b2)+'ontents'](_0x254223[_0x36dd01(0x22c)])??mainWindow,{'title':typeof _0x125a83[_0x36dd01(0xd5)]===_0x36dd01(0x20b)?_0x125a83[_0x36dd01(0xd5)]:undefined,'properties':[_0x36dd01(0xe6),..._0x125a83[_0x36dd01(0x1a1)+_0x36dd01(0x1c0)]?[_0x36dd01(0x1a1)+_0x36dd01(0x1c0)]:[]],'filters':Array[_0x36dd01(0x16a)](_0x125a83[_0x36dd01(0x218)])?_0x125a83[_0x36dd01(0x218)]:undefined});return filesLogger?.[_0x36dd01(0xf3)]('select\x20f'+'ile\x20comp'+_0x36dd01(0x228),{'canceled':_0x583c50['canceled'],'count':_0x583c50[_0x36dd01(0xe5)+'s'][_0x36dd01(0x145)],'paths':_0x583c50[_0x36dd01(0xe5)+'s'][_0x36dd01(0x1c7)](toHomePath)}),{'canceled':_0x583c50[_0x36dd01(0x1db)],'paths':_0x583c50[_0x36dd01(0xe5)+'s']};}),_0x5a0d83(_0x3f09d7(0x188)+'st-direc'+_0x3f09d7(0x220),async(_0x23bee0,_0x1ed275={})=>{const _0x3f170b=_0x3f09d7,_0x317980=resolve(String(_0x1ed275[_0x3f170b(0x115)]||'')),_0x5a9daa=_0x1ed275[_0x3f170b(0x189)+'e']!==![],_0x1a6e25=Array['isArray'](_0x1ed275[_0x3f170b(0x158)+'ns'])?_0x1ed275[_0x3f170b(0x158)+'ns'][_0x3f170b(0x1c7)](_0x57dfb1=>String(_0x57dfb1)[_0x3f170b(0x20c)+_0x3f170b(0x181)]()[_0x3f170b(0x143)](/^\./,''))[_0x3f170b(0x10f)](Boolean):null,_0x300f5c=Number[_0x3f170b(0x1f0)+'r'](_0x1ed275[_0x3f170b(0x198)+'es'])&&_0x1ed275['maxEntri'+'es']>0x0?_0x1ed275[_0x3f170b(0x198)+'es']:0xc350,_0x5dc662=[];let _0x4dbcf5=![];async function _0x5e478a(_0x35e3bc){const _0x2113f6=_0x3f170b;if(_0x4dbcf5)return;let _0x1d1c74;try{_0x1d1c74=await readdir(_0x35e3bc,{'withFileTypes':!![]});}catch{return;}for(const _0x4716ae of _0x1d1c74){if(_0x4dbcf5)return;if(_0x4716ae['name']['startsWi'+'th']('.'))continue;const _0x3e7f57=join(_0x35e3bc,_0x4716ae[_0x2113f6(0x217)]);if(_0x4716ae[_0x2113f6(0xe1)+'ory']()){if(_0x5a9daa)await _0x5e478a(_0x3e7f57);continue;}if(!_0x4716ae[_0x2113f6(0x132)]())continue;if(_0x1a6e25){const _0x4a284f=_0x4716ae[_0x2113f6(0x217)][_0x2113f6(0x19d)+'xOf']('.'),_0x2f62a3=_0x4a284f>=0x0?_0x4716ae[_0x2113f6(0x217)][_0x2113f6(0x1b8)](_0x4a284f+0x1)[_0x2113f6(0x20c)+'ase']():'';if(!_0x1a6e25['includes'](_0x2f62a3))continue;}if(_0x5dc662['length']>=_0x300f5c){_0x4dbcf5=!![];return;}_0x5dc662[_0x2113f6(0x21d)]({'name':_0x4716ae[_0x2113f6(0x217)],'path':_0x3e7f57});}}return await _0x5e478a(_0x317980),{'path':_0x317980,'entries':_0x5dc662,'truncated':_0x4dbcf5};}),_0x5a0d83(_0x3f09d7(0x1cd)+_0x3f09d7(0x166)+_0x3f09d7(0x118),async(_0x3877e2,_0x3800c5={})=>{const _0x562409=_0x3f09d7,_0x4db3d4=await dialog[_0x562409(0x1c6)+_0x562409(0x12b)](BrowserWindow[_0x562409(0x1b2)+_0x562409(0x22b)](_0x3877e2[_0x562409(0x22c)])??mainWindow,{'title':typeof _0x3800c5[_0x562409(0xd5)]===_0x562409(0x20b)?_0x3800c5['title']:undefined,'properties':[_0x562409(0x11c)+'ctory']});return filesLogger?.['info']('select\x20d'+'irectory'+_0x562409(0x194)+'ed',{'canceled':_0x4db3d4[_0x562409(0x1db)],'count':_0x4db3d4['filePath'+'s'][_0x562409(0x145)],'paths':_0x4db3d4[_0x562409(0xe5)+'s'][_0x562409(0x1c7)](toHomePath)}),{'canceled':_0x4db3d4[_0x562409(0x1db)],'paths':_0x4db3d4[_0x562409(0xe5)+'s']};}),_0x5a0d83(_0x3f09d7(0xd8)+_0x3f09d7(0x187)+'ory-info',()=>_0x5951dc()[_0x3f09d7(0xd8)+'e'][_0x3f09d7(0x223)+_0x3f09d7(0xf9)]()),_0x5a0d83(_0x3f09d7(0xd8)+'e:open-d'+_0x3f09d7(0x199),async()=>{const _0x4c8134=_0x3f09d7,_0x3712e6=await _0x5951dc()[_0x4c8134(0xd8)+'e']['director'+_0x4c8134(0xf9)]();return await shell[_0x4c8134(0x11e)](_0x3712e6[_0x4c8134(0x115)]),filesLogger?.[_0x4c8134(0xf3)](_0x4c8134(0xd8)+_0x4c8134(0x203)+_0x4c8134(0x20f)+'ed',{'path':toHomePath(_0x3712e6[_0x4c8134(0x115)])}),{'ok':!![],'path':_0x3712e6['path']};}),_0x5a0d83('workspac'+_0x3f09d7(0x10c)+'-context',()=>_0x5951dc()[_0x3f09d7(0xd8)+'e'][_0x3f09d7(0x250)+'ntext']()),_0x5a0d83(_0x3f09d7(0xd8)+_0x3f09d7(0x125)+_0x3f09d7(0x18d)+_0x3f09d7(0x211),(_0x398400,_0x24a29c)=>_0x5951dc()['workspac'+'e']['writeSha'+_0x3f09d7(0xe3)+'xt'](_0x24a29c)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x170),(_0x2e6cf7,_0x19ff99)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x148)](_0x19ff99)),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x161)+_0x3f09d7(0x1bd),()=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x193)+'ys']()),_0x5a0d83(_0x3f09d7(0x227)+_0x3f09d7(0x134)+_0x3f09d7(0x1b0),(_0x3f332b,_0x1bd94c)=>_0x5951dc()[_0x3f09d7(0x227)][_0x3f09d7(0x136)+_0x3f09d7(0x222)](_0x1bd94c)),_0x5a0d83(_0x3f09d7(0x10b)+_0x3f09d7(0x120),(_0x1137be,_0xca585a)=>_0x5951dc()[_0x3f09d7(0x1ba)]['install'](_0xca585a)),_0x5a0d83(_0x3f09d7(0xeb)+_0x3f09d7(0x126),(_0x1872f7,_0x2927b5)=>_0x5951dc()['skills']['update'](_0x2927b5)),_0x5a0d83(_0x3f09d7(0x21b)+_0x3f09d7(0x248),(_0x277ba2,_0x3b556f)=>_0x5951dc()[_0x3f09d7(0x1ba)][_0x3f09d7(0x240)](_0x3b556f)),_0x5a0d83(_0x3f09d7(0x107)+'t',(_0x1a93d2,_0x41ca2c)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x1b4)](_0x41ca2c)),_0x5a0d83(_0x3f09d7(0x12c)+_0x3f09d7(0x147),(_0x49cd35,_0xadb792)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x191)](_0xadb792)),_0x5a0d83(_0x3f09d7(0x173)+_0x3f09d7(0x147),(_0x3dedc7,_0x199a46)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x1d3)](_0x199a46)),_0x5a0d83(_0x3f09d7(0x1ec)+_0x3f09d7(0x124),(_0x43e34e,_0x2ce4bc)=>_0x5951dc()[_0x3f09d7(0x200)][_0x3f09d7(0x11a)](_0x2ce4bc)),_0x5a0d83(_0x3f09d7(0x19f)+_0x3f09d7(0x236),(_0x2e5f86,_0x24d09a)=>_0x5951dc()[_0x3f09d7(0x200)]['runOnce'](_0x24d09a)),_0x5a0d83('cron:log'+'s',(_0x458385,_0x144c38)=>_0x5951dc()['cron'][_0x3f09d7(0x17d)](_0x144c38)),_0x5a0d83(_0x3f09d7(0x212)+_0x3f09d7(0x1ea),async(_0x30f4fd,_0x51dae5={})=>{const _0xc9b7a=_0x3f09d7,_0x2551d3=configController[_0xc9b7a(0x207)+_0xc9b7a(0x1d7)+'h'](),_0x57b60e=JSON[_0xc9b7a(0x12a)](await readFile(_0x2551d3,_0xc9b7a(0x162))),_0x5639a5=_0x57b60e?.[_0xc9b7a(0x1be)]?.[_0xc9b7a(0x231)+'s']&&typeof _0x57b60e[_0xc9b7a(0x1be)]['provider'+'s']===_0xc9b7a(0x1cf)?_0x57b60e['models']['provider'+'s']:{},_0x3ab0b2=typeof _0x57b60e?.[_0xc9b7a(0x123)]?.['defaults']?.[_0xc9b7a(0x186)]?.[_0xc9b7a(0x1fc)]==='string'?_0x57b60e[_0xc9b7a(0x123)][_0xc9b7a(0x210)][_0xc9b7a(0x186)][_0xc9b7a(0x1fc)]:'',_0x36a207=String(_0x51dae5[_0xc9b7a(0x186)]||_0x3ab0b2||'');if(!_0x36a207[_0xc9b7a(0x130)]('/'))throw new Error(_0xc9b7a(0xfc)+'lt\x20model'+_0xc9b7a(0x1bf)+_0xc9b7a(0x116)+'\x20a\x20provi'+_0xc9b7a(0x18c)+_0xc9b7a(0x1e3));const _0x1a7eda=_0x36a207['indexOf']('/'),_0x531b6f=_0x36a207[_0xc9b7a(0x1b8)](0x0,_0x1a7eda),_0x5277a8=_0x36a207[_0xc9b7a(0x1b8)](_0x1a7eda+0x1),_0x33f003=_0x5639a5[_0x531b6f];if(!_0x33f003||typeof _0x33f003!==_0xc9b7a(0x1cf))throw new Error(_0xc9b7a(0x231)+'\x20not\x20con'+_0xc9b7a(0x12f)+'\x20'+_0x531b6f);const _0x25cca3=String(_0x33f003['baseUrl']||_0xc9b7a(0xfa)+_0xc9b7a(0x104)+_0xc9b7a(0x13b)+'1')[_0xc9b7a(0x16d)]()[_0xc9b7a(0x143)](/\/$/,''),_0x5b2a47=await fetch(_0x25cca3+(_0xc9b7a(0x19c)+_0xc9b7a(0x21f)+'s'),{'method':_0xc9b7a(0x164),'headers':{'content-type':_0xc9b7a(0x167)+_0xc9b7a(0xda),'Authorization':_0xc9b7a(0xfd)+(_0x33f003[_0xc9b7a(0x1f1)]||''),..._0x33f003[_0xc9b7a(0x18f)]&&typeof _0x33f003['headers']===_0xc9b7a(0x1cf)?_0x33f003['headers']:{}},'body':JSON['stringif'+'y']({'model':_0x5277a8,'max_tokens':Number[_0xc9b7a(0x1f0)+'r'](_0x51dae5[_0xc9b7a(0x17a)+'s'])?_0x51dae5[_0xc9b7a(0x17a)+'s']:0x400,'temperature':typeof _0x51dae5[_0xc9b7a(0x146)+_0xc9b7a(0x18b)]===_0xc9b7a(0x238)?_0x51dae5[_0xc9b7a(0x146)+_0xc9b7a(0x18b)]:undefined,'messages':Array[_0xc9b7a(0x16a)](_0x51dae5[_0xc9b7a(0x244)])?_0x51dae5[_0xc9b7a(0x244)]:[]}),'signal':AbortSignal[_0xc9b7a(0xec)](Number[_0xc9b7a(0x1f0)+'r'](_0x51dae5[_0xc9b7a(0x15e)+'s'])?_0x51dae5[_0xc9b7a(0x15e)+'s']:0x1d4c0)});if(!_0x5b2a47['ok']){const _0xd1924c=await _0x5b2a47[_0xc9b7a(0x19b)]();throw new Error(_0xc9b7a(0x1f9)+_0xc9b7a(0x135)+_0x5b2a47[_0xc9b7a(0x241)]+':\x20'+_0xd1924c[_0xc9b7a(0x1b8)](0x0,0x190));}const _0x21f600=await _0x5b2a47['json'](),_0x2320a6=_0x21f600?.[_0xc9b7a(0x129)]?.[0x0]?.[_0xc9b7a(0x192)]??{};return{'content':typeof _0x2320a6[_0xc9b7a(0x1b3)]===_0xc9b7a(0x20b)?_0x2320a6[_0xc9b7a(0x1b3)]:'','reasoning':typeof _0x2320a6[_0xc9b7a(0x1dd)+_0xc9b7a(0x14f)+'t']===_0xc9b7a(0x20b)?_0x2320a6[_0xc9b7a(0x1dd)+_0xc9b7a(0x14f)+'t']:'','model':_0x21f600?.[_0xc9b7a(0x186)]||_0x5277a8};}),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x208),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x1b7)]()),_0x5a0d83(_0x3f09d7(0x138)+'et-setti'+_0x3f09d7(0x14e),(_0x4fa768,_0x4a17ac)=>_0x5951dc()[_0x3f09d7(0x1be)]['setSetti'+'ngs'](_0x4a17ac)),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x232)+_0x3f09d7(0x1ca),(_0x403c46,_0x1447e5)=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x24a)+_0x3f09d7(0x156)+_0x3f09d7(0x157)](_0x1447e5)),_0x5a0d83(_0x3f09d7(0x138)+_0x3f09d7(0x1e7)+_0x3f09d7(0x224),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x139)+_0x3f09d7(0x163)]()),_0x5a0d83(_0x3f09d7(0x212)+_0x3f09d7(0xdd)+_0x3f09d7(0x15b),()=>_0x5951dc()[_0x3f09d7(0x1be)][_0x3f09d7(0x15c)+_0x3f09d7(0x15b)]()),_0x5a0d83(_0x3f09d7(0x155)+_0x3f09d7(0x205),()=>_0x5951dc()[_0x3f09d7(0x234)][_0x3f09d7(0x22a)]());}function _0x4a72(_0x233ffc,_0x4009c3){_0x233ffc=_0x233ffc-0xd5;const _0x4a12c9=_0x4a12();let _0x4a72ed=_0x4a12c9[_0x233ffc];return _0x4a72ed;}function _0x4a12(){const _0x590f1a=['mjs','mpletion','tory','devtools','dKeys','director','model-id','d\x20reject','ndow','sessions','leted','13233213BPXQgc','read','ontents','sender','unmaximi','loadURL','warn','logsDir','provider','et-self-','logs:wri','config','unhandle','-once','ocess-go','number','one',':list','ctron\x20ma','oot','ted','uit:\x20sto','ask-user','delete','status','wujiecla','getRecen','messages','chat','size','handle','elete','jie-shel','setSelfO','kUserQue','te\x20compl','-restart','catch','now','sharedCo','edWindow','title',':gateway','skills:s','workspac','rControl','ion/json','ools','files:wr','ustom-mo','ell:even','default','window:m','isDirect','files','redConte','creating','filePath','openFile','dataDir','maximize','logs:ope','window:t','skills:u','timeout','ipc','rnal','log',':runtime','15MEWEWd','est\x20star','info','ite-bina','platform','logs\x20exp','file\x20rea','pping\x20ga','yInfo','https://','history','no\x20defau','Bearer\x20','sidebar','\x20main\x20bo','app:open',':create','files:re','stion','api.open','openDevT','open\x20ext','cron:lis','CommandO','logs:exp','inimize','skills:i','e:shared','chrome','h\x0aexec\x20\x22','filter','unref','before-q','8gWVsgR','ipc\x20requ','ame','path','red;\x20set','agent-ev','ectory','35481OARLJm','remove','logs\x20dir','openDire','lose','openPath','13685991ZAWEqd','nstall','ocess\x20go','projectR','agents','ove','e:write-','pdate','url','preload.','choices','parse','Dialog','cron:cre',':open-cl','ad-binar','figured:','includes','webConte','isFile','file\x20wri',':set-pin','tp\x20','setPinne','uit','models:s','selected','prod','ai.com/v','pper\x20not','stream','rocess-g','+Shift+I','est\x20fail','\x20failed','lect-fil','replace','ist','length','temperat','ate','rename','11930940kzwPBi','\x20failed:','#f8fafc','loadFile','chat:abo','ngs','g_conten','ximize','tLogs','zed','session-','getPath','config:r','peratedM','odels','extensio','paths','darwin','dels','customMo','wujie-sh','timeoutM','e\x20first.','\x20process',':pinned-','utf8','ModelId','POST','renderer','lect-dir','applicat','-shortcu','will-qui','isArray','runtimeI','gateway-','trim','nfo','getURL',':rename',':answer-','arch','cron:upd','agents:l','binary\x20f','main',':delete','alized','#!/bin/s','maxToken','then','finally','logs','limit','ot\x20start','eam-even','ase','d\x20failed','9938601waXLdD','start','ell\x20boot','model','e:direct','files:li','recursiv','close','ure','der/mode','shared-c','bin','headers','ll-close','create','message','pinnedKe','\x20complet','Exceptio','d\x20comple','pen-devt','maxEntri','irectory','ell-cli.','text','/chat/co','lastInde','agents-u','cron:run','ile\x20writ','multiSel','tatus','stop','openExte','.\x20Run\x20wu','updated','-questio','isDestro','ot\x20initi','-url','yed','activate','meta','configPa','versions','ned-keys','iled\x20to\x20','fromWebC','content','list','open','window:c','settings','slice','chat:his','skills','\x20excepti','ernal\x20ur','keys','models','\x20configu','ections','context','getStatu','node','byteLeng','l\x20prepar','showOpen','map','34393CqtSdy','Terminal','operated','ion','from','files:se','ite','object','chat-str','uncaught','getVersi','update','#0000000','error','openclaw','onfigPat','efault','ot\x20faile','dRejecti','canceled','oggle-ma','reasonin','isMaximi','boot\x20ele','74DVXGoJ','nts','ectory\x20o','l\x20first','temp','-status','productN','elected-','dist','eted','omplete','stopped\x20','cron:rem','getAllWi','main\x20win','targetDi','isIntege','apiKey','ell\x20gate','send','quit','ignore','render-p','detach','window:o','model\x20ht','index.ht','chat:str','primary','abort','ort','register','cron','window-a','\x20main\x20wi','e\x20direct','56CcygUl','ead','app:info','resolveC','ettings','\x20found:\x20','[wujie-s','string','toLowerC','dow\x20load','command','ory\x20open','defaults','ontext','models:c','electron','hell]\x20fa','l\x20reques','level','name','filters','ndows','dev','skills:d','790038Ugjpar','push'];_0x4a12=function(){return _0x590f1a;};return _0x4a12();}async function boot(){const _0x59370c=_0x4723b7;shellConfig=await loadShellConfig(resolveProjectRoot()),app['setName'](shellConfig[_0x59370c(0x1e6)+_0x59370c(0x114)]),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0x176)),ipcLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0xed)),filesLogger=createShellLogger(configController[_0x59370c(0x159)],_0x59370c(0xe2)),rendererLogger=createShellLogger(configController['paths'],'renderer'),registerProcessLogHooks(),mainLogger?.[_0x59370c(0xf3)]('electron'+_0x59370c(0xff)+_0x59370c(0x17f)+'ed',{'appVersion':app['getVersi'+'on'](),'electronVersion':process[_0x59370c(0x1af)]['electron'],'nodeVersion':process['versions'][_0x59370c(0x1c3)],'chromeVersion':process[_0x59370c(0x1af)][_0x59370c(0x10d)],'platform':process['platform'],'arch':process[_0x59370c(0x172)],'mode':getMode(),'projectRoot':shellConfig[_0x59370c(0x122)+_0x59370c(0x23c)],'configPath':shellConfig[_0x59370c(0x1ae)+'th'],'dataDir':shellConfig['dataDir'],'logsDir':configController[_0x59370c(0x159)][_0x59370c(0x230)],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x59370c(0x122)+_0x59370c(0x23c)],_0x59370c(0x1e8),_0x59370c(0x1fa)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app['getVersi'+'on']()});for(const _0xd24566 of[_0x59370c(0x16c)+'status',_0x59370c(0x16c)+_0x59370c(0xef),_0x59370c(0x1d0)+_0x59370c(0x180)+'t',_0x59370c(0x153)+_0x59370c(0x1a6),_0x59370c(0x117)+'ent',_0x59370c(0x19e)+'pdated',_0x59370c(0x23f)+_0x59370c(0x1a7)+'n']){gatewayController['on'](_0xd24566,_0xd55483=>broadcast(_0xd24566,_0xd55483));}installIpcHandlers(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x59370c(0x184)](),mainLogger?.[_0x59370c(0xf3)](_0x59370c(0x213)+_0x59370c(0xff)+'ot\x20compl'+_0x59370c(0x1e9));}function registerProcessLogHooks(){const _0x1ce4c0=_0x4723b7;if(registerProcessLogHooks[_0x1ce4c0(0x1ff)+'ed'])return;registerProcessLogHooks['register'+'ed']=!![],process['on'](_0x1ce4c0(0x1d1)+_0x1ce4c0(0x195)+'n',_0x3c7b0b=>{const _0x3c39d1=_0x1ce4c0;mainLogger?.[_0x3c39d1(0x1d5)](_0x3c39d1(0x1d1)+_0x3c39d1(0x1bb)+'on',summarizeError(_0x3c7b0b));}),process['on'](_0x1ce4c0(0x235)+_0x1ce4c0(0x1da)+'on',_0x346fe2=>{const _0x8e83d1=_0x1ce4c0;mainLogger?.[_0x8e83d1(0x1d5)](_0x8e83d1(0x235)+_0x8e83d1(0x225)+_0x8e83d1(0x1cb),summarizeError(_0x346fe2));}),app['on'](_0x1ce4c0(0x1f6)+_0x1ce4c0(0x13e)+_0x1ce4c0(0x239),(_0x4a0bb0,_0x2c795e,_0x4e6f8d)=>{const _0xaa238a=_0x1ce4c0;mainLogger?.[_0xaa238a(0x1d5)](_0xaa238a(0x165)+_0xaa238a(0x160)+'\x20gone',{'url':_0x2c795e[_0xaa238a(0x16f)](),'details':_0x4e6f8d});}),app['on']('child-pr'+_0x1ce4c0(0x237)+'ne',(_0x19a188,_0x55d62b)=>{const _0x5604c4=_0x1ce4c0;mainLogger?.[_0x5604c4(0x1d5)]('child\x20pr'+_0x5604c4(0x121)+'ne',{'details':_0x55d62b});});}app['on'](_0x4723b7(0x201)+_0x4723b7(0x190)+'d',()=>{const _0x5638a8=_0x4723b7;if(process['platform']!==_0x5638a8(0x15a))app[_0x5638a8(0x1f4)]();}),app['on'](_0x4723b7(0x1ac),async()=>{const _0x25bec4=_0x4723b7;BrowserWindow[_0x25bec4(0x1ed)+_0x25bec4(0x219)]()['length']===0x0&&shellConfig&&await createWindow();}),app['on'](_0x4723b7(0x111)+_0x4723b7(0x137),_0x3e2813=>{const _0x492742=_0x4723b7;if(!gatewayController)return;mainLogger?.['info']('before\x20q'+_0x492742(0x23e)+_0x492742(0xf8)+'teway'),_0x3e2813['preventD'+_0x492742(0x1d8)](),void gatewayController[_0x492742(0x1a3)]()[_0x492742(0x17c)](()=>{const _0x5dddd2=_0x492742;gatewayController=null,mainLogger?.['info']('gateway\x20'+_0x5dddd2(0x1eb)+'before\x20q'+_0x5dddd2(0x137)),app[_0x5dddd2(0x1f4)]();});}),app['on'](_0x4723b7(0x169)+'t',()=>{globalShortcut['unregist'+'er'](DEVTOOLS_ACCELERATOR);}),app['whenRead'+'y']()[_0x4723b7(0x17b)](boot)[_0x4723b7(0x24e)](_0x14c204=>{const _0x52235b=_0x4723b7;bootError=_0x14c204 instanceof Error?_0x14c204[_0x52235b(0x192)]:String(_0x14c204),mainLogger?.['error'](_0x52235b(0x213)+'\x20main\x20bo'+_0x52235b(0x1d9)+'d',summarizeError(_0x14c204)),console[_0x52235b(0x1d5)]('[wujie-s'+_0x52235b(0x214)+_0x52235b(0x1b1)+_0x52235b(0x1df)+_0x52235b(0x23b)+'in',_0x14c204);});
1
+ const _0x596b63=_0x103c;(function(_0x323ec4,_0x4aa425){const _0x10955a=_0x103c,_0x8dfb86=_0x323ec4();while(!![]){try{const _0xbb6b00=-parseInt(_0x10955a(0x13f))/0x1*(parseInt(_0x10955a(0x377))/0x2)+parseInt(_0x10955a(0x1c7))/0x3+parseInt(_0x10955a(0x3d5))/0x4*(parseInt(_0x10955a(0x321))/0x5)+-parseInt(_0x10955a(0x320))/0x6+parseInt(_0x10955a(0x3af))/0x7*(-parseInt(_0x10955a(0x14b))/0x8)+parseInt(_0x10955a(0x300))/0x9+parseInt(_0x10955a(0x374))/0xa*(-parseInt(_0x10955a(0x237))/0xb);if(_0xbb6b00===_0x4aa425)break;else _0x8dfb86['push'](_0x8dfb86['shift']());}catch(_0xdce231){_0x8dfb86['push'](_0x8dfb86['shift']());}}}(_0x51a8,0xb4eb7));import _0x51eada 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{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{createSessionSqliteStore}from'../sessions/session-sqlite-store.mjs';import{createTerminalManager}from'../terminal/manager.mjs';import{createShellLogger,exportLogsArchive,summarizeError,summarizePayload,summarizeText,toHomePath}from'../common/logging.mjs';import{createDiagnosticsWriter,diagnosticEventFromError}from'../common/diagnostics.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{loadRuntimeInfo,prepareRuntime,resolveRuntimeRoot,getRuntimeSpawnContext,resolveRuntimeLarkCliCommand,runClawOnce}from'../runtime/index.mjs';import{loadCreateUpdateController}from'../updates/loader.mjs';const __dirname=dirname(fileURLToPath(import.meta.url)),preloadPath=join(__dirname,_0x596b63(0x1f3)+_0x596b63(0x211)),{app,BrowserWindow,clipboard,dialog,globalShortcut,ipcMain,protocol,shell}=_0x51eada,DEVTOOLS_ACCELERATOR=_0x596b63(0x316)+_0x596b63(0x227)+'+Shift+I',CLAWSPACE_PROTOCOL_SCHEME=_0x596b63(0x30e)+'e',DEBUG_STDOUT=process.env.WUJIE_SHELL_DEBUG==='1'||process.env.VITE_DEV_SERVER_URL||process.env.NODE_ENV!==_0x596b63(0x266)+'on',LOCAL_FILE_MIME_TYPES=new Map([['.txt',_0x596b63(0x273)+'in;\x20char'+_0x596b63(0x178)+'8'],[_0x596b63(0x270),'text/mar'+'kdown;\x20c'+_0x596b63(0x352)+_0x596b63(0x290)],['.jpg',_0x596b63(0x181)+'eg'],['.jpeg',_0x596b63(0x181)+'eg'],[_0x596b63(0xdb),_0x596b63(0x168)+'g'],['.gif','image/gi'+'f'],['.bmp',_0x596b63(0x234)+'p'],[_0x596b63(0x1d7),_0x596b63(0x2cb)+'g+xml'],[_0x596b63(0x141),'image/we'+'bp'],[_0x596b63(0x317),_0x596b63(0x1a9)+'4'],[_0x596b63(0x11e),_0x596b63(0x39b)+_0x596b63(0x1ed)],[_0x596b63(0x2f5),_0x596b63(0x23e)+_0x596b63(0xe6)],[_0x596b63(0x1b1),_0x596b63(0x23e)+'matroska'],['.webm',_0x596b63(0x2c1)+'bm'],[_0x596b63(0x232),'audio/mp'+'eg'],[_0x596b63(0x1d0),_0x596b63(0x3b6)+'v'],['.m4a',_0x596b63(0x26e)+'4'],[_0x596b63(0x3cc),'audio/aa'+'c'],[_0x596b63(0x138),_0x596b63(0x243)+'g'],[_0x596b63(0x238),'audio/fl'+'ac']]);protocol[_0x596b63(0x32a)+'SchemesA'+'sPrivile'+_0x596b63(0x336)]([{'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={},sessionSqliteStore=null,diagnosticsWriter=null,userEventWriter=null,isQuitting=![],updateController=null;function _0x51a8(){const _0x1f3524=['.md','ile\x20writ',':fork','text/pla','\x20request','folder','resolveS',':save-kd','enClawCh','huDocCon','getState','required','whenRead','answerAs',':diagnos','runtimeI','syncRunt','deleteIm','Unsuppor','huChanne','install','ure','agents:d',':open-cl','reasonin','logs\x20dir','-by-sess','th\x20is\x20re','files:re','startsWi',':rename','agents:w','tf-8','efault','disable','ector:\x20','cancelFe','ted-ever','object','ted-stat','update','enable','getURL','\x20is\x20requ','ndlers','main\x20win','bytes\x20*/','config:c','models:c','find','ell\x20gate','cCliConn','loadFile','ocs','setLogin','ove','saveCust','openPath','wujiecla','d\x20is\x20req','updated','lastInde','ame','darwin','deleteCu','appId','keyDown','er\x20missi',':status','index.mj','iConnect','nabled','ocus','gatewayT','.\x20Run\x20wu','[wujie-s','\x20complet','error','limit','eam','enClawSk','video/we','dist','-port','temperat','ist','setName','pened','ishuRegi',':loading','files:wr','image/sv','ectSessi','product\x20','ey\x20is\x20re','ead','filePath',':complet','writeEve','wBin','skills:s','Updates','uired','getAppPa','models','app:star','Observed','mpletion','shuRegis','et-self-','baseUrl','warn','HEAD','e:shared','pluginId','min','configPa','match','string','ncident','markQuit','sender','openDevT','e:direct','productN','\x20found:\x20','agents:l','uit:\x20sto',':agent-m','senderFr','sharedCo','list','kgroundC','.avi','OPTIONS','dRejecti','ll-close','cwd','ntext','t-messag','canceled','et-setti',':save-te','jie-shel','12894102RqnPJN','showOpen','ctron\x20ma','ell\x20conf','plugin\x20d','writeTex','l\x20prepar','models:s','ig\x20is\x20no','deletedS',':list','history','ing','unmaximi','clawspac','openAtLo','app:syst','tup:get','-shortcu','setImCha','nectorCo',':run-onc','CommandO','.mp4','saveQqMa','migrateP','leted','untimeHa','oad','ectory','way\x20is\x20n',':save-di','6859830fwcEIV','55tsXiFi','illEntry','app:open','d\x20reject','startKdo','renderer','director','nt]','settings','register','byteLeng','deleteOp','bytes','uest-age','ap:get','generate','tabs-com','ustom-mo','omplete','sConnect','applicat','ged','kUserQue','sessionK','ell-cli.','agent\x20up','yed','hell]\x20fa','Update','artifact','fromEntr','patch','devtools','map','hell:ipc','startFei','config:r','uRegistr','record','ite','pathname','sidebar','gateway-','ionEntry','zed','-questio','replace','ings','agents:u','harset=u','tus','before\x20q','all','webConte','recursiv','size','ready','terminal','path','rnal','wujie-sh','selected','url','isPackag','toISOStr','unhandle','unknown','st-direc','range','mail','number','local',':save-qq','teway','lawSkill','GET,\x20HEA','redConte','ai.com/v','set','saveDing','closeToT','m-channe','entExmai','10UiscNs','dispose','maxToken','824726HACLOZ','g_conten','ItemSett','no\x20defau','bytes\x20','ies','and-inst','cron:run','fromWebC','isFinite','nfig','targetDi','tabs:req','window:m','pdate','mport-zi','showSave','reload','onfig','ishu-cha','avatar','les:list','before-q','app:tray','customMo','\x20process','nts','igSnapsh','Entry','getAllWi','tLogs','indexOf','eted','shuDocCl','ile\x20comp','finally','video/qu','-weixin','dAt','tp\x20','isIntege','abort','ite-bina','exec','agentId','ackgroun','ssion','onfigPat','andledIn','startWec','meFilter','ot\x20compl','logs:exp','Terminal',':create','ationSta','29393cOOKZG',':save-fe','Keys','s:list','uncaught','ensureIn','ted','audio/wa','hideBySe','uit','ntime','content-','extensio','boot\x20ele','writeCon','create','agents-u','nt-state','binary\x20f','in;\x20char','chat:str','saveTenc','status','includes','agent\x20id','elConfig','setOpenC','gatewayP','defaultF','.aac','updateOp','https://','chat-str','eam-even','elete','dow\x20load','runtime\x20','ngs','274948GrBuax','logs','ssion:\x20','arch','mand','control','ndows','der/mode','em:resta','-token','failed','level','tate','lose','length,\x20','uri','readSess','entries','ell\x20boot','config',':gateway','yInfo','groups','-status','pdated','quit','.png','ap:upser','dCheck',':runtime','e\x20first.',':save','workspac','-exit','getStatu','-pinned','context','msvideo','agent_id','saveWeco','headers','ated','ls:list','ximize','ProductR','atus','ile\x20read','path\x20is\x20','igWriteH','ocess-go','rated-fi','message','showItem','child-pr','ontent-t','feishu_d','session-','promises','files','reorderP','resize','Custom','filters','les:dele','wechat','quitAndI','isArray','ools','assign','stop','toLowerC','trim','unregist','info','files:li','isMaximi','saveNetE',':delete','pServer','defaults','file\x20rea',':answer-','split','preventD','elSessio','model-id','nstall','enClawCo','apiKey','-data','skills:i','nelSessi','aseMailC','.mov','Config','inimize','und','select\x20f','initiali','model\x20ht','app:info','ls:delet','Invalid\x20','dels','chrome','node:fs/',':choose-','est\x20fail','start',':close','\x20failed:','sync-bun','multiSel','range,\x20a','lt\x20model','resource','length','ces.json','-request','.ogg','ileName','oken','ask-user','alized','onnector','ot\x20start','1jicrvJ','i-window','.webp','inned','ectory\x20o','tup:set','ory','plugin\x20c','requestB','chat','pop','les:hide','120MJoxGB','ession','agent\x20cr','platform','model','-restart','#0000000','max','torConfi','ctory','ettings','restart','red;\x20set','node','board:wr','main','channelI','omModel','ate','eating','setSelec','cancelKd','kdocs','sPath','ssionKey','\x20configu','ernal\x20ur','mChannel','bot-chan','image/pn','config:i','sourcePa','annelCon','te:get-s','ort','tabs-age','ad-binar','ion','ilConnec','tease-ma','enClawMc','ase','ists','logsDir','nput-eve','set=utf-','ources','et-selec','ChannelC','range,\x20c','cron:cre','getVersi','/chat/co','xOf','image/jp','onfig\x20up','Session','l\x20first','nnel','parseInt','text','openclaw','tabs:pos','\x20a\x20provi','type','upsert','ent','em:open-','dev','-session','ap:entry','listImCh','tic','paths','dataDir','provider','tabs:ref','slice','checkFor','ion/json','orConfig','name','skills:u','reate','then','child\x20pr','product-','emoji','started','itialize','command','irectory','getRecen','ready\x20ex','video/mp','setSetti','startBac','agent','app:upda','vate','dated','payload','.mkv','sessions','\x20gone','maxEntri','cron:upd','s:reveal','te:quit-','shell-ru','ccept-ra','ocsCliCo','messages','select\x20d','plugins:','chat:abo','update-c','l\x20reques','e\x20comple','files:se','app:gene','ncent-ex','\x20main\x20bo','ions-lis','1695690WoaVCJ','Dialog','download','json','d\x20failed','cle','runtime:','cron:log','getFeish','.wav','electron','ywhere','lawPlugi','detach','temp','unref','.svg','filter','stream','cron','utf8','stion','maximize','ishu-doc','index.ht','ctStatus','logs:wri','talkDocC','getPath','s:delete','ishuDocC','rver','get','meta','ell:even','tateDir','isDirect','d-state','icktime',':reorder','markConf','window:c','d\x20comple','render-p','preload.','e\x20direct','remove','agents','app_acti','entDocsC','roductCo','saveQqbo','cron:rem','primary','elected-','saveFeis','\x20main\x20wi','isDestro','customNa','eated','t:\x20','loadURL','fig','method','gateway\x20','lConfig','ory-info','agent\x20de','ng;\x20recr','lConnect','now','product','lawMcpSe','ipc','mjs','onnectSt','\x20failed','ted\x20conn','ontext','d-local','open','preferen','ignore','code','title','Not\x20foun','gin','catch','imePlugi','keys','get-conf','\x20CLI\x20wra','key','lized','ndow','-life-cy','rControl','ModelId','fromIpc','push','\x20log','tory','e\x20url','hell:eve','saveKdoc','plugins','content','.mp3','ired','image/bm','figured:','getPinne','4337465WHDaFl','.flac','ipc\x20requ','ector\x20se','oot','choices','h\x0aexec\x20\x22','video/x-','toWeb','api.open','writeSha','nfo','audio/og','openDire','skills','timeoutM','iled\x20to\x20','input','ections','hatChann','nnelEnab','rayOnClo','Exceptio','stration','csCliCon','file\x20wri','ipc_requ','close','pping\x20ga',':downloa','isabled','nnectSes','hidden',':pin','function','creating','versions','dSession','nConfig','send','odels','app:file','ot\x20initi','hide','quired','projectR','sion','producti','t\x20initia','CliConne','-info','ontents','com-chan','t-stream','some','audio/mp','deleteFi'];_0x51a8=function(){return _0x1f3524;};return _0x51a8();}function attachGatewayBroadcastHandlers(_0x29d261){const _0x1ace6f=_0x596b63;for(const _0x1257a0 of[_0x1ace6f(0x34b)+_0x1ace6f(0x3c5),_0x1ace6f(0x34b)+'log',_0x1ace6f(0x3cf)+_0x1ace6f(0x3d0)+'t',_0x1ace6f(0xf9)+_0x1ace6f(0x2ac),_0x1ace6f(0x1b2)+'-invalid'+_0x1ace6f(0xea),'agent-ev'+_0x1ace6f(0x18d),_0x1ace6f(0x3bf)+_0x1ace6f(0xd9),_0x1ace6f(0x13b)+'-questio'+'n']){_0x29d261['on'](_0x1257a0,_0x37712e=>broadcast(_0x1257a0,_0x37712e));}}function ensureSessionSqliteStore(){const _0x342e72=_0x596b63;if(sessionSqliteStore)return sessionSqliteStore;if(!configController)throw new Error(_0x342e72(0x35d)+_0x342e72(0x303)+_0x342e72(0x308)+_0x342e72(0x267)+_0x342e72(0x224));return sessionSqliteStore=createSessionSqliteStore({'stateDir':configController[_0x342e72(0x276)+'tateDir']()}),sessionSqliteStore;}function ensureGeneratedFilesStore(){const _0x301999=_0x596b63;if(generatedFilesStore)return generatedFilesStore;if(!configController)throw new Error(_0x301999(0x35d)+_0x301999(0x303)+_0x301999(0x308)+_0x301999(0x267)+_0x301999(0x224));return generatedFilesStore=createGeneratedFilesStore({'stateDir':configController[_0x301999(0x276)+'tateDir']()}),generatedFilesStore;}async function ensureGatewayControllerStarted(){const _0x4b993d=_0x596b63;if(!gatewayController&&(!shellConfig||!configController))throw new Error(bootError?_0x4b993d(0x35d)+_0x4b993d(0xd3)+_0x4b993d(0x12f)+'\x20'+bootError:_0x4b993d(0x35d)+_0x4b993d(0x2a2)+'way\x20is\x20n'+_0x4b993d(0x261)+_0x4b993d(0x13c));return!gatewayController&&(mainLogger?.[_0x4b993d(0x2df)](_0x4b993d(0x207)+'controll'+_0x4b993d(0x2b3)+_0x4b993d(0x20b)+_0x4b993d(0x15e)),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x4b993d(0x17e)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),attachGatewayBroadcastHandlers(gatewayController)),await gatewayController[_0x4b993d(0x12d)](),gatewayController;}function getMode(){const _0x16cc09=_0x596b63;return process.env.VITE_DEV_SERVER_URL?_0x16cc09(0x18f):'prod';}function isGatewayNotInitializedError(_0x28e410){const _0x5424c0=_0x596b63;return _0x28e410 instanceof Error&&_0x28e410[_0x5424c0(0xf4)]===_0x5424c0(0x35d)+'ell\x20gate'+_0x5424c0(0x31e)+_0x5424c0(0x261)+_0x5424c0(0x13c);}function revealPathInFolder(_0x175984){const _0x41e536=_0x596b63,_0x3c40de=String(_0x175984||'')[_0x41e536(0x108)]();if(!_0x3c40de)return{'ok':![],'error':_0x41e536(0xf0)+_0x41e536(0x27b)};return shell[_0x41e536(0xf5)+'InFolder'](_0x3c40de),{'ok':!![]};}function resolveProjectRoot(){const _0x5e2bd5=_0x596b63;if(process.env.WUJIE_SHELL_PROJECT_ROOT)return resolve(process.env.WUJIE_SHELL_PROJECT_ROOT);if(app[_0x5e2bd5(0x360)+'ed']&&process['resource'+_0x5e2bd5(0x162)])return join(process[_0x5e2bd5(0x134)+_0x5e2bd5(0x162)],'app.asar');return resolve(process[_0x5e2bd5(0x2f9)]());}function getLocalFileMimeType(_0x49d76a){const _0x516384=_0x596b63;return LOCAL_FILE_MIME_TYPES[_0x516384(0x1e7)](_0x49d76a[_0x516384(0x198)](_0x49d76a[_0x516384(0x2ad)+_0x516384(0x180)]('.'))[_0x516384(0x107)+'ase']())||_0x516384(0x335)+'ion/octe'+_0x516384(0x26c);}function parseSingleRangeHeader(_0x4ecc22,_0x534421){const _0x1f684b=_0x596b63,_0x3d8945=/^bytes=(\d*)-(\d*)$/i[_0x1f684b(0x3a2)](_0x4ecc22['trim']());if(!_0x3d8945)return null;const [,_0x32a0b1,_0x42be94]=_0x3d8945;if(!_0x32a0b1&&!_0x42be94)return null;if(!_0x32a0b1){const _0x566412=Number[_0x1f684b(0x186)](_0x42be94,0xa);if(!Number['isFinite'](_0x566412)||_0x566412<=0x0)return null;const _0xeabee8=Math[_0x1f684b(0x152)](_0x534421-_0x566412,0x0);return{'start':_0xeabee8,'end':_0x534421-0x1};}const _0x2c3c22=Number['parseInt'](_0x32a0b1,0xa);if(!Number['isFinite'](_0x2c3c22)||_0x2c3c22<0x0||_0x2c3c22>=_0x534421)return null;const _0x4a9d12=_0x42be94?Number['parseInt'](_0x42be94,0xa):_0x534421-0x1;if(!Number[_0x1f684b(0x380)](_0x4a9d12)||_0x4a9d12<_0x2c3c22)return null;return{'start':_0x2c3c22,'end':Math[_0x1f684b(0x2e3)](_0x4a9d12,_0x534421-0x1)};}function decodeClawspacePath(_0x557c2b){const _0x276507=_0x596b63;try{const _0x1caeb0=new URL(_0x557c2b);if(_0x1caeb0['protocol']!==CLAWSPACE_PROTOCOL_SCHEME+':')return null;if(_0x1caeb0['hostname']!==_0x276507(0x368))return null;const _0x36eabc=decodeURIComponent(_0x1caeb0[_0x276507(0x349)]);if(!_0x36eabc)return null;if(/^\/[A-Za-z]:\//['test'](_0x36eabc))return _0x36eabc[_0x276507(0x198)](0x1);return _0x36eabc;}catch{return null;}}function createClawspaceHeaders(_0x2b7a31={}){const _0x4bb4fc=_0x596b63;return new Headers({'access-control-allow-origin':'*','access-control-allow-methods':_0x4bb4fc(0x36c)+'D,\x20OPTIO'+'NS','access-control-allow-headers':_0x4bb4fc(0x17c)+_0x4bb4fc(0xf7)+'ype','access-control-expose-headers':_0x4bb4fc(0x3ba)+_0x4bb4fc(0xcf)+'content-'+_0x4bb4fc(0x132)+_0x4bb4fc(0x1b9)+'nges',..._0x2b7a31});}function createLocalFileResponse(_0x2fe15e,_0xbb23c0){const _0x3ec95a=_0x596b63,_0x565adb=statSync(_0xbb23c0);if(!_0x565adb['isFile']())return new Response(_0x3ec95a(0x21c)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x3ec95a(0x3c2)+_0x3ec95a(0x178)+'8'})});const _0x561843=getLocalFileMimeType(_0xbb23c0),_0x4a458c=createClawspaceHeaders({'content-type':_0x561843,'accept-ranges':_0x3ec95a(0x32d),'cache-control':'no-store'});if(_0x2fe15e[_0x3ec95a(0x206)]===_0x3ec95a(0x2e0))return _0x4a458c['set'](_0x3ec95a(0x3ba)+_0x3ec95a(0x135),String(_0x565adb[_0x3ec95a(0x358)])),new Response(null,{'status':0xc8,'headers':_0x4a458c});const _0x37cf24=_0x2fe15e[_0x3ec95a(0xe9)]['get'](_0x3ec95a(0x365));if(!_0x37cf24)return _0x4a458c[_0x3ec95a(0x36f)](_0x3ec95a(0x3ba)+_0x3ec95a(0x135),String(_0x565adb['size'])),new Response(Readable[_0x3ec95a(0x23f)](createReadStream(_0xbb23c0)),{'status':0xc8,'headers':_0x4a458c});const _0x4436ce=parseSingleRangeHeader(_0x37cf24,_0x565adb['size']);if(!_0x4436ce)return new Response(null,{'status':0x1a0,'headers':createClawspaceHeaders({...Object[_0x3ec95a(0x33f)+_0x3ec95a(0x37c)](_0x4a458c[_0x3ec95a(0xd2)]()),'content-range':_0x3ec95a(0x29e)+_0x565adb[_0x3ec95a(0x358)]})});const {start:_0x16e924,end:_0x3b3ff9}=_0x4436ce,_0x585ef4=_0x3b3ff9-_0x16e924+0x1,_0x5c62f0=new Headers(_0x4a458c);return _0x5c62f0[_0x3ec95a(0x36f)]('content-'+_0x3ec95a(0x135),String(_0x585ef4)),_0x5c62f0[_0x3ec95a(0x36f)]('content-'+_0x3ec95a(0x365),_0x3ec95a(0x37b)+_0x16e924+'-'+_0x3b3ff9+'/'+_0x565adb[_0x3ec95a(0x358)]),new Response(Readable['toWeb'](createReadStream(_0xbb23c0,{'start':_0x16e924,'end':_0x3b3ff9})),{'status':0xce,'headers':_0x5c62f0});}function _0x103c(_0x24edb5,_0x1e8017){_0x24edb5=_0x24edb5-0xc9;const _0x51a860=_0x51a8();let _0x103c36=_0x51a860[_0x24edb5];return _0x103c36;}function installClawspaceProtocolHandler(){protocol['handle'](CLAWSPACE_PROTOCOL_SCHEME,_0x4a36ac=>{const _0x98cf64=_0x103c;if(_0x4a36ac[_0x98cf64(0x206)]===_0x98cf64(0x2f6))return new Response(null,{'status':0xcc,'headers':createClawspaceHeaders()});const _0x41d405=decodeClawspacePath(_0x4a36ac[_0x98cf64(0x35f)]);if(!_0x41d405)return new Response(_0x98cf64(0x127)+'clawspac'+_0x98cf64(0x22d),{'status':0x190,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x98cf64(0x3c2)+'set=utf-'+'8'})});if(!existsSync(_0x41d405))return new Response(_0x98cf64(0x21c)+'d',{'status':0x194,'headers':createClawspaceHeaders({'content-type':'text/pla'+_0x98cf64(0x3c2)+_0x98cf64(0x178)+'8'})});return createLocalFileResponse(_0x4a36ac,_0x41d405);});}function broadcast(_0x53ad91,_0x3f690d){const _0x102972=_0x596b63;DEBUG_STDOUT&&console[_0x102972(0x10a)](_0x102972(0x2bb)+_0x102972(0x22e)+_0x102972(0x328),_0x53ad91,summarizePayload(_0x3f690d,{'maxDepth':0x2}));for(const _0x739716 of BrowserWindow[_0x102972(0x394)+_0x102972(0x3db)]()){!_0x739716[_0x102972(0x356)+_0x102972(0x391)][_0x102972(0x200)+_0x102972(0x33b)]()&&_0x739716[_0x102972(0x356)+_0x102972(0x391)][_0x102972(0x25e)](_0x102972(0x35d)+_0x102972(0x1e9)+'t',{'name':_0x53ad91,'payload':_0x3f690d});}}async function loadProductRuntime(){const _0x2f8084=_0x596b63,_0xf04f67=[join(shellConfig[_0x2f8084(0x264)+_0x2f8084(0x23b)],_0x2f8084(0x1b8)+_0x2f8084(0x3b9),'index.mj'+'s'),join(app[_0x2f8084(0x2d7)+'th'](),_0x2f8084(0x1b8)+_0x2f8084(0x3b9),_0x2f8084(0x2b5)+'s')],_0x3ea7e1=_0xf04f67['find'](_0x378e4d=>existsSync(_0x378e4d));if(!_0x3ea7e1)return mainLogger?.['info'](_0x2f8084(0x2cd)+_0x2f8084(0x3d3)+_0x2f8084(0x3bb)+'n\x20not\x20fo'+_0x2f8084(0x121),{'runtimeCandidates':_0xf04f67}),{};try{const _0x1ed9dd=await import(pathToFileURL(_0x3ea7e1)['href']);return mainLogger?.['info'](_0x2f8084(0x2cd)+_0x2f8084(0x3d3)+'extensio'+'n\x20loaded',{'runtimePath':_0x3ea7e1}),_0x1ed9dd;}catch(_0x3d3ecc){mainLogger?.[_0x2f8084(0x2bd)](_0x2f8084(0x2cd)+'runtime\x20'+'extensio'+'n\x20failed'+'\x20to\x20load',{'runtimePath':_0x3ea7e1,'error':summarizeError(_0x3d3ecc)});throw _0x3d3ecc;}}function openDevToolsForActiveContext(){const _0x3e5584=_0x596b63,_0x4daa80=BrowserWindow['getFocus'+'edWindow']()||mainWindow;if(!_0x4daa80||_0x4daa80[_0x3e5584(0x200)+_0x3e5584(0x33b)]())return{'ok':![]};return _0x4daa80['webConte'+_0x3e5584(0x391)][_0x3e5584(0x2ea)+_0x3e5584(0x104)]({'mode':_0x3e5584(0x1d4)}),_0x4daa80[_0x3e5584(0x356)+_0x3e5584(0x391)][_0x3e5584(0x25e)](_0x3e5584(0x35d)+_0x3e5584(0x1e9)+'t',{'name':_0x3e5584(0x341)+_0x3e5584(0x312)+'t','payload':{'accelerator':DEVTOOLS_ACCELERATOR}}),{'ok':!![]};}function registerShellShortcuts(){const _0x124139=_0x596b63;globalShortcut[_0x124139(0x109)+'er'](DEVTOOLS_ACCELERATOR);const _0xf437e7=globalShortcut[_0x124139(0x32a)](DEVTOOLS_ACCELERATOR,openDevToolsForActiveContext);!_0xf437e7&&console[_0x124139(0x2df)](_0x124139(0x2bb)+_0x124139(0x33c)+'iled\x20to\x20'+_0x124139(0x32a)+'\x20shortcu'+_0x124139(0x203)+DEVTOOLS_ACCELERATOR);}async function getRuntimeResourceStatus(){const _0xd339e0=_0x596b63;try{const _0x7bfdf5=await loadRuntimeInfo(shellConfig['projectR'+_0xd339e0(0x23b)]),_0x4cad5f=_0x7bfdf5['manifest']||{};return{'ok':!![],'runtimeRoot':_0x7bfdf5['runtimeR'+_0xd339e0(0x23b)],'openclawVersion':_0x7bfdf5['openclaw'+'Version'],'generatedAt':_0x4cad5f[_0xd339e0(0x330)+_0xd339e0(0x39d)]||null,'pluginCount':Array[_0xd339e0(0x103)](_0x4cad5f['plugins'])?_0x4cad5f[_0xd339e0(0x230)][_0xd339e0(0x135)]:0x0,'plugins':Array['isArray'](_0x4cad5f[_0xd339e0(0x230)])?_0x4cad5f[_0xd339e0(0x230)]:[],'agents':_0x4cad5f[_0xd339e0(0x1f6)]||null,'skills':_0x4cad5f['skills']||null,'wrapper':_0x4cad5f[_0xd339e0(0x2aa)+_0xd339e0(0x2d3)]||null,'product':_0x4cad5f[_0xd339e0(0x20e)]||null};}catch(_0x5af25a){return{'ok':![],'runtimeRoot':resolveRuntimeRoot(shellConfig?.[_0xd339e0(0x264)+_0xd339e0(0x23b)]||resolveProjectRoot()),'error':_0x5af25a instanceof Error?_0x5af25a[_0xd339e0(0xf4)]:String(_0x5af25a)};}}async function createWindow(){const _0x1e5bed=_0x596b63,_0x180ed7=process.env.VITE_DEV_SERVER_URL||join(shellConfig['projectR'+_0x1e5bed(0x23b)],_0x1e5bed(0x2c2),_0x1e5bed(0x1df)+'ml'),_0x2afb65=process[_0x1e5bed(0x14e)]===_0x1e5bed(0x2af);mainLogger?.['info'](_0x1e5bed(0x25a)+_0x1e5bed(0x1ff)+_0x1e5bed(0x225),{'rendererUrl':_0x180ed7,'mode':getMode()}),mainWindow=new BrowserWindow({'width':0x49c,'height':0x30c,'minWidth':0x384,'minHeight':0x26c,'title':shellConfig['productN'+'ame'],'backgroundColor':_0x2afb65?_0x1e5bed(0x151)+'0':'#f8fafc','titleBarStyle':_0x2afb65?_0x1e5bed(0x257):'default',..._0x2afb65?{'titleBarOverlay':!![],'trafficLightPosition':{'x':0x10,'y':0xc}}:{},..._0x2afb65?{'vibrancy':_0x1e5bed(0x34a)}:{},'webPreferences':{'preload':preloadPath,'contextIsolation':!![],'nodeIntegration':![],'sandbox':![]}}),mainWindow['webConte'+'nts']['on']('before-i'+_0x1e5bed(0x177)+'nt',_0x7d12cb=>{const _0x31e073=_0x1e5bed,_0x29b8c5=_0x7d12cb[_0x31e073(0x248)];if(!_0x29b8c5||_0x29b8c5[_0x31e073(0x18b)]!==_0x31e073(0x2b2))return;const _0x4c8fec=String(_0x29b8c5[_0x31e073(0x223)]||'')[_0x31e073(0x107)+'ase'](),_0x4e1331=_0x4c8fec==='r',_0x1ed0aa=process[_0x31e073(0x14e)]===_0x31e073(0x2af)?_0x29b8c5[_0x31e073(0x1e8)]===!![]:_0x29b8c5[_0x31e073(0x3da)]===!![];if(!_0x4e1331||!_0x1ed0aa)return;_0x7d12cb[_0x31e073(0x114)+'efault'](),broadcast(_0x31e073(0x331)+_0x31e073(0x3d9),{'type':'navigati'+'on','action':_0x31e073(0x388)});}),mainWindow['on']('focus',()=>{const _0x47b5f4=_0x1e5bed;updateController?.[_0x47b5f4(0x147)+'ackgroun'+_0x47b5f4(0xdd)]('window_f'+_0x47b5f4(0x2b8));});const _0xbd4d91=process.env.VITE_DEV_SERVER_URL;_0xbd4d91?(await mainWindow[_0x1e5bed(0x204)](_0xbd4d91),process.env.WUJIE_SHELL_OPEN_DEVTOOLS==='1'&&mainWindow[_0x1e5bed(0x356)+'nts'][_0x1e5bed(0x2ea)+_0x1e5bed(0x104)]({'mode':'detach'})):await mainWindow[_0x1e5bed(0x2a4)](join(shellConfig[_0x1e5bed(0x264)+_0x1e5bed(0x23b)],_0x1e5bed(0x2c2),_0x1e5bed(0x1df)+'ml')),mainLogger?.[_0x1e5bed(0x10a)](_0x1e5bed(0x29d)+_0x1e5bed(0x3d2)+'ed',{'rendererUrl':_0x180ed7,'mode':getMode()});}async function installIpcHandlers(){const _0x2a8fe7=_0x596b63,_0x2e2fa8=(_0x51d2de,_0x20d04f)=>{ipcMain['handle'](_0x51d2de,async(_0xfb1f8a,_0x2dbe85)=>{const _0x3a5664=_0x103c,_0x4693aa=Date[_0x3a5664(0x20d)](),_0x1051f2=_0xfb1f8a[_0x3a5664(0x2f1)+_0x3a5664(0x2ae)]?.[_0x3a5664(0x35f)]||_0xfb1f8a[_0x3a5664(0x2e9)][_0x3a5664(0x29a)]();ipcLogger?.[_0x3a5664(0x10a)](_0x3a5664(0x239)+'est\x20star'+'ted',{'channel':_0x51d2de,'senderUrl':_0x1051f2,'payload':summarizePayload(_0x2dbe85)});DEBUG_STDOUT&&console[_0x3a5664(0x10a)](_0x3a5664(0x2bb)+'hell:ipc'+']',_0x51d2de,_0x3a5664(0x1a3),summarizePayload(_0x2dbe85));try{let _0x69ba74;try{_0x69ba74=await _0x20d04f(_0xfb1f8a,_0x2dbe85);}catch(_0x503930){if(!isGatewayNotInitializedError(_0x503930))throw _0x503930;await ensureGatewayControllerStarted(),_0x69ba74=await _0x20d04f(_0xfb1f8a,_0x2dbe85);}const _0x48c093=Date[_0x3a5664(0x20d)]()-_0x4693aa;return ipcLogger?.[_0x3a5664(0x10a)](_0x3a5664(0x239)+'est\x20comp'+_0x3a5664(0x31a),{'channel':_0x51d2de,'durationMs':_0x48c093,'result':summarizePayload(_0x69ba74,{'maxDepth':0x2})}),await userEventWriter?.[_0x3a5664(0x229)]({'channel':_0x51d2de,'payload':_0x2dbe85,'result':_0x69ba74,'durationMs':_0x48c093,'status':'succeede'+'d'}),DEBUG_STDOUT&&console[_0x3a5664(0x10a)](_0x3a5664(0x2bb)+_0x3a5664(0x343)+']',_0x51d2de,'complete'+'d',summarizePayload(_0x69ba74,{'maxDepth':0x2})),_0x69ba74;}catch(_0x42f228){const _0x51d010=Date['now']()-_0x4693aa;ipcLogger?.['error']('ipc\x20requ'+_0x3a5664(0x12c)+'ed',{'channel':_0x51d2de,'durationMs':_0x51d010,'error':summarizeError(_0x42f228)}),await userEventWriter?.[_0x3a5664(0x229)]({'channel':_0x51d2de,'payload':_0x2dbe85,'error':_0x42f228,'durationMs':_0x51d010,'status':_0x3a5664(0xcb)}),await diagnosticsWriter?.['captureI'+_0x3a5664(0x2e7)](diagnosticEventFromError(_0x42f228,{'category':_0x3a5664(0x210),'event':_0x3a5664(0x251)+'est_fail'+'ed','message':'IPC\x20requ'+'est\x20fail'+'ed:\x20'+_0x51d2de,'durationMs':_0x51d010,'meta':{'channel':_0x51d2de,'senderUrl':_0x1051f2,'payload':summarizePayload(_0x2dbe85)}}));DEBUG_STDOUT&&console[_0x3a5664(0x2bd)](_0x3a5664(0x2bb)+_0x3a5664(0x343)+']',_0x51d2de,_0x3a5664(0xcb),summarizeError(_0x42f228));throw _0x42f228;}});},_0x547138=()=>{const _0x3dd28c=_0x103c;if(!gatewayController)throw new Error(bootError?_0x3dd28c(0x35d)+_0x3dd28c(0xd3)+_0x3dd28c(0x12f)+'\x20'+bootError:'wujie-sh'+_0x3dd28c(0x2a2)+_0x3dd28c(0x31e)+'ot\x20initi'+'alized');return gatewayController;},_0x490010=()=>{const _0x4f0388=_0x103c;if(typeof productRuntime[_0x4f0388(0x32a)+_0x4f0388(0xed)+_0x4f0388(0x31b)+_0x4f0388(0x29c)]!==_0x4f0388(0x259))return;const _0x35b186=productRuntime[_0x4f0388(0x32a)+_0x4f0388(0xed)+_0x4f0388(0x31b)+_0x4f0388(0x29c)]({'app':app,'BrowserWindow':BrowserWindow,'broadcast':broadcast,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'dialog':dialog,'exportLogsArchive':exportLogsArchive,'filesLogger':filesLogger,'getRuntimeSpawnContext':getRuntimeSpawnContext,'handle':_0x2e2fa8,'mainLogger':mainLogger,'mainWindow':mainWindow,'rendererLogger':rendererLogger,'requireGateway':_0x547138,'sep':sep,'openClawConfigHandlers':{'update':(..._0xd81c74)=>configController['updateOp'+'enClawCo'+_0x4f0388(0x381)](..._0xd81c74),'setPluginConfig':_0x5c3d8a=>configController['setOpenC'+_0x4f0388(0x1d3)+_0x4f0388(0x25d)](_0x5c3d8a),'setChannelConfig':_0x31cc6e=>configController['setOpenC'+'lawChann'+_0x4f0388(0x3c8)](_0x31cc6e),'deleteChannelConfig':_0x522014=>configController[_0x4f0388(0x32c)+_0x4f0388(0x278)+_0x4f0388(0x16b)+'fig'](_0x522014),'setSkillEntry':_0x5aaceb=>configController[_0x4f0388(0x3c9)+_0x4f0388(0x36b)+_0x4f0388(0x393)](_0x5aaceb),'deleteSkillEntry':_0x136a79=>configController[_0x4f0388(0x32c)+_0x4f0388(0x2c0)+_0x4f0388(0x322)](_0x136a79),'setMcpServer':_0x34664a=>configController['setOpenC'+_0x4f0388(0x20f)+'rver'](_0x34664a),'deleteMcpServer':_0x12a837=>configController[_0x4f0388(0x32c)+_0x4f0388(0x173)+_0x4f0388(0x10f)](_0x12a837)},'shell':shell,'shellConfig':shellConfig,'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand,'summarizePayload':summarizePayload,'summarizeText':summarizeText,'toHomePath':toHomePath,'writeMutableConfig':_0x183794})||{};Object[_0x4f0388(0x105)](productRuntimeHooks,_0x35b186);};_0x2e2fa8(_0x2a8fe7(0x125),async()=>({'name':shellConfig[_0x2a8fe7(0x2ec)+_0x2a8fe7(0x2ae)],'version':app['getVersi'+'on'](),'appId':shellConfig[_0x2a8fe7(0x2b1)],'dataDir':shellConfig[_0x2a8fe7(0x195)]})),_0x2e2fa8(_0x2a8fe7(0x323)+'-url',async(_0x1f5dd5,_0x31629a)=>{const _0x5726fc=_0x2a8fe7,_0x53c33e=typeof _0x31629a==='string'?_0x31629a:'';if(!_0x53c33e)return{'ok':![]};return filesLogger?.[_0x5726fc(0x10a)]('open\x20ext'+_0x5726fc(0x165)+_0x5726fc(0x1c0)+'ted',{'url':summarizeText(_0x53c33e,0xa0)}),await shell['openExte'+_0x5726fc(0x35c)](_0x53c33e),{'ok':!![]};});const _0x183794=async(_0x4da656,_0x54a282)=>{const _0x42f493=_0x2a8fe7;return configController[_0x42f493(0x1ef)+_0x42f493(0xf1)+_0x42f493(0x3a7)+'ternally'](),await configController[_0x42f493(0x3bd)+_0x42f493(0x205)](_0x4da656,_0x54a282),{'ok':!![]};};_0x490010(),_0x2e2fa8('skills:i'+_0x2a8fe7(0x386)+'p',async(_0x30d74a,_0xf0bb01)=>importMarketSkillZip({'payload':_0xf0bb01,'importSkillZip':_0x3614f4=>importSkillZip({..._0x3614f4,'app':app,'dialog':dialog,'dialogWindow':BrowserWindow['fromWebC'+'ontents'](_0x30d74a[_0x2a8fe7(0x2e9)])||mainWindow,'configController':configController}),'configController':configController})),_0x2e2fa8(_0x2a8fe7(0x19d)+_0x2a8fe7(0x385),(_0x3b156a,_0x4255c3)=>updateManagedSkillConfig({'payload':_0x4255c3,'configController':configController})),_0x2e2fa8('skills:d'+_0x2a8fe7(0x3d1),(_0x248229,_0x4dbf61)=>deleteMarketSkillRegistryEntry({'payload':_0x4dbf61,'deleteManagedSkill':_0x592e4b=>deleteManagedSkill({..._0x592e4b,'gateway':_0x547138(),'configController':configController}),'configController':configController}));const _0x23cd4f=ensureGeneratedFilesStore();_0x2e2fa8(_0x2a8fe7(0x1c3)+_0x2a8fe7(0xf3)+_0x2a8fe7(0x38c),async()=>_0x23cd4f[_0x2a8fe7(0x2f3)]()),_0x2e2fa8('app:gene'+'rated-fi'+'les:upse'+'rt',async(_0x14c59c,_0x3e5160={})=>_0x23cd4f[_0x2a8fe7(0x18c)](_0x3e5160)),_0x2e2fa8('app:gene'+'rated-fi'+'les:hide',async(_0x2447d7,_0x3deb88)=>_0x23cd4f[_0x2a8fe7(0x262)](String(_0x3deb88||''))),_0x2e2fa8('app:gene'+_0x2a8fe7(0xf3)+_0x2a8fe7(0x14a)+_0x2a8fe7(0x28a)+_0x2a8fe7(0x170),async(_0x2bb2e3,_0x2d5638)=>_0x23cd4f[_0x2a8fe7(0x3b7)+_0x2a8fe7(0x3a5)](String(_0x2d5638||''))),_0x2e2fa8('app:gene'+_0x2a8fe7(0xf3)+'les:dele'+'te',async(_0x1ad510,_0x3e02fa)=>_0x23cd4f[_0x2a8fe7(0x26f)+'le'](String(_0x3e02fa||''))),_0x2e2fa8('app:gene'+_0x2a8fe7(0xf3)+_0x2a8fe7(0x100)+_0x2a8fe7(0x297)+'e',async(_0x146fc3,_0x30b82e=[])=>_0x23cd4f['deletedS'+'tate'](_0x30b82e)),_0x2e2fa8(_0x2a8fe7(0x1c3)+'rated-fi'+'les:reve'+'al',async(_0x161f77,_0x44c1e5)=>revealPathInFolder(_0x44c1e5)),_0x2e2fa8('artifact'+_0x2a8fe7(0x3b2),async()=>_0x23cd4f[_0x2a8fe7(0x2f3)]()),_0x2e2fa8(_0x2a8fe7(0x33e)+'s:upsert',async(_0x128553,_0x608cb9={})=>_0x23cd4f[_0x2a8fe7(0x18c)](_0x608cb9)),_0x2e2fa8(_0x2a8fe7(0x33e)+'s:hide',async(_0x3e5295,_0x43a725={})=>_0x23cd4f[_0x2a8fe7(0x262)](String(_0x43a725['id']||_0x43a725||''))),_0x2e2fa8(_0x2a8fe7(0x33e)+_0x2a8fe7(0x1e4),async(_0x239ebe,_0x1473a3={})=>_0x23cd4f[_0x2a8fe7(0x26f)+'le'](String(_0x1473a3['id']||_0x1473a3||''))),_0x2e2fa8(_0x2a8fe7(0x33e)+_0x2a8fe7(0x1e4)+_0x2a8fe7(0x1ec),async(_0x1c1b8c,_0x18a842={})=>_0x23cd4f[_0x2a8fe7(0x309)+'tate'](_0x18a842[_0x2a8fe7(0x194)]||_0x18a842)),_0x2e2fa8(_0x2a8fe7(0x33e)+_0x2a8fe7(0x1b6),async(_0x50b640,_0x2981d3={})=>{const _0x273b93=_0x2a8fe7,_0x5bcd05=typeof _0x2981d3===_0x273b93(0x2e6)?_0x2981d3:_0x2981d3[_0x273b93(0x35b)]||_0x2981d3[_0x273b93(0xd0)];return revealPathInFolder(_0x5bcd05);});const _0x587ebf=createPreferencesStore({'stateDir':configController[_0x2a8fe7(0x276)+_0x2a8fe7(0x1ea)](),'storeFile':_0x2a8fe7(0x1a1)+_0x2a8fe7(0x218)+_0x2a8fe7(0x136)});_0x2e2fa8(_0x2a8fe7(0x38e)+':get-clo'+'se',async()=>_0x587ebf[_0x2a8fe7(0x1e7)](_0x2a8fe7(0x371)+_0x2a8fe7(0x24c)+'se',![])),_0x2e2fa8(_0x2a8fe7(0x38e)+':set-clo'+'se',async(_0x2e86b4,_0xb4aed2)=>_0x587ebf['set'](_0x2a8fe7(0x371)+'rayOnClo'+'se',_0xb4aed2===!![])),registerFileHandlers({'app':app,'filesLogger':filesLogger,'handle':_0x2e2fa8,'sep':sep,'stateDir':configController[_0x2a8fe7(0x276)+_0x2a8fe7(0x1ea)](),'toHomePath':toHomePath}),registerProductLogHandlers({'app':app,'configController':configController,'diagnosticEventFromError':diagnosticEventFromError,'diagnosticsWriter':diagnosticsWriter,'exportLogsArchive':exportLogsArchive,'handle':_0x2e2fa8,'mainLogger':mainLogger,'rendererLogger':rendererLogger,'summarizeText':summarizeText,'toHomePath':toHomePath}),registerModelHandlers({'handle':_0x2e2fa8,'modelHandlers':{'saveCustomModel':_0x59fe04=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x2a8)+_0x2a8fe7(0x15c)](_0x59fe04),'deleteCustomModel':_0x57d9cd=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x2b0)+'stomMode'+'l'](_0x57d9cd)}}),connectorController=createConnectorController({'shellConfig':shellConfig,'configController':configController,'broadcast':broadcast,'shell':shell,'getRuntimeSpawnContext':getRuntimeSpawnContext,'openClawConfigHandlers':{'update':(..._0x3c1e41)=>configController[_0x2a8fe7(0x3cd)+_0x2a8fe7(0x118)+_0x2a8fe7(0x381)](..._0x3c1e41),'setPluginConfig':_0x1749a6=>configController['setOpenC'+_0x2a8fe7(0x1d3)+'nConfig'](_0x1749a6),'setChannelConfig':_0x144dee=>configController[_0x2a8fe7(0x3c9)+'lawChann'+'elConfig'](_0x144dee),'deleteChannelConfig':_0x277749=>configController[_0x2a8fe7(0x32c)+_0x2a8fe7(0x278)+_0x2a8fe7(0x16b)+_0x2a8fe7(0x205)](_0x277749),'setSkillEntry':_0x275edc=>configController[_0x2a8fe7(0x3c9)+_0x2a8fe7(0x36b)+'Entry'](_0x275edc),'deleteSkillEntry':_0x35b72a=>configController['deleteOp'+_0x2a8fe7(0x2c0)+_0x2a8fe7(0x322)](_0x35b72a),'setMcpServer':_0x243445=>configController[_0x2a8fe7(0x3c9)+_0x2a8fe7(0x20f)+_0x2a8fe7(0x1e6)](_0x243445),'deleteMcpServer':_0x52179e=>configController[_0x2a8fe7(0x32c)+_0x2a8fe7(0x173)+_0x2a8fe7(0x10f)](_0x52179e)},'resolveRuntimeKdocsCliCommand':resolveRuntimeKdocsCliCommand,'resolveRuntimeLarkCliCommand':resolveRuntimeLarkCliCommand}),_0x2e2fa8('config:i'+'m-channe'+_0x2a8fe7(0xeb),async()=>connectorController[_0x2a8fe7(0x192)+_0x2a8fe7(0x16b)+'figs']()),_0x2e2fa8(_0x2a8fe7(0x169)+_0x2a8fe7(0x372)+_0x2a8fe7(0x126)+'e',async(_0x94a6e0,_0x3b03d4={})=>connectorController[_0x2a8fe7(0x281)+_0x2a8fe7(0x17b)+'onfig'](_0x3b03d4)),_0x2e2fa8(_0x2a8fe7(0x169)+_0x2a8fe7(0x372)+'ls:set-e'+_0x2a8fe7(0x2b7),async(_0x3ad0d6,_0x492ee3={})=>connectorController[_0x2a8fe7(0x313)+_0x2a8fe7(0x24b)+'led'](_0x492ee3)),_0x2e2fa8(_0x2a8fe7(0x29f)+'onnector'+_0x2a8fe7(0xe0),async(_0x3a05e7,_0x353ff3={})=>{const _0x171948=_0x2a8fe7,_0x507519=String(_0x353ff3['channelI'+'d']||_0x353ff3[_0x171948(0x1b0)]?.[_0x171948(0x15b)+'d']||_0x353ff3[_0x171948(0x1b0)]?.['id']||'');if(!_0x507519)throw new Error(_0x171948(0x15b)+_0x171948(0x2ab)+_0x171948(0x2d6));const _0x2fd416=_0x353ff3[_0x171948(0x1b0)]||_0x353ff3,_0x1e35ae={'feishu':connectorController[_0x171948(0x1fe)+'huChanne'+_0x171948(0x208)],'qqbot':connectorController['saveQqbo'+'tChannel'+'Config'],'wecom':connectorController[_0x171948(0xe8)+_0x171948(0x166)+_0x171948(0x11f)],'qq_mail':connectorController[_0x171948(0x318)+_0x171948(0x171)+_0x171948(0x153)+'g'],'netease_mail':connectorController[_0x171948(0x10d)+_0x171948(0x11d)+'onnector'+_0x171948(0x11f)],'tencent_exmail':connectorController[_0x171948(0x3c4)+_0x171948(0x373)+_0x171948(0x20c)+_0x171948(0x19b)],'feishu_doc':connectorController[_0x171948(0x1fe)+_0x171948(0x279)+_0x171948(0x314)+_0x171948(0x381)],'tencent_docs':connectorController['saveTenc'+_0x171948(0x1f8)+_0x171948(0x13d)+'Config'],'kdocs':connectorController[_0x171948(0x22f)+'sConnect'+_0x171948(0x19b)],'dingtalk_doc':connectorController[_0x171948(0x370)+_0x171948(0x1e2)+_0x171948(0x13d)+'Config']},_0x3bcd3e=_0x1e35ae[_0x507519];if(!_0x3bcd3e)throw new Error(_0x171948(0x282)+_0x171948(0x214)+_0x171948(0x293)+_0x507519);return _0x3bcd3e(_0x2fd416);}),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x3b0)+_0x2a8fe7(0x38a)+_0x2a8fe7(0x185),async(_0x18e241,_0xf30c22={})=>connectorController['saveFeis'+_0x2a8fe7(0x283)+_0x2a8fe7(0x208)](_0xf30c22)),_0x2e2fa8('config:c'+_0x2a8fe7(0x13d)+_0x2a8fe7(0x369)+_0x2a8fe7(0x167)+'nel',async(_0xc1f737,_0x53139d={})=>connectorController[_0x2a8fe7(0x1fa)+'tChannel'+_0x2a8fe7(0x11f)](_0x53139d)),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+':save-we'+_0x2a8fe7(0x26b)+'nel',async(_0x42fb9d,_0x3ad633={})=>connectorController[_0x2a8fe7(0xe8)+_0x2a8fe7(0x166)+_0x2a8fe7(0x11f)](_0x3ad633)),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x369)+'-mail',async(_0x1edbc0,_0x573858={})=>connectorController[_0x2a8fe7(0x318)+_0x2a8fe7(0x171)+_0x2a8fe7(0x153)+'g'](_0x573858)),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+':save-ne'+_0x2a8fe7(0x172)+'il',async(_0x58cc05,_0x44e77f={})=>connectorController[_0x2a8fe7(0x10d)+_0x2a8fe7(0x11d)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x11f)](_0x44e77f)),_0x2e2fa8('config:c'+_0x2a8fe7(0x13d)+_0x2a8fe7(0x2fe)+_0x2a8fe7(0x1c4)+_0x2a8fe7(0x366),async(_0xc4e0b7,_0x535162={})=>connectorController['saveTenc'+_0x2a8fe7(0x373)+_0x2a8fe7(0x20c)+'orConfig'](_0x535162)),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x3b0)+_0x2a8fe7(0x1de),async(_0x125aa5,_0x3a5d08={})=>connectorController[_0x2a8fe7(0x1fe)+'huDocCon'+_0x2a8fe7(0x314)+'nfig'](_0x3a5d08)),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x2fe)+'ncent-do'+'cs',async(_0x583cb9,_0x34bdec={})=>connectorController[_0x2a8fe7(0x3c4)+'entDocsC'+_0x2a8fe7(0x13d)+'Config'](_0x34bdec)),_0x2e2fa8('config:c'+_0x2a8fe7(0x13d)+_0x2a8fe7(0x277)+_0x2a8fe7(0x2a5),async(_0x888464,_0x4d9d95={})=>connectorController[_0x2a8fe7(0x22f)+_0x2a8fe7(0x334)+_0x2a8fe7(0x19b)](_0x4d9d95)),_0x2e2fa8('config:c'+_0x2a8fe7(0x13d)+_0x2a8fe7(0x31f)+'ngtalk-d'+'oc',async(_0x399065,_0x52761c={})=>connectorController[_0x2a8fe7(0x370)+_0x2a8fe7(0x1e2)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x11f)](_0x52761c)),_0x2e2fa8(_0x2a8fe7(0x29f)+'onnector'+_0x2a8fe7(0x190)+':start',async(_0x531cc7,_0xb0a6b={})=>{const _0x5f4246=_0x2a8fe7,_0x963132=String(_0xb0a6b[_0x5f4246(0x15b)+'d']||_0xb0a6b['type']||'');if(_0x963132===_0x5f4246(0x161))return connectorController[_0x5f4246(0x325)+_0x5f4246(0x24f)+'nectSess'+_0x5f4246(0x170)]();if(_0x963132===_0x5f4246(0xf8)+'oc')return connectorController[_0x5f4246(0x344)+_0x5f4246(0x398)+_0x5f4246(0x2b6)+_0x5f4246(0x183)]();if(_0x963132==='feishu')return connectorController[_0x5f4246(0x344)+_0x5f4246(0x2dc)+'trationS'+_0x5f4246(0x14c)](_0xb0a6b);if(_0x963132===_0x5f4246(0x188)+_0x5f4246(0x39c)||_0x963132===_0x5f4246(0x101))return connectorController[_0x5f4246(0x3a8)+_0x5f4246(0x24a)+_0x5f4246(0x115)+'n']({'gatewayPort':_0x547138()['gatewayP'+_0x5f4246(0x16d)](),'gatewayToken':_0x547138()[_0x5f4246(0x2b9)+_0x5f4246(0x13a)]()});throw new Error('Unsuppor'+'ted\x20conn'+_0x5f4246(0x23a)+_0x5f4246(0x3d7)+(_0x963132||_0x5f4246(0x363)));}),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x190)+_0x2a8fe7(0x2b4),async(_0x3db4c4,_0x38afd2={})=>{const _0x55c27b=_0x2a8fe7,_0x3c99cb=String(_0x38afd2[_0x55c27b(0x15b)+'d']||_0x38afd2[_0x55c27b(0x18b)]||'');if(_0x3c99cb===_0x55c27b(0x161))return connectorController['getKdocs'+_0x55c27b(0x268)+_0x55c27b(0x1e0)](_0x38afd2);if(_0x3c99cb===_0x55c27b(0xf8)+'oc')return connectorController['getFeish'+'uDocCliC'+_0x55c27b(0x212)+_0x55c27b(0xee)](_0x38afd2);if(_0x3c99cb==='feishu')return connectorController[_0x55c27b(0x1cf)+_0x55c27b(0x346)+_0x55c27b(0x3ae)+_0x55c27b(0x353)](_0x38afd2);throw new Error(_0x55c27b(0x282)+_0x55c27b(0x214)+_0x55c27b(0x23a)+_0x55c27b(0x3d7)+(_0x3c99cb||'unknown'));}),_0x2e2fa8('config:c'+'onnector'+'-session'+':cancel',async(_0x524ba9,_0x22ec5e={})=>{const _0x10ad56=_0x2a8fe7,_0x29d7f3=String(_0x22ec5e[_0x10ad56(0x15b)+'d']||_0x22ec5e[_0x10ad56(0x18b)]||'');if(_0x29d7f3==='kdocs')return connectorController[_0x10ad56(0x160)+_0x10ad56(0x1ba)+_0x10ad56(0x256)+_0x10ad56(0x265)](_0x22ec5e);if(_0x29d7f3==='feishu_d'+'oc')return connectorController[_0x10ad56(0x294)+_0x10ad56(0x1e5)+'liConnec'+'tSession'](_0x22ec5e);if(_0x29d7f3==='feishu')return connectorController[_0x10ad56(0x294)+_0x10ad56(0x2c8)+_0x10ad56(0x24e)+'Session'](_0x22ec5e);if(_0x29d7f3===_0x10ad56(0x188)+'-weixin'||_0x29d7f3===_0x10ad56(0x101))return connectorController['cancelWe'+'chatChan'+_0x10ad56(0x11c)+'on']();return{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x29f)+_0x2a8fe7(0x13d)+_0x2a8fe7(0x190)+_0x2a8fe7(0x2d1)+'e',async(_0x16d327,_0x57fa8f={})=>{const _0x158cf8=_0x2a8fe7,_0x282e76=String(_0x57fa8f[_0x158cf8(0x15b)+'d']||_0x57fa8f['type']||'');if(_0x282e76===_0x158cf8(0xf8)+'oc')return connectorController['complete'+'FeishuDo'+_0x158cf8(0x2a3)+_0x158cf8(0x2cc)+'on'](_0x57fa8f);throw new Error(_0x158cf8(0x282)+_0x158cf8(0x214)+_0x158cf8(0x23a)+'ssion:\x20'+(_0x282e76||'unknown'));}),_0x2e2fa8(_0x2a8fe7(0x345)+_0x2a8fe7(0x2cf),()=>connectorController['readConf'+_0x2a8fe7(0x392)+'ot']());const _0x367a49=_0x144c93=>{const _0x2059b5=_0x2a8fe7,_0x3167da=_0x144c93[_0x2059b5(0x1f6)]&&typeof _0x144c93[_0x2059b5(0x1f6)]===_0x2059b5(0x296)?_0x144c93['agents']:{};return Array[_0x2059b5(0x103)](_0x3167da[_0x2059b5(0x2f3)])?_0x3167da[_0x2059b5(0x2f3)]:[];},_0x5bfe90=_0x5516db=>{const _0x4867f9=_0x2a8fe7,_0x258bf8=typeof _0x5516db===_0x4867f9(0x2e6)?_0x5516db['trim']():'',_0x556d82=_0x258bf8[_0x4867f9(0x2e5)](/^agent:([^:]+):/);return _0x556d82?.[0x1]||'';},_0x707cfb=(_0x3a2a09={},_0xbfea4=[])=>{const _0x41e78b=_0x2a8fe7,_0x130b7e=Array[_0x41e78b(0x103)](_0x3a2a09[_0x41e78b(0x1f6)])?_0x3a2a09['agents']:Array[_0x41e78b(0x103)](_0x3a2a09['list'])?_0x3a2a09[_0x41e78b(0x2f3)]:[],_0x3a5a92=Array[_0x41e78b(0x103)](_0xbfea4)?_0xbfea4:[];return _0x130b7e['map'](_0x132bf2=>{const _0x2110a6=_0x41e78b,_0x43e164=String(_0x132bf2?.['id']||_0x132bf2?.[_0x2110a6(0x3a3)]||'')['trim']();return{'agent':_0x132bf2,'sessions':_0x43e164?_0x3a5a92[_0x2110a6(0x1d8)](_0x41214f=>{const _0x3fef2e=_0x2110a6,_0x8bb1ea=String(_0x41214f?.[_0x3fef2e(0x3a3)]||_0x41214f?.[_0x3fef2e(0xe7)]||_0x41214f?.[_0x3fef2e(0x1ac)]?.['id']||_0x5bfe90(_0x41214f?.[_0x3fef2e(0x223)])||'')[_0x3fef2e(0x108)]();return _0x8bb1ea?_0x8bb1ea===_0x43e164:_0x43e164===_0x3fef2e(0x15a);}):[]};});};_0x2e2fa8('app:upda'+_0x2a8fe7(0x16c)+_0x2a8fe7(0xcd),async()=>updateController?.[_0x2a8fe7(0x27a)]()),_0x2e2fa8(_0x2a8fe7(0x1ad)+'te:check',async()=>updateController?.[_0x2a8fe7(0x199)+_0x2a8fe7(0x2d5)]()),_0x2e2fa8(_0x2a8fe7(0x1ad)+'te:downl'+_0x2a8fe7(0x31c),async()=>updateController?.[_0x2a8fe7(0x1c9)+_0x2a8fe7(0x33d)]()),_0x2e2fa8(_0x2a8fe7(0x1ad)+_0x2a8fe7(0x1b7)+_0x2a8fe7(0x37d)+_0x2a8fe7(0x355),async()=>updateController?.[_0x2a8fe7(0x102)+_0x2a8fe7(0x117)]()),_0x2e2fa8(_0x2a8fe7(0x260)+':choose',async(_0x53b3a5,_0x1adc74={})=>{const _0x21d4d7=_0x2a8fe7,_0xe0d110=await dialog[_0x21d4d7(0x301)+'Dialog'](BrowserWindow['fromWebC'+_0x21d4d7(0x26a)](_0x53b3a5[_0x21d4d7(0x2e9)])??mainWindow,{'properties':['openFile',..._0x1adc74?.['limit']!==0x1?[_0x21d4d7(0x131)+_0x21d4d7(0x249)]:[]],'filters':_0x1adc74?.[_0x21d4d7(0x201)+_0x21d4d7(0x3a9)+'s']?[{'name':_0x21d4d7(0xfe),'extensions':_0x1adc74['customNa'+_0x21d4d7(0x3a9)+'s']}]:undefined});return _0xe0d110[_0x21d4d7(0x2d0)+'s'][_0x21d4d7(0x342)](_0x5c4a1f=>({'path':_0x5c4a1f,'name':_0x5c4a1f[_0x21d4d7(0x113)](/[\\/]/)[_0x21d4d7(0x149)]()||_0x5c4a1f}));}),_0x2e2fa8('app:file'+_0x2a8fe7(0x254)+_0x2a8fe7(0x216),async(_0x4d58ae,_0x1cd78a={})=>{const _0x1a4f9e=_0x2a8fe7,_0x1ac530=String(_0x1cd78a[_0x1a4f9e(0x16a)+'th']||'');if(!_0x1ac530)return{'success':![],'error':_0x1a4f9e(0x16a)+_0x1a4f9e(0x28b)+_0x1a4f9e(0x263)};const _0x20180f=await dialog[_0x1a4f9e(0x387)+_0x1a4f9e(0x1c8)](mainWindow,{'defaultPath':_0x1cd78a[_0x1a4f9e(0x3cb)+_0x1a4f9e(0x139)]||_0x1ac530[_0x1a4f9e(0x113)](/[\\/]/)[_0x1a4f9e(0x149)]()});if(_0x20180f[_0x1a4f9e(0x2fc)]||!_0x20180f['filePath'])return{'success':![],'canceled':!![]};const {copyFile:_0x2c7c04}=await import(_0x1a4f9e(0x12a)+_0x1a4f9e(0xfa));return await _0x2c7c04(_0x1ac530,_0x20180f[_0x1a4f9e(0x2d0)]),{'success':!![],'filePath':_0x20180f[_0x1a4f9e(0x2d0)]};}),_0x2e2fa8('app:clip'+_0x2a8fe7(0x159)+_0x2a8fe7(0x348),async(_0x373102,_0x4f14d9)=>{const _0x47d3e0=_0x2a8fe7;return clipboard[_0x47d3e0(0x305)+'t'](String(_0x4f14d9??'')),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x310)+_0x2a8fe7(0xc9)+'rt',async()=>{const _0x1ee519=_0x2a8fe7;return app['relaunch'](),app[_0x1ee519(0xda)](),{'ok':!![]};}),_0x2e2fa8('window:i'+'s-maximi'+_0x2a8fe7(0x34d),_0x1602bb=>Boolean(BrowserWindow[_0x2a8fe7(0x37f)+_0x2a8fe7(0x26a)](_0x1602bb[_0x2a8fe7(0x2e9)])?.[_0x2a8fe7(0x10c)+_0x2a8fe7(0x34d)]())),_0x2e2fa8(_0x2a8fe7(0x2d9)+_0x2a8fe7(0x144),async(_0x1a265f,_0x2376cc)=>{const _0x4d72bd=_0x2a8fe7;return app[_0x4d72bd(0x2a6)+_0x4d72bd(0x379)+_0x4d72bd(0x350)]({'openAtLogin':_0x2376cc===!![]}),{'ok':!![],'enabled':_0x2376cc===!![]};}),_0x2e2fa8(_0x2a8fe7(0x2d9)+_0x2a8fe7(0x311),async()=>app['getLogin'+_0x2a8fe7(0x379)+'ings']()[_0x2a8fe7(0x30f)+_0x2a8fe7(0x21d)]),_0x2e2fa8('app:file'+_0x2a8fe7(0x12b)+'folder',async _0x2f41aa=>{const _0x38c7a8=_0x2a8fe7,_0x4c0394=await dialog[_0x38c7a8(0x301)+_0x38c7a8(0x1c8)](BrowserWindow[_0x38c7a8(0x37f)+_0x38c7a8(0x26a)](_0x2f41aa[_0x38c7a8(0x2e9)])??mainWindow,{'properties':['openDire'+_0x38c7a8(0x154)]});return _0x4c0394[_0x38c7a8(0x2d0)+'s'][0x0]||'';}),_0x2e2fa8(_0x2a8fe7(0x310)+_0x2a8fe7(0x18e)+_0x2a8fe7(0x275),async(_0x24e00f,_0x2995b6)=>{const _0x599fc8=_0x2a8fe7,_0x448049=await shell[_0x599fc8(0x2a9)](String(_0x2995b6||''));return _0x448049||'';}),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0xd5)+_0x2a8fe7(0xca),async()=>_0x547138()[_0x2a8fe7(0x2b9)+'oken']()),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0xd5)+_0x2a8fe7(0x2c3),async()=>_0x547138()[_0x2a8fe7(0x3ca)+'ort']()),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0x315)+'e',async(_0x595ff5,_0x36e2fa=[])=>{const _0x5912f7=_0x2a8fe7,_0x262ba0=await runClawOnce(shellConfig[_0x5912f7(0x264)+_0x5912f7(0x23b)],Array['isArray'](_0x36e2fa)?_0x36e2fa:[]);return{'ok':_0x262ba0[_0x5912f7(0x21a)]===0x0,..._0x262ba0};}),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x272),async(_0x507979,_0x6b966={})=>_0x547138()[_0x2a8fe7(0x1b2)][_0x2a8fe7(0x3be)]({..._0x6b966,'parentSessionKey':_0x6b966['parentSe'+_0x2a8fe7(0x163)]||_0x6b966[_0x2a8fe7(0x338)+'ey']}));const _0x1bc25d=configController[_0x2a8fe7(0x276)+_0x2a8fe7(0x1ea)]();sessionSqliteStore=ensureSessionSqliteStore();const _0xefe0e8=createAgentSessionsMapStore({'stateDir':_0x1bc25d});_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x2f0)+_0x2a8fe7(0x32f),async(_0x225b69,_0x30995d={})=>_0xefe0e8[_0x2a8fe7(0x1e7)](_0x30995d)),_0x2e2fa8('sessions'+_0x2a8fe7(0x2f0)+_0x2a8fe7(0xdc)+'t',async(_0x7a70a9,_0x4ec1c0={})=>_0xefe0e8[_0x2a8fe7(0x18c)](_0x4ec1c0)),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x2f0)+_0x2a8fe7(0x191),async(_0x3cc41d,_0x3bd89d={})=>{const _0x2e7105=_0x2a8fe7,_0xa4248f=String(_0x3bd89d[_0x2e7105(0x338)+'ey']||'')[_0x2e7105(0x108)]();if(!_0xa4248f)return null;return await sessionSqliteStore[_0x2e7105(0xd1)+_0x2e7105(0x34c)](_0xa4248f);}),_0x2e2fa8('agents:c'+_0x2a8fe7(0x19e),async(_0xbd2686,_0xec6402={})=>{const _0x59612e=_0x2a8fe7,_0x20ff97=await readMutableConfig(),_0x3f02e1=_0x20ff97[_0x59612e(0x1f6)]&&typeof _0x20ff97[_0x59612e(0x1f6)]===_0x59612e(0x296)?_0x20ff97[_0x59612e(0x1f6)]:{},_0x58cee0=_0x367a49(_0x20ff97),_0xd89e2c=String(_0xec6402['id']||_0xec6402[_0x59612e(0x19c)]||'agent-'+Date[_0x59612e(0x20d)]())[_0x59612e(0x108)]()[_0x59612e(0x34f)](/\s+/g,'-'),_0x2b5b8a={'id':_0xd89e2c,'name':String(_0xec6402[_0x59612e(0x19c)]||_0xd89e2c),..._0xec6402[_0x59612e(0xe1)+'e']?{'workspace':String(_0xec6402[_0x59612e(0xe1)+'e'])}:{},..._0xec6402[_0x59612e(0x14f)]?{'model':_0xec6402[_0x59612e(0x14f)]}:{},..._0xec6402['emoji']?{'emoji':_0xec6402[_0x59612e(0x1a2)]}:{},..._0xec6402[_0x59612e(0x38b)]?{'avatar':_0xec6402['avatar']}:{},...Array[_0x59612e(0x103)](_0xec6402[_0x59612e(0x245)])?{'skills':_0xec6402[_0x59612e(0x245)]}:{}};if(_0x58cee0[_0x59612e(0x26d)](_0x2666d9=>_0x2666d9?.['id']===_0xd89e2c))throw new Error('agent\x20al'+_0x59612e(0x1a8)+_0x59612e(0x175));return _0x3f02e1[_0x59612e(0x2f3)]=[..._0x58cee0,_0x2b5b8a],_0x20ff97[_0x59612e(0x1f6)]=_0x3f02e1,await _0x183794(_0x20ff97,_0x59612e(0x14d)+_0x59612e(0x202)),{'ok':!![],'agent':_0x2b5b8a};}),_0x2e2fa8(_0x2a8fe7(0x351)+_0x2a8fe7(0x385),async(_0x442cb5,_0xaba05e={})=>{const _0x11b80d=_0x2a8fe7,_0x20003b=String(_0xaba05e['id']||_0xaba05e[_0x11b80d(0x3a3)]||'')['trim']();if(!_0x20003b)throw new Error(_0x11b80d(0x3c7)+_0x11b80d(0x29b)+_0x11b80d(0x233));const _0x33d08f=await readMutableConfig(),_0x4de776=_0x33d08f[_0x11b80d(0x1f6)]&&typeof _0x33d08f[_0x11b80d(0x1f6)]===_0x11b80d(0x296)?_0x33d08f['agents']:{},_0xd45e6e=_0x367a49(_0x33d08f),_0x5d0771=_0xd45e6e[_0x11b80d(0x342)](_0x529001=>_0x529001?.['id']===_0x20003b?{..._0x529001,..._0xaba05e,'id':_0x20003b}:_0x529001);return _0x4de776['list']=_0x5d0771,_0x33d08f[_0x11b80d(0x1f6)]=_0x4de776,await _0x183794(_0x33d08f,_0x11b80d(0x33a)+_0x11b80d(0x1af)),{'ok':!![],'agent':_0x5d0771[_0x11b80d(0x2a1)](_0xbcfea2=>_0xbcfea2?.['id']===_0x20003b)||null};}),_0x2e2fa8(_0x2a8fe7(0x286)+'elete',async(_0x5affd6,_0x474f6a={})=>{const _0x39428d=_0x2a8fe7,_0x53e617=String(_0x474f6a['id']||_0x474f6a['agentId']||'')['trim']();if(!_0x53e617)throw new Error('agent\x20id'+_0x39428d(0x29b)+'ired');const _0x118dff=await readMutableConfig(),_0x3baac3=_0x118dff['agents']&&typeof _0x118dff[_0x39428d(0x1f6)]==='object'?_0x118dff[_0x39428d(0x1f6)]:{};return _0x3baac3[_0x39428d(0x2f3)]=_0x367a49(_0x118dff)[_0x39428d(0x1d8)](_0x56271b=>_0x56271b?.['id']!==_0x53e617),_0x118dff[_0x39428d(0x1f6)]=_0x3baac3,await _0x183794(_0x118dff,_0x39428d(0x20a)+_0x39428d(0x31a)),{'ok':!![],'agentId':_0x53e617};}),_0x2e2fa8(_0x2a8fe7(0x28f)+'ith-sess'+_0x2a8fe7(0x1c6)+'t',async(_0xf2ef72,_0x3e756d={})=>{const _0x566162=_0x2a8fe7,[_0x1fabd9,_0x518db4]=await Promise[_0x566162(0x355)]([_0x547138()[_0x566162(0x1f6)][_0x566162(0x2f3)](),_0x547138()[_0x566162(0x1b2)][_0x566162(0x2f3)](_0x3e756d)['catch'](()=>({'sessions':[]}))]),_0xa63d04=Array[_0x566162(0x103)](_0x518db4[_0x566162(0x1b2)])?_0x518db4[_0x566162(0x1b2)]:[];return{..._0x1fabd9,'sessions':_0xa63d04,'groups':Array[_0x566162(0x103)](_0x1fabd9[_0x566162(0xd7)])?_0x1fabd9[_0x566162(0xd7)]:_0x707cfb(_0x1fabd9,_0xa63d04)};}),terminalManager=createTerminalManager({'cwd':join(configController[_0x2a8fe7(0x276)+_0x2a8fe7(0x1ea)](),_0x2a8fe7(0xe1)+'e'),'emitData':_0x3b9cc4=>broadcast(_0x2a8fe7(0x35a)+_0x2a8fe7(0x11a),_0x3b9cc4),'emitExit':_0x57c025=>broadcast(_0x2a8fe7(0x35a)+_0x2a8fe7(0xe2),_0x57c025)}),_0x2e2fa8(_0x2a8fe7(0x35a)+':create',async(_0x146242,_0x42cc7e={})=>terminalManager[_0x2a8fe7(0x3be)](_0x42cc7e)),_0x2e2fa8(_0x2a8fe7(0x35a)+':input',async(_0x3c40c5,_0x5d8d11={})=>terminalManager[_0x2a8fe7(0x248)](_0x5d8d11)),_0x2e2fa8(_0x2a8fe7(0x35a)+':resize',async(_0x31aaa7,_0x48462c={})=>terminalManager[_0x2a8fe7(0xfd)](_0x48462c)),_0x2e2fa8('terminal'+_0x2a8fe7(0x12e),async(_0x21f5ff,_0x364aea={})=>terminalManager['close'](_0x364aea)),_0x2e2fa8(_0x2a8fe7(0x1bd)+_0x2a8fe7(0x2f3),async()=>{const _0x378757=_0x2a8fe7,_0x1916c6=gatewayController?.[_0x378757(0x27f)+_0x378757(0x242)]?.()||{};return _0x1916c6[_0x378757(0x230)]||[];}),_0x2e2fa8(_0x2a8fe7(0x1bd)+_0x2a8fe7(0x221)+'ig',async(_0x3e66da,_0x13b38d={})=>{const _0x3c7453=_0x2a8fe7,_0xa4efcf=String(_0x13b38d[_0x3c7453(0x2e2)]||_0x13b38d['id']||''),_0x515a8b=await readMutableConfig(),_0x28ce44=_0x515a8b['plugins']?.['entries']||{};return _0xa4efcf?_0x28ce44[_0xa4efcf]||null:_0x28ce44;}),_0x2e2fa8('plugins:'+_0x2a8fe7(0x1bf)+_0x2a8fe7(0x389),async(_0x4873f1,_0x3b2238={})=>{const _0x46e8cc=_0x2a8fe7,_0x15b46e=String(_0x3b2238[_0x46e8cc(0x2e2)]||_0x3b2238['id']||'');if(!_0x15b46e)throw new Error(_0x46e8cc(0x2e2)+_0x46e8cc(0x29b)+'ired');const _0x5bd661=await readMutableConfig(),_0x2ac370=_0x5bd661[_0x46e8cc(0x230)]&&typeof _0x5bd661[_0x46e8cc(0x230)]===_0x46e8cc(0x296)?_0x5bd661[_0x46e8cc(0x230)]:{},_0x5582fe=_0x2ac370[_0x46e8cc(0xd2)]&&typeof _0x2ac370[_0x46e8cc(0xd2)]===_0x46e8cc(0x296)?_0x2ac370[_0x46e8cc(0xd2)]:{};return _0x5582fe[_0x15b46e]={..._0x5582fe[_0x15b46e]||{},..._0x3b2238[_0x46e8cc(0xd4)]||_0x3b2238[_0x46e8cc(0x340)]||{}},_0x2ac370[_0x46e8cc(0xd2)]=_0x5582fe,_0x5bd661[_0x46e8cc(0x230)]=_0x2ac370,_0x183794(_0x5bd661,_0x46e8cc(0x146)+_0x46e8cc(0x182)+_0x46e8cc(0x1af));}),_0x2e2fa8(_0x2a8fe7(0x1bd)+_0x2a8fe7(0x299),async(_0x395c80,_0x54292a={})=>{const _0xa807ec=_0x2a8fe7,_0x1dd5ab=String(_0x54292a[_0xa807ec(0x2e2)]||_0x54292a['id']||'');if(!_0x1dd5ab)throw new Error(_0xa807ec(0x2e2)+_0xa807ec(0x29b)+'ired');const _0x16530d=await readMutableConfig(),_0xf785b6=_0x16530d[_0xa807ec(0x230)]&&typeof _0x16530d[_0xa807ec(0x230)]==='object'?_0x16530d[_0xa807ec(0x230)]:{},_0xf58ec=_0xf785b6[_0xa807ec(0xd2)]&&typeof _0xf785b6['entries']===_0xa807ec(0x296)?_0xf785b6[_0xa807ec(0xd2)]:{};return _0xf58ec[_0x1dd5ab]={..._0xf58ec[_0x1dd5ab]||{},'enabled':!![]},_0xf785b6[_0xa807ec(0xd2)]=_0xf58ec,_0x16530d[_0xa807ec(0x230)]=_0xf785b6,_0x183794(_0x16530d,'plugin\x20e'+_0xa807ec(0x2b7));}),_0x2e2fa8(_0x2a8fe7(0x1bd)+_0x2a8fe7(0x292),async(_0x1ddc1b,_0x31e324={})=>{const _0x396f0c=_0x2a8fe7,_0x579545=String(_0x31e324[_0x396f0c(0x2e2)]||_0x31e324['id']||'');if(!_0x579545)throw new Error('pluginId'+'\x20is\x20requ'+_0x396f0c(0x233));const _0x1950be=await readMutableConfig(),_0x1bff15=_0x1950be['plugins']&&typeof _0x1950be[_0x396f0c(0x230)]===_0x396f0c(0x296)?_0x1950be[_0x396f0c(0x230)]:{},_0x1a3590=_0x1bff15[_0x396f0c(0xd2)]&&typeof _0x1bff15[_0x396f0c(0xd2)]===_0x396f0c(0x296)?_0x1bff15['entries']:{};return _0x1a3590[_0x579545]={..._0x1a3590[_0x579545]||{},'enabled':![]},_0x1bff15['entries']=_0x1a3590,_0x1950be['plugins']=_0x1bff15,_0x183794(_0x1950be,_0x396f0c(0x304)+_0x396f0c(0x255));}),_0x2e2fa8('plugins:'+_0x2a8fe7(0x3c5),async(_0xb5e4aa,_0x52552e={})=>({'plugins':await((async()=>{const _0x5df257=_0x2a8fe7,_0x3a8558=gatewayController?.[_0x5df257(0x27f)+'nfo']?.()||{};if(!_0x52552e?.['pluginId']&&!_0x52552e?.['id'])return _0x3a8558[_0x5df257(0x230)]||[];const _0x4261c9=String(_0x52552e[_0x5df257(0x2e2)]||_0x52552e['id']||'');return(_0x3a8558['plugins']||[])[_0x5df257(0x1d8)](_0x5c7f30=>_0x5c7f30[_0x5df257(0x2e2)]===_0x4261c9);})())})),_0x2e2fa8('tabs:nav'+'igate',async(_0x464189,_0x38e01d)=>({'ok':!![],'payload':_0x38e01d})),_0x2e2fa8(_0x2a8fe7(0x189)+_0x2a8fe7(0x2fb)+'e',async(_0x108b07,_0x16c20b)=>{const _0x55367e=_0x2a8fe7;return broadcast(_0x55367e(0x331)+'mand',_0x16c20b),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x383)+_0x2a8fe7(0x32e)+_0x2a8fe7(0x3c0),async()=>{const _0x152c23=_0x2a8fe7;return broadcast(_0x152c23(0x16e)+_0x152c23(0x3c0)+_0x152c23(0x137),{}),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x197)+'resh-age'+'nt-state',async(_0x35b280,_0x160da0={})=>{const _0x216c3d=_0x2a8fe7;return broadcast(_0x216c3d(0x16e)+_0x216c3d(0x3c0)+'-refresh'+_0x216c3d(0x137),_0x160da0),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x384)+_0x2a8fe7(0x120),_0x1b6dd9=>{const _0x41a97c=_0x2a8fe7;return BrowserWindow[_0x41a97c(0x37f)+_0x41a97c(0x26a)](_0x1b6dd9[_0x41a97c(0x2e9)])?.['minimize'](),{'ok':!![]};}),_0x2e2fa8('window:t'+'oggle-ma'+_0x2a8fe7(0xec),_0x43b7b7=>{const _0x58aeb5=_0x2a8fe7,_0x15d2d2=BrowserWindow[_0x58aeb5(0x37f)+_0x58aeb5(0x26a)](_0x43b7b7[_0x58aeb5(0x2e9)]);if(!_0x15d2d2)return{'isMaximized':![]};if(_0x15d2d2[_0x58aeb5(0x10c)+_0x58aeb5(0x34d)]())_0x15d2d2[_0x58aeb5(0x30d)+'ze']();else _0x15d2d2[_0x58aeb5(0x1dd)]();return{'isMaximized':_0x15d2d2[_0x58aeb5(0x10c)+_0x58aeb5(0x34d)]()};}),_0x2e2fa8(_0x2a8fe7(0x1f0)+_0x2a8fe7(0xce),_0x49713a=>{const _0x52e2c3=_0x2a8fe7;return BrowserWindow['fromWebC'+_0x52e2c3(0x26a)](_0x49713a[_0x52e2c3(0x2e9)])?.[_0x52e2c3(0x252)](),{'ok':!![]};}),_0x2e2fa8('window:o'+'pen-devt'+'ools',()=>openDevToolsForActiveContext()),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0xde)+_0x2a8fe7(0x269),()=>_0x547138()[_0x2a8fe7(0x27f)+_0x2a8fe7(0x242)]()),_0x2e2fa8(_0x2a8fe7(0x188)+':gateway'+_0x2a8fe7(0xd8),async()=>(await ensureGatewayControllerStarted())[_0x2a8fe7(0xe3)+'s']()),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0xd5)+_0x2a8fe7(0x150),()=>_0x547138()[_0x2a8fe7(0x156)](_0x2a8fe7(0x326)+_0x2a8fe7(0x274))),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0x2c9)+_0x2a8fe7(0x226)+_0x2a8fe7(0x1cc),async()=>({'loadingLifeCycle':_0x2a8fe7(0x359),'message':'','updatedAt':new Date()[_0x2a8fe7(0x361)+_0x2a8fe7(0x30c)]()})),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0xd5)+'-logs',(_0x58f5c2,_0x45d574={})=>_0x547138()[_0x2a8fe7(0x1a7)+_0x2a8fe7(0x395)](_0x45d574?.[_0x2a8fe7(0x2be)]??0xc8)),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0x112)+_0x2a8fe7(0x13b)+_0x2a8fe7(0x34e)+'n',(_0x3fb397,_0x5a4305)=>_0x547138()[_0x2a8fe7(0x27d)+_0x2a8fe7(0x337)+_0x2a8fe7(0x1dc)](_0x5a4305)),_0x2e2fa8(_0x2a8fe7(0x188)+_0x2a8fe7(0x287)+_0x2a8fe7(0x140),async()=>{const _0x36eeae=_0x2a8fe7,_0x885947=join(resolveRuntimeRoot(shellConfig[_0x36eeae(0x264)+'oot']),'bin',_0x36eeae(0x2aa)+'w');if(!existsSync(_0x885947))throw new Error(_0x36eeae(0x188)+_0x36eeae(0x222)+'pper\x20not'+_0x36eeae(0x2ed)+_0x885947+(_0x36eeae(0x2ba)+_0x36eeae(0x2ff)+_0x36eeae(0x306)+_0x36eeae(0xdf)));const _0x48158c=join(app[_0x36eeae(0x1e3)](_0x36eeae(0x1d5)),_0x36eeae(0x35d)+_0x36eeae(0x339)+_0x36eeae(0x1a5));await writeFile(_0x48158c,'#!/bin/s'+_0x36eeae(0x23d)+_0x885947['replace'](/\\/g,'\x5c\x5c')[_0x36eeae(0x34f)](/"/g,'\x5c\x22')+'\x22\x0a',{'mode':0x1ed});const _0x5b1dc0=spawn(_0x36eeae(0x217),['-a',_0x36eeae(0x3ac),_0x48158c],{'detached':!![],'stdio':_0x36eeae(0x219)});return _0x5b1dc0[_0x36eeae(0x1d6)](),{'ok':!![],'cliPath':_0x885947};}),_0x2e2fa8(_0x2a8fe7(0x2ee)+_0x2a8fe7(0x2c5),()=>_0x547138()['agents'][_0x2a8fe7(0x2f3)]()),_0x2e2fa8(_0x2a8fe7(0x2d4)+'tatus',(_0x4e4204,_0x5c10a0)=>_0x547138()[_0x2a8fe7(0x245)][_0x2a8fe7(0x3c5)](_0x5c10a0)),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x3ad),(_0x3e8752,_0x4959fe)=>_0x547138()['sessions'][_0x2a8fe7(0x3be)](_0x4959fe)),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x30a),(_0x5cb60c,_0x3568fe)=>_0x547138()[_0x2a8fe7(0x1b2)][_0x2a8fe7(0x2f3)](_0x3568fe)),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x10e),(_0x535451,_0xa30c31)=>_0x547138()[_0x2a8fe7(0x1b2)]['delete'](_0xa30c31)),_0x2e2fa8(_0x2a8fe7(0x3c3)+_0x2a8fe7(0x2bf),(_0x9d8876,_0x290e9d)=>_0x547138()[_0x2a8fe7(0x148)][_0x2a8fe7(0x1d9)](_0x290e9d)),_0x2e2fa8(_0x2a8fe7(0x1be)+'rt',(_0x392088,_0x13b99a)=>_0x547138()[_0x2a8fe7(0x148)][_0x2a8fe7(0x3a0)](_0x13b99a)),_0x2e2fa8('chat:his'+_0x2a8fe7(0x22c),(_0x2700f8,_0x1dc63a)=>_0x547138()[_0x2a8fe7(0x148)][_0x2a8fe7(0x30b)](_0x1dc63a)),_0x2e2fa8(_0x2a8fe7(0x1e1)+'te',async(_0x361893,_0x58de7b={})=>{const _0x35bf48=_0x2a8fe7,_0x531a7c=typeof _0x58de7b[_0x35bf48(0xcc)]===_0x35bf48(0x2e6)?_0x58de7b[_0x35bf48(0xcc)]:_0x35bf48(0x10a),_0x395270=typeof _0x58de7b['message']===_0x35bf48(0x2e6)?_0x58de7b[_0x35bf48(0xf4)]:_0x35bf48(0x326)+_0x35bf48(0x22b),_0x212ea9=typeof _0x58de7b[_0x35bf48(0xe5)]===_0x35bf48(0x2e6)&&_0x58de7b['context'][_0x35bf48(0x108)]()?_0x35bf48(0x326)+':'+_0x58de7b[_0x35bf48(0xe5)]['trim']():_0x35bf48(0x326),_0x405f68=_0x58de7b[_0x35bf48(0x1e8)]&&typeof _0x58de7b['meta']===_0x35bf48(0x296)?{...summarizePayload(_0x58de7b[_0x35bf48(0x1e8)]),'context':_0x212ea9}:{'context':_0x212ea9},_0x3e5ebe=rendererLogger;if(_0x3e5ebe?.[_0x531a7c])await _0x3e5ebe[_0x531a7c](_0x395270,_0x405f68);else await _0x3e5ebe?.[_0x35bf48(0x10a)](_0x395270,_0x405f68);if(_0x58de7b['diagnost'+'ic']===!![]||_0x212ea9===_0x35bf48(0x326)+_0x35bf48(0x27e)+_0x35bf48(0x193)){const _0x2cc0cc=_0x58de7b['record']&&typeof _0x58de7b[_0x35bf48(0x347)]==='object'?_0x58de7b[_0x35bf48(0x347)]:_0x58de7b[_0x35bf48(0x1e8)]?.[_0x35bf48(0x347)]&&typeof _0x58de7b['meta'][_0x35bf48(0x347)]===_0x35bf48(0x296)?_0x58de7b[_0x35bf48(0x1e8)][_0x35bf48(0x347)]:{'level':_0x531a7c,'category':_0x35bf48(0x326),'event':_0x212ea9,'message':_0x395270,'meta':_0x58de7b[_0x35bf48(0x1e8)]};await diagnosticsWriter?.[_0x35bf48(0x2d2)+'nt'](_0x2cc0cc,{'captureIncident':String(_0x2cc0cc[_0x35bf48(0xcc)]||_0x531a7c)[_0x35bf48(0x107)+'ase']()===_0x35bf48(0x2bd)||_0x58de7b['captureI'+_0x35bf48(0x2e7)]===!![]});}return{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x3ab)+_0x2a8fe7(0x16d),async(_0x4a6dd2,_0x254e0e={})=>{const _0x263072=_0x2a8fe7,_0x4b8571=typeof _0x254e0e[_0x263072(0x382)+'r']==='string'&&_0x254e0e['targetDi'+'r'][_0x263072(0x108)]()?_0x254e0e['targetDi'+'r']:undefined,_0x194536=await exportLogsArchive({'logsDir':configController['paths'][_0x263072(0x176)],'targetDir':_0x4b8571,'appVersion':app['getVersi'+'on']()});return mainLogger?.[_0x263072(0x10a)]('logs\x20exp'+'orted',{'path':toHomePath(_0x194536[_0x263072(0x35b)])}),_0x194536;}),_0x2e2fa8('logs:ope'+'n-direct'+_0x2a8fe7(0x145),async()=>{const _0x83eff2=_0x2a8fe7;return await shell[_0x83eff2(0x2a9)](configController['paths']['logsDir']),mainLogger?.['info'](_0x83eff2(0x289)+_0x83eff2(0x143)+_0x83eff2(0x2c7),{'logsDir':toHomePath(configController[_0x83eff2(0x194)][_0x83eff2(0x176)])}),{'ok':!![],'path':configController[_0x83eff2(0x194)][_0x83eff2(0x176)]};}),_0x2e2fa8('logs:lis'+'t',async()=>{const _0xa9e439=_0x2a8fe7,_0x1c3e75=await readdir(configController['paths'][_0xa9e439(0x176)],{'recursive':!![]})[_0xa9e439(0x21e)](()=>[]);return _0x1c3e75;}),_0x2e2fa8('logs:rea'+'d',async(_0x5951a7,_0x2e7107={})=>{const _0x2e9723=_0x2a8fe7,_0x3a3e50=String(_0x2e7107[_0x2e9723(0x35b)]||'');if(!_0x3a3e50)throw new Error(_0x2e9723(0xf0)+_0x2e9723(0x27b));return readFile(_0x3a3e50,_0x2e9723(0x1db));}),_0x2e2fa8(_0x2a8fe7(0x28c)+'ad',async(_0x5d2c80,_0xb55d31)=>{const _0xbc4225=_0x2a8fe7,_0x441e1c=Date[_0xbc4225(0x20d)]();try{const _0x54e9a5=await readFile(_0xb55d31,_0xbc4225(0x1db));return filesLogger?.[_0xbc4225(0x10a)]('file\x20rea'+_0xbc4225(0x1f1)+_0xbc4225(0x3b5),{'path':toHomePath(_0xb55d31),'bytes':Buffer['byteLeng'+'th'](_0x54e9a5),'durationMs':Date[_0xbc4225(0x20d)]()-_0x441e1c}),_0x54e9a5;}catch(_0x3ee6b0){filesLogger?.['error'](_0xbc4225(0x111)+_0xbc4225(0x1cb),{'path':toHomePath(_0xb55d31),'durationMs':Date[_0xbc4225(0x20d)]()-_0x441e1c,'error':summarizeError(_0x3ee6b0)});throw _0x3ee6b0;}}),_0x2e2fa8(_0x2a8fe7(0x28c)+_0x2a8fe7(0x16f)+'y',async(_0x551317,_0x55b71b)=>{const _0x5b3e5b=_0x2a8fe7,_0x5b537e=Date['now']();try{const _0x2a42b2=await readFile(_0x55b71b);return filesLogger?.['info'](_0x5b3e5b(0x3c1)+_0x5b3e5b(0xef)+_0x5b3e5b(0x2bc)+'ed',{'path':toHomePath(_0x55b71b),'bytes':_0x2a42b2[_0x5b3e5b(0x32b)+'th'],'durationMs':Date[_0x5b3e5b(0x20d)]()-_0x5b537e}),new Uint8Array(_0x2a42b2);}catch(_0x5cb1e5){filesLogger?.[_0x5b3e5b(0x2bd)]('binary\x20f'+_0x5b3e5b(0xef)+_0x5b3e5b(0x213),{'path':toHomePath(_0x55b71b),'durationMs':Date[_0x5b3e5b(0x20d)]()-_0x5b537e,'error':summarizeError(_0x5cb1e5)});throw _0x5cb1e5;}}),_0x2e2fa8(_0x2a8fe7(0x2ca)+'ite',async(_0x1608ec,_0x281ee4={})=>{const _0x1bd7ea=_0x2a8fe7,_0x50140c=Date['now']();return await writeFile(_0x281ee4[_0x1bd7ea(0x35b)],_0x281ee4[_0x1bd7ea(0x231)]??'','utf8'),filesLogger?.[_0x1bd7ea(0x10a)](_0x1bd7ea(0x250)+'te\x20compl'+_0x1bd7ea(0x397),{'path':toHomePath(_0x281ee4[_0x1bd7ea(0x35b)]),'bytes':Buffer['byteLeng'+'th'](String(_0x281ee4['content']??'')),'durationMs':Date[_0x1bd7ea(0x20d)]()-_0x50140c}),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x2ca)+_0x2a8fe7(0x3a1)+'ry',async(_0x2dd4bb,_0x4cca73={})=>{const _0x50a519=_0x2a8fe7,_0x1c7d6c=Date[_0x50a519(0x20d)]();await writeFile(_0x4cca73[_0x50a519(0x35b)],Buffer['from'](_0x4cca73[_0x50a519(0x231)]??[]));const _0xd7fe=await stat(_0x4cca73['path'])[_0x50a519(0x21e)](()=>null);return filesLogger?.[_0x50a519(0x10a)]('binary\x20f'+_0x50a519(0x271)+_0x50a519(0x1c1)+'ted',{'path':toHomePath(_0x4cca73[_0x50a519(0x35b)]),'bytes':_0xd7fe?.[_0x50a519(0x358)]??0x0,'durationMs':Date[_0x50a519(0x20d)]()-_0x1c7d6c}),{'ok':!![]};}),_0x2e2fa8(_0x2a8fe7(0x1c2)+'lect-fil'+'e',async(_0x2f3d6c,_0x580158={})=>{const _0x371cc8=_0x2a8fe7,_0x446e8d=await dialog[_0x371cc8(0x301)+'Dialog'](BrowserWindow['fromWebC'+_0x371cc8(0x26a)](_0x2f3d6c['sender'])??mainWindow,{'title':typeof _0x580158[_0x371cc8(0x21b)]===_0x371cc8(0x2e6)?_0x580158[_0x371cc8(0x21b)]:undefined,'properties':['openFile',..._0x580158[_0x371cc8(0x131)+_0x371cc8(0x249)]?[_0x371cc8(0x131)+_0x371cc8(0x249)]:[]],'filters':Array[_0x371cc8(0x103)](_0x580158[_0x371cc8(0xff)])?_0x580158[_0x371cc8(0xff)]:undefined});return filesLogger?.[_0x371cc8(0x10a)](_0x371cc8(0x122)+_0x371cc8(0x399)+_0x371cc8(0x31a),{'canceled':_0x446e8d['canceled'],'count':_0x446e8d['filePath'+'s'][_0x371cc8(0x135)],'paths':_0x446e8d[_0x371cc8(0x2d0)+'s'][_0x371cc8(0x342)](toHomePath)}),{'canceled':_0x446e8d[_0x371cc8(0x2fc)],'paths':_0x446e8d[_0x371cc8(0x2d0)+'s']};}),_0x2e2fa8(_0x2a8fe7(0x10b)+_0x2a8fe7(0x364)+_0x2a8fe7(0x22c),async(_0x5ce81e,_0x5042cc={})=>{const _0x2d0fab=_0x2a8fe7,_0x195149=resolve(String(_0x5042cc[_0x2d0fab(0x35b)]||'')),_0x240f00=_0x5042cc[_0x2d0fab(0x357)+'e']!==![],_0x5105c3=Array[_0x2d0fab(0x103)](_0x5042cc['extensio'+'ns'])?_0x5042cc[_0x2d0fab(0x3bb)+'ns'][_0x2d0fab(0x342)](_0x2050c6=>String(_0x2050c6)[_0x2d0fab(0x107)+'ase']()[_0x2d0fab(0x34f)](/^\./,''))[_0x2d0fab(0x1d8)](Boolean):null,_0x43ae0e=Number[_0x2d0fab(0x39f)+'r'](_0x5042cc[_0x2d0fab(0x1b4)+'es'])&&_0x5042cc[_0x2d0fab(0x1b4)+'es']>0x0?_0x5042cc[_0x2d0fab(0x1b4)+'es']:0xc350,_0x5296b5=[];let _0x4d5f26=![];async function _0x47e9e5(_0x463f02){const _0x29ed23=_0x2d0fab;if(_0x4d5f26)return;let _0x39731e;try{_0x39731e=await readdir(_0x463f02,{'withFileTypes':!![]});}catch{return;}for(const _0x2e03e8 of _0x39731e){if(_0x4d5f26)return;if(_0x2e03e8[_0x29ed23(0x19c)][_0x29ed23(0x28d)+'th']('.'))continue;const _0x3a9bfd=join(_0x463f02,_0x2e03e8[_0x29ed23(0x19c)]);if(_0x2e03e8[_0x29ed23(0x1eb)+_0x29ed23(0x145)]()){if(_0x240f00)await _0x47e9e5(_0x3a9bfd);continue;}if(!_0x2e03e8['isFile']())continue;if(_0x5105c3){const _0xdedb8b=_0x2e03e8[_0x29ed23(0x19c)][_0x29ed23(0x2ad)+'xOf']('.'),_0x218e50=_0xdedb8b>=0x0?_0x2e03e8[_0x29ed23(0x19c)][_0x29ed23(0x198)](_0xdedb8b+0x1)[_0x29ed23(0x107)+_0x29ed23(0x174)]():'';if(!_0x5105c3[_0x29ed23(0x3c6)](_0x218e50))continue;}if(_0x5296b5['length']>=_0x43ae0e){_0x4d5f26=!![];return;}_0x5296b5[_0x29ed23(0x22a)]({'name':_0x2e03e8[_0x29ed23(0x19c)],'path':_0x3a9bfd});}}return await _0x47e9e5(_0x195149),{'path':_0x195149,'entries':_0x5296b5,'truncated':_0x4d5f26};}),_0x2e2fa8(_0x2a8fe7(0x1c2)+'lect-dir'+_0x2a8fe7(0x31d),async(_0x2dcc6f,_0x5d36c5={})=>{const _0x4258a1=_0x2a8fe7,_0x27fa7e=await dialog[_0x4258a1(0x301)+'Dialog'](BrowserWindow['fromWebC'+_0x4258a1(0x26a)](_0x2dcc6f[_0x4258a1(0x2e9)])??mainWindow,{'title':typeof _0x5d36c5[_0x4258a1(0x21b)]===_0x4258a1(0x2e6)?_0x5d36c5[_0x4258a1(0x21b)]:undefined,'properties':[_0x4258a1(0x244)+'ctory']});return filesLogger?.[_0x4258a1(0x10a)](_0x4258a1(0x1bc)+_0x4258a1(0x1a6)+_0x4258a1(0x2bc)+'ed',{'canceled':_0x27fa7e[_0x4258a1(0x2fc)],'count':_0x27fa7e[_0x4258a1(0x2d0)+'s'][_0x4258a1(0x135)],'paths':_0x27fa7e[_0x4258a1(0x2d0)+'s'][_0x4258a1(0x342)](toHomePath)}),{'canceled':_0x27fa7e['canceled'],'paths':_0x27fa7e['filePath'+'s']};}),_0x2e2fa8(_0x2a8fe7(0xe1)+_0x2a8fe7(0x2eb)+_0x2a8fe7(0x209),()=>_0x547138()[_0x2a8fe7(0xe1)+'e'][_0x2a8fe7(0x327)+'yInfo']()),_0x2e2fa8(_0x2a8fe7(0xe1)+'e:open-d'+'irectory',async()=>{const _0xca1868=_0x2a8fe7,_0x1e0d04=await _0x547138()[_0xca1868(0xe1)+'e'][_0xca1868(0x327)+_0xca1868(0xd6)]();return await shell['openPath'](_0x1e0d04['path']),filesLogger?.[_0xca1868(0x10a)](_0xca1868(0xe1)+_0xca1868(0x1f4)+'ory\x20open'+'ed',{'path':toHomePath(_0x1e0d04['path'])}),{'ok':!![],'path':_0x1e0d04[_0xca1868(0x35b)]};}),_0x2e2fa8(_0x2a8fe7(0xe1)+_0x2a8fe7(0x2e1)+'-context',()=>_0x547138()[_0x2a8fe7(0xe1)+'e'][_0x2a8fe7(0x2f2)+_0x2a8fe7(0x2fa)]()),_0x2e2fa8(_0x2a8fe7(0xe1)+'e:write-'+'shared-c'+_0x2a8fe7(0x215),(_0x356075,_0x2e7cb0)=>_0x547138()['workspac'+'e'][_0x2a8fe7(0x241)+_0x2a8fe7(0x36d)+'xt'](_0x2e7cb0)),_0x2e2fa8('sessions'+_0x2a8fe7(0x28e),(_0x50ba82,_0xd837d0)=>_0x547138()[_0x2a8fe7(0x1b2)]['rename'](_0xd837d0)),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x258),async(_0x3b74a5,_0xdd99a3={})=>{const _0x382802=_0x2a8fe7,_0x4c6715=String(_0xdd99a3[_0x382802(0x338)+'ey']||_0xdd99a3[_0x382802(0x223)]||'')[_0x382802(0x108)]();if(!_0x4c6715)throw new Error('sessionK'+_0x382802(0x2ce)+'quired');const _0x5c1fe6=await ensureSessionSqliteStore()[_0x382802(0x236)+_0x382802(0x25c)+_0x382802(0x3b1)](),_0x2fadb1=await _0x547138()['sessions'][_0x382802(0xfc)+'inned']([_0x4c6715,..._0x5c1fe6[_0x382802(0x1d8)](_0x2ecf73=>_0x2ecf73!==_0x4c6715)]);return _0x2fadb1;}),_0x2e2fa8(_0x2a8fe7(0x1b2)+':unpin',async(_0x49ffd6,_0x538c78={})=>{const _0x52703a=_0x2a8fe7,_0x3a0214=String(_0x538c78[_0x52703a(0x338)+'ey']||_0x538c78['key']||'')[_0x52703a(0x108)]();if(!_0x3a0214)throw new Error('sessionK'+_0x52703a(0x2ce)+_0x52703a(0x263));const _0x5e3cf6=await ensureSessionSqliteStore()[_0x52703a(0x236)+_0x52703a(0x25c)+_0x52703a(0x3b1)]();return await _0x547138()[_0x52703a(0x1b2)][_0x52703a(0xfc)+_0x52703a(0x142)](_0x5e3cf6[_0x52703a(0x1d8)](_0x3b1c12=>_0x3b1c12!==_0x3a0214));}),_0x2e2fa8(_0x2a8fe7(0x1b2)+_0x2a8fe7(0x1ee)+_0x2a8fe7(0xe4),async(_0x21b1e6,_0x176efb={})=>{const _0xeed363=_0x2a8fe7,_0x114253=Array[_0xeed363(0x103)](_0x176efb[_0xeed363(0x220)])?_0x176efb[_0xeed363(0x220)]:_0x176efb;return await _0x547138()[_0xeed363(0x1b2)][_0xeed363(0xfc)+_0xeed363(0x142)](_0x114253);}),_0x2e2fa8(_0x2a8fe7(0x11b)+_0x2a8fe7(0x117),(_0x37b3b5,_0x4d8786)=>_0x547138()[_0x2a8fe7(0x245)][_0x2a8fe7(0x284)](_0x4d8786)),_0x2e2fa8('cron:lis'+'t',(_0x3b6f9d,_0x3a47b5)=>_0x547138()[_0x2a8fe7(0x1da)][_0x2a8fe7(0x2f3)](_0x3a47b5)),_0x2e2fa8(_0x2a8fe7(0x17d)+_0x2a8fe7(0x15d),(_0x29aab7,_0x565be2)=>_0x547138()[_0x2a8fe7(0x1da)]['create'](_0x565be2)),_0x2e2fa8(_0x2a8fe7(0x1b5)+'ate',(_0x453c5d,_0x428490)=>_0x547138()['cron'][_0x2a8fe7(0x298)](_0x428490)),_0x2e2fa8(_0x2a8fe7(0x1fb)+_0x2a8fe7(0x2a7),(_0x360f9e,_0x48bb37)=>_0x547138()[_0x2a8fe7(0x1da)][_0x2a8fe7(0x1f5)](_0x48bb37)),_0x2e2fa8(_0x2a8fe7(0x37e)+'-once',(_0x2841ea,_0x2cc5d2)=>_0x547138()[_0x2a8fe7(0x1da)]['runOnce'](_0x2cc5d2)),_0x2e2fa8(_0x2a8fe7(0x1ce)+'s',(_0x66adfe,_0x17794a)=>_0x547138()[_0x2a8fe7(0x1da)][_0x2a8fe7(0x3d6)](_0x17794a)),_0x2e2fa8('models:c'+_0x2a8fe7(0x333),async(_0x5d5a78,_0x4536a8={})=>{const _0x911cce=_0x2a8fe7,_0x44646d=configController['resolveC'+_0x911cce(0x3a6)+'h'](),_0x76a27c=JSON['parse'](await readFile(_0x44646d,_0x911cce(0x1db))),_0x542c46=_0x76a27c?.['models']?.[_0x911cce(0x196)+'s']&&typeof _0x76a27c[_0x911cce(0x2d8)]['provider'+'s']===_0x911cce(0x296)?_0x76a27c[_0x911cce(0x2d8)][_0x911cce(0x196)+'s']:{},_0x506618=typeof _0x76a27c?.['agents']?.[_0x911cce(0x110)]?.[_0x911cce(0x14f)]?.[_0x911cce(0x1fc)]===_0x911cce(0x2e6)?_0x76a27c[_0x911cce(0x1f6)]['defaults']['model'][_0x911cce(0x1fc)]:'',_0x20dec1=String(_0x4536a8[_0x911cce(0x14f)]||_0x506618||'');if(!_0x20dec1[_0x911cce(0x3c6)]('/'))throw new Error(_0x911cce(0x37a)+_0x911cce(0x133)+_0x911cce(0x164)+_0x911cce(0x157)+_0x911cce(0x18a)+_0x911cce(0x3dc)+_0x911cce(0x184));const _0x37c13a=_0x20dec1[_0x911cce(0x396)]('/'),_0x468a51=_0x20dec1[_0x911cce(0x198)](0x0,_0x37c13a),_0x24a3ac=_0x20dec1['slice'](_0x37c13a+0x1),_0x395ae0=_0x542c46[_0x468a51];if(!_0x395ae0||typeof _0x395ae0!==_0x911cce(0x296))throw new Error(_0x911cce(0x196)+'\x20not\x20con'+_0x911cce(0x235)+'\x20'+_0x468a51);const _0x294b1c=String(_0x395ae0[_0x911cce(0x2de)]||_0x911cce(0x3ce)+_0x911cce(0x240)+_0x911cce(0x36e)+'1')['trim']()[_0x911cce(0x34f)](/\/$/,''),_0x16dee2=await fetch(_0x294b1c+(_0x911cce(0x17f)+_0x911cce(0x2db)+'s'),{'method':'POST','headers':{'content-type':_0x911cce(0x335)+_0x911cce(0x19a),'Authorization':'Bearer\x20'+(_0x395ae0[_0x911cce(0x119)]||''),..._0x395ae0[_0x911cce(0xe9)]&&typeof _0x395ae0[_0x911cce(0xe9)]===_0x911cce(0x296)?_0x395ae0[_0x911cce(0xe9)]:{}},'body':JSON['stringif'+'y']({'model':_0x24a3ac,'max_tokens':Number[_0x911cce(0x39f)+'r'](_0x4536a8['maxToken'+'s'])?_0x4536a8[_0x911cce(0x376)+'s']:0x400,'temperature':typeof _0x4536a8[_0x911cce(0x2c4)+_0x911cce(0x285)]===_0x911cce(0x367)?_0x4536a8[_0x911cce(0x2c4)+'ure']:undefined,'messages':Array[_0x911cce(0x103)](_0x4536a8[_0x911cce(0x1bb)])?_0x4536a8[_0x911cce(0x1bb)]:[]}),'signal':AbortSignal['timeout'](Number['isIntege'+'r'](_0x4536a8[_0x911cce(0x246)+'s'])?_0x4536a8[_0x911cce(0x246)+'s']:0x1d4c0)});if(!_0x16dee2['ok']){const _0x21fcab=await _0x16dee2[_0x911cce(0x187)]();throw new Error(_0x911cce(0x124)+_0x911cce(0x39e)+_0x16dee2['status']+':\x20'+_0x21fcab[_0x911cce(0x198)](0x0,0x190));}const _0xc2f154=await _0x16dee2[_0x911cce(0x1ca)](),_0x588709=_0xc2f154?.[_0x911cce(0x23c)]?.[0x0]?.['message']??{};return{'content':extractModelMessageContent(_0x588709[_0x911cce(0x231)]),'reasoning':typeof _0x588709[_0x911cce(0x288)+_0x911cce(0x378)+'t']===_0x911cce(0x2e6)?_0x588709[_0x911cce(0x288)+_0x911cce(0x378)+'t']:'','model':_0xc2f154?.[_0x911cce(0x14f)]||_0x24a3ac};}),_0x2e2fa8(_0x2a8fe7(0x307)+_0x2a8fe7(0x155),()=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x329)]()),_0x2e2fa8(_0x2a8fe7(0x307)+_0x2a8fe7(0x2fd)+_0x2a8fe7(0x3d4),(_0x34a5e2,_0x46a821)=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x1aa)+_0x2a8fe7(0x3d4)](_0x46a821)),_0x2e2fa8('models:s'+_0x2a8fe7(0x17a)+_0x2a8fe7(0x295)+_0x2a8fe7(0x1d2),(_0x3f66c7,_0x550b5b)=>_0x547138()['models'][_0x2a8fe7(0x15f)+'tedModel'+'Everywhe'+'re'](_0x550b5b)),_0x2e2fa8(_0x2a8fe7(0x307)+_0x2a8fe7(0x2dd)+'operated',(_0x1d0451,_0x293cf9)=>_0x547138()[_0x2a8fe7(0x2d8)]['setSelfO'+'peratedM'+_0x2a8fe7(0x25f)](_0x293cf9)),_0x2e2fa8(_0x2a8fe7(0x307)+_0x2a8fe7(0x1fd)+_0x2a8fe7(0x116),()=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x35e)+_0x2a8fe7(0x228)]()),_0x2e2fa8(_0x2a8fe7(0x2a0)+_0x2a8fe7(0x332)+_0x2a8fe7(0x128),()=>_0x547138()[_0x2a8fe7(0x2d8)][_0x2a8fe7(0x38f)+_0x2a8fe7(0x128)]()),_0x2e2fa8(_0x2a8fe7(0x1cd)+_0x2a8fe7(0x130)+'dled-res'+_0x2a8fe7(0x179),async()=>{const _0x408a0e=_0x2a8fe7,_0x3d675a=await prepareRuntime(shellConfig,{'syncOnly':!![]});return await configController[_0x408a0e(0x280)+_0x408a0e(0x21f)+'ns'](),{'ok':!![],'syncedAt':new Date()[_0x408a0e(0x361)+_0x408a0e(0x30c)](),'manifest':_0x3d675a,'status':await getRuntimeResourceStatus()};}),_0x2e2fa8(_0x2a8fe7(0x1cd)+_0x2a8fe7(0x134)+_0x2a8fe7(0xd8),async()=>getRuntimeResourceStatus());}async function boot(){const _0x16fc57=_0x596b63;shellConfig=await loadShellConfig(resolveProjectRoot()),app[_0x16fc57(0x2c6)](shellConfig[_0x16fc57(0x2ec)+'ame']),configController=createConfigController(shellConfig),mainLogger=createShellLogger(configController[_0x16fc57(0x194)],_0x16fc57(0x15a)),ipcLogger=createShellLogger(configController[_0x16fc57(0x194)],'ipc'),filesLogger=createShellLogger(configController[_0x16fc57(0x194)],_0x16fc57(0xfb)),rendererLogger=createShellLogger(configController['paths'],_0x16fc57(0x326)),productRuntime=await loadProductRuntime();const _0x50970d=resolveWujieApiEndpoint();diagnosticsWriter=createDiagnosticsWriter({'logsDir':configController[_0x16fc57(0x194)][_0x16fc57(0x176)],'appContext':{'productName':shellConfig[_0x16fc57(0x2ec)+'ame'],'appId':shellConfig[_0x16fc57(0x2b1)],'appVersion':app[_0x16fc57(0x17e)+'on'](),'platform':process[_0x16fc57(0x14e)],'arch':process[_0x16fc57(0x3d8)],..._0x50970d?{'apiEndpoint':_0x50970d}:{}}}),userEventWriter=createUserEventWriter({'logsDir':configController[_0x16fc57(0x194)]['logsDir'],'diagnosticsWriter':diagnosticsWriter});const _0x15f70f=await loadCreateUpdateController({'logger':mainLogger});updateController=_0x15f70f({'shellConfig':shellConfig,'appName':()=>app[_0x16fc57(0x19c)],'appVersion':()=>app['getVersi'+'on'](),'broadcast':broadcast,'logger':mainLogger}),updateController[_0x16fc57(0x123)+'ze'](),registerProcessLogHooks(),mainLogger?.[_0x16fc57(0x10a)](_0x16fc57(0x1d1)+_0x16fc57(0x1c5)+_0x16fc57(0x13e)+'ed',{'appVersion':app[_0x16fc57(0x17e)+'on'](),'electronVersion':process[_0x16fc57(0x25b)][_0x16fc57(0x1d1)],'nodeVersion':process[_0x16fc57(0x25b)][_0x16fc57(0x158)],'chromeVersion':process['versions'][_0x16fc57(0x129)],'platform':process[_0x16fc57(0x14e)],'arch':process['arch'],'mode':getMode(),'projectRoot':shellConfig[_0x16fc57(0x264)+_0x16fc57(0x23b)],'configPath':shellConfig[_0x16fc57(0x2e4)+'th'],'dataDir':shellConfig[_0x16fc57(0x195)],'logsDir':configController[_0x16fc57(0x194)]['logsDir'],'rendererUrl':process.env.VITE_DEV_SERVER_URL||join(shellConfig[_0x16fc57(0x264)+_0x16fc57(0x23b)],_0x16fc57(0x2c2),_0x16fc57(0x1df)+'ml')}),gatewayController=createGatewayController({'shellConfig':shellConfig,'configController':configController,'appVersion':app[_0x16fc57(0x17e)+'on'](),'productRuntimeHooks':productRuntimeHooks,'userEventWriter':userEventWriter,'sessionSqliteStore':ensureSessionSqliteStore()}),typeof productRuntime[_0x16fc57(0x319)+_0x16fc57(0x1f9)+_0x16fc57(0x381)]===_0x16fc57(0x259)&&await productRuntime[_0x16fc57(0x319)+_0x16fc57(0x1f9)+_0x16fc57(0x381)]({'configController':configController,'mainLogger':mainLogger}),typeof productRuntime[_0x16fc57(0x319)+'roductDa'+'ta']===_0x16fc57(0x259)?await productRuntime[_0x16fc57(0x319)+'roductDa'+'ta']({'configController':configController,'generatedFilesStore':ensureGeneratedFilesStore(),'mainLogger':mainLogger,'sessionSqliteStore':ensureSessionSqliteStore()}):await ensureGeneratedFilesStore()[_0x16fc57(0x3b4)+_0x16fc57(0x1a4)+'d'](),attachGatewayBroadcastHandlers(gatewayController),await installIpcHandlers(),installClawspaceProtocolHandler(),registerShellShortcuts(),await createWindow(),await gatewayController[_0x16fc57(0x12d)](),updateController[_0x16fc57(0x1ab)+_0x16fc57(0x2f4)+'hecks'](),mainLogger?.[_0x16fc57(0x10a)](_0x16fc57(0x1d1)+_0x16fc57(0x1c5)+_0x16fc57(0x3aa)+_0x16fc57(0x397));}function registerProcessLogHooks(){const _0x5989ef=_0x596b63;if(registerProcessLogHooks['register'+'ed'])return;registerProcessLogHooks[_0x5989ef(0x32a)+'ed']=!![],process['on'](_0x5989ef(0x3b3)+_0x5989ef(0x24d)+'n',_0x5771dd=>{const _0x4cbec7=_0x5989ef;mainLogger?.[_0x4cbec7(0x2bd)](_0x4cbec7(0x3b3)+'\x20excepti'+'on',summarizeError(_0x5771dd));}),process['on'](_0x5989ef(0x362)+_0x5989ef(0x2f7)+'on',_0x582ce3=>{const _0x4695ba=_0x5989ef;mainLogger?.['error'](_0x4695ba(0x362)+_0x4695ba(0x324)+_0x4695ba(0x170),summarizeError(_0x582ce3));}),app['on'](_0x5989ef(0x1f2)+'rocess-g'+'one',(_0x5bbe94,_0xc65b64,_0x3ff7f8)=>{const _0x22bcf9=_0x5989ef;mainLogger?.[_0x22bcf9(0x2bd)](_0x22bcf9(0x326)+_0x22bcf9(0x390)+_0x22bcf9(0x1b3),{'url':_0xc65b64[_0x22bcf9(0x29a)](),'details':_0x3ff7f8});}),app['on'](_0x5989ef(0xf6)+_0x5989ef(0xf2)+'ne',(_0x38ed61,_0x27c523)=>{const _0x4e1ecd=_0x5989ef;mainLogger?.['error'](_0x4e1ecd(0x1a0)+'ocess\x20go'+'ne',{'details':_0x27c523});});}app['on']('window-a'+_0x596b63(0x2f8)+'d',()=>{const _0x3e6be9=_0x596b63;if(process[_0x3e6be9(0x14e)]!==_0x3e6be9(0x2af))app[_0x3e6be9(0xda)]();}),app['on']('activate',async()=>{const _0x397279=_0x596b63;if(isQuitting){app[_0x397279(0xda)]();return;}updateController?.[_0x397279(0x147)+_0x397279(0x3a4)+_0x397279(0xdd)](_0x397279(0x1f7)+_0x397279(0x1ae)),BrowserWindow[_0x397279(0x394)+_0x397279(0x3db)]()[_0x397279(0x135)]===0x0&&shellConfig&&await createWindow();}),app['on'](_0x596b63(0x38d)+_0x596b63(0x3b8),_0x37b08f=>{const _0x56aa2c=_0x596b63;isQuitting=!![],updateController?.[_0x56aa2c(0x2e8)+_0x56aa2c(0x2da)](),terminalManager?.[_0x56aa2c(0x375)](),terminalManager=null,productRuntimeHooks?.[_0x56aa2c(0x375)]?.();for(const _0x43fa2a of Object[_0x56aa2c(0x220)](productRuntimeHooks))delete productRuntimeHooks[_0x43fa2a];if(!gatewayController)return;mainLogger?.[_0x56aa2c(0x10a)]('before\x20q'+_0x56aa2c(0x2ef)+_0x56aa2c(0x253)+_0x56aa2c(0x36a)),_0x37b08f[_0x56aa2c(0x114)+_0x56aa2c(0x291)](),void gatewayController[_0x56aa2c(0x106)]()[_0x56aa2c(0x39a)](()=>{const _0x3d0161=_0x56aa2c;gatewayController=null,mainLogger?.[_0x3d0161(0x10a)](_0x3d0161(0x207)+'stopped\x20'+_0x3d0161(0x354)+_0x3d0161(0x3b8)),app[_0x3d0161(0xda)]();});}),app['on']('will-qui'+'t',()=>{const _0x3f6eb9=_0x596b63;globalShortcut[_0x3f6eb9(0x109)+'er'](DEVTOOLS_ACCELERATOR);}),app[_0x596b63(0x27c)+'y']()[_0x596b63(0x19f)](boot)[_0x596b63(0x21e)](_0x411de3=>{const _0x4d373c=_0x596b63;bootError=_0x411de3 instanceof Error?_0x411de3[_0x4d373c(0xf4)]:String(_0x411de3),mainLogger?.[_0x4d373c(0x2bd)](_0x4d373c(0x1d1)+'\x20main\x20bo'+'ot\x20faile'+'d',summarizeError(_0x411de3)),console[_0x4d373c(0x2bd)](_0x4d373c(0x2bb)+_0x4d373c(0x33c)+_0x4d373c(0x247)+_0x4d373c(0x3bc)+_0x4d373c(0x302)+'in',_0x411de3);});