chaimi-keep-mcp 3.5.0 → 3.6.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/SKILL.md +39 -30
- package/oauth.js +1 -1
- package/package.json +1 -1
- package/server.js +1 -1
package/README.md
CHANGED
|
@@ -74,6 +74,12 @@ A: `npm update -g chaimi-keep-mcp`
|
|
|
74
74
|
|
|
75
75
|
## Changelog
|
|
76
76
|
|
|
77
|
+
### v4.0.0-beta.0 (2026-05-17) 🧪 MCP2.0
|
|
78
|
+
- **重大重构** 后端AI解析,封闭Prompt,Prompt 不暴露给 Agent
|
|
79
|
+
- **新增** `parse_text` 一键记账(后端AI解析+自动保存)
|
|
80
|
+
- **移除** `get_text_parse_prompt`/`get_parse_prompt` Prompt 暴露工具
|
|
81
|
+
- **优化** 记账流程简化为2步(获取Skill → parse_text)
|
|
82
|
+
|
|
77
83
|
### v3.4.0 (2026-05-01) 🎉 正式版
|
|
78
84
|
- **正式版** 多端记账分类统一
|
|
79
85
|
- **优化** 回复模板优化
|
package/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: >-
|
|
|
4
4
|
柴米AI记账MCP Server,连接微信小程序记账功能。
|
|
5
5
|
TRIGGER: 用户提及"记账/记录/保存"并涉及金额或商品信息。
|
|
6
6
|
DO NOT TRIGGER: 非记账操作,或明确使用其他记账工具时。
|
|
7
|
-
updated: "2026-
|
|
7
|
+
updated: "2026-05-17"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# 柴米AI记账 Skill
|
|
@@ -99,8 +99,7 @@ chaimi-keep-mcp ⭐ 本Skill
|
|
|
99
99
|
|
|
100
100
|
| 用户意图 | 关键词示例 | 推荐工具 | 参考文档 | 回复模板 |
|
|
101
101
|
|---------|-----------|---------|---------|---------|
|
|
102
|
-
|
|
|
103
|
-
| **收入记账** | "工资5000" | save_income | - | 标准成功模板 |
|
|
102
|
+
| **文字/收入记账** | "午餐35元"、"工资5000" | parse_text | - | 标准成功模板 |
|
|
104
103
|
| **小票记账** | "小票识别" | save_receipt | - | 高金额模板 |
|
|
105
104
|
| **查询记录** | "这周花了多少" | get_expenses | api-reference.md | 查询结果模板 |
|
|
106
105
|
| **消费统计** | "月度统计" | get_statistics | api-reference.md | 统计分析模板 |
|
|
@@ -119,8 +118,7 @@ chaimi-keep-mcp ⭐ 本Skill
|
|
|
119
118
|
|
|
120
119
|
| 分类 | 工具名 | 功能一句话 | 典型场景 |
|
|
121
120
|
|:-----|:-------|:-----------|:---------|
|
|
122
|
-
| **记账** |
|
|
123
|
-
| | save_income | 收入记账 | "工资5000" |
|
|
121
|
+
| **记账** | parse_text | 文字/收入记账(后端AI解析+自动保存) | "午餐35元"、"工资5000" |
|
|
124
122
|
| | save_receipt | 小票图片记账 | 上传小票照片 |
|
|
125
123
|
| **查询** | get_expenses | 查询消费记录 | "这周花了多少" |
|
|
126
124
|
| | get_statistics | 消费统计分析 | "月度统计" |
|
|
@@ -128,39 +126,51 @@ chaimi-keep-mcp ⭐ 本Skill
|
|
|
128
126
|
| **分析** | get_insights | AI消费洞察 | "分析消费习惯" |
|
|
129
127
|
| | export_data | 导出完整数据 | 深度分析 |
|
|
130
128
|
| **辅助** | get_skill | 【必须】获取Skill文档 | 记账前调用 |
|
|
131
|
-
| | get_text_parse_prompt | 获取文字解析模板 | 文字记账前 |
|
|
132
|
-
| | get_parse_prompt | 获取小票解析模板 | 小票记账前 |
|
|
133
129
|
| | submit_feedback | 提交反馈 | 功能使用异常,无法解决问题反馈 |
|
|
134
130
|
|
|
135
131
|
---
|
|
136
132
|
|
|
137
133
|
## 六、快速开始
|
|
138
134
|
|
|
139
|
-
###
|
|
135
|
+
### MCP2.0 自动记账流程
|
|
136
|
+
|
|
137
|
+
> ⚠️ parse_text 内部已完成 AI 解析 + 数据入库,Agent 无需再调用 save_expense
|
|
138
|
+
> ⚠️ 不要输出记账过程,不要告诉用户"第1步、第2步"等流程细节,只需要回复用户结果
|
|
139
|
+
|
|
140
|
+
**文字记账(一行完成):**
|
|
140
141
|
|
|
141
142
|
```
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
用户:午餐35元麦当劳
|
|
144
|
+
|
|
145
|
+
Agent 操作:
|
|
146
|
+
1. get_skill() 获取规范(首次或过期时调用)
|
|
147
|
+
2. parse_text({ text: "午餐35元麦当劳", agentType: "...", apiProvider: "..." })
|
|
148
|
+
↓ 后端自动:AI解析 → 保存到数据库
|
|
149
|
+
↓ 返回:{ success: true, data: { saved: true, name: "午餐", amount: 35, category: "餐饮", ... }, message: "✅ 已记录:午餐 35元(餐饮)" }
|
|
150
|
+
3. 根据 _templateLocation 使用模板渲染回复
|
|
151
|
+
```
|
|
144
152
|
|
|
153
|
+
**收入记账:**
|
|
145
154
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
└─ references/response-templates.md 了解回复模板
|
|
155
|
+
```
|
|
156
|
+
用户:工资5000
|
|
149
157
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
158
|
+
Agent 操作:
|
|
159
|
+
1. parse_text({ text: "工资5000", agentType: "...", apiProvider: "..." })
|
|
160
|
+
↓ 后端自动判断为收入,走 addIncome 保存
|
|
161
|
+
2. 渲染回复
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
**小票记账:**
|
|
157
165
|
|
|
158
|
-
|
|
159
|
-
|
|
166
|
+
```
|
|
167
|
+
用户:[上传小票图片]
|
|
160
168
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
169
|
+
Agent 操作:
|
|
170
|
+
1. get_skill() 获取规范
|
|
171
|
+
2. parse_receipt_image({ imageUrl: "https://...", agentType: "...", apiProvider: "..." })
|
|
172
|
+
↓ 后端自动:AI视觉解析 → 保存到数据库
|
|
173
|
+
3. 渲染回复
|
|
164
174
|
```
|
|
165
175
|
|
|
166
176
|
---
|
|
@@ -202,8 +212,7 @@ references/
|
|
|
202
212
|
|
|
203
213
|
| 工具 | 模板位置 | 模板章节 | 说明 |
|
|
204
214
|
|------|---------|---------|------|
|
|
205
|
-
| `
|
|
206
|
-
| `save_income` | `references/response-templates.md` | 2.1 标准成功模板 | 收入记账成功 |
|
|
215
|
+
| `parse_text` | `references/response-templates.md` | 2.1 标准成功模板 | 文字/收入记账成功 |
|
|
207
216
|
| `save_receipt` | `references/response-templates.md` | 2.3 小票记账模板 | 小票记账成功 |
|
|
208
217
|
| `get_expenses` | `references/response-templates.md` | 2.5 查询结果模板 | 消费记录查询 |
|
|
209
218
|
| `get_receipt_list` | `references/response-templates.md` | 2.5 查询结果模板 | 小票列表查询 |
|
|
@@ -240,7 +249,7 @@ references/
|
|
|
240
249
|
💡 消费洞察:本月餐饮支出占比30%,建议控制
|
|
241
250
|
═══════════════
|
|
242
251
|
🎉 *美食为梦想充电,继续向前冲!*
|
|
243
|
-
*柴米AI记账 chaimi-keep-mcp
|
|
252
|
+
*柴米AI记账 chaimi-keep-mcp v4.0.0-beta.0*
|
|
244
253
|
```
|
|
245
254
|
|
|
246
255
|
**模板变量说明:**
|
|
@@ -326,5 +335,5 @@ references/
|
|
|
326
335
|
---
|
|
327
336
|
|
|
328
337
|
|
|
329
|
-
**最后更新:2026-
|
|
330
|
-
**Status
|
|
338
|
+
**最后更新:2026-05-17**
|
|
339
|
+
**Status:MCP2.0 测试中**
|
package/oauth.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x2318d6=_0x98e7;(function(_0x6c6c69,_0x4a751f){const _0x3d2cc8=_0x98e7,_0x12b8df=_0x6c6c69();while(!![]){try{const _0x261ee3=-parseInt(_0x3d2cc8(0x291))/0x1+parseInt(_0x3d2cc8(0x23b))/0x2*(parseInt(_0x3d2cc8(0x239))/0x3)+-parseInt(_0x3d2cc8(0x222))/0x4*(-parseInt(_0x3d2cc8(0x211))/0x5)+-parseInt(_0x3d2cc8(0x231))/0x6+parseInt(_0x3d2cc8(0x1f8))/0x7+parseInt(_0x3d2cc8(0x25d))/0x8+parseInt(_0x3d2cc8(0x220))/0x9;if(_0x261ee3===_0x4a751f)break;else _0x12b8df['push'](_0x12b8df['shift']());}catch(_0xcf6bb6){_0x12b8df['push'](_0x12b8df['shift']());}}}(_0x16c5,0xb44dd));const fetch=require('node-'+_0x2318d6(0x200)),{exec}=require(_0x2318d6(0x276)+'_proc'+'ess'),util=require(_0x2318d6(0x237)),execPromise=util[_0x2318d6(0x1d6)+_0x2318d6(0x1f1)](exec),crypto=require(_0x2318d6(0x251)+'o');function _0x98e7(_0x1e1ecf,_0x394e57){_0x1e1ecf=_0x1e1ecf-0x1ac;const _0x16c562=_0x16c5();let _0x98e72f=_0x16c562[_0x1e1ecf];if(_0x98e7['ZAoQgU']===undefined){var _0x5c88ad=function(_0x5e167a){const _0x4c3033='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3b8ab4='',_0x29b795='';for(let _0x1d0974=0x0,_0x419610,_0x55b18b,_0x30dd25=0x0;_0x55b18b=_0x5e167a['charAt'](_0x30dd25++);~_0x55b18b&&(_0x419610=_0x1d0974%0x4?_0x419610*0x40+_0x55b18b:_0x55b18b,_0x1d0974++%0x4)?_0x3b8ab4+=String['fromCharCode'](0xff&_0x419610>>(-0x2*_0x1d0974&0x6)):0x0){_0x55b18b=_0x4c3033['indexOf'](_0x55b18b);}for(let _0x451b45=0x0,_0x5cc607=_0x3b8ab4['length'];_0x451b45<_0x5cc607;_0x451b45++){_0x29b795+='%'+('00'+_0x3b8ab4['charCodeAt'](_0x451b45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29b795);};_0x98e7['JBvzfl']=_0x5c88ad,_0x98e7['YMnGbD']={},_0x98e7['ZAoQgU']=!![];}const _0x2b6c16=_0x16c562[0x0],_0x7d8481=_0x1e1ecf+_0x2b6c16,_0x5a7f4a=_0x98e7['YMnGbD'][_0x7d8481];return!_0x5a7f4a?(_0x98e72f=_0x98e7['JBvzfl'](_0x98e72f),_0x98e7['YMnGbD'][_0x7d8481]=_0x98e72f):_0x98e72f=_0x5a7f4a,_0x98e72f;}class OAuthManager{constructor(_0x33ada5){const _0x592ae1=_0x2318d6;this['mcpOA'+_0x592ae1(0x249)+'l']=_0x33ada5[_0x592ae1(0x227)+_0x592ae1(0x249)+'l'],this[_0x592ae1(0x1f9)+'Stora'+'ge']=_0x33ada5['token'+_0x592ae1(0x297)+'ge'],this['onQrC'+_0x592ae1(0x243)]=_0x33ada5['onQrC'+_0x592ae1(0x243)],this[_0x592ae1(0x22d)+_0x592ae1(0x24d)+'dy']=_0x33ada5[_0x592ae1(0x22d)+_0x592ae1(0x24d)+'dy'],this['prefe'+_0x592ae1(0x22f)+'cheme']=_0x33ada5[_0x592ae1(0x277)+_0x592ae1(0x22f)+'cheme']!==![];}async['detec'+_0x2318d6(0x24b)+_0x2318d6(0x21a)+'nt'](){const _0x5b4d84=_0x2318d6,_0x310963={'qptbG':_0x5b4d84(0x29a),'GuyBk':function(_0x149bd6,_0x23cc80){return _0x149bd6===_0x23cc80;},'pEwbZ':_0x5b4d84(0x260)+'n'},_0x2e446c=('3|1|4'+_0x5b4d84(0x246))[_0x5b4d84(0x278)]('|');let _0x404f2c=0x0;while(!![]){switch(_0x2e446c[_0x404f2c++]){case'0':return{'supportsBrowser':![],'platform':_0x310963[_0x5b4d84(0x1b9)]};case'1':if(_0x310963[_0x5b4d84(0x2ad)](process[_0x5b4d84(0x2b1)+_0x5b4d84(0x1af)],_0x310963[_0x5b4d84(0x1ca)]))return{'supportsBrowser':!![],'platform':_0x5b4d84(0x28c)};continue;case'2':if(process.env.BROWSER)return{'supportsBrowser':!![],'platform':_0x5b4d84(0x259)+'m'};continue;case'3':if(process.env.DISPLAY)return{'supportsBrowser':!![],'platform':_0x5b4d84(0x27d)+_0x5b4d84(0x216)};continue;case'4':if(process[_0x5b4d84(0x2b1)+'orm']===_0x5b4d84(0x1fb))return{'supportsBrowser':!![],'platform':_0x5b4d84(0x1d7)+'ws'};continue;}break;}}async[_0x2318d6(0x247)+'AuthF'+_0x2318d6(0x299)](){const _0x22be82=_0x2318d6,_0x27034d={'sbiDi':function(_0x1456fb,_0x4d30b6){return _0x1456fb*_0x4d30b6;}};try{const _0x2989df=await this[_0x22be82(0x26f)+_0x22be82(0x24b)+'ronme'+'nt'](),_0xfb44bd=this[_0x22be82(0x277)+'rUrlS'+_0x22be82(0x207)]&&_0x2989df[_0x22be82(0x1e3)+_0x22be82(0x281)+'owser'],_0x1c1dbd=await this['reque'+_0x22be82(0x1bc)+_0x22be82(0x287)+'de'](_0xfb44bd);await this[_0x22be82(0x223)+_0x22be82(0x230)+_0x22be82(0x1e4)]({'deviceCode':_0x1c1dbd[_0x22be82(0x1b4)+_0x22be82(0x258)],'userCode':_0x1c1dbd['userC'+_0x22be82(0x243)],'timestamp':Date['now'](),'status':_0x22be82(0x295)+'ng'});_0xfb44bd&&_0x1c1dbd[_0x22be82(0x1cd)+'heme']?await this[_0x22be82(0x253)+_0x22be82(0x1f2)+_0x22be82(0x25f)+_0x22be82(0x1db)+'me'](_0x1c1dbd):await this[_0x22be82(0x253)+'rizeW'+_0x22be82(0x1c5)+_0x22be82(0x233)+_0x22be82(0x299)](_0x1c1dbd);console['error'](''),console['error']('⏳\x20等待用'+'户授权,请'+_0x22be82(0x1fc)+'...'),console[_0x22be82(0x1d0)](_0x22be82(0x270)+_0x22be82(0x1fd)+_0x22be82(0x234)+'操作)'),console['error']('');const _0x3081bf=await this[_0x22be82(0x24e)+'orTok'+'en'](_0x1c1dbd[_0x22be82(0x1b4)+_0x22be82(0x258)],_0x27034d[_0x22be82(0x212)](_0x1c1dbd[_0x22be82(0x27a)+_0x22be82(0x2a7)],0x3e8)||0x1388);return await this[_0x22be82(0x1f9)+_0x22be82(0x297)+'ge'][_0x22be82(0x20f)](_0x3081bf),this[_0x22be82(0x22d)+_0x22be82(0x24d)+'dy']&&this[_0x22be82(0x22d)+_0x22be82(0x24d)+'dy'](_0x3081bf),_0x3081bf;}catch(_0x3e708e){throw _0x3e708e;}}async[_0x2318d6(0x253)+_0x2318d6(0x1f2)+_0x2318d6(0x25f)+_0x2318d6(0x1db)+'me'](_0xa85769){const _0x1286fb=_0x2318d6,_0x413a61=this[_0x1286fb(0x26f)+_0x1286fb(0x1d9)+_0x1286fb(0x219)+_0x1286fb(0x29f)+_0x1286fb(0x226)]();if(_0x413a61){const _0x2375dd=_0xa85769['urlSc'+_0x1286fb(0x25c)]||_0xa85769[_0x1286fb(0x1fe)+'icati'+_0x1286fb(0x210)+_0x1286fb(0x261)];try{await this['openB'+_0x1286fb(0x280)+'r'](_0x2375dd);}catch(_0x56d885){}}else{const _0x553344='https'+'://mc'+_0x1286fb(0x28b)+_0x1286fb(0x29b)+_0x1286fb(0x2b3)+'uth?d'+'evice'+_0x1286fb(0x1d1)+_0xa85769[_0x1286fb(0x1b4)+_0x1286fb(0x258)]+(_0x1286fb(0x1be)+_0x1286fb(0x1d1))+_0xa85769['userC'+_0x1286fb(0x243)];this['onQrC'+_0x1286fb(0x243)]&&await this[_0x1286fb(0x248)+_0x1286fb(0x243)]({'userCode':_0xa85769[_0x1286fb(0x21b)+_0x1286fb(0x243)],'verificationUri':_0xa85769[_0x1286fb(0x1fe)+_0x1286fb(0x245)+_0x1286fb(0x210)],'deviceCode':_0xa85769['devic'+_0x1286fb(0x258)],'qrCodeUrl':_0x553344,'isPC':!![]});}}[_0x2318d6(0x26f)+'tMobi'+'leEnv'+'ironm'+_0x2318d6(0x226)](){const _0x2eaef9=_0x2318d6,_0x1f38f5=process.env.USER_AGENT||'';if(/iPhone|iPad|iPod|Android|Mobile/i['test'](_0x1f38f5))return!![];if(process.env.TERM_PROGRAM===_0x2eaef9(0x221)+_0x2eaef9(0x1c8)+_0x2eaef9(0x269)&&process[_0x2eaef9(0x2b1)+_0x2eaef9(0x1af)]===_0x2eaef9(0x260)+'n')return![];return![];}async[_0x2318d6(0x253)+_0x2318d6(0x1f2)+_0x2318d6(0x1c5)+_0x2318d6(0x233)+'low'](_0x113b6a){const _0x246f05=_0x2318d6;this[_0x246f05(0x248)+_0x246f05(0x243)]&&await this[_0x246f05(0x248)+_0x246f05(0x243)]({'userCode':_0x113b6a[_0x246f05(0x21b)+_0x246f05(0x243)],'verificationUri':_0x113b6a[_0x246f05(0x1fe)+'icati'+_0x246f05(0x210)],'deviceCode':_0x113b6a['devic'+'eCode']});}async['openB'+_0x2318d6(0x280)+'r'](_0x56f57e){const _0x4015b6=_0x2318d6,_0x26375d={'VgWzy':function(_0x60c46c,_0x74c95){return _0x60c46c===_0x74c95;}},_0x4ad652=process[_0x4015b6(0x2b1)+_0x4015b6(0x1af)];let _0x1a7c62;if(_0x26375d['VgWzy'](_0x4ad652,_0x4015b6(0x260)+'n'))_0x1a7c62=_0x4015b6(0x2a0)+'\x22'+_0x56f57e+'\x22';else{if(_0x4ad652==='win32')_0x1a7c62='start'+_0x4015b6(0x20b)+_0x56f57e+'\x22';else{if(_0x4ad652===_0x4015b6(0x27d))_0x1a7c62=_0x4015b6(0x2ab)+'pen\x20\x22'+_0x56f57e+'\x22';else throw new Error(_0x4015b6(0x23a)+'台');}}await execPromise(_0x1a7c62);}async[_0x2318d6(0x204)+_0x2318d6(0x1bc)+_0x2318d6(0x287)+'de'](_0x4be5d5=![]){const _0x122d8e=_0x2318d6,_0x3ecf05={'wRDkO':_0x122d8e(0x1cf)},_0x4e55ac=await fetch(this[_0x122d8e(0x227)+_0x122d8e(0x249)+'l'],{'method':_0x3ecf05[_0x122d8e(0x1e8)],'headers':{'Content-Type':_0x122d8e(0x284)+_0x122d8e(0x1b5)+'n/jso'+'n'},'body':JSON[_0x122d8e(0x1bf)+_0x122d8e(0x240)]({'tool':'devic'+'eCode','params':{'clientId':_0x122d8e(0x2af)+_0x122d8e(0x275)+_0x122d8e(0x20c)+_0x122d8e(0x226),'useUrlScheme':_0x4be5d5}})}),_0x3bbe34=await _0x4e55ac[_0x122d8e(0x241)]();if(!_0x3bbe34['succe'+'ss'])throw new Error(_0x122d8e(0x2b7)+_0x122d8e(0x218)+_0x3bbe34['error']);return _0x3bbe34['data'];}async[_0x2318d6(0x24e)+_0x2318d6(0x1b2)+_0x2318d6(0x20a)+'e'](_0x1ca6d9){const _0x3df2f9=_0x2318d6,_0x1cf5a7={'cWTuI':function(_0x43e16a,_0x2b91b4){return _0x43e16a*_0x2b91b4;},'ZNPih':'autho'+_0x3df2f9(0x24f)+'ion_p'+_0x3df2f9(0x235)+'g','lQEFQ':'expir'+_0x3df2f9(0x228)+_0x3df2f9(0x289)};try{const _0x546bc7=await fetch(this[_0x3df2f9(0x227)+_0x3df2f9(0x249)+'l'],{'method':_0x3df2f9(0x1cf),'headers':{'Content-Type':_0x3df2f9(0x284)+'catio'+_0x3df2f9(0x232)+'n'},'body':JSON['strin'+'gify']({'tool':_0x3df2f9(0x1b4)+_0x3df2f9(0x273)+'n','params':{'deviceCode':_0x1ca6d9}})}),_0x40e5d1=await _0x546bc7['json']();if(_0x40e5d1[_0x3df2f9(0x26e)+'ss'])return{'accessToken':_0x40e5d1[_0x3df2f9(0x274)][_0x3df2f9(0x1de)+_0x3df2f9(0x2a1)+'n'],'refreshToken':_0x40e5d1[_0x3df2f9(0x274)][_0x3df2f9(0x1cb)+_0x3df2f9(0x25a)+'en'],'expiresIn':_0x40e5d1[_0x3df2f9(0x274)][_0x3df2f9(0x1c3)+'esIn'],'tokenType':_0x40e5d1[_0x3df2f9(0x274)][_0x3df2f9(0x1f9)+_0x3df2f9(0x27b)],'expiresAt':Date['now']()+_0x1cf5a7[_0x3df2f9(0x1ba)](_0x40e5d1[_0x3df2f9(0x274)]['expir'+_0x3df2f9(0x293)],0x3e8)};if(_0x40e5d1[_0x3df2f9(0x1d0)]===_0x1cf5a7[_0x3df2f9(0x1ff)])return null;if(_0x40e5d1[_0x3df2f9(0x1d0)]===_0x1cf5a7[_0x3df2f9(0x205)])throw new Error('设备码已过'+_0x3df2f9(0x2b6)+'授权');if(_0x40e5d1[_0x3df2f9(0x1d0)]===_0x3df2f9(0x202)+'id_de'+_0x3df2f9(0x21e)+_0x3df2f9(0x1ed))throw new Error('无效的设备'+'码');throw new Error(_0x3df2f9(0x255)+_0x3df2f9(0x1c4)+_0x3df2f9(0x24c)+_0x40e5d1['error']);}catch(_0x3047f5){throw _0x3047f5;}}async[_0x2318d6(0x24e)+_0x2318d6(0x1b2)+'en'](_0x4a5951,_0x5005c0){const _0x206807=_0x2318d6,_0x544ba3={'rvOXY':function(_0xd1a87b,_0x19cac2){return _0xd1a87b<_0x19cac2;},'wmnij':'expir'+'ed'},_0x58d7ec=0x3c;let _0x17ed56=0x0;while(_0x544ba3[_0x206807(0x21c)](_0x17ed56,_0x58d7ec)){_0x17ed56++,await this[_0x206807(0x2ae)](_0x5005c0);try{const _0x410f32=await this[_0x206807(0x24e)+_0x206807(0x1b2)+'enOnc'+'e'](_0x4a5951);if(_0x410f32)return _0x410f32;}catch(_0x224ae6){if(_0x224ae6[_0x206807(0x264)+'ge'][_0x206807(0x2a4)+_0x206807(0x1f3)](_0x544ba3['wmnij'])||_0x224ae6[_0x206807(0x264)+'ge'][_0x206807(0x2a4)+_0x206807(0x1f3)]('inval'+'id'))throw _0x224ae6;}}throw new Error(_0x206807(0x229)+_0x206807(0x238));}async['refre'+_0x2318d6(0x25a)+'en'](){const _0x58ca9f=_0x2318d6,_0x5c99be={'wfbBf':_0x58ca9f(0x1cf),'eEMai':'appli'+'catio'+'n/jso'+'n','UZKjY':_0x58ca9f(0x1cb)+_0x58ca9f(0x25a)+'en'},_0x39924b=await this['token'+_0x58ca9f(0x297)+'ge'][_0x58ca9f(0x256)]();if(!_0x39924b||!_0x39924b[_0x58ca9f(0x1cb)+'shTok'+'en'])throw new Error(_0x58ca9f(0x1b3)+_0x58ca9f(0x20d)+'esh\x20T'+_0x58ca9f(0x27e)+'需要重新授'+'权');try{const _0x474916=await fetch(this[_0x58ca9f(0x227)+_0x58ca9f(0x249)+'l'],{'method':_0x5c99be[_0x58ca9f(0x1ef)],'headers':{'Content-Type':_0x5c99be['eEMai']},'body':JSON['strin'+_0x58ca9f(0x240)]({'tool':_0x5c99be[_0x58ca9f(0x1df)],'params':{'refreshToken':_0x39924b['refre'+_0x58ca9f(0x25a)+'en']}})}),_0x37c9cc=await _0x474916[_0x58ca9f(0x241)]();if(!_0x37c9cc[_0x58ca9f(0x26e)+'ss']){if(_0x37c9cc['error']===_0x58ca9f(0x1cb)+'sh_to'+_0x58ca9f(0x242)+_0x58ca9f(0x1eb)+'d')throw new Error(_0x58ca9f(0x285)+'sh\x20To'+_0x58ca9f(0x27f)+_0x58ca9f(0x209)+_0x58ca9f(0x1ce));throw new Error('刷新\x20To'+_0x58ca9f(0x1c4)+_0x58ca9f(0x24c)+_0x37c9cc[_0x58ca9f(0x1d0)]);}const _0x3942c3={'accessToken':_0x37c9cc[_0x58ca9f(0x274)][_0x58ca9f(0x1de)+_0x58ca9f(0x2a1)+'n'],'refreshToken':_0x37c9cc[_0x58ca9f(0x274)][_0x58ca9f(0x1cb)+_0x58ca9f(0x25a)+'en'],'expiresIn':_0x37c9cc['data'][_0x58ca9f(0x1c3)+_0x58ca9f(0x293)],'tokenType':_0x37c9cc['data']['token'+'Type'],'expiresAt':Date[_0x58ca9f(0x1ec)]()+_0x37c9cc['data'][_0x58ca9f(0x1c3)+_0x58ca9f(0x293)]*0x3e8};return await this[_0x58ca9f(0x1f9)+_0x58ca9f(0x297)+'ge'][_0x58ca9f(0x20f)](_0x3942c3),_0x3942c3;}catch(_0x950d1a){throw _0x950d1a;}}async[_0x2318d6(0x21f)+_0x2318d6(0x2a8)+_0x2318d6(0x289)](){const _0x179f19=_0x2318d6,_0x185adb={'LAiPb':_0x179f19(0x214)+_0x179f19(0x23c)+_0x179f19(0x1e7)+'权'},_0x4d0278=await this[_0x179f19(0x1f9)+_0x179f19(0x297)+'ge'][_0x179f19(0x256)]();if(!_0x4d0278)throw new Error(_0x185adb[_0x179f19(0x1c7)]);const _0x129986=0x5*0x3c*0x3e8;if(Date[_0x179f19(0x1ec)]()+_0x129986>_0x4d0278['expir'+_0x179f19(0x262)])return await this['refre'+_0x179f19(0x25a)+'en']();return _0x4d0278;}['delay'](_0x582f07){return new Promise(_0xbd6519=>setTimeout(_0xbd6519,_0x582f07));}async['saveA'+_0x2318d6(0x230)+_0x2318d6(0x1e4)](_0x42c24c){const _0x568e3f=_0x2318d6,_0xd007ef={'WEjgZ':_0x568e3f(0x265),'SSeSE':_0x568e3f(0x1fa)+_0x568e3f(0x263)+'ep'};try{const _0x26cfb1=require('fs')['promi'+_0x568e3f(0x1c0)],_0x1d9025=require(_0xd007ef['WEjgZ']),_0x163763=require('os'),_0x25cb7a=_0x1d9025[_0x568e3f(0x28e)](_0x163763[_0x568e3f(0x1d4)+'ir'](),_0xd007ef['SSeSE'],'auth-'+'state'+_0x568e3f(0x1c6)),_0x567bfc=_0x1d9025[_0x568e3f(0x22a)+'me'](_0x25cb7a);await _0x26cfb1[_0x568e3f(0x1e5)](_0x567bfc,{'recursive':!![]}),await _0x26cfb1['chmod'](_0x567bfc,0x1c0)[_0x568e3f(0x23f)](()=>{}),await _0x26cfb1[_0x568e3f(0x28f)+_0x568e3f(0x290)](_0x25cb7a,JSON[_0x568e3f(0x1bf)+_0x568e3f(0x240)](_0x42c24c,null,0x2),{'mode':0x180});}catch(_0x557333){}}async[_0x2318d6(0x29d)+'uthSt'+_0x2318d6(0x1e4)](){const _0x27283a=_0x2318d6,_0x139f7d={'nDAIM':function(_0x2efcd6,_0x30952b){return _0x2efcd6(_0x30952b);},'QKSgV':_0x27283a(0x265),'cXwIJ':_0x27283a(0x27c)+_0x27283a(0x250)+_0x27283a(0x1c6)};try{const _0x1fb304=_0x139f7d['nDAIM'](require,'fs')[_0x27283a(0x1d6)+_0x27283a(0x1c0)],_0x261630=require(_0x139f7d[_0x27283a(0x1c2)]),_0x4820e3=require('os'),_0x2419d2=_0x261630['join'](_0x4820e3['homed'+'ir'](),_0x27283a(0x1fa)+_0x27283a(0x263)+'ep',_0x139f7d[_0x27283a(0x1d8)]),_0x526a98=await _0x1fb304[_0x27283a(0x2b2)+_0x27283a(0x22b)](_0x2419d2,_0x27283a(0x1f0));return JSON[_0x27283a(0x1f7)](_0x526a98);}catch(_0x444d99){if(_0x444d99[_0x27283a(0x1ed)]===_0x27283a(0x1b6)+'T')return null;return null;}}async[_0x2318d6(0x25e)+_0x2318d6(0x1d2)+'tate'](){const _0x5f4c2b=_0x2318d6,_0x253a54={'YdGnx':function(_0x354ef5,_0x2ba8c9){return _0x354ef5(_0x2ba8c9);},'YmAmO':_0x5f4c2b(0x265),'IpdPt':_0x5f4c2b(0x1fa)+'mi-ke'+'ep'};try{const _0x873bc3=require('fs')[_0x5f4c2b(0x1d6)+_0x5f4c2b(0x1c0)],_0xdf3225=_0x253a54['YdGnx'](require,_0x253a54['YmAmO']),_0x51891f=_0x253a54[_0x5f4c2b(0x2aa)](require,'os'),_0x4b80db=_0xdf3225[_0x5f4c2b(0x28e)](_0x51891f[_0x5f4c2b(0x1d4)+'ir'](),_0x253a54['IpdPt'],'auth-'+_0x5f4c2b(0x250)+'.json');await _0x873bc3[_0x5f4c2b(0x1c9)+'k'](_0x4b80db);}catch(_0x113ec1){}}[_0x2318d6(0x26b)+_0x2318d6(0x213)+'eExpi'+_0x2318d6(0x2b0)](_0x6e665f,_0x3cde01=0x1e*0x3c*0x3e8){const _0x47d813=_0x2318d6,_0x5aaa04={'Kevzq':function(_0x1ef0db,_0x1ae1f7){return _0x1ef0db-_0x1ae1f7;}};if(_0x6e665f&&_0x6e665f['expir'+'esAt'])return Date[_0x47d813(0x1ec)]()>_0x6e665f['expir'+'esAt'];if(!_0x6e665f||!_0x6e665f[_0x47d813(0x25b)+'tamp'])return!![];return _0x5aaa04[_0x47d813(0x1c1)](Date[_0x47d813(0x1ec)](),_0x6e665f[_0x47d813(0x25b)+'tamp'])>_0x3cde01;}}class TokenStorage{async[_0x2318d6(0x20f)](_0xd3922b){const _0x4bcbe3=_0x2318d6;throw new Error('Token'+_0x4bcbe3(0x297)+_0x4bcbe3(0x298)+'ve\x20必须'+_0x4bcbe3(0x252));}async['load'](){const _0x367f59=_0x2318d6,_0x2f6edb={'mhfxS':_0x367f59(0x217)+_0x367f59(0x297)+_0x367f59(0x286)+_0x367f59(0x22e)+_0x367f59(0x252)};throw new Error(_0x2f6edb[_0x367f59(0x1ac)]);}async['clear'](){const _0x528953=_0x2318d6,_0x31d792={'oVHRJ':'Token'+_0x528953(0x297)+_0x528953(0x283)+_0x528953(0x201)+_0x528953(0x266)+'现'};throw new Error(_0x31d792[_0x528953(0x1d3)]);}}function _0x16c5(){const _0x2acd37=['ywvZlti','y2HLBwu','CgHLCMK','6l+h5PYF77Ym6zYa6kAb','zw5pBMm','iciIici','Cc1JBgK','ifjLzNi','AxrSsKG','C2f2zq','B25vCMK','nZmYnu1suwvMyW','C2jPrgK','Afn0yxq','5RkH5PYj5A2y5ykO55Qe','lw5HBwu','lwD1Aq','vg9Rzw4','5AsX6lsLoIa','BgvfBNy','CM9UBwu','DxnLCKm','CNzpwfK','yLP6vNC','DMLJzv8','z2v0vMe','ndy0oduWD1fvC1n1','qxbWBgu','mJG3nKDosezvAW','C2f2zue','oJaWoJa','zMLSzva','zw50','BwnWt0e','zwrFDg8','5O6i5P2d6lAf5PE277Ym','zgLYBMe','AwXL','CMvWBge','B25uB2S','ywqG5B+f6Ag7','CLvYBfm','DxrOu3q','mJq4mZqWmeHmExztsW','BI9QC28','DMLJzuy','5lIT5A6m5OIq5O6i5P2d','zw5KAw4','iowqJEENSowKSEI0Pq','DxrPBa','6k+36yEn5PAW5BcD6k+v','ntCZmtvvENnIyvG','5lIn5PsV5OYb55Qe5BMZ','odzUqufuyNm','ifrVA2u','DxbKyxq','wu9cruS','y2f0y2G','z2LMEq','ANnVBG','A2vUx2u','B2rL','CMLUzW','AwnHDgK','Fdj8ma','C3rHCNq','B25rCKm','DxrOvxi','yw1L','DevUDMK','6lsLoIa','zw5szwe','Cg9SBey','CML6yxq','C3rHDgu','y3j5Chq','6kkR5A2q57g75A6E546W','yxv0Ag8','y3r6zxu','6i635y+wifrV','Bg9Hza','BMv0D28','zunVzgu','y3vZDg8','C2HuB2S','DgLTzxm','AgvTzq','ndi3ndGWA0Pmq0j6','y2XLyxi','AxrOvxi','zgfYD2K','rNvSBa','zxnbDa','BwKTA2u','BwvZC2e','Cgf0Aa','6Ag76kkR5A2q57g75A6E','zgLNzxm','ChrLza','Aw5HBa','u3rYAw4','AxnbDxq','zNjVBum','CMTjBNq','C3vJy2u','zgv0zwm','icaG77Yi6k+3','zMLUywW','q29Kzq','zvrVA2u','zgf0yq','Dw8TBwm','y2HPBgq','ChjLzMu','C3bSAxq','zxjMywm','Aw50zxi','vhLWzq','yxv0Ac0','BgLUDxG','B2TLBU+8Ja','A2vUiow3SG','CM93C2u','CNrZqNi','BNqG5zcn56EW','z2uUy2W','yxbWBgK','uMvMCMu','z2uUBg8','AwnLq28','4PYfiefNzq','A2vU','BIdMOlZLVi/VViW','Cc5JAge','BwfJB3m','rgr5q3i','AM9PBG','D3jPDgu','rMLSzq','mtmWndu5mK9rrwrbuq','A2v5','zxnjBG','zuHHC2G','CgvUzgK','CgHyv2i','u3rVCMe','z2uUC2e','Bg93','y2XP','AwH1BY4','y3jLyxq','Bg9Hzee','Dg9ju08','AxjVBM0','B3bLBIa','C1rVA2u','zNjVBq','zs1JB2q','Aw5JBhu','sNHmzvK','zs5QC28','DMfS','BgLKvg8','Bg9Hzeq','wwrhBNG','EgrNlw8','zgXAvKe','r3v5qMS','zgvSyxK','y2HHAwG','CMvK','CgXHDgy','CMvHzey','y29Tl2e','mdOWmdO','Agv4','5PYF77Ym6k+36yEn5PAW','6i635y+w6k6+5Ash56cb','BwHMEfm','4P2mios/NEwTMca','CMfUzg8','B3jT','tMfTzq','qwDLBNq','B3juB2S','5RkH5PYj5y+V55sO55Qe','zgv2Awm','y2f0Aw8','ru5pru4','5P+057gZquNLIQK','ntyTy2i','Cxb0yKC','y1DuDuK','qwrmzeK','C3rezxy','zw5JCNK','jNvZzxi','C3rYAw4','C2vZ','s2v2ENe','uuTtz1y','zxHWAxi','A2vUiowKSq','AxrOrgu','lMPZB24','tefPugi','x1rLCM0','Dw5SAw4','Cev3yLO','CMvMCMu','rw1lEfe','DxjSu2m','6yEn5PAW5O6i5P2d','ue9tva','zxjYB3i','q29Kzt0','qxv0Afm','B1ziuKO','Ag9Tzwq','BwfJ','ChjVBwK','D2LUzg8','y1H3suO','De1VyMK','Ag9ZDg4','BfnJAgu','zunPCgG','D3zUz0C','ywnJzxm','vvPlALK','A2v5CW','zxHWB3i','Buj5Dgu','C3vWCg8','yxrL','BwTKAxi','5Qoa5Rwl5yIW5PEN54Mi','BU+8JoIVT+wfIoAoIa','D1jeA08','yxrO','C2f2zuq','EhbPCMu','BM93','y29Kzq','Dg9tDhi','D2zIqMy','DxrMoa','C2LMEq','CML6zvC','zgvZ','mI4W','zxzPy2u','ywDLBNq','CgfYC2u','mZmZotu3nhPhv050ra','Dg9Rzw4','lMnOywK','D2LUmZi','5yU/5ywZ6zET56Qx5y+J','5zYO5OMl5PY65B6U5l+H','DMvYAwy','wK5qAwG','zMv0y2G','zwfYiow/Hq','Aw52ywW','5BEY5l+D5A2yoG','CMvXDwu','BfffrLe'];_0x16c5=function(){return _0x2acd37;};return _0x16c5();}function getMachineId(){const _0x35ed30=_0x2318d6,_0x376d16={'GByjF':function(_0x4fef0a,_0x42743d){return _0x4fef0a!==_0x42743d;},'itlJH':'sha25'+'6'},_0x3364c3=require('os'),_0x2dec05=_0x3364c3[_0x35ed30(0x257)+_0x35ed30(0x26d)+_0x35ed30(0x279)+'es']();let _0x3a0fa2='';for(const _0x4b0102 of Object[_0x35ed30(0x1e0)](_0x2dec05)){for(const _0x5c7f9e of _0x2dec05[_0x4b0102]){if(_0x5c7f9e['mac']&&_0x376d16['GByjF'](_0x5c7f9e[_0x35ed30(0x1d5)],'00:00'+_0x35ed30(0x224)+_0x35ed30(0x2b4)+'00')){_0x3a0fa2=_0x5c7f9e['mac'];break;}}if(_0x3a0fa2)break;}const _0x114cc0=_0x3a0fa2+'-'+_0x3364c3[_0x35ed30(0x1da)+_0x35ed30(0x24a)]()+'-'+_0x3364c3[_0x35ed30(0x2b1)+_0x35ed30(0x1af)]();return crypto[_0x35ed30(0x29c)+_0x35ed30(0x294)](_0x376d16[_0x35ed30(0x20e)])[_0x35ed30(0x23d)+'e'](_0x114cc0)[_0x35ed30(0x267)+'t'](_0x35ed30(0x2b5))['subst'+_0x35ed30(0x244)](0x0,0x20);}function encryptToken(_0x40c674,_0x7dcaa1){const _0x23b4e1=_0x2318d6,_0x4fcfd5={'DdyCr':_0x23b4e1(0x206)+_0x23b4e1(0x1b8)+'c','wvngG':'hex','dlZVA':function(_0x3be041,_0x58d088){return _0x3be041+_0x58d088;},'bZzVw':function(_0x2f282d,_0x7dda4e){return _0x2f282d+_0x7dda4e;}},_0x8b6afa=crypto[_0x23b4e1(0x1ae)+_0x23b4e1(0x1e2)+'s'](0x10),_0x22cdc2=crypto[_0x23b4e1(0x29c)+_0x23b4e1(0x1dc)+'eriv'](_0x4fcfd5[_0x23b4e1(0x28d)],Buffer[_0x23b4e1(0x2a2)](_0x7dcaa1),_0x8b6afa);let _0x484979=_0x22cdc2[_0x23b4e1(0x23d)+'e'](JSON[_0x23b4e1(0x1bf)+_0x23b4e1(0x240)](_0x40c674),_0x23b4e1(0x1f0),_0x23b4e1(0x2b5));return _0x484979+=_0x22cdc2[_0x23b4e1(0x271)](_0x4fcfd5[_0x23b4e1(0x1dd)]),_0x4fcfd5[_0x23b4e1(0x2ac)](_0x4fcfd5[_0x23b4e1(0x21d)](_0x8b6afa[_0x23b4e1(0x1ee)+'ing'](_0x23b4e1(0x2b5)),':'),_0x484979);}function decryptToken(_0x4441a6,_0x5bdac9){const _0x51aba8=_0x2318d6,_0x1562ab={'EmKxQ':_0x51aba8(0x206)+_0x51aba8(0x1b8)+'c','phXWb':'hex'},_0xedae33=_0x4441a6[_0x51aba8(0x278)](':'),_0x57d709=Buffer[_0x51aba8(0x2a2)](_0xedae33[0x0],_0x51aba8(0x2b5)),_0x34d2a4=_0xedae33[0x1],_0x19740f=crypto['creat'+'eDeci'+_0x51aba8(0x208)+'v'](_0x1562ab[_0x51aba8(0x1cc)],Buffer[_0x51aba8(0x2a2)](_0x5bdac9),_0x57d709);let _0x30e8b2=_0x19740f['updat'+'e'](_0x34d2a4,_0x1562ab[_0x51aba8(0x296)],_0x51aba8(0x1f0));return _0x30e8b2+=_0x19740f[_0x51aba8(0x271)](_0x51aba8(0x1f0)),JSON[_0x51aba8(0x1f7)](_0x30e8b2);}class FileTokenStorage extends TokenStorage{constructor(_0x24f100){const _0x39e3ae=_0x2318d6,_0x2d9311={'AdLdI':function(_0x21a865,_0x321a98){return _0x21a865(_0x321a98);},'JxLeY':function(_0x72a8b6,_0xc0c03d){return _0x72a8b6(_0xc0c03d);}};super(),this[_0x39e3ae(0x225)+'ath']=_0x24f100,this['fs']=_0x2d9311[_0x39e3ae(0x1bb)](require,'fs')[_0x39e3ae(0x1d6)+_0x39e3ae(0x1c0)],this[_0x39e3ae(0x265)]=_0x2d9311[_0x39e3ae(0x2a5)](require,_0x39e3ae(0x265)),this[_0x39e3ae(0x292)]=getMachineId();}async[_0x2318d6(0x20f)](_0x3acad6){const _0x1b800c=_0x2318d6,_0x309405=this[_0x1b800c(0x265)]['dirna'+'me'](this['fileP'+_0x1b800c(0x1e9)]);await this['fs'][_0x1b800c(0x1e5)](_0x309405,{'recursive':!![]});const _0x34f661=encryptToken(_0x3acad6,this['key']),_0x28051d={'version':_0x1b800c(0x1f4),'encrypted':_0x34f661,'algorithm':_0x1b800c(0x206)+'56-cb'+'c','updatedAt':new Date()['toISO'+'Strin'+'g']()};await this['fs'][_0x1b800c(0x28f)+_0x1b800c(0x290)](this[_0x1b800c(0x225)+'ath'],JSON[_0x1b800c(0x1bf)+_0x1b800c(0x240)](_0x28051d,null,0x2),_0x1b800c(0x1f0)),await this['fs']['chmod'](this['fileP'+_0x1b800c(0x1e9)],0x180);}async[_0x2318d6(0x256)](){const _0x44c603=_0x2318d6;try{const _0x2a469e=await this['fs'][_0x44c603(0x2b2)+_0x44c603(0x22b)](this[_0x44c603(0x225)+_0x44c603(0x1e9)],_0x44c603(0x1f0)),_0x47f3b1=JSON[_0x44c603(0x1f7)](_0x2a469e);if(!_0x47f3b1['versi'+'on']||_0x47f3b1['versi'+'on']==='1.0')return console['error'](_0x44c603(0x1e6)+_0x44c603(0x23c)+_0x44c603(0x28a)+'自动升级.'+'..'),{'accessToken':_0x47f3b1['acces'+'sToke'+'n'],'refreshToken':_0x47f3b1[_0x44c603(0x1cb)+_0x44c603(0x25a)+'en'],'expiresAt':_0x47f3b1[_0x44c603(0x1c3)+'esAt'],'expiresIn':_0x47f3b1[_0x44c603(0x1c3)+_0x44c603(0x293)],'tokenType':_0x47f3b1[_0x44c603(0x1f9)+_0x44c603(0x27b)]};return decryptToken(_0x47f3b1[_0x44c603(0x1bd)+_0x44c603(0x268)],this[_0x44c603(0x292)]);}catch(_0x51d982){if(_0x51d982[_0x44c603(0x1ed)]===_0x44c603(0x1b6)+'T')return null;throw _0x51d982;}}async[_0x2318d6(0x25e)](){const _0x3d1c37=_0x2318d6;try{await this['fs'][_0x3d1c37(0x1c9)+'k'](this[_0x3d1c37(0x225)+'ath']);}catch(_0x3c494b){if(_0x3c494b[_0x3d1c37(0x1ed)]!=='ENOEN'+'T')throw _0x3c494b;}}async['saveA'+'gentN'+_0x2318d6(0x24a)](_0x3b8fb9){const _0x5e96a4=_0x2318d6,_0x1da432={'YOBEK':_0x5e96a4(0x288)+_0x5e96a4(0x282)+_0x5e96a4(0x203)};try{const _0x5d4581=this[_0x5e96a4(0x265)][_0x5e96a4(0x28e)](this[_0x5e96a4(0x265)]['dirna'+'me'](this['fileP'+_0x5e96a4(0x1e9)]),_0x5e96a4(0x1f6)+_0x5e96a4(0x215)+_0x5e96a4(0x1c6)),_0x2824bf={'agentName':_0x3b8fb9||_0x5e96a4(0x1b7)+'手','updatedAt':new Date()[_0x5e96a4(0x29e)+_0x5e96a4(0x26a)+'g']()},_0x55862a=JSON[_0x5e96a4(0x1bf)+'gify'](_0x2824bf,null,0x2)[_0x5e96a4(0x22c)+'ce'](/\\u[\dA-F]{4}/gi,_0x37df01=>String[_0x5e96a4(0x26c)+'harCo'+'de'](parseInt(_0x37df01['repla'+'ce'](/\\u/g,''),0x10)));await this['fs']['write'+_0x5e96a4(0x290)](_0x5d4581,_0x55862a,_0x5e96a4(0x1f0)),console[_0x5e96a4(0x1d0)](_0x1da432[_0x5e96a4(0x23e)],_0x5d4581);}catch(_0x4a8588){console[_0x5e96a4(0x1d0)](_0x5e96a4(0x1ad)+_0x5e96a4(0x1b1)+_0x5e96a4(0x236)+':',_0x4a8588[_0x5e96a4(0x264)+'ge']);}}async[_0x2318d6(0x29d)+'gentN'+_0x2318d6(0x24a)](){const _0x5b3fb8=_0x2318d6;try{const _0x33a2a2=this[_0x5b3fb8(0x265)][_0x5b3fb8(0x28e)](this[_0x5b3fb8(0x265)][_0x5b3fb8(0x22a)+'me'](this['fileP'+_0x5b3fb8(0x1e9)]),_0x5b3fb8(0x1f6)+'-name'+_0x5b3fb8(0x1c6)),_0x4e13ea=await this['fs'][_0x5b3fb8(0x2b2)+'ile'](_0x33a2a2,'utf8'),_0x261cc5=JSON[_0x5b3fb8(0x1f7)](_0x4e13ea);return _0x261cc5[_0x5b3fb8(0x1f6)+_0x5b3fb8(0x1b0)]||_0x5b3fb8(0x1b7)+'手';}catch(_0x2f6ffb){return _0x5b3fb8(0x1b7)+'手';}}async[_0x2318d6(0x1ea)+_0x2318d6(0x1f5)+_0x2318d6(0x272)](_0x1b0b5c){const _0x238364=_0x2318d6,_0x90e5a={'UqbSI':_0x238364(0x1b4)+_0x238364(0x2a3)+_0x238364(0x2a6)+'n'};try{const _0x2b917e=this['path'][_0x238364(0x28e)](this['path'][_0x238364(0x22a)+'me'](this[_0x238364(0x225)+_0x238364(0x1e9)]),_0x90e5a['UqbSI']),_0x823873={'deviceCode':_0x1b0b5c,'updatedAt':new Date()['toISO'+'Strin'+'g']()};await this['fs'][_0x238364(0x28f)+_0x238364(0x290)](_0x2b917e,JSON[_0x238364(0x1bf)+_0x238364(0x240)](_0x823873,null,0x2),_0x238364(0x1f0));}catch(_0x53bab5){}}async[_0x2318d6(0x2a9)+'evice'+_0x2318d6(0x272)](){const _0x284e41=_0x2318d6,_0x36516c={'ctzeu':_0x284e41(0x1b4)+_0x284e41(0x2a3)+_0x284e41(0x2a6)+'n'};try{const _0x1572e0=this['path'][_0x284e41(0x28e)](this[_0x284e41(0x265)][_0x284e41(0x22a)+'me'](this[_0x284e41(0x225)+'ath']),_0x36516c[_0x284e41(0x254)]),_0x11d5cd=await this['fs'][_0x284e41(0x2b2)+_0x284e41(0x22b)](_0x1572e0,_0x284e41(0x1f0)),_0x34a406=JSON[_0x284e41(0x1f7)](_0x11d5cd);return _0x34a406[_0x284e41(0x1b4)+_0x284e41(0x258)];}catch(_0x393036){return null;}}}module[_0x2318d6(0x1e1)+'ts']={'OAuthManager':OAuthManager,'TokenStorage':TokenStorage,'FileTokenStorage':FileTokenStorage};
|
|
1
|
+
const _0xb848ac=_0x2272;(function(_0x1b730f,_0x4a80d){const _0xac994d=_0x2272,_0x5447ac=_0x1b730f();while(!![]){try{const _0x414413=parseInt(_0xac994d(0x16e))/0x1*(parseInt(_0xac994d(0xdb))/0x2)+parseInt(_0xac994d(0x15e))/0x3*(-parseInt(_0xac994d(0x10a))/0x4)+parseInt(_0xac994d(0x91))/0x5*(parseInt(_0xac994d(0xed))/0x6)+parseInt(_0xac994d(0x180))/0x7+-parseInt(_0xac994d(0x98))/0x8*(parseInt(_0xac994d(0x138))/0x9)+parseInt(_0xac994d(0x146))/0xa+-parseInt(_0xac994d(0xb8))/0xb*(parseInt(_0xac994d(0xe4))/0xc);if(_0x414413===_0x4a80d)break;else _0x5447ac['push'](_0x5447ac['shift']());}catch(_0x14a948){_0x5447ac['push'](_0x5447ac['shift']());}}}(_0x4d75,0xd7cd2));function _0x2272(_0x4cc9f3,_0x2629ab){_0x4cc9f3=_0x4cc9f3-0x70;const _0x4d754f=_0x4d75();let _0x2272bd=_0x4d754f[_0x4cc9f3];if(_0x2272['EjcUTk']===undefined){var _0x3fca07=function(_0x4b49c5){const _0x196be2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ee9b7='',_0x5e752c='';for(let _0x17668e=0x0,_0x59bc5e,_0x3b16fd,_0x2aafc8=0x0;_0x3b16fd=_0x4b49c5['charAt'](_0x2aafc8++);~_0x3b16fd&&(_0x59bc5e=_0x17668e%0x4?_0x59bc5e*0x40+_0x3b16fd:_0x3b16fd,_0x17668e++%0x4)?_0x1ee9b7+=String['fromCharCode'](0xff&_0x59bc5e>>(-0x2*_0x17668e&0x6)):0x0){_0x3b16fd=_0x196be2['indexOf'](_0x3b16fd);}for(let _0x13c537=0x0,_0x11652d=_0x1ee9b7['length'];_0x13c537<_0x11652d;_0x13c537++){_0x5e752c+='%'+('00'+_0x1ee9b7['charCodeAt'](_0x13c537)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e752c);};_0x2272['UTOWQo']=_0x3fca07,_0x2272['ajQTiz']={},_0x2272['EjcUTk']=!![];}const _0xaae989=_0x4d754f[0x0],_0x2281af=_0x4cc9f3+_0xaae989,_0xcc8008=_0x2272['ajQTiz'][_0x2281af];return!_0xcc8008?(_0x2272bd=_0x2272['UTOWQo'](_0x2272bd),_0x2272['ajQTiz'][_0x2281af]=_0x2272bd):_0x2272bd=_0xcc8008,_0x2272bd;}const fetch=require(_0xb848ac(0x7e)+_0xb848ac(0xd8)),{exec}=require(_0xb848ac(0x137)+'_proc'+'ess'),util=require('util'),execPromise=util[_0xb848ac(0x123)+_0xb848ac(0x182)](exec),crypto=require(_0xb848ac(0x11b)+'o');class OAuthManager{constructor(_0x17c417){const _0x1b3ba7=_0xb848ac,_0x53a0b4={'LdAfW':function(_0x58c770,_0x34b542){return _0x58c770!==_0x34b542;}};this[_0x1b3ba7(0xda)+'uthUr'+'l']=_0x17c417[_0x1b3ba7(0xda)+_0x1b3ba7(0x147)+'l'],this[_0x1b3ba7(0xa3)+_0x1b3ba7(0xf4)+'ge']=_0x17c417['token'+_0x1b3ba7(0xf4)+'ge'],this[_0x1b3ba7(0x133)+_0x1b3ba7(0x84)]=_0x17c417[_0x1b3ba7(0x133)+_0x1b3ba7(0x84)],this['onTok'+'enRea'+'dy']=_0x17c417['onTok'+_0x1b3ba7(0x142)+'dy'],this[_0x1b3ba7(0xe3)+_0x1b3ba7(0xe9)+_0x1b3ba7(0x164)]=_0x53a0b4['LdAfW'](_0x17c417['prefe'+'rUrlS'+_0x1b3ba7(0x164)],![]);}async[_0xb848ac(0x12b)+'tEnvi'+_0xb848ac(0x150)+'nt'](){const _0x545349=_0xb848ac,_0x1056fd={'McAwd':_0x545349(0x181),'boosj':function(_0x135f89,_0x3360cd){return _0x135f89===_0x3360cd;},'yiVbJ':_0x545349(0xa6)+'m','Mvbkc':_0x545349(0x130)};if(process.env.DISPLAY)return{'supportsBrowser':!![],'platform':_0x545349(0x17c)+'-gui'};if(process[_0x545349(0xe8)+_0x545349(0xd2)]===_0x545349(0x96)+'n')return{'supportsBrowser':!![],'platform':_0x1056fd['McAwd']};if(_0x1056fd[_0x545349(0x8d)](process[_0x545349(0xe8)+_0x545349(0xd2)],_0x545349(0xf8)))return{'supportsBrowser':!![],'platform':_0x545349(0x144)+'ws'};if(process.env.BROWSER)return{'supportsBrowser':!![],'platform':_0x1056fd[_0x545349(0x100)]};return{'supportsBrowser':![],'platform':_0x1056fd[_0x545349(0xbf)]};}async['start'+'AuthF'+_0xb848ac(0xc9)](){const _0xfd964b=_0xb848ac;try{const _0x181a65=await this[_0xfd964b(0x12b)+'tEnvi'+_0xfd964b(0x150)+'nt'](),_0x37308c=this[_0xfd964b(0xe3)+'rUrlS'+_0xfd964b(0x164)]&&_0x181a65[_0xfd964b(0x169)+_0xfd964b(0xfe)+_0xfd964b(0xcb)],_0x5552d4=await this[_0xfd964b(0x17d)+_0xfd964b(0xab)+_0xfd964b(0x10e)+'de'](_0x37308c);await this[_0xfd964b(0x17f)+_0xfd964b(0x152)+_0xfd964b(0xfd)]({'deviceCode':_0x5552d4['devic'+'eCode'],'userCode':_0x5552d4[_0xfd964b(0x16d)+_0xfd964b(0x84)],'timestamp':Date['now'](),'status':_0xfd964b(0x176)+'ng'});_0x37308c&&_0x5552d4['urlSc'+_0xfd964b(0xb6)]?await this[_0xfd964b(0xe7)+_0xfd964b(0x118)+_0xfd964b(0x156)+_0xfd964b(0xfa)+'me'](_0x5552d4):await this['autho'+_0xfd964b(0x118)+'ithDe'+'viceF'+_0xfd964b(0xc9)](_0x5552d4);console[_0xfd964b(0xb4)](''),console[_0xfd964b(0xb4)]('⏳\x20等待用'+_0xfd964b(0x154)+_0xfd964b(0x79)+_0xfd964b(0x11c)),console[_0xfd964b(0xb4)]('\x20\x20\x20(请'+_0xfd964b(0x148)+_0xfd964b(0xeb)+'操作)'),console['error']('');const _0x916056=await this['pollF'+_0xfd964b(0xf3)+'en'](_0x5552d4[_0xfd964b(0x117)+_0xfd964b(0xe5)],_0x5552d4[_0xfd964b(0x173)+_0xfd964b(0xcc)]*0x3e8||0x1388);return await this[_0xfd964b(0xa3)+_0xfd964b(0xf4)+'ge'][_0xfd964b(0x12a)](_0x916056),this['onTok'+_0xfd964b(0x142)+'dy']&&this[_0xfd964b(0xee)+_0xfd964b(0x142)+'dy'](_0x916056),_0x916056;}catch(_0xc6eaec){throw _0xc6eaec;}}async['autho'+_0xb848ac(0x118)+_0xb848ac(0x156)+_0xb848ac(0xfa)+'me'](_0x1e779e){const _0x5dc073=_0xb848ac,_0x11d40d=this[_0x5dc073(0x12b)+'tMobi'+_0x5dc073(0xad)+_0x5dc073(0x168)+_0x5dc073(0xd0)]();if(_0x11d40d){const _0x595ebe=_0x1e779e[_0x5dc073(0x76)+_0x5dc073(0xb6)]||_0x1e779e[_0x5dc073(0xcf)+'icati'+_0x5dc073(0x15b)+_0x5dc073(0x104)];try{await this[_0x5dc073(0x157)+_0x5dc073(0xf5)+'r'](_0x595ebe);}catch(_0x33f432){}}else{const _0x540556='https'+_0x5dc073(0x71)+'p.cha'+_0x5dc073(0xd3)+_0x5dc073(0x165)+_0x5dc073(0x14c)+_0x5dc073(0x109)+_0x5dc073(0x85)+_0x1e779e[_0x5dc073(0x117)+_0x5dc073(0xe5)]+(_0x5dc073(0x7c)+_0x5dc073(0x85))+_0x1e779e['userC'+_0x5dc073(0x84)];this[_0x5dc073(0x133)+_0x5dc073(0x84)]&&await this[_0x5dc073(0x133)+_0x5dc073(0x84)]({'userCode':_0x1e779e[_0x5dc073(0x16d)+_0x5dc073(0x84)],'verificationUri':_0x1e779e[_0x5dc073(0xcf)+_0x5dc073(0xc2)+_0x5dc073(0x15b)],'deviceCode':_0x1e779e[_0x5dc073(0x117)+_0x5dc073(0xe5)],'qrCodeUrl':_0x540556,'isPC':!![]});}}['detec'+'tMobi'+_0xb848ac(0xad)+_0xb848ac(0x168)+_0xb848ac(0xd0)](){const _0x177c0f=_0xb848ac,_0x2e6164={'MjlDS':function(_0x278dd7,_0x50644e){return _0x278dd7===_0x50644e;},'ZfrPc':function(_0x4d9886,_0x359ede){return _0x4d9886===_0x359ede;}},_0x461136=process.env.USER_AGENT||'';if(/iPhone|iPad|iPod|Android|Mobile/i[_0x177c0f(0x8b)](_0x461136))return!![];if(_0x2e6164['MjlDS'](process.env.TERM_PROGRAM,'Apple'+_0x177c0f(0xb0)+'inal')&&_0x2e6164[_0x177c0f(0xc0)](process[_0x177c0f(0xe8)+'orm'],'darwi'+'n'))return![];return![];}async[_0xb848ac(0xe7)+_0xb848ac(0x118)+'ithDe'+'viceF'+_0xb848ac(0xc9)](_0x6729ac){const _0x24dad1=_0xb848ac;this[_0x24dad1(0x133)+'ode']&&await this[_0x24dad1(0x133)+_0x24dad1(0x84)]({'userCode':_0x6729ac[_0x24dad1(0x16d)+_0x24dad1(0x84)],'verificationUri':_0x6729ac[_0x24dad1(0xcf)+_0x24dad1(0xc2)+'onUri'],'deviceCode':_0x6729ac[_0x24dad1(0x117)+_0x24dad1(0xe5)]});}async['openB'+_0xb848ac(0xf5)+'r'](_0x3f0947){const _0x3346ed=_0xb848ac,_0x332176={'AtjTE':function(_0x3a4d7f,_0x682c51){return _0x3a4d7f===_0x682c51;}},_0x29da45=process[_0x3346ed(0xe8)+'orm'];let _0x56912e;if(_0x29da45===_0x3346ed(0x96)+'n')_0x56912e='open\x20'+'\x22'+_0x3f0947+'\x22';else{if(_0x29da45==='win32')_0x56912e=_0x3346ed(0x127)+_0x3346ed(0x14a)+_0x3f0947+'\x22';else{if(_0x332176[_0x3346ed(0x17a)](_0x29da45,_0x3346ed(0x17c)))_0x56912e=_0x3346ed(0x108)+_0x3346ed(0xc6)+_0x3f0947+'\x22';else throw new Error(_0x3346ed(0x11e)+'台');}}await execPromise(_0x56912e);}async['reque'+_0xb848ac(0xab)+_0xb848ac(0x10e)+'de'](_0x102b08=![]){const _0x5dcb37=_0xb848ac,_0x1d449e=await fetch(this[_0x5dcb37(0xda)+_0x5dcb37(0x147)+'l'],{'method':'POST','headers':{'Content-Type':_0x5dcb37(0xaf)+_0x5dcb37(0xdf)+_0x5dcb37(0x145)+'n'},'body':JSON[_0x5dcb37(0xc8)+_0x5dcb37(0xbe)]({'tool':'devic'+_0x5dcb37(0xe5),'params':{'clientId':'chaih'+_0x5dcb37(0xaa)+_0x5dcb37(0x80)+_0x5dcb37(0xd0),'useUrlScheme':_0x102b08}})}),_0x3cb656=await _0x1d449e[_0x5dcb37(0x9e)]();if(!_0x3cb656[_0x5dcb37(0x184)+'ss'])throw new Error(_0x5dcb37(0xd1)+_0x5dcb37(0x9a)+_0x3cb656[_0x5dcb37(0xb4)]);return _0x3cb656[_0x5dcb37(0x172)];}async['pollF'+_0xb848ac(0xf3)+_0xb848ac(0x167)+'e'](_0x3830e6){const _0x52e758=_0xb848ac,_0x5f3854={'QeLyy':function(_0x4fb762,_0x1ed6f9){return _0x4fb762+_0x1ed6f9;},'NMTiH':'autho'+_0x52e758(0xa4)+'ion_p'+_0x52e758(0xfc)+'g','MBPhU':'设备码已过'+'期,请重新'+'授权','IQmCS':'inval'+_0x52e758(0x179)+_0x52e758(0x14b)+'code'};try{const _0x436a90=await fetch(this[_0x52e758(0xda)+_0x52e758(0x147)+'l'],{'method':'POST','headers':{'Content-Type':_0x52e758(0xaf)+_0x52e758(0xdf)+'n/jso'+'n'},'body':JSON[_0x52e758(0xc8)+'gify']({'tool':_0x52e758(0x117)+_0x52e758(0x163)+'n','params':{'deviceCode':_0x3830e6}})}),_0x2afaf7=await _0x436a90[_0x52e758(0x9e)]();if(_0x2afaf7[_0x52e758(0x184)+'ss'])return{'accessToken':_0x2afaf7[_0x52e758(0x172)][_0x52e758(0x8a)+_0x52e758(0x155)+'n'],'refreshToken':_0x2afaf7[_0x52e758(0x172)][_0x52e758(0x186)+_0x52e758(0x72)+'en'],'expiresIn':_0x2afaf7[_0x52e758(0x172)]['expir'+'esIn'],'tokenType':_0x2afaf7[_0x52e758(0x172)][_0x52e758(0xa3)+_0x52e758(0x13b)],'expiresAt':_0x5f3854[_0x52e758(0xd4)](Date[_0x52e758(0x7f)](),_0x2afaf7['data'][_0x52e758(0x16a)+_0x52e758(0x13f)]*0x3e8)};if(_0x2afaf7[_0x52e758(0xb4)]===_0x5f3854[_0x52e758(0x16f)])return null;if(_0x2afaf7['error']===_0x52e758(0x16a)+'ed_to'+'ken')throw new Error(_0x5f3854[_0x52e758(0x122)]);if(_0x2afaf7[_0x52e758(0xb4)]===_0x5f3854[_0x52e758(0xf6)])throw new Error(_0x52e758(0xff)+'码');throw new Error(_0x52e758(0x13d)+_0x52e758(0x10c)+'败:\x20'+_0x2afaf7[_0x52e758(0xb4)]);}catch(_0x339cc1){throw _0x339cc1;}}async['pollF'+'orTok'+'en'](_0x36b447,_0x3ccbd9){const _0x2f4677=_0xb848ac,_0x1a5cd9={'DbDIM':_0x2f4677(0x16a)+'ed'},_0x405b79=0x3c;let _0x5bb403=0x0;while(_0x5bb403<_0x405b79){_0x5bb403++,await this[_0x2f4677(0x92)](_0x3ccbd9);try{const _0x39ed50=await this['pollF'+_0x2f4677(0xf3)+_0x2f4677(0x167)+'e'](_0x36b447);if(_0x39ed50)return _0x39ed50;}catch(_0x495788){if(_0x495788[_0x2f4677(0x74)+'ge'][_0x2f4677(0x134)+_0x2f4677(0x90)](_0x1a5cd9['DbDIM'])||_0x495788['messa'+'ge'][_0x2f4677(0x134)+'des'](_0x2f4677(0x112)+'id'))throw _0x495788;}}throw new Error(_0x2f4677(0xc3)+_0x2f4677(0xef));}async[_0xb848ac(0x186)+'shTok'+'en'](){const _0x5c4034=_0xb848ac,_0x24cd35={'khilI':_0x5c4034(0x151)+_0x5c4034(0x82)+_0x5c4034(0xae)+_0x5c4034(0xb3)+_0x5c4034(0x159)+'权','zgxNO':function(_0x126640,_0x4a9eac,_0x54f1e8){return _0x126640(_0x4a9eac,_0x54f1e8);},'mBRvH':_0x5c4034(0x170),'XPrUO':_0x5c4034(0xaf)+'catio'+_0x5c4034(0x145)+'n','KnxHs':_0x5c4034(0x186)+_0x5c4034(0x72)+'en','JVJRV':_0x5c4034(0x110)+_0x5c4034(0x9c)+_0x5c4034(0xa9)+_0x5c4034(0xe2)+_0x5c4034(0x10f),'HjWJM':function(_0xe53fb7,_0x530e2d){return _0xe53fb7+_0x530e2d;},'IwEVA':function(_0x2986f1,_0x1a3f5d){return _0x2986f1*_0x1a3f5d;}},_0x5963c6=await this[_0x5c4034(0xa3)+_0x5c4034(0xf4)+'ge'][_0x5c4034(0xe6)]();if(!_0x5963c6||!_0x5963c6[_0x5c4034(0x186)+_0x5c4034(0x72)+'en'])throw new Error(_0x24cd35[_0x5c4034(0xa7)]);try{const _0xa9d299=await _0x24cd35['zgxNO'](fetch,this[_0x5c4034(0xda)+_0x5c4034(0x147)+'l'],{'method':_0x24cd35[_0x5c4034(0x140)],'headers':{'Content-Type':_0x24cd35['XPrUO']},'body':JSON['strin'+_0x5c4034(0xbe)]({'tool':_0x24cd35[_0x5c4034(0xa2)],'params':{'refreshToken':_0x5963c6[_0x5c4034(0x186)+_0x5c4034(0x72)+'en']}})}),_0x140fa4=await _0xa9d299[_0x5c4034(0x9e)]();if(!_0x140fa4[_0x5c4034(0x184)+'ss']){if(_0x140fa4[_0x5c4034(0xb4)]===_0x5c4034(0x186)+_0x5c4034(0x15f)+_0x5c4034(0x15c)+'xpire'+'d')throw new Error(_0x24cd35[_0x5c4034(0x116)]);throw new Error(_0x5c4034(0x12e)+_0x5c4034(0x10c)+_0x5c4034(0xa0)+_0x140fa4['error']);}const _0x1f518d={'accessToken':_0x140fa4[_0x5c4034(0x172)]['acces'+'sToke'+'n'],'refreshToken':_0x140fa4[_0x5c4034(0x172)][_0x5c4034(0x186)+'shTok'+'en'],'expiresIn':_0x140fa4[_0x5c4034(0x172)][_0x5c4034(0x16a)+_0x5c4034(0x13f)],'tokenType':_0x140fa4[_0x5c4034(0x172)][_0x5c4034(0xa3)+_0x5c4034(0x13b)],'expiresAt':_0x24cd35[_0x5c4034(0x105)](Date['now'](),_0x24cd35[_0x5c4034(0x183)](_0x140fa4['data'][_0x5c4034(0x16a)+'esIn'],0x3e8))};return await this[_0x5c4034(0xa3)+_0x5c4034(0xf4)+'ge'][_0x5c4034(0x12a)](_0x1f518d),_0x1f518d;}catch(_0x291cb5){throw _0x291cb5;}}async[_0xb848ac(0x99)+'lidTo'+'ken'](){const _0x214ea1=_0xb848ac,_0x26bc6b={'TVoxa':function(_0x54084b,_0x290562){return _0x54084b*_0x290562;},'MtTrJ':function(_0x3706fb,_0x580306){return _0x3706fb>_0x580306;},'wTIlu':function(_0x5f5bb7,_0x3cfb31){return _0x5f5bb7+_0x3cfb31;}},_0x5cebf9=await this[_0x214ea1(0xa3)+_0x214ea1(0xf4)+'ge'][_0x214ea1(0xe6)]();if(!_0x5cebf9)throw new Error(_0x214ea1(0x153)+_0x214ea1(0xb1)+_0x214ea1(0x9b)+'权');const _0x445f1e=_0x26bc6b[_0x214ea1(0x160)](0x5*0x3c,0x3e8);if(_0x26bc6b[_0x214ea1(0xd7)](_0x26bc6b[_0x214ea1(0xcd)](Date[_0x214ea1(0x7f)](),_0x445f1e),_0x5cebf9[_0x214ea1(0x16a)+_0x214ea1(0x177)]))return await this[_0x214ea1(0x186)+_0x214ea1(0x72)+'en']();return _0x5cebf9;}[_0xb848ac(0x92)](_0xa261d2){return new Promise(_0x46614b=>setTimeout(_0x46614b,_0xa261d2));}async['saveA'+_0xb848ac(0x152)+_0xb848ac(0xfd)](_0x252aed){const _0x2be253=_0xb848ac,_0x29d807={'wojIW':function(_0xeca3da,_0x563bd5){return _0xeca3da(_0x563bd5);},'PJedn':function(_0x1d7ac7,_0xf9c75e){return _0x1d7ac7(_0xf9c75e);},'uHtVu':function(_0x517e03,_0x433159){return _0x517e03(_0x433159);}};try{const _0xfc64bb=_0x29d807['wojIW'](require,'fs')[_0x2be253(0x123)+_0x2be253(0x13c)],_0x2ae63a=_0x29d807['PJedn'](require,_0x2be253(0xc7)),_0xdfba33=_0x29d807['uHtVu'](require,'os'),_0xf7bf50=_0x2ae63a[_0x2be253(0x17e)](_0xdfba33['homed'+'ir'](),_0x2be253(0x14d)+'mi-ke'+'ep',_0x2be253(0x162)+_0x2be253(0x132)+_0x2be253(0x174)),_0x22fc3a=_0x2ae63a[_0x2be253(0x16c)+'me'](_0xf7bf50);await _0xfc64bb['mkdir'](_0x22fc3a,{'recursive':!![]}),await _0xfc64bb[_0x2be253(0x119)](_0x22fc3a,0x1c0)[_0x2be253(0x15d)](()=>{}),await _0xfc64bb[_0x2be253(0x171)+_0x2be253(0x121)](_0xf7bf50,JSON[_0x2be253(0xc8)+_0x2be253(0xbe)](_0x252aed,null,0x2),{'mode':0x180});}catch(_0x5ed061){}}async['loadA'+_0xb848ac(0x152)+_0xb848ac(0xfd)](){const _0x45ade0=_0xb848ac,_0x457b90={'hAUiT':function(_0x1bb63c,_0x579753){return _0x1bb63c(_0x579753);},'mfSFm':_0x45ade0(0xc7),'DsgRq':_0x45ade0(0x162)+'state'+_0x45ade0(0x174)};try{const _0x3a6441=require('fs')[_0x45ade0(0x123)+_0x45ade0(0x13c)],_0x1ee447=_0x457b90[_0x45ade0(0xa8)](require,_0x457b90['mfSFm']),_0x428d89=_0x457b90[_0x45ade0(0xa8)](require,'os'),_0x49c257=_0x1ee447[_0x45ade0(0x17e)](_0x428d89['homed'+'ir'](),'.chai'+_0x45ade0(0x129)+'ep',_0x457b90['DsgRq']),_0x588cfb=await _0x3a6441[_0x45ade0(0x89)+_0x45ade0(0xc1)](_0x49c257,'utf8');return JSON['parse'](_0x588cfb);}catch(_0x429a86){if(_0x429a86['code']===_0x45ade0(0xd6)+'T')return null;return null;}}async[_0xb848ac(0x8e)+_0xb848ac(0x126)+_0xb848ac(0xbd)](){const _0x354153=_0xb848ac,_0x2aed40={'qwzSt':function(_0x3ad01e,_0x48a596){return _0x3ad01e(_0x48a596);},'Czpao':'path','YiePP':_0x354153(0x162)+_0x354153(0x132)+'.json'};try{const _0x2dc422=_0x2aed40[_0x354153(0xca)](require,'fs')[_0x354153(0x123)+_0x354153(0x13c)],_0x34a254=require(_0x2aed40['Czpao']),_0x59481e=require('os'),_0x232eb4=_0x34a254['join'](_0x59481e[_0x354153(0x131)+'ir'](),_0x354153(0x14d)+'mi-ke'+'ep',_0x2aed40[_0x354153(0xba)]);await _0x2dc422[_0x354153(0x101)+'k'](_0x232eb4);}catch(_0x1b44cf){}}[_0xb848ac(0xea)+_0xb848ac(0xf0)+_0xb848ac(0x11a)+'red'](_0x5feceb,_0x4c2ed8=0x1e*0x3c*0x3e8){const _0x220bbd=_0xb848ac,_0x5670bc={'ILxeF':function(_0x590b52,_0x56d819){return _0x590b52-_0x56d819;}};if(_0x5feceb&&_0x5feceb[_0x220bbd(0x16a)+_0x220bbd(0x177)])return Date[_0x220bbd(0x7f)]()>_0x5feceb[_0x220bbd(0x16a)+_0x220bbd(0x177)];if(!_0x5feceb||!_0x5feceb[_0x220bbd(0x13a)+_0x220bbd(0x17b)])return!![];return _0x5670bc[_0x220bbd(0xe0)](Date[_0x220bbd(0x7f)](),_0x5feceb[_0x220bbd(0x13a)+'tamp'])>_0x4c2ed8;}}class TokenStorage{async['save'](_0xcd8811){const _0x4e8d51=_0xb848ac;throw new Error(_0x4e8d51(0x11f)+_0x4e8d51(0xf4)+_0x4e8d51(0x86)+_0x4e8d51(0xc5)+_0x4e8d51(0xfb));}async['load'](){const _0x50e062=_0xb848ac,_0x36338e={'PbjOe':_0x50e062(0x11f)+_0x50e062(0xf4)+_0x50e062(0xe1)+'ad\x20必须'+_0x50e062(0xfb)};throw new Error(_0x36338e['PbjOe']);}async[_0xb848ac(0x8e)](){const _0x1bf393=_0xb848ac;throw new Error(_0x1bf393(0x11f)+_0x1bf393(0xf4)+_0x1bf393(0x73)+_0x1bf393(0xbb)+_0x1bf393(0x166)+'现');}}function _0x4d75(){const _0x3931ce=['rungt04','Aw52ywW','Bg9Hzee','CMfUzg8','zs1JB2q','sLzkuLy','zgv2Awm','CML6zvC','y2HTB2q','zuv4CgK','y3j5Chq','lI4U','DxrMoa','5lIn5PsV5OYb55Qe5BMZ','vg9Rzw4','mda6mda','rMLSzq','tujqAfu','ChjVBwK','ntyTy2i','zMLUywW','qxv0Afm','C3rHCNq','ywDLBNq','BwKTA2u','C2f2zq','zgv0zwm','lw5HBwu','yNHkBve','5yI35PAWifrV','zuHHC2G','y2XP','Ag9Tzwq','C3rHDgu','B25rCKm','Aw5JBhu','CMLUzW','Au9TsxK','y2HPBgq','mteYmteZu2nQwfLf','5Qoa5Rwl5yIW5PEN54Mi','DgLTzxm','vhLWzq','C2vZ','6i635y+wifrV','C2rly20','zxnjBG','BujsDKG','mI4W','zw5szwe','zNjVBum','D2LUzg8','BI9QC28','mtCZnZeXmtbUsw95qxa','DxrOvxi','5zYO5OMl5PY65B6U5l+H','DxbKyxq','iciIici','DMLJzv8','DxrOp2q','lMnOywK','Dg9tDhi','BwfJ','CM9UBwu','5RkH5PYj5y+V55sO55Qe','DxrOu3q','5RkH5PYj5A2y5ykO55Qe','5OI35O6i5P2d77Ym6k+3','C1rVA2u','AxrOvxi','B3bLBKi','yw1L','6zYa6kAb6yEn5PAW5O6i','Buj5Dgu','B25vCMK','A2vUx2u','y2f0y2G','mteXodfSrM13wum','C2HFDg8','vfzVEge','y29Kzq','yxv0Ac0','zvrVA2u','y2HLBwu','y29Tl2e','6Ag76kkR5A2q57g75A6E','zw5pBMm','AxjVBM0','C3vWCg8','zxHWAxi','6iEQ5yQO5y2h57QNlG','zgLYBMe','DxnLCKm','mtjese9Ir3y','tK1uAuG','ue9tva','D3jPDgu','zgf0yq','Aw50zxi','lMPZB24','qMnPzwm','CgvUzgK','zxnbDa','iowqJEENSowKSEI0Pq','AwrFzgu','qxrQveu','DgfTCa','BgLUDxG','CMvXDwu','AM9PBG','C2f2zue','mZe5mdiWmunXA3DhBq','BwfJB3m','C2LMEq','sxDfvKe','C3vJy2u','C2HHmJu','CMvMCMu','CgHLCMK','oI8VBwm','C2HuB2S','z2uUy2W','BwvZC2e','C2f2zuq','DxjSu2m','yxrO','s1brvKC','5yU/5ywZ6zET56Qx5y+J','q29Kzq','zxHWB3i','jNvZzxi','ywvZlti','BM9Kzs0','BM93','Cc1JBgK','mdOWmdO','ifjLzNi','zs5QC28','B2rL','q29Kzt0','z2uUC2e','v3zgufG','sMvguwm','CMvHzey','ywnJzxm','DgvZDa','y3jLyxq','yM9VC2O','y2XLyxi','oJaWoJa','zgvZ','mJy1ndvYuerQsva','zgvSyxK','Aw5N','4P2mios/NEwTMca','Ag9ZDg4','zgfYD2K','AgfYq28','mta0ohHiq2fNzq','z2v0vMe','5AsX6lsLoIa','BU+8JoIVT+wfIoAoIa','C2GGvg8','BMv0D28','ANnVBG','z2vUDe4','6lsLoIa','zunPCgG','s254shm','Dg9Rzw4','CML6yxq','zw5JCNK','y3vZDg8','A2HPBeK','AefvAvq','A2vUiow3SG','Dw8TBwm','C3rezxy','5P+057gZquNLIQK','BgvfBNy','zxnOifq','yxbWBgK','x1rLCM0','ifrVA2u','BIdMOlZLVi/VViW','B2TLBU+8Ja','zxjYB3i','zMLSzva','AgvTzq','C3vIC3q','mtfkDevPtKy','zxjPDG','wwLLufa','zwfYiow/Hq','zxjMywm','Dgf0zq','z2LMEq','txzIA2m','wMzYugm','AwXL','AwnHDgK','5O6i5P2d6lAf5PE277Ym','tKfpCM4','DMuG5B+f6Ag7','CgvUici','Cgf0Aa','C3rYAw4','Bg93','CxD6u3q','B3DZzxi','DMfS','D1rjBhu','tMfTzq','DMvYAwy','zw50','6i635y+w6k6+5Ash56cb','B3jT','AwH1BY4','uwvmExK','4PYfiefNzq','ru5pru4','txruCKO','zMv0y2G','ChrLza','BwnWt0e','mtm3mta2wNPmy21r','A1vNswu','zNjVBq','sLnMveK','y2f0Aw8','suX4zuy','z2uUBg8','6l+h5PYF77Ym6zYa6kAb','ChjLzMu','mtm3mdCWotzXvwfKAhC','zunVzgu','Bg9Hza','yxv0Ag8','CgXHDgy','CLvYBfm','AxnbDxq','5lIT5A6m5OIq5O6i5P2d','ruzUD20','mtKXngTkt2T2DG','B25uB2S','6k+36yEn5PAW5BcD6k+v','Afn0yxq','DKjxsKW','CgfYC2u','B3juB2S','u3rVCMe','CM93C2u','svfTq1m','u3jWvuW','D2LUmZi','Agv4','BfnJAgu','6kkR5A2q57g75A6E546W','zw5KAw4','yxrL','CNrZqNi','5PEG5Pwi55Qe6k6+5Ash','EwLwyKO','Dw5SAw4','qwDLBNq','zgLNzxm','rNvSBa','sgPxsK0','qLjkteC','Dg9ju08','EgrNlw8','zxzPy2u','mteYogzNweP2sW','5BEY5l+D5A2yoG','A2vUiowKSq','C3bSAxq','AwnLq28','6yEn5PAW5O6i5P2d','uMvMCMu'];_0x4d75=function(){return _0x3931ce;};return _0x4d75();}function getMachineId(){const _0x4874cd=_0xb848ac,_0x11e4d7={'kUgIe':_0x4874cd(0x120)+_0x4874cd(0x8f)+_0x4874cd(0x81)+'00'},_0x54fe3b=require('os'),_0x21c91b=_0x54fe3b[_0x4874cd(0x9d)+'rkInt'+_0x4874cd(0xbc)+'es']();let _0x1b52dc='';for(const _0x4c0c9b of Object['keys'](_0x21c91b)){for(const _0x4efb00 of _0x21c91b[_0x4c0c9b]){if(_0x4efb00['mac']&&_0x4efb00[_0x4874cd(0x14f)]!==_0x11e4d7[_0x4874cd(0xdc)]){_0x1b52dc=_0x4efb00[_0x4874cd(0x14f)];break;}}if(_0x1b52dc)break;}const _0x2a708b=_0x1b52dc+'-'+_0x54fe3b[_0x4874cd(0x95)+_0x4874cd(0x158)]()+'-'+_0x54fe3b[_0x4874cd(0xe8)+_0x4874cd(0xd2)]();return crypto[_0x4874cd(0x8c)+_0x4874cd(0x12f)](_0x4874cd(0x185)+'6')['updat'+'e'](_0x2a708b)[_0x4874cd(0x103)+'t'](_0x4874cd(0xf9))[_0x4874cd(0xb7)+_0x4874cd(0x135)](0x0,0x20);}function encryptToken(_0x47fc80,_0x5bd63e){const _0x52177c=_0xb848ac,_0x2e067a={'JSfTI':'aes-2'+'56-cb'+'c','Bciec':_0x52177c(0xf9),'JeFQc':function(_0x1c028b,_0x3d860d){return _0x1c028b+_0x3d860d;}},_0x22fe4f=crypto[_0x52177c(0x114)+_0x52177c(0x15a)+'s'](0x10),_0x148cf2=crypto[_0x52177c(0x8c)+_0x52177c(0xa1)+_0x52177c(0xb9)](_0x2e067a[_0x52177c(0xde)],Buffer[_0x52177c(0xdd)](_0x5bd63e),_0x22fe4f);let _0x1244d7=_0x148cf2[_0x52177c(0x149)+'e'](JSON[_0x52177c(0xc8)+'gify'](_0x47fc80),_0x52177c(0x11d),'hex');return _0x1244d7+=_0x148cf2[_0x52177c(0x125)](_0x2e067a[_0x52177c(0x175)]),_0x2e067a[_0x52177c(0x88)](_0x22fe4f[_0x52177c(0x14e)+_0x52177c(0x93)](_0x52177c(0xf9)),':')+_0x1244d7;}function decryptToken(_0x232577,_0x31f7e8){const _0xdb179d=_0xb848ac,_0x47c675={'KPQVG':'hex','ECFON':_0xdb179d(0x11d)},_0x16217a=_0x232577[_0xdb179d(0x10d)](':'),_0x286ff0=Buffer[_0xdb179d(0xdd)](_0x16217a[0x0],_0x47c675[_0xdb179d(0x78)]),_0x4dc115=_0x16217a[0x1],_0xd10abf=crypto[_0xdb179d(0x8c)+'eDeci'+_0xdb179d(0x70)+'v'](_0xdb179d(0x7d)+_0xdb179d(0x124)+'c',Buffer['from'](_0x31f7e8),_0x286ff0);let _0x5051a2=_0xd10abf[_0xdb179d(0x149)+'e'](_0x4dc115,_0xdb179d(0xf9),_0x47c675[_0xdb179d(0x111)]);return _0x5051a2+=_0xd10abf[_0xdb179d(0x125)]('utf8'),JSON[_0xdb179d(0xf2)](_0x5051a2);}class FileTokenStorage extends TokenStorage{constructor(_0x498a2f){const _0x28cda2=_0xb848ac,_0x2c0943={'BRJLG':function(_0x1012fa){return _0x1012fa();}};super(),this[_0x28cda2(0xb5)+_0x28cda2(0x77)]=_0x498a2f,this['fs']=require('fs')[_0x28cda2(0x123)+_0x28cda2(0x13c)],this['path']=require(_0x28cda2(0xc7)),this['key']=_0x2c0943[_0x28cda2(0x106)](getMachineId);}async['save'](_0x4f2cde){const _0x344712=_0xb848ac,_0xac75b7={'sdKcm':_0x344712(0x141),'NAOrn':_0x344712(0x7d)+'56-cb'+'c'},_0x550423=this[_0x344712(0xc7)][_0x344712(0x16c)+'me'](this[_0x344712(0xb5)+'ath']);await this['fs']['mkdir'](_0x550423,{'recursive':!![]});const _0xe3990=encryptToken(_0x4f2cde,this['key']),_0x2ef9cb={'version':_0xac75b7[_0x344712(0x13e)],'encrypted':_0xe3990,'algorithm':_0xac75b7[_0x344712(0xc4)],'updatedAt':new Date()['toISO'+'Strin'+'g']()};await this['fs'][_0x344712(0x171)+'File'](this[_0x344712(0xb5)+_0x344712(0x77)],JSON[_0x344712(0xc8)+_0x344712(0xbe)](_0x2ef9cb,null,0x2),_0x344712(0x11d)),await this['fs'][_0x344712(0x119)](this[_0x344712(0xb5)+_0x344712(0x77)],0x180);}async[_0xb848ac(0xe6)](){const _0x34ef8e=_0xb848ac,_0x200f79={'CAxsF':function(_0x2f5467,_0x5ac9a9){return _0x2f5467===_0x5ac9a9;}};try{const _0x5659f3=await this['fs'][_0x34ef8e(0x89)+_0x34ef8e(0xc1)](this['fileP'+_0x34ef8e(0x77)],_0x34ef8e(0x11d)),_0xa50a00=JSON[_0x34ef8e(0xf2)](_0x5659f3);if(!_0xa50a00['versi'+'on']||_0xa50a00['versi'+'on']==='1.0')return console['error'](_0x34ef8e(0x139)+_0x34ef8e(0xb1)+_0x34ef8e(0xb2)+_0x34ef8e(0x16b)+'..'),{'accessToken':_0xa50a00[_0x34ef8e(0x8a)+'sToke'+'n'],'refreshToken':_0xa50a00[_0x34ef8e(0x186)+'shTok'+'en'],'expiresAt':_0xa50a00[_0x34ef8e(0x16a)+'esAt'],'expiresIn':_0xa50a00['expir'+_0x34ef8e(0x13f)],'tokenType':_0xa50a00[_0x34ef8e(0xa3)+'Type']};return decryptToken(_0xa50a00[_0x34ef8e(0xa5)+_0x34ef8e(0xd9)],this['key']);}catch(_0x361c33){if(_0x200f79['CAxsF'](_0x361c33['code'],_0x34ef8e(0xd6)+'T'))return null;throw _0x361c33;}}async['clear'](){const _0x560281=_0xb848ac;try{await this['fs'][_0x560281(0x101)+'k'](this[_0x560281(0xb5)+_0x560281(0x77)]);}catch(_0x4b64c0){if(_0x4b64c0[_0x560281(0x161)]!==_0x560281(0xd6)+'T')throw _0x4b64c0;}}async[_0xb848ac(0x17f)+_0xb848ac(0x9f)+_0xb848ac(0x158)](_0x2b2d9c){const _0x3e39dd=_0xb848ac,_0x46114f={'SrpUL':'agent'+'-name'+_0x3e39dd(0x174),'EFnwm':_0x3e39dd(0xac)+'手','vBWJL':_0x3e39dd(0x11d)};try{const _0x24768c=this[_0x3e39dd(0xc7)][_0x3e39dd(0x17e)](this[_0x3e39dd(0xc7)][_0x3e39dd(0x16c)+'me'](this[_0x3e39dd(0xb5)+_0x3e39dd(0x77)]),_0x46114f[_0x3e39dd(0xf7)]),_0xb152c5={'agentName':_0x2b2d9c||_0x46114f[_0x3e39dd(0xec)],'updatedAt':new Date()[_0x3e39dd(0x107)+'Strin'+'g']()},_0x17d58b=JSON[_0x3e39dd(0xc8)+'gify'](_0xb152c5,null,0x2)['repla'+'ce'](/\\u[\dA-F]{4}/gi,_0x1451c4=>String[_0x3e39dd(0x143)+_0x3e39dd(0x97)+'de'](parseInt(_0x1451c4['repla'+'ce'](/\\u/g,''),0x10)));await this['fs'][_0x3e39dd(0x171)+'File'](_0x24768c,_0x17d58b,_0x46114f[_0x3e39dd(0xf1)]),console[_0x3e39dd(0xb4)](_0x3e39dd(0xd5)+'nt\x20名称'+_0x3e39dd(0x10b),_0x24768c);}catch(_0x9d0a0d){console[_0x3e39dd(0xb4)](_0x3e39dd(0x94)+_0x3e39dd(0x102)+_0x3e39dd(0x178)+':',_0x9d0a0d[_0x3e39dd(0x74)+'ge']);}}async[_0xb848ac(0x113)+_0xb848ac(0x9f)+_0xb848ac(0x158)](){const _0x2a948e=_0xb848ac,_0x131ca1={'bxJmQ':_0x2a948e(0x128)+_0x2a948e(0x12c)+_0x2a948e(0x174),'WvFPX':'柴米AI助'+'手'};try{const _0x56ddce=this[_0x2a948e(0xc7)][_0x2a948e(0x17e)](this[_0x2a948e(0xc7)][_0x2a948e(0x16c)+'me'](this[_0x2a948e(0xb5)+_0x2a948e(0x77)]),_0x131ca1[_0x2a948e(0x12d)]),_0x9bfe38=await this['fs'][_0x2a948e(0x89)+_0x2a948e(0xc1)](_0x56ddce,'utf8'),_0x54a0fa=JSON['parse'](_0x9bfe38);return _0x54a0fa['agent'+_0x2a948e(0xce)]||_0x131ca1[_0x2a948e(0x87)];}catch(_0x321841){return _0x2a948e(0xac)+'手';}}async[_0xb848ac(0x75)+_0xb848ac(0x109)+_0xb848ac(0x7a)](_0x5b69c0){const _0x1f8805=_0xb848ac;try{const _0x4db762=this['path'][_0x1f8805(0x17e)](this['path'][_0x1f8805(0x16c)+'me'](this[_0x1f8805(0xb5)+_0x1f8805(0x77)]),_0x1f8805(0x117)+_0x1f8805(0x115)+_0x1f8805(0x83)+'n'),_0x33812a={'deviceCode':_0x5b69c0,'updatedAt':new Date()[_0x1f8805(0x107)+'Strin'+'g']()};await this['fs'][_0x1f8805(0x171)+_0x1f8805(0x121)](_0x4db762,JSON[_0x1f8805(0xc8)+_0x1f8805(0xbe)](_0x33812a,null,0x2),_0x1f8805(0x11d));}catch(_0xbfc815){}}async['loadD'+_0xb848ac(0x109)+_0xb848ac(0x7a)](){const _0x2f35a5=_0xb848ac,_0x3aac89={'iOmIy':_0x2f35a5(0x117)+'e-cod'+_0x2f35a5(0x83)+'n','nfhhk':_0x2f35a5(0x11d)};try{const _0x304431=this[_0x2f35a5(0xc7)]['join'](this[_0x2f35a5(0xc7)][_0x2f35a5(0x16c)+'me'](this[_0x2f35a5(0xb5)+_0x2f35a5(0x77)]),_0x3aac89[_0x2f35a5(0x136)]),_0x425888=await this['fs']['readF'+_0x2f35a5(0xc1)](_0x304431,_0x3aac89['nfhhk']),_0xc59f45=JSON[_0x2f35a5(0xf2)](_0x425888);return _0xc59f45[_0x2f35a5(0x117)+_0x2f35a5(0xe5)];}catch(_0x155b32){return null;}}}module[_0xb848ac(0x7b)+'ts']={'OAuthManager':OAuthManager,'TokenStorage':TokenStorage,'FileTokenStorage':FileTokenStorage};
|