agent-messenger 2.7.0 → 2.8.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.
Files changed (511) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.github/workflows/ci.yml +6 -0
  3. package/.oxfmtrc.json +13 -1
  4. package/.oxlintrc.json +10 -1
  5. package/README.md +1 -1
  6. package/dist/package.json +59 -58
  7. package/dist/src/platforms/channeltalk/client.d.ts.map +1 -1
  8. package/dist/src/platforms/channeltalk/client.js +2 -2
  9. package/dist/src/platforms/channeltalk/client.js.map +1 -1
  10. package/dist/src/platforms/channeltalk/commands/auth.d.ts.map +1 -1
  11. package/dist/src/platforms/channeltalk/commands/auth.js.map +1 -1
  12. package/dist/src/platforms/channeltalk/commands/message.d.ts.map +1 -1
  13. package/dist/src/platforms/channeltalk/commands/message.js.map +1 -1
  14. package/dist/src/platforms/channeltalk/commands/snapshot.d.ts.map +1 -1
  15. package/dist/src/platforms/channeltalk/commands/snapshot.js.map +1 -1
  16. package/dist/src/platforms/channeltalk/ensure-auth.d.ts.map +1 -1
  17. package/dist/src/platforms/channeltalk/ensure-auth.js.map +1 -1
  18. package/dist/src/platforms/channeltalk/token-extractor.d.ts +9 -23
  19. package/dist/src/platforms/channeltalk/token-extractor.d.ts.map +1 -1
  20. package/dist/src/platforms/channeltalk/token-extractor.js +109 -341
  21. package/dist/src/platforms/channeltalk/token-extractor.js.map +1 -1
  22. package/dist/src/platforms/channeltalkbot/client.d.ts +1 -1
  23. package/dist/src/platforms/channeltalkbot/client.d.ts.map +1 -1
  24. package/dist/src/platforms/channeltalkbot/client.js +4 -4
  25. package/dist/src/platforms/channeltalkbot/client.js.map +1 -1
  26. package/dist/src/platforms/channeltalkbot/commands/auth.d.ts.map +1 -1
  27. package/dist/src/platforms/channeltalkbot/commands/auth.js +4 -1
  28. package/dist/src/platforms/channeltalkbot/commands/auth.js.map +1 -1
  29. package/dist/src/platforms/channeltalkbot/commands/shared.d.ts.map +1 -1
  30. package/dist/src/platforms/channeltalkbot/commands/shared.js.map +1 -1
  31. package/dist/src/platforms/discord/commands/auth.js.map +1 -1
  32. package/dist/src/platforms/discord/commands/whoami.d.ts.map +1 -1
  33. package/dist/src/platforms/discord/commands/whoami.js.map +1 -1
  34. package/dist/src/platforms/discord/token-extractor.d.ts +2 -10
  35. package/dist/src/platforms/discord/token-extractor.d.ts.map +1 -1
  36. package/dist/src/platforms/discord/token-extractor.js +38 -172
  37. package/dist/src/platforms/discord/token-extractor.js.map +1 -1
  38. package/dist/src/platforms/discordbot/client.d.ts.map +1 -1
  39. package/dist/src/platforms/discordbot/client.js.map +1 -1
  40. package/dist/src/platforms/instagram/cli.d.ts.map +1 -1
  41. package/dist/src/platforms/instagram/cli.js +1 -4
  42. package/dist/src/platforms/instagram/cli.js.map +1 -1
  43. package/dist/src/platforms/instagram/client.d.ts.map +1 -1
  44. package/dist/src/platforms/instagram/client.js +8 -7
  45. package/dist/src/platforms/instagram/client.js.map +1 -1
  46. package/dist/src/platforms/instagram/commands/auth.d.ts.map +1 -1
  47. package/dist/src/platforms/instagram/commands/auth.js.map +1 -1
  48. package/dist/src/platforms/instagram/commands/chat.d.ts.map +1 -1
  49. package/dist/src/platforms/instagram/commands/chat.js.map +1 -1
  50. package/dist/src/platforms/instagram/commands/message.d.ts.map +1 -1
  51. package/dist/src/platforms/instagram/commands/message.js.map +1 -1
  52. package/dist/src/platforms/instagram/commands/shared.d.ts.map +1 -1
  53. package/dist/src/platforms/instagram/commands/shared.js.map +1 -1
  54. package/dist/src/platforms/instagram/credential-manager.d.ts.map +1 -1
  55. package/dist/src/platforms/instagram/credential-manager.js +1 -1
  56. package/dist/src/platforms/instagram/credential-manager.js.map +1 -1
  57. package/dist/src/platforms/instagram/ensure-auth.d.ts.map +1 -1
  58. package/dist/src/platforms/instagram/ensure-auth.js.map +1 -1
  59. package/dist/src/platforms/instagram/token-extractor.d.ts +7 -19
  60. package/dist/src/platforms/instagram/token-extractor.d.ts.map +1 -1
  61. package/dist/src/platforms/instagram/token-extractor.js +44 -270
  62. package/dist/src/platforms/instagram/token-extractor.js.map +1 -1
  63. package/dist/src/platforms/instagram/types.d.ts.map +1 -1
  64. package/dist/src/platforms/instagram/types.js +4 -2
  65. package/dist/src/platforms/instagram/types.js.map +1 -1
  66. package/dist/src/platforms/kakaotalk/auth/kakao-login.d.ts.map +1 -1
  67. package/dist/src/platforms/kakaotalk/auth/kakao-login.js +18 -4
  68. package/dist/src/platforms/kakaotalk/auth/kakao-login.js.map +1 -1
  69. package/dist/src/platforms/kakaotalk/client.d.ts.map +1 -1
  70. package/dist/src/platforms/kakaotalk/client.js +3 -3
  71. package/dist/src/platforms/kakaotalk/client.js.map +1 -1
  72. package/dist/src/platforms/kakaotalk/commands/auth.d.ts.map +1 -1
  73. package/dist/src/platforms/kakaotalk/commands/auth.js +15 -9
  74. package/dist/src/platforms/kakaotalk/commands/auth.js.map +1 -1
  75. package/dist/src/platforms/kakaotalk/commands/shared.d.ts.map +1 -1
  76. package/dist/src/platforms/kakaotalk/commands/shared.js.map +1 -1
  77. package/dist/src/platforms/kakaotalk/protocol/connection.d.ts.map +1 -1
  78. package/dist/src/platforms/kakaotalk/protocol/connection.js.map +1 -1
  79. package/dist/src/platforms/kakaotalk/protocol/crypto.js +1 -1
  80. package/dist/src/platforms/kakaotalk/protocol/crypto.js.map +1 -1
  81. package/dist/src/platforms/kakaotalk/protocol/session.d.ts.map +1 -1
  82. package/dist/src/platforms/kakaotalk/protocol/session.js +1 -3
  83. package/dist/src/platforms/kakaotalk/protocol/session.js.map +1 -1
  84. package/dist/src/platforms/kakaotalk/token-extractor.js +5 -2
  85. package/dist/src/platforms/kakaotalk/token-extractor.js.map +1 -1
  86. package/dist/src/platforms/kakaotalk/types.d.ts.map +1 -1
  87. package/dist/src/platforms/kakaotalk/types.js +4 -2
  88. package/dist/src/platforms/kakaotalk/types.js.map +1 -1
  89. package/dist/src/platforms/line/cli.d.ts.map +1 -1
  90. package/dist/src/platforms/line/cli.js +1 -4
  91. package/dist/src/platforms/line/cli.js.map +1 -1
  92. package/dist/src/platforms/line/client.d.ts.map +1 -1
  93. package/dist/src/platforms/line/client.js +5 -13
  94. package/dist/src/platforms/line/client.js.map +1 -1
  95. package/dist/src/platforms/line/commands/chat.d.ts.map +1 -1
  96. package/dist/src/platforms/line/commands/chat.js.map +1 -1
  97. package/dist/src/platforms/line/commands/message.d.ts.map +1 -1
  98. package/dist/src/platforms/line/commands/message.js.map +1 -1
  99. package/dist/src/platforms/line/listener.js +1 -1
  100. package/dist/src/platforms/line/listener.js.map +1 -1
  101. package/dist/src/platforms/slack/cli.d.ts.map +1 -1
  102. package/dist/src/platforms/slack/cli.js.map +1 -1
  103. package/dist/src/platforms/slack/client-mappers.d.ts +14 -0
  104. package/dist/src/platforms/slack/client-mappers.d.ts.map +1 -0
  105. package/dist/src/platforms/slack/client-mappers.js +245 -0
  106. package/dist/src/platforms/slack/client-mappers.js.map +1 -0
  107. package/dist/src/platforms/slack/client.d.ts +0 -1
  108. package/dist/src/platforms/slack/client.d.ts.map +1 -1
  109. package/dist/src/platforms/slack/client.js +41 -455
  110. package/dist/src/platforms/slack/client.js.map +1 -1
  111. package/dist/src/platforms/slack/commands/channel.d.ts.map +1 -1
  112. package/dist/src/platforms/slack/commands/channel.js.map +1 -1
  113. package/dist/src/platforms/slack/commands/emoji.d.ts.map +1 -1
  114. package/dist/src/platforms/slack/commands/emoji.js +1 -3
  115. package/dist/src/platforms/slack/commands/emoji.js.map +1 -1
  116. package/dist/src/platforms/slack/commands/message.d.ts.map +1 -1
  117. package/dist/src/platforms/slack/commands/message.js.map +1 -1
  118. package/dist/src/platforms/slack/commands/reminder.d.ts.map +1 -1
  119. package/dist/src/platforms/slack/commands/reminder.js.map +1 -1
  120. package/dist/src/platforms/slack/commands/user.d.ts.map +1 -1
  121. package/dist/src/platforms/slack/commands/user.js.map +1 -1
  122. package/dist/src/platforms/slack/commands/usergroup.d.ts.map +1 -1
  123. package/dist/src/platforms/slack/commands/usergroup.js.map +1 -1
  124. package/dist/src/platforms/slack/commands/whoami.d.ts.map +1 -1
  125. package/dist/src/platforms/slack/commands/whoami.js.map +1 -1
  126. package/dist/src/platforms/slack/token-extractor.d.ts +2 -6
  127. package/dist/src/platforms/slack/token-extractor.d.ts.map +1 -1
  128. package/dist/src/platforms/slack/token-extractor.js +35 -229
  129. package/dist/src/platforms/slack/token-extractor.js.map +1 -1
  130. package/dist/src/platforms/slackbot/cli.d.ts.map +1 -1
  131. package/dist/src/platforms/slackbot/cli.js +1 -1
  132. package/dist/src/platforms/slackbot/cli.js.map +1 -1
  133. package/dist/src/platforms/teams/client.d.ts.map +1 -1
  134. package/dist/src/platforms/teams/client.js +1 -1
  135. package/dist/src/platforms/teams/client.js.map +1 -1
  136. package/dist/src/platforms/teams/commands/auth.d.ts.map +1 -1
  137. package/dist/src/platforms/teams/commands/auth.js +4 -1
  138. package/dist/src/platforms/teams/commands/auth.js.map +1 -1
  139. package/dist/src/platforms/teams/commands/whoami.d.ts.map +1 -1
  140. package/dist/src/platforms/teams/commands/whoami.js.map +1 -1
  141. package/dist/src/platforms/teams/token-extractor.d.ts +6 -18
  142. package/dist/src/platforms/teams/token-extractor.d.ts.map +1 -1
  143. package/dist/src/platforms/teams/token-extractor.js +71 -324
  144. package/dist/src/platforms/teams/token-extractor.js.map +1 -1
  145. package/dist/src/platforms/telegram/cli.d.ts.map +1 -1
  146. package/dist/src/platforms/telegram/cli.js +1 -4
  147. package/dist/src/platforms/telegram/cli.js.map +1 -1
  148. package/dist/src/platforms/telegram/client.d.ts.map +1 -1
  149. package/dist/src/platforms/telegram/client.js.map +1 -1
  150. package/dist/src/platforms/telegram/commands/auth.d.ts.map +1 -1
  151. package/dist/src/platforms/telegram/commands/auth.js +1 -1
  152. package/dist/src/platforms/telegram/commands/auth.js.map +1 -1
  153. package/dist/src/platforms/telegram/commands/chat.d.ts.map +1 -1
  154. package/dist/src/platforms/telegram/commands/chat.js.map +1 -1
  155. package/dist/src/platforms/telegram/commands/message.d.ts.map +1 -1
  156. package/dist/src/platforms/telegram/commands/message.js.map +1 -1
  157. package/dist/src/platforms/telegram/commands/whoami.js +1 -1
  158. package/dist/src/platforms/telegram/commands/whoami.js.map +1 -1
  159. package/dist/src/platforms/telegram/credential-manager.d.ts.map +1 -1
  160. package/dist/src/platforms/telegram/credential-manager.js +6 -2
  161. package/dist/src/platforms/telegram/credential-manager.js.map +1 -1
  162. package/dist/src/platforms/telegram/my-telegram-org.js.map +1 -1
  163. package/dist/src/platforms/webex/cli.d.ts.map +1 -1
  164. package/dist/src/platforms/webex/cli.js +1 -4
  165. package/dist/src/platforms/webex/cli.js.map +1 -1
  166. package/dist/src/platforms/webex/client.d.ts.map +1 -1
  167. package/dist/src/platforms/webex/client.js +3 -7
  168. package/dist/src/platforms/webex/client.js.map +1 -1
  169. package/dist/src/platforms/webex/commands/auth.d.ts.map +1 -1
  170. package/dist/src/platforms/webex/commands/auth.js +1 -3
  171. package/dist/src/platforms/webex/commands/auth.js.map +1 -1
  172. package/dist/src/platforms/webex/commands/member.d.ts.map +1 -1
  173. package/dist/src/platforms/webex/commands/member.js +1 -3
  174. package/dist/src/platforms/webex/commands/member.js.map +1 -1
  175. package/dist/src/platforms/webex/commands/message.d.ts.map +1 -1
  176. package/dist/src/platforms/webex/commands/message.js.map +1 -1
  177. package/dist/src/platforms/webex/commands/snapshot.d.ts.map +1 -1
  178. package/dist/src/platforms/webex/commands/snapshot.js.map +1 -1
  179. package/dist/src/platforms/webex/commands/space.d.ts.map +1 -1
  180. package/dist/src/platforms/webex/commands/space.js.map +1 -1
  181. package/dist/src/platforms/webex/commands/whoami.d.ts.map +1 -1
  182. package/dist/src/platforms/webex/commands/whoami.js.map +1 -1
  183. package/dist/src/platforms/webex/credential-manager.d.ts.map +1 -1
  184. package/dist/src/platforms/webex/credential-manager.js.map +1 -1
  185. package/dist/src/platforms/webex/ensure-auth.d.ts.map +1 -1
  186. package/dist/src/platforms/webex/ensure-auth.js +1 -3
  187. package/dist/src/platforms/webex/ensure-auth.js.map +1 -1
  188. package/dist/src/platforms/webex/index.d.ts +1 -1
  189. package/dist/src/platforms/webex/index.d.ts.map +1 -1
  190. package/dist/src/platforms/webex/index.js.map +1 -1
  191. package/dist/src/platforms/webex/markdown-to-html.js.map +1 -1
  192. package/dist/src/platforms/webex/token-extractor.d.ts.map +1 -1
  193. package/dist/src/platforms/webex/token-extractor.js +5 -14
  194. package/dist/src/platforms/webex/token-extractor.js.map +1 -1
  195. package/dist/src/platforms/wechatbot/client.d.ts.map +1 -1
  196. package/dist/src/platforms/wechatbot/client.js.map +1 -1
  197. package/dist/src/platforms/wechatbot/commands/message.d.ts.map +1 -1
  198. package/dist/src/platforms/wechatbot/commands/message.js.map +1 -1
  199. package/dist/src/platforms/whatsapp/cli.d.ts.map +1 -1
  200. package/dist/src/platforms/whatsapp/cli.js +1 -4
  201. package/dist/src/platforms/whatsapp/cli.js.map +1 -1
  202. package/dist/src/platforms/whatsapp/commands/chat.d.ts.map +1 -1
  203. package/dist/src/platforms/whatsapp/commands/chat.js.map +1 -1
  204. package/dist/src/platforms/whatsapp/commands/message.d.ts.map +1 -1
  205. package/dist/src/platforms/whatsapp/commands/message.js.map +1 -1
  206. package/dist/src/platforms/whatsapp/commands/shared.d.ts.map +1 -1
  207. package/dist/src/platforms/whatsapp/commands/shared.js.map +1 -1
  208. package/dist/src/platforms/whatsapp/credential-manager.d.ts.map +1 -1
  209. package/dist/src/platforms/whatsapp/credential-manager.js +1 -1
  210. package/dist/src/platforms/whatsapp/credential-manager.js.map +1 -1
  211. package/dist/src/platforms/whatsapp/ensure-auth.d.ts.map +1 -1
  212. package/dist/src/platforms/whatsapp/ensure-auth.js.map +1 -1
  213. package/dist/src/platforms/whatsappbot/client.d.ts.map +1 -1
  214. package/dist/src/platforms/whatsappbot/client.js +2 -2
  215. package/dist/src/platforms/whatsappbot/client.js.map +1 -1
  216. package/dist/src/platforms/whatsappbot/commands/auth.d.ts.map +1 -1
  217. package/dist/src/platforms/whatsappbot/commands/auth.js +4 -1
  218. package/dist/src/platforms/whatsappbot/commands/auth.js.map +1 -1
  219. package/dist/src/platforms/whatsappbot/commands/message.d.ts.map +1 -1
  220. package/dist/src/platforms/whatsappbot/commands/message.js.map +1 -1
  221. package/dist/src/platforms/whatsappbot/commands/shared.d.ts.map +1 -1
  222. package/dist/src/platforms/whatsappbot/commands/shared.js.map +1 -1
  223. package/dist/src/shared/chromium/browsers.d.ts +7 -0
  224. package/dist/src/shared/chromium/browsers.d.ts.map +1 -0
  225. package/dist/src/shared/chromium/browsers.js +89 -0
  226. package/dist/src/shared/chromium/browsers.js.map +1 -0
  227. package/dist/src/shared/chromium/cookie-reader.d.ts +20 -0
  228. package/dist/src/shared/chromium/cookie-reader.d.ts.map +1 -0
  229. package/dist/src/shared/chromium/cookie-reader.js +99 -0
  230. package/dist/src/shared/chromium/cookie-reader.js.map +1 -0
  231. package/dist/src/shared/chromium/decryptor.d.ts +42 -0
  232. package/dist/src/shared/chromium/decryptor.d.ts.map +1 -0
  233. package/dist/src/shared/chromium/decryptor.js +205 -0
  234. package/dist/src/shared/chromium/decryptor.js.map +1 -0
  235. package/dist/src/shared/chromium/index.d.ts +6 -0
  236. package/dist/src/shared/chromium/index.d.ts.map +1 -0
  237. package/dist/src/shared/chromium/index.js +4 -0
  238. package/dist/src/shared/chromium/index.js.map +1 -0
  239. package/dist/src/shared/chromium/types.d.ts +11 -0
  240. package/dist/src/shared/chromium/types.d.ts.map +1 -0
  241. package/dist/src/shared/chromium/types.js +2 -0
  242. package/dist/src/shared/chromium/types.js.map +1 -0
  243. package/dist/src/shared/utils/derived-key-cache.d.ts +1 -1
  244. package/dist/src/shared/utils/derived-key-cache.d.ts.map +1 -1
  245. package/dist/src/shared/utils/linux-keyring.js +4 -1
  246. package/dist/src/shared/utils/linux-keyring.js.map +1 -1
  247. package/dist/src/tui/adapters/kakaotalk-adapter.d.ts.map +1 -1
  248. package/dist/src/tui/adapters/kakaotalk-adapter.js +6 -1
  249. package/dist/src/tui/adapters/kakaotalk-adapter.js.map +1 -1
  250. package/dist/src/tui/adapters/telegram-adapter.js +1 -1
  251. package/dist/src/tui/adapters/telegram-adapter.js.map +1 -1
  252. package/dist/src/tui/adapters/webex-adapter.js +1 -1
  253. package/dist/src/tui/adapters/webex-adapter.js.map +1 -1
  254. package/dist/src/tui/app.d.ts.map +1 -1
  255. package/dist/src/tui/app.js +112 -23
  256. package/dist/src/tui/app.js.map +1 -1
  257. package/dist/src/tui/utils.d.ts.map +1 -1
  258. package/dist/src/tui/utils.js +11 -13
  259. package/dist/src/tui/utils.js.map +1 -1
  260. package/dist/src/tui/views/channel-picker.d.ts.map +1 -1
  261. package/dist/src/tui/views/channel-picker.js.map +1 -1
  262. package/dist/src/tui/views/workspace-picker.d.ts.map +1 -1
  263. package/dist/src/tui/views/workspace-picker.js.map +1 -1
  264. package/docs/content/docs/cli/channeltalk.mdx +24 -22
  265. package/docs/content/docs/cli/channeltalkbot.mdx +7 -7
  266. package/docs/content/docs/cli/instagram.mdx +4 -4
  267. package/docs/content/docs/cli/kakaotalk.mdx +9 -8
  268. package/docs/content/docs/cli/line.mdx +14 -14
  269. package/docs/content/docs/cli/webex.mdx +19 -19
  270. package/docs/content/docs/cli/wechatbot.mdx +12 -11
  271. package/docs/content/docs/cli/whatsapp.mdx +5 -4
  272. package/docs/content/docs/cli/whatsappbot.mdx +11 -11
  273. package/docs/content/docs/index.mdx +7 -7
  274. package/docs/content/docs/meta.json +1 -9
  275. package/docs/content/docs/sdk/channeltalk.mdx +5 -6
  276. package/docs/content/docs/sdk/channeltalkbot.mdx +6 -12
  277. package/docs/content/docs/sdk/discord.mdx +36 -43
  278. package/docs/content/docs/sdk/instagram.mdx +18 -18
  279. package/docs/content/docs/sdk/kakaotalk.mdx +27 -18
  280. package/docs/content/docs/sdk/line.mdx +8 -13
  281. package/docs/content/docs/sdk/meta.json +14 -1
  282. package/docs/content/docs/sdk/slack.mdx +36 -42
  283. package/docs/content/docs/sdk/teams.mdx +2 -8
  284. package/docs/content/docs/sdk/webex.mdx +2 -12
  285. package/docs/content/docs/sdk/wechatbot.mdx +1 -5
  286. package/docs/content/docs/sdk/whatsapp.mdx +10 -19
  287. package/docs/content/docs/sdk/whatsappbot.mdx +2 -10
  288. package/docs/content/docs/tui.mdx +23 -23
  289. package/docs/src/app/page.tsx +353 -108
  290. package/e2e/channeltalkbot.e2e.test.ts +1 -5
  291. package/e2e/config.ts +6 -2
  292. package/package.json +59 -58
  293. package/scripts/prepublish.ts +1 -3
  294. package/skills/agent-channeltalk/SKILL.md +1 -1
  295. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  296. package/skills/agent-discord/SKILL.md +1 -1
  297. package/skills/agent-discordbot/SKILL.md +1 -1
  298. package/skills/agent-instagram/SKILL.md +1 -1
  299. package/skills/agent-kakaotalk/SKILL.md +1 -1
  300. package/skills/agent-line/SKILL.md +1 -1
  301. package/skills/agent-slack/SKILL.md +1 -1
  302. package/skills/agent-slackbot/SKILL.md +1 -1
  303. package/skills/agent-teams/SKILL.md +1 -1
  304. package/skills/agent-telegram/SKILL.md +1 -1
  305. package/skills/agent-webex/SKILL.md +1 -1
  306. package/skills/agent-wechatbot/SKILL.md +1 -1
  307. package/skills/agent-whatsapp/SKILL.md +1 -1
  308. package/skills/agent-whatsappbot/SKILL.md +1 -1
  309. package/src/platforms/channeltalk/client.test.ts +116 -29
  310. package/src/platforms/channeltalk/client.ts +26 -6
  311. package/src/platforms/channeltalk/commands/auth.test.ts +5 -5
  312. package/src/platforms/channeltalk/commands/auth.ts +19 -5
  313. package/src/platforms/channeltalk/commands/message.test.ts +2 -6
  314. package/src/platforms/channeltalk/commands/message.ts +5 -1
  315. package/src/platforms/channeltalk/commands/snapshot.test.ts +19 -4
  316. package/src/platforms/channeltalk/commands/snapshot.ts +5 -1
  317. package/src/platforms/channeltalk/ensure-auth.test.ts +20 -17
  318. package/src/platforms/channeltalk/ensure-auth.ts +6 -7
  319. package/src/platforms/channeltalk/index.ts +0 -1
  320. package/src/platforms/channeltalk/token-extractor.test.ts +33 -25
  321. package/src/platforms/channeltalk/token-extractor.ts +120 -372
  322. package/src/platforms/channeltalkbot/client.test.ts +1 -3
  323. package/src/platforms/channeltalkbot/client.ts +39 -13
  324. package/src/platforms/channeltalkbot/commands/auth.test.ts +3 -1
  325. package/src/platforms/channeltalkbot/commands/auth.ts +4 -1
  326. package/src/platforms/channeltalkbot/commands/bot.test.ts +13 -5
  327. package/src/platforms/channeltalkbot/commands/message.test.ts +12 -6
  328. package/src/platforms/channeltalkbot/commands/shared.ts +6 -2
  329. package/src/platforms/channeltalkbot/commands/snapshot.test.ts +17 -5
  330. package/src/platforms/channeltalkbot/credential-manager.test.ts +1 -1
  331. package/src/platforms/channeltalkbot/index.test.ts +0 -2
  332. package/src/platforms/channeltalkbot/index.ts +0 -1
  333. package/src/platforms/discord/commands/auth.test.ts +6 -4
  334. package/src/platforms/discord/commands/auth.ts +14 -14
  335. package/src/platforms/discord/commands/whoami.test.ts +2 -4
  336. package/src/platforms/discord/commands/whoami.ts +2 -0
  337. package/src/platforms/discord/ensure-auth.test.ts +5 -3
  338. package/src/platforms/discord/index.ts +0 -1
  339. package/src/platforms/discord/listener.test.ts +7 -1
  340. package/src/platforms/discord/token-extractor.test.ts +18 -12
  341. package/src/platforms/discord/token-extractor.ts +46 -190
  342. package/src/platforms/discordbot/client.ts +1 -4
  343. package/src/platforms/discordbot/commands/auth.test.ts +3 -1
  344. package/src/platforms/discordbot/commands/channel.test.ts +3 -1
  345. package/src/platforms/discordbot/commands/message.test.ts +3 -1
  346. package/src/platforms/discordbot/commands/server.test.ts +3 -1
  347. package/src/platforms/discordbot/commands/snapshot.test.ts +3 -1
  348. package/src/platforms/discordbot/commands/thread.test.ts +3 -1
  349. package/src/platforms/discordbot/commands/user.test.ts +3 -1
  350. package/src/platforms/instagram/cli.ts +1 -4
  351. package/src/platforms/instagram/client.test.ts +3 -8
  352. package/src/platforms/instagram/client.ts +39 -34
  353. package/src/platforms/instagram/commands/auth.test.ts +13 -12
  354. package/src/platforms/instagram/commands/auth.ts +136 -71
  355. package/src/platforms/instagram/commands/chat.test.ts +21 -24
  356. package/src/platforms/instagram/commands/chat.ts +2 -0
  357. package/src/platforms/instagram/commands/message.test.ts +29 -24
  358. package/src/platforms/instagram/commands/message.ts +3 -4
  359. package/src/platforms/instagram/commands/shared.ts +2 -5
  360. package/src/platforms/instagram/commands/whoami.test.ts +4 -6
  361. package/src/platforms/instagram/credential-manager.ts +2 -6
  362. package/src/platforms/instagram/ensure-auth.test.ts +1 -4
  363. package/src/platforms/instagram/ensure-auth.ts +6 -3
  364. package/src/platforms/instagram/listener.test.ts +7 -3
  365. package/src/platforms/instagram/token-extractor.test.ts +4 -16
  366. package/src/platforms/instagram/token-extractor.ts +55 -309
  367. package/src/platforms/instagram/types.test.ts +2 -6
  368. package/src/platforms/instagram/types.ts +4 -2
  369. package/src/platforms/kakaotalk/auth/kakao-login.ts +30 -8
  370. package/src/platforms/kakaotalk/client.test.ts +37 -25
  371. package/src/platforms/kakaotalk/client.ts +23 -12
  372. package/src/platforms/kakaotalk/commands/auth.test.ts +6 -18
  373. package/src/platforms/kakaotalk/commands/auth.ts +101 -47
  374. package/src/platforms/kakaotalk/commands/chat.test.ts +8 -11
  375. package/src/platforms/kakaotalk/commands/message.test.ts +15 -24
  376. package/src/platforms/kakaotalk/commands/shared.ts +1 -0
  377. package/src/platforms/kakaotalk/commands/whoami.test.ts +6 -10
  378. package/src/platforms/kakaotalk/credential-manager.test.ts +1 -4
  379. package/src/platforms/kakaotalk/index.test.ts +1 -0
  380. package/src/platforms/kakaotalk/index.ts +0 -2
  381. package/src/platforms/kakaotalk/listener.test.ts +7 -1
  382. package/src/platforms/kakaotalk/protocol/connection.ts +4 -1
  383. package/src/platforms/kakaotalk/protocol/crypto.ts +1 -1
  384. package/src/platforms/kakaotalk/protocol/session.ts +12 -6
  385. package/src/platforms/kakaotalk/token-extractor.ts +5 -5
  386. package/src/platforms/kakaotalk/types.ts +8 -7
  387. package/src/platforms/line/cli.ts +1 -4
  388. package/src/platforms/line/client.ts +12 -20
  389. package/src/platforms/line/commands/auth.test.ts +2 -1
  390. package/src/platforms/line/commands/chat.test.ts +2 -1
  391. package/src/platforms/line/commands/chat.ts +1 -4
  392. package/src/platforms/line/commands/friend.test.ts +2 -1
  393. package/src/platforms/line/commands/message.test.ts +2 -1
  394. package/src/platforms/line/commands/message.ts +2 -9
  395. package/src/platforms/line/commands/whoami.test.ts +2 -1
  396. package/src/platforms/line/credential-manager.test.ts +1 -2
  397. package/src/platforms/line/index.test.ts +1 -0
  398. package/src/platforms/line/listener.ts +1 -1
  399. package/src/platforms/line/types.test.ts +1 -0
  400. package/src/platforms/slack/cli.ts +3 -1
  401. package/src/platforms/slack/client-mappers.ts +297 -0
  402. package/src/platforms/slack/client.test.ts +532 -17
  403. package/src/platforms/slack/client.ts +69 -458
  404. package/src/platforms/slack/commands/channel.ts +1 -4
  405. package/src/platforms/slack/commands/emoji.test.ts +6 -4
  406. package/src/platforms/slack/commands/emoji.ts +20 -22
  407. package/src/platforms/slack/commands/message.ts +6 -1
  408. package/src/platforms/slack/commands/pin.test.ts +14 -12
  409. package/src/platforms/slack/commands/reminder.ts +7 -6
  410. package/src/platforms/slack/commands/user.ts +6 -1
  411. package/src/platforms/slack/commands/usergroup.test.ts +3 -3
  412. package/src/platforms/slack/commands/usergroup.ts +10 -7
  413. package/src/platforms/slack/commands/whoami.test.ts +1 -1
  414. package/src/platforms/slack/commands/whoami.ts +2 -0
  415. package/src/platforms/slack/index.ts +0 -2
  416. package/src/platforms/slack/listener.test.ts +1 -0
  417. package/src/platforms/slack/token-extractor.test.ts +7 -12
  418. package/src/platforms/slack/token-extractor.ts +47 -255
  419. package/src/platforms/slackbot/cli.ts +8 -1
  420. package/src/platforms/slackbot/commands/auth.test.ts +3 -1
  421. package/src/platforms/teams/client.ts +1 -1
  422. package/src/platforms/teams/commands/auth.test.ts +1 -1
  423. package/src/platforms/teams/commands/auth.ts +4 -1
  424. package/src/platforms/teams/commands/whoami.test.ts +2 -4
  425. package/src/platforms/teams/commands/whoami.ts +2 -0
  426. package/src/platforms/teams/index.ts +0 -1
  427. package/src/platforms/teams/token-extractor.ts +82 -350
  428. package/src/platforms/telegram/app-config.test.ts +1 -0
  429. package/src/platforms/telegram/chat-utils.test.ts +5 -1
  430. package/src/platforms/telegram/cli.ts +2 -4
  431. package/src/platforms/telegram/client.test.ts +16 -3
  432. package/src/platforms/telegram/client.ts +14 -4
  433. package/src/platforms/telegram/commands/auth.test.ts +1 -0
  434. package/src/platforms/telegram/commands/auth.ts +3 -4
  435. package/src/platforms/telegram/commands/chat.test.ts +2 -5
  436. package/src/platforms/telegram/commands/chat.ts +1 -0
  437. package/src/platforms/telegram/commands/message.test.ts +2 -5
  438. package/src/platforms/telegram/commands/message.ts +1 -0
  439. package/src/platforms/telegram/commands/shared.test.ts +1 -0
  440. package/src/platforms/telegram/commands/whoami.test.ts +5 -7
  441. package/src/platforms/telegram/commands/whoami.ts +1 -1
  442. package/src/platforms/telegram/credential-manager.test.ts +1 -0
  443. package/src/platforms/telegram/credential-manager.ts +11 -2
  444. package/src/platforms/telegram/my-telegram-org.ts +6 -2
  445. package/src/platforms/telegram/types.test.ts +1 -0
  446. package/src/platforms/webex/app-config.test.ts +1 -0
  447. package/src/platforms/webex/cli.ts +1 -4
  448. package/src/platforms/webex/client.test.ts +4 -12
  449. package/src/platforms/webex/client.ts +14 -52
  450. package/src/platforms/webex/commands/auth.test.ts +7 -1
  451. package/src/platforms/webex/commands/auth.ts +12 -15
  452. package/src/platforms/webex/commands/member.test.ts +1 -3
  453. package/src/platforms/webex/commands/member.ts +14 -19
  454. package/src/platforms/webex/commands/message.ts +4 -15
  455. package/src/platforms/webex/commands/snapshot.test.ts +28 -3
  456. package/src/platforms/webex/commands/snapshot.ts +3 -3
  457. package/src/platforms/webex/commands/space.test.ts +3 -3
  458. package/src/platforms/webex/commands/space.ts +2 -9
  459. package/src/platforms/webex/commands/whoami.test.ts +12 -5
  460. package/src/platforms/webex/commands/whoami.ts +2 -0
  461. package/src/platforms/webex/credential-manager.ts +11 -2
  462. package/src/platforms/webex/ensure-auth.ts +1 -3
  463. package/src/platforms/webex/index.ts +1 -7
  464. package/src/platforms/webex/markdown-to-html.test.ts +6 -18
  465. package/src/platforms/webex/markdown-to-html.ts +8 -8
  466. package/src/platforms/webex/token-extractor.ts +6 -29
  467. package/src/platforms/wechatbot/client.test.ts +6 -2
  468. package/src/platforms/wechatbot/client.ts +6 -1
  469. package/src/platforms/wechatbot/commands/auth.test.ts +3 -7
  470. package/src/platforms/wechatbot/commands/message.test.ts +1 -4
  471. package/src/platforms/wechatbot/commands/message.ts +5 -1
  472. package/src/platforms/wechatbot/commands/template.test.ts +1 -4
  473. package/src/platforms/wechatbot/commands/user.test.ts +2 -7
  474. package/src/platforms/whatsapp/cli.ts +1 -4
  475. package/src/platforms/whatsapp/commands/auth.test.ts +19 -22
  476. package/src/platforms/whatsapp/commands/chat.test.ts +21 -24
  477. package/src/platforms/whatsapp/commands/chat.ts +2 -0
  478. package/src/platforms/whatsapp/commands/message.test.ts +22 -24
  479. package/src/platforms/whatsapp/commands/message.ts +3 -5
  480. package/src/platforms/whatsapp/commands/shared.ts +2 -5
  481. package/src/platforms/whatsapp/commands/whoami.test.ts +2 -2
  482. package/src/platforms/whatsapp/credential-manager.ts +2 -6
  483. package/src/platforms/whatsapp/ensure-auth.test.ts +1 -4
  484. package/src/platforms/whatsapp/ensure-auth.ts +14 -6
  485. package/src/platforms/whatsapp/index.ts +0 -2
  486. package/src/platforms/whatsappbot/client.test.ts +13 -7
  487. package/src/platforms/whatsappbot/client.ts +18 -4
  488. package/src/platforms/whatsappbot/commands/auth.ts +4 -1
  489. package/src/platforms/whatsappbot/commands/message.test.ts +12 -2
  490. package/src/platforms/whatsappbot/commands/message.ts +16 -3
  491. package/src/platforms/whatsappbot/commands/shared.ts +3 -1
  492. package/src/platforms/whatsappbot/commands/whoami.test.ts +1 -3
  493. package/src/platforms/whatsappbot/index.ts +0 -2
  494. package/src/shared/chromium/browsers.test.ts +274 -0
  495. package/src/shared/chromium/browsers.ts +86 -0
  496. package/src/shared/chromium/cookie-reader.test.ts +274 -0
  497. package/src/shared/chromium/cookie-reader.ts +111 -0
  498. package/src/shared/chromium/decryptor.test.ts +449 -0
  499. package/src/shared/chromium/decryptor.ts +227 -0
  500. package/src/shared/chromium/index.ts +11 -0
  501. package/src/shared/chromium/types.ts +11 -0
  502. package/src/shared/utils/derived-key-cache.ts +1 -1
  503. package/src/shared/utils/linux-keyring.ts +4 -4
  504. package/src/tui/adapters/kakaotalk-adapter.ts +6 -1
  505. package/src/tui/adapters/telegram-adapter.ts +1 -1
  506. package/src/tui/adapters/webex-adapter.ts +1 -1
  507. package/src/tui/app.ts +149 -59
  508. package/src/tui/utils.test.ts +144 -145
  509. package/src/tui/utils.ts +27 -29
  510. package/src/tui/views/channel-picker.ts +1 -1
  511. package/src/tui/views/workspace-picker.ts +1 -1
