weflow-cli 1.5.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/ARCHITECTURE.md +105 -0
  2. package/CHANGELOG.md +121 -0
  3. package/CONTRIBUTING.md +45 -0
  4. package/LICENSE +21 -21
  5. package/OPERATIONS.md +272 -0
  6. package/README.en.md +281 -0
  7. package/README.md +334 -149
  8. package/SECURITY.md +47 -0
  9. package/bin/weflow-cli.ts +4050 -581
  10. package/dist/bin/weflow-cli.js +4310 -588
  11. package/dist/bin/weflow-cli.js.map +1 -1
  12. package/dist/mcp-server/index.js +178 -236
  13. package/dist/mcp-server/index.js.map +1 -1
  14. package/dist/src/core/dbPathService.d.ts +15 -1
  15. package/dist/src/core/dbPathService.d.ts.map +1 -1
  16. package/dist/src/core/dbPathService.js +177 -19
  17. package/dist/src/core/dbPathService.js.map +1 -1
  18. package/dist/src/core/keyService.d.ts +8 -0
  19. package/dist/src/core/keyService.d.ts.map +1 -1
  20. package/dist/src/core/keyService.js +127 -22
  21. package/dist/src/core/keyService.js.map +1 -1
  22. package/dist/src/core/ntCore.d.ts +59 -1
  23. package/dist/src/core/ntCore.d.ts.map +1 -1
  24. package/dist/src/core/ntCore.js +201 -65
  25. package/dist/src/core/ntCore.js.map +1 -1
  26. package/dist/src/core/sqlcipherCore.d.ts.map +1 -1
  27. package/dist/src/core/sqlcipherCore.js +18 -1
  28. package/dist/src/core/sqlcipherCore.js.map +1 -1
  29. package/dist/src/core/wcdbCore.d.ts.map +1 -1
  30. package/dist/src/core/wcdbCore.js +3 -6
  31. package/dist/src/core/wcdbCore.js.map +1 -1
  32. package/dist/src/services/assistantDaemon.d.ts +19 -0
  33. package/dist/src/services/assistantDaemon.d.ts.map +1 -0
  34. package/dist/src/services/assistantDaemon.js +117 -0
  35. package/dist/src/services/assistantDaemon.js.map +1 -0
  36. package/dist/src/services/assistantMemory.d.ts +36 -0
  37. package/dist/src/services/assistantMemory.d.ts.map +1 -0
  38. package/dist/src/services/assistantMemory.js +182 -0
  39. package/dist/src/services/assistantMemory.js.map +1 -0
  40. package/dist/src/services/assistantPrivacy.d.ts +25 -0
  41. package/dist/src/services/assistantPrivacy.d.ts.map +1 -0
  42. package/dist/src/services/assistantPrivacy.js +77 -0
  43. package/dist/src/services/assistantPrivacy.js.map +1 -0
  44. package/dist/src/services/assistantRouting.d.ts +18 -0
  45. package/dist/src/services/assistantRouting.d.ts.map +1 -0
  46. package/dist/src/services/assistantRouting.js +68 -0
  47. package/dist/src/services/assistantRouting.js.map +1 -0
  48. package/dist/src/services/assistantService.d.ts +37 -0
  49. package/dist/src/services/assistantService.d.ts.map +1 -0
  50. package/dist/src/services/assistantService.js +284 -0
  51. package/dist/src/services/assistantService.js.map +1 -0
  52. package/dist/src/services/assistantTools.d.ts +24 -0
  53. package/dist/src/services/assistantTools.d.ts.map +1 -0
  54. package/dist/src/services/assistantTools.js +582 -0
  55. package/dist/src/services/assistantTools.js.map +1 -0
  56. package/dist/src/services/chatService.d.ts +44 -0
  57. package/dist/src/services/chatService.d.ts.map +1 -1
  58. package/dist/src/services/chatService.js +105 -4
  59. package/dist/src/services/chatService.js.map +1 -1
  60. package/dist/src/services/configService.d.ts +55 -0
  61. package/dist/src/services/configService.d.ts.map +1 -1
  62. package/dist/src/services/configService.js +147 -6
  63. package/dist/src/services/configService.js.map +1 -1
  64. package/dist/src/services/evidenceService.d.ts +30 -0
  65. package/dist/src/services/evidenceService.d.ts.map +1 -0
  66. package/dist/src/services/evidenceService.js +98 -0
  67. package/dist/src/services/evidenceService.js.map +1 -0
  68. package/dist/src/services/exportService.d.ts +13 -20
  69. package/dist/src/services/exportService.d.ts.map +1 -1
  70. package/dist/src/services/exportService.js +113 -47
  71. package/dist/src/services/exportService.js.map +1 -1
  72. package/dist/src/services/initKeyService.d.ts +19 -0
  73. package/dist/src/services/initKeyService.d.ts.map +1 -0
  74. package/dist/src/services/initKeyService.js +80 -0
  75. package/dist/src/services/initKeyService.js.map +1 -0
  76. package/dist/src/services/messageContract.d.ts +23 -0
  77. package/dist/src/services/messageContract.d.ts.map +1 -0
  78. package/dist/src/services/messageContract.js +49 -0
  79. package/dist/src/services/messageContract.js.map +1 -0
  80. package/dist/src/services/messageQuery.d.ts +7 -0
  81. package/dist/src/services/messageQuery.d.ts.map +1 -0
  82. package/dist/src/services/messageQuery.js +30 -0
  83. package/dist/src/services/messageQuery.js.map +1 -0
  84. package/dist/src/services/wechat-formatter.js +14 -14
  85. package/dist/src/services/wechatMessageService.d.ts.map +1 -1
  86. package/dist/src/services/wechatMessageService.js +31 -3
  87. package/dist/src/services/wechatMessageService.js.map +1 -1
  88. package/dist/src/services/whitelistService.d.ts +52 -4
  89. package/dist/src/services/whitelistService.d.ts.map +1 -1
  90. package/dist/src/services/whitelistService.js +183 -17
  91. package/dist/src/services/whitelistService.js.map +1 -1
  92. package/dist/src/types.d.ts +20 -0
  93. package/dist/src/types.d.ts.map +1 -1
  94. package/dist/src/utils/dateRange.d.ts +15 -0
  95. package/dist/src/utils/dateRange.d.ts.map +1 -0
  96. package/dist/src/utils/dateRange.js +48 -0
  97. package/dist/src/utils/dateRange.js.map +1 -0
  98. package/dist/src/utils/mcpSecurity.d.ts +5 -0
  99. package/dist/src/utils/mcpSecurity.d.ts.map +1 -0
  100. package/dist/src/utils/mcpSecurity.js +39 -0
  101. package/dist/src/utils/mcpSecurity.js.map +1 -0
  102. package/dist/src/utils/packageRoot.d.ts +2 -0
  103. package/dist/src/utils/packageRoot.d.ts.map +1 -0
  104. package/dist/src/utils/packageRoot.js +16 -0
  105. package/dist/src/utils/packageRoot.js.map +1 -0
  106. package/dist/src/utils/python.d.ts +2 -0
  107. package/dist/src/utils/python.d.ts.map +1 -0
  108. package/dist/src/utils/python.js +72 -0
  109. package/dist/src/utils/python.js.map +1 -0
  110. package/dist/src/utils/pythonProcessEnv.d.ts +3 -0
  111. package/dist/src/utils/pythonProcessEnv.d.ts.map +1 -0
  112. package/dist/src/utils/pythonProcessEnv.js +46 -0
  113. package/dist/src/utils/pythonProcessEnv.js.map +1 -0
  114. package/dist/src/utils/talkerUtils.d.ts +4 -1
  115. package/dist/src/utils/talkerUtils.d.ts.map +1 -1
  116. package/dist/src/utils/talkerUtils.js +9 -9
  117. package/dist/src/utils/talkerUtils.js.map +1 -1
  118. package/dist/src/utils/wechatEmoji.d.ts +5 -0
  119. package/dist/src/utils/wechatEmoji.d.ts.map +1 -0
  120. package/dist/src/utils/wechatEmoji.js +35 -0
  121. package/dist/src/utils/wechatEmoji.js.map +1 -0
  122. package/docs/AI_INTERFACE.md +189 -0
  123. package/docs/BRANCHES.md +87 -0
  124. package/docs/DATA_CONTRACT.md +74 -0
  125. package/docs/DECISIONS.md +270 -0
  126. package/docs/DEEPSEEK_V4_FLASH/346/226/275/345/267/245/346/226/207/346/241/243.md +234 -0
  127. package/docs/EVIDENCE_GUIDE.md +96 -0
  128. package/docs/MCP.md +95 -0
  129. package/docs/PARTNERS.md +41 -0
  130. package/docs/PROJECT_STATE.md +96 -0
  131. package/docs/RELEASING.md +124 -0
  132. package/docs/ROADMAP.md +191 -0
  133. package/docs/SETUP.md +103 -0
  134. package/docs/images/weflow-architecture-gpt-image-2.png +0 -0
  135. package/docs/images/weflow-architecture.png +0 -0
  136. package/docs/images/weflow-architecture.svg +65 -0
  137. package/mcp-server/index.ts +169 -269
  138. package/package.json +81 -72
  139. package/requirements-3x.txt +4 -0
  140. package/requirements-voice.txt +15 -0
  141. package/requirements.txt +9 -0
  142. package/resources/js/marked.min.js +69 -0
  143. package/resources/wechat-emoji/666.png +0 -0
  144. package/resources/wechat-emoji/Awesome.png +0 -0
  145. package/resources/wechat-emoji/Concerned.png +0 -0
  146. package/resources/wechat-emoji/Cry.png +0 -0
  147. package/resources/wechat-emoji/Emm.png +0 -0
  148. package/resources/wechat-emoji/Facepalm.png +0 -0
  149. package/resources/wechat-emoji/Grin.png +0 -0
  150. package/resources/wechat-emoji/OK.png +0 -0
  151. package/resources/wechat-emoji/Respect.png +0 -0
  152. package/resources/wechat-emoji/Sick.png +0 -0
  153. package/resources/wechat-emoji/Sleep.png +0 -0
  154. package/resources/wechat-emoji/Smile.png +0 -0
  155. package/resources/wechat-emoji//344/272/262/344/272/262.png +0 -0
  156. package/resources/wechat-emoji//344/276/277/344/276/277.png +0 -0
  157. package/resources/wechat-emoji//345/201/267/347/254/221.png +0 -0
  158. package/resources/wechat-emoji//345/202/262/346/205/242.png +0 -0
  159. package/resources/wechat-emoji//345/206/215/350/247/201.png +0 -0
  160. package/resources/wechat-emoji//345/207/213/350/260/242.png +0 -0
  161. package/resources/wechat-emoji//345/212/240/346/262/271.png +0 -0
  162. package/resources/wechat-emoji//345/213/276/345/274/225.png +0 -0
  163. package/resources/wechat-emoji//345/217/221/345/221/206.png +0 -0
  164. package/resources/wechat-emoji//345/217/221/346/200/222.png +0 -0
  165. package/resources/wechat-emoji//345/217/221/346/212/226.png +0 -0
  166. package/resources/wechat-emoji//345/217/257/346/200/234.png +0 -0
  167. package/resources/wechat-emoji//345/217/263/345/223/274/345/223/274.png +0 -0
  168. package/resources/wechat-emoji//345/217/271/346/260/224.png +0 -0
  169. package/resources/wechat-emoji//345/220/203/347/223/234.png +0 -0
  170. package/resources/wechat-emoji//345/220/210/345/215/201.png +0 -0
  171. package/resources/wechat-emoji//345/220/220.png +0 -0
  172. package/resources/wechat-emoji//345/221/262/347/211/231.png +0 -0
  173. package/resources/wechat-emoji//345/222/222/351/252/202.png +0 -0
  174. package/resources/wechat-emoji//345/222/226/345/225/241.png +0 -0
  175. package/resources/wechat-emoji//345/223/207.png +0 -0
  176. package/resources/wechat-emoji//345/225/244/351/205/222.png +0 -0
  177. package/resources/wechat-emoji//345/230/230.png +0 -0
  178. package/resources/wechat-emoji//345/230/264/345/224/207.png +0 -0
  179. package/resources/wechat-emoji//345/230/277/345/223/210.png +0 -0
  180. package/resources/wechat-emoji//345/233/247.png +0 -0
  181. package/resources/wechat-emoji//345/233/260.png +0 -0
  182. package/resources/wechat-emoji//345/235/217/347/254/221.png +0 -0
  183. package/resources/wechat-emoji//345/244/247/345/223/255.png +0 -0
  184. package/resources/wechat-emoji//345/244/251/345/225/212.png +0 -0
  185. package/resources/wechat-emoji//345/244/252/351/230/263.png +0 -0
  186. package/resources/wechat-emoji//345/244/261/346/234/233.png +0 -0
  187. package/resources/wechat-emoji//345/245/270/347/254/221.png +0 -0
  188. package/resources/wechat-emoji//345/245/275/347/232/204.png +0 -0
  189. package/resources/wechat-emoji//345/247/224/345/261/210.png +0 -0
  190. package/resources/wechat-emoji//345/256/263/347/276/236.png +0 -0
  191. package/resources/wechat-emoji//345/260/264/345/260/254.png +0 -0
  192. package/resources/wechat-emoji//345/272/206/347/245/235.png +0 -0
  193. package/resources/wechat-emoji//345/274/261.png +0 -0
  194. package/resources/wechat-emoji//345/274/272.png +0 -0
  195. package/resources/wechat-emoji//345/276/227/346/204/217.png +0 -0
  196. package/resources/wechat-emoji//345/276/256/347/254/221.png +0 -0
  197. package/resources/wechat-emoji//345/277/203/347/242/216.png +0 -0
  198. package/resources/wechat-emoji//345/277/253/345/223/255/344/272/206.png +0 -0
  199. package/resources/wechat-emoji//346/201/220/346/203/247.png +0 -0
  200. package/resources/wechat-emoji//346/202/240/351/227/262.png +0 -0
  201. package/resources/wechat-emoji//346/203/212/346/201/220.png +0 -0
  202. package/resources/wechat-emoji//346/203/212/350/256/266.png +0 -0
  203. package/resources/wechat-emoji//346/204/211/345/277/253.png +0 -0
  204. package/resources/wechat-emoji//346/206/250/347/254/221.png +0 -0
  205. package/resources/wechat-emoji//346/211/223/350/204/270.png +0 -0
  206. package/resources/wechat-emoji//346/212/223/347/213/202.png +0 -0
  207. package/resources/wechat-emoji//346/212/240/351/274/273.png +0 -0
  208. package/resources/wechat-emoji//346/212/261/346/213/263.png +0 -0
  209. package/resources/wechat-emoji//346/213/245/346/212/261.png +0 -0
  210. package/resources/wechat-emoji//346/213/263/345/244/264.png +0 -0
  211. package/resources/wechat-emoji//346/215/202/350/204/270.png +0 -0
  212. package/resources/wechat-emoji//346/217/241/346/211/213.png +0 -0
  213. package/resources/wechat-emoji//346/222/207/345/230/264.png +0 -0
  214. package/resources/wechat-emoji//346/223/246/346/261/227.png +0 -0
  215. package/resources/wechat-emoji//346/225/262/346/211/223.png +0 -0
  216. package/resources/wechat-emoji//346/227/240/350/257/255.png +0 -0
  217. package/resources/wechat-emoji//346/227/272/346/237/264.png +0 -0
  218. package/resources/wechat-emoji//346/231/225.png +0 -0
  219. package/resources/wechat-emoji//346/234/210/344/272/256.png +0 -0
  220. package/resources/wechat-emoji//346/234/272/346/231/272.png +0 -0
  221. package/resources/wechat-emoji//346/261/227.png +0 -0
  222. package/resources/wechat-emoji//346/265/201/346/263/252.png +0 -0
  223. package/resources/wechat-emoji//347/202/270/345/274/271.png +0 -0
  224. package/resources/wechat-emoji//347/203/237/350/212/261.png +0 -0
  225. package/resources/wechat-emoji//347/210/206/347/253/271.png +0 -0
  226. package/resources/wechat-emoji//347/210/261/345/277/203.png +0 -0
  227. package/resources/wechat-emoji//347/214/252/345/244/264.png +0 -0
  228. package/resources/wechat-emoji//347/216/253/347/221/260.png +0 -0
  229. package/resources/wechat-emoji//347/224/237/347/227/205.png +0 -0
  230. package/resources/wechat-emoji//347/226/221/351/227/256.png +0 -0
  231. package/resources/wechat-emoji//347/231/274.png +0 -0
  232. package/resources/wechat-emoji//347/231/275/347/234/274.png +0 -0
  233. package/resources/wechat-emoji//347/232/261/347/234/211.png +0 -0
  234. package/resources/wechat-emoji//347/235/241.png +0 -0
  235. package/resources/wechat-emoji//347/240/264/346/266/225/344/270/272/347/254/221.png +0 -0
  236. package/resources/wechat-emoji//347/244/274/347/211/251.png +0 -0
  237. package/resources/wechat-emoji//347/244/276/344/274/232/347/244/276/344/274/232.png +0 -0
  238. package/resources/wechat-emoji//347/246/217.png +0 -0
  239. package/resources/wechat-emoji//347/254/221/350/204/270.png +0 -0
  240. package/resources/wechat-emoji//347/272/242/345/214/205.png +0 -0
  241. package/resources/wechat-emoji//347/277/273/347/231/275/347/234/274.png +0 -0
  242. package/resources/wechat-emoji//350/200/266.png +0 -0
  243. package/resources/wechat-emoji//350/203/234/345/210/251.png +0 -0
  244. package/resources/wechat-emoji//350/204/270/347/272/242.png +0 -0
  245. package/resources/wechat-emoji//350/211/262.png +0 -0
  246. package/resources/wechat-emoji//350/213/246/346/266/251.png +0 -0
  247. package/resources/wechat-emoji//350/217/234/345/210/200.png +0 -0
  248. package/resources/wechat-emoji//350/233/213/347/263/225.png +0 -0
  249. package/resources/wechat-emoji//350/241/260.png +0 -0
  250. package/resources/wechat-emoji//350/243/202/345/274/200.png +0 -0
  251. package/resources/wechat-emoji//350/256/251/346/210/221/347/234/213/347/234/213.png +0 -0
  252. package/resources/wechat-emoji//350/260/203/347/232/256.png +0 -0
  253. package/resources/wechat-emoji//350/267/263/350/267/263.png +0 -0
  254. package/resources/wechat-emoji//350/275/254/345/234/210.png +0 -0
  255. package/resources/wechat-emoji//351/204/231/350/247/206.png +0 -0
  256. package/resources/wechat-emoji//351/227/255/345/230/264.png +0 -0
  257. package/resources/wechat-emoji//351/230/264/351/231/251.png +0 -0
  258. package/resources/wechat-emoji//351/232/276/350/277/207.png +0 -0
  259. package/resources/wechat-emoji//351/252/267/351/253/205.png +0 -0
  260. package/resources/wechat-emoji//351/274/223/346/216/214.png +0 -0
  261. package/scripts/_batch_link_sources.py +73 -73
  262. package/scripts/_utils.py +29 -0
  263. package/scripts/annual_report.py +796 -796
  264. package/scripts/auto_tag.py +128 -128
  265. package/scripts/biz_daily.py +210 -53
  266. package/scripts/chat_report.py +10 -0
  267. package/scripts/chat_stats.py +702 -702
  268. package/scripts/classify_daily.py +17 -11
  269. package/scripts/create_reading_notes.py +370 -370
  270. package/scripts/daily_stats.py +132 -0
  271. package/scripts/enrich_backlinks.py +163 -163
  272. package/scripts/export_chat_html.py +1704 -107
  273. package/scripts/extract_todos.py +445 -404
  274. package/scripts/fav_server.py +119 -12
  275. package/scripts/fix_topics.py +111 -111
  276. package/scripts/generate_ai_report.py +1 -1
  277. package/scripts/generate_html.py +597 -277
  278. package/scripts/inspection_records.py +354 -0
  279. package/scripts/mcp_bridge.py +398 -398
  280. package/scripts/nt_decrypt.py +702 -48
  281. package/scripts/pipeline.py +27 -19
  282. package/scripts/promote_all.py +312 -310
  283. package/scripts/promote_ideas.py +299 -297
  284. package/scripts/rag_chat.py +194 -191
  285. package/scripts/semantic_search.py +435 -431
  286. package/scripts/sync_fav.py +201 -146
  287. package/scripts/sync_weread.py +192 -192
  288. package/scripts/vault_rag.py +140 -139
  289. package/scripts/vault_search.py +141 -141
  290. package/scripts/wechat_emoji.py +132 -0
  291. package/scripts/wechat_emoticon.py +433 -0
  292. package/scripts/wechat_image.py +258 -0
  293. package/scripts/wechat_voice.py +327 -0
  294. package/src/core/dbPathService.ts +163 -18
  295. package/src/core/keyService.ts +137 -25
  296. package/src/core/ntCore.ts +215 -62
  297. package/src/core/sqlcipherCore.ts +17 -1
  298. package/src/core/wcdbCore.ts +3 -7
  299. package/src/services/assistantDaemon.ts +111 -0
  300. package/src/services/assistantMemory.ts +193 -0
  301. package/src/services/assistantPrivacy.ts +87 -0
  302. package/src/services/assistantRouting.ts +92 -0
  303. package/src/services/assistantService.ts +295 -0
  304. package/src/services/assistantTools.ts +549 -0
  305. package/src/services/chatService.ts +133 -4
  306. package/src/services/configService.ts +194 -6
  307. package/src/services/evidenceService.ts +129 -0
  308. package/src/services/exportService.ts +113 -48
  309. package/src/services/initKeyService.ts +83 -0
  310. package/src/services/messageContract.ts +77 -0
  311. package/src/services/messageQuery.ts +38 -0
  312. package/src/services/wechat-formatter.ts +348 -348
  313. package/src/services/wechatMessageService.ts +25 -3
  314. package/src/services/wereadService.ts +308 -308
  315. package/src/services/whitelistService.ts +209 -22
  316. package/src/types.ts +20 -0
  317. package/src/utils/dateRange.ts +58 -0
  318. package/src/utils/mcpSecurity.ts +39 -0
  319. package/src/utils/packageRoot.ts +14 -0
  320. package/src/utils/python.ts +73 -0
  321. package/src/utils/pythonProcessEnv.ts +45 -0
  322. package/src/utils/talkerUtils.ts +14 -2
  323. package/dist/src/utils/errors.d.ts +0 -25
  324. package/dist/src/utils/errors.d.ts.map +0 -1
  325. package/dist/src/utils/errors.js +0 -43
  326. package/dist/src/utils/errors.js.map +0 -1
  327. package/dist/src/utils/pythonRunner.d.ts +0 -27
  328. package/dist/src/utils/pythonRunner.d.ts.map +0 -1
  329. package/dist/src/utils/pythonRunner.js +0 -62
  330. package/dist/src/utils/pythonRunner.js.map +0 -1
  331. package/src/utils/errors.ts +0 -42
  332. package/src/utils/pythonRunner.ts +0 -81
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageContract.d.ts","sourceRoot":"","sources":["../../../src/services/messageContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,MAAM,iBAAiB,GACzB,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GACvD,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAA;AAgB/D,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,mBAAmB,CAAA;IAC3B,MAAM,EAAE,YAAY,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAA;IAChC,QAAQ,EAAE,KAAK,CAAC,OAAO,GAAG;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,OAAO,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAKvF;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,OAAO,EAAE,EACnB,WAAW,SAA2B,EACtC,QAAQ,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,aAAa,CAAC,GAC3G,qBAAqB,CA2BvB"}
@@ -0,0 +1,49 @@
1
+ const MESSAGE_TYPE_NAMES = {
2
+ 1: 'text',
3
+ 3: 'image',
4
+ 34: 'voice',
5
+ 42: 'card',
6
+ 43: 'video',
7
+ 47: 'emoji',
8
+ 48: 'location',
9
+ 49: 'link',
10
+ 50: 'call',
11
+ 10000: 'system',
12
+ 10002: 'quote',
13
+ };
14
+ export function toWeFlowMessages(messages) {
15
+ return messages.map((message) => ({
16
+ ...message,
17
+ messageType: MESSAGE_TYPE_NAMES[message.localType] || 'other',
18
+ }));
19
+ }
20
+ export function createWeFlowEnvelope(messages, generatedAt = new Date().toISOString(), coverage) {
21
+ let oldestCreateTime;
22
+ let newestCreateTime;
23
+ for (const message of messages) {
24
+ const timestamp = Number(message.createTime);
25
+ if (!Number.isFinite(timestamp))
26
+ continue;
27
+ oldestCreateTime = oldestCreateTime === undefined ? timestamp : Math.min(oldestCreateTime, timestamp);
28
+ newestCreateTime = newestCreateTime === undefined ? timestamp : Math.max(newestCreateTime, timestamp);
29
+ }
30
+ const result = {
31
+ schema: 'weflow-message/v1',
32
+ source: 'weflow-cli',
33
+ generatedAt,
34
+ messages: toWeFlowMessages(messages),
35
+ };
36
+ if (coverage) {
37
+ result.coverage = {
38
+ ...coverage,
39
+ returned: messages.length,
40
+ mayHaveMore: coverage.requestedLimit > 0 && messages.length >= coverage.requestedLimit,
41
+ ...(oldestCreateTime !== undefined ? {
42
+ oldestCreateTime,
43
+ newestCreateTime,
44
+ } : {}),
45
+ };
46
+ }
47
+ return result;
48
+ }
49
+ //# sourceMappingURL=messageContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageContract.js","sourceRoot":"","sources":["../../../src/services/messageContract.ts"],"names":[],"mappings":"AAMA,MAAM,kBAAkB,GAAsC;IAC5D,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,OAAO;CACf,CAAA;AAoBD,MAAM,UAAU,gBAAgB,CAAC,QAAmB;IAClD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAChC,GAAG,OAAO;QACV,WAAW,EAAE,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO;KAC9D,CAAC,CAAC,CAAA;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,QAAmB,EACnB,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACtC,QAA4G;IAE5G,IAAI,gBAAoC,CAAA;IACxC,IAAI,gBAAoC,CAAA;IACxC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAQ;QACzC,gBAAgB,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAA;QACrG,gBAAgB,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAA;IACvG,CAAC;IACD,MAAM,MAAM,GAA0B;QACpC,MAAM,EAAE,mBAAmB;QAC3B,MAAM,EAAE,YAAY;QACpB,WAAW;QACX,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC;KACrC,CAAA;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,QAAQ,GAAG;YAChB,GAAG,QAAQ;YACX,QAAQ,EAAE,QAAQ,CAAC,MAAM;YACzB,WAAW,EAAE,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,cAAc;YACtF,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC;gBACnC,gBAAgB;gBAChB,gBAAgB;aACjB,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAA;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Message } from '../types.js';
2
+ export interface MessageTimeRange {
3
+ from?: number;
4
+ to?: number;
5
+ }
6
+ export declare function collectMessagesInRange(fetchPage: (limit: number, offset: number) => Promise<Message[]>, limit: number, range: MessageTimeRange, pageSize?: number): Promise<Message[]>;
7
+ //# sourceMappingURL=messageQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageQuery.d.ts","sourceRoot":"","sources":["../../../src/services/messageQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,EAChE,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,gBAAgB,EACvB,QAAQ,SAAM,GACb,OAAO,CAAC,OAAO,EAAE,CAAC,CAyBpB"}
@@ -0,0 +1,30 @@
1
+ export async function collectMessagesInRange(fetchPage, limit, range, pageSize = 500) {
2
+ const result = [];
3
+ let offset = 0;
4
+ while (true) {
5
+ const page = await fetchPage(pageSize, offset);
6
+ if (page.length === 0)
7
+ break;
8
+ let oldestTimestamp = Number.POSITIVE_INFINITY;
9
+ for (const message of page) {
10
+ const timestamp = Number(message.createTime);
11
+ if (!Number.isFinite(timestamp))
12
+ continue;
13
+ oldestTimestamp = Math.min(oldestTimestamp, timestamp);
14
+ if (range.from !== undefined && timestamp < range.from)
15
+ continue;
16
+ if (range.to !== undefined && timestamp > range.to)
17
+ continue;
18
+ result.push(message);
19
+ if (limit > 0 && result.length >= limit)
20
+ return result;
21
+ }
22
+ offset += page.length;
23
+ if (page.length < pageSize)
24
+ break;
25
+ if (range.from !== undefined && oldestTimestamp < range.from)
26
+ break;
27
+ }
28
+ return result;
29
+ }
30
+ //# sourceMappingURL=messageQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageQuery.js","sourceRoot":"","sources":["../../../src/services/messageQuery.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,SAAgE,EAChE,KAAa,EACb,KAAuB,EACvB,QAAQ,GAAG,GAAG;IAEd,MAAM,MAAM,GAAc,EAAE,CAAA;IAC5B,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,MAAK;QAE5B,IAAI,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAA;QAC9C,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,SAAQ;YACzC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAA;YACtD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI;gBAAE,SAAQ;YAChE,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,SAAS,GAAG,KAAK,CAAC,EAAE;gBAAE,SAAQ;YAC5D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACpB,IAAI,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK;gBAAE,OAAO,MAAM,CAAA;QACxD,CAAC;QAED,MAAM,IAAI,IAAI,CAAC,MAAM,CAAA;QACrB,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ;YAAE,MAAK;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,eAAe,GAAG,KAAK,CAAC,IAAI;YAAE,MAAK;IACrE,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -228,20 +228,20 @@ function cleanupHTML(html) {
228
228
  return html;
