cc-ding 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/cc-ding.js +1 -1
- package/dist/src/biz/api-key-manager.js +1 -1
- package/dist/src/biz/cc-ding-cli.js +1 -1
- package/dist/src/biz/claude-process.js +1 -1
- package/dist/src/biz/commands.js +1 -1
- package/dist/src/biz/cron.js +1 -1
- package/dist/src/biz/doctor.js +1 -1
- package/dist/src/biz/image.js +1 -1
- package/dist/src/biz/lock.js +1 -1
- package/dist/src/biz/messaging.js +1 -1
- package/dist/src/biz/quote.js +1 -1
- package/dist/src/biz/session.js +1 -1
- package/dist/src/biz/task.js +1 -1
- package/dist/src/biz/types.js +1 -1
- package/dist/src/common.js +1 -1
- package/dist/src/constants.js +1 -1
- package/package.json +1 -1
package/dist/bin/cc-ding.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';const
|
|
2
|
+
'use strict';const a0_0xcee1f1=a0_0x347a;(function(_0xc08000,_0x11f325){const _0x128719=a0_0x347a,_0x4723b0=_0xc08000();while(!![]){try{const _0x10cc7e=-parseInt(_0x128719(0x14d))/0x1*(-parseInt(_0x128719(0x182))/0x2)+-parseInt(_0x128719(0x18a))/0x3*(-parseInt(_0x128719(0x183))/0x4)+-parseInt(_0x128719(0x180))/0x5+parseInt(_0x128719(0x15d))/0x6*(-parseInt(_0x128719(0x170))/0x7)+-parseInt(_0x128719(0x197))/0x8+parseInt(_0x128719(0x185))/0x9*(-parseInt(_0x128719(0x156))/0xa)+parseInt(_0x128719(0x17b))/0xb*(parseInt(_0x128719(0x16d))/0xc);if(_0x10cc7e===_0x11f325)break;else _0x4723b0['push'](_0x4723b0['shift']());}catch(_0x2c7237){_0x4723b0['push'](_0x4723b0['shift']());}}}(a0_0x4127,0x36217));var __importDefault=this&&this[a0_0xcee1f1(0x152)]||function(_0x3a124f){const _0x5e8a33=a0_0xcee1f1;return _0x3a124f&&_0x3a124f[_0x5e8a33(0x160)]?_0x3a124f:{'default':_0x3a124f};};Object[a0_0xcee1f1(0x154)](exports,'__esModule',{'value':!![]});const common_1=require(a0_0xcee1f1(0x157)),commander_1=require('commander'),session_1=require(a0_0xcee1f1(0x15e)),path_1=__importDefault(require('path')),cc_ding_cli_1=require(a0_0xcee1f1(0x16a)),lock_1=require(a0_0xcee1f1(0x18c)),doctor_1=require(a0_0xcee1f1(0x18e)),fs_1=__importDefault(require('fs'));(0x0,common_1[a0_0xcee1f1(0x175)])(),process[a0_0xcee1f1(0x184)](a0_0xcee1f1(0x14c)),process[a0_0xcee1f1(0x195)](0x0),process['on'](a0_0xcee1f1(0x187),function(_0x4a679f){const _0x14c170=a0_0xcee1f1;console[_0x14c170(0x199)]('Caught\x20exception:\x20'+_0x4a679f),process[_0x14c170(0x172)](0x1);});function a0_0x4127(){const _0x59cdf8=['\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20功能:\x20钉钉机器人对接本地Claude,\x20支持会话模式和任务队列模式\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20会话数据路径:\x20~/.cc-ding/{clientId}/{MD5}/.sessions/{claudeSessionId}/session.{json|log}\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20任务数据路径:\x20~/.cc-ding/{clientId}/{MD5}/.tasks/{时间戳}/task.{json|log}\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20定时任务数据:\x20~/.cc-ding/{clientId}/cron.json\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20启动方式:\x20pm2\x20start\x20--name\x20\x22cc-ding-{clientId}\x22\x20npx\x20--\x20-p\x20cc-ding\x20run\x20-ci\x20{clientId}\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20会话模式说明\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20会话ID:\x20由\x20Claude\x20分配的\x20claudeSessionId\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20结束会话:\x20/end\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20新会话:\x20/new\x20[初始消息]\x20强制结束当前会话并开启新会话\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20恢复会话:\x20/resume\x20[会话ID]\x20恢复指定历史会话,\x20不指定则恢复最近一个\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20会话持久化:\x20活跃会话自动保存到\x20active.json,\x20服务重启后自动恢复\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20群内多用户:\x20允许群内所有白名单用户参与对话\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20/help:\x20查看所有可用命令(含版本、作者、文档链接);\x20/{命令}\x20--help\x20查看命令详细用法\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20图片消息支持\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20支持接收钉钉图片消息(picture)和富文本消息(richText,\x20含内嵌图片)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20图片自动下载保存到\x20<会话目录>/.images/\x20下\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20useLocalOcr:\x20默认开启,\x20使用本地OCR识别图片文字,\x20同时传入原图路径供Claude自主查看\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20配置方式:\x20conversations[].useLocalOcr\x20=\x20false\x20可关闭OCR(适用于支持图片识别的模型)\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20任务模式说明\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20任务ID:\x20任务接收时间戳\x0a\x20\x20\x20\x20\x20\x20\x20\x20-\x20API\x20Key\x20池化管理(可选,\x20配置apiKeyCfg后启用)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20429自动切换:\x20自动切换到API\x20Key模式\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Key轮换:\x20API\x20Key遇到429或连续TPM不稳定时自动换Key\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20跨天重置:\x20每日自动重置API\x20Key状态\x0a\x20\x20\x20\x20\x20\x20','.cc-ding','loadEnv','requiredOption','projUtil','mobile','version','DingClaude','187gWvOis','printDoctorResults','split','default','\x20\x203.\x20推荐PM2启动:','14515aPEdpU','existsSync','44kSGmHO','68KugMSB','removeAllListeners','314343boNSZN','clientName','uncaughtException','<兜底钉钉机器人Token-用于无dingToken群的消息接收>','\x0a💡\x20请升级\x20Node\x20版本后重新运行\x0a','69777wxREnk','acquirePidLock','../src/biz/lock','slice','../src/biz/doctor','parse','clientSecret\x20(钉钉Stream连接密钥)','-m,\x20--mobile\x20<value>','\x20\x20要求:Node\x20>=\x2024','-cs,\x20--clientSecret\x20<value>','clientId','setMaxListeners','\x20\x201.\x20编辑\x20config.json\x20添加\x20conversations\x20配置(群聊需配置dingToken)','388760AgOatj','-ci,\x20--clientId\x20<value>','log','\x0a❌\x20Node\x20版本过低,无法执行\x20init\x20命令','warning','4584NVoFKA','description','mobile\x20(自己的手机号,\x20自动加入白名单)','before','doctor','__importDefault','after','defineProperty','runDoctor','50xqbjkp','../src/common','addHelpText','argv','command','后续步骤:','\x22\x20npx\x20--\x20-p\x20cc-ding\x20cc-ding\x20run\x20-ci\x20','44778TevGVj','../src/biz/session','option','__esModule','初始化cc-ding配置文件,\x20生成最简config.json','join','/.cc-ding/','配置文件已生成:','\x20\x202.\x20启动机器人:\x20cc-ding\x20run\x20-ci','cc助手','/config.json','配置文件已存在:\x20','action','../src/biz/cc-ding-cli','clientSecret','Command','239772xXEeAW','getHomeDir','initClientDir','364XgtIWc','检查指定client的配置文件schema合法性和有效性','exit'];a0_0x4127=function(){return _0x59cdf8;};return a0_0x4127();}const program=new commander_1[(a0_0xcee1f1(0x16c))]();function a0_0x347a(_0x37abab,_0x2fc1c4){_0x37abab=_0x37abab-0x14b;const _0x4127a0=a0_0x4127();let _0x347a0c=_0x4127a0[_0x37abab];return _0x347a0c;}program[a0_0xcee1f1(0x158)](a0_0xcee1f1(0x150),'\x0a\x20\x20\x20\x20cc-ding\x20for\x20connect\x20ClaudeCode\x20to\x20DingDingRobot\x0a\x20\x20')[a0_0xcee1f1(0x158)](a0_0xcee1f1(0x153),'\x0aExamples:\x0a\x20\x20$\x20cc-ding\x20init\x20-ci\x20{clientId}\x20-cs\x20{clientSecret}\x20-m\x20{mobile}\x0a\x20\x20$\x20cc-ding\x20run\x20-ci\x20{clientId}\x0a')['version']((0x0,common_1[a0_0xcee1f1(0x177)])()['getPkgVersion']()),program[a0_0xcee1f1(0x15a)]('init')[a0_0xcee1f1(0x14e)](a0_0xcee1f1(0x161))['requiredOption']('-ci,\x20--clientId\x20<value>',a0_0xcee1f1(0x194))[a0_0xcee1f1(0x176)](a0_0xcee1f1(0x193),a0_0xcee1f1(0x190))[a0_0xcee1f1(0x176)](a0_0xcee1f1(0x191),a0_0xcee1f1(0x14f))[a0_0xcee1f1(0x15f)]('-cn,\x20--clientName\x20<value>','clientName\x20(机器人名称,\x20可选)')[a0_0xcee1f1(0x169)](async _0x29e2d8=>{const _0x291c1d=a0_0xcee1f1,_0x2f4809=process[_0x291c1d(0x179)][_0x291c1d(0x18d)](0x1),_0x3d8b46=parseInt(_0x2f4809[_0x291c1d(0x17d)]('.')[0x0],0xa);_0x3d8b46<0x18&&(console['log'](_0x291c1d(0x14b)),console[_0x291c1d(0x199)]('\x20\x20当前版本:'+_0x2f4809),console[_0x291c1d(0x199)](_0x291c1d(0x192)),console[_0x291c1d(0x199)](_0x291c1d(0x189)),process[_0x291c1d(0x172)](0x1));const _0x30fda1=(0x0,session_1[_0x291c1d(0x16e)])()+_0x291c1d(0x163)+_0x29e2d8[_0x291c1d(0x194)],_0x3d01e0=_0x30fda1+_0x291c1d(0x167);fs_1[_0x291c1d(0x17e)][_0x291c1d(0x181)](_0x3d01e0)&&(console['log'](_0x291c1d(0x168)+_0x3d01e0),console[_0x291c1d(0x199)]('如需重新初始化,\x20请先删除已有配置文件'),process['exit'](0x1));const _0x169d61={'clientName':_0x29e2d8[_0x291c1d(0x186)]||_0x291c1d(0x166),'owner':_0x29e2d8['mobile'],'whiteUserList':[_0x29e2d8[_0x291c1d(0x178)]],'clientSecret':_0x29e2d8[_0x291c1d(0x16b)],'defaultDingToken':_0x291c1d(0x188),'conversations':[],'includeThinking':![],'resultOnly':!![],'debug':![],'taskQueueSize':0xa,'taskHandlerCount':0x1,'sessionMaxConcurrency':0x14};(0x0,session_1[_0x291c1d(0x16f)])(_0x29e2d8[_0x291c1d(0x194)],_0x169d61),console[_0x291c1d(0x199)](_0x291c1d(0x164),_0x3d01e0),console['log'](''),console['log'](_0x291c1d(0x15b)),console[_0x291c1d(0x199)](_0x291c1d(0x196)),console['log'](_0x291c1d(0x165),_0x29e2d8['clientId']),console[_0x291c1d(0x199)](_0x291c1d(0x17f)),console[_0x291c1d(0x199)]('\x20\x20\x20\x20\x20pm2\x20start\x20--name\x20\x22cc-ding-'+_0x29e2d8[_0x291c1d(0x194)]+_0x291c1d(0x15c)+_0x29e2d8[_0x291c1d(0x194)]);}),program[a0_0xcee1f1(0x15a)]('run')[a0_0xcee1f1(0x14e)](a0_0xcee1f1(0x173))[a0_0xcee1f1(0x176)](a0_0xcee1f1(0x198),a0_0xcee1f1(0x194))[a0_0xcee1f1(0x169)](async _0x146f17=>{const _0x18f1d0=a0_0xcee1f1;(0x0,session_1['ensureClientDir'])(_0x146f17[_0x18f1d0(0x194)]);const _0x3898d8=path_1[_0x18f1d0(0x17e)]['join']((0x0,session_1[_0x18f1d0(0x16e)])(),_0x18f1d0(0x174),_0x146f17['clientId']);(0x0,lock_1[_0x18f1d0(0x18b)])(_0x3898d8,_0x146f17[_0x18f1d0(0x194)]),await new cc_ding_cli_1[(_0x18f1d0(0x17a))](_0x146f17['clientId'])['run']();}),program[a0_0xcee1f1(0x15a)](a0_0xcee1f1(0x151))['description'](a0_0xcee1f1(0x171))[a0_0xcee1f1(0x176)](a0_0xcee1f1(0x198),a0_0xcee1f1(0x194))[a0_0xcee1f1(0x169)](async _0x431d8e=>{const _0x4338b0=a0_0xcee1f1,_0x223aad=path_1['default'][_0x4338b0(0x162)]((0x0,session_1['getHomeDir'])(),_0x4338b0(0x174),_0x431d8e[_0x4338b0(0x194)]),_0x39e1d6=(0x0,doctor_1[_0x4338b0(0x155)])(_0x223aad);(0x0,doctor_1[_0x4338b0(0x17c)])(_0x39e1d6);}),program[a0_0xcee1f1(0x18f)](process[a0_0xcee1f1(0x159)]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const a1_0x252c47=a1_0x5c8d;(function(_0x4f4a6e,_0x262409){const _0x35471d=a1_0x5c8d,_0x3b7b9a=_0x4f4a6e();while(!![]){try{const _0x2aaaae=parseInt(_0x35471d(0x134))/0x1+parseInt(_0x35471d(0x124))/0x2+-parseInt(_0x35471d(0xda))/0x3+parseInt(_0x35471d(0x102))/0x4+parseInt(_0x35471d(0x13e))/0x5*(-parseInt(_0x35471d(0x115))/0x6)+-parseInt(_0x35471d(0x12b))/0x7+-parseInt(_0x35471d(0x101))/0x8*(-parseInt(_0x35471d(0x13f))/0x9);if(_0x2aaaae===_0x262409)break;else _0x3b7b9a['push'](_0x3b7b9a['shift']());}catch(_0x536b00){_0x3b7b9a['push'](_0x3b7b9a['shift']());}}}(a1_0x4889,0x9320b));var __importDefault=this&&this[a1_0x252c47(0x131)]||function(_0x3a0ad2){const _0x1f3e16=a1_0x252c47;return _0x3a0ad2&&_0x3a0ad2[_0x1f3e16(0x10e)]?_0x3a0ad2:{'default':_0x3a0ad2};};function a1_0x5c8d(_0x3a9957,_0x3cad61){_0x3a9957=_0x3a9957-0xd7;const _0x4889a1=a1_0x4889();let _0x5c8da8=_0x4889a1[_0x3a9957];return _0x5c8da8;}function a1_0x4889(){const _0x44ccd2=[',\x20剩余有效:\x20','baseUrl','./session','settings-ding.json',',强制使用该配置','pickValidApiKey','getClientDir','length','whiteUserList','utils-ok',']\x20==========\x20启动自检\x20==========','keys','boolean','\x20通过,\x20','owner\x20(机器人\x20owner)','stringify',']\x20已写入\x20Claude\x20配置到\x20','dateUtil','defineProperty','writeFileSync','apiKeyCfg\x20上次重置时间:\x20','execSync','level','105712qDuBnT','1269988jfrpWV','conversations[','conversations\x20为空数组,可通过\x20/reg\x20命令动态注册',']\x20apiKeyCfg\x20每日重置已调度,下次重置:\x20','ANTHROPIC_AUTH_TOKEN',']\x20apiKeyCfg\x20已重置\x20(所有\x20Claude\x20Setting\x20isValid=true)','config','ANTHROPIC_MODEL','existsSync','\x20linkConversationId\x20\x22','claude\x20命令可用','pipe','__esModule','\x20警告,\x20','config.json\x20缺少必填字段:\x20','random','find','conversations','push','131982qOmvLI','model','YYYY-MM-DD\x20HH:mm:ss',']\x20Claude\x20Setting\x20已失效:\x20','mkdirSync','apiKeyCfg','timestamp','.claude','floor','FORCE_ENABLE','format','\x20缺少\x20conversationId',']\x20启动自检发现致命错误,进程退出','conversationTitle','...','641964NPJrNb','settings-tpl.json\x20不存在:\x20','test','memo','\x20isValid\x20类型异常:\x20','apiKeyCfg.claudeSettings[','getTime','5837013yrhfEi','getHomeDir','工作目录不可写:\x20','unlinkSync',']\x20==============================\x0a','apiKey','__importDefault','ensureSettingsWithApiKey','saveClientConfig','974697RwGWuI','smallModel','apiKeyCfg.claudeSettings\x20为空,无可用\x20Key','PASS','join','getForceEnabledSettingsPath','FATAL','\x20缺少\x20apiKey','\x20个群配置','isValid','80rLxSYG','126puzaPl','\x20—\x20','settings-tpl.json\x20解析失败:\x20',']\x20自检完成:\x20','scheduleApiKeyCfgDailyReset','conversations\x20应为数组或已配置','.cc-ding','\x20apiKey\x20重复:\x20','.healthcheck',',\x20model:\x20','/config.json','apiKeyCfg.claudeSettings\x20共\x20','log','env','filter','CLAUDE_SMALL_FAST_MODEL','resetTime','(空)','config.json\x20','rotateApiKey','\x22\x20未在\x20conversations\x20中找到','linkConversationId','parse','isArray','path','\x20缺少\x20model','\x20缺少\x20baseUrl','some','getConversationDir','ANTHROPIC_BASE_URL','message','settings-tpl.json\x20根元素不是对象','child_process','error','claudeSettings','isAuthenticationError','[WARN]\x20','exit','has','29178qWsiNA','add','工作目录可写:\x20','conversationId','settings-tpl.json','default','readApiKeyFromSettings','utf-8','getFullYear',']\x20保存\x20config.json\x20失败:','WARN','readFileSync','\x20项,有效\x20',']\x20从模板创建\x20settings-ding.json:\x20','object','owner'];a1_0x4889=function(){return _0x44ccd2;};return a1_0x4889();}Object[a1_0x252c47(0xfc)](exports,a1_0x252c47(0x10e),{'value':!![]}),exports[a1_0x252c47(0x133)]=saveClientConfig,exports['resetApiKeyCfg']=resetApiKeyCfg,exports[a1_0x252c47(0x143)]=scheduleApiKeyCfgDailyReset,exports['settingLabel']=settingLabel,exports[a1_0x252c47(0x152)]=rotateApiKey,exports[a1_0x252c47(0xef)]=pickValidApiKey,exports[a1_0x252c47(0x132)]=ensureSettingsWithApiKey,exports['isQuotaExhaustedError']=isQuotaExhaustedError,exports[a1_0x252c47(0x162)]=isAuthenticationError,exports[a1_0x252c47(0xe0)]=readApiKeyFromSettings,exports[a1_0x252c47(0x139)]=getForceEnabledSettingsPath,exports['startupCheck']=startupCheck;const fs_1=__importDefault(require('fs')),path_1=__importDefault(require(a1_0x252c47(0x157))),child_process_1=require(a1_0x252c47(0x15f)),session_1=require(a1_0x252c47(0xec)),utils_ok_1=require(a1_0x252c47(0xf3));function saveClientConfig(_0x288090){const _0x255ffb=a1_0x252c47,_0x52b580=_0x288090[_0x255ffb(0xf0)]()+_0x255ffb(0x149);try{fs_1[_0x255ffb(0xdf)]['writeFileSync'](_0x52b580,JSON[_0x255ffb(0xf9)](_0x288090[_0x255ffb(0x108)],null,0x2),_0x255ffb(0xe1));}catch(_0x5d1ce0){console[_0x255ffb(0x160)]('['+(0x0,session_1[_0x255ffb(0x11b)])()+_0x255ffb(0xe3),_0x5d1ce0);}}function resetApiKeyCfg(_0x204f16){const _0x5c77a7=a1_0x252c47,_0x23db9c=_0x204f16['config'][_0x5c77a7(0x11a)];if(!_0x23db9c)return;const _0xb927e1=new Date();_0x23db9c[_0x5c77a7(0x14f)]=utils_ok_1[_0x5c77a7(0xfb)]['mm'](_0xb927e1[_0x5c77a7(0x12a)]())[_0x5c77a7(0x11f)](_0x5c77a7(0x117));let _0x5ad3e7=0x0;for(const _0x40d55e of _0x23db9c[_0x5c77a7(0x161)]){!_0x40d55e[_0x5c77a7(0x13d)]&&(_0x40d55e[_0x5c77a7(0x13d)]=!![],_0x5ad3e7++);}_0x5ad3e7>0x0&&console[_0x5c77a7(0x14b)]('['+(0x0,session_1[_0x5c77a7(0x11b)])()+']\x20'+_0x5ad3e7+'\x20个已失效\x20Claude\x20Setting\x20重新标记为有效'),saveClientConfig(_0x204f16),console[_0x5c77a7(0x14b)]('['+(0x0,session_1['timestamp'])()+_0x5c77a7(0x107));}function scheduleApiKeyCfgDailyReset(_0x22ebc6){const _0x1251d1=()=>{const _0x5e06d5=a1_0x5c8d,_0x31e41d=new Date(),_0x15a087=new Date(_0x31e41d[_0x5e06d5(0xe2)](),_0x31e41d['getMonth'](),_0x31e41d['getDate']()+0x1,0x0,0x0,0x0,0x0),_0x407d6f=_0x15a087[_0x5e06d5(0x12a)]()-_0x31e41d[_0x5e06d5(0x12a)]();setTimeout(()=>{const _0x5e07b1=_0x5e06d5;console[_0x5e07b1(0x14b)]('['+(0x0,session_1[_0x5e07b1(0x11b)])()+']\x20定时重置\x20apiKeyCfg\x20(每天0点)'),resetApiKeyCfg(_0x22ebc6),_0x1251d1();},_0x407d6f),console[_0x5e06d5(0x14b)]('['+(0x0,session_1[_0x5e06d5(0x11b)])()+_0x5e06d5(0x105)+_0x15a087['toISOString']());};_0x1251d1();}function settingLabel(_0x149e46){const _0x276eb2=a1_0x252c47;return _0x149e46['memo']?_0x149e46[_0x276eb2(0x127)]:_0x276eb2(0x123)+_0x149e46[_0x276eb2(0x130)]['slice'](-0x6);}function findSettingLabel(_0xa9f8ca,_0xd39c39){const _0x1d87f1=a1_0x252c47,_0x2a9188=_0xa9f8ca[_0x1d87f1(0x112)](_0x26b965=>_0x26b965[_0x1d87f1(0x130)]===_0xd39c39);return _0x2a9188?settingLabel(_0x2a9188):_0x1d87f1(0x123)+_0xd39c39['slice'](-0x6);}function rotateApiKey(_0x2c6753,_0x537bed){const _0x4b7994=a1_0x252c47,_0x261298=_0x2c6753[_0x4b7994(0x108)]['apiKeyCfg'];if(!_0x261298)return null;for(const _0x14ffee of _0x261298[_0x4b7994(0x161)]){if(_0x14ffee[_0x4b7994(0x130)]===_0x537bed&&_0x14ffee[_0x4b7994(0x13d)]){_0x14ffee[_0x4b7994(0x13d)]=![];break;}}const _0x5c25fa=_0x261298[_0x4b7994(0x161)][_0x4b7994(0x14d)](_0x54170d=>_0x54170d[_0x4b7994(0x13d)])[_0x4b7994(0xf1)],_0x5b1341=findSettingLabel(_0x261298[_0x4b7994(0x161)],_0x537bed);return console[_0x4b7994(0x14b)]('['+(0x0,session_1[_0x4b7994(0x11b)])()+_0x4b7994(0x118)+_0x5b1341+_0x4b7994(0xea)+_0x5c25fa),saveClientConfig(_0x2c6753),pickValidApiKey(_0x2c6753);}function pickValidApiKey(_0x1f6b16){const _0x17b4ac=a1_0x252c47,_0x4e680e=_0x1f6b16[_0x17b4ac(0x108)][_0x17b4ac(0x11a)];if(!_0x4e680e)return null;const _0x245559=_0x4e680e[_0x17b4ac(0x161)]['filter'](_0x2cbd82=>_0x2cbd82[_0x17b4ac(0x13d)]);if(_0x245559[_0x17b4ac(0xf1)]===0x0)return null;return _0x245559[Math[_0x17b4ac(0x11d)](Math[_0x17b4ac(0x111)]()*_0x245559[_0x17b4ac(0xf1)])];}function ensureSettingsWithApiKey(_0x4daebf,_0x1b9553){const _0x2d608b=a1_0x252c47,_0x2d7ba7=path_1[_0x2d608b(0xdf)][_0x2d608b(0x138)](_0x4daebf,'.claude'),_0x1b350a=path_1[_0x2d608b(0xdf)][_0x2d608b(0x138)](_0x2d7ba7,'settings-ding.json');let _0x61033c={};if(fs_1[_0x2d608b(0xdf)][_0x2d608b(0x10a)](_0x1b350a))try{_0x61033c=JSON['parse'](fs_1[_0x2d608b(0xdf)][_0x2d608b(0xe5)](_0x1b350a,_0x2d608b(0xe1)));}catch{_0x61033c={};}else{const _0x28bc86=path_1[_0x2d608b(0xdf)][_0x2d608b(0x138)]((0x0,session_1[_0x2d608b(0x12c)])(),_0x2d608b(0x145),_0x2d608b(0xde));if(fs_1[_0x2d608b(0xdf)][_0x2d608b(0x10a)](_0x28bc86))try{_0x61033c=JSON[_0x2d608b(0x155)](fs_1[_0x2d608b(0xdf)][_0x2d608b(0xe5)](_0x28bc86,_0x2d608b(0xe1))),console['log']('['+(0x0,session_1[_0x2d608b(0x11b)])()+_0x2d608b(0xe7)+_0x28bc86);}catch{_0x61033c={};}}!_0x61033c[_0x2d608b(0x14c)]&&(_0x61033c[_0x2d608b(0x14c)]={});let _0x3266de=![];_0x61033c[_0x2d608b(0x14c)][_0x2d608b(0x106)]!==_0x1b9553['apiKey']&&(_0x61033c[_0x2d608b(0x14c)][_0x2d608b(0x106)]=_0x1b9553[_0x2d608b(0x130)],_0x3266de=!![]);_0x1b9553['baseUrl']&&_0x61033c[_0x2d608b(0x14c)][_0x2d608b(0x15c)]!==_0x1b9553[_0x2d608b(0xeb)]&&(_0x61033c[_0x2d608b(0x14c)]['ANTHROPIC_BASE_URL']=_0x1b9553['baseUrl'],_0x3266de=!![]);_0x1b9553[_0x2d608b(0x116)]&&_0x61033c['env'][_0x2d608b(0x109)]!==_0x1b9553[_0x2d608b(0x116)]&&(_0x61033c[_0x2d608b(0x14c)][_0x2d608b(0x109)]=_0x1b9553[_0x2d608b(0x116)],_0x3266de=!![]);const _0x15a284=_0x1b9553[_0x2d608b(0x135)]||_0x1b9553['model'];return _0x15a284&&_0x61033c['env'][_0x2d608b(0x14e)]!==_0x15a284&&(_0x61033c[_0x2d608b(0x14c)][_0x2d608b(0x14e)]=_0x15a284,_0x3266de=!![]),_0x3266de&&(fs_1[_0x2d608b(0xdf)][_0x2d608b(0x119)](_0x2d7ba7,{'recursive':!![]}),fs_1[_0x2d608b(0xdf)][_0x2d608b(0xfd)](_0x1b350a,JSON[_0x2d608b(0xf9)](_0x61033c,null,0x2),_0x2d608b(0xe1)),console[_0x2d608b(0x14b)]('['+(0x0,session_1['timestamp'])()+_0x2d608b(0xfa)+_0x1b350a+'\x20('+settingLabel(_0x1b9553)+_0x2d608b(0x148)+_0x1b9553[_0x2d608b(0x116)]+',\x20smallModel:\x20'+_0x15a284+')')),_0x1b350a;}function isQuotaExhaustedError(_0x1c0bde){const _0xff5499=a1_0x252c47;if(/Request\s+rejected.*429/i[_0xff5499(0x126)](_0x1c0bde))return!![];if(/429.*Request\s+rejected/i[_0xff5499(0x126)](_0x1c0bde))return!![];if(/429.*(?:超过.*上限|使用上限|配额|quota|capacity)/i[_0xff5499(0x126)](_0x1c0bde))return!![];if(/(?:超过.*上限|使用上限|配额|quota|capacity).*429/i[_0xff5499(0x126)](_0x1c0bde))return!![];return![];}function isAuthenticationError(_0x2c78bc){const _0x47ecf5=a1_0x252c47;if(/authentication_error/i['test'](_0x2c78bc))return!![];if(/401.*(?:未授权|unauthorized|invalid\s*(?:key|token|api)|auth)/i[_0x47ecf5(0x126)](_0x2c78bc))return!![];if(/(?:未授权|unauthorized|invalid\s*(?:key|token|api)|auth).*401/i[_0x47ecf5(0x126)](_0x2c78bc))return!![];return![];}function readApiKeyFromSettings(_0x1ba3d5){const _0x329bf8=a1_0x252c47,_0x205022=path_1[_0x329bf8(0xdf)][_0x329bf8(0x138)](_0x1ba3d5,_0x329bf8(0x11c),_0x329bf8(0xed));if(!fs_1[_0x329bf8(0xdf)]['existsSync'](_0x205022))return null;try{const _0x368642=JSON[_0x329bf8(0x155)](fs_1['default'][_0x329bf8(0xe5)](_0x205022,_0x329bf8(0xe1)));return _0x368642['env']?.[_0x329bf8(0x106)]||null;}catch{return null;}}function getForceEnabledSettingsPath(_0x50994e){const _0x52f3fb=a1_0x252c47,_0x277111=path_1[_0x52f3fb(0xdf)][_0x52f3fb(0x138)](_0x50994e,'.claude',_0x52f3fb(0xed));if(!fs_1[_0x52f3fb(0xdf)][_0x52f3fb(0x10a)](_0x277111))return null;try{const _0xce30b2=JSON['parse'](fs_1[_0x52f3fb(0xdf)][_0x52f3fb(0xe5)](_0x277111,_0x52f3fb(0xe1))),_0x1fa2a0=_0xce30b2['env']?.[_0x52f3fb(0x11e)];if(_0x1fa2a0!==undefined&&_0x1fa2a0!==![]&&_0x1fa2a0!=='')return console['log']('['+(0x0,session_1['timestamp'])()+']\x20检测到\x20settings-ding.json\x20FORCE_ENABLE='+_0x1fa2a0+_0x52f3fb(0xee)),_0x277111;return null;}catch{return null;}}function startupCheck(_0x333327){const _0x1da345=a1_0x252c47,_0x43ad2b=[],_0x142121=_0x333327['config'],_0x389536=_0x333327[_0x1da345(0xf0)](),_0x406b4f=[{'key':'clientSecret','label':'clientSecret\x20(钉钉\x20Stream\x20Client\x20密钥)'},{'key':_0x1da345(0xf2),'label':'whiteUserList\x20(白名单用户)'},{'key':_0x1da345(0xe9),'label':_0x1da345(0xf8)}];for(const {key:_0x4339fd,label:_0x247130}of _0x406b4f){const _0x5d1686=_0x142121[_0x4339fd];_0x5d1686===undefined||_0x5d1686===null||_0x5d1686===''||Array[_0x1da345(0x156)](_0x5d1686)&&_0x5d1686[_0x1da345(0xf1)]===0x0?_0x43ad2b['push']({'level':_0x1da345(0x13a),'message':_0x1da345(0x110)+_0x247130}):_0x43ad2b['push']({'level':'PASS','message':_0x1da345(0x151)+_0x247130+'\x20✓'});}if(!Array[_0x1da345(0x156)](_0x142121[_0x1da345(0x113)]))_0x43ad2b[_0x1da345(0x114)]({'level':'FATAL','message':_0x1da345(0x144)});else{if(_0x142121[_0x1da345(0x113)][_0x1da345(0xf1)]===0x0)_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':_0x1da345(0x104)});else{const _0x21f630=new Set();for(let _0x464fcb=0x0;_0x464fcb<_0x142121['conversations'][_0x1da345(0xf1)];_0x464fcb++){const _0x17e613=_0x142121[_0x1da345(0x113)][_0x464fcb],_0x192e79=_0x1da345(0x103)+_0x464fcb+']';if(!_0x17e613[_0x1da345(0xdd)])_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x13a),'message':_0x192e79+_0x1da345(0x120)});else _0x21f630[_0x1da345(0xd9)](_0x17e613[_0x1da345(0xdd)])?_0x43ad2b[_0x1da345(0x114)]({'level':'WARN','message':_0x192e79+'\x20conversationId\x20重复:\x20'+_0x17e613[_0x1da345(0xdd)]}):_0x21f630[_0x1da345(0xdb)](_0x17e613[_0x1da345(0xdd)]);_0x17e613[_0x1da345(0x154)]&&!_0x142121['conversations'][_0x1da345(0x15a)](_0x59008c=>_0x59008c[_0x1da345(0xdd)]===_0x17e613[_0x1da345(0x154)])&&_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':_0x192e79+_0x1da345(0x10b)+_0x17e613['linkConversationId']+_0x1da345(0x153)});}_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':'conversations\x20共\x20'+_0x142121[_0x1da345(0x113)][_0x1da345(0xf1)]+_0x1da345(0x13c)});}}if(_0x142121[_0x1da345(0x11a)]){const _0x1fbd44=_0x142121[_0x1da345(0x11a)];_0x1fbd44[_0x1da345(0x14f)]&&_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':_0x1da345(0xfe)+_0x1fbd44['resetTime']});if(!Array['isArray'](_0x1fbd44[_0x1da345(0x161)]))_0x43ad2b['push']({'level':_0x1da345(0xe4),'message':'apiKeyCfg.claudeSettings\x20不是数组,API\x20Key\x20轮换功能不可用'});else{if(_0x1fbd44[_0x1da345(0x161)][_0x1da345(0xf1)]===0x0)_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':_0x1da345(0x136)});else{const _0x2968e7=new Set();for(let _0x16d6bb=0x0;_0x16d6bb<_0x1fbd44['claudeSettings'][_0x1da345(0xf1)];_0x16d6bb++){const _0x24a4be=_0x1fbd44['claudeSettings'][_0x16d6bb],_0x333ac0=_0x1da345(0x129)+_0x16d6bb+']';if(!_0x24a4be[_0x1da345(0x130)])_0x43ad2b['push']({'level':_0x1da345(0x13a),'message':_0x333ac0+_0x1da345(0x13b)});else _0x2968e7[_0x1da345(0xd9)](_0x24a4be[_0x1da345(0x130)])?_0x43ad2b['push']({'level':_0x1da345(0xe4),'message':_0x333ac0+_0x1da345(0x146)+settingLabel(_0x24a4be)}):_0x2968e7[_0x1da345(0xdb)](_0x24a4be['apiKey']);!_0x24a4be[_0x1da345(0xeb)]&&_0x43ad2b[_0x1da345(0x114)]({'level':'WARN','message':_0x333ac0+_0x1da345(0x159)}),!_0x24a4be[_0x1da345(0x116)]&&_0x43ad2b['push']({'level':_0x1da345(0xe4),'message':_0x333ac0+_0x1da345(0x158)}),typeof _0x24a4be['isValid']!==_0x1da345(0xf6)&&_0x43ad2b[_0x1da345(0x114)]({'level':'WARN','message':_0x333ac0+_0x1da345(0x128)+typeof _0x24a4be[_0x1da345(0x13d)]});}const _0x1f0baa=_0x1fbd44[_0x1da345(0x161)]['filter'](_0x5d6da2=>_0x5d6da2['isValid'])[_0x1da345(0xf1)];_0x43ad2b['push']({'level':'PASS','message':_0x1da345(0x14a)+_0x1fbd44[_0x1da345(0x161)][_0x1da345(0xf1)]+_0x1da345(0xe6)+_0x1f0baa});}}}const _0x5826a0=path_1[_0x1da345(0xdf)][_0x1da345(0x138)]((0x0,session_1['getHomeDir'])(),'.cc-ding',_0x1da345(0xde));if(fs_1['default'][_0x1da345(0x10a)](_0x5826a0))try{const _0x507d60=JSON[_0x1da345(0x155)](fs_1[_0x1da345(0xdf)][_0x1da345(0xe5)](_0x5826a0,_0x1da345(0xe1)));if(typeof _0x507d60!==_0x1da345(0xe8)||_0x507d60===null)_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':_0x1da345(0x15e)});else{if(!_0x507d60[_0x1da345(0x14c)]||typeof _0x507d60['env']!==_0x1da345(0xe8))_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':'settings-tpl.json\x20缺少\x20env\x20字段,创建\x20settings-ding.json\x20时将不包含预配置环境变量'});else{const _0x13a300=Object[_0x1da345(0xf5)](_0x507d60[_0x1da345(0x14c)]);_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':'settings-tpl.json\x20有效,env\x20包含:\x20'+(_0x13a300[_0x1da345(0x138)](',\x20')||_0x1da345(0x150))});}}}catch(_0x579cb7){_0x43ad2b[_0x1da345(0x114)]({'level':'WARN','message':_0x1da345(0x141)+(_0x579cb7 instanceof Error?_0x579cb7[_0x1da345(0x15d)]:_0x579cb7)});}else _0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':_0x1da345(0x125)+_0x5826a0+',创建\x20settings-ding.json\x20时将使用空模板'});try{(0x0,child_process_1[_0x1da345(0xff)])('which\x20claude',{'stdio':_0x1da345(0x10d)}),_0x43ad2b[_0x1da345(0x114)]({'level':'PASS','message':_0x1da345(0x10c)});}catch{_0x43ad2b['push']({'level':_0x1da345(0x13a),'message':'claude\x20命令不可用,请确认\x20Claude\x20Code\x20CLI\x20已安装'});}try{const _0x15adb7=path_1[_0x1da345(0xdf)][_0x1da345(0x138)](_0x389536,_0x1da345(0x147));fs_1[_0x1da345(0xdf)]['writeFileSync'](_0x15adb7,'ok',_0x1da345(0xe1)),fs_1['default'][_0x1da345(0x12e)](_0x15adb7),_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':_0x1da345(0xdc)+_0x389536});}catch(_0x3ee05e){_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x13a),'message':_0x1da345(0x12d)+_0x389536+'\x20—\x20'+(_0x3ee05e instanceof Error?_0x3ee05e[_0x1da345(0x15d)]:_0x3ee05e)});}if(Array[_0x1da345(0x156)](_0x142121[_0x1da345(0x113)]))for(const _0x574117 of _0x142121[_0x1da345(0x113)]){const _0x34b70d=_0x333327[_0x1da345(0x15b)](_0x574117[_0x1da345(0xdd)]);try{fs_1[_0x1da345(0xdf)]['mkdirSync'](_0x34b70d,{'recursive':!![]}),_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0x137),'message':'群工作目录已就绪:\x20'+(_0x574117[_0x1da345(0x122)]||_0x574117[_0x1da345(0xdd)])});}catch(_0x43ba5c){_0x43ad2b[_0x1da345(0x114)]({'level':_0x1da345(0xe4),'message':'群工作目录创建失败:\x20'+_0x34b70d+_0x1da345(0x140)+(_0x43ba5c instanceof Error?_0x43ba5c['message']:_0x43ba5c)});}}console['log']('\x0a['+(0x0,session_1['timestamp'])()+_0x1da345(0xf4));const _0x36ef27=_0x43ad2b[_0x1da345(0x15a)](_0x200672=>_0x200672[_0x1da345(0x100)]===_0x1da345(0x13a));for(const _0x1e6cd3 of _0x43ad2b){const _0x4a98a0=_0x1e6cd3[_0x1da345(0x100)]===_0x1da345(0x137)?'✓':_0x1e6cd3[_0x1da345(0x100)]===_0x1da345(0x13a)?'✗':'⚠',_0x293c64=_0x1e6cd3[_0x1da345(0x100)]===_0x1da345(0x137)?_0x1e6cd3[_0x1da345(0x15d)]:_0x1e6cd3['level']===_0x1da345(0x13a)?'[FATAL]\x20'+_0x1e6cd3[_0x1da345(0x15d)]:_0x1da345(0xd7)+_0x1e6cd3[_0x1da345(0x15d)];console[_0x1da345(0x14b)]('\x20\x20'+_0x4a98a0+'\x20'+_0x293c64);}const _0x51d59b=_0x43ad2b[_0x1da345(0x14d)](_0x2b71c0=>_0x2b71c0[_0x1da345(0x100)]==='PASS')[_0x1da345(0xf1)],_0xdd3330=_0x43ad2b['filter'](_0x57fff2=>_0x57fff2[_0x1da345(0x100)]==='WARN')[_0x1da345(0xf1)],_0x483243=_0x43ad2b[_0x1da345(0x14d)](_0x1a1d69=>_0x1a1d69[_0x1da345(0x100)]==='FATAL')['length'];console[_0x1da345(0x14b)]('['+(0x0,session_1[_0x1da345(0x11b)])()+_0x1da345(0x142)+_0x51d59b+_0x1da345(0xf7)+_0xdd3330+_0x1da345(0x10f)+_0x483243+'\x20致命'),console['log']('['+(0x0,session_1[_0x1da345(0x11b)])()+_0x1da345(0x12f)),_0x36ef27&&(console[_0x1da345(0x160)]('['+(0x0,session_1['timestamp'])()+_0x1da345(0x121)),process[_0x1da345(0xd8)](0x1));}
|
|
1
|
+
'use strict';const a1_0x456413=a1_0x125f;function a1_0x125f(_0x2322b8,_0x55c887){_0x2322b8=_0x2322b8-0xa7;const _0x2d464d=a1_0x2d46();let _0x125f8b=_0x2d464d[_0x2322b8];return _0x125f8b;}(function(_0x8d2d5b,_0x4b8ce8){const _0x5707e7=a1_0x125f,_0x4f4026=_0x8d2d5b();while(!![]){try{const _0x37fee5=-parseInt(_0x5707e7(0xb2))/0x1+-parseInt(_0x5707e7(0x128))/0x2*(parseInt(_0x5707e7(0xc9))/0x3)+-parseInt(_0x5707e7(0xe9))/0x4*(parseInt(_0x5707e7(0x11c))/0x5)+parseInt(_0x5707e7(0x10f))/0x6+parseInt(_0x5707e7(0x10c))/0x7+parseInt(_0x5707e7(0xf4))/0x8+-parseInt(_0x5707e7(0xf2))/0x9*(-parseInt(_0x5707e7(0xd1))/0xa);if(_0x37fee5===_0x4b8ce8)break;else _0x4f4026['push'](_0x4f4026['shift']());}catch(_0x203ac8){_0x4f4026['push'](_0x4f4026['shift']());}}}(a1_0x2d46,0x2df3a));var __importDefault=this&&this['__importDefault']||function(_0x39459d){const _0x115bea=a1_0x125f;return _0x39459d&&_0x39459d[_0x115bea(0xa9)]?_0x39459d:{'default':_0x39459d};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports[a1_0x456413(0xfd)]=saveClientConfig,exports[a1_0x456413(0xf6)]=resetApiKeyCfg,exports[a1_0x456413(0xdc)]=scheduleApiKeyCfgDailyReset,exports[a1_0x456413(0xd6)]=settingLabel,exports[a1_0x456413(0x104)]=rotateApiKey,exports[a1_0x456413(0x11f)]=pickValidApiKey,exports[a1_0x456413(0xc4)]=ensureSettingsWithApiKey,exports[a1_0x456413(0xc7)]=isQuotaExhaustedError,exports['isAuthenticationError']=isAuthenticationError,exports[a1_0x456413(0x121)]=readApiKeyFromSettings,exports[a1_0x456413(0xea)]=getForceEnabledSettingsPath,exports['startupCheck']=startupCheck;function a1_0x2d46(){const _0x445905=['default','slice',']\x20==============================\x0a','./session','clientSecret\x20(钉钉\x20Stream\x20Client\x20密钥)','\x20个群配置','settings-tpl.json\x20根元素不是对象','apiKeyCfg.claudeSettings\x20为空,无可用\x20Key','29215HYPKIS','.cc-ding','whiteUserList','pickValidApiKey','keys','readApiKeyFromSettings','claudeSettings','getHomeDir','ANTHROPIC_AUTH_TOKEN','claude\x20命令不可用,请确认\x20Claude\x20Code\x20CLI\x20已安装','CLAUDE_SMALL_FAST_MODEL','settings-tpl.json','34faJCWU','settings-tpl.json\x20解析失败:\x20','exit','toISOString','...','PASS','level','settings-tpl.json\x20不存在:\x20','\x20警告,\x20','getFullYear','dateUtil','push','__esModule','linkConversationId','getClientDir','getMonth',',\x20model:\x20','isArray','config.json\x20','timestamp','clientSecret','256485YBmdUB','群工作目录已就绪:\x20','add','settings-tpl.json\x20有效,env\x20包含:\x20','filter','owner\x20(机器人\x20owner)','pipe','conversationId','\x20致命','which\x20claude','apiKey','apiKeyCfg.claudeSettings\x20不是数组,API\x20Key\x20轮换功能不可用','\x20缺少\x20apiKey','conversations[','random','\x20isValid\x20类型异常:\x20','config.json\x20缺少必填字段:\x20',']\x20启动自检发现致命错误,进程退出','ensureSettingsWithApiKey','[WARN]\x20','settings-ding.json','isQuotaExhaustedError','\x20conversationId\x20重复:\x20','46971EZvtsP','path','conversations','工作目录不可写:\x20','join','some','message','readFileSync','4078590VtDhNZ','群工作目录创建失败:\x20',']\x20已写入\x20Claude\x20配置到\x20','utf-8','resetTime','settingLabel','test','env',',\x20smallModel:\x20',']\x20apiKeyCfg\x20已重置\x20(所有\x20Claude\x20Setting\x20isValid=true)','\x20缺少\x20model','scheduleApiKeyCfgDailyReset','apiKeyCfg','boolean',']\x20从模板创建\x20settings-ding.json:\x20','conversations\x20共\x20','getConversationDir','existsSync','conversations\x20为空数组,可通过\x20/reg\x20命令动态注册','model','FATAL','format','baseUrl','log','140tCFMSL','getForceEnabledSettingsPath','conversationTitle','has','\x20—\x20','\x20apiKey\x20重复:\x20','stringify','WARN','memo','9SeODzh','isValid','509520wkVQIN','\x20缺少\x20conversationId','resetApiKeyCfg',',创建\x20settings-ding.json\x20时将使用空模板','utils-ok','getTime','writeFileSync','/config.json',']\x20检测到\x20settings-ding.json\x20FORCE_ENABLE=','saveClientConfig','getDate',']\x20==========\x20启动自检\x20==========','length','claude\x20命令可用',']\x20Claude\x20Setting\x20已失效:\x20','\x22\x20未在\x20conversations\x20中找到','rotateApiKey','ANTHROPIC_BASE_URL','parse','\x20项,有效\x20','owner','smallModel','object',']\x20apiKeyCfg\x20每日重置已调度,下次重置:\x20','671349pwfSYb','\x20通过,\x20','apiKeyCfg.claudeSettings\x20共\x20','2087526KwKxzg','.claude','ANTHROPIC_MODEL','config','find'];a1_0x2d46=function(){return _0x445905;};return a1_0x2d46();}const fs_1=__importDefault(require('fs')),path_1=__importDefault(require(a1_0x456413(0xca))),child_process_1=require('child_process'),session_1=require(a1_0x456413(0x117)),utils_ok_1=require(a1_0x456413(0xf8));function saveClientConfig(_0x57d208){const _0x24e7bb=a1_0x456413,_0x491d4b=_0x57d208[_0x24e7bb(0xab)]()+_0x24e7bb(0xfb);try{fs_1['default'][_0x24e7bb(0xfa)](_0x491d4b,JSON[_0x24e7bb(0xef)](_0x57d208[_0x24e7bb(0x112)],null,0x2),'utf-8');}catch(_0xee673){console['error']('['+(0x0,session_1[_0x24e7bb(0xb0)])()+']\x20保存\x20config.json\x20失败:',_0xee673);}}function resetApiKeyCfg(_0x2a9ab5){const _0x46343e=a1_0x456413,_0x585bc4=_0x2a9ab5[_0x46343e(0x112)][_0x46343e(0xdd)];if(!_0x585bc4)return;const _0x35e080=new Date();_0x585bc4['resetTime']=utils_ok_1[_0x46343e(0xa7)]['mm'](_0x35e080[_0x46343e(0xf9)]())[_0x46343e(0xe6)]('YYYY-MM-DD\x20HH:mm:ss');let _0xe07065=0x0;for(const _0x3bb3d3 of _0x585bc4['claudeSettings']){!_0x3bb3d3[_0x46343e(0xf3)]&&(_0x3bb3d3['isValid']=!![],_0xe07065++);}_0xe07065>0x0&&console[_0x46343e(0xe8)]('['+(0x0,session_1[_0x46343e(0xb0)])()+']\x20'+_0xe07065+'\x20个已失效\x20Claude\x20Setting\x20重新标记为有效'),saveClientConfig(_0x2a9ab5),console[_0x46343e(0xe8)]('['+(0x0,session_1[_0x46343e(0xb0)])()+_0x46343e(0xda));}function scheduleApiKeyCfgDailyReset(_0x23c28b){const _0x5138b2=()=>{const _0x54fbae=a1_0x125f,_0x4abd55=new Date(),_0x431ffc=new Date(_0x4abd55[_0x54fbae(0x131)](),_0x4abd55[_0x54fbae(0xac)](),_0x4abd55[_0x54fbae(0xfe)]()+0x1,0x0,0x0,0x0,0x0),_0x53e0be=_0x431ffc[_0x54fbae(0xf9)]()-_0x4abd55[_0x54fbae(0xf9)]();setTimeout(()=>{const _0x337bc5=_0x54fbae;console[_0x337bc5(0xe8)]('['+(0x0,session_1[_0x337bc5(0xb0)])()+']\x20定时重置\x20apiKeyCfg\x20(每天0点)'),resetApiKeyCfg(_0x23c28b),_0x5138b2();},_0x53e0be),console[_0x54fbae(0xe8)]('['+(0x0,session_1[_0x54fbae(0xb0)])()+_0x54fbae(0x10b)+_0x431ffc[_0x54fbae(0x12b)]());};_0x5138b2();}function settingLabel(_0x349385){const _0xd39266=a1_0x456413;return _0x349385[_0xd39266(0xf1)]?_0x349385[_0xd39266(0xf1)]:_0xd39266(0x12c)+_0x349385[_0xd39266(0xbc)][_0xd39266(0x115)](-0x6);}function findSettingLabel(_0x216c79,_0x8db208){const _0x55955a=a1_0x456413,_0x30e9d6=_0x216c79[_0x55955a(0x113)](_0x245786=>_0x245786['apiKey']===_0x8db208);return _0x30e9d6?settingLabel(_0x30e9d6):_0x55955a(0x12c)+_0x8db208['slice'](-0x6);}function rotateApiKey(_0x5dfeeb,_0x4fbfe4){const _0x218b8b=a1_0x456413,_0x12c5f6=_0x5dfeeb[_0x218b8b(0x112)]['apiKeyCfg'];if(!_0x12c5f6)return null;for(const _0x55972d of _0x12c5f6['claudeSettings']){if(_0x55972d[_0x218b8b(0xbc)]===_0x4fbfe4&&_0x55972d['isValid']){_0x55972d[_0x218b8b(0xf3)]=![];break;}}const _0x530b84=_0x12c5f6[_0x218b8b(0x122)]['filter'](_0xc75af3=>_0xc75af3[_0x218b8b(0xf3)])[_0x218b8b(0x100)],_0x1507ca=findSettingLabel(_0x12c5f6[_0x218b8b(0x122)],_0x4fbfe4);return console[_0x218b8b(0xe8)]('['+(0x0,session_1[_0x218b8b(0xb0)])()+_0x218b8b(0x102)+_0x1507ca+',\x20剩余有效:\x20'+_0x530b84),saveClientConfig(_0x5dfeeb),pickValidApiKey(_0x5dfeeb);}function pickValidApiKey(_0x3eb232){const _0x312d9a=a1_0x456413,_0x3bfbb7=_0x3eb232[_0x312d9a(0x112)]['apiKeyCfg'];if(!_0x3bfbb7)return null;const _0xe7ac5=_0x3bfbb7[_0x312d9a(0x122)][_0x312d9a(0xb6)](_0xe5f137=>_0xe5f137[_0x312d9a(0xf3)]);if(_0xe7ac5['length']===0x0)return null;return _0xe7ac5[Math['floor'](Math[_0x312d9a(0xc0)]()*_0xe7ac5[_0x312d9a(0x100)])];}function ensureSettingsWithApiKey(_0x403d89,_0x42d31e){const _0x243186=a1_0x456413,_0x5b20ce=path_1[_0x243186(0x114)]['join'](_0x403d89,_0x243186(0x110)),_0x448ece=path_1[_0x243186(0x114)][_0x243186(0xcd)](_0x5b20ce,'settings-ding.json');let _0x527e0a={};if(fs_1[_0x243186(0x114)]['existsSync'](_0x448ece))try{_0x527e0a=JSON['parse'](fs_1[_0x243186(0x114)][_0x243186(0xd0)](_0x448ece,_0x243186(0xd4)));}catch{_0x527e0a={};}else{const _0x2da54f=path_1['default'][_0x243186(0xcd)]((0x0,session_1[_0x243186(0x123)])(),_0x243186(0x11d),_0x243186(0x127));if(fs_1[_0x243186(0x114)][_0x243186(0xe2)](_0x2da54f))try{_0x527e0a=JSON[_0x243186(0x106)](fs_1['default'][_0x243186(0xd0)](_0x2da54f,_0x243186(0xd4))),console[_0x243186(0xe8)]('['+(0x0,session_1[_0x243186(0xb0)])()+_0x243186(0xdf)+_0x2da54f);}catch{_0x527e0a={};}}!_0x527e0a[_0x243186(0xd8)]&&(_0x527e0a[_0x243186(0xd8)]={});let _0x536c7e=![];_0x527e0a[_0x243186(0xd8)][_0x243186(0x124)]!==_0x42d31e['apiKey']&&(_0x527e0a[_0x243186(0xd8)][_0x243186(0x124)]=_0x42d31e[_0x243186(0xbc)],_0x536c7e=!![]);_0x42d31e[_0x243186(0xe7)]&&_0x527e0a[_0x243186(0xd8)]['ANTHROPIC_BASE_URL']!==_0x42d31e[_0x243186(0xe7)]&&(_0x527e0a[_0x243186(0xd8)][_0x243186(0x105)]=_0x42d31e[_0x243186(0xe7)],_0x536c7e=!![]);_0x42d31e[_0x243186(0xe4)]&&_0x527e0a['env'][_0x243186(0x111)]!==_0x42d31e[_0x243186(0xe4)]&&(_0x527e0a['env'][_0x243186(0x111)]=_0x42d31e[_0x243186(0xe4)],_0x536c7e=!![]);const _0x29297a=_0x42d31e[_0x243186(0x109)]||_0x42d31e['model'];return _0x29297a&&_0x527e0a['env'][_0x243186(0x126)]!==_0x29297a&&(_0x527e0a[_0x243186(0xd8)]['CLAUDE_SMALL_FAST_MODEL']=_0x29297a,_0x536c7e=!![]),_0x536c7e&&(fs_1[_0x243186(0x114)]['mkdirSync'](_0x5b20ce,{'recursive':!![]}),fs_1[_0x243186(0x114)][_0x243186(0xfa)](_0x448ece,JSON['stringify'](_0x527e0a,null,0x2),_0x243186(0xd4)),console[_0x243186(0xe8)]('['+(0x0,session_1[_0x243186(0xb0)])()+_0x243186(0xd3)+_0x448ece+'\x20('+settingLabel(_0x42d31e)+_0x243186(0xad)+_0x42d31e[_0x243186(0xe4)]+_0x243186(0xd9)+_0x29297a+')')),_0x448ece;}function isQuotaExhaustedError(_0x1eca93){const _0x5642fb=a1_0x456413;if(/Request\s+rejected.*429/i[_0x5642fb(0xd7)](_0x1eca93))return!![];if(/429.*Request\s+rejected/i['test'](_0x1eca93))return!![];if(/429.*(?:超过.*上限|使用上限|配额|quota|capacity)/i[_0x5642fb(0xd7)](_0x1eca93))return!![];if(/(?:超过.*上限|使用上限|配额|quota|capacity).*429/i[_0x5642fb(0xd7)](_0x1eca93))return!![];return![];}function isAuthenticationError(_0x434481){const _0x5285ad=a1_0x456413;if(/authentication_error/i[_0x5285ad(0xd7)](_0x434481))return!![];if(/401.*(?:未授权|unauthorized|invalid\s*(?:key|token|api)|auth)/i[_0x5285ad(0xd7)](_0x434481))return!![];if(/(?:未授权|unauthorized|invalid\s*(?:key|token|api)|auth).*401/i['test'](_0x434481))return!![];return![];}function readApiKeyFromSettings(_0x31972b){const _0x201b62=a1_0x456413,_0x239751=path_1[_0x201b62(0x114)][_0x201b62(0xcd)](_0x31972b,'.claude',_0x201b62(0xc6));if(!fs_1[_0x201b62(0x114)][_0x201b62(0xe2)](_0x239751))return null;try{const _0xe85b1a=JSON[_0x201b62(0x106)](fs_1[_0x201b62(0x114)][_0x201b62(0xd0)](_0x239751,_0x201b62(0xd4)));return _0xe85b1a[_0x201b62(0xd8)]?.[_0x201b62(0x124)]||null;}catch{return null;}}function getForceEnabledSettingsPath(_0x35eef9){const _0xe00be4=a1_0x456413,_0x19a6c5=path_1['default'][_0xe00be4(0xcd)](_0x35eef9,_0xe00be4(0x110),'settings-ding.json');if(!fs_1[_0xe00be4(0x114)]['existsSync'](_0x19a6c5))return null;try{const _0x1c2687=JSON[_0xe00be4(0x106)](fs_1[_0xe00be4(0x114)][_0xe00be4(0xd0)](_0x19a6c5,_0xe00be4(0xd4))),_0x4ee1d3=_0x1c2687[_0xe00be4(0xd8)]?.['FORCE_ENABLE'];if(_0x4ee1d3!==undefined&&_0x4ee1d3!==![]&&_0x4ee1d3!=='')return console[_0xe00be4(0xe8)]('['+(0x0,session_1[_0xe00be4(0xb0)])()+_0xe00be4(0xfc)+_0x4ee1d3+',强制使用该配置'),_0x19a6c5;return null;}catch{return null;}}function startupCheck(_0x2f159f){const _0xa5f20c=a1_0x456413,_0x5dc717=[],_0x4ff22e=_0x2f159f['config'],_0x220af4=_0x2f159f[_0xa5f20c(0xab)](),_0x491db5=[{'key':_0xa5f20c(0xb1),'label':_0xa5f20c(0x118)},{'key':_0xa5f20c(0x11e),'label':'whiteUserList\x20(白名单用户)'},{'key':_0xa5f20c(0x108),'label':_0xa5f20c(0xb7)}];for(const {key:_0xb88534,label:_0x471542}of _0x491db5){const _0x50b952=_0x4ff22e[_0xb88534];_0x50b952===undefined||_0x50b952===null||_0x50b952===''||Array[_0xa5f20c(0xae)](_0x50b952)&&_0x50b952[_0xa5f20c(0x100)]===0x0?_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xe5),'message':_0xa5f20c(0xc2)+_0x471542}):_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0xaf)+_0x471542+'\x20✓'});}if(!Array[_0xa5f20c(0xae)](_0x4ff22e[_0xa5f20c(0xcb)]))_0x5dc717[_0xa5f20c(0xa8)]({'level':'FATAL','message':'conversations\x20应为数组或已配置'});else{if(_0x4ff22e['conversations'][_0xa5f20c(0x100)]===0x0)_0x5dc717['push']({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0xe3)});else{const _0x405c9c=new Set();for(let _0x18a2a7=0x0;_0x18a2a7<_0x4ff22e[_0xa5f20c(0xcb)]['length'];_0x18a2a7++){const _0x482d52=_0x4ff22e[_0xa5f20c(0xcb)][_0x18a2a7],_0x202b21=_0xa5f20c(0xbf)+_0x18a2a7+']';if(!_0x482d52['conversationId'])_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xe5),'message':_0x202b21+_0xa5f20c(0xf5)});else _0x405c9c[_0xa5f20c(0xec)](_0x482d52['conversationId'])?_0x5dc717[_0xa5f20c(0xa8)]({'level':'WARN','message':_0x202b21+_0xa5f20c(0xc8)+_0x482d52['conversationId']}):_0x405c9c[_0xa5f20c(0xb4)](_0x482d52[_0xa5f20c(0xb9)]);_0x482d52[_0xa5f20c(0xaa)]&&!_0x4ff22e[_0xa5f20c(0xcb)][_0xa5f20c(0xce)](_0x3bd877=>_0x3bd877[_0xa5f20c(0xb9)]===_0x482d52[_0xa5f20c(0xaa)])&&_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0x202b21+'\x20linkConversationId\x20\x22'+_0x482d52['linkConversationId']+_0xa5f20c(0x103)});}_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0xe0)+_0x4ff22e[_0xa5f20c(0xcb)]['length']+_0xa5f20c(0x119)});}}if(_0x4ff22e[_0xa5f20c(0xdd)]){const _0x45d464=_0x4ff22e[_0xa5f20c(0xdd)];_0x45d464['resetTime']&&_0x5dc717[_0xa5f20c(0xa8)]({'level':'PASS','message':'apiKeyCfg\x20上次重置时间:\x20'+_0x45d464[_0xa5f20c(0xd5)]});if(!Array['isArray'](_0x45d464[_0xa5f20c(0x122)]))_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0xa5f20c(0xbd)});else{if(_0x45d464[_0xa5f20c(0x122)][_0xa5f20c(0x100)]===0x0)_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0xa5f20c(0x11b)});else{const _0x2c2488=new Set();for(let _0xf2cc34=0x0;_0xf2cc34<_0x45d464[_0xa5f20c(0x122)][_0xa5f20c(0x100)];_0xf2cc34++){const _0x1078cc=_0x45d464['claudeSettings'][_0xf2cc34],_0x33dc9f='apiKeyCfg.claudeSettings['+_0xf2cc34+']';if(!_0x1078cc['apiKey'])_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xe5),'message':_0x33dc9f+_0xa5f20c(0xbe)});else _0x2c2488[_0xa5f20c(0xec)](_0x1078cc[_0xa5f20c(0xbc)])?_0x5dc717[_0xa5f20c(0xa8)]({'level':'WARN','message':_0x33dc9f+_0xa5f20c(0xee)+settingLabel(_0x1078cc)}):_0x2c2488['add'](_0x1078cc[_0xa5f20c(0xbc)]);!_0x1078cc[_0xa5f20c(0xe7)]&&_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0x33dc9f+'\x20缺少\x20baseUrl'}),!_0x1078cc[_0xa5f20c(0xe4)]&&_0x5dc717['push']({'level':_0xa5f20c(0xf0),'message':_0x33dc9f+_0xa5f20c(0xdb)}),typeof _0x1078cc[_0xa5f20c(0xf3)]!==_0xa5f20c(0xde)&&_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0x33dc9f+_0xa5f20c(0xc1)+typeof _0x1078cc['isValid']});}const _0x40e1fc=_0x45d464[_0xa5f20c(0x122)][_0xa5f20c(0xb6)](_0x441640=>_0x441640['isValid'])[_0xa5f20c(0x100)];_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0x10e)+_0x45d464[_0xa5f20c(0x122)][_0xa5f20c(0x100)]+_0xa5f20c(0x107)+_0x40e1fc});}}}const _0x3dacab=path_1[_0xa5f20c(0x114)][_0xa5f20c(0xcd)]((0x0,session_1['getHomeDir'])(),_0xa5f20c(0x11d),'settings-tpl.json');if(fs_1[_0xa5f20c(0x114)][_0xa5f20c(0xe2)](_0x3dacab))try{const _0x2da787=JSON['parse'](fs_1['default'][_0xa5f20c(0xd0)](_0x3dacab,_0xa5f20c(0xd4)));if(typeof _0x2da787!==_0xa5f20c(0x10a)||_0x2da787===null)_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0xa5f20c(0x11a)});else{if(!_0x2da787[_0xa5f20c(0xd8)]||typeof _0x2da787[_0xa5f20c(0xd8)]!=='object')_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':'settings-tpl.json\x20缺少\x20env\x20字段,创建\x20settings-ding.json\x20时将不包含预配置环境变量'});else{const _0x3b17c1=Object[_0xa5f20c(0x120)](_0x2da787[_0xa5f20c(0xd8)]);_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0xb5)+(_0x3b17c1['join'](',\x20')||'(空)')});}}}catch(_0x443629){_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xf0),'message':_0xa5f20c(0x129)+(_0x443629 instanceof Error?_0x443629['message']:_0x443629)});}else _0x5dc717['push']({'level':_0xa5f20c(0xf0),'message':_0xa5f20c(0x12f)+_0x3dacab+_0xa5f20c(0xf7)});try{(0x0,child_process_1['execSync'])(_0xa5f20c(0xbb),{'stdio':_0xa5f20c(0xb8)}),_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0x101)});}catch{_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xe5),'message':_0xa5f20c(0x125)});}try{const _0xbbeccc=path_1[_0xa5f20c(0x114)][_0xa5f20c(0xcd)](_0x220af4,'.healthcheck');fs_1[_0xa5f20c(0x114)][_0xa5f20c(0xfa)](_0xbbeccc,'ok',_0xa5f20c(0xd4)),fs_1['default']['unlinkSync'](_0xbbeccc),_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':'工作目录可写:\x20'+_0x220af4});}catch(_0x268cb2){_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0xe5),'message':_0xa5f20c(0xcc)+_0x220af4+_0xa5f20c(0xed)+(_0x268cb2 instanceof Error?_0x268cb2['message']:_0x268cb2)});}if(Array['isArray'](_0x4ff22e[_0xa5f20c(0xcb)]))for(const _0x9d62dc of _0x4ff22e[_0xa5f20c(0xcb)]){const _0x17023c=_0x2f159f[_0xa5f20c(0xe1)](_0x9d62dc[_0xa5f20c(0xb9)]);try{fs_1[_0xa5f20c(0x114)]['mkdirSync'](_0x17023c,{'recursive':!![]}),_0x5dc717[_0xa5f20c(0xa8)]({'level':_0xa5f20c(0x12d),'message':_0xa5f20c(0xb3)+(_0x9d62dc[_0xa5f20c(0xeb)]||_0x9d62dc['conversationId'])});}catch(_0x36c496){_0x5dc717[_0xa5f20c(0xa8)]({'level':'WARN','message':_0xa5f20c(0xd2)+_0x17023c+_0xa5f20c(0xed)+(_0x36c496 instanceof Error?_0x36c496[_0xa5f20c(0xcf)]:_0x36c496)});}}console[_0xa5f20c(0xe8)]('\x0a['+(0x0,session_1[_0xa5f20c(0xb0)])()+_0xa5f20c(0xff));const _0x47b19d=_0x5dc717[_0xa5f20c(0xce)](_0x2a2e30=>_0x2a2e30[_0xa5f20c(0x12e)]===_0xa5f20c(0xe5));for(const _0x21bd38 of _0x5dc717){const _0x1ceb28=_0x21bd38[_0xa5f20c(0x12e)]===_0xa5f20c(0x12d)?'✓':_0x21bd38[_0xa5f20c(0x12e)]===_0xa5f20c(0xe5)?'✗':'⚠',_0x4348c6=_0x21bd38[_0xa5f20c(0x12e)]===_0xa5f20c(0x12d)?_0x21bd38[_0xa5f20c(0xcf)]:_0x21bd38[_0xa5f20c(0x12e)]==='FATAL'?'[FATAL]\x20'+_0x21bd38[_0xa5f20c(0xcf)]:_0xa5f20c(0xc5)+_0x21bd38[_0xa5f20c(0xcf)];console['log']('\x20\x20'+_0x1ceb28+'\x20'+_0x4348c6);}const _0x45b838=_0x5dc717[_0xa5f20c(0xb6)](_0x5abbfb=>_0x5abbfb[_0xa5f20c(0x12e)]===_0xa5f20c(0x12d))[_0xa5f20c(0x100)],_0x21fbc1=_0x5dc717[_0xa5f20c(0xb6)](_0x4a3a62=>_0x4a3a62[_0xa5f20c(0x12e)]===_0xa5f20c(0xf0))[_0xa5f20c(0x100)],_0x4dc19c=_0x5dc717[_0xa5f20c(0xb6)](_0x25703d=>_0x25703d[_0xa5f20c(0x12e)]===_0xa5f20c(0xe5))[_0xa5f20c(0x100)];console['log']('['+(0x0,session_1[_0xa5f20c(0xb0)])()+']\x20自检完成:\x20'+_0x45b838+_0xa5f20c(0x10d)+_0x21fbc1+_0xa5f20c(0x130)+_0x4dc19c+_0xa5f20c(0xba)),console[_0xa5f20c(0xe8)]('['+(0x0,session_1[_0xa5f20c(0xb0)])()+_0xa5f20c(0x116)),_0x47b19d&&(console['error']('['+(0x0,session_1[_0xa5f20c(0xb0)])()+_0xa5f20c(0xc3)),process[_0xa5f20c(0x12a)](0x1));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const a2_0xfaab8f=a2_0x18a6;(function(_0x6c31fe,_0x2ea50f){const _0x26f4eb=a2_0x18a6,_0x39e333=_0x6c31fe();while(!![]){try{const _0x124e88=parseInt(_0x26f4eb(0x1a1))/0x1*(parseInt(_0x26f4eb(0x143))/0x2)+parseInt(_0x26f4eb(0x1ce))/0x3*(-parseInt(_0x26f4eb(0x215))/0x4)+-parseInt(_0x26f4eb(0x269))/0x5+parseInt(_0x26f4eb(0x229))/0x6+-parseInt(_0x26f4eb(0x234))/0x7*(-parseInt(_0x26f4eb(0x14d))/0x8)+-parseInt(_0x26f4eb(0x23a))/0x9*(-parseInt(_0x26f4eb(0x155))/0xa)+-parseInt(_0x26f4eb(0x19a))/0xb;if(_0x124e88===_0x2ea50f)break;else _0x39e333['push'](_0x39e333['shift']());}catch(_0x3f70c2){_0x39e333['push'](_0x39e333['shift']());}}}(a2_0x1f00,0xa0bdd));function a2_0x18a6(_0x40a520,_0xafcf40){_0x40a520=_0x40a520-0x121;const _0x1f000d=a2_0x1f00();let _0x18a6f4=_0x1f000d[_0x40a520];return _0x18a6f4;}var __createBinding=this&&this[a2_0xfaab8f(0x1b8)]||(Object['create']?function(_0x727dfc,_0x38ce6d,_0x55e903,_0x5925a0){const _0x71a27d=a2_0xfaab8f;if(_0x5925a0===undefined)_0x5925a0=_0x55e903;var _0x3a5592=Object[_0x71a27d(0x1f2)](_0x38ce6d,_0x55e903);(!_0x3a5592||(_0x71a27d(0x16e)in _0x3a5592?!_0x38ce6d['__esModule']:_0x3a5592[_0x71a27d(0x133)]||_0x3a5592['configurable']))&&(_0x3a5592={'enumerable':!![],'get':function(){return _0x38ce6d[_0x55e903];}}),Object[_0x71a27d(0x275)](_0x727dfc,_0x5925a0,_0x3a5592);}:function(_0x282193,_0x11f3b9,_0x38f085,_0xd70309){if(_0xd70309===undefined)_0xd70309=_0x38f085;_0x282193[_0xd70309]=_0x11f3b9[_0x38f085];}),__setModuleDefault=this&&this[a2_0xfaab8f(0x1c3)]||(Object[a2_0xfaab8f(0x17a)]?function(_0x113cfa,_0x49e3e1){Object['defineProperty'](_0x113cfa,'default',{'enumerable':!![],'value':_0x49e3e1});}:function(_0x5cfd6d,_0x57c12c){const _0x8f6e52=a2_0xfaab8f;_0x5cfd6d[_0x8f6e52(0x221)]=_0x57c12c;}),__importStar=this&&this[a2_0xfaab8f(0x149)]||(function(){var _0x352c48=function(_0x59dbc0){return _0x352c48=Object['getOwnPropertyNames']||function(_0x54e545){const _0x4548c4=a2_0x18a6;var _0x3113e5=[];for(var _0x2b7d6c in _0x54e545)if(Object[_0x4548c4(0x1ec)][_0x4548c4(0x1d6)][_0x4548c4(0x25a)](_0x54e545,_0x2b7d6c))_0x3113e5[_0x3113e5[_0x4548c4(0x153)]]=_0x2b7d6c;return _0x3113e5;},_0x352c48(_0x59dbc0);};return function(_0x4b40ad){const _0x8ebf7f=a2_0x18a6;if(_0x4b40ad&&_0x4b40ad['__esModule'])return _0x4b40ad;var _0x429037={};if(_0x4b40ad!=null){for(var _0x2de7d1=_0x352c48(_0x4b40ad),_0x272037=0x0;_0x272037<_0x2de7d1[_0x8ebf7f(0x153)];_0x272037++)if(_0x2de7d1[_0x272037]!=='default')__createBinding(_0x429037,_0x4b40ad,_0x2de7d1[_0x272037]);}return __setModuleDefault(_0x429037,_0x4b40ad),_0x429037;};}()),__importDefault=this&&this[a2_0xfaab8f(0x1e9)]||function(_0x1381e4){const _0x1b2810=a2_0xfaab8f;return _0x1381e4&&_0x1381e4[_0x1b2810(0x1ed)]?_0x1381e4:{'default':_0x1381e4};};function a2_0x1f00(){const _0x2db469=['userIdToPhone','\x20&&\x20','start\x20cmd\x20/k\x20\x22cd\x20/d\x20','conversationId','[bash]\x20发送消息失败:','./messaging','stringify','runTaskHandlerLoop','processPictureMessage','connect','saveActiveSession','-\x20**linkConversationId:**\x20','`\x0a\x0a💡\x20格式:\x20`分\x20时\x20日\x20月\x20周`,如\x20`0\x209\x20*\x20*\x20*`','⚠️\x20图片下载失败,请重试或使用文字描述','/cron\x20list','✅\x20群配置已刷新','saveTask','hashConversationId','messageId','__createBinding','❌\x20路径超出工作目录范围','⚠️\x20未配置\x20apiKeyCfg,无需重置','countTodoTask','min','error','botMsgGetCallback','appendSessionLog','apiKeyCfg','📂\x20工作目录:\x20`','parseVersionCommand','__setModuleDefault','###\x20💬\x20当前会话信息\x0a无活跃会话','getPkgVersion','preBash','未注册的机器人,群:','isFile','getTasksDir','startupCheck','taskHandlerCount','❌\x20路径不能使用绝对路径(不能以\x20/\x20开头)',']\x20任务处理器数量:\x20','78GBcdqU','path','**\x20已暂停','❌\x20目录创建失败:\x20`','/cron\x20pause\x20','Error:\x20DingStreamClient\x20init\x20failed.','sanitizeOutput','parseBashCommand','hasOwnProperty','isMobile','tasksDeleted','🧹\x20缓存清理完成','sessionDir','extractQuoteInfo','dingToken','create_nl','创建定时任务:\x20','now','✅\x20目录创建成功:\x20`','pause','projUtil','),\x20发送者=','child_process','senderStaffId','\x20条消息\x0a','toggleJob','getCommandByName','__importDefault','truncateMsg','analyzeAndCreate','prototype','__esModule','\x0a当前白名单:\x20','input','cronEngine','YYYY-MM-DD-HH-mm-ss','getOwnPropertyDescriptor',',\x20内容=','\x0a💡\x20可编辑\x20config.json\x20补充更多配置','listJobs','\x0a\x0a💡\x20你也可以直接指定cron表达式:\x20`/cron\x200\x209\x20*\x20*\x20*\x20任务描述`','✅\x20已添加\x20','appendFileSync','formatSessionInfo',']\x20群配置:\x20','removeJob','replace','**版本:**\x20','open\x20\x22','hasNotifyCapability','暂停定时任务\x20','cronExpression',']\x20启动任务处理器\x20#','parseClaudeStreamLine','getOrCreateLogSession','✅\x20已移除\x20','map',')...','atSender',':**\x20','DingClaude','quoteMessageId','headers','✅\x20执行成功\x0a```\x0a','⚠️\x20目录已存在:\x20`','isOwner','🚀\x20请输入您的问题开始新会话','⏳\x20正在分析定时任务描述...','some','✅\x20已从队尾移除\x20','**\x20已恢复','149608gDvjse','log','❌\x20未找到定时任务:\x20','-\x20**群名称:**\x20','`\x0a最后修改时间:\x20','findIndex','-\x20**atSender:**\x20false\x20(不\x20@\x20发送人)','DEFAULT_TASK_HANDLER_COUNT','),\x20类型=','switchToSession','删除定时任务\x20','scheduleApiKeyCfgDailyReset','default','✅\x20文件创建成功:\x20`','requireOwner','conversationTitle','收到消息:\x20群=','CronEngine','\x20条)\x0a','findActiveSession','2533248kLSdNi','handleTask','层):\x0a```\x0a','getSessionsDir','staffId','readSessionLogTail','📋\x20**当前群白名单**\x0a','getConversationDir','handleCronCommand','⚠️\x20','findSubdirByName','7GlZJit','content','registerCallbackListener','sanitizeLogContent','任务处理器\x20#','platform','4122mSMQWl','sendDingMessage','handleMkdirCommand','resolveUserId','message','richText','###\x20📝\x20任务队列信息\x0a','✅\x20apiKeyCfg\x20已重置\x0a-\x20有效\x20Key\x20数:\x20','format','/cron\x20delete\x20','debug','errors','/task\x20','未找到定时任务:\x20','./task','job','getClientConfig','❌\x20无效的cron表达式:\x20`','parseMqCommand','resume','/v1.0/im/bot/messages/get','robotCode','catch','text','messageQueue','del','⚠️\x20无法解析手机号:\x20','###\x20🤖\x20群配置信息\x0a','✅\x20已删除','statSync','prompt','新会话命令中断正在执行的\x20Claude\x20进程','call','getDirectoryStructure','handleTouchCommand',']\x20钉钉机器人服务启动,clientId:\x20','linkConversationId','root','parseOpenCommand',']\x20注册新群:\x20','`\x0a原因:\x20','saveClientConfig','robot','✅\x20已清空消息队列,共移除\x20','恢复定时任务\x20','claudeSettings','mkdirSync','1088105ykGyJP','-\x20**receiveReply:**\x20false\x20(不回复确认消息)','\x0a```','(空,使用全局白名单)','-\x20会话目录:\x20','existsSync','⚠️\x20未找到已结束的会话','endSession','writeFileSync','📭\x20当前无排队消息','...','formatCronJobInfo','defineProperty','authCheck','📨\x20消息队列\x20(','useLocalOcr','then','cancelTask','isValid','isDirectory','resolveToUserId','user','\x20行日志:\x0a```\x0a','抱歉,您暂无使用权限,请联系应用机器人owner授权...','⚠️\x20当前无活跃会话或暂无日志','handleRmCommand','pictureDownloadCode','clientId','substring','conversations','getSessionId','activeSessions','❌\x20定时任务分析失败:\x20','writable','\x0a💡\x20活跃会话已保留','📋\x20任务已收到,完成后我会回复','start','\x0a...(输出已截断)','formatHelpOverview','config','⏸️\x20定时任务\x20**','processRichTextMessage','type','darwin','./session','rmSync','./commands','handleSessionMessage','./cron','2048676fnGBBh','parse','列出\x20','❌\x20路径已存在但不是文件:\x20`','❌\x20当前群未配置\x20dingToken\x20且无客户端级\x20defaultDingToken,\x20定时任务无法主动发送消息,\x20请联系管理员配置','Fatal\x20error','__importStar','resolveAllPhonesInConfig','count','/cron\x20','8057088GLlkya','✅\x20定时任务\x20**','run','startNewSession','imagesDeleted','\x20(展开','length','utf-8','9670YTmViV','explorer\x20\x22','whiteUserList','📋\x20最近\x20','❌\x20命令执行失败\x0a```\x0a','folder','push','**\x20的目录','list','startsWith','executeClaudeQuery','description','\x0a⚠️\x20错误:\x20','fetchQuotedMessage','isArray','📂\x20当前工作目录:\x0a```\x0a','\x0a-\x20重置时间:\x20','quoteText','getActiveSessionsFile','all','YYYY-MM-DD\x20HH:mm:ss','parseTouchCommand','-\x20**群ID:**\x20','sendCronNoNotifyError','exec','get','resolve','updateSessionFile','receiveReply','📂\x20已在文件管理器中打开:\x0a```\x0a','defaultDingToken','mtime','slice','❌\x20未找到命令:\x20**','join','收到新会话命令,结束旧会话:\x20群=','cancel','create','parseCommandHelp','**\x0a\x0a💡\x20输入\x20`/help`\x20查看所有可用命令','trim','dingStreamClient','###\x20💬\x20当前会话信息\x0a','assistant','dateUtil','unlinkSync','getConversationConfig','splice','loadActiveSessions','isValidCronExpression','open\x20-a\x20Terminal\x20\x22','\x20到当前群白名单\x0a当前白名单:\x20','⚠️\x20该群未注册,请先使用\x20`/cfg`\x20命令注册','getClientDir','session','socketCallBackResponse','cancelAll','markdown','⚠️\x20文件已存在:\x20`','formatTaskInfo','debugLog','sessionsDeleted','timestamp','cleanCache','findLatestSession','resolveAndValidatePath','delete',']\x20[SYSTEM]:\x20创建会话用于记录\x20/cron\x20命令操作\x0a','finishTask','11529078sIgMLJ','❌\x20路径不存在或不是目录:\x20**','getSessionDir','.\x20**','senderNick','findHistorySession','\x0a\x0a**stderr:**\x0a```\x0a','1MgznNC','picture','test','❌\x20文件创建失败:\x20`'];a2_0x1f00=function(){return _0x2db469;};return a2_0x1f00();}Object[a2_0xfaab8f(0x275)](exports,a2_0xfaab8f(0x1ed),{'value':!![]}),exports['DingClaude']=void 0x0;const child_process_1=require(a2_0xfaab8f(0x1e4)),utils_ok_1=require('utils-ok'),fs_1=__importDefault(require('fs')),path_1=__importDefault(require(a2_0xfaab8f(0x1cf))),common_1=require('../common'),quote_1=require('./quote'),messaging_1=require('./messaging'),image_1=require('./image'),commands_1=require(a2_0xfaab8f(0x140)),messaging_2=require(a2_0xfaab8f(0x1aa)),claude_process_1=require('./claude-process'),session_1=require(a2_0xfaab8f(0x13e)),task_1=require(a2_0xfaab8f(0x248)),api_key_manager_1=require('./api-key-manager'),cron_1=require(a2_0xfaab8f(0x142)),TOOL_VERSION=(0x0,common_1[a2_0xfaab8f(0x1e2)])()[a2_0xfaab8f(0x1c5)]();class DingClaude{constructor(_0xf6fc17){const _0x54dbdb=a2_0xfaab8f;this['resolvedPhones']={},this[_0x54dbdb(0x131)]=new Map(),this['DEFAULT_SESSION_MAX_CONCURRENCY']=0x5,this[_0x54dbdb(0x21c)]=0x1,this['DEFAULT_TASK_QUEUE_SIZE']=0x32,this[_0x54dbdb(0x23b)]=_0x5de7f2=>(0x0,messaging_2[_0x54dbdb(0x23b)])(this,_0x5de7f2),this['sendClaudeResponseToDing']=(_0x3ad4d6,_0x2d9aa7,_0x120cf8,_0x4603c2)=>(0x0,messaging_2['sendClaudeResponseToDing'])(this,_0x3ad4d6,_0x2d9aa7,_0x120cf8,_0x4603c2),this['parseClaudeStreamLine']=claude_process_1[_0x54dbdb(0x203)],this['interruptClaudeProcess']=(_0xd7c46e,_0x7719e2)=>(0x0,claude_process_1['interruptClaudeProcess'])(_0xd7c46e,_0x7719e2),this['executeClaudeQuery']=(_0x21792c,_0x44c08a,_0xea89fa)=>(0x0,claude_process_1[_0x54dbdb(0x15f)])(this,_0x21792c,_0x44c08a,_0xea89fa),this[_0x54dbdb(0x18a)]=()=>(0x0,session_1['getClientDir'])(this),this[_0x54dbdb(0x24a)]=()=>(0x0,session_1[_0x54dbdb(0x24a)])(this),this[_0x54dbdb(0x276)]=(_0x102f49,_0x4f4736)=>(0x0,session_1[_0x54dbdb(0x276)])(this,_0x102f49,_0x4f4736),this[_0x54dbdb(0x20f)]=_0x15bc92=>(0x0,session_1['isOwner'])(this,_0x15bc92),this[_0x54dbdb(0x191)]=(_0x2760d1,..._0x44aea1)=>(0x0,session_1[_0x54dbdb(0x191)])(this,_0x2760d1,..._0x44aea1),this[_0x54dbdb(0x1b6)]=_0x1fd15c=>(0x0,session_1[_0x54dbdb(0x1b6)])(this,_0x1fd15c),this[_0x54dbdb(0x183)]=_0x2446ba=>(0x0,session_1[_0x54dbdb(0x183)])(this,_0x2446ba),this[_0x54dbdb(0x230)]=_0x1f653b=>(0x0,session_1[_0x54dbdb(0x230)])(this,_0x1f653b),this[_0x54dbdb(0x22c)]=_0x314def=>(0x0,session_1['getSessionsDir'])(this,_0x314def),this[_0x54dbdb(0x1c9)]=_0xe4fb5b=>(0x0,session_1['getTasksDir'])(this,_0xe4fb5b),this[_0x54dbdb(0x19c)]=_0x5e20fd=>(0x0,session_1['getSessionDir'])(this,_0x5e20fd),this[_0x54dbdb(0x130)]=session_1[_0x54dbdb(0x130)],this[_0x54dbdb(0x1f9)]=_0x271cec=>(0x0,session_1[_0x54dbdb(0x1f9)])(this,_0x271cec),this['readSessionLogTail']=(_0x455f28,_0x359618)=>(0x0,session_1['readSessionLogTail'])(this,_0x455f28,_0x359618),this[_0x54dbdb(0x228)]=_0xdfbc93=>(0x0,session_1[_0x54dbdb(0x228)])(this,_0xdfbc93),this[_0x54dbdb(0x19f)]=(_0x306341,_0x1fb9ee)=>(0x0,session_1[_0x54dbdb(0x19f)])(this,_0x306341,_0x1fb9ee),this[_0x54dbdb(0x195)]=_0x52a84e=>(0x0,session_1['findLatestSession'])(this,_0x52a84e),this['updateSessionFile']=(_0x2ea11c,_0x4da4db)=>(0x0,session_1[_0x54dbdb(0x170)])(this,_0x2ea11c,_0x4da4db),this['appendSessionLog']=session_1[_0x54dbdb(0x1bf)],this[_0x54dbdb(0x167)]=_0x796143=>(0x0,session_1['getActiveSessionsFile'])(this,_0x796143),this[_0x54dbdb(0x1af)]=_0x2fc951=>(0x0,session_1[_0x54dbdb(0x1af)])(this,_0x2fc951),this[_0x54dbdb(0x185)]=()=>(0x0,session_1[_0x54dbdb(0x185)])(this),this['endSession']=(_0x553796,_0x127848)=>(0x0,session_1[_0x54dbdb(0x270)])(this,_0x553796,_0x127848),this[_0x54dbdb(0x21e)]=(_0x1f72af,_0x1bf800,_0x7e5cb7,_0x459a13,_0x59192e)=>(0x0,session_1['switchToSession'])(this,_0x1f72af,_0x1bf800,_0x7e5cb7,_0x459a13,_0x59192e),this['startNewSession']=_0x2fe7c0=>(0x0,session_1[_0x54dbdb(0x150)])(this,_0x2fe7c0),this[_0x54dbdb(0x141)]=_0x4b9dfe=>(0x0,session_1[_0x54dbdb(0x141)])(this,_0x4b9dfe),this[_0x54dbdb(0x194)]=(_0x4500ee,_0x4eb57e=!![])=>(0x0,session_1['cleanCache'])(this,_0x4500ee,_0x4eb57e),this['formatTaskInfo']=()=>(0x0,task_1[_0x54dbdb(0x190)])(this),this[_0x54dbdb(0x123)]=(_0x4726f7,_0x48c6dd)=>(0x0,task_1[_0x54dbdb(0x123)])(this,_0x4726f7,_0x48c6dd),this[_0x54dbdb(0x1bb)]=()=>(0x0,task_1['countTodoTask'])(this),this['getOneTodoTask']=()=>(0x0,task_1['getOneTodoTask'])(this),this['finishTask']=_0x5865c0=>(0x0,task_1[_0x54dbdb(0x199)])(this,_0x5865c0),this[_0x54dbdb(0x22a)]=()=>(0x0,task_1[_0x54dbdb(0x22a)])(this),this[_0x54dbdb(0x1ac)]=()=>(0x0,task_1[_0x54dbdb(0x1ac)])(this),this[_0x54dbdb(0x1b5)]=_0x50dc4f=>(0x0,task_1[_0x54dbdb(0x1b5)])(this,_0x50dc4f),this[_0x54dbdb(0x12d)]=_0xf6fc17,this[_0x54dbdb(0x139)]=(0x0,session_1[_0x54dbdb(0x24a)])(this);try{this[_0x54dbdb(0x17e)]=new utils_ok_1['DingStreamClient']({'clientId':_0xf6fc17,'clientSecret':this['config']['clientSecret'],'keepAlive':!![],'debug':this[_0x54dbdb(0x139)][_0x54dbdb(0x244)]??![]});}catch(_0x2bc6a1){console[_0x54dbdb(0x1bd)](_0x54dbdb(0x1d3),_0x2bc6a1),process['exit'](0x1);}this['cronEngine']=new cron_1[(_0x54dbdb(0x226))](this);}async[a2_0xfaab8f(0x223)](_0x32a7cc,_0xfccc7f,_0x34b116){const _0x590fea=a2_0xfaab8f;if(!this[_0x590fea(0x20f)](_0x34b116))return await this[_0x590fea(0x23b)]({'conversationId':_0x32a7cc,'sessionWebhook':_0xfccc7f,'content':'❌\x20只有机器人\x20owner\x20才能执行此操作','msgType':_0x590fea(0x18e)}),![];return!![];}async[a2_0xfaab8f(0x231)](_0x35200e,_0x37e37b){const _0xe74416=a2_0xfaab8f,{conversationId:_0x3ec63b,sessionWebhook:_0x5f1954,senderStaffId:_0x18e071,senderNick:_0x347b7e,conversationConfig:_0x37fc78}=_0x37e37b;switch(_0x35200e['type']){case _0xe74416(0x15d):{const _0x21ab17=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78,!![]),_0x495e7c=this[_0xe74416(0x1f0)][_0xe74416(0x1f5)](_0x3ec63b);_0x21ab17[_0xe74416(0x1da)]&&(this['appendSessionLog'](_0x21ab17[_0xe74416(0x1da)],_0xe74416(0x127),_0xe74416(0x1b3)),this['appendSessionLog'](_0x21ab17[_0xe74416(0x1da)],_0xe74416(0x180),_0xe74416(0x145)+_0x495e7c[_0xe74416(0x153)]+'\x20个定时任务'));await this['sendDingMessage']({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':(0x0,cron_1['formatCronJobList'])(_0x495e7c),'msgType':'markdown'});return;}case _0xe74416(0x197):{const _0x3cee29=this[_0xe74416(0x1f0)][_0xe74416(0x1fb)](_0x35200e['id']),_0x5ed36e=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78);_0x5ed36e['sessionDir']&&(this['appendSessionLog'](_0x5ed36e[_0xe74416(0x1da)],_0xe74416(0x127),_0xe74416(0x243)+_0x35200e['id']),this[_0xe74416(0x1bf)](_0x5ed36e[_0xe74416(0x1da)],_0xe74416(0x180),_0x3cee29?_0xe74416(0x21f)+_0x35200e['id']:_0xe74416(0x247)+_0x35200e['id']));await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0x3cee29?_0xe74416(0x14e)+_0x35200e['id']+'**\x20已删除':_0xe74416(0x217)+_0x35200e['id'],'msgType':_0xe74416(0x18e)});return;}case _0xe74416(0x1e1):{const _0x584b90=this[_0xe74416(0x1f0)][_0xe74416(0x1e7)](_0x35200e['id'],![]),_0x3c513e=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78);_0x3c513e[_0xe74416(0x1da)]&&(this['appendSessionLog'](_0x3c513e[_0xe74416(0x1da)],'user',_0xe74416(0x1d2)+_0x35200e['id']),this[_0xe74416(0x1bf)](_0x3c513e[_0xe74416(0x1da)],'assistant',_0x584b90?_0xe74416(0x200)+_0x35200e['id']:_0xe74416(0x247)+_0x35200e['id']));await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0x584b90?_0xe74416(0x13a)+_0x35200e['id']+_0xe74416(0x1d0):_0xe74416(0x217)+_0x35200e['id'],'msgType':'markdown'});return;}case _0xe74416(0x24d):{const _0x90e134=this[_0xe74416(0x1f0)]['toggleJob'](_0x35200e['id'],!![]),_0x2124a9=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78);_0x2124a9[_0xe74416(0x1da)]&&(this[_0xe74416(0x1bf)](_0x2124a9[_0xe74416(0x1da)],_0xe74416(0x127),'/cron\x20resume\x20'+_0x35200e['id']),this[_0xe74416(0x1bf)](_0x2124a9[_0xe74416(0x1da)],'assistant',_0x90e134?_0xe74416(0x266)+_0x35200e['id']:_0xe74416(0x247)+_0x35200e['id']));await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0x90e134?'▶️\x20定时任务\x20**'+_0x35200e['id']+_0xe74416(0x214):_0xe74416(0x217)+_0x35200e['id'],'msgType':'markdown'});return;}case'create_cron':{if(!(0x0,cron_1[_0xe74416(0x186)])(_0x35200e[_0xe74416(0x201)])){await this['sendDingMessage']({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0xe74416(0x24b)+_0x35200e[_0xe74416(0x201)]+_0xe74416(0x1b1),'msgType':_0xe74416(0x18e)});return;}if(!this['hasNotifyCapability'](_0x37e37b['conversationConfig'])){await this[_0xe74416(0x16c)](_0x3ec63b,_0x5f1954);return;}const _0xdbd5b3=this[_0xe74416(0x1f0)]['addJob']({'conversationId':_0x3ec63b,'cronExpression':_0x35200e[_0xe74416(0x201)],'description':this[_0xe74416(0x237)](_0x35200e['prompt'][_0xe74416(0x12e)](0x0,0x32)),'prompt':_0x35200e[_0xe74416(0x258)],'senderStaffId':_0x18e071,'senderNick':_0x347b7e}),_0x3369a=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78);_0x3369a['sessionDir']&&(this['appendSessionLog'](_0x3369a[_0xe74416(0x1da)],_0xe74416(0x127),_0xe74416(0x14c)+_0x35200e[_0xe74416(0x201)]+'\x20'+this[_0xe74416(0x237)](_0x35200e['prompt'])),this[_0xe74416(0x1bf)](_0x3369a[_0xe74416(0x1da)],'assistant',_0xe74416(0x1de)+_0xdbd5b3['id']+'\x20['+_0xdbd5b3[_0xe74416(0x201)]+']\x20'+_0xdbd5b3[_0xe74416(0x160)]));await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':(0x0,cron_1[_0xe74416(0x274)])(_0xdbd5b3),'msgType':_0xe74416(0x18e)});return;}case _0xe74416(0x1dd):{if(!this['hasNotifyCapability'](_0x37e37b['conversationConfig'])){await this['sendCronNoNotifyError'](_0x3ec63b,_0x5f1954);return;}await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0xe74416(0x211)});const _0x5cbc9a=await this[_0xe74416(0x1f0)][_0xe74416(0x1eb)](_0x3ec63b,_0x35200e[_0xe74416(0x1ef)],_0x18e071,_0x347b7e),_0x2ba04e=await this[_0xe74416(0x204)](_0x3ec63b,_0x5f1954,_0x18e071,_0x347b7e,_0x37fc78);_0x5cbc9a['job']?(_0x2ba04e[_0xe74416(0x1da)]&&(this[_0xe74416(0x1bf)](_0x2ba04e[_0xe74416(0x1da)],_0xe74416(0x127),_0xe74416(0x14c)+this['sanitizeLogContent'](_0x35200e[_0xe74416(0x1ef)])),this['appendSessionLog'](_0x2ba04e[_0xe74416(0x1da)],_0xe74416(0x180),_0xe74416(0x1de)+_0x5cbc9a[_0xe74416(0x249)]['id']+'\x20['+_0x5cbc9a['job'][_0xe74416(0x201)]+']\x20'+_0x5cbc9a['job'][_0xe74416(0x160)])),await this[_0xe74416(0x23b)]({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':(0x0,cron_1['formatCronJobInfo'])(_0x5cbc9a[_0xe74416(0x249)]),'msgType':_0xe74416(0x18e)})):(_0x2ba04e[_0xe74416(0x1da)]&&(this[_0xe74416(0x1bf)](_0x2ba04e[_0xe74416(0x1da)],'user','/cron\x20'+this[_0xe74416(0x237)](_0x35200e[_0xe74416(0x1ef)])),this['appendSessionLog'](_0x2ba04e[_0xe74416(0x1da)],_0xe74416(0x180),'定时任务分析失败:\x20'+_0x5cbc9a[_0xe74416(0x1bd)])),await this['sendDingMessage']({'conversationId':_0x3ec63b,'sessionWebhook':_0x5f1954,'content':_0xe74416(0x132)+_0x5cbc9a[_0xe74416(0x1bd)]+_0xe74416(0x1f6),'msgType':'markdown'}));return;}}}[a2_0xfaab8f(0x237)](_0x4f58ef){const _0x5119f8=a2_0xfaab8f;return _0x4f58ef[_0x5119f8(0x1fc)](/\n/g,'\x5cn')[_0x5119f8(0x1fc)](/\r/g,'\x5cr');}[a2_0xfaab8f(0x1d4)](_0x19ed6d){const _0x2e8b42=a2_0xfaab8f,_0x40c6e4=_0x19ed6d[_0x2e8b42(0x1fc)](/\r\n/g,'\x0a'),_0x1f16da=0x1f40;if(_0x40c6e4['length']>_0x1f16da)return _0x40c6e4['substring'](0x0,_0x1f16da)+_0x2e8b42(0x137);return _0x40c6e4;}[a2_0xfaab8f(0x1ea)](_0x3a4dd9,_0x5a52d8=0x64){const _0x1bf7ca=a2_0xfaab8f,_0x53dea1=_0x3a4dd9['replace'](/\n/g,'\x20')[_0x1bf7ca(0x17d)]();return _0x53dea1[_0x1bf7ca(0x153)]>_0x5a52d8?_0x53dea1[_0x1bf7ca(0x175)](0x0,_0x5a52d8)+_0x1bf7ca(0x273):_0x53dea1;}async[a2_0xfaab8f(0x204)](_0x35ff2b,_0x5dad66,_0x40ea11,_0x9d3616,_0x47d559,_0x53ce26=![]){const _0x4d601c=a2_0xfaab8f,_0x24c3c7=this['findActiveSession'](_0x35ff2b);if(_0x24c3c7){const _0x377d77=this['getSessionDir'](_0x24c3c7[_0x4d601c(0x18b)][_0x4d601c(0x18b)]);return{'sessionDir':_0x377d77,'isNew':![]};}if(_0x53ce26)return{'sessionDir':null,'isNew':![]};const _0xc2735b=Date[_0x4d601c(0x1df)](),_0x56c28d={'conversationId':_0x35ff2b,'sessionWebhook':_0x5dad66,'startTime':_0xc2735b,'startTimeStr':utils_ok_1[_0x4d601c(0x181)]['mm'](_0xc2735b)[_0x4d601c(0x242)](_0x4d601c(0x1f1)),'startStaffId':_0x40ea11,'startNickName':'[cron]'+_0x9d3616},_0xadaa8b=this[_0x4d601c(0x19c)](_0x56c28d);return fs_1[_0x4d601c(0x221)][_0x4d601c(0x268)](_0xadaa8b,{'recursive':!![]}),fs_1['default'][_0x4d601c(0x271)](_0xadaa8b+'/session.json',JSON[_0x4d601c(0x1ab)](_0x56c28d,null,0x2),_0x4d601c(0x154)),fs_1[_0x4d601c(0x221)][_0x4d601c(0x1f8)](_0xadaa8b+'/session.log','['+(0x0,session_1['timestamp'])()+_0x4d601c(0x198),'utf-8'),{'sessionDir':_0xadaa8b,'isNew':!![]};}[a2_0xfaab8f(0x1ff)](_0x5d3786){const _0x973349=a2_0xfaab8f;return!!(_0x5d3786[_0x973349(0x1dc)]||this['config'][_0x973349(0x173)]);}async[a2_0xfaab8f(0x16c)](_0x4c4772,_0x45874c){const _0x4f28f7=a2_0xfaab8f;await this[_0x4f28f7(0x23b)]({'conversationId':_0x4c4772,'sessionWebhook':_0x45874c,'content':_0x4f28f7(0x147),'msgType':_0x4f28f7(0x18e)});}[a2_0xfaab8f(0x196)](_0x45b9d9,_0x3d73f1){const _0x5f3704=a2_0xfaab8f,_0x42003e=this[_0x5f3704(0x230)](_0x45b9d9);if(_0x3d73f1[_0x5f3704(0x15e)]('/'))return{'absolutePath':'','error':_0x5f3704(0x1cc)};const _0x14a661=path_1[_0x5f3704(0x221)][_0x5f3704(0x16f)](_0x42003e,_0x3d73f1);if(!_0x14a661[_0x5f3704(0x15e)](_0x42003e))return{'absolutePath':'','error':_0x5f3704(0x1b9)};return{'absolutePath':_0x14a661};}async[a2_0xfaab8f(0x23c)](_0x28a0c,_0x2c0a8a,_0x290e3f){const _0x54f11c=a2_0xfaab8f,{absolutePath:_0x3f06ba,error:_0x174e5b}=this['resolveAndValidatePath'](_0x28a0c,_0x290e3f);if(_0x174e5b){await this[_0x54f11c(0x23b)]({'conversationId':_0x28a0c,'sessionWebhook':_0x2c0a8a,'content':_0x174e5b,'msgType':'markdown'});return;}try{const _0x4c1ef4=fs_1['default'][_0x54f11c(0x257)](_0x3f06ba);_0x4c1ef4[_0x54f11c(0x125)]()?await this[_0x54f11c(0x23b)]({'conversationId':_0x28a0c,'sessionWebhook':_0x2c0a8a,'content':_0x54f11c(0x20e)+_0x290e3f+'`','msgType':_0x54f11c(0x18e)}):await this['sendDingMessage']({'conversationId':_0x28a0c,'sessionWebhook':_0x2c0a8a,'content':'❌\x20路径已存在但不是目录:\x20`'+_0x290e3f+'`','msgType':_0x54f11c(0x18e)});return;}catch{}try{fs_1[_0x54f11c(0x221)][_0x54f11c(0x268)](_0x3f06ba,{'recursive':!![]}),await this[_0x54f11c(0x23b)]({'conversationId':_0x28a0c,'sessionWebhook':_0x2c0a8a,'content':_0x54f11c(0x1e0)+_0x290e3f+'`','msgType':'markdown'});}catch(_0x534182){await this[_0x54f11c(0x23b)]({'conversationId':_0x28a0c,'sessionWebhook':_0x2c0a8a,'content':_0x54f11c(0x1d1)+_0x290e3f+_0x54f11c(0x262)+(_0x534182 instanceof Error?_0x534182[_0x54f11c(0x23e)]:String(_0x534182)),'msgType':'markdown'});}}async[a2_0xfaab8f(0x12b)](_0x1fd222,_0x327cf9,_0x1a3148){const _0x48150e=a2_0xfaab8f,{absolutePath:_0x540d8f,error:_0x2dd83b}=this[_0x48150e(0x196)](_0x1fd222,_0x1a3148);if(_0x2dd83b){await this[_0x48150e(0x23b)]({'conversationId':_0x1fd222,'sessionWebhook':_0x327cf9,'content':_0x2dd83b,'msgType':'markdown'});return;}let _0xfd54e2;try{_0xfd54e2=fs_1[_0x48150e(0x221)][_0x48150e(0x257)](_0x540d8f);}catch{await this[_0x48150e(0x23b)]({'conversationId':_0x1fd222,'sessionWebhook':_0x327cf9,'content':'❌\x20路径不存在:\x20`'+_0x1a3148+'`','msgType':'markdown'});return;}const _0x3fe6c7=_0xfd54e2['isDirectory']();try{_0x3fe6c7?fs_1[_0x48150e(0x221)][_0x48150e(0x13f)](_0x540d8f,{'recursive':!![],'force':!![]}):fs_1[_0x48150e(0x221)][_0x48150e(0x182)](_0x540d8f),await this['sendDingMessage']({'conversationId':_0x1fd222,'sessionWebhook':_0x327cf9,'content':_0x48150e(0x256)+(_0x3fe6c7?'目录':'文件')+':\x20`'+_0x1a3148+'`','msgType':'markdown'});}catch(_0x516a5b){await this[_0x48150e(0x23b)]({'conversationId':_0x1fd222,'sessionWebhook':_0x327cf9,'content':'❌\x20删除失败:\x20`'+_0x1a3148+_0x48150e(0x262)+(_0x516a5b instanceof Error?_0x516a5b[_0x48150e(0x23e)]:String(_0x516a5b)),'msgType':_0x48150e(0x18e)});}}async[a2_0xfaab8f(0x25c)](_0x48f67f,_0xcb639,_0x55ec49){const _0x44505b=a2_0xfaab8f,{absolutePath:_0x439d92,error:_0x367074}=this[_0x44505b(0x196)](_0x48f67f,_0x55ec49);if(_0x367074){await this[_0x44505b(0x23b)]({'conversationId':_0x48f67f,'sessionWebhook':_0xcb639,'content':_0x367074,'msgType':_0x44505b(0x18e)});return;}try{const _0x566d8f=fs_1[_0x44505b(0x221)][_0x44505b(0x257)](_0x439d92);_0x566d8f[_0x44505b(0x1c8)]()?await this['sendDingMessage']({'conversationId':_0x48f67f,'sessionWebhook':_0xcb639,'content':_0x44505b(0x18f)+_0x55ec49+_0x44505b(0x219)+utils_ok_1[_0x44505b(0x181)]['mm'](_0x566d8f[_0x44505b(0x174)])['format'](_0x44505b(0x169)),'msgType':'markdown'}):await this[_0x44505b(0x23b)]({'conversationId':_0x48f67f,'sessionWebhook':_0xcb639,'content':_0x44505b(0x146)+_0x55ec49+'`','msgType':'markdown'});return;}catch{}try{const _0x1a0988=path_1['default']['dirname'](_0x439d92);fs_1['default']['mkdirSync'](_0x1a0988,{'recursive':!![]}),fs_1['default'][_0x44505b(0x271)](_0x439d92,'','utf-8'),await this[_0x44505b(0x23b)]({'conversationId':_0x48f67f,'sessionWebhook':_0xcb639,'content':_0x44505b(0x222)+_0x55ec49+'`','msgType':_0x44505b(0x18e)});}catch(_0x1f9f1b){await this['sendDingMessage']({'conversationId':_0x48f67f,'sessionWebhook':_0xcb639,'content':_0x44505b(0x1a4)+_0x55ec49+_0x44505b(0x262)+(_0x1f9f1b instanceof Error?_0x1f9f1b[_0x44505b(0x23e)]:String(_0x1f9f1b)),'msgType':'markdown'});}}async[a2_0xfaab8f(0x1be)](_0x59d149){const _0x208208=a2_0xfaab8f;this[_0x208208(0x17e)][_0x208208(0x18c)](_0x59d149[_0x208208(0x20c)][_0x208208(0x1b7)],'');const _0x34a74d=JSON[_0x208208(0x144)](_0x59d149['data']),{senderNick:_0x119a61,senderStaffId:_0x399c6b,conversationId:_0x57bd0f,conversationTitle:_0xba51a2,sessionWebhook:_0xd5c47,msgtype:_0x15bcf6}=_0x34a74d,_0x59da6d=_0x34a74d[_0x208208(0x251)]?.[_0x208208(0x235)]?.['trim']()??'';this[_0x208208(0x191)](_0x208208(0x225)+_0xba51a2+'('+_0x57bd0f+_0x208208(0x1e3)+_0x119a61+'('+_0x399c6b+_0x208208(0x21d)+_0x15bcf6+_0x208208(0x1f3)+_0x59da6d[_0x208208(0x12e)](0x0,0x32));if(!this[_0x208208(0x276)](_0x399c6b,_0x57bd0f)){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x129)});return;}const _0x150a64=this[_0x208208(0x183)](_0x57bd0f);let _0x474939;if(_0x15bcf6===_0x208208(0x1a2)&&_0x34a74d[_0x208208(0x12c)]){const _0x27efc4=this[_0x208208(0x230)](_0x57bd0f),_0x5d8d29=_0x150a64?.[_0x208208(0x121)]!==![],_0x1f173b=await(0x0,image_1[_0x208208(0x1ad)])(this,_0x34a74d[_0x208208(0x12c)],_0x34a74d[_0x208208(0x24f)],_0x27efc4,_0x5d8d29,_0x59da6d||undefined);if(!_0x1f173b){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x1b2)});return;}_0x474939=_0x1f173b;}else{if(_0x15bcf6===_0x208208(0x23f)&&_0x34a74d['content']?.[_0x208208(0x23f)]){const _0x334d2c=this[_0x208208(0x230)](_0x57bd0f),_0x1f23c8=_0x150a64?.[_0x208208(0x121)]!==![];_0x474939=await(0x0,image_1[_0x208208(0x13b)])(this,_0x34a74d[_0x208208(0x235)][_0x208208(0x23f)],_0x34a74d[_0x208208(0x24f)],_0x334d2c,_0x1f23c8);}else{_0x474939=_0x59da6d;if(!_0x474939)return;}}if(!_0x474939[_0x208208(0x15e)]('/')&&_0x15bcf6===_0x208208(0x251)){const _0x1aaada=(0x0,quote_1[_0x208208(0x1db)])(_0x34a74d);if(_0x1aaada){this[_0x208208(0x191)]('检测到引用消息:\x20quoteMessageId='+_0x1aaada[_0x208208(0x20b)]);if(_0x1aaada[_0x208208(0x20b)]&&!_0x1aaada[_0x208208(0x166)]){const _0x1a4e81=await(0x0,messaging_1[_0x208208(0x162)])(this,_0x1aaada[_0x208208(0x20b)]);if(_0x1a4e81)_0x1aaada[_0x208208(0x166)]=_0x1a4e81;}_0x1aaada[_0x208208(0x166)]&&(_0x474939=(0x0,quote_1['formatPromptWithQuote'])(_0x474939,_0x1aaada));}}const _0x10974e=(0x0,commands_1['parseCfgCommand'])(_0x474939);if(_0x10974e!==null){if(!await this[_0x208208(0x223)](_0x57bd0f,_0xd5c47,_0x399c6b))return;const _0x329252=_0x150a64,_0xf1042d=!!(_0x10974e[_0x208208(0x1dc)]||_0x10974e[_0x208208(0x25e)]||_0x10974e[_0x208208(0x157)]&&_0x10974e[_0x208208(0x157)][_0x208208(0x153)]>0x0||_0x10974e[_0x208208(0x224)]||_0x10974e[_0x208208(0x208)]!==undefined||_0x10974e[_0x208208(0x171)]!==undefined||_0x10974e[_0x208208(0x1c6)]!==undefined);if(_0x329252&&_0xf1042d){if(_0x10974e[_0x208208(0x224)])_0x329252[_0x208208(0x224)]=_0x10974e['conversationTitle'];if(_0x10974e[_0x208208(0x1dc)])_0x329252[_0x208208(0x1dc)]=_0x10974e['dingToken'];if(_0x10974e[_0x208208(0x25e)])_0x329252[_0x208208(0x25e)]=_0x10974e[_0x208208(0x25e)];if(_0x10974e[_0x208208(0x208)]!==undefined)_0x329252[_0x208208(0x208)]=_0x10974e['atSender'];if(_0x10974e[_0x208208(0x171)]!==undefined)_0x329252['receiveReply']=_0x10974e[_0x208208(0x171)];if(_0x10974e[_0x208208(0x1c6)]!==undefined)_0x329252[_0x208208(0x1c6)]=_0x10974e[_0x208208(0x1c6)];if(_0x10974e[_0x208208(0x157)]&&_0x10974e['whiteUserList'][_0x208208(0x153)]>0x0){_0x329252['whiteUserList']=_0x10974e[_0x208208(0x157)];for(const _0x56666d of _0x10974e[_0x208208(0x157)]){(0x0,session_1[_0x208208(0x1d7)])(_0x56666d)&&await(0x0,session_1['resolveUserId'])(this,_0x56666d);}}(0x0,api_key_manager_1[_0x208208(0x263)])(this),console[_0x208208(0x216)]('['+(0x0,session_1[_0x208208(0x193)])()+']\x20刷新群配置:\x20'+(_0x329252[_0x208208(0x224)]||_0xba51a2)+'('+_0x57bd0f+')');}else{if(!_0x329252){const _0x470506={'conversationId':_0x57bd0f,'conversationTitle':_0x10974e['conversationTitle']||_0xba51a2};if(_0x10974e[_0x208208(0x1dc)])_0x470506[_0x208208(0x1dc)]=_0x10974e['dingToken'];if(_0x10974e['linkConversationId'])_0x470506[_0x208208(0x25e)]=_0x10974e[_0x208208(0x25e)];if(_0x10974e[_0x208208(0x208)]!==undefined)_0x470506[_0x208208(0x208)]=_0x10974e[_0x208208(0x208)];if(_0x10974e[_0x208208(0x171)]!==undefined)_0x470506[_0x208208(0x171)]=_0x10974e[_0x208208(0x171)];if(_0x10974e[_0x208208(0x1c6)]!==undefined)_0x470506['preBash']=_0x10974e[_0x208208(0x1c6)];if(_0x10974e['whiteUserList']&&_0x10974e[_0x208208(0x157)]['length']>0x0){_0x470506[_0x208208(0x157)]=_0x10974e[_0x208208(0x157)];for(const _0x5b9f4a of _0x10974e[_0x208208(0x157)]){(0x0,session_1[_0x208208(0x1d7)])(_0x5b9f4a)&&await(0x0,session_1[_0x208208(0x23d)])(this,_0x5b9f4a);}}this[_0x208208(0x139)][_0x208208(0x12f)][_0x208208(0x15b)](_0x470506),(0x0,api_key_manager_1[_0x208208(0x263)])(this),console[_0x208208(0x216)]('['+(0x0,session_1['timestamp'])()+_0x208208(0x261)+(_0x470506[_0x208208(0x224)]||_0xba51a2)+'('+_0x57bd0f+')');}}const _0x452e26=this[_0x208208(0x230)](_0x57bd0f);!fs_1['default'][_0x208208(0x26e)](_0x452e26)&&(fs_1[_0x208208(0x221)][_0x208208(0x268)](_0x452e26,{'recursive':!![]}),console[_0x208208(0x216)]('['+(0x0,session_1['timestamp'])()+']\x20创建工作目录:\x20'+_0x452e26));const _0x1de96f=_0x329252||this['getConversationConfig'](_0x57bd0f),_0x2c3e7f=[_0x329252?_0x208208(0x1b4):'✅\x20群已注册',_0x208208(0x218)+(_0x1de96f?.[_0x208208(0x224)]||_0xba51a2||'-'),_0x208208(0x16b)+_0x57bd0f];if(_0x1de96f?.[_0x208208(0x1dc)])_0x2c3e7f['push']('-\x20**dingToken:**\x20'+_0x1de96f[_0x208208(0x1dc)][_0x208208(0x12e)](0x0,0x8)+_0x208208(0x273));else _0x2c3e7f[_0x208208(0x15b)]('-\x20**dingToken:**\x20(未指定,\x20使用\x20defaultDingToken)');if(_0x1de96f?.[_0x208208(0x25e)])_0x2c3e7f['push'](_0x208208(0x1b0)+_0x1de96f[_0x208208(0x25e)]);if(_0x1de96f?.[_0x208208(0x208)]===![])_0x2c3e7f[_0x208208(0x15b)](_0x208208(0x21b));if(_0x1de96f?.['receiveReply']===![])_0x2c3e7f[_0x208208(0x15b)](_0x208208(0x26a));if(_0x1de96f?.[_0x208208(0x157)]?.[_0x208208(0x153)]){const _0x9c242=_0x1de96f['whiteUserList']['map'](_0x27334e=>{const _0x460fc5=_0x208208;if((0x0,session_1['isMobile'])(_0x27334e))return _0x27334e;return(0x0,session_1[_0x460fc5(0x1a5)])(this,_0x27334e)||_0x27334e;})[_0x208208(0x177)](',\x20');_0x2c3e7f[_0x208208(0x15b)]('-\x20**whiteUserList:**\x20'+_0x9c242);}_0x2c3e7f[_0x208208(0x15b)](_0x208208(0x1f4)),_0x2c3e7f[_0x208208(0x15b)](_0x208208(0x1c1)+_0x452e26+'`'),await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x2c3e7f['join']('\x0a'),'msgType':_0x208208(0x18e)});return;}if((0x0,commands_1['parseHelpCommand'])(_0x474939)){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':(0x0,commands_1[_0x208208(0x138)])(TOOL_VERSION,this[_0x208208(0x20f)](_0x399c6b)),'msgType':'markdown'});return;}if((0x0,commands_1[_0x208208(0x1c2)])(_0x474939)){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x1fd)+TOOL_VERSION,'msgType':'markdown'});return;}const _0x2e0865=(0x0,commands_1[_0x208208(0x17b)])(_0x474939);if(_0x2e0865){const _0x4eacb6=(0x0,commands_1[_0x208208(0x1e8)])(_0x2e0865);_0x4eacb6?await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':(0x0,commands_1['formatCommandHelp'])(_0x4eacb6),'msgType':_0x208208(0x18e)}):await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x176)+_0x2e0865+_0x208208(0x17c),'msgType':_0x208208(0x18e)});return;}if(!_0x150a64){console[_0x208208(0x216)](_0x208208(0x1c7)+_0xba51a2+','+_0x57bd0f);this['isOwner'](_0x399c6b)?await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x189),'msgType':_0x208208(0x18e)}):await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':'抱歉,该群的机器人未在服务端注册,请联系应用机器人owner注册('+_0x57bd0f+_0x208208(0x207)});return;}const _0x4ac4c3=(0x0,commands_1['parseCleanCommand'])(_0x474939);if(_0x4ac4c3!==null){if(!await this['requireOwner'](_0x57bd0f,_0xd5c47,_0x399c6b))return;const _0x2b04f5=_0x4ac4c3===_0x208208(0x168)?null:_0x57bd0f,_0x505985=this[_0x208208(0x194)](_0x2b04f5,!![]),_0x499b45=[];_0x499b45[_0x208208(0x15b)](_0x208208(0x1d9));if(_0x505985[_0x208208(0x192)]>0x0)_0x499b45[_0x208208(0x15b)](_0x208208(0x26d)+_0x505985['sessionsDeleted']+'\x20个');if(_0x505985[_0x208208(0x1d8)]>0x0)_0x499b45[_0x208208(0x15b)]('-\x20任务目录:\x20'+_0x505985[_0x208208(0x1d8)]+'\x20个');if(_0x505985['imagesDeleted']>0x0)_0x499b45['push']('-\x20图片文件:\x20'+_0x505985[_0x208208(0x151)]+'\x20个');_0x505985['sessionsDeleted']===0x0&&_0x505985[_0x208208(0x1d8)]===0x0&&_0x505985['imagesDeleted']===0x0&&_0x499b45['push']('(无历史数据)');_0x499b45[_0x208208(0x15b)](_0x208208(0x134));_0x505985[_0x208208(0x245)]['length']>0x0&&_0x499b45[_0x208208(0x15b)](_0x208208(0x161)+_0x505985[_0x208208(0x245)][_0x208208(0x177)](';\x20'));await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x499b45[_0x208208(0x177)]('\x0a'),'msgType':'markdown'});return;}if((0x0,commands_1['parseResetApiKeyCfgCommand'])(_0x474939)){if(!await this[_0x208208(0x223)](_0x57bd0f,_0xd5c47,_0x399c6b))return;if(!this[_0x208208(0x139)]['apiKeyCfg']){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x1ba),'msgType':_0x208208(0x18e)});return;}(0x0,api_key_manager_1['resetApiKeyCfg'])(this);const _0xe463c7=this[_0x208208(0x139)][_0x208208(0x1c0)][_0x208208(0x267)]['filter'](_0x8cdb9a=>_0x8cdb9a[_0x208208(0x124)])[_0x208208(0x153)];await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x241)+_0xe463c7+'/'+this['config'][_0x208208(0x1c0)][_0x208208(0x267)][_0x208208(0x153)]+_0x208208(0x165)+(this[_0x208208(0x139)][_0x208208(0x1c0)]['resetTime']||'-'),'msgType':_0x208208(0x18e)});return;}const _0x40ca0b=(0x0,commands_1['parseAuthCommand'])(_0x474939);if(_0x40ca0b){if(!await this[_0x208208(0x223)](_0x57bd0f,_0xd5c47,_0x399c6b))return;const _0x4ded63=_0x150a64['whiteUserList'];if(_0x40ca0b[_0x208208(0x13c)]==='list'){const _0x1be941=_0x4ded63&&_0x4ded63['length']>0x0?_0x4ded63[_0x208208(0x206)](_0x2c6172=>{const _0x4422d9=_0x208208,_0xbf6466=(0x0,session_1[_0x4422d9(0x1a5)])(this,_0x2c6172);return'-\x20'+(_0xbf6466||_0x2c6172);})[_0x208208(0x177)]('\x0a'):'(未配置群级白名单,使用全局白名单)';await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x22f)+_0x1be941,'msgType':_0x208208(0x18e)});return;}if(_0x40ca0b[_0x208208(0x13c)]==='add'){let _0x13abe7=_0x40ca0b['staffId'];if((0x0,session_1['isMobile'])(_0x40ca0b[_0x208208(0x22d)])){_0x13abe7=await(0x0,session_1[_0x208208(0x23d)])(this,_0x40ca0b['staffId']);if(!_0x13abe7){await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'⚠️\x20无法解析手机号:\x20'+_0x40ca0b[_0x208208(0x22d)],'msgType':_0x208208(0x18e)});return;}}const _0x1cc26c=_0x4ded63?.[_0x208208(0x212)](_0x41ce71=>(0x0,session_1[_0x208208(0x126)])(this,_0x41ce71)===_0x13abe7);if(_0x1cc26c){const _0x34ad06=(0x0,session_1['userIdToPhone'])(this,_0x13abe7)||_0x13abe7;await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x232)+_0x34ad06+'\x20已在当前群白名单中','msgType':_0x208208(0x18e)});return;}!_0x150a64[_0x208208(0x157)]&&(_0x150a64['whiteUserList']=[]);_0x150a64[_0x208208(0x157)][_0x208208(0x15b)](_0x40ca0b['staffId']),(0x0,api_key_manager_1['saveClientConfig'])(this);const _0xd0aadf=_0x150a64['whiteUserList'][_0x208208(0x206)](_0x43c961=>{const _0xc1b5dc=(0x0,session_1['resolveToUserId'])(this,_0x43c961);return(0x0,session_1['userIdToPhone'])(this,_0xc1b5dc)||_0x43c961;}),_0x4ab010=(0x0,session_1[_0x208208(0x1d7)])(_0x40ca0b['staffId'])?_0x40ca0b[_0x208208(0x22d)]:(0x0,session_1['userIdToPhone'])(this,_0x40ca0b[_0x208208(0x22d)])||_0x40ca0b[_0x208208(0x22d)];await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x1f7)+_0x4ab010+_0x208208(0x188)+_0xd0aadf['join'](',\x20'),'msgType':_0x208208(0x18e)});return;}if(_0x40ca0b[_0x208208(0x13c)]===_0x208208(0x253)){let _0x20843d=_0x40ca0b[_0x208208(0x22d)];if((0x0,session_1[_0x208208(0x1d7)])(_0x40ca0b[_0x208208(0x22d)])){_0x20843d=await(0x0,session_1[_0x208208(0x23d)])(this,_0x40ca0b[_0x208208(0x22d)]);if(!_0x20843d){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x254)+_0x40ca0b[_0x208208(0x22d)],'msgType':_0x208208(0x18e)});return;}}const _0x4a266e=_0x4ded63?.[_0x208208(0x21a)](_0x41784a=>(0x0,session_1[_0x208208(0x126)])(this,_0x41784a)===_0x20843d)??-0x1;if(_0x4a266e<0x0){const _0x2336f3=(0x0,session_1[_0x208208(0x1a5)])(this,_0x20843d)||_0x20843d;await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x232)+_0x2336f3+'\x20不在当前群白名单中','msgType':_0x208208(0x18e)});return;}const _0x529203=_0x150a64[_0x208208(0x157)][_0x4a266e];_0x150a64['whiteUserList'][_0x208208(0x184)](_0x4a266e,0x1);_0x150a64[_0x208208(0x157)]['length']===0x0&&delete _0x150a64['whiteUserList'];(0x0,api_key_manager_1[_0x208208(0x263)])(this);const _0x7cde5b=_0x150a64[_0x208208(0x157)]?.[_0x208208(0x153)]?_0x150a64[_0x208208(0x157)][_0x208208(0x206)](_0x3eb49e=>{const _0x53b949=_0x208208,_0x5eed8f=(0x0,session_1[_0x53b949(0x126)])(this,_0x3eb49e);return(0x0,session_1[_0x53b949(0x1a5)])(this,_0x5eed8f)||_0x3eb49e;})[_0x208208(0x177)](',\x20'):_0x208208(0x26c),_0x40fd8a=(0x0,session_1[_0x208208(0x1a5)])(this,_0x20843d)||_0x529203;await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x205)+_0x40fd8a+_0x208208(0x1ee)+_0x7cde5b,'msgType':'markdown'});return;}}const _0x2b2991=(0x0,commands_1[_0x208208(0x260)])(_0x474939);if(_0x2b2991!==null){if(!await this[_0x208208(0x223)](_0x57bd0f,_0xd5c47,_0x399c6b))return;const _0x8678d=this[_0x208208(0x230)](_0x57bd0f),{exec:_0x4db0aa}=await Promise[_0x208208(0x16f)]()[_0x208208(0x122)](()=>__importStar(require('child_process'))),_0x2524a5=process[_0x208208(0x239)];try{_0x2b2991===_0x208208(0x15a)?(_0x2524a5===_0x208208(0x13d)?_0x4db0aa(_0x208208(0x1fe)+_0x8678d+'\x22'):_0x4db0aa(_0x208208(0x156)+_0x8678d+'\x22'),await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x172)+_0x8678d+_0x208208(0x26b),'msgType':'markdown'})):(_0x2524a5===_0x208208(0x13d)?_0x4db0aa(_0x208208(0x187)+_0x8678d+'\x22'):_0x4db0aa(_0x208208(0x1a7)+_0x8678d+'\x22',{'shell':'cmd.exe'}),await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'💻\x20已在终端中打开:\x0a```\x0a'+_0x8678d+'\x0a```','msgType':_0x208208(0x18e)}));}catch(_0x40ad7b){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'❌\x20打开失败:\x20'+(_0x40ad7b instanceof Error?_0x40ad7b['message']:String(_0x40ad7b)),'msgType':_0x208208(0x18e)});}return;}const _0x37e11e=(0x0,commands_1['parseCronCommand'])(_0x474939);if(_0x37e11e){await this[_0x208208(0x231)](_0x37e11e,{'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'senderStaffId':_0x399c6b,'senderNick':_0x119a61,'conversationConfig':_0x150a64});return;}if((0x0,commands_1['parsePwdCommand'])(_0x474939)){const _0x4804e7=this[_0x208208(0x230)](_0x57bd0f);await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x164)+_0x4804e7+_0x208208(0x26b),'msgType':_0x208208(0x18e)});return;}const _0x3f6c9f=(0x0,commands_1['parseMkdirCommand'])(_0x474939);if(_0x3f6c9f!==null){await this[_0x208208(0x23c)](_0x57bd0f,_0xd5c47,_0x3f6c9f);return;}const _0x597a25=(0x0,commands_1[_0x208208(0x16a)])(_0x474939);if(_0x597a25!==null){await this['handleTouchCommand'](_0x57bd0f,_0xd5c47,_0x597a25);return;}const _0x4f9566=(0x0,commands_1['parseRmCommand'])(_0x474939);if(_0x4f9566!==null){await this[_0x208208(0x12b)](_0x57bd0f,_0xd5c47,_0x4f9566);return;}const _0x11bed9=(0x0,commands_1[_0x208208(0x1d5)])(_0x474939);if(_0x11bed9!==null){const _0x211f35=this[_0x208208(0x230)](_0x57bd0f),_0xdfcb78=[];if(this[_0x208208(0x139)]['preBash'])_0xdfcb78[_0x208208(0x15b)](this['config'][_0x208208(0x1c6)]);if(_0x150a64?.[_0x208208(0x1c6)])_0xdfcb78['push'](_0x150a64['preBash']);const _0x199e9b=_0xdfcb78[_0x208208(0x153)]>0x0?_0xdfcb78[_0x208208(0x177)]('\x20&&\x20')+_0x208208(0x1a6)+_0x11bed9:_0x11bed9,_0x32ccdb=this;(0x0,child_process_1[_0x208208(0x16d)])(_0x199e9b,{'cwd':_0x211f35,'timeout':0x7530,'maxBuffer':0x400*0x400},async(_0x13e1e4,_0x2672c0,_0x160752)=>{const _0x2e5e8=_0x208208;try{let _0x54e604;if(_0x13e1e4)_0x54e604=_0x2e5e8(0x159)+_0x13e1e4[_0x2e5e8(0x23e)]+'\x0a```',_0x160752&&(_0x54e604+='\x0a\x0a**stderr:**\x0a```\x0a'+_0x32ccdb['sanitizeOutput'](_0x160752)+_0x2e5e8(0x26b));else{const _0x4aeadc=_0x2672c0||'(无输出)';_0x54e604=_0x2e5e8(0x20d)+_0x32ccdb[_0x2e5e8(0x1d4)](_0x4aeadc)+_0x2e5e8(0x26b),_0x160752&&(_0x54e604+=_0x2e5e8(0x1a0)+_0x32ccdb['sanitizeOutput'](_0x160752)+'\x0a```');}await _0x32ccdb[_0x2e5e8(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x54e604,'msgType':'markdown'});}catch(_0x264c8d){console['error'](_0x2e5e8(0x1a9),_0x264c8d);}});return;}if(/^\/new(?:\s|$)/i[_0x208208(0x1a3)](_0x474939)){const _0x41ec35=this['findActiveSession'](_0x57bd0f);_0x41ec35&&(console['log'](_0x208208(0x178)+_0x41ec35['session'][_0x208208(0x18b)][_0x208208(0x1a8)]+',\x20会话ID='+this[_0x208208(0x130)](_0x41ec35[_0x208208(0x18b)][_0x208208(0x18b)])),this['interruptClaudeProcess'](_0x41ec35[_0x208208(0x18b)],_0x208208(0x259)),this['activeSessions']['delete'](_0x41ec35['key']),this[_0x208208(0x1af)](_0x41ec35['key']));const _0x212a32=_0x474939[_0x208208(0x1fc)](/^\/new\s*/i,'')[_0x208208(0x17d)]();_0x212a32?await this[_0x208208(0x150)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'senderStaffId':_0x399c6b,'senderNick':_0x119a61,'message':_0x212a32,'conversationConfig':_0x150a64}):await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x210)});return;}const _0x20b659=(0x0,commands_1['parseContinueSessionCommand'])(_0x474939);if(_0x20b659!==null&&_0x150a64){let _0x517eaf=_0x20b659;if(!_0x517eaf){const _0x188041=(0x0,session_1[_0x208208(0x195)])(this,_0x57bd0f);if(!_0x188041){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x26f),'msgType':_0x208208(0x18e)});return;}_0x517eaf=(0x0,session_1[_0x208208(0x130)])(_0x188041);}await this[_0x208208(0x21e)](_0x57bd0f,_0xd5c47,_0x517eaf,_0x399c6b,_0x150a64);return;}const _0x45b1d8=(0x0,commands_1['parseLogCommand'])(_0x474939);if(_0x45b1d8!==null){const _0xf0beee=this[_0x208208(0x22e)](_0x57bd0f,_0x45b1d8);_0xf0beee?await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x158)+_0x45b1d8+_0x208208(0x128)+_0xf0beee+_0x208208(0x26b),'msgType':_0x208208(0x18e)}):await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x12a)});return;}const _0x863f29=(0x0,commands_1['parseInfoCommand'])(_0x474939);if(_0x863f29!==null){const _0x1af79f=[],_0x327e24=this['getConversationDir'](_0x57bd0f);(_0x863f29===_0x208208(0x168)||_0x863f29===_0x208208(0x264))&&(_0x1af79f[_0x208208(0x15b)]('###\x20🌐\x20全局核心配置\x0a'+(0x0,commands_1['formatGlobalConfig'])(this[_0x208208(0x139)])),_0x1af79f[_0x208208(0x15b)](_0x208208(0x255)+(0x0,commands_1['formatConversationInfo'])(_0x150a64,_0x57bd0f,_0x5e083f=>(0x0,session_1['userIdToPhone'])(this,_0x5e083f),_0x327e24)));if(_0x863f29===_0x208208(0x168)||_0x863f29===_0x208208(0x18b)){const _0x3b0125=this[_0x208208(0x1f9)](_0x57bd0f);_0x3b0125?_0x1af79f[_0x208208(0x15b)](_0x208208(0x17f)+_0x3b0125):_0x1af79f[_0x208208(0x15b)](_0x208208(0x1c4));}(_0x863f29===_0x208208(0x168)||_0x863f29==='task')&&_0x1af79f[_0x208208(0x15b)](_0x208208(0x240)+this['formatTaskInfo']());await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x1af79f[_0x208208(0x177)]('\x0a\x0a'),'msgType':_0x208208(0x18e)});return;}const _0x2d14d0=(0x0,commands_1['parseLsCommand'])(_0x474939);if(_0x2d14d0!==null){const {target:_0x5a4976,depth:_0x1fbf6c}=_0x2d14d0,_0x5bded7=this[_0x208208(0x230)](_0x57bd0f);let _0x218fce=_0x5bded7,_0x18b290='当前工作目录';if(_0x5a4976&&_0x5a4976!==_0x208208(0x25f)){if(_0x5a4976['startsWith']('./')||_0x5a4976[_0x208208(0x15e)]('../')||_0x5a4976[_0x208208(0x15e)]('/')){const _0x505fd0=path_1['default'][_0x208208(0x16f)](_0x5bded7,_0x5a4976);if(fs_1['default']['existsSync'](_0x505fd0)&&fs_1['default'][_0x208208(0x257)](_0x505fd0)[_0x208208(0x125)]()){if(!_0x505fd0[_0x208208(0x15e)](_0x5bded7)){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x1b9),'msgType':_0x208208(0x18e)});return;}_0x218fce=_0x505fd0,_0x18b290=_0x5a4976;}else{await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x19b)+_0x5a4976+'**','msgType':_0x208208(0x18e)});return;}}else{const _0x877442=(0x0,commands_1[_0x208208(0x233)])(_0x5bded7,_0x5a4976);if(_0x877442)_0x218fce=_0x877442,_0x18b290=_0x5a4976;else{await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'❌\x20未找到名为\x20**'+_0x5a4976+_0x208208(0x15c),'msgType':_0x208208(0x18e)});return;}}}const _0x1c4558=(0x0,commands_1[_0x208208(0x25b)])(_0x218fce,0x0,_0x1fbf6c);await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'📂\x20'+_0x18b290+_0x208208(0x152)+_0x1fbf6c+_0x208208(0x22b)+_0x1c4558+_0x208208(0x26b),'msgType':'markdown'});return;}const _0x193653=(0x0,task_1['parseTaskCancelCommand'])(_0x474939);if(_0x193653){const _0x5abfe2=this[_0x208208(0x123)](_0x193653,_0x57bd0f);await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x5abfe2,'msgType':_0x208208(0x18e)});return;}if(_0x474939[_0x208208(0x15e)](_0x208208(0x246))){const _0x52c7e7=_0x474939[_0x208208(0x12e)](0x6)['trim']();_0x52c7e7&&(await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'atUserId':_0x399c6b,'content':_0x208208(0x135)}),await this[_0x208208(0x1b5)]({'conversationId':_0x57bd0f,'prompt':_0x52c7e7,'senderStaffId':_0x399c6b,'senderNickName':_0x119a61,'sessionWebhook':_0xd5c47}));return;}const _0x5d2078=(0x0,commands_1[_0x208208(0x24c)])(_0x474939);if(_0x5d2078){const _0x3d8c96=this[_0x208208(0x228)](_0x57bd0f),_0x36faae=_0x3d8c96?.['session'][_0x208208(0x252)]??[];switch(_0x5d2078[_0x208208(0x13c)]){case _0x208208(0x15d):{if(_0x36faae['length']===0x0)await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x272),'msgType':_0x208208(0x18e)});else{const _0x224c58=_0x36faae[_0x208208(0x206)]((_0x58c544,_0xabcadb)=>_0xabcadb+0x1+_0x208208(0x19d)+(_0x58c544[_0x208208(0x19e)]||_0x58c544[_0x208208(0x1e5)])+_0x208208(0x209)+this[_0x208208(0x1ea)](_0x58c544[_0x208208(0x23e)]));await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x277)+_0x36faae[_0x208208(0x153)]+_0x208208(0x227)+_0x224c58[_0x208208(0x177)]('\x0a'),'msgType':_0x208208(0x18e)});}return;}case _0x208208(0x179):{if(_0x36faae[_0x208208(0x153)]===0x0){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':'📭\x20当前无排队消息','msgType':'markdown'});return;}const _0x2bb428=Math[_0x208208(0x1bc)](_0x5d2078[_0x208208(0x14b)],_0x36faae[_0x208208(0x153)]),_0x38983e=_0x36faae['splice'](_0x36faae[_0x208208(0x153)]-_0x2bb428,_0x2bb428),_0x5126dd=_0x38983e[_0x208208(0x206)]((_0xbe80b7,_0x1c1548)=>_0x1c1548+0x1+_0x208208(0x19d)+(_0xbe80b7['senderNick']||_0xbe80b7['senderStaffId'])+_0x208208(0x209)+this['truncateMsg'](_0xbe80b7[_0x208208(0x23e)]));await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x213)+_0x2bb428+_0x208208(0x1e6)+_0x5126dd['join']('\x0a'),'msgType':_0x208208(0x18e)});return;}case _0x208208(0x18d):{if(_0x36faae[_0x208208(0x153)]===0x0){await this[_0x208208(0x23b)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x272),'msgType':_0x208208(0x18e)});return;}const _0x13b7b8=_0x36faae[_0x208208(0x153)];_0x36faae[_0x208208(0x153)]=0x0,await this['sendDingMessage']({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'content':_0x208208(0x265)+_0x13b7b8+'\x20条消息','msgType':'markdown'});return;}}}await this[_0x208208(0x141)]({'conversationId':_0x57bd0f,'sessionWebhook':_0xd5c47,'senderStaffId':_0x399c6b,'senderNick':_0x119a61,'message':_0x474939,'conversationConfig':_0x150a64});}async[a2_0xfaab8f(0x14f)](){const _0x4cd076=a2_0xfaab8f,_0x361fc7=Array[_0x4cd076(0x163)](this['config']['conversations'])?this[_0x4cd076(0x139)][_0x4cd076(0x12f)]:[],_0x29e08b=this['config'][_0x4cd076(0x1cb)]??this[_0x4cd076(0x21c)],_0x449d0f=_0x361fc7['length']>0x0;console[_0x4cd076(0x216)]('['+(0x0,session_1[_0x4cd076(0x193)])()+_0x4cd076(0x25d)+this[_0x4cd076(0x12d)]),console['log']('['+(0x0,session_1[_0x4cd076(0x193)])()+_0x4cd076(0x1fa)+_0x361fc7[_0x4cd076(0x206)](_0x5edafe=>_0x5edafe[_0x4cd076(0x224)]||_0x5edafe[_0x4cd076(0x1a8)])['join'](',\x20')),(0x0,api_key_manager_1[_0x4cd076(0x1ca)])(this),await(0x0,session_1[_0x4cd076(0x14a)])(this);this[_0x4cd076(0x139)]['apiKeyCfg']&&((0x0,api_key_manager_1['resetApiKeyCfg'])(this),(0x0,api_key_manager_1[_0x4cd076(0x220)])(this));this[_0x4cd076(0x185)](),this['cronEngine'][_0x4cd076(0x136)]();_0x449d0f&&console['log']('['+(0x0,session_1[_0x4cd076(0x193)])()+_0x4cd076(0x1cd)+_0x29e08b);this[_0x4cd076(0x17e)][_0x4cd076(0x236)](_0x4cd076(0x24e),async _0x270c5d=>{const _0x420489=_0x4cd076;await this[_0x420489(0x1be)](_0x270c5d);});const _0x1039cd=[];if(_0x449d0f)for(let _0x5400f4=0x0;_0x5400f4<_0x29e08b;_0x5400f4++){console[_0x4cd076(0x216)]('['+(0x0,session_1[_0x4cd076(0x193)])()+_0x4cd076(0x202)+(_0x5400f4+0x1)),_0x1039cd[_0x4cd076(0x15b)](this[_0x4cd076(0x1ac)]()[_0x4cd076(0x250)](_0x9ba3e=>console[_0x4cd076(0x1bd)](_0x4cd076(0x238)+(_0x5400f4+0x1)+'\x20错误:',_0x9ba3e)));}const _0x263cd7=this['dingStreamClient'][_0x4cd076(0x1ae)]()[_0x4cd076(0x250)](_0x532193=>{const _0x4316e8=_0x4cd076;console[_0x4316e8(0x1bd)](_0x4316e8(0x148),_0x532193),process['exit'](0x1);});await Promise['all']([_0x263cd7,..._0x1039cd]);}}exports[a2_0xfaab8f(0x20a)]=DingClaude;
|
|
1
|
+
'use strict';const a2_0x14d974=a2_0x2a4e;(function(_0x3fb46f,_0xbf5196){const _0x44f3fc=a2_0x2a4e,_0x1639c2=_0x3fb46f();while(!![]){try{const _0x4a50d8=parseInt(_0x44f3fc(0x1da))/0x1*(-parseInt(_0x44f3fc(0xde))/0x2)+-parseInt(_0x44f3fc(0x1ee))/0x3+parseInt(_0x44f3fc(0x115))/0x4*(-parseInt(_0x44f3fc(0x188))/0x5)+-parseInt(_0x44f3fc(0x112))/0x6+-parseInt(_0x44f3fc(0x1f3))/0x7*(parseInt(_0x44f3fc(0x123))/0x8)+parseInt(_0x44f3fc(0x1bc))/0x9+parseInt(_0x44f3fc(0x164))/0xa;if(_0x4a50d8===_0xbf5196)break;else _0x1639c2['push'](_0x1639c2['shift']());}catch(_0x411b8a){_0x1639c2['push'](_0x1639c2['shift']());}}}(a2_0x3f9c,0xa8bcc));function a2_0x2a4e(_0x35dbf7,_0x2bdaf1){_0x35dbf7=_0x35dbf7-0xbb;const _0x3f9c85=a2_0x3f9c();let _0x2a4e57=_0x3f9c85[_0x35dbf7];return _0x2a4e57;}var __createBinding=this&&this[a2_0x14d974(0x218)]||(Object[a2_0x14d974(0x1bf)]?function(_0x4f33fb,_0x5200b1,_0x181e4a,_0x2018d5){const _0x2786bc=a2_0x14d974;if(_0x2018d5===undefined)_0x2018d5=_0x181e4a;var _0x118f5d=Object[_0x2786bc(0x182)](_0x5200b1,_0x181e4a);(!_0x118f5d||(_0x2786bc(0x119)in _0x118f5d?!_0x5200b1[_0x2786bc(0xf0)]:_0x118f5d[_0x2786bc(0x130)]||_0x118f5d[_0x2786bc(0x155)]))&&(_0x118f5d={'enumerable':!![],'get':function(){return _0x5200b1[_0x181e4a];}}),Object[_0x2786bc(0x103)](_0x4f33fb,_0x2018d5,_0x118f5d);}:function(_0x153760,_0x282536,_0x2ae5c1,_0x4086d0){if(_0x4086d0===undefined)_0x4086d0=_0x2ae5c1;_0x153760[_0x4086d0]=_0x282536[_0x2ae5c1];}),__setModuleDefault=this&&this[a2_0x14d974(0x179)]||(Object[a2_0x14d974(0x1bf)]?function(_0x483f33,_0x40c00a){const _0x99cd24=a2_0x14d974;Object['defineProperty'](_0x483f33,_0x99cd24(0x15c),{'enumerable':!![],'value':_0x40c00a});}:function(_0x1e2d56,_0x4b1d85){const _0x13c781=a2_0x14d974;_0x1e2d56[_0x13c781(0x15c)]=_0x4b1d85;}),__importStar=this&&this[a2_0x14d974(0x125)]||(function(){var _0x231b06=function(_0x349098){return _0x231b06=Object['getOwnPropertyNames']||function(_0x45e80b){const _0x103771=a2_0x2a4e;var _0xd8932b=[];for(var _0x3a74db in _0x45e80b)if(Object['prototype'][_0x103771(0xc2)][_0x103771(0x181)](_0x45e80b,_0x3a74db))_0xd8932b[_0xd8932b['length']]=_0x3a74db;return _0xd8932b;},_0x231b06(_0x349098);};return function(_0x154eb1){const _0x542a58=a2_0x2a4e;if(_0x154eb1&&_0x154eb1[_0x542a58(0xf0)])return _0x154eb1;var _0x168be5={};if(_0x154eb1!=null){for(var _0x28c0e7=_0x231b06(_0x154eb1),_0x2c9e8d=0x0;_0x2c9e8d<_0x28c0e7[_0x542a58(0x206)];_0x2c9e8d++)if(_0x28c0e7[_0x2c9e8d]!==_0x542a58(0x15c))__createBinding(_0x168be5,_0x154eb1,_0x28c0e7[_0x2c9e8d]);}return __setModuleDefault(_0x168be5,_0x154eb1),_0x168be5;};}()),__importDefault=this&&this[a2_0x14d974(0x12f)]||function(_0x535caa){const _0x2983b4=a2_0x14d974;return _0x535caa&&_0x535caa[_0x2983b4(0xf0)]?_0x535caa:{'default':_0x535caa};};function a2_0x3f9c(){const _0x418a86=['❌\x20只有机器人\x20owner\x20才能执行此操作','receiveReply','executeClaudeQuery','text','15865WPjDSr',':**\x20','resolveAndValidatePath','❌\x20路径不存在或不是目录:\x20**','sendClaudeResponseToDing','⚠️\x20','###\x20🌐\x20全局核心配置\x0a','-\x20图片文件:\x20','✅\x20已移除\x20','parseMqCommand','add','appendSessionLog','/task\x20','statSync','claudeSettings','handleMkdirCommand','extractQuoteInfo','find','botMsgGetCallback',']\x20注册新群:\x20','start\x20cmd\x20/k\x20\x22cd\x20/d\x20','tasksDeleted','whiteUserList','resetApiKeyCfg','push','parseOpenCommand','session',']\x20创建工作目录:\x20','path','isOwner','Error:\x20DingStreamClient\x20init\x20failed.','processRichTextMessage','parseCommandHelp','task','isDirectory','key','**\x20已暂停','getOneTodoTask','❌\x20路径已存在但不是目录:\x20`','###\x20📝\x20任务队列信息\x0a','📋\x20任务已收到,完成后我会回复','✅\x20已添加\x20','splice','parseRmCommand','findLatestSession','../common','./quote','formatHelpOverview','assistant','switchToSession','messageQueue','exec','3123369loPuVo','resolveToUserId','isMobile','create','sanitizeOutput','format','📂\x20已在文件管理器中打开:\x0a```\x0a','activeSessions','min','列出\x20','**\x0a\x0a💡\x20输入\x20`/help`\x20查看所有可用命令','resetTime','explorer\x20\x22','map','sendDingMessage','dingToken','抱歉,您暂无使用权限,请联系应用机器人owner授权...','truncateMsg','恢复定时任务\x20','层):\x0a```\x0a','useLocalOcr','isValidCronExpression','errors','⚠️\x20图片下载失败,请重试或使用文字描述','rmSync','content','-\x20**群名称:**\x20','atSender','del','\x0a...(输出已截断)','6719yQJPui','writeFileSync','mkdirSync','cancelTask',']\x20启动任务处理器\x20#','socketCallBackResponse','(空,使用全局白名单)','timestamp','parse','debugLog','saveClientConfig','parseClaudeStreamLine','\x20到当前群白名单\x0a当前白名单:\x20','join','getConversationConfig','message','sendCronNoNotifyError','./cron','existsSync','###\x20🤖\x20群配置信息\x0a','3685410KODdYC','delete','create_nl','platform','📂\x20','828569lLnPOZ','./task','⏸️\x20定时任务\x20**','description','apiKeyCfg','创建定时任务:\x20','type','imagesDeleted','getPkgVersion','getSessionDir','preBash','/session.json','\x0a💡\x20可编辑\x20config.json\x20补充更多配置','暂停定时任务\x20','removeJob','trim','utf-8','sessionsDeleted','⏳\x20正在分析定时任务描述...','length','user','-\x20**dingToken:**\x20','`\x0a\x0a💡\x20格式:\x20`分\x20时\x20日\x20月\x20周`,如\x20`0\x209\x20*\x20*\x20*`','\x20不在当前群白名单中','startNewSession','❌\x20未找到命令:\x20**','`\x0a最后修改时间:\x20','finishTask',']\x20群配置:\x20','DEFAULT_TASK_HANDLER_COUNT','connect','startsWith','conversationType','###\x20💬\x20当前会话信息\x0a','defaultDingToken','⚠️\x20该群未注册,请先使用\x20`/cfg`\x20命令注册','conversationConfig','__createBinding','findHistorySession','⚠️\x20无法解析手机号:\x20','robotCode','resume','richText','start','parseResetApiKeyCfgCommand','未找到定时任务:\x20','pictureDownloadCode','getTasksDir','hasOwnProperty','scheduleApiKeyCfgDailyReset','CronEngine','staffId','getOrCreateLogSession','darwin','❌\x20路径超出工作目录范围','收到消息:\x20群=','DEFAULT_SESSION_MAX_CONCURRENCY','cronExpression','-\x20**atSender:**\x20false\x20(不\x20@\x20发送人)','messageId','run','▶️\x20定时任务\x20**','检测到引用消息:\x20quoteMessageId=','root','parseCfgCommand','conversationId','create_cron','getActiveSessionsFile','✅\x20文件创建成功:\x20`','parseVersionCommand','✅\x20目录创建成功:\x20`','./session','**\x20已删除','requireOwnerOrSingleChat','child_process','\x0a\x0a💡\x20你也可以直接指定cron表达式:\x20`/cron\x200\x209\x20*\x20*\x20*\x20任务描述`','292zgLhKc','sanitizeLogContent','/cron\x20','❌\x20当前群未配置\x20dingToken\x20且无客户端级\x20defaultDingToken,\x20定时任务无法主动发送消息,\x20请联系管理员配置','cleanCache',')\x20类型=','unlinkSync','replace','parseCleanCommand','cronEngine','all','❌\x20目录创建失败:\x20`','now','✅\x20群配置已刷新','Fatal\x20error','hasNotifyCapability','🚀\x20请输入您的问题开始新会话','✅\x20已从队尾移除\x20','__esModule','findActiveSession','pause','抱歉,该群的机器人未在服务端注册,请联系应用机器人owner注册(','**\x20的目录','parsePwdCommand','processPictureMessage','cancel','📨\x20消息队列\x20(','[cron]','filter','config',',\x20会话ID=','⚠️\x20目录已存在:\x20`','slice','log','./messaging','parseMkdirCommand','getClientConfig','defineProperty','❌\x20打开失败:\x20','saveActiveSession','sessionDir','markdown','list','getSessionsDir','YYYY-MM-DD\x20HH:mm:ss','❌\x20只有机器人\x20owner\x20才能清除所有群缓存','addJob','dingStreamClient','-\x20**receiveReply:**\x20false\x20(不回复确认消息)','./api-key-manager','listJobs','✅\x20执行成功\x0a```\x0a','4871094xJXMMl','-\x20**会话类型:**\x20','clientSecret','208ulaaOI','parseInfoCommand','substring','当前工作目录','get','quoteText','conversationTitle','handleSessionMessage','picture','formatCronJobInfo','DingClaude','./commands','getClientDir','parseContinueSessionCommand','48kzdqrh','...','__importStar','/cron\x20resume\x20',']\x20[SYSTEM]:\x20创建会话用于记录\x20/cron\x20命令操作\x0a','❌\x20无效的cron表达式:\x20`','❌\x20删除失败:\x20`','-\x20**linkConversationId:**\x20','❌\x20未找到定时任务:\x20','analyzeAndCreate',']\x20钉钉机器人服务启动,clientId:\x20','prompt','__importDefault','writable','-\x20**工作目录:**\x20','✅\x20定时任务\x20**','/v1.0/im/bot/messages/get','isValid','\x0a```','data','**版本:**\x20','./image','⚠️\x20未找到已结束的会话','\x0a-\x20重置时间:\x20','resolveUserId','parseLsCommand','senderStaffId',']\x20任务处理器数量:\x20','loadActiveSessions','formatConversationInfo','requireOwner','formatSessionInfo','`\x0a原因:\x20','getConversationDir','❌\x20只有机器人\x20owner\x20才能操作其他群的配置','then','interruptClaudeProcess','countTodoTask','exit','dateUtil','formatPromptWithQuote','folder','\x0a\x0a**stderr:**\x0a```\x0a','runTaskHandlerLoop','\x20条消息','\x20行日志:\x0a```\x0a','clientId','input','###\x20💬\x20当前会话信息\x0a无活跃会话','\x20&&\x20','configurable','❌\x20路径已存在但不是文件:\x20`','senderNick','job','error','⚠️\x20当前无活跃会话或暂无日志','\x0a💡\x20活跃会话已保留','default','robot','DEFAULT_TASK_QUEUE_SIZE','saveTask','handleCronCommand','resolve','📭\x20当前无排队消息','stringify','42405980WvxIaH','authCheck','handleRmCommand','utils-ok','(无输出)','getSessionId','readSessionLogTail','findSubdirByName','定时任务分析失败:\x20','updateSessionFile','parseCronCommand','(未配置群级白名单,使用全局白名单)','userIdToPhone','(无历史数据)','endSession','**\x20已恢复','./claude-process','resolveAllPhonesInConfig','registerCallbackListener','\x20条消息\x0a','🧹\x20缓存清理完成','__setModuleDefault','some','formatTaskInfo','toggleJob','linkConversationId','open\x20-a\x20Terminal\x20\x22','handleTouchCommand','✅\x20已删除','call','getOwnPropertyDescriptor','conversations'];a2_0x3f9c=function(){return _0x418a86;};return a2_0x3f9c();}Object[a2_0x14d974(0x103)](exports,a2_0x14d974(0xf0),{'value':!![]}),exports[a2_0x14d974(0x11f)]=void 0x0;const child_process_1=require(a2_0x14d974(0xdc)),utils_ok_1=require(a2_0x14d974(0x167)),fs_1=__importDefault(require('fs')),path_1=__importDefault(require(a2_0x14d974(0x1a4))),common_1=require(a2_0x14d974(0x1b5)),quote_1=require(a2_0x14d974(0x1b6)),messaging_1=require(a2_0x14d974(0x100)),image_1=require(a2_0x14d974(0x138)),commands_1=require(a2_0x14d974(0x120)),messaging_2=require('./messaging'),claude_process_1=require(a2_0x14d974(0x174)),session_1=require(a2_0x14d974(0xd9)),task_1=require(a2_0x14d974(0x1f4)),api_key_manager_1=require(a2_0x14d974(0x10f)),cron_1=require(a2_0x14d974(0x1eb)),TOOL_VERSION=(0x0,common_1['projUtil'])()[a2_0x14d974(0x1fb)]();class DingClaude{constructor(_0x3cf962){const _0x874c98=a2_0x14d974;this['resolvedPhones']={},this['activeSessions']=new Map(),this[_0x874c98(0xca)]=0x5,this['DEFAULT_TASK_HANDLER_COUNT']=0x1,this[_0x874c98(0x15e)]=0x32,this[_0x874c98(0x1ca)]=_0x2032ef=>(0x0,messaging_2[_0x874c98(0x1ca)])(this,_0x2032ef),this[_0x874c98(0x18c)]=(_0x1b8877,_0x7399ca,_0x1175f3,_0x1609f5)=>(0x0,messaging_2[_0x874c98(0x18c)])(this,_0x1b8877,_0x7399ca,_0x1175f3,_0x1609f5),this[_0x874c98(0x1e5)]=claude_process_1[_0x874c98(0x1e5)],this[_0x874c98(0x147)]=(_0x53435c,_0x43640)=>(0x0,claude_process_1['interruptClaudeProcess'])(_0x53435c,_0x43640),this[_0x874c98(0x186)]=(_0x4ec1d5,_0xbdd15f,_0x26577c)=>(0x0,claude_process_1[_0x874c98(0x186)])(this,_0x4ec1d5,_0xbdd15f,_0x26577c),this[_0x874c98(0x121)]=()=>(0x0,session_1[_0x874c98(0x121)])(this),this[_0x874c98(0x102)]=()=>(0x0,session_1['getClientConfig'])(this),this[_0x874c98(0x165)]=(_0x50cd39,_0x5d64a6)=>(0x0,session_1[_0x874c98(0x165)])(this,_0x50cd39,_0x5d64a6),this['isOwner']=_0x54df67=>(0x0,session_1[_0x874c98(0x1a5)])(this,_0x54df67),this[_0x874c98(0x1e3)]=(_0x3f81d5,..._0x520bbc)=>(0x0,session_1[_0x874c98(0x1e3)])(this,_0x3f81d5,..._0x520bbc),this['hashConversationId']=_0x104537=>(0x0,session_1['hashConversationId'])(this,_0x104537),this[_0x874c98(0x1e8)]=_0x37ad7c=>(0x0,session_1[_0x874c98(0x1e8)])(this,_0x37ad7c),this[_0x874c98(0x144)]=_0x16e3ba=>(0x0,session_1[_0x874c98(0x144)])(this,_0x16e3ba),this[_0x874c98(0x109)]=_0x26cf61=>(0x0,session_1[_0x874c98(0x109)])(this,_0x26cf61),this[_0x874c98(0xc1)]=_0x2d9182=>(0x0,session_1['getTasksDir'])(this,_0x2d9182),this['getSessionDir']=_0x312e4d=>(0x0,session_1[_0x874c98(0x1fc)])(this,_0x312e4d),this['getSessionId']=session_1[_0x874c98(0x169)],this[_0x874c98(0x142)]=_0x8bb070=>(0x0,session_1[_0x874c98(0x142)])(this,_0x8bb070),this[_0x874c98(0x16a)]=(_0x326f6c,_0x48d223)=>(0x0,session_1[_0x874c98(0x16a)])(this,_0x326f6c,_0x48d223),this['findActiveSession']=_0x429f4f=>(0x0,session_1[_0x874c98(0xf1)])(this,_0x429f4f),this['findHistorySession']=(_0xc86e2e,_0x73f332)=>(0x0,session_1[_0x874c98(0x219)])(this,_0xc86e2e,_0x73f332),this[_0x874c98(0x1b4)]=_0x384619=>(0x0,session_1[_0x874c98(0x1b4)])(this,_0x384619),this[_0x874c98(0x16d)]=(_0x400e63,_0x1cb8e2)=>(0x0,session_1[_0x874c98(0x16d)])(this,_0x400e63,_0x1cb8e2),this[_0x874c98(0x193)]=session_1[_0x874c98(0x193)],this[_0x874c98(0xd5)]=_0x1f50c3=>(0x0,session_1[_0x874c98(0xd5)])(this,_0x1f50c3),this[_0x874c98(0x105)]=_0x23524f=>(0x0,session_1[_0x874c98(0x105)])(this,_0x23524f),this[_0x874c98(0x13f)]=()=>(0x0,session_1[_0x874c98(0x13f)])(this),this[_0x874c98(0x172)]=(_0x56b9c9,_0x4c2756)=>(0x0,session_1['endSession'])(this,_0x56b9c9,_0x4c2756),this['switchToSession']=(_0x1c90c1,_0x1a1e29,_0x3f48ab,_0x47baef,_0x17469c)=>(0x0,session_1[_0x874c98(0x1b9)])(this,_0x1c90c1,_0x1a1e29,_0x3f48ab,_0x47baef,_0x17469c),this[_0x874c98(0x20b)]=_0x266c35=>(0x0,session_1[_0x874c98(0x20b)])(this,_0x266c35),this[_0x874c98(0x11c)]=_0x262f0c=>(0x0,session_1['handleSessionMessage'])(this,_0x262f0c),this['cleanCache']=(_0x16fa62,_0xfb6016=!![])=>(0x0,session_1[_0x874c98(0xe2)])(this,_0x16fa62,_0xfb6016),this[_0x874c98(0x17b)]=()=>(0x0,task_1[_0x874c98(0x17b)])(this),this[_0x874c98(0x1dd)]=(_0x47ab98,_0xed19dc)=>(0x0,task_1[_0x874c98(0x1dd)])(this,_0x47ab98,_0xed19dc),this[_0x874c98(0x148)]=()=>(0x0,task_1[_0x874c98(0x148)])(this),this[_0x874c98(0x1ad)]=()=>(0x0,task_1[_0x874c98(0x1ad)])(this),this[_0x874c98(0x20e)]=_0x4a05c2=>(0x0,task_1[_0x874c98(0x20e)])(this,_0x4a05c2),this['handleTask']=()=>(0x0,task_1['handleTask'])(this),this[_0x874c98(0x14e)]=()=>(0x0,task_1['runTaskHandlerLoop'])(this),this[_0x874c98(0x15f)]=_0x5dcd79=>(0x0,task_1[_0x874c98(0x15f)])(this,_0x5dcd79),this[_0x874c98(0x151)]=_0x3cf962,this['config']=(0x0,session_1[_0x874c98(0x102)])(this);try{this[_0x874c98(0x10d)]=new utils_ok_1['DingStreamClient']({'clientId':_0x3cf962,'clientSecret':this['config'][_0x874c98(0x114)],'keepAlive':!![],'debug':this['config']['debug']??![]});}catch(_0x405ab7){console[_0x874c98(0x159)](_0x874c98(0x1a6),_0x405ab7),process[_0x874c98(0x149)](0x1);}this['cronEngine']=new cron_1[(_0x874c98(0xc4))](this);}async[a2_0x14d974(0x141)](_0x2694b8,_0x231ae6,_0x34383f){const _0x4641d8=a2_0x14d974;if(!this[_0x4641d8(0x1a5)](_0x34383f))return await this[_0x4641d8(0x1ca)]({'conversationId':_0x2694b8,'sessionWebhook':_0x231ae6,'content':_0x4641d8(0x184),'msgType':_0x4641d8(0x107)}),![];return!![];}async[a2_0x14d974(0xdb)](_0x5d41a5,_0x3fd229,_0x168301,_0x2f756e){const _0x3a5e5d=a2_0x14d974;if(this['isOwner'](_0x168301))return!![];if(_0x2f756e?.['conversationType']==='1')return!![];return await this[_0x3a5e5d(0x1ca)]({'conversationId':_0x5d41a5,'sessionWebhook':_0x3fd229,'content':'❌\x20只有机器人\x20owner\x20才能执行此操作','msgType':_0x3a5e5d(0x107)}),![];}async[a2_0x14d974(0x160)](_0x4600a4,_0x4e14cc){const _0x5d8d3d=a2_0x14d974,{conversationId:_0x5cf7d0,sessionWebhook:_0x16f8ef,senderStaffId:_0xe6b131,senderNick:_0xf8bf89,conversationConfig:_0x5f0c7a}=_0x4e14cc;switch(_0x4600a4[_0x5d8d3d(0x1f9)]){case _0x5d8d3d(0x108):{const _0x33e286=await this[_0x5d8d3d(0xc6)](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a,!![]),_0x12bab0=this['cronEngine'][_0x5d8d3d(0x110)](_0x5cf7d0);_0x33e286[_0x5d8d3d(0x106)]&&(this[_0x5d8d3d(0x193)](_0x33e286['sessionDir'],_0x5d8d3d(0x207),'/cron\x20list'),this[_0x5d8d3d(0x193)](_0x33e286[_0x5d8d3d(0x106)],'assistant',_0x5d8d3d(0x1c5)+_0x12bab0[_0x5d8d3d(0x206)]+'\x20个定时任务'));await this['sendDingMessage']({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':(0x0,cron_1['formatCronJobList'])(_0x12bab0),'msgType':_0x5d8d3d(0x107)});return;}case _0x5d8d3d(0x1ef):{const _0x20366e=this[_0x5d8d3d(0xe7)][_0x5d8d3d(0x201)](_0x4600a4['id']),_0x2ef058=await this['getOrCreateLogSession'](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a);_0x2ef058['sessionDir']&&(this['appendSessionLog'](_0x2ef058[_0x5d8d3d(0x106)],_0x5d8d3d(0x207),'/cron\x20delete\x20'+_0x4600a4['id']),this[_0x5d8d3d(0x193)](_0x2ef058[_0x5d8d3d(0x106)],_0x5d8d3d(0x1b8),_0x20366e?'删除定时任务\x20'+_0x4600a4['id']:'未找到定时任务:\x20'+_0x4600a4['id']));await this['sendDingMessage']({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':_0x20366e?_0x5d8d3d(0x132)+_0x4600a4['id']+_0x5d8d3d(0xda):'❌\x20未找到定时任务:\x20'+_0x4600a4['id'],'msgType':_0x5d8d3d(0x107)});return;}case _0x5d8d3d(0xf2):{const _0x2248aa=this[_0x5d8d3d(0xe7)][_0x5d8d3d(0x17c)](_0x4600a4['id'],![]),_0x3d196a=await this['getOrCreateLogSession'](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a);_0x3d196a['sessionDir']&&(this[_0x5d8d3d(0x193)](_0x3d196a[_0x5d8d3d(0x106)],_0x5d8d3d(0x207),'/cron\x20pause\x20'+_0x4600a4['id']),this[_0x5d8d3d(0x193)](_0x3d196a[_0x5d8d3d(0x106)],_0x5d8d3d(0x1b8),_0x2248aa?_0x5d8d3d(0x200)+_0x4600a4['id']:_0x5d8d3d(0xbf)+_0x4600a4['id']));await this[_0x5d8d3d(0x1ca)]({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':_0x2248aa?_0x5d8d3d(0x1f5)+_0x4600a4['id']+_0x5d8d3d(0x1ac):_0x5d8d3d(0x12b)+_0x4600a4['id'],'msgType':'markdown'});return;}case _0x5d8d3d(0xbb):{const _0x58c9e2=this['cronEngine']['toggleJob'](_0x4600a4['id'],!![]),_0x443e79=await this[_0x5d8d3d(0xc6)](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a);_0x443e79[_0x5d8d3d(0x106)]&&(this[_0x5d8d3d(0x193)](_0x443e79[_0x5d8d3d(0x106)],'user',_0x5d8d3d(0x126)+_0x4600a4['id']),this['appendSessionLog'](_0x443e79[_0x5d8d3d(0x106)],_0x5d8d3d(0x1b8),_0x58c9e2?_0x5d8d3d(0x1ce)+_0x4600a4['id']:_0x5d8d3d(0xbf)+_0x4600a4['id']));await this[_0x5d8d3d(0x1ca)]({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':_0x58c9e2?_0x5d8d3d(0xcf)+_0x4600a4['id']+_0x5d8d3d(0x173):_0x5d8d3d(0x12b)+_0x4600a4['id'],'msgType':'markdown'});return;}case _0x5d8d3d(0xd4):{if(!(0x0,cron_1[_0x5d8d3d(0x1d1)])(_0x4600a4['cronExpression'])){await this[_0x5d8d3d(0x1ca)]({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':_0x5d8d3d(0x128)+_0x4600a4[_0x5d8d3d(0xcb)]+_0x5d8d3d(0x209),'msgType':_0x5d8d3d(0x107)});return;}if(!this[_0x5d8d3d(0xed)](_0x4e14cc['conversationConfig'])){await this['sendCronNoNotifyError'](_0x5cf7d0,_0x16f8ef);return;}const _0x9053c=this[_0x5d8d3d(0xe7)][_0x5d8d3d(0x10c)]({'conversationId':_0x5cf7d0,'cronExpression':_0x4600a4[_0x5d8d3d(0xcb)],'description':this['sanitizeLogContent'](_0x4600a4[_0x5d8d3d(0x12e)][_0x5d8d3d(0x117)](0x0,0x32)),'prompt':_0x4600a4[_0x5d8d3d(0x12e)],'senderStaffId':_0xe6b131,'senderNick':_0xf8bf89}),_0x9d3515=await this[_0x5d8d3d(0xc6)](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a);_0x9d3515[_0x5d8d3d(0x106)]&&(this[_0x5d8d3d(0x193)](_0x9d3515[_0x5d8d3d(0x106)],_0x5d8d3d(0x207),'/cron\x20'+_0x4600a4[_0x5d8d3d(0xcb)]+'\x20'+this['sanitizeLogContent'](_0x4600a4[_0x5d8d3d(0x12e)])),this[_0x5d8d3d(0x193)](_0x9d3515[_0x5d8d3d(0x106)],_0x5d8d3d(0x1b8),'创建定时任务:\x20'+_0x9053c['id']+'\x20['+_0x9053c[_0x5d8d3d(0xcb)]+']\x20'+_0x9053c[_0x5d8d3d(0x1f6)]));await this[_0x5d8d3d(0x1ca)]({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':(0x0,cron_1[_0x5d8d3d(0x11e)])(_0x9053c),'msgType':'markdown'});return;}case _0x5d8d3d(0x1f0):{if(!this['hasNotifyCapability'](_0x4e14cc[_0x5d8d3d(0x217)])){await this['sendCronNoNotifyError'](_0x5cf7d0,_0x16f8ef);return;}await this['sendDingMessage']({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':_0x5d8d3d(0x205)});const _0x3c7a12=await this['cronEngine'][_0x5d8d3d(0x12c)](_0x5cf7d0,_0x4600a4[_0x5d8d3d(0x152)],_0xe6b131,_0xf8bf89),_0x1cb36f=await this[_0x5d8d3d(0xc6)](_0x5cf7d0,_0x16f8ef,_0xe6b131,_0xf8bf89,_0x5f0c7a);_0x3c7a12[_0x5d8d3d(0x158)]?(_0x1cb36f[_0x5d8d3d(0x106)]&&(this[_0x5d8d3d(0x193)](_0x1cb36f[_0x5d8d3d(0x106)],'user',_0x5d8d3d(0xe0)+this[_0x5d8d3d(0xdf)](_0x4600a4[_0x5d8d3d(0x152)])),this[_0x5d8d3d(0x193)](_0x1cb36f[_0x5d8d3d(0x106)],_0x5d8d3d(0x1b8),_0x5d8d3d(0x1f8)+_0x3c7a12[_0x5d8d3d(0x158)]['id']+'\x20['+_0x3c7a12[_0x5d8d3d(0x158)][_0x5d8d3d(0xcb)]+']\x20'+_0x3c7a12['job'][_0x5d8d3d(0x1f6)])),await this[_0x5d8d3d(0x1ca)]({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':(0x0,cron_1['formatCronJobInfo'])(_0x3c7a12[_0x5d8d3d(0x158)]),'msgType':'markdown'})):(_0x1cb36f[_0x5d8d3d(0x106)]&&(this[_0x5d8d3d(0x193)](_0x1cb36f[_0x5d8d3d(0x106)],_0x5d8d3d(0x207),_0x5d8d3d(0xe0)+this[_0x5d8d3d(0xdf)](_0x4600a4['input'])),this[_0x5d8d3d(0x193)](_0x1cb36f['sessionDir'],_0x5d8d3d(0x1b8),_0x5d8d3d(0x16c)+_0x3c7a12[_0x5d8d3d(0x159)])),await this['sendDingMessage']({'conversationId':_0x5cf7d0,'sessionWebhook':_0x16f8ef,'content':'❌\x20定时任务分析失败:\x20'+_0x3c7a12[_0x5d8d3d(0x159)]+_0x5d8d3d(0xdd),'msgType':_0x5d8d3d(0x107)}));return;}}}[a2_0x14d974(0xdf)](_0x5b791a){const _0x23666d=a2_0x14d974;return _0x5b791a[_0x23666d(0xe5)](/\n/g,'\x5cn')[_0x23666d(0xe5)](/\r/g,'\x5cr');}[a2_0x14d974(0x1c0)](_0x273832){const _0x24a4e4=a2_0x14d974,_0x314433=_0x273832[_0x24a4e4(0xe5)](/\r\n/g,'\x0a'),_0x7d30a1=0x1f40;if(_0x314433[_0x24a4e4(0x206)]>_0x7d30a1)return _0x314433[_0x24a4e4(0x117)](0x0,_0x7d30a1)+_0x24a4e4(0x1d9);return _0x314433;}[a2_0x14d974(0x1cd)](_0x4bffee,_0x1c3b92=0x64){const _0x5957f9=a2_0x14d974,_0x5de864=_0x4bffee['replace'](/\n/g,'\x20')[_0x5957f9(0x202)]();return _0x5de864[_0x5957f9(0x206)]>_0x1c3b92?_0x5de864[_0x5957f9(0xfe)](0x0,_0x1c3b92)+_0x5957f9(0x124):_0x5de864;}async[a2_0x14d974(0xc6)](_0x788b67,_0x1f87ad,_0x971d5b,_0x43ab7d,_0x499649,_0x270a85=![]){const _0x579054=a2_0x14d974,_0xd3323c=this[_0x579054(0xf1)](_0x788b67);if(_0xd3323c){const _0x279861=this[_0x579054(0x1fc)](_0xd3323c[_0x579054(0x1a2)]['session']);return{'sessionDir':_0x279861,'isNew':![]};}if(_0x270a85)return{'sessionDir':null,'isNew':![]};const _0x9ace19=Date[_0x579054(0xea)](),_0x34c815={'conversationId':_0x788b67,'sessionWebhook':_0x1f87ad,'startTime':_0x9ace19,'startTimeStr':utils_ok_1[_0x579054(0x14a)]['mm'](_0x9ace19)[_0x579054(0x1c1)]('YYYY-MM-DD-HH-mm-ss'),'startStaffId':_0x971d5b,'startNickName':_0x579054(0xf9)+_0x43ab7d},_0x373d5b=this[_0x579054(0x1fc)](_0x34c815);return fs_1[_0x579054(0x15c)][_0x579054(0x1dc)](_0x373d5b,{'recursive':!![]}),fs_1[_0x579054(0x15c)]['writeFileSync'](_0x373d5b+_0x579054(0x1fe),JSON[_0x579054(0x163)](_0x34c815,null,0x2),_0x579054(0x203)),fs_1[_0x579054(0x15c)]['appendFileSync'](_0x373d5b+'/session.log','['+(0x0,session_1['timestamp'])()+_0x579054(0x127),_0x579054(0x203)),{'sessionDir':_0x373d5b,'isNew':!![]};}['hasNotifyCapability'](_0x2b7fb5){const _0x57ecc9=a2_0x14d974;return!!(_0x2b7fb5[_0x57ecc9(0x1cb)]||this[_0x57ecc9(0xfb)][_0x57ecc9(0x215)]);}async[a2_0x14d974(0x1ea)](_0xb95715,_0x2e7d94){const _0x3f9c39=a2_0x14d974;await this[_0x3f9c39(0x1ca)]({'conversationId':_0xb95715,'sessionWebhook':_0x2e7d94,'content':_0x3f9c39(0xe1),'msgType':_0x3f9c39(0x107)});}[a2_0x14d974(0x18a)](_0x57e14a,_0x35d3b9){const _0x3df5b4=a2_0x14d974,_0x1c3291=this['getConversationDir'](_0x57e14a);if(_0x35d3b9[_0x3df5b4(0x212)]('/'))return{'absolutePath':'','error':'❌\x20路径不能使用绝对路径(不能以\x20/\x20开头)'};const _0x4e9c56=path_1[_0x3df5b4(0x15c)]['resolve'](_0x1c3291,_0x35d3b9);if(!_0x4e9c56[_0x3df5b4(0x212)](_0x1c3291))return{'absolutePath':'','error':'❌\x20路径超出工作目录范围'};return{'absolutePath':_0x4e9c56};}async[a2_0x14d974(0x197)](_0x37871d,_0x5415c2,_0xafffcb){const _0x4735d5=a2_0x14d974,{absolutePath:_0x310a98,error:_0x53904d}=this[_0x4735d5(0x18a)](_0x37871d,_0xafffcb);if(_0x53904d){await this['sendDingMessage']({'conversationId':_0x37871d,'sessionWebhook':_0x5415c2,'content':_0x53904d,'msgType':'markdown'});return;}try{const _0x492cc3=fs_1[_0x4735d5(0x15c)]['statSync'](_0x310a98);_0x492cc3[_0x4735d5(0x1aa)]()?await this[_0x4735d5(0x1ca)]({'conversationId':_0x37871d,'sessionWebhook':_0x5415c2,'content':_0x4735d5(0xfd)+_0xafffcb+'`','msgType':_0x4735d5(0x107)}):await this[_0x4735d5(0x1ca)]({'conversationId':_0x37871d,'sessionWebhook':_0x5415c2,'content':_0x4735d5(0x1ae)+_0xafffcb+'`','msgType':_0x4735d5(0x107)});return;}catch{}try{fs_1[_0x4735d5(0x15c)][_0x4735d5(0x1dc)](_0x310a98,{'recursive':!![]}),await this[_0x4735d5(0x1ca)]({'conversationId':_0x37871d,'sessionWebhook':_0x5415c2,'content':_0x4735d5(0xd8)+_0xafffcb+'`','msgType':'markdown'});}catch(_0x4f5d7e){await this[_0x4735d5(0x1ca)]({'conversationId':_0x37871d,'sessionWebhook':_0x5415c2,'content':_0x4735d5(0xe9)+_0xafffcb+_0x4735d5(0x143)+(_0x4f5d7e instanceof Error?_0x4f5d7e[_0x4735d5(0x1e9)]:String(_0x4f5d7e)),'msgType':'markdown'});}}async[a2_0x14d974(0x166)](_0x4e133b,_0x34653e,_0x4c95c1){const _0x2a3cdb=a2_0x14d974,{absolutePath:_0x3a8665,error:_0x2d2162}=this['resolveAndValidatePath'](_0x4e133b,_0x4c95c1);if(_0x2d2162){await this['sendDingMessage']({'conversationId':_0x4e133b,'sessionWebhook':_0x34653e,'content':_0x2d2162,'msgType':_0x2a3cdb(0x107)});return;}let _0xb0af84;try{_0xb0af84=fs_1[_0x2a3cdb(0x15c)]['statSync'](_0x3a8665);}catch{await this[_0x2a3cdb(0x1ca)]({'conversationId':_0x4e133b,'sessionWebhook':_0x34653e,'content':'❌\x20路径不存在:\x20`'+_0x4c95c1+'`','msgType':_0x2a3cdb(0x107)});return;}const _0x1fa7d0=_0xb0af84[_0x2a3cdb(0x1aa)]();try{_0x1fa7d0?fs_1[_0x2a3cdb(0x15c)][_0x2a3cdb(0x1d4)](_0x3a8665,{'recursive':!![],'force':!![]}):fs_1[_0x2a3cdb(0x15c)][_0x2a3cdb(0xe4)](_0x3a8665),await this['sendDingMessage']({'conversationId':_0x4e133b,'sessionWebhook':_0x34653e,'content':_0x2a3cdb(0x180)+(_0x1fa7d0?'目录':'文件')+':\x20`'+_0x4c95c1+'`','msgType':_0x2a3cdb(0x107)});}catch(_0xaa5cfb){await this[_0x2a3cdb(0x1ca)]({'conversationId':_0x4e133b,'sessionWebhook':_0x34653e,'content':_0x2a3cdb(0x129)+_0x4c95c1+_0x2a3cdb(0x143)+(_0xaa5cfb instanceof Error?_0xaa5cfb[_0x2a3cdb(0x1e9)]:String(_0xaa5cfb)),'msgType':_0x2a3cdb(0x107)});}}async[a2_0x14d974(0x17f)](_0x9cdf15,_0x5ee30d,_0xccec8f){const _0x8e9b9=a2_0x14d974,{absolutePath:_0x50011e,error:_0x46e130}=this[_0x8e9b9(0x18a)](_0x9cdf15,_0xccec8f);if(_0x46e130){await this[_0x8e9b9(0x1ca)]({'conversationId':_0x9cdf15,'sessionWebhook':_0x5ee30d,'content':_0x46e130,'msgType':'markdown'});return;}try{const _0x2ee6ac=fs_1['default'][_0x8e9b9(0x195)](_0x50011e);_0x2ee6ac['isFile']()?await this[_0x8e9b9(0x1ca)]({'conversationId':_0x9cdf15,'sessionWebhook':_0x5ee30d,'content':'⚠️\x20文件已存在:\x20`'+_0xccec8f+_0x8e9b9(0x20d)+utils_ok_1[_0x8e9b9(0x14a)]['mm'](_0x2ee6ac['mtime'])['format'](_0x8e9b9(0x10a)),'msgType':_0x8e9b9(0x107)}):await this[_0x8e9b9(0x1ca)]({'conversationId':_0x9cdf15,'sessionWebhook':_0x5ee30d,'content':_0x8e9b9(0x156)+_0xccec8f+'`','msgType':_0x8e9b9(0x107)});return;}catch{}try{const _0x4db11c=path_1[_0x8e9b9(0x15c)]['dirname'](_0x50011e);fs_1[_0x8e9b9(0x15c)]['mkdirSync'](_0x4db11c,{'recursive':!![]}),fs_1[_0x8e9b9(0x15c)][_0x8e9b9(0x1db)](_0x50011e,'',_0x8e9b9(0x203)),await this[_0x8e9b9(0x1ca)]({'conversationId':_0x9cdf15,'sessionWebhook':_0x5ee30d,'content':_0x8e9b9(0xd6)+_0xccec8f+'`','msgType':_0x8e9b9(0x107)});}catch(_0x25a57d){await this[_0x8e9b9(0x1ca)]({'conversationId':_0x9cdf15,'sessionWebhook':_0x5ee30d,'content':'❌\x20文件创建失败:\x20`'+_0xccec8f+'`\x0a原因:\x20'+(_0x25a57d instanceof Error?_0x25a57d['message']:String(_0x25a57d)),'msgType':_0x8e9b9(0x107)});}}async['botMsgGetCallback'](_0x172dce){const _0x2c959c=a2_0x14d974;this[_0x2c959c(0x10d)][_0x2c959c(0x1df)](_0x172dce['headers'][_0x2c959c(0xcd)],'');const _0x87096e=JSON[_0x2c959c(0x1e2)](_0x172dce[_0x2c959c(0x136)]),{senderNick:_0x1f50b0,senderStaffId:_0x2feb3d,conversationId:_0x27df03,conversationTitle:_0x51594d,sessionWebhook:_0x11e179,msgtype:_0x89fd99,conversationType:_0x379be9}=_0x87096e,_0x57d3f9=_0x87096e[_0x2c959c(0x187)]?.[_0x2c959c(0x1d5)]?.[_0x2c959c(0x202)]()??'';this[_0x2c959c(0x1e3)](_0x2c959c(0xc9)+_0x51594d+'('+_0x27df03+'),\x20发送者='+_0x1f50b0+'('+_0x2feb3d+'),\x20类型='+_0x89fd99+',\x20内容='+_0x57d3f9[_0x2c959c(0x117)](0x0,0x32));if(!this[_0x2c959c(0x165)](_0x2feb3d,_0x27df03)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0x1cc)});return;}const _0x5dca14=this[_0x2c959c(0x1e8)](_0x27df03);let _0xc2e69e;if(_0x89fd99===_0x2c959c(0x11d)&&_0x87096e[_0x2c959c(0xc0)]){const _0x216353=this[_0x2c959c(0x144)](_0x27df03),_0x91e903=_0x5dca14?.[_0x2c959c(0x1d0)]!==![],_0xb8b046=await(0x0,image_1[_0x2c959c(0xf6)])(this,_0x87096e[_0x2c959c(0xc0)],_0x87096e['robotCode'],_0x216353,_0x91e903,_0x57d3f9||undefined);if(!_0xb8b046){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0x1d3)});return;}_0xc2e69e=_0xb8b046;}else{if(_0x89fd99===_0x2c959c(0xbc)&&_0x87096e[_0x2c959c(0x1d5)]?.['richText']){const _0x224ef3=this[_0x2c959c(0x144)](_0x27df03),_0x5d0e4d=_0x5dca14?.[_0x2c959c(0x1d0)]!==![];_0xc2e69e=await(0x0,image_1[_0x2c959c(0x1a7)])(this,_0x87096e[_0x2c959c(0x1d5)][_0x2c959c(0xbc)],_0x87096e[_0x2c959c(0x21b)],_0x224ef3,_0x5d0e4d);}else{_0xc2e69e=_0x57d3f9;if(!_0xc2e69e)return;}}if(!_0xc2e69e['startsWith']('/')&&_0x89fd99===_0x2c959c(0x187)){const _0x31f202=(0x0,quote_1[_0x2c959c(0x198)])(_0x87096e);if(_0x31f202){this[_0x2c959c(0x1e3)](_0x2c959c(0xd0)+_0x31f202['quoteMessageId']);if(_0x31f202['quoteMessageId']&&!_0x31f202['quoteText']){const _0x4c3d50=await(0x0,messaging_1['fetchQuotedMessage'])(this,_0x31f202['quoteMessageId']);if(_0x4c3d50)_0x31f202[_0x2c959c(0x11a)]=_0x4c3d50;}_0x31f202['quoteText']&&(_0xc2e69e=(0x0,quote_1[_0x2c959c(0x14b)])(_0xc2e69e,_0x31f202));}}const _0x461b33=(0x0,commands_1[_0x2c959c(0xd2)])(_0xc2e69e);if(_0x461b33!==null){if(_0x461b33[_0x2c959c(0xd3)]&&_0x5dca14?.['conversationType']!=='1'&&!this[_0x2c959c(0x1a5)](_0x2feb3d)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x145),'msgType':_0x2c959c(0x107)});return;}if(!await this[_0x2c959c(0xdb)](_0x27df03,_0x11e179,_0x2feb3d,_0x5dca14))return;const _0x5e76ad=_0x461b33[_0x2c959c(0xd3)]||_0x27df03,_0x5bed7f=_0x5e76ad!==_0x27df03,_0x5499b0=_0x5bed7f?this[_0x2c959c(0xfb)][_0x2c959c(0x183)][_0x2c959c(0x199)](_0x9c8da4=>_0x9c8da4[_0x2c959c(0xd3)]===_0x5e76ad):_0x5dca14,_0x28cf45=!!(_0x461b33[_0x2c959c(0x1cb)]||_0x461b33[_0x2c959c(0x17d)]||_0x461b33['whiteUserList']&&_0x461b33['whiteUserList']['length']>0x0||_0x461b33['conversationTitle']||_0x461b33[_0x2c959c(0x1d7)]!==undefined||_0x461b33['receiveReply']!==undefined||_0x461b33[_0x2c959c(0x1fd)]!==undefined);if(_0x5499b0&&_0x28cf45){if(_0x461b33[_0x2c959c(0x11b)])_0x5499b0[_0x2c959c(0x11b)]=_0x461b33['conversationTitle'];if(_0x379be9&&!_0x5bed7f)_0x5499b0[_0x2c959c(0x213)]=_0x379be9;if(_0x461b33[_0x2c959c(0x1cb)])_0x5499b0[_0x2c959c(0x1cb)]=_0x461b33[_0x2c959c(0x1cb)];if(_0x461b33['linkConversationId'])_0x5499b0[_0x2c959c(0x17d)]=_0x461b33[_0x2c959c(0x17d)];if(_0x461b33[_0x2c959c(0x1d7)]!==undefined)_0x5499b0[_0x2c959c(0x1d7)]=_0x461b33[_0x2c959c(0x1d7)];if(_0x461b33[_0x2c959c(0x185)]!==undefined)_0x5499b0[_0x2c959c(0x185)]=_0x461b33[_0x2c959c(0x185)];if(_0x461b33[_0x2c959c(0x1fd)]!==undefined)_0x5499b0['preBash']=_0x461b33[_0x2c959c(0x1fd)];if(_0x461b33[_0x2c959c(0x19e)]&&_0x461b33[_0x2c959c(0x19e)][_0x2c959c(0x206)]>0x0){_0x5499b0[_0x2c959c(0x19e)]=_0x461b33[_0x2c959c(0x19e)];for(const _0x1f419d of _0x461b33[_0x2c959c(0x19e)]){(0x0,session_1[_0x2c959c(0x1be)])(_0x1f419d)&&await(0x0,session_1[_0x2c959c(0x13b)])(this,_0x1f419d);}}(0x0,api_key_manager_1[_0x2c959c(0x1e4)])(this),console[_0x2c959c(0xff)]('['+(0x0,session_1[_0x2c959c(0x1e1)])()+']\x20刷新群配置:\x20'+(_0x5499b0[_0x2c959c(0x11b)]||_0x5e76ad)+'('+_0x5e76ad+')');}else{if(!_0x5499b0){const _0x3319d4={'conversationId':_0x5e76ad,'conversationType':_0x5bed7f?'1':_0x379be9,'conversationTitle':_0x461b33[_0x2c959c(0x11b)]||(_0x5bed7f?'':_0x51594d)};if(_0x461b33['dingToken'])_0x3319d4[_0x2c959c(0x1cb)]=_0x461b33[_0x2c959c(0x1cb)];if(_0x461b33[_0x2c959c(0x17d)])_0x3319d4[_0x2c959c(0x17d)]=_0x461b33[_0x2c959c(0x17d)];if(_0x461b33[_0x2c959c(0x1d7)]!==undefined)_0x3319d4[_0x2c959c(0x1d7)]=_0x461b33[_0x2c959c(0x1d7)];if(_0x461b33['receiveReply']!==undefined)_0x3319d4[_0x2c959c(0x185)]=_0x461b33[_0x2c959c(0x185)];if(_0x461b33[_0x2c959c(0x1fd)]!==undefined)_0x3319d4[_0x2c959c(0x1fd)]=_0x461b33[_0x2c959c(0x1fd)];if(_0x461b33[_0x2c959c(0x19e)]&&_0x461b33[_0x2c959c(0x19e)][_0x2c959c(0x206)]>0x0){_0x3319d4[_0x2c959c(0x19e)]=_0x461b33[_0x2c959c(0x19e)];for(const _0x255474 of _0x461b33[_0x2c959c(0x19e)]){(0x0,session_1[_0x2c959c(0x1be)])(_0x255474)&&await(0x0,session_1[_0x2c959c(0x13b)])(this,_0x255474);}}this[_0x2c959c(0xfb)]['conversations'][_0x2c959c(0x1a0)](_0x3319d4),(0x0,api_key_manager_1[_0x2c959c(0x1e4)])(this),console[_0x2c959c(0xff)]('['+(0x0,session_1[_0x2c959c(0x1e1)])()+_0x2c959c(0x19b)+(_0x3319d4['conversationTitle']||_0x5e76ad)+'('+_0x5e76ad+_0x2c959c(0xe3)+(_0x3319d4['conversationType']||'-'));}}const _0x44c819=this[_0x2c959c(0x144)](_0x5e76ad);!fs_1[_0x2c959c(0x15c)][_0x2c959c(0x1ec)](_0x44c819)&&(fs_1[_0x2c959c(0x15c)][_0x2c959c(0x1dc)](_0x44c819,{'recursive':!![]}),console['log']('['+(0x0,session_1[_0x2c959c(0x1e1)])()+_0x2c959c(0x1a3)+_0x44c819));const _0x450e60=_0x5499b0||this[_0x2c959c(0x1e8)](_0x5e76ad),_0x482191=[_0x5499b0?_0x2c959c(0xeb):'✅\x20群已注册',_0x2c959c(0x1d6)+(_0x450e60?.[_0x2c959c(0x11b)]||_0x5e76ad),'-\x20**群ID:**\x20'+_0x5e76ad];if(_0x450e60?.[_0x2c959c(0x213)])_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x113)+(_0x450e60['conversationType']==='1'?'单聊':_0x450e60[_0x2c959c(0x213)]==='2'?'群聊':_0x450e60['conversationType']));if(_0x450e60?.[_0x2c959c(0x1cb)])_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x208)+_0x450e60[_0x2c959c(0x1cb)][_0x2c959c(0x117)](0x0,0x8)+'...');else _0x482191['push']('-\x20**dingToken:**\x20(未指定,\x20使用\x20defaultDingToken)');if(_0x450e60?.[_0x2c959c(0x17d)])_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x12a)+_0x450e60[_0x2c959c(0x17d)]);if(_0x450e60?.[_0x2c959c(0x1d7)]===![])_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0xcc));if(_0x450e60?.[_0x2c959c(0x185)]===![])_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x10e));if(_0x450e60?.[_0x2c959c(0x19e)]?.[_0x2c959c(0x206)]){const _0x4e4b64=_0x450e60[_0x2c959c(0x19e)][_0x2c959c(0x1c9)](_0x23af90=>{if((0x0,session_1['isMobile'])(_0x23af90))return _0x23af90;return(0x0,session_1['userIdToPhone'])(this,_0x23af90)||_0x23af90;})[_0x2c959c(0x1e7)](',\x20');_0x482191[_0x2c959c(0x1a0)]('-\x20**whiteUserList:**\x20'+_0x4e4b64);}_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x131)+_0x44c819),_0x482191[_0x2c959c(0x1a0)](_0x2c959c(0x1ff)),await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x482191[_0x2c959c(0x1e7)]('\x0a'),'msgType':_0x2c959c(0x107)});return;}if((0x0,commands_1['parseHelpCommand'])(_0xc2e69e)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':(0x0,commands_1[_0x2c959c(0x1b7)])(TOOL_VERSION,this['isOwner'](_0x2feb3d)),'msgType':_0x2c959c(0x107)});return;}if((0x0,commands_1[_0x2c959c(0xd7)])(_0xc2e69e)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x137)+TOOL_VERSION,'msgType':_0x2c959c(0x107)});return;}const _0x10a22f=(0x0,commands_1[_0x2c959c(0x1a8)])(_0xc2e69e);if(_0x10a22f){const _0x5cf1f5=(0x0,commands_1['getCommandByName'])(_0x10a22f);_0x5cf1f5?await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':(0x0,commands_1['formatCommandHelp'])(_0x5cf1f5),'msgType':_0x2c959c(0x107)}):await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x20c)+_0x10a22f+_0x2c959c(0x1c6),'msgType':_0x2c959c(0x107)});return;}if(!_0x5dca14){console['log']('未注册的机器人,群:'+_0x51594d+','+_0x27df03);this[_0x2c959c(0x1a5)](_0x2feb3d)?await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0x216),'msgType':_0x2c959c(0x107)}):await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0xf3)+_0x27df03+')...'});return;}const _0x9dd00c=(0x0,commands_1[_0x2c959c(0xe6)])(_0xc2e69e);if(_0x9dd00c!==null){if(_0x9dd00c===_0x2c959c(0xe8)&&_0x5dca14?.[_0x2c959c(0x213)]!=='1'&&!this['isOwner'](_0x2feb3d)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x10b),'msgType':_0x2c959c(0x107)});return;}if(!await this[_0x2c959c(0xdb)](_0x27df03,_0x11e179,_0x2feb3d,_0x5dca14))return;const _0x11a374=_0x9dd00c==='all'?null:_0x27df03,_0x8feb66=this[_0x2c959c(0xe2)](_0x11a374,!![]),_0x1f331e=[];_0x1f331e[_0x2c959c(0x1a0)](_0x2c959c(0x178));if(_0x8feb66['sessionsDeleted']>0x0)_0x1f331e[_0x2c959c(0x1a0)]('-\x20会话目录:\x20'+_0x8feb66[_0x2c959c(0x204)]+'\x20个');if(_0x8feb66[_0x2c959c(0x19d)]>0x0)_0x1f331e['push']('-\x20任务目录:\x20'+_0x8feb66['tasksDeleted']+'\x20个');if(_0x8feb66[_0x2c959c(0x1fa)]>0x0)_0x1f331e[_0x2c959c(0x1a0)](_0x2c959c(0x18f)+_0x8feb66['imagesDeleted']+'\x20个');_0x8feb66[_0x2c959c(0x204)]===0x0&&_0x8feb66[_0x2c959c(0x19d)]===0x0&&_0x8feb66[_0x2c959c(0x1fa)]===0x0&&_0x1f331e['push'](_0x2c959c(0x171));_0x1f331e[_0x2c959c(0x1a0)](_0x2c959c(0x15b));_0x8feb66[_0x2c959c(0x1d2)][_0x2c959c(0x206)]>0x0&&_0x1f331e[_0x2c959c(0x1a0)]('\x0a⚠️\x20错误:\x20'+_0x8feb66[_0x2c959c(0x1d2)][_0x2c959c(0x1e7)](';\x20'));await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x1f331e[_0x2c959c(0x1e7)]('\x0a'),'msgType':_0x2c959c(0x107)});return;}if((0x0,commands_1[_0x2c959c(0xbe)])(_0xc2e69e)){if(!await this['requireOwner'](_0x27df03,_0x11e179,_0x2feb3d))return;if(!this[_0x2c959c(0xfb)][_0x2c959c(0x1f7)]){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'⚠️\x20未配置\x20apiKeyCfg,无需重置','msgType':_0x2c959c(0x107)});return;}(0x0,api_key_manager_1['resetApiKeyCfg'])(this);const _0x259ea4=this[_0x2c959c(0xfb)][_0x2c959c(0x1f7)][_0x2c959c(0x196)][_0x2c959c(0xfa)](_0x3e9b7a=>_0x3e9b7a[_0x2c959c(0x134)])[_0x2c959c(0x206)];await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'✅\x20apiKeyCfg\x20已重置\x0a-\x20有效\x20Key\x20数:\x20'+_0x259ea4+'/'+this[_0x2c959c(0xfb)][_0x2c959c(0x1f7)]['claudeSettings'][_0x2c959c(0x206)]+_0x2c959c(0x13a)+(this['config'][_0x2c959c(0x1f7)][_0x2c959c(0x1c7)]||'-'),'msgType':'markdown'});return;}const _0x5d2aa7=(0x0,commands_1['parseAuthCommand'])(_0xc2e69e);if(_0x5d2aa7){if(!await this[_0x2c959c(0x141)](_0x27df03,_0x11e179,_0x2feb3d))return;const _0x5467aa=_0x5dca14[_0x2c959c(0x19e)];if(_0x5d2aa7['type']===_0x2c959c(0x108)){const _0x18ff26=_0x5467aa&&_0x5467aa[_0x2c959c(0x206)]>0x0?_0x5467aa[_0x2c959c(0x1c9)](_0x17b764=>{const _0x2d1900=_0x2c959c,_0x1d5ebd=(0x0,session_1[_0x2d1900(0x170)])(this,_0x17b764);return'-\x20'+(_0x1d5ebd||_0x17b764);})[_0x2c959c(0x1e7)]('\x0a'):_0x2c959c(0x16f);await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'📋\x20**当前群白名单**\x0a'+_0x18ff26,'msgType':_0x2c959c(0x107)});return;}if(_0x5d2aa7[_0x2c959c(0x1f9)]===_0x2c959c(0x192)){let _0x59f1b8=_0x5d2aa7[_0x2c959c(0xc5)];if((0x0,session_1[_0x2c959c(0x1be)])(_0x5d2aa7['staffId'])){_0x59f1b8=await(0x0,session_1[_0x2c959c(0x13b)])(this,_0x5d2aa7[_0x2c959c(0xc5)]);if(!_0x59f1b8){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x21a)+_0x5d2aa7['staffId'],'msgType':_0x2c959c(0x107)});return;}}const _0x5877d1=_0x5467aa?.[_0x2c959c(0x17a)](_0x51b8fe=>(0x0,session_1[_0x2c959c(0x1bd)])(this,_0x51b8fe)===_0x59f1b8);if(_0x5877d1){const _0x4ad9b7=(0x0,session_1[_0x2c959c(0x170)])(this,_0x59f1b8)||_0x59f1b8;await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x18d)+_0x4ad9b7+'\x20已在当前群白名单中','msgType':_0x2c959c(0x107)});return;}!_0x5dca14[_0x2c959c(0x19e)]&&(_0x5dca14['whiteUserList']=[]);_0x5dca14['whiteUserList'][_0x2c959c(0x1a0)](_0x5d2aa7['staffId']),(0x0,api_key_manager_1[_0x2c959c(0x1e4)])(this);const _0x1b5ac4=_0x5dca14[_0x2c959c(0x19e)][_0x2c959c(0x1c9)](_0x176507=>{const _0x51f1dd=_0x2c959c,_0x45b7d6=(0x0,session_1[_0x51f1dd(0x1bd)])(this,_0x176507);return(0x0,session_1['userIdToPhone'])(this,_0x45b7d6)||_0x176507;}),_0x5bbfee=(0x0,session_1[_0x2c959c(0x1be)])(_0x5d2aa7['staffId'])?_0x5d2aa7['staffId']:(0x0,session_1['userIdToPhone'])(this,_0x5d2aa7[_0x2c959c(0xc5)])||_0x5d2aa7[_0x2c959c(0xc5)];await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x1b1)+_0x5bbfee+_0x2c959c(0x1e6)+_0x1b5ac4['join'](',\x20'),'msgType':_0x2c959c(0x107)});return;}if(_0x5d2aa7['type']===_0x2c959c(0x1d8)){let _0xd7b528=_0x5d2aa7[_0x2c959c(0xc5)];if((0x0,session_1[_0x2c959c(0x1be)])(_0x5d2aa7['staffId'])){_0xd7b528=await(0x0,session_1[_0x2c959c(0x13b)])(this,_0x5d2aa7['staffId']);if(!_0xd7b528){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x21a)+_0x5d2aa7[_0x2c959c(0xc5)],'msgType':_0x2c959c(0x107)});return;}}const _0x4eb44f=_0x5467aa?.['findIndex'](_0x451963=>(0x0,session_1[_0x2c959c(0x1bd)])(this,_0x451963)===_0xd7b528)??-0x1;if(_0x4eb44f<0x0){const _0x5e4daf=(0x0,session_1[_0x2c959c(0x170)])(this,_0xd7b528)||_0xd7b528;await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x18d)+_0x5e4daf+_0x2c959c(0x20a),'msgType':_0x2c959c(0x107)});return;}const _0x2cc79f=_0x5dca14['whiteUserList'][_0x4eb44f];_0x5dca14['whiteUserList'][_0x2c959c(0x1b2)](_0x4eb44f,0x1);_0x5dca14[_0x2c959c(0x19e)][_0x2c959c(0x206)]===0x0&&delete _0x5dca14[_0x2c959c(0x19e)];(0x0,api_key_manager_1[_0x2c959c(0x1e4)])(this);const _0x34d2e8=_0x5dca14[_0x2c959c(0x19e)]?.['length']?_0x5dca14[_0x2c959c(0x19e)]['map'](_0x5951f4=>{const _0x509004=_0x2c959c,_0x28c09c=(0x0,session_1['resolveToUserId'])(this,_0x5951f4);return(0x0,session_1[_0x509004(0x170)])(this,_0x28c09c)||_0x5951f4;})[_0x2c959c(0x1e7)](',\x20'):_0x2c959c(0x1e0),_0x4f8d82=(0x0,session_1['userIdToPhone'])(this,_0xd7b528)||_0x2cc79f;await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x190)+_0x4f8d82+'\x0a当前白名单:\x20'+_0x34d2e8,'msgType':_0x2c959c(0x107)});return;}}const _0x2f4cc5=(0x0,commands_1[_0x2c959c(0x1a1)])(_0xc2e69e);if(_0x2f4cc5!==null){if(!await this[_0x2c959c(0x141)](_0x27df03,_0x11e179,_0x2feb3d))return;const _0x47d915=this[_0x2c959c(0x144)](_0x27df03),{exec:_0x286483}=await Promise[_0x2c959c(0x161)]()[_0x2c959c(0x146)](()=>__importStar(require(_0x2c959c(0xdc)))),_0x432645=process[_0x2c959c(0x1f1)];try{_0x2f4cc5===_0x2c959c(0x14c)?(_0x432645===_0x2c959c(0xc7)?_0x286483('open\x20\x22'+_0x47d915+'\x22'):_0x286483(_0x2c959c(0x1c8)+_0x47d915+'\x22'),await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x1c2)+_0x47d915+_0x2c959c(0x135),'msgType':_0x2c959c(0x107)})):(_0x432645===_0x2c959c(0xc7)?_0x286483(_0x2c959c(0x17e)+_0x47d915+'\x22'):_0x286483(_0x2c959c(0x19c)+_0x47d915+'\x22',{'shell':'cmd.exe'}),await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'💻\x20已在终端中打开:\x0a```\x0a'+_0x47d915+'\x0a```','msgType':_0x2c959c(0x107)}));}catch(_0x3a835c){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x104)+(_0x3a835c instanceof Error?_0x3a835c[_0x2c959c(0x1e9)]:String(_0x3a835c)),'msgType':_0x2c959c(0x107)});}return;}const _0x3cc099=(0x0,commands_1[_0x2c959c(0x16e)])(_0xc2e69e);if(_0x3cc099){await this[_0x2c959c(0x160)](_0x3cc099,{'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'senderStaffId':_0x2feb3d,'senderNick':_0x1f50b0,'conversationConfig':_0x5dca14});return;}if((0x0,commands_1[_0x2c959c(0xf5)])(_0xc2e69e)){const _0x1d049b=this[_0x2c959c(0x144)](_0x27df03);await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'📂\x20当前工作目录:\x0a```\x0a'+_0x1d049b+'\x0a```','msgType':_0x2c959c(0x107)});return;}const _0x58bd1b=(0x0,commands_1[_0x2c959c(0x101)])(_0xc2e69e);if(_0x58bd1b!==null){await this[_0x2c959c(0x197)](_0x27df03,_0x11e179,_0x58bd1b);return;}const _0x163ecc=(0x0,commands_1['parseTouchCommand'])(_0xc2e69e);if(_0x163ecc!==null){await this[_0x2c959c(0x17f)](_0x27df03,_0x11e179,_0x163ecc);return;}const _0x3c9645=(0x0,commands_1[_0x2c959c(0x1b3)])(_0xc2e69e);if(_0x3c9645!==null){await this[_0x2c959c(0x166)](_0x27df03,_0x11e179,_0x3c9645);return;}const _0x4e7c1e=(0x0,commands_1['parseBashCommand'])(_0xc2e69e);if(_0x4e7c1e!==null){const _0x10bef4=this[_0x2c959c(0x144)](_0x27df03),_0x22d124=[];if(this[_0x2c959c(0xfb)][_0x2c959c(0x1fd)])_0x22d124['push'](this[_0x2c959c(0xfb)]['preBash']);if(_0x5dca14?.[_0x2c959c(0x1fd)])_0x22d124[_0x2c959c(0x1a0)](_0x5dca14['preBash']);const _0x17369f=_0x22d124[_0x2c959c(0x206)]>0x0?_0x22d124[_0x2c959c(0x1e7)](_0x2c959c(0x154))+_0x2c959c(0x154)+_0x4e7c1e:_0x4e7c1e,_0x210d90=this;(0x0,child_process_1[_0x2c959c(0x1bb)])(_0x17369f,{'cwd':_0x10bef4,'timeout':0x7530,'maxBuffer':0x400*0x400},async(_0x4febf4,_0x3d3a36,_0x17fd69)=>{const _0x5d85d5=_0x2c959c;try{let _0xe9524;if(_0x4febf4)_0xe9524='❌\x20命令执行失败\x0a```\x0a'+_0x4febf4[_0x5d85d5(0x1e9)]+_0x5d85d5(0x135),_0x17fd69&&(_0xe9524+=_0x5d85d5(0x14d)+_0x210d90[_0x5d85d5(0x1c0)](_0x17fd69)+_0x5d85d5(0x135));else{const _0x1933dd=_0x3d3a36||_0x5d85d5(0x168);_0xe9524=_0x5d85d5(0x111)+_0x210d90[_0x5d85d5(0x1c0)](_0x1933dd)+_0x5d85d5(0x135),_0x17fd69&&(_0xe9524+=_0x5d85d5(0x14d)+_0x210d90[_0x5d85d5(0x1c0)](_0x17fd69)+_0x5d85d5(0x135));}await _0x210d90[_0x5d85d5(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0xe9524,'msgType':_0x5d85d5(0x107)});}catch(_0xaa05e8){console[_0x5d85d5(0x159)]('[bash]\x20发送消息失败:',_0xaa05e8);}});return;}if(/^\/new(?:\s|$)/i['test'](_0xc2e69e)){const _0x587b28=this[_0x2c959c(0xf1)](_0x27df03);_0x587b28&&(console[_0x2c959c(0xff)]('收到新会话命令,结束旧会话:\x20群='+_0x587b28[_0x2c959c(0x1a2)]['session']['conversationId']+_0x2c959c(0xfc)+this[_0x2c959c(0x169)](_0x587b28[_0x2c959c(0x1a2)][_0x2c959c(0x1a2)])),this[_0x2c959c(0x147)](_0x587b28[_0x2c959c(0x1a2)],'新会话命令中断正在执行的\x20Claude\x20进程'),this[_0x2c959c(0x1c3)][_0x2c959c(0x1ef)](_0x587b28[_0x2c959c(0x1ab)]),this[_0x2c959c(0x105)](_0x587b28[_0x2c959c(0x1ab)]));const _0x2dea11=_0xc2e69e['replace'](/^\/new\s*/i,'')[_0x2c959c(0x202)]();_0x2dea11?await this['startNewSession']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'senderStaffId':_0x2feb3d,'senderNick':_0x1f50b0,'message':_0x2dea11,'conversationConfig':_0x5dca14}):await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0xee)});return;}const _0x26d605=(0x0,commands_1[_0x2c959c(0x122)])(_0xc2e69e);if(_0x26d605!==null&&_0x5dca14){let _0x544aa6=_0x26d605;if(!_0x544aa6){const _0xefe528=(0x0,session_1[_0x2c959c(0x1b4)])(this,_0x27df03);if(!_0xefe528){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0x139),'msgType':'markdown'});return;}_0x544aa6=(0x0,session_1[_0x2c959c(0x169)])(_0xefe528);}await this[_0x2c959c(0x1b9)](_0x27df03,_0x11e179,_0x544aa6,_0x2feb3d,_0x5dca14);return;}const _0x4a0af8=(0x0,commands_1['parseLogCommand'])(_0xc2e69e);if(_0x4a0af8!==null){const _0x147726=this[_0x2c959c(0x16a)](_0x27df03,_0x4a0af8);_0x147726?await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'📋\x20最近\x20'+_0x4a0af8+_0x2c959c(0x150)+_0x147726+_0x2c959c(0x135),'msgType':_0x2c959c(0x107)}):await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x15a)});return;}const _0x401dd9=(0x0,commands_1[_0x2c959c(0x116)])(_0xc2e69e);if(_0x401dd9!==null){const _0x26389c=[],_0x25b2fa=this[_0x2c959c(0x144)](_0x27df03);(_0x401dd9===_0x2c959c(0xe8)||_0x401dd9===_0x2c959c(0x15d))&&(_0x26389c[_0x2c959c(0x1a0)](_0x2c959c(0x18e)+(0x0,commands_1['formatGlobalConfig'])(this[_0x2c959c(0xfb)])),_0x26389c[_0x2c959c(0x1a0)](_0x2c959c(0x1ed)+(0x0,commands_1[_0x2c959c(0x140)])(_0x5dca14,_0x27df03,_0x558781=>(0x0,session_1[_0x2c959c(0x170)])(this,_0x558781),_0x25b2fa)));if(_0x401dd9===_0x2c959c(0xe8)||_0x401dd9==='session'){const _0x5330ed=this['formatSessionInfo'](_0x27df03);_0x5330ed?_0x26389c['push'](_0x2c959c(0x214)+_0x5330ed):_0x26389c[_0x2c959c(0x1a0)](_0x2c959c(0x153));}(_0x401dd9===_0x2c959c(0xe8)||_0x401dd9===_0x2c959c(0x1a9))&&_0x26389c[_0x2c959c(0x1a0)](_0x2c959c(0x1af)+this[_0x2c959c(0x17b)]());await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x26389c[_0x2c959c(0x1e7)]('\x0a\x0a'),'msgType':_0x2c959c(0x107)});return;}const _0x45b15d=(0x0,commands_1[_0x2c959c(0x13c)])(_0xc2e69e);if(_0x45b15d!==null){const {target:_0xbd1c31,depth:_0x67c09}=_0x45b15d,_0x434a24=this[_0x2c959c(0x144)](_0x27df03);let _0x4847cf=_0x434a24,_0x406cb0=_0x2c959c(0x118);if(_0xbd1c31&&_0xbd1c31!==_0x2c959c(0xd1)){if(_0xbd1c31[_0x2c959c(0x212)]('./')||_0xbd1c31[_0x2c959c(0x212)]('../')||_0xbd1c31[_0x2c959c(0x212)]('/')){const _0x1863b5=path_1['default'][_0x2c959c(0x161)](_0x434a24,_0xbd1c31);if(fs_1[_0x2c959c(0x15c)][_0x2c959c(0x1ec)](_0x1863b5)&&fs_1[_0x2c959c(0x15c)]['statSync'](_0x1863b5)[_0x2c959c(0x1aa)]()){if(!_0x1863b5[_0x2c959c(0x212)](_0x434a24)){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0xc8),'msgType':_0x2c959c(0x107)});return;}_0x4847cf=_0x1863b5,_0x406cb0=_0xbd1c31;}else{await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x18b)+_0xbd1c31+'**','msgType':_0x2c959c(0x107)});return;}}else{const _0x5e14e5=(0x0,commands_1[_0x2c959c(0x16b)])(_0x434a24,_0xbd1c31);if(_0x5e14e5)_0x4847cf=_0x5e14e5,_0x406cb0=_0xbd1c31;else{await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'❌\x20未找到名为\x20**'+_0xbd1c31+_0x2c959c(0xf4),'msgType':_0x2c959c(0x107)});return;}}}const _0x449de4=(0x0,commands_1['getDirectoryStructure'])(_0x4847cf,0x0,_0x67c09);await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x1f2)+_0x406cb0+'\x20(展开'+_0x67c09+_0x2c959c(0x1cf)+_0x449de4+'\x0a```','msgType':_0x2c959c(0x107)});return;}const _0x119282=(0x0,task_1['parseTaskCancelCommand'])(_0xc2e69e);if(_0x119282){const _0x856f8a=this[_0x2c959c(0x1dd)](_0x119282,_0x27df03);await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x856f8a,'msgType':_0x2c959c(0x107)});return;}if(_0xc2e69e['startsWith'](_0x2c959c(0x194))){const _0x317a40=_0xc2e69e[_0x2c959c(0x117)](0x6)['trim']();_0x317a40&&(await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'atUserId':_0x2feb3d,'content':_0x2c959c(0x1b0)}),await this[_0x2c959c(0x15f)]({'conversationId':_0x27df03,'prompt':_0x317a40,'senderStaffId':_0x2feb3d,'senderNickName':_0x1f50b0,'sessionWebhook':_0x11e179}));return;}const _0x147b2f=(0x0,commands_1[_0x2c959c(0x191)])(_0xc2e69e);if(_0x147b2f){const _0x57051c=this[_0x2c959c(0xf1)](_0x27df03),_0x7e3cd6=_0x57051c?.[_0x2c959c(0x1a2)][_0x2c959c(0x1ba)]??[];switch(_0x147b2f[_0x2c959c(0x1f9)]){case _0x2c959c(0x108):{if(_0x7e3cd6[_0x2c959c(0x206)]===0x0)await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x162),'msgType':_0x2c959c(0x107)});else{const _0x5c533f=_0x7e3cd6['map']((_0x50c6be,_0x97177b)=>_0x97177b+0x1+'.\x20**'+(_0x50c6be[_0x2c959c(0x157)]||_0x50c6be[_0x2c959c(0x13d)])+_0x2c959c(0x189)+this[_0x2c959c(0x1cd)](_0x50c6be['message']));await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0xf8)+_0x7e3cd6[_0x2c959c(0x206)]+'\x20条)\x0a'+_0x5c533f[_0x2c959c(0x1e7)]('\x0a'),'msgType':'markdown'});}return;}case _0x2c959c(0xf7):{if(_0x7e3cd6[_0x2c959c(0x206)]===0x0){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x162),'msgType':'markdown'});return;}const _0x25610e=Math[_0x2c959c(0x1c4)](_0x147b2f['count'],_0x7e3cd6[_0x2c959c(0x206)]),_0x4b6ff1=_0x7e3cd6[_0x2c959c(0x1b2)](_0x7e3cd6[_0x2c959c(0x206)]-_0x25610e,_0x25610e),_0x586333=_0x4b6ff1[_0x2c959c(0x1c9)]((_0x59ccd2,_0x5e6276)=>_0x5e6276+0x1+'.\x20**'+(_0x59ccd2[_0x2c959c(0x157)]||_0x59ccd2[_0x2c959c(0x13d)])+_0x2c959c(0x189)+this[_0x2c959c(0x1cd)](_0x59ccd2[_0x2c959c(0x1e9)]));await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0xef)+_0x25610e+_0x2c959c(0x177)+_0x586333[_0x2c959c(0x1e7)]('\x0a'),'msgType':'markdown'});return;}case'cancelAll':{if(_0x7e3cd6[_0x2c959c(0x206)]===0x0){await this[_0x2c959c(0x1ca)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':_0x2c959c(0x162),'msgType':'markdown'});return;}const _0x132331=_0x7e3cd6[_0x2c959c(0x206)];_0x7e3cd6[_0x2c959c(0x206)]=0x0,await this['sendDingMessage']({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'content':'✅\x20已清空消息队列,共移除\x20'+_0x132331+_0x2c959c(0x14f),'msgType':_0x2c959c(0x107)});return;}}}await this[_0x2c959c(0x11c)]({'conversationId':_0x27df03,'sessionWebhook':_0x11e179,'senderStaffId':_0x2feb3d,'senderNick':_0x1f50b0,'message':_0xc2e69e,'conversationConfig':_0x5dca14});}async[a2_0x14d974(0xce)](){const _0x40c9f1=a2_0x14d974,_0x55bea3=Array['isArray'](this[_0x40c9f1(0xfb)]['conversations'])?this[_0x40c9f1(0xfb)][_0x40c9f1(0x183)]:[],_0x212d22=this[_0x40c9f1(0xfb)]['taskHandlerCount']??this[_0x40c9f1(0x210)],_0x3ebc21=_0x55bea3[_0x40c9f1(0x206)]>0x0;console[_0x40c9f1(0xff)]('['+(0x0,session_1['timestamp'])()+_0x40c9f1(0x12d)+this[_0x40c9f1(0x151)]),console[_0x40c9f1(0xff)]('['+(0x0,session_1[_0x40c9f1(0x1e1)])()+_0x40c9f1(0x20f)+_0x55bea3[_0x40c9f1(0x1c9)](_0x208aeb=>_0x208aeb[_0x40c9f1(0x11b)]||_0x208aeb[_0x40c9f1(0xd3)])[_0x40c9f1(0x1e7)](',\x20')),(0x0,api_key_manager_1['startupCheck'])(this),await(0x0,session_1[_0x40c9f1(0x175)])(this);this['config']['apiKeyCfg']&&((0x0,api_key_manager_1[_0x40c9f1(0x19f)])(this),(0x0,api_key_manager_1[_0x40c9f1(0xc3)])(this));this['loadActiveSessions'](),this['cronEngine'][_0x40c9f1(0xbd)]();_0x3ebc21&&console[_0x40c9f1(0xff)]('['+(0x0,session_1[_0x40c9f1(0x1e1)])()+_0x40c9f1(0x13e)+_0x212d22);this['dingStreamClient'][_0x40c9f1(0x176)](_0x40c9f1(0x133),async _0x324e66=>{const _0xe594eb=_0x40c9f1;await this[_0xe594eb(0x19a)](_0x324e66);});const _0xbfe829=[];if(_0x3ebc21)for(let _0x2180c2=0x0;_0x2180c2<_0x212d22;_0x2180c2++){console[_0x40c9f1(0xff)]('['+(0x0,session_1[_0x40c9f1(0x1e1)])()+_0x40c9f1(0x1de)+(_0x2180c2+0x1)),_0xbfe829['push'](this[_0x40c9f1(0x14e)]()['catch'](_0x4b7691=>console[_0x40c9f1(0x159)]('任务处理器\x20#'+(_0x2180c2+0x1)+'\x20错误:',_0x4b7691)));}const _0x2340ba=this[_0x40c9f1(0x10d)][_0x40c9f1(0x211)]()['catch'](_0x374f6d=>{const _0x1dbcac=_0x40c9f1;console[_0x1dbcac(0x159)](_0x1dbcac(0xec),_0x374f6d),process[_0x1dbcac(0x149)](0x1);});await Promise[_0x40c9f1(0xe8)]([_0x2340ba,..._0xbfe829]);}}exports[a2_0x14d974(0x11f)]=DingClaude;
|