@@ -1,57 +1,22 @@
1
1
  import { execSync } from 'node:child_process';
2
- import { createDecipheriv, pbkdf2Sync } from 'node:crypto';
3
- import { copyFileSync, existsSync, readFileSync, readdirSync, unlinkSync } from 'node:fs';
4
- import { homedir, tmpdir } from 'node:os';
2
+ import { pbkdf2Sync } from 'node:crypto';
3
+ import { existsSync } from 'node:fs';
4
+ import { homedir } from 'node:os';
5
5
  import { join } from 'node:path';
6
- const BROWSERS = [
7
- {
8
- name: 'Chrome',
9
- darwin: join('Google', 'Chrome'),
10
- linux: 'google-chrome',
11
- win32: join('Google', 'Chrome', 'User Data'),
12
- },
13
- {
14
- name: 'Chrome Canary',
15
- darwin: join('Google', 'Chrome Canary'),
16
- linux: 'google-chrome-unstable',
17
- win32: join('Google', 'Chrome SxS', 'User Data'),
18
- },
19
- {
20
- name: 'Edge',
21
- darwin: 'Microsoft Edge',
22
- linux: 'microsoft-edge',
23
- win32: join('Microsoft', 'Edge', 'User Data'),
24
- },
25
- {
26
- name: 'Arc',
27
- darwin: join('Arc', 'User Data'),
28
- linux: '',
29
- win32: join('Arc', 'User Data'),
30
- },
31
- {
32
- name: 'Brave',
33
- darwin: join('BraveSoftware', 'Brave-Browser'),
34
- linux: join('BraveSoftware', 'Brave-Browser'),
35
- win32: join('BraveSoftware', 'Brave-Browser', 'User Data'),
36
- },
37
- {
38
- name: 'Vivaldi',
39
- darwin: 'Vivaldi',
40
- linux: 'vivaldi',
41
- win32: join('Vivaldi', 'User Data'),
42
- },
43
- {
44
- name: 'Chromium',
45
- darwin: 'Chromium',
46
- linux: 'chromium',
47
- win32: join('Chromium', 'User Data'),
48
- },
49
- ];
6
+ import { BROWSER_KEYCHAIN_VARIANTS, CHROMIUM_BROWSERS, ChromiumCookieDecryptor, ChromiumCookieReader, discoverBrowserProfileDirs, findLocalStatePath, getBrowserBasePath, } from '../../shared/chromium/index.js';
7
+ const COOKIE_QUERY = `
8
+ SELECT name, value, encrypted_value FROM cookies
9
+ WHERE name IN ('x-account', 'ch-session-1', 'ch-session')
10
+ AND host_key LIKE '%.channel.io%'
11
+ `;
50
12
  export class ChannelTokenExtractor {
51
13
  platform;
52
- cachedKey = null;
14
+ decryptor;
15
+ cookieReader;
53
16
  constructor(platform) {
54
17
  this.platform = platform ?? process.platform;
18
+ this.cookieReader = new ChromiumCookieReader();
19
+ this.decryptor = new ChromiumCookieDecryptor({ platform: this.platform });
55
20
  }
56
21
  getAppDataDir() {
57
22
  switch (this.platform) {
@@ -87,89 +52,21 @@ export class ChannelTokenExtractor {
87
52
  return null;
88
53
  }
89
54
  }
90
- getLocalStatePath() {
91
- const appDir = this.getAppDataDir();
92
- if (!appDir)
93
- return null;
94
- const localStatePath = join(appDir, 'Local State');
95
- return existsSync(localStatePath) ? localStatePath : null;
96
- }
97
55
  getBrowserCookiesPaths() {
98
56
  const paths = [];
99
- for (const browser of BROWSERS) {
100
- const browserBase = this.getBrowserBasePath(browser);
57
+ for (const browser of CHROMIUM_BROWSERS) {
58
+ const browserBase = getBrowserBasePath(browser, this.platform);
101
59
  if (!browserBase)
102
60
  continue;
103
- const profileDirs = this.discoverProfileDirs(browserBase);
104
- for (const profileDir of profileDirs) {
61
+ for (const profileDir of discoverBrowserProfileDirs(browserBase)) {
105
62
  paths.push(join(profileDir, 'Cookies'));
106
63
  paths.push(join(profileDir, 'Network', 'Cookies'));
107
64
  }
108
65
  }
109
66
  return paths;
110
67
  }
111
- getBrowserBasePath(browser) {
112
- let relative;
113
- switch (this.platform) {
114
- case 'darwin':
115
- relative = browser.darwin;
116
- if (!relative)
117
- return null;
118
- return join(homedir(), 'Library', 'Application Support', relative);
119
- case 'linux':
120
- relative = browser.linux;
121
- if (!relative)
122
- return null;
123
- return join(homedir(), '.config', relative);
124
- case 'win32':
125
- relative = browser.win32;
126
- if (!relative)
127
- return null;
128
- return join(process.env.LOCALAPPDATA || join(homedir(), 'AppData', 'Local'), relative);
129
- default:
130
- return null;
131
- }
132
- }
133
- discoverProfileDirs(browserBase) {
134
- const dirs = [];
135
- dirs.push(join(browserBase, 'Default'));
136
- if (!existsSync(browserBase))
137
- return dirs;
138
- try {
139
- const entries = readdirSync(browserBase, { withFileTypes: true });
140
- for (const entry of entries) {
141
- if (!entry.isDirectory())
142
- continue;
143
- if (!/^Profile \d+$/i.test(entry.name))
144
- continue;
145
- dirs.push(join(browserBase, entry.name));
146
- }
147
- }
148
- catch { }
149
- return dirs;
150
- }
151
- findLocalStateForCookiePath(cookiePath) {
152
- const parts = cookiePath.split(/[/\\]/);
153
- for (let levels = 2; levels <= 4; levels++) {
154
- if (parts.length < levels)
155
- break;
156
- const base = parts.slice(0, parts.length - levels).join('/');
157
- const candidate = join(base, 'Local State');
158
- if (existsSync(candidate))
159
- return candidate;
160
- }
161
- return null;
162
- }
163
68
  getKeychainVariants() {
164
- return [
165
- { service: 'Chrome Safe Storage', account: 'Chrome' },
166
- { service: 'Chrome Canary Safe Storage', account: 'Chrome Canary' },
167
- { service: 'Microsoft Edge Safe Storage', account: 'Microsoft Edge' },
168
- { service: 'Arc Safe Storage', account: 'Arc' },
169
- { service: 'Brave Safe Storage', account: 'Brave' },
170
- { service: 'Vivaldi Safe Storage', account: 'Vivaldi' },
171
- { service: 'Chromium Safe Storage', account: 'Chromium' },
172
- ];
69
+ return BROWSER_KEYCHAIN_VARIANTS;
173
70
  }
174
71
  async extract() {
175
72
  const results = [];
@@ -187,269 +84,140 @@ export class ChannelTokenExtractor {
187
84
  }
188
85
  return results;
189
86
  }
190
- async extractAllFromBrowserPaths() {
191
- const results = [];
192
- const cookiePaths = this.getBrowserCookiesPaths();
193
- for (const cookiePath of cookiePaths) {
194
- if (!existsSync(cookiePath))
195
- continue;
196
- const result = await this.extractFromBrowserCookiePath(cookiePath);
197
- if (result)
198
- results.push(result);
199
- }
200
- return results;
87
+ decryptDPAPI(encryptedBlob) {
88
+ return this.decryptor.decryptDPAPI(encryptedBlob);
201
89
  }
202
- async extractFromDesktopApp() {
203
- const cookiesPath = this.getCookiesPath();
204
- if (!cookiesPath) {
205
- return null;
206
- }
207
- const tempPath = join(tmpdir(), `channel-cookies-${Date.now()}`);
90
+ execSecurityCommand(service, account) {
208
91
  try {
209
- copyFileSync(cookiesPath, tempPath);
210
- const rows = await this.queryCookieDB(tempPath);
211
- const accountCookie = this.getCookieValue(rows, 'x-account');
212
- const sessionCookie = this.getCookieValue(rows, 'ch-session-1') ??
213
- this.getCookieValue(rows, 'ch-session');
214
- return accountCookie ? { accountCookie, sessionCookie } : null;
92
+ const safeService = service.replace(/"/g, '\\"');
93
+ const safeAccount = account.replace(/"/g, '\\"');
94
+ return (execSync(`security find-generic-password -s "${safeService}" -a "${safeAccount}" -w 2>/dev/null`, {
95
+ encoding: 'utf8',
96
+ }).trim() || null);
215
97
  }
216
98
  catch {
217
99
  return null;
218
100
  }
219
- finally {
220
- try {
221
- if (existsSync(tempPath)) {
222
- unlinkSync(tempPath);
101
+ }
102
+ decryptBrowserCookie(encrypted, cookiePath) {
103
+ const prefix = encrypted.length > 3 ? encrypted.subarray(0, 3).toString('utf8') : '';
104
+ if (prefix === 'v10' || prefix === 'v11') {
105
+ if (this.platform === 'darwin') {
106
+ for (const variant of BROWSER_KEYCHAIN_VARIANTS) {
107
+ const password = this.execSecurityCommand(variant.service, variant.account);
108
+ if (!password)
109
+ continue;
110
+ const key = pbkdf2Sync(password, 'saltysalt', 1003, 16, 'sha1');
111
+ const buf = this.decryptor.decryptAESCBCRaw(encrypted, key);
112
+ if (buf)
113
+ return ChromiumCookieDecryptor.stripIntegrityHash(buf).toString('utf8');
223
114
  }
115
+ return null;
224
116
  }
225
- catch {
226
- /* temp file cleanup failure is non-critical */
117
+ if (this.platform === 'linux') {
118
+ const key = pbkdf2Sync('peanuts', 'saltysalt', 1, 16, 'sha1');
119
+ const buf = this.decryptor.decryptAESCBCRaw(encrypted, key);
120
+ if (buf)
121
+ return ChromiumCookieDecryptor.stripIntegrityHash(buf).toString('utf8');
122
+ return null;
123
+ }
124
+ if (this.platform === 'win32') {
125
+ const localStatePath = findLocalStatePath(cookiePath) ?? undefined;
126
+ const buf = this.decryptor.decryptWindowsCookieRaw(encrypted, localStatePath);
127
+ if (buf)
128
+ return ChromiumCookieDecryptor.stripIntegrityHash(buf).toString('utf8');
129
+ return null;
227
130
  }
228
131
  }
132
+ return null;
133
+ }
134
+ getLocalStatePath() {
135
+ const appDir = this.getAppDataDir();
136
+ if (!appDir)
137
+ return null;
138
+ const localStatePath = join(appDir, 'Local State');
139
+ return existsSync(localStatePath) ? localStatePath : null;
229
140
  }
230
- async extractFromBrowsers() {
141
+ async extractAllFromBrowserPaths() {
142
+ const results = [];
231
143
  const cookiePaths = this.getBrowserCookiesPaths();
232
144
  for (const cookiePath of cookiePaths) {
233
145
  if (!existsSync(cookiePath))
234
146
  continue;
235
147
  const result = await this.extractFromBrowserCookiePath(cookiePath);
236
148
  if (result)
237
- return result;
149
+ results.push(result);
238
150
  }
239
- return null;
151
+ return results;
240
152
  }
241
- async extractFromBrowserCookiePath(cookiePath) {
242
- const tempPath = join(tmpdir(), `channel-browser-cookies-${Date.now()}`);
243
- try {
244
- copyFileSync(cookiePath, tempPath);
245
- const rows = await this.queryCookieDB(tempPath);
246
- const accountCookie = this.getBrowserCookieValue(rows, 'x-account', cookiePath);
247
- const sessionCookie = this.getBrowserCookieValue(rows, 'ch-session-1', cookiePath) ??
248
- this.getBrowserCookieValue(rows, 'ch-session', cookiePath);
249
- return accountCookie ? { accountCookie, sessionCookie } : null;
250
- }
251
- catch {
153
+ async extractFromDesktopApp() {
154
+ const cookiesPath = this.getCookiesPath();
155
+ if (!cookiesPath) {
252
156
  return null;
253
157
  }
254
- finally {
255
- try {
256
- if (existsSync(tempPath)) {
257
- unlinkSync(tempPath);
258
- }
259
- }
260
- catch {
261
- /* temp file cleanup failure is non-critical */
262
- }
263
- }
264
- }
265
- async queryCookieDB(dbPath) {
266
- const sql = `
267
- SELECT name, value, encrypted_value FROM cookies
268
- WHERE name IN ('x-account', 'ch-session-1', 'ch-session')
269
- AND host_key LIKE '%.channel.io%'
270
- `;
271
- if (typeof globalThis.Bun !== 'undefined') {
272
- return await (async () => {
273
- const { Database } = await import('bun:sqlite');
274
- const db = new Database(dbPath, { readonly: true });
275
- const result = db.query(sql).all();
276
- db.close();
277
- return result;
278
- })();
279
- }
280
- return await (async () => {
281
- const { createRequire } = await import('node:module');
282
- const req = createRequire(import.meta.url);
283
- const Database = req('better-sqlite3');
284
- const db = new Database(dbPath, { readonly: true });
285
- const result = db.prepare(sql).all();
286
- db.close();
287
- return result;
288
- })();
289
- }
290
- getCookieValue(rows, name) {
291
- const row = rows.find((r) => r.name === name);
292
- if (!row)
293
- return undefined;
294
- if (row.value && row.value.length > 0) {
295
- return row.value;
296
- }
297
- const encrypted = Buffer.from(row.encrypted_value);
298
- if (encrypted.length === 0)
299
- return undefined;
300
- return this.decryptCookie(encrypted) ?? undefined;
158
+ const rows = await this.cookieReader.queryAll(cookiesPath, COOKIE_QUERY);
159
+ if (rows.length === 0)
160
+ return null;
161
+ const localStatePath = this.getLocalStatePath() ?? undefined;
162
+ const accountCookie = this.getDesktopCookieValue(rows, 'x-account', localStatePath);
163
+ const sessionCookie = this.getDesktopCookieValue(rows, 'ch-session-1', localStatePath) ??
164
+ this.getDesktopCookieValue(rows, 'ch-session', localStatePath);
165
+ return accountCookie ? { accountCookie, sessionCookie } : null;
301
166
  }
302
- getBrowserCookieValue(rows, name, dbPath) {
303
- const row = rows.find((r) => r.name === name);
167
+ async extractFromBrowserCookiePath(cookiePath) {
168
+ const rows = await this.cookieReader.queryAll(cookiePath, COOKIE_QUERY);
169
+ if (rows.length === 0)
170
+ return null;
171
+ const localStatePath = findLocalStatePath(cookiePath) ?? undefined;
172
+ const accountCookie = this.getBrowserCookieValue(rows, 'x-account', localStatePath);
173
+ const sessionCookie = this.getBrowserCookieValue(rows, 'ch-session-1', localStatePath) ??
174
+ this.getBrowserCookieValue(rows, 'ch-session', localStatePath);
175
+ return accountCookie ? { accountCookie, sessionCookie } : null;
176
+ }
177
+ getDesktopCookieValue(rows, name, localStatePath) {
178
+ const row = rows.find((candidate) => candidate.name === name);
304
179
  if (!row)
305
180
  return undefined;
306
181
  if (row.value && row.value.length > 0) {
307
182
  return row.value;
308
183
  }
309
- const encrypted = Buffer.from(row.encrypted_value);
310
- if (encrypted.length === 0)
184
+ const encryptedValue = Buffer.from(row.encrypted_value);
185
+ if (encryptedValue.length === 0)
311
186
  return undefined;
312
- return this.decryptBrowserCookie(encrypted, dbPath) ?? undefined;
313
- }
314
- decryptCookie(encryptedValue) {
315
- if (!this.isEncryptedValue(encryptedValue)) {
316
- return encryptedValue.toString('utf8');
317
- }
318
- if (this.platform === 'win32') {
319
- return this.decryptWindowsCookie(encryptedValue);
320
- }
321
- return null;
322
- }
323
- decryptBrowserCookie(encryptedValue, dbPath) {
324
- if (!this.isEncryptedValue(encryptedValue)) {
325
- return encryptedValue.toString('utf8');
326
- }
327
- if (this.platform === 'win32') {
328
- const localStatePath = this.findLocalStateForCookiePath(dbPath);
329
- return this.decryptWindowsCookie(encryptedValue, localStatePath ?? undefined);
330
- }
331
- else if (this.platform === 'darwin') {
332
- return this.decryptMacCookie(encryptedValue);
187
+ if (this.platform === 'win32' && localStatePath && this.decryptor.isEncryptedValue(encryptedValue)) {
188
+ return this.decryptDesktopWindowsCookie(encryptedValue, localStatePath) ?? undefined;
333
189
  }
334
- else if (this.platform === 'linux') {
335
- return this.decryptLinuxCookie(encryptedValue);
336
- }
337
- return null;
190
+ return this.decryptor.decryptCookie(encryptedValue, localStatePath) ?? undefined;
338
191
  }
339
- isEncryptedValue(value) {
340
- if (!value || value.length < 4)
341
- return false;
342
- const prefix = value.subarray(0, 3).toString('utf8');
343
- return prefix === 'v10' || prefix === 'v11';
344
- }
345
- decryptWindowsCookie(encryptedData, localStatePath) {
192
+ decryptDesktopWindowsCookie(encryptedData, localStatePath) {
346
193
  try {
347
- const statePath = localStatePath ?? this.getLocalStatePath();
348
- if (!statePath)
349
- return null;
350
- const localState = JSON.parse(readFileSync(statePath, 'utf8'));
194
+ const { readFileSync } = require('node:fs');
195
+ const localState = JSON.parse(readFileSync(localStatePath, 'utf8'));
351
196
  const encryptedKey = Buffer.from(localState.os_crypt.encrypted_key, 'base64');
352
197
  const dpapiBlobKey = encryptedKey.subarray(5);
353
198
  const masterKey = this.decryptDPAPI(dpapiBlobKey);
354
199
  if (!masterKey)
355
200
  return null;
356
- return this.decryptAESGCM(encryptedData, masterKey);
357
- }
358
- catch {
359
- return null;
360
- }
361
- }
362
- decryptMacCookie(encryptedData) {
363
- if (this.cachedKey) {
364
- const decrypted = this.decryptAESCBC(encryptedData, this.cachedKey);
365
- if (decrypted)
366
- return decrypted;
367
- }
368
- for (const variant of this.getKeychainVariants()) {
369
- const password = this.execSecurityCommand(variant.service, variant.account);
370
- if (!password)
371
- continue;
372
- const key = pbkdf2Sync(password, 'saltysalt', 1003, 16, 'sha1');
373
- const decrypted = this.decryptAESCBC(encryptedData, key);
374
- if (decrypted) {
375
- this.cachedKey = key;
376
- return decrypted;
377
- }
378
- }
379
- return null;
380
- }
381
- decryptLinuxCookie(encryptedData) {
382
- const key = pbkdf2Sync('peanuts', 'saltysalt', 1, 16, 'sha1');
383
- return this.decryptAESCBC(encryptedData, key);
384
- }
385
- execSecurityCommand(service, account) {
386
- try {
387
- const safeService = service.replace(/"/g, '\\"');
388
- const safeAccount = account.replace(/"/g, '\\"');
389
- const result = execSync(`security find-generic-password -s "${safeService}" -a "${safeAccount}" -w 2>/dev/null`, { encoding: 'utf8' });
390
- return result.trim() || null;
391
- }
392
- catch {
393
- return null;
394
- }
395
- }
396
- decryptAESCBC(encryptedData, key) {
397
- try {
398
- const ciphertext = encryptedData.subarray(3);
399
- const iv = Buffer.alloc(16, 0x20);
400
- const decipher = createDecipheriv('aes-128-cbc', key, iv);
401
- decipher.setAutoPadding(true);
402
- const decrypted = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
403
- // Chromium v130+ integrity hash: 32-byte non-printable prefix
404
- if (decrypted.length > 32) {
405
- const hasNonPrintablePrefix = decrypted.subarray(0, 32).some((b) => b < 0x20 || b > 0x7e);
406
- if (hasNonPrintablePrefix) {
407
- return decrypted.subarray(32).toString('utf8');
408
- }
409
- }
410
- return decrypted.toString('utf8');
411
- }
412
- catch {
413
- return null;
414
- }
415
- }
416
- decryptDPAPI(encryptedBlob) {
417
- if (this.platform !== 'win32')
418
- return null;
419
- try {
420
- const b64 = encryptedBlob.toString('base64');
421
- const psScript = [
422
- 'Add-Type -AssemblyName System.Security',
423
- `$bytes = [Convert]::FromBase64String('${b64}')`,
424
- '$decrypted = [Security.Cryptography.ProtectedData]::Unprotect($bytes, $null, [Security.Cryptography.DataProtectionScope]::CurrentUser)',
425
- '[Convert]::ToBase64String($decrypted)',
426
- ].join('; ');
427
- const result = execSync(`powershell -NoProfile -NonInteractive -Command "${psScript}"`, {
428
- encoding: 'utf8',
429
- timeout: 10000,
430
- });
431
- return Buffer.from(result.trim(), 'base64');
201
+ return this.decryptor.decryptAESGCM(encryptedData, masterKey);
432
202
  }
433
203
  catch {
434
204
  return null;
435
205
  }
436
206
  }
437
- decryptAESGCM(encryptedData, key) {
438
- try {
439
- // Format: v10 (3 bytes) + IV (12 bytes) + ciphertext + auth tag (16 bytes)
440
- if (encryptedData.length < 3 + 12 + 16)
441
- return null;
442
- const iv = encryptedData.subarray(3, 15);
443
- const authTag = encryptedData.subarray(-16);
444
- const ciphertext = encryptedData.subarray(15, -16);
445
- const decipher = createDecipheriv('aes-256-gcm', key, iv);
446
- decipher.setAuthTag(authTag);
447
- const decrypted = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
448
- return decrypted.toString('utf8');
449
- }
450
- catch {
451
- return null;
207
+ getBrowserCookieValue(rows, name, localStatePath) {
208
+ const row = rows.find((candidate) => candidate.name === name);
209
+ if (!row)
210
+ return undefined;
211
+ if (row.value && row.value.length > 0) {
212
+ return row.value;
452
213
  }
214
+ const encryptedValue = Buffer.from(row.encrypted_value);
215
+ if (encryptedValue.length === 0)
216
+ return undefined;
217
+ const buf = this.decryptor.decryptCookieRaw(encryptedValue, localStatePath);
218
+ if (!buf)
219
+ return undefined;
220
+ return ChromiumCookieDecryptor.stripIntegrityHash(buf).toString('utf8');
453
221
  }
454
222
  }
455
223
  //# sourceMappingURL=token-extractor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token-extractor.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-extractor.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { ChannelBotBot, ChannelBotChannel, ChannelBotGroup, ChannelBotManager, ChannelBotMessage, ChannelBotUser, ChannelBotUserChat, MessageBlock } from './types.js';
2
1
  import { wrapTextInBlocks } from './message-utils.js';
2
+ import type { ChannelBotBot, ChannelBotChannel, ChannelBotGroup, ChannelBotManager, ChannelBotMessage, ChannelBotUser, ChannelBotUserChat, MessageBlock } from './types.js';
3
3
  interface ChannelBotFileUrlResponse {
4
4
  url: string;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/client.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ChannelBotError as ChannelBotErrorClass } from './types.js';
2
- import { wrapTextInBlocks } from './message-utils.js';
3
1
  import { ChannelBotCredentialManager } from './credential-manager.js';
2
+ import { wrapTextInBlocks } from './message-utils.js';
3
+ import { ChannelBotError as ChannelBotErrorClass } from './types.js';
4
4
  const BASE_URL = 'https://api.channel.io/open/v5';
5
5
  const MAX_RETRIES = 3;
6
6
  const BASE_BACKOFF_MS = 100;
@@ -174,11 +174,11 @@ export class ChannelBotClient {
174
174
  await this.sleep(BASE_BACKOFF_MS * 2 ** attempt);
175
175
  continue;
176
176
  }
177
- const errorBody = await response.json().catch(() => ({}));
177
+ const errorBody = (await response.json().catch(() => ({})));
178
178
  throw new ChannelBotErrorClass(errorBody.message || `HTTP ${response.status}`, errorBody.code || `http_${response.status}`);
179
179
  }
180
180
  if (!response.ok) {
181
- const errorBody = await response.json().catch(() => ({}));
181
+ const errorBody = (await response.json().catch(() => ({})));
182
182
  throw new ChannelBotErrorClass(errorBody.message || `HTTP ${response.status}`, errorBody.code || `http_${response.status}`);
183
183
  }
184
184
  if (response.status === 204) {