229
229
  }
230
230
  function addBaseStyles(html, fontSize, lineHeight) {
231
- const style = `
232
- <style>
233
- body {
234
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
235
- line-height: ${lineHeight};
236
- color: #333;
237
- background: #fff;
238
- font-size: ${fontSize}px;
239
- margin: 0;
240
- padding: 20px;
241
- }
242
- img { max-width: 100%; height: auto; display: block; margin: 16px auto; border-radius: 8px; }
243
- hr { border: none; height: 1px; background: linear-gradient(to right, transparent, #ddd, transparent); margin: 24px 0; }
244
- </style>
231
+ const style = `
232
+ <style>
233
+ body {
234
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
235
+ line-height: ${lineHeight};
236
+ color: #333;
237
+ background: #fff;
238
+ font-size: ${fontSize}px;
239
+ margin: 0;
240
+ padding: 20px;
241
+ }
242
+ img { max-width: 100%; height: auto; display: block; margin: 16px auto; border-radius: 8px; }
243
+ hr { border: none; height: 1px; background: linear-gradient(to right, transparent, #ddd, transparent); margin: 24px 0; }
244
+ </style>
245
245
  `;
246
246
  return style + html;
247
247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wechatMessageService.d.ts","sourceRoot":"","sources":["../../../src/services/wechatMessageService.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,oBAAoB,EAA0B,MAAM,aAAa,CAAA;AAUnH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,gBAAgB,CAAiD;gBAE7D,MAAM,GAAE,cAAmB;IAajC,UAAU,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBnE,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAkC3C,YAAY,CAAC,cAAc,SAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkChE,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAkD7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBxD,SAAS,CACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GACpC,OAAO,CAAC,OAAO,CAAC;IAwFb,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtF,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,GAAG,IAAI;IAM9D,UAAU,IAAI,OAAO;IAIrB,YAAY,IAAI,MAAM,GAAG,IAAI;IAM7B,OAAO,CAAC,mBAAmB;CAuD5B"}
1
+ {"version":3,"file":"wechatMessageService.d.ts","sourceRoot":"","sources":["../../../src/services/wechatMessageService.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,oBAAoB,EAA0B,MAAM,aAAa,CAAA;AAUnH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,gBAAgB,CAAiD;gBAE7D,MAAM,GAAE,cAAmB;IAyBjC,UAAU,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBnE,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAkC3C,YAAY,CAAC,cAAc,SAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkChE,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAkD7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4BxD,SAAS,CACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GACpC,OAAO,CAAC,OAAO,CAAC;IA0Fb,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtF,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,GAAG,IAAI;IAM9D,UAAU,IAAI,OAAO;IAIrB,YAAY,IAAI,MAAM,GAAG,IAAI;IAM7B,OAAO,CAAC,mBAAmB;CA2D5B"}
@@ -7,6 +7,7 @@ import crypto from 'crypto';
7
7
  import path from 'path';
8
8
  import { WechatClient } from '../core/wechatClient.js';
9
9
  import { configService } from './configService.js';
10
+ import { resolveInboundRouting } from './assistantRouting.js';
10
11
  function sleep(ms) {
11
12
  return new Promise(resolve => setTimeout(resolve, ms));
12
13
  }
@@ -30,6 +31,21 @@ export class WechatMessageService {
30
31
  apiTimeoutMs: config.apiTimeoutMs,
31
32
  token: config.token,
32
33
  });
34
+ // 加载持久化的 context_token, 让一次性 send 命令也能复用历史 token
35
+ if (config.contextTokens && typeof config.contextTokens === 'object') {
36
+ for (const [wxid, token] of Object.entries(config.contextTokens)) {
37
+ if (wxid && token)
38
+ this.contextTokens.set(wxid, token);
39
+ }
40
+ }
41
+ else {
42
+ // 未显式传入时, 从 configService 读取 (覆盖常见的一次性 send 场景)
43
+ const persisted = configService.getContextTokens();
44
+ for (const [wxid, token] of Object.entries(persisted)) {
45
+ if (wxid && token)
46
+ this.contextTokens.set(wxid, token);
47
+ }
48
+ }
33
49
  }
34
50
  // ====== Login ======
35
51
  async startLogin() {
@@ -184,7 +200,10 @@ export class WechatMessageService {
184
200
  },
185
201
  tokenRequired: true,
186
202
  });
187
- return result.ret === 0 && result.errcode === 0;
203
+ // 服务器成功时返回 message_id (不带 ret/errcode); 失败时返回非零 ret/errcode
204
+ const failed = (result.ret != null && result.ret !== 0) ||
205
+ (result.errcode != null && result.errcode !== 0);
206
+ return !failed;
188
207
  }
189
208
  async sendMedia(userId, filePath, mediaType) {
190
209
  if (!this.client.token)
@@ -258,7 +277,9 @@ export class WechatMessageService {
258
277
  },
259
278
  tokenRequired: true,
260
279
  });
261
- return result.ret === 0 && result.errcode === 0;
280
+ const failed = (result.ret != null && result.ret !== 0) ||
281
+ (result.errcode != null && result.errcode !== 0);
282
+ return !failed;
262
283
  }
263
284
  async sendImage(userId, imagePath) {
264
285
  return this.sendMedia(userId, imagePath, 'image');
@@ -282,9 +303,15 @@ export class WechatMessageService {
282
303
  const fromUserId = msg.from_user_id || '';
283
304
  if (!fromUserId)
284
305
  return null;
306
+ const routing = resolveInboundRouting(msg, String(configService.get('wechatOcAccountId') || ''));
285
307
  // Store context token for future replies
286
308
  if (msg.context_token) {
287
- this.contextTokens.set(fromUserId, msg.context_token);
309
+ this.contextTokens.set(routing.conversationId, msg.context_token);
310
+ // 持久化, 让后续一次性 send 命令也能复用
311
+ try {
312
+ configService.upsertContextToken(routing.conversationId, msg.context_token);
313
+ }
314
+ catch { }
288
315
  }
289
316
  const components = [];
290
317
  const itemList = msg.item_list || [];
@@ -326,6 +353,7 @@ export class WechatMessageService {
326
353
  return {
327
354
  messageId: msg.client_id || uuidHex(),
328
355
  fromUserId,
356
+ ...routing,
329
357
  senderNickname: msg.from_user_id || '',
330
358
  timestamp: Math.floor(Date.now() / 1000),
331
359
  timestampMs: Date.now(),
@@ -1 +1 @@
1
- {"version":3,"file":"wechatMessageService.js","sourceRoot":"","sources":["../../../src/services/wechatMessageService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wechatMessageService.js","sourceRoot":"","sources":["../../../src/services/wechatMessageService.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,67 @@
1
- export interface WhitelistEntry {
2
- wxid: string;
3
- displayName: string;
1
+ import { type ListEntry } from './configService.js';
2
+ /** 单条文本消息最大字符数 (微信单条上限约 5000, 这里更保守) */
3
+ export declare const MAX_TEXT_LENGTH = 2000;
4
+ /** 默认速率限制: 窗口内最大发送条数 */
5
+ export declare const DEFAULT_RATE_WINDOW_MS = 60000;
6
+ export declare const DEFAULT_RATE_MAX = 10;
7
+ export interface SendAuditEntry {
8
+ timestamp: number;
9
+ action: 'send';
10
+ targetWxid: string;
11
+ targetName?: string;
12
+ kind: 'text' | 'image' | 'file';
13
+ success: boolean;
14
+ /** 消息预览 (前 80 字符) */
15
+ preview?: string;
16
+ /** 失败原因 */
17
+ error?: string;
4
18
  }
5
19
  export declare class WhitelistService {
6
20
  getList(): string[];
21
+ /** 带昵称的白名单条目 */
22
+ getWhitelistEntries(): ListEntry[];
23
+ /** 查 wxid 对应的 displayName, 没有则返回 wxid */
24
+ lookupName(wxid: string): string;
7
25
  isAllowed(wxid: string): boolean;
8
26
  /** 直接添加 wxid(不解析昵称),用于 CLI 确认后的最终写入 */
9
- addDirect(wxid: string): void;
27
+ addDirect(wxid: string, displayName?: string): void;
10
28
  add(target: string): Promise<{
11
29
  success: boolean;
12
30
  error?: string;
13
31
  wxid?: string;
32
+ displayName?: string;
14
33
  }>;
15
34
  remove(wxid: string): boolean;
16
35
  clear(): void;
36
+ getBlacklist(): string[];
37
+ getBlacklistEntries(): ListEntry[];
38
+ isBlocked(wxid: string): boolean;
39
+ /** 直接添加 wxid 到黑名单 */
40
+ blockDirect(wxid: string, displayName?: string, reason?: string): void;
41
+ block(target: string, reason?: string): Promise<{
42
+ success: boolean;
43
+ error?: string;
44
+ wxid?: string;
45
+ displayName?: string;
46
+ }>;
47
+ unblock(wxid: string): boolean;
48
+ clearBlacklist(): void;
49
+ /** 追加一条发送审计记录 (JSON Lines) */
50
+ auditSend(entry: SendAuditEntry): void;
51
+ /** 读取审计日志, 返回最近 limit 条 (默认全部) */
52
+ readAudit(limit?: number, filter?: (e: SendAuditEntry) => boolean): SendAuditEntry[];
53
+ /** 审计日志文件大小 (字节) */
54
+ auditSize(): number;
55
+ /**
56
+ * 速率限制检查: 指定窗口内成功发送次数是否超阈值。
57
+ * @returns { allowed, count, windowMs, max }
58
+ */
59
+ checkRateLimit(windowMs?: number, max?: number): {
60
+ allowed: boolean;
61
+ count: number;
62
+ windowMs: number;
63
+ max: number;
64
+ };
17
65
  reload(): void;
18
66
  }
19
67
  export declare const whitelistService: WhitelistService;
@@ -1 +1 @@
1
- {"version":3,"file":"whitelistService.d.ts","sourceRoot":"","sources":["../../../src/services/whitelistService.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,IAAI,MAAM,EAAE;IAInB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,uCAAuC;IACvC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQvB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAwBvF,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAS7B,KAAK,IAAI,IAAI;IAIb,MAAM,IAAI,IAAI;CAGf;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAA"}
1
+ {"version":3,"file":"whitelistService.d.ts","sourceRoot":"","sources":["../../../src/services/whitelistService.ts"],"names":[],"mappings":"AASA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAMlE,wCAAwC;AACxC,eAAO,MAAM,eAAe,OAAO,CAAA;AACnC,wBAAwB;AACxB,eAAO,MAAM,sBAAsB,QAAS,CAAA;AAC5C,eAAO,MAAM,gBAAgB,KAAK,CAAA;AAElC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,gBAAgB;IAG3B,OAAO,IAAI,MAAM,EAAE;IAInB,gBAAgB;IAChB,mBAAmB,IAAI,SAAS,EAAE;IAIlC,yCAAyC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAOhC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAMhC,uCAAuC;IACvC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAe7C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA8B7G,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAS7B,KAAK,IAAI,IAAI;IAMb,YAAY,IAAI,MAAM,EAAE;IAIxB,mBAAmB,IAAI,SAAS,EAAE;IAIlC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,qBAAqB;IACrB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAYhE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA2BhI,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAS9B,cAAc,IAAI,IAAI;IAMtB,8BAA8B;IAC9B,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAWtC,kCAAkC;IAClC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,OAAO,GAAG,cAAc,EAAE;IAuBpF,oBAAoB;IACpB,SAAS,IAAI,MAAM;IAQnB;;;OAGG;IACH,cAAc,CAAC,QAAQ,GAAE,MAA+B,EAAE,GAAG,GAAE,MAAyB,GAAG;QACzF,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,GAAG,EAAE,MAAM,CAAA;KACZ;IAWD,MAAM,IAAI,IAAI;CAGf;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAA"}
@@ -1,25 +1,63 @@
1
1
  /**
2
- * 白名单服务控制消息收发权限,仅白名单内 wxid 可收发消息。
2
+ * 白名单/黑名单服务控制消息收发权限。
3
+ * - 白名单: 允许收发的 wxid 列表
4
+ * - 黑名单: 绝对禁止收发的 wxid 列表 (优先级高于白名单)
5
+ * - 审计日志: 记录每次发送尝试, 便于事后追溯
3
6
  */
7
+ import { join } from 'path';
8
+ import { homedir } from 'os';
9
+ import { appendFileSync, mkdirSync, existsSync, readFileSync, statSync } from 'fs';
4
10
  import { configService } from './configService.js';
5
11
  import { resolveTalker } from '../utils/talkerUtils.js';
12
+ const AUDIT_DIR = join(homedir(), '.weflow-cli');
13
+ const AUDIT_FILE = join(AUDIT_DIR, 'audit-send.log');
14
+ /** 单条文本消息最大字符数 (微信单条上限约 5000, 这里更保守) */
15
+ export const MAX_TEXT_LENGTH = 2000;
16
+ /** 默认速率限制: 窗口内最大发送条数 */
17
+ export const DEFAULT_RATE_WINDOW_MS = 60_000;
18
+ export const DEFAULT_RATE_MAX = 10;
6
19
  export class WhitelistService {
20
+ // ====== 白名单 ======
7
21
  getList() {
8
22
  return configService.getWhitelist();
9
23
  }
24
+ /** 带昵称的白名单条目 */
25
+ getWhitelistEntries() {
26
+ return configService.getWhitelistEntries();
27
+ }
28
+ /** 查 wxid 对应的 displayName, 没有则返回 wxid */
29
+ lookupName(wxid) {
30
+ const e = configService.getWhitelistEntries().find(x => x.wxid === wxid);
31
+ if (e?.displayName)
32
+ return e.displayName;
33
+ const b = configService.getBlacklistEntries().find(x => x.wxid === wxid);
34
+ return b?.displayName || wxid;
35
+ }
10
36
  isAllowed(wxid) {
37
+ // 黑名单优先: 即使在白名单也拒绝
38
+ if (this.isBlocked(wxid))
39
+ return false;
11
40
  return configService.getWhitelist().includes(wxid);
12
41
  }
13
42
  /** 直接添加 wxid(不解析昵称),用于 CLI 确认后的最终写入 */
14
- addDirect(wxid) {
15
- const list = configService.getWhitelist();
16
- if (!list.includes(wxid)) {
17
- list.push(wxid);
18
- configService.setWhitelist(list);
43
+ addDirect(wxid, displayName) {
44
+ const entries = configService.getWhitelistEntries();
45
+ if (!entries.some(e => e.wxid === wxid)) {
46
+ entries.push({ wxid, displayName, addedAt: Date.now() });
47
+ configService.setWhitelistEntries(entries);
48
+ }
49
+ else if (displayName) {
50
+ // 已存在但补全 displayName
51
+ const idx = entries.findIndex(e => e.wxid === wxid);
52
+ if (!entries[idx].displayName) {
53
+ entries[idx].displayName = displayName;
54
+ configService.setWhitelistEntries(entries);
55
+ }
19
56
  }
20
57
  }
21
58
  async add(target) {
22
59
  let wxid;
60
+ let displayName;
23
61
  // 已知格式直接使用,否则通过 resolveTalker 解析
24
62
  if (target.startsWith('wxid_') || target.includes('@chatroom') || target.includes('@openim')) {
25
63
  wxid = target;
@@ -32,28 +70,156 @@ export class WhitelistService {
32
70
  return { success: false, error: `无法解析 "${target}": ${e.message}` };
33
71
  }
34
72
  }
35
- const list = configService.getWhitelist();
36
- if (list.includes(wxid)) {
73
+ // 黑名单中的目标禁止加入白名单
74
+ if (this.isBlocked(wxid)) {
75
+ return { success: false, error: `"${wxid}" 在黑名单中, 禁止加入白名单` };
76
+ }
77
+ const entries = configService.getWhitelistEntries();
78
+ if (entries.some(e => e.wxid === wxid)) {
37
79
  return { success: false, error: `"${wxid}" 已在白名单中` };
38
80
  }
39
- list.push(wxid);
40
- configService.setWhitelist(list);
41
- return { success: true, wxid };
81
+ entries.push({ wxid, displayName, addedAt: Date.now() });
82
+ configService.setWhitelistEntries(entries);
83
+ return { success: true, wxid, displayName };
42
84
  }
43
85
  remove(wxid) {
44
- const list = configService.getWhitelist();
45
- const idx = list.indexOf(wxid);
86
+ const entries = configService.getWhitelistEntries();
87
+ const idx = entries.findIndex(e => e.wxid === wxid);
46
88
  if (idx < 0)
47
89
  return false;
48
- list.splice(idx, 1);
49
- configService.setWhitelist(list);
90
+ entries.splice(idx, 1);
91
+ configService.setWhitelistEntries(entries);
50
92
  return true;
51
93
  }
52
94
  clear() {
53
- configService.setWhitelist([]);
95
+ configService.setWhitelistEntries([]);
96
+ }
97
+ // ====== 黑名单 ======
98
+ getBlacklist() {
99
+ return configService.getBlacklist();
100
+ }
101
+ getBlacklistEntries() {
102
+ return configService.getBlacklistEntries();
103
+ }
104
+ isBlocked(wxid) {
105
+ return configService.getBlacklist().includes(wxid);
106
+ }
107
+ /** 直接添加 wxid 到黑名单 */
108
+ blockDirect(wxid, displayName, reason) {
109
+ const entries = configService.getBlacklistEntries();
110
+ if (!entries.some(e => e.wxid === wxid)) {
111
+ entries.push({ wxid, displayName, addedAt: Date.now(), reason });
112
+ configService.setBlacklistEntries(entries);
113
+ }
114
+ // 同步从白名单移除 (黑名单优先级最高)
115
+ if (configService.getWhitelist().includes(wxid)) {
116
+ this.remove(wxid);
117
+ }
118
+ }
119
+ async block(target, reason) {
120
+ let wxid;
121
+ let displayName;
122
+ if (target.startsWith('wxid_') || target.includes('@chatroom') || target.includes('@openim')) {
123
+ wxid = target;
124
+ }
125
+ else {
126
+ try {
127
+ wxid = await resolveTalker(target);
128
+ }
129
+ catch (e) {
130
+ return { success: false, error: `无法解析 "${target}": ${e.message}` };
131
+ }
132
+ }
133
+ const entries = configService.getBlacklistEntries();
134
+ if (entries.some(e => e.wxid === wxid)) {
135
+ return { success: false, error: `"${wxid}" 已在黑名单中` };
136
+ }
137
+ entries.push({ wxid, displayName, addedAt: Date.now(), reason });
138
+ configService.setBlacklistEntries(entries);
139
+ // 同步从白名单移除
140
+ if (configService.getWhitelist().includes(wxid)) {
141
+ this.remove(wxid);
142
+ }
143
+ return { success: true, wxid, displayName };
144
+ }
145
+ unblock(wxid) {
146
+ const entries = configService.getBlacklistEntries();
147
+ const idx = entries.findIndex(e => e.wxid === wxid);
148
+ if (idx < 0)
149
+ return false;
150
+ entries.splice(idx, 1);
151
+ configService.setBlacklistEntries(entries);
152
+ return true;
153
+ }
154
+ clearBlacklist() {
155
+ configService.setBlacklistEntries([]);
156
+ }
157
+ // ====== 审计日志 ======
158
+ /** 追加一条发送审计记录 (JSON Lines) */
159
+ auditSend(entry) {
160
+ try {
161
+ if (!existsSync(AUDIT_DIR)) {
162
+ mkdirSync(AUDIT_DIR, { recursive: true });
163
+ }
164
+ appendFileSync(AUDIT_FILE, JSON.stringify(entry) + '\n', 'utf8');
165
+ }
166
+ catch {
167
+ // 审计失败不影响主流程
168
+ }
169
+ }
170
+ /** 读取审计日志, 返回最近 limit 条 (默认全部) */
171
+ readAudit(limit, filter) {
172
+ if (!existsSync(AUDIT_FILE))
173
+ return [];
174
+ try {
175
+ const raw = readFileSync(AUDIT_FILE, 'utf8');
176
+ const lines = raw.split('\n').filter(Boolean);
177
+ let entries = [];
178
+ for (const line of lines) {
179
+ try {
180
+ entries.push(JSON.parse(line));
181
+ }
182
+ catch {
183
+ // 跳过损坏行
184
+ }
185
+ }
186
+ if (filter)
187
+ entries = entries.filter(filter);
188
+ // 倒序 (最新在前)
189
+ entries.reverse();
190
+ if (limit && limit > 0)
191
+ entries = entries.slice(0, limit);
192
+ return entries;
193
+ }
194
+ catch {
195
+ return [];
196
+ }
197
+ }
198
+ /** 审计日志文件大小 (字节) */
199
+ auditSize() {
200
+ try {
201
+ return existsSync(AUDIT_FILE) ? statSync(AUDIT_FILE).size : 0;
202
+ }
203
+ catch {
204
+ return 0;
205
+ }
206
+ }
207
+ /**
208
+ * 速率限制检查: 指定窗口内成功发送次数是否超阈值。
209
+ * @returns { allowed, count, windowMs, max }
210
+ */
211
+ checkRateLimit(windowMs = DEFAULT_RATE_WINDOW_MS, max = DEFAULT_RATE_MAX) {
212
+ const since = Date.now() - windowMs;
213
+ const recent = this.readAudit(undefined, e => e.success && e.timestamp >= since);
214
+ return {
215
+ allowed: recent.length < max,
216
+ count: recent.length,
217
+ windowMs,
218
+ max,
219
+ };
54
220
  }
55
221
  reload() {
56
- // configService 每次 getWhitelist 都从内存读取,无需主动 reload
222
+ // configService 每次读取都从内存读取,无需主动 reload
57
223
  }
58
224
  }
59
225
  export const whitelistService = new WhitelistService();
@@ -1 +1 @@
1
- {"version":3,"file":"whitelistService.js","sourceRoot":"","sources":["../../../src/services/whitelistService.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAOvD,MAAM,OAAO,gBAAgB;IAC3B,OAAO;QACL,OAAO,aAAa,CAAC,YAAY,EAAE,CAAA;IACrC,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,OAAO,aAAa,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,uCAAuC;IACvC,SAAS,CAAC,IAAY;QACpB,MAAM,IAAI,GAAG,aAAa,CAAC,YAAY,EAAE,CAAA;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACf,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAc;QACtB,IAAI,IAAY,CAAA;QAEhB,iCAAiC;QACjC,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7F,IAAI,GAAG,MAAM,CAAA;QACf,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAA;YACpC,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,MAAM,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAA;YACpE,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,aAAa,CAAC,YAAY,EAAE,CAAA;QACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,CAAA;QACtD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACf,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,MAAM,IAAI,GAAG,aAAa,CAAC,YAAY,EAAE,CAAA;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QACzB,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACnB,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK;QACH,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;IAChC,CAAC;IAED,MAAM;QACJ,mDAAmD;IACrD,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"whitelistService.js","sourceRoot":"","sources":["../../../src/services/whitelistService.ts"],"names":[],"mappings":"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"}