@ardennguyen/zalo-agent-cli 2.5.9 → 3.0.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 (1492) hide show
  1. package/.env.example +23 -2
  2. package/DISCLAIMER.md +3 -3
  3. package/LICENSE +2 -3
  4. package/NOTICE +14 -34
  5. package/README.md +166 -72
  6. package/package.json +37 -19
  7. package/src/commands/account.js +369 -40
  8. package/src/commands/auto-reply.js +8 -25
  9. package/src/commands/bank.js +25 -6
  10. package/src/commands/catalog.js +54 -11
  11. package/src/commands/cloud.js +459 -0
  12. package/src/commands/conv.js +470 -287
  13. package/src/commands/db.js +442 -0
  14. package/src/commands/fleet.js +449 -41
  15. package/src/commands/friend.js +198 -45
  16. package/src/commands/group.js +256 -43
  17. package/src/commands/label.js +16 -2
  18. package/src/commands/listen.js +495 -122
  19. package/src/commands/login.js +313 -117
  20. package/src/commands/mcp-approver.js +103 -0
  21. package/src/commands/mcp-webhook.js +13 -5
  22. package/src/commands/mcp.js +800 -104
  23. package/src/commands/msg-media.js +187 -0
  24. package/src/commands/msg-search.js +219 -0
  25. package/src/commands/msg.js +414 -110
  26. package/src/commands/oa/calls.js +134 -0
  27. package/src/commands/oa/content.js +266 -0
  28. package/src/commands/oa/gmf.js +429 -0
  29. package/src/commands/oa/messages.js +355 -0
  30. package/src/commands/oa/users.js +502 -0
  31. package/src/commands/oa-init.js +122 -123
  32. package/src/commands/oa-listen.js +374 -150
  33. package/src/commands/oa.js +83 -598
  34. package/src/commands/policy.js +224 -0
  35. package/src/commands/poll.js +3 -0
  36. package/src/commands/presence.js +175 -0
  37. package/src/commands/profile.js +45 -94
  38. package/src/commands/quick-msg.js +26 -0
  39. package/src/commands/read.js +172 -0
  40. package/src/commands/reminder.js +34 -4
  41. package/src/commands/social.js +223 -0
  42. package/src/commands/sync.js +482 -158
  43. package/src/commands/write.js +85 -0
  44. package/src/commands/zbs.js +502 -0
  45. package/src/core/account-devices.js +76 -0
  46. package/src/core/account-state.js +167 -0
  47. package/src/core/account-status.js +355 -0
  48. package/src/core/accounts.js +11 -4
  49. package/src/core/admin-api.js +392 -0
  50. package/src/core/approval.js +271 -0
  51. package/src/core/auto-reply.js +27 -0
  52. package/src/core/bank-accounts.js +1 -1
  53. package/src/core/block-sharing.js +43 -0
  54. package/src/core/board-pass.js +94 -0
  55. package/src/core/cached-message.js +78 -8
  56. package/src/core/cloud-plan.js +285 -0
  57. package/src/core/cloud-verify.js +305 -0
  58. package/src/core/confirm-guard.js +808 -0
  59. package/src/core/contact-names.js +504 -0
  60. package/src/core/control-events.js +525 -0
  61. package/src/core/control-replay.js +106 -0
  62. package/src/core/conversation-actions.js +214 -0
  63. package/src/core/credentials.js +112 -11
  64. package/src/core/current-user-names.js +60 -26
  65. package/src/core/daemon-channel.js +296 -15
  66. package/src/core/daemon-health.js +110 -7
  67. package/src/core/daemon-presence.js +455 -0
  68. package/src/core/daemon-sync.js +58 -18
  69. package/src/core/data-export.js +610 -0
  70. package/src/core/db-tools.js +473 -0
  71. package/src/core/db.js +1327 -83
  72. package/src/core/deploy-policy.js +560 -0
  73. package/src/core/device-since.js +123 -0
  74. package/src/core/e2ee-notice.js +41 -0
  75. package/src/core/exit-codes.js +7 -0
  76. package/src/core/export-crypt.js +290 -0
  77. package/src/core/fleet-controller.js +340 -0
  78. package/src/core/fleet-purge.js +144 -0
  79. package/src/core/fleet-qr.js +273 -0
  80. package/src/core/fleet-serve.js +292 -0
  81. package/src/core/fleet-supervisor.js +176 -0
  82. package/src/core/fleet-templates.js +568 -39
  83. package/src/core/fleet.js +232 -20
  84. package/src/core/friend-requests.js +80 -16
  85. package/src/core/friend-search.js +1 -1
  86. package/src/core/group-admin.js +2 -29
  87. package/src/core/group-departure.js +233 -0
  88. package/src/core/group-exit.js +621 -0
  89. package/src/core/group-members.js +21 -9
  90. package/src/core/group-settings.js +5 -207
  91. package/src/core/hidden-chat-actions.js +96 -0
  92. package/src/core/hidden-chats.js +425 -0
  93. package/src/core/history-fetch.js +81 -27
  94. package/src/core/keystore/config.js +163 -0
  95. package/src/core/keystore/container.js +208 -0
  96. package/src/core/keystore/index.js +483 -0
  97. package/src/core/keystore/keyring.js +588 -0
  98. package/src/core/keystore/kms.js +157 -0
  99. package/src/core/keystore/media-seal.js +711 -0
  100. package/src/core/keystore/providers.js +492 -0
  101. package/src/core/keystore/stores.js +177 -0
  102. package/src/core/keystore/worker.js +80 -0
  103. package/src/core/kick-marker.js +61 -0
  104. package/src/core/last-online.js +236 -0
  105. package/src/core/list-all.js +280 -0
  106. package/src/core/listener-lifecycle.js +101 -10
  107. package/src/core/live-api.js +1 -1
  108. package/src/core/live-store.js +111 -53
  109. package/src/core/local-reads.js +16 -0
  110. package/src/core/logout.js +102 -140
  111. package/src/core/media-deliver.js +732 -0
  112. package/src/core/media-route.js +347 -0
  113. package/src/core/media-store.js +408 -0
  114. package/src/core/mutual-groups.js +94 -0
  115. package/src/core/name-refresh.js +135 -0
  116. package/src/core/oa/calls.js +212 -0
  117. package/src/core/oa/content.js +390 -0
  118. package/src/core/oa/gmf.js +537 -0
  119. package/src/core/oa/messages.js +470 -0
  120. package/src/core/oa/oauth.js +422 -0
  121. package/src/core/oa/transport.js +645 -0
  122. package/src/core/oa/users.js +694 -0
  123. package/src/core/oa-client.js +49 -415
  124. package/src/core/overflow-repair.js +221 -0
  125. package/src/core/policy-layer.js +55 -0
  126. package/src/core/policy-schema.js +401 -0
  127. package/src/core/policy-store.js +1058 -0
  128. package/src/core/presence-config.js +100 -0
  129. package/src/core/presence-leases.js +211 -0
  130. package/src/core/presence.js +688 -0
  131. package/src/core/profile-settings.js +243 -0
  132. package/src/core/qr-login-flow.js +237 -0
  133. package/src/core/read-state.js +145 -22
  134. package/src/core/receipts.js +355 -548
  135. package/src/core/recent-conversations.js +28 -6
  136. package/src/core/row-mac.js +405 -0
  137. package/src/core/search.js +271 -0
  138. package/src/core/secure-page.js +771 -0
  139. package/src/core/self-heal.js +493 -34
  140. package/src/core/session-expiry.js +103 -0
  141. package/src/core/session-notice.js +249 -0
  142. package/src/core/social/client.js +296 -0
  143. package/src/core/social/dpop.js +54 -0
  144. package/src/core/socket-host.js +437 -0
  145. package/src/core/sqlite.js +520 -0
  146. package/src/core/startup-gate.js +49 -5
  147. package/src/core/storage-quota.js +796 -0
  148. package/src/core/sync-action.js +180 -0
  149. package/src/core/sync-v2/auto-sync.js +356 -0
  150. package/src/core/sync-v2/board.js +130 -92
  151. package/src/core/sync-v2/conv-state.js +21 -4
  152. package/src/core/sync-v2/gap-advice.js +2 -3
  153. package/src/core/sync-v2/index.js +739 -323
  154. package/src/core/sync-v2/media.js +116 -27
  155. package/src/core/sync-v2/plan.js +16 -2
  156. package/src/core/sync-v2/ranges.js +98 -0
  157. package/src/core/sync-v2/reactions.js +12 -196
  158. package/src/core/sync-v2/senders.js +32 -14
  159. package/src/core/sync-v2/zcloud.js +177 -579
  160. package/src/core/sync.js +23 -21
  161. package/src/core/test-fake-session.js +87 -0
  162. package/src/core/typing.js +78 -0
  163. package/src/core/unknown-acts.js +240 -0
  164. package/src/core/voice-text.js +171 -0
  165. package/src/core/webhook-outbox.js +110 -12
  166. package/src/core/zalo-client.js +147 -188
  167. package/src/core/zbs/api.js +505 -0
  168. package/src/core/zbs/image.js +85 -0
  169. package/src/core/zbs/phone.js +59 -0
  170. package/src/core/zbs/rsa.js +129 -0
  171. package/src/core/zbs/template-check.js +449 -0
  172. package/src/index.js +60 -10
  173. package/src/mcp/action-tool.js +188 -0
  174. package/src/mcp/actions-business.js +488 -0
  175. package/src/mcp/actions-conversation.js +633 -0
  176. package/src/mcp/actions-media.js +268 -0
  177. package/src/mcp/actions-profile.js +281 -0
  178. package/src/mcp/actions-social.js +518 -0
  179. package/src/mcp/instructions.js +19 -5
  180. package/src/mcp/mcp-config.js +112 -10
  181. package/src/mcp/mcp-http-transport.js +162 -25
  182. package/src/mcp/mcp-server.js +14 -3
  183. package/src/mcp/mcp-tools.js +1686 -384
  184. package/src/mcp/message-buffer.js +58 -12
  185. package/src/mcp/notifier.js +1 -1
  186. package/src/mcp/official-tool.js +298 -0
  187. package/src/mcp/sync-jobs.js +7 -1
  188. package/src/mcp/sync-stages.js +72 -0
  189. package/src/mcp/thread-name-cache.js +43 -5
  190. package/src/mcp/tool-presence.js +153 -0
  191. package/src/mcp/wait-batch.js +27 -0
  192. package/src/mcp/wait-result.js +19 -21
  193. package/src/utils/bank-helpers.js +52 -1
  194. package/src/utils/cli-args.js +12 -12
  195. package/src/utils/date-range.js +50 -0
  196. package/src/utils/hidden-access.js +141 -0
  197. package/src/utils/interrupt.js +37 -0
  198. package/src/utils/json-input.js +41 -0
  199. package/src/utils/list-replies.js +60 -0
  200. package/src/utils/my-documents.js +2 -3
  201. package/src/utils/output.js +66 -2
  202. package/src/utils/qr-display.js +14 -8
  203. package/src/utils/qr-http-server.js +674 -134
  204. package/src/utils/quote.js +8 -8
  205. package/src/utils/secret-input.js +57 -0
  206. package/src/utils/vn-text.js +72 -0
  207. package/src/zalo/README.md +46 -0
  208. package/src/zalo/anomaly-store.js +49 -0
  209. package/src/zalo/api/actions.js +670 -0
  210. package/src/zalo/api/boards.js +1036 -0
  211. package/src/zalo/api/business.js +662 -0
  212. package/src/zalo/api/conversations.js +329 -0
  213. package/src/zalo/api/groups.js +631 -0
  214. package/src/zalo/api/messages.js +695 -0
  215. package/src/zalo/api/people.js +711 -0
  216. package/src/zalo/api/profile.js +374 -0
  217. package/src/zalo/api/session.js +45 -0
  218. package/src/zalo/api/upload.js +976 -0
  219. package/src/zalo/api.js +117 -0
  220. package/src/zalo/client.js +206 -0
  221. package/src/zalo/custom/forward.js +199 -0
  222. package/src/zalo/custom/gid.js +123 -0
  223. package/src/zalo/custom/group-history.js +246 -0
  224. package/src/zalo/custom/group-invite.js +53 -0
  225. package/src/zalo/custom/group-settings.js +186 -0
  226. package/src/zalo/custom/group-visibility.js +71 -0
  227. package/src/zalo/custom/pin.js +220 -0
  228. package/src/zalo/custom/renewlink.js +115 -0
  229. package/src/zalo/device-fingerprint.js +33 -0
  230. package/src/zalo/download-fetch.js +45 -0
  231. package/src/zalo/enums.js +25 -0
  232. package/src/zalo/errors.js +195 -0
  233. package/src/zalo/format/mentions.js +140 -0
  234. package/src/zalo/format/split-message.js +222 -0
  235. package/src/zalo/format/urgency.js +29 -0
  236. package/src/zalo/headers.js +93 -0
  237. package/src/zalo/index.js +72 -0
  238. package/src/zalo/kernel/atomic-file.js +217 -0
  239. package/src/zalo/kernel/bound.js +46 -0
  240. package/src/zalo/kernel/cipher.js +88 -0
  241. package/src/zalo/kernel/cookies.js +125 -0
  242. package/src/zalo/kernel/endpoint.js +211 -0
  243. package/src/zalo/kernel/http.js +360 -0
  244. package/src/zalo/kernel/json-ids.js +118 -0
  245. package/src/zalo/kernel/login-cipher.js +165 -0
  246. package/src/zalo/kernel/secret-file.js +45 -0
  247. package/src/zalo/kernel/session.js +261 -0
  248. package/src/zalo/kernel/zcloud-cipher.js +83 -0
  249. package/src/zalo/kickout.js +136 -0
  250. package/src/zalo/listener/dispatch.js +404 -0
  251. package/src/zalo/listener/frames.js +222 -0
  252. package/src/zalo/listener/friend-events.js +113 -0
  253. package/src/zalo/listener/group-events.js +117 -0
  254. package/src/zalo/listener/keepalive.js +191 -0
  255. package/src/zalo/listener/listener.js +469 -0
  256. package/src/zalo/listener/models.js +220 -0
  257. package/src/zalo/listener/reactions.js +224 -0
  258. package/src/zalo/listener/socket-tap.js +228 -0
  259. package/src/zalo/login.js +387 -0
  260. package/src/zalo/logout.js +192 -0
  261. package/src/zalo/maintenance.js +183 -0
  262. package/src/zalo/official-logout.js +254 -0
  263. package/src/zalo/paging.js +114 -0
  264. package/src/zalo/profile.js +184 -0
  265. package/src/zalo/pulls.js +129 -0
  266. package/src/zalo/qr-image.js +90 -0
  267. package/src/zalo/qr-login.js +494 -0
  268. package/src/zalo/queues/control-queue.js +193 -0
  269. package/src/zalo/queues/offline-queue.js +275 -0
  270. package/src/zalo/queues/queue-verify.js +306 -0
  271. package/src/zalo/reads.js +723 -0
  272. package/src/zalo/receipts.js +550 -0
  273. package/src/zalo/req-id.js +24 -0
  274. package/src/zalo/retry.js +343 -0
  275. package/src/zalo/session-call.js +55 -0
  276. package/src/zalo/socket.js +762 -0
  277. package/src/zalo/transfer-sync/assets.js +181 -0
  278. package/src/zalo/transfer-sync/channel.js +459 -0
  279. package/src/zalo/transfer-sync/download.js +161 -0
  280. package/src/zalo/transfer-sync/message-types.js +520 -0
  281. package/src/zalo/transfer-sync/transfer.js +468 -0
  282. package/src/zalo/trust-store.js +99 -0
  283. package/src/zalo/trust-wasm.js +393 -0
  284. package/src/zalo/upkeep.js +127 -0
  285. package/src/zalo/web-call.js +103 -0
  286. package/src/zalo/writes.js +704 -0
  287. package/src/zalo/zcloud-e2ee.js +214 -0
  288. package/src/zalo/zcloud.js +802 -0
  289. package/node_modules/asynckit/LICENSE +0 -21
  290. package/node_modules/asynckit/README.md +0 -233
  291. package/node_modules/asynckit/bench.js +0 -76
  292. package/node_modules/asynckit/index.js +0 -6
  293. package/node_modules/asynckit/lib/abort.js +0 -29
  294. package/node_modules/asynckit/lib/async.js +0 -34
  295. package/node_modules/asynckit/lib/defer.js +0 -26
  296. package/node_modules/asynckit/lib/iterate.js +0 -75
  297. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  298. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  299. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  300. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  301. package/node_modules/asynckit/lib/state.js +0 -37
  302. package/node_modules/asynckit/lib/streamify.js +0 -141
  303. package/node_modules/asynckit/lib/terminator.js +0 -29
  304. package/node_modules/asynckit/package.json +0 -63
  305. package/node_modules/asynckit/parallel.js +0 -43
  306. package/node_modules/asynckit/serial.js +0 -17
  307. package/node_modules/asynckit/serialOrdered.js +0 -75
  308. package/node_modules/asynckit/stream.js +0 -21
  309. package/node_modules/bignumber.js/CHANGELOG.md +0 -381
  310. package/node_modules/bignumber.js/LICENCE.md +0 -26
  311. package/node_modules/bignumber.js/README.md +0 -289
  312. package/node_modules/bignumber.js/bignumber.d.mts +0 -6
  313. package/node_modules/bignumber.js/bignumber.d.ts +0 -5
  314. package/node_modules/bignumber.js/bignumber.js +0 -2922
  315. package/node_modules/bignumber.js/bignumber.mjs +0 -2907
  316. package/node_modules/bignumber.js/doc/API.html +0 -2249
  317. package/node_modules/bignumber.js/package.json +0 -60
  318. package/node_modules/bignumber.js/types.d.ts +0 -1821
  319. package/node_modules/call-bind-apply-helpers/.eslintrc +0 -17
  320. package/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +0 -12
  321. package/node_modules/call-bind-apply-helpers/.nycrc +0 -9
  322. package/node_modules/call-bind-apply-helpers/CHANGELOG.md +0 -30
  323. package/node_modules/call-bind-apply-helpers/LICENSE +0 -21
  324. package/node_modules/call-bind-apply-helpers/README.md +0 -62
  325. package/node_modules/call-bind-apply-helpers/actualApply.d.ts +0 -1
  326. package/node_modules/call-bind-apply-helpers/actualApply.js +0 -10
  327. package/node_modules/call-bind-apply-helpers/applyBind.d.ts +0 -19
  328. package/node_modules/call-bind-apply-helpers/applyBind.js +0 -10
  329. package/node_modules/call-bind-apply-helpers/functionApply.d.ts +0 -1
  330. package/node_modules/call-bind-apply-helpers/functionApply.js +0 -4
  331. package/node_modules/call-bind-apply-helpers/functionCall.d.ts +0 -1
  332. package/node_modules/call-bind-apply-helpers/functionCall.js +0 -4
  333. package/node_modules/call-bind-apply-helpers/index.d.ts +0 -64
  334. package/node_modules/call-bind-apply-helpers/index.js +0 -15
  335. package/node_modules/call-bind-apply-helpers/package.json +0 -85
  336. package/node_modules/call-bind-apply-helpers/reflectApply.d.ts +0 -3
  337. package/node_modules/call-bind-apply-helpers/reflectApply.js +0 -4
  338. package/node_modules/call-bind-apply-helpers/test/index.js +0 -63
  339. package/node_modules/call-bind-apply-helpers/tsconfig.json +0 -9
  340. package/node_modules/combined-stream/License +0 -19
  341. package/node_modules/combined-stream/Readme.md +0 -138
  342. package/node_modules/combined-stream/lib/combined_stream.js +0 -208
  343. package/node_modules/combined-stream/package.json +0 -25
  344. package/node_modules/crypto-js/CONTRIBUTING.md +0 -28
  345. package/node_modules/crypto-js/LICENSE +0 -24
  346. package/node_modules/crypto-js/README.md +0 -275
  347. package/node_modules/crypto-js/aes.js +0 -234
  348. package/node_modules/crypto-js/blowfish.js +0 -471
  349. package/node_modules/crypto-js/bower.json +0 -39
  350. package/node_modules/crypto-js/cipher-core.js +0 -895
  351. package/node_modules/crypto-js/core.js +0 -807
  352. package/node_modules/crypto-js/crypto-js.js +0 -6657
  353. package/node_modules/crypto-js/docs/QuickStartGuide.wiki +0 -470
  354. package/node_modules/crypto-js/enc-base64.js +0 -136
  355. package/node_modules/crypto-js/enc-base64url.js +0 -148
  356. package/node_modules/crypto-js/enc-hex.js +0 -18
  357. package/node_modules/crypto-js/enc-latin1.js +0 -18
  358. package/node_modules/crypto-js/enc-utf16.js +0 -149
  359. package/node_modules/crypto-js/enc-utf8.js +0 -18
  360. package/node_modules/crypto-js/evpkdf.js +0 -134
  361. package/node_modules/crypto-js/format-hex.js +0 -66
  362. package/node_modules/crypto-js/format-openssl.js +0 -18
  363. package/node_modules/crypto-js/hmac-md5.js +0 -18
  364. package/node_modules/crypto-js/hmac-ripemd160.js +0 -18
  365. package/node_modules/crypto-js/hmac-sha1.js +0 -18
  366. package/node_modules/crypto-js/hmac-sha224.js +0 -18
  367. package/node_modules/crypto-js/hmac-sha256.js +0 -18
  368. package/node_modules/crypto-js/hmac-sha3.js +0 -18
  369. package/node_modules/crypto-js/hmac-sha384.js +0 -18
  370. package/node_modules/crypto-js/hmac-sha512.js +0 -18
  371. package/node_modules/crypto-js/hmac.js +0 -143
  372. package/node_modules/crypto-js/index.js +0 -18
  373. package/node_modules/crypto-js/lib-typedarrays.js +0 -76
  374. package/node_modules/crypto-js/md5.js +0 -268
  375. package/node_modules/crypto-js/mode-cfb.js +0 -80
  376. package/node_modules/crypto-js/mode-ctr-gladman.js +0 -116
  377. package/node_modules/crypto-js/mode-ctr.js +0 -58
  378. package/node_modules/crypto-js/mode-ecb.js +0 -40
  379. package/node_modules/crypto-js/mode-ofb.js +0 -54
  380. package/node_modules/crypto-js/package.json +0 -42
  381. package/node_modules/crypto-js/pad-ansix923.js +0 -49
  382. package/node_modules/crypto-js/pad-iso10126.js +0 -44
  383. package/node_modules/crypto-js/pad-iso97971.js +0 -40
  384. package/node_modules/crypto-js/pad-nopadding.js +0 -30
  385. package/node_modules/crypto-js/pad-pkcs7.js +0 -18
  386. package/node_modules/crypto-js/pad-zeropadding.js +0 -47
  387. package/node_modules/crypto-js/pbkdf2.js +0 -145
  388. package/node_modules/crypto-js/rabbit-legacy.js +0 -190
  389. package/node_modules/crypto-js/rabbit.js +0 -192
  390. package/node_modules/crypto-js/rc4.js +0 -139
  391. package/node_modules/crypto-js/ripemd160.js +0 -267
  392. package/node_modules/crypto-js/sha1.js +0 -150
  393. package/node_modules/crypto-js/sha224.js +0 -80
  394. package/node_modules/crypto-js/sha256.js +0 -199
  395. package/node_modules/crypto-js/sha3.js +0 -326
  396. package/node_modules/crypto-js/sha384.js +0 -83
  397. package/node_modules/crypto-js/sha512.js +0 -326
  398. package/node_modules/crypto-js/tripledes.js +0 -779
  399. package/node_modules/crypto-js/x64-core.js +0 -304
  400. package/node_modules/delayed-stream/.npmignore +0 -1
  401. package/node_modules/delayed-stream/License +0 -19
  402. package/node_modules/delayed-stream/Makefile +0 -7
  403. package/node_modules/delayed-stream/Readme.md +0 -141
  404. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  405. package/node_modules/delayed-stream/package.json +0 -27
  406. package/node_modules/dunder-proto/.eslintrc +0 -5
  407. package/node_modules/dunder-proto/.github/FUNDING.yml +0 -12
  408. package/node_modules/dunder-proto/.nycrc +0 -13
  409. package/node_modules/dunder-proto/CHANGELOG.md +0 -24
  410. package/node_modules/dunder-proto/LICENSE +0 -21
  411. package/node_modules/dunder-proto/README.md +0 -54
  412. package/node_modules/dunder-proto/get.d.ts +0 -5
  413. package/node_modules/dunder-proto/get.js +0 -30
  414. package/node_modules/dunder-proto/package.json +0 -76
  415. package/node_modules/dunder-proto/set.d.ts +0 -5
  416. package/node_modules/dunder-proto/set.js +0 -35
  417. package/node_modules/dunder-proto/test/get.js +0 -34
  418. package/node_modules/dunder-proto/test/index.js +0 -4
  419. package/node_modules/dunder-proto/test/set.js +0 -50
  420. package/node_modules/dunder-proto/tsconfig.json +0 -9
  421. package/node_modules/es-define-property/.eslintrc +0 -13
  422. package/node_modules/es-define-property/.github/FUNDING.yml +0 -12
  423. package/node_modules/es-define-property/.nycrc +0 -9
  424. package/node_modules/es-define-property/CHANGELOG.md +0 -29
  425. package/node_modules/es-define-property/LICENSE +0 -21
  426. package/node_modules/es-define-property/README.md +0 -49
  427. package/node_modules/es-define-property/index.d.ts +0 -3
  428. package/node_modules/es-define-property/index.js +0 -14
  429. package/node_modules/es-define-property/package.json +0 -81
  430. package/node_modules/es-define-property/test/index.js +0 -56
  431. package/node_modules/es-define-property/tsconfig.json +0 -10
  432. package/node_modules/es-errors/.eslintrc +0 -5
  433. package/node_modules/es-errors/.github/FUNDING.yml +0 -12
  434. package/node_modules/es-errors/CHANGELOG.md +0 -40
  435. package/node_modules/es-errors/LICENSE +0 -21
  436. package/node_modules/es-errors/README.md +0 -55
  437. package/node_modules/es-errors/eval.d.ts +0 -3
  438. package/node_modules/es-errors/eval.js +0 -4
  439. package/node_modules/es-errors/index.d.ts +0 -3
  440. package/node_modules/es-errors/index.js +0 -4
  441. package/node_modules/es-errors/package.json +0 -80
  442. package/node_modules/es-errors/range.d.ts +0 -3
  443. package/node_modules/es-errors/range.js +0 -4
  444. package/node_modules/es-errors/ref.d.ts +0 -3
  445. package/node_modules/es-errors/ref.js +0 -4
  446. package/node_modules/es-errors/syntax.d.ts +0 -3
  447. package/node_modules/es-errors/syntax.js +0 -4
  448. package/node_modules/es-errors/test/index.js +0 -19
  449. package/node_modules/es-errors/tsconfig.json +0 -49
  450. package/node_modules/es-errors/type.d.ts +0 -3
  451. package/node_modules/es-errors/type.js +0 -4
  452. package/node_modules/es-errors/uri.d.ts +0 -3
  453. package/node_modules/es-errors/uri.js +0 -4
  454. package/node_modules/es-object-atoms/.eslintrc +0 -16
  455. package/node_modules/es-object-atoms/.github/FUNDING.yml +0 -12
  456. package/node_modules/es-object-atoms/CHANGELOG.md +0 -44
  457. package/node_modules/es-object-atoms/LICENSE +0 -21
  458. package/node_modules/es-object-atoms/README.md +0 -63
  459. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +0 -3
  460. package/node_modules/es-object-atoms/RequireObjectCoercible.js +0 -11
  461. package/node_modules/es-object-atoms/ToObject.d.ts +0 -7
  462. package/node_modules/es-object-atoms/ToObject.js +0 -10
  463. package/node_modules/es-object-atoms/index.d.ts +0 -3
  464. package/node_modules/es-object-atoms/index.js +0 -4
  465. package/node_modules/es-object-atoms/isObject.d.ts +0 -3
  466. package/node_modules/es-object-atoms/isObject.js +0 -6
  467. package/node_modules/es-object-atoms/package.json +0 -79
  468. package/node_modules/es-object-atoms/test/index.js +0 -38
  469. package/node_modules/es-object-atoms/tsconfig.json +0 -7
  470. package/node_modules/es-set-tostringtag/.eslintrc +0 -13
  471. package/node_modules/es-set-tostringtag/.nycrc +0 -9
  472. package/node_modules/es-set-tostringtag/CHANGELOG.md +0 -67
  473. package/node_modules/es-set-tostringtag/LICENSE +0 -21
  474. package/node_modules/es-set-tostringtag/README.md +0 -53
  475. package/node_modules/es-set-tostringtag/index.d.ts +0 -10
  476. package/node_modules/es-set-tostringtag/index.js +0 -35
  477. package/node_modules/es-set-tostringtag/package.json +0 -78
  478. package/node_modules/es-set-tostringtag/test/index.js +0 -85
  479. package/node_modules/es-set-tostringtag/tsconfig.json +0 -9
  480. package/node_modules/form-data/CHANGELOG.md +0 -686
  481. package/node_modules/form-data/License +0 -19
  482. package/node_modules/form-data/README.md +0 -355
  483. package/node_modules/form-data/index.d.ts +0 -62
  484. package/node_modules/form-data/lib/browser.js +0 -4
  485. package/node_modules/form-data/lib/form_data.js +0 -506
  486. package/node_modules/form-data/lib/populate.js +0 -10
  487. package/node_modules/form-data/node_modules/mime-db/HISTORY.md +0 -507
  488. package/node_modules/form-data/node_modules/mime-db/LICENSE +0 -23
  489. package/node_modules/form-data/node_modules/mime-db/README.md +0 -100
  490. package/node_modules/form-data/node_modules/mime-db/db.json +0 -8519
  491. package/node_modules/form-data/node_modules/mime-db/index.js +0 -12
  492. package/node_modules/form-data/node_modules/mime-db/package.json +0 -60
  493. package/node_modules/form-data/node_modules/mime-types/HISTORY.md +0 -397
  494. package/node_modules/form-data/node_modules/mime-types/LICENSE +0 -23
  495. package/node_modules/form-data/node_modules/mime-types/README.md +0 -113
  496. package/node_modules/form-data/node_modules/mime-types/index.js +0 -188
  497. package/node_modules/form-data/node_modules/mime-types/package.json +0 -44
  498. package/node_modules/form-data/package.json +0 -82
  499. package/node_modules/function-bind/.eslintrc +0 -21
  500. package/node_modules/function-bind/.github/FUNDING.yml +0 -12
  501. package/node_modules/function-bind/.github/SECURITY.md +0 -3
  502. package/node_modules/function-bind/.nycrc +0 -13
  503. package/node_modules/function-bind/CHANGELOG.md +0 -136
  504. package/node_modules/function-bind/LICENSE +0 -20
  505. package/node_modules/function-bind/README.md +0 -46
  506. package/node_modules/function-bind/implementation.js +0 -84
  507. package/node_modules/function-bind/index.js +0 -5
  508. package/node_modules/function-bind/package.json +0 -87
  509. package/node_modules/function-bind/test/.eslintrc +0 -9
  510. package/node_modules/function-bind/test/index.js +0 -252
  511. package/node_modules/get-intrinsic/.eslintrc +0 -42
  512. package/node_modules/get-intrinsic/.github/FUNDING.yml +0 -12
  513. package/node_modules/get-intrinsic/.nycrc +0 -9
  514. package/node_modules/get-intrinsic/CHANGELOG.md +0 -186
  515. package/node_modules/get-intrinsic/LICENSE +0 -21
  516. package/node_modules/get-intrinsic/README.md +0 -71
  517. package/node_modules/get-intrinsic/index.js +0 -378
  518. package/node_modules/get-intrinsic/package.json +0 -97
  519. package/node_modules/get-intrinsic/test/GetIntrinsic.js +0 -274
  520. package/node_modules/get-proto/.eslintrc +0 -10
  521. package/node_modules/get-proto/.github/FUNDING.yml +0 -12
  522. package/node_modules/get-proto/.nycrc +0 -9
  523. package/node_modules/get-proto/CHANGELOG.md +0 -21
  524. package/node_modules/get-proto/LICENSE +0 -21
  525. package/node_modules/get-proto/Object.getPrototypeOf.d.ts +0 -5
  526. package/node_modules/get-proto/Object.getPrototypeOf.js +0 -6
  527. package/node_modules/get-proto/README.md +0 -50
  528. package/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +0 -3
  529. package/node_modules/get-proto/Reflect.getPrototypeOf.js +0 -4
  530. package/node_modules/get-proto/index.d.ts +0 -5
  531. package/node_modules/get-proto/index.js +0 -27
  532. package/node_modules/get-proto/package.json +0 -81
  533. package/node_modules/get-proto/test/index.js +0 -68
  534. package/node_modules/get-proto/tsconfig.json +0 -9
  535. package/node_modules/gopd/.eslintrc +0 -16
  536. package/node_modules/gopd/.github/FUNDING.yml +0 -12
  537. package/node_modules/gopd/CHANGELOG.md +0 -45
  538. package/node_modules/gopd/LICENSE +0 -21
  539. package/node_modules/gopd/README.md +0 -40
  540. package/node_modules/gopd/gOPD.d.ts +0 -1
  541. package/node_modules/gopd/gOPD.js +0 -4
  542. package/node_modules/gopd/index.d.ts +0 -5
  543. package/node_modules/gopd/index.js +0 -15
  544. package/node_modules/gopd/package.json +0 -77
  545. package/node_modules/gopd/test/index.js +0 -36
  546. package/node_modules/gopd/tsconfig.json +0 -9
  547. package/node_modules/has-symbols/.eslintrc +0 -11
  548. package/node_modules/has-symbols/.github/FUNDING.yml +0 -12
  549. package/node_modules/has-symbols/.nycrc +0 -9
  550. package/node_modules/has-symbols/CHANGELOG.md +0 -91
  551. package/node_modules/has-symbols/LICENSE +0 -21
  552. package/node_modules/has-symbols/README.md +0 -46
  553. package/node_modules/has-symbols/index.d.ts +0 -3
  554. package/node_modules/has-symbols/index.js +0 -14
  555. package/node_modules/has-symbols/package.json +0 -111
  556. package/node_modules/has-symbols/shams.d.ts +0 -3
  557. package/node_modules/has-symbols/shams.js +0 -45
  558. package/node_modules/has-symbols/test/index.js +0 -22
  559. package/node_modules/has-symbols/test/shams/core-js.js +0 -29
  560. package/node_modules/has-symbols/test/shams/get-own-property-symbols.js +0 -29
  561. package/node_modules/has-symbols/test/tests.js +0 -58
  562. package/node_modules/has-symbols/tsconfig.json +0 -10
  563. package/node_modules/has-tostringtag/.eslintrc +0 -5
  564. package/node_modules/has-tostringtag/.github/FUNDING.yml +0 -12
  565. package/node_modules/has-tostringtag/.nycrc +0 -13
  566. package/node_modules/has-tostringtag/CHANGELOG.md +0 -42
  567. package/node_modules/has-tostringtag/LICENSE +0 -21
  568. package/node_modules/has-tostringtag/README.md +0 -46
  569. package/node_modules/has-tostringtag/index.d.ts +0 -3
  570. package/node_modules/has-tostringtag/index.js +0 -8
  571. package/node_modules/has-tostringtag/package.json +0 -108
  572. package/node_modules/has-tostringtag/shams.d.ts +0 -3
  573. package/node_modules/has-tostringtag/shams.js +0 -8
  574. package/node_modules/has-tostringtag/test/index.js +0 -21
  575. package/node_modules/has-tostringtag/test/shams/core-js.js +0 -31
  576. package/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js +0 -30
  577. package/node_modules/has-tostringtag/test/tests.js +0 -15
  578. package/node_modules/has-tostringtag/tsconfig.json +0 -49
  579. package/node_modules/hasown/.github/FUNDING.yml +0 -12
  580. package/node_modules/hasown/.nycrc +0 -13
  581. package/node_modules/hasown/CHANGELOG.md +0 -58
  582. package/node_modules/hasown/LICENSE +0 -21
  583. package/node_modules/hasown/README.md +0 -40
  584. package/node_modules/hasown/eslint.config.mjs +0 -6
  585. package/node_modules/hasown/index.d.ts +0 -3
  586. package/node_modules/hasown/index.js +0 -8
  587. package/node_modules/hasown/package.json +0 -91
  588. package/node_modules/hasown/tsconfig.json +0 -6
  589. package/node_modules/json-bigint/LICENSE +0 -20
  590. package/node_modules/json-bigint/README.md +0 -240
  591. package/node_modules/json-bigint/index.js +0 -12
  592. package/node_modules/json-bigint/lib/parse.js +0 -443
  593. package/node_modules/json-bigint/lib/stringify.js +0 -384
  594. package/node_modules/json-bigint/package.json +0 -34
  595. package/node_modules/math-intrinsics/.eslintrc +0 -16
  596. package/node_modules/math-intrinsics/.github/FUNDING.yml +0 -12
  597. package/node_modules/math-intrinsics/CHANGELOG.md +0 -24
  598. package/node_modules/math-intrinsics/LICENSE +0 -21
  599. package/node_modules/math-intrinsics/README.md +0 -50
  600. package/node_modules/math-intrinsics/abs.d.ts +0 -1
  601. package/node_modules/math-intrinsics/abs.js +0 -4
  602. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +0 -3
  603. package/node_modules/math-intrinsics/constants/maxArrayLength.js +0 -4
  604. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +0 -3
  605. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +0 -5
  606. package/node_modules/math-intrinsics/constants/maxValue.d.ts +0 -3
  607. package/node_modules/math-intrinsics/constants/maxValue.js +0 -5
  608. package/node_modules/math-intrinsics/floor.d.ts +0 -1
  609. package/node_modules/math-intrinsics/floor.js +0 -4
  610. package/node_modules/math-intrinsics/isFinite.d.ts +0 -3
  611. package/node_modules/math-intrinsics/isFinite.js +0 -12
  612. package/node_modules/math-intrinsics/isInteger.d.ts +0 -3
  613. package/node_modules/math-intrinsics/isInteger.js +0 -16
  614. package/node_modules/math-intrinsics/isNaN.d.ts +0 -1
  615. package/node_modules/math-intrinsics/isNaN.js +0 -6
  616. package/node_modules/math-intrinsics/isNegativeZero.d.ts +0 -3
  617. package/node_modules/math-intrinsics/isNegativeZero.js +0 -6
  618. package/node_modules/math-intrinsics/max.d.ts +0 -1
  619. package/node_modules/math-intrinsics/max.js +0 -4
  620. package/node_modules/math-intrinsics/min.d.ts +0 -1
  621. package/node_modules/math-intrinsics/min.js +0 -4
  622. package/node_modules/math-intrinsics/mod.d.ts +0 -3
  623. package/node_modules/math-intrinsics/mod.js +0 -9
  624. package/node_modules/math-intrinsics/package.json +0 -86
  625. package/node_modules/math-intrinsics/pow.d.ts +0 -1
  626. package/node_modules/math-intrinsics/pow.js +0 -4
  627. package/node_modules/math-intrinsics/round.d.ts +0 -1
  628. package/node_modules/math-intrinsics/round.js +0 -4
  629. package/node_modules/math-intrinsics/sign.d.ts +0 -3
  630. package/node_modules/math-intrinsics/sign.js +0 -11
  631. package/node_modules/math-intrinsics/test/index.js +0 -192
  632. package/node_modules/math-intrinsics/tsconfig.json +0 -3
  633. package/node_modules/pako/LICENSE +0 -21
  634. package/node_modules/pako/README.md +0 -155
  635. package/node_modules/pako/dist/pako.es5.js +0 -6760
  636. package/node_modules/pako/dist/pako.es5.min.js +0 -2
  637. package/node_modules/pako/dist/pako.esm.mjs +0 -6945
  638. package/node_modules/pako/dist/pako.js +0 -6964
  639. package/node_modules/pako/dist/pako.min.js +0 -2
  640. package/node_modules/pako/dist/pako_deflate.es5.js +0 -3953
  641. package/node_modules/pako/dist/pako_deflate.es5.min.js +0 -2
  642. package/node_modules/pako/dist/pako_deflate.js +0 -4154
  643. package/node_modules/pako/dist/pako_deflate.min.js +0 -2
  644. package/node_modules/pako/dist/pako_inflate.es5.js +0 -3272
  645. package/node_modules/pako/dist/pako_inflate.es5.min.js +0 -2
  646. package/node_modules/pako/dist/pako_inflate.js +0 -3279
  647. package/node_modules/pako/dist/pako_inflate.min.js +0 -2
  648. package/node_modules/pako/index.js +0 -18
  649. package/node_modules/pako/lib/deflate.js +0 -387
  650. package/node_modules/pako/lib/inflate.js +0 -456
  651. package/node_modules/pako/lib/utils/common.js +0 -48
  652. package/node_modules/pako/lib/utils/strings.js +0 -174
  653. package/node_modules/pako/lib/zlib/README +0 -59
  654. package/node_modules/pako/lib/zlib/adler32.js +0 -51
  655. package/node_modules/pako/lib/zlib/constants.js +0 -68
  656. package/node_modules/pako/lib/zlib/crc32.js +0 -59
  657. package/node_modules/pako/lib/zlib/deflate.js +0 -2069
  658. package/node_modules/pako/lib/zlib/gzheader.js +0 -58
  659. package/node_modules/pako/lib/zlib/inffast.js +0 -344
  660. package/node_modules/pako/lib/zlib/inflate.js +0 -1575
  661. package/node_modules/pako/lib/zlib/inftrees.js +0 -340
  662. package/node_modules/pako/lib/zlib/messages.js +0 -32
  663. package/node_modules/pako/lib/zlib/trees.js +0 -1179
  664. package/node_modules/pako/lib/zlib/zstream.js +0 -47
  665. package/node_modules/pako/package.json +0 -73
  666. package/node_modules/semver/LICENSE +0 -15
  667. package/node_modules/semver/README.md +0 -680
  668. package/node_modules/semver/bin/semver.js +0 -195
  669. package/node_modules/semver/classes/comparator.js +0 -143
  670. package/node_modules/semver/classes/index.js +0 -7
  671. package/node_modules/semver/classes/range.js +0 -577
  672. package/node_modules/semver/classes/semver.js +0 -350
  673. package/node_modules/semver/functions/clean.js +0 -8
  674. package/node_modules/semver/functions/cmp.js +0 -54
  675. package/node_modules/semver/functions/coerce.js +0 -62
  676. package/node_modules/semver/functions/compare-build.js +0 -9
  677. package/node_modules/semver/functions/compare-loose.js +0 -5
  678. package/node_modules/semver/functions/compare.js +0 -7
  679. package/node_modules/semver/functions/diff.js +0 -60
  680. package/node_modules/semver/functions/eq.js +0 -5
  681. package/node_modules/semver/functions/gt.js +0 -5
  682. package/node_modules/semver/functions/gte.js +0 -5
  683. package/node_modules/semver/functions/inc.js +0 -21
  684. package/node_modules/semver/functions/lt.js +0 -5
  685. package/node_modules/semver/functions/lte.js +0 -5
  686. package/node_modules/semver/functions/major.js +0 -5
  687. package/node_modules/semver/functions/minor.js +0 -5
  688. package/node_modules/semver/functions/neq.js +0 -5
  689. package/node_modules/semver/functions/parse.js +0 -18
  690. package/node_modules/semver/functions/patch.js +0 -5
  691. package/node_modules/semver/functions/prerelease.js +0 -8
  692. package/node_modules/semver/functions/rcompare.js +0 -5
  693. package/node_modules/semver/functions/rsort.js +0 -5
  694. package/node_modules/semver/functions/satisfies.js +0 -12
  695. package/node_modules/semver/functions/sort.js +0 -5
  696. package/node_modules/semver/functions/truncate.js +0 -48
  697. package/node_modules/semver/functions/valid.js +0 -8
  698. package/node_modules/semver/index.js +0 -93
  699. package/node_modules/semver/internal/constants.js +0 -37
  700. package/node_modules/semver/internal/debug.js +0 -11
  701. package/node_modules/semver/internal/identifiers.js +0 -29
  702. package/node_modules/semver/internal/lrucache.js +0 -42
  703. package/node_modules/semver/internal/parse-options.js +0 -17
  704. package/node_modules/semver/internal/re.js +0 -223
  705. package/node_modules/semver/package.json +0 -78
  706. package/node_modules/semver/preload.js +0 -4
  707. package/node_modules/semver/range.bnf +0 -17
  708. package/node_modules/semver/ranges/gtr.js +0 -6
  709. package/node_modules/semver/ranges/intersects.js +0 -9
  710. package/node_modules/semver/ranges/ltr.js +0 -6
  711. package/node_modules/semver/ranges/max-satisfying.js +0 -27
  712. package/node_modules/semver/ranges/min-satisfying.js +0 -26
  713. package/node_modules/semver/ranges/min-version.js +0 -63
  714. package/node_modules/semver/ranges/outside.js +0 -82
  715. package/node_modules/semver/ranges/simplify.js +0 -49
  716. package/node_modules/semver/ranges/subset.js +0 -249
  717. package/node_modules/semver/ranges/to-comparators.js +0 -10
  718. package/node_modules/semver/ranges/valid.js +0 -13
  719. package/node_modules/spark-md5/LICENSE +0 -13
  720. package/node_modules/spark-md5/README.md +0 -191
  721. package/node_modules/spark-md5/package.json +0 -35
  722. package/node_modules/spark-md5/spark-md5.js +0 -751
  723. package/node_modules/spark-md5/spark-md5.min.js +0 -1
  724. package/node_modules/tldts/LICENSE +0 -13
  725. package/node_modules/tldts/README.md +0 -327
  726. package/node_modules/tldts/bin/cli.js +0 -21
  727. package/node_modules/tldts/dist/cjs/index.js +0 -666
  728. package/node_modules/tldts/dist/cjs/index.js.map +0 -1
  729. package/node_modules/tldts/dist/cjs/src/data/trie.js +0 -14
  730. package/node_modules/tldts/dist/cjs/src/data/trie.js.map +0 -1
  731. package/node_modules/tldts/dist/cjs/src/suffix-trie.js +0 -67
  732. package/node_modules/tldts/dist/cjs/src/suffix-trie.js.map +0 -1
  733. package/node_modules/tldts/dist/cjs/tsconfig.tsbuildinfo +0 -1
  734. package/node_modules/tldts/dist/es6/index.js +0 -33
  735. package/node_modules/tldts/dist/es6/index.js.map +0 -1
  736. package/node_modules/tldts/dist/es6/src/data/trie.js +0 -11
  737. package/node_modules/tldts/dist/es6/src/data/trie.js.map +0 -1
  738. package/node_modules/tldts/dist/es6/src/suffix-trie.js +0 -64
  739. package/node_modules/tldts/dist/es6/src/suffix-trie.js.map +0 -1
  740. package/node_modules/tldts/dist/es6/tsconfig.bundle.tsbuildinfo +0 -1
  741. package/node_modules/tldts/dist/index.cjs.min.js +0 -2
  742. package/node_modules/tldts/dist/index.cjs.min.js.map +0 -1
  743. package/node_modules/tldts/dist/index.esm.min.js +0 -2
  744. package/node_modules/tldts/dist/index.esm.min.js.map +0 -1
  745. package/node_modules/tldts/dist/index.umd.min.js +0 -2
  746. package/node_modules/tldts/dist/index.umd.min.js.map +0 -1
  747. package/node_modules/tldts/dist/types/index.d.ts +0 -7
  748. package/node_modules/tldts/dist/types/src/data/trie.d.ts +0 -5
  749. package/node_modules/tldts/dist/types/src/suffix-trie.d.ts +0 -5
  750. package/node_modules/tldts/index.ts +0 -62
  751. package/node_modules/tldts/package.json +0 -91
  752. package/node_modules/tldts/src/data/trie.ts +0 -14
  753. package/node_modules/tldts/src/suffix-trie.ts +0 -110
  754. package/node_modules/tldts-core/LICENSE +0 -13
  755. package/node_modules/tldts-core/README.md +0 -3
  756. package/node_modules/tldts-core/dist/cjs/index.js +0 -561
  757. package/node_modules/tldts-core/dist/cjs/index.js.map +0 -1
  758. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js +0 -15
  759. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js.map +0 -1
  760. package/node_modules/tldts-core/dist/cjs/src/domain.js +0 -83
  761. package/node_modules/tldts-core/dist/cjs/src/domain.js.map +0 -1
  762. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js +0 -149
  763. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js.map +0 -1
  764. package/node_modules/tldts-core/dist/cjs/src/factory.js +0 -104
  765. package/node_modules/tldts-core/dist/cjs/src/factory.js.map +0 -1
  766. package/node_modules/tldts-core/dist/cjs/src/is-ip.js +0 -72
  767. package/node_modules/tldts-core/dist/cjs/src/is-ip.js.map +0 -1
  768. package/node_modules/tldts-core/dist/cjs/src/is-valid.js +0 -69
  769. package/node_modules/tldts-core/dist/cjs/src/is-valid.js.map +0 -1
  770. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js +0 -69
  771. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js.map +0 -1
  772. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js +0 -3
  773. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js.map +0 -1
  774. package/node_modules/tldts-core/dist/cjs/src/options.js +0 -22
  775. package/node_modules/tldts-core/dist/cjs/src/options.js.map +0 -1
  776. package/node_modules/tldts-core/dist/cjs/src/subdomain.js +0 -14
  777. package/node_modules/tldts-core/dist/cjs/src/subdomain.js.map +0 -1
  778. package/node_modules/tldts-core/dist/cjs/tsconfig.tsbuildinfo +0 -1
  779. package/node_modules/tldts-core/dist/es6/index.js +0 -4
  780. package/node_modules/tldts-core/dist/es6/index.js.map +0 -1
  781. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js +0 -12
  782. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js.map +0 -1
  783. package/node_modules/tldts-core/dist/es6/src/domain.js +0 -80
  784. package/node_modules/tldts-core/dist/es6/src/domain.js.map +0 -1
  785. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js +0 -146
  786. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js.map +0 -1
  787. package/node_modules/tldts-core/dist/es6/src/factory.js +0 -99
  788. package/node_modules/tldts-core/dist/es6/src/factory.js.map +0 -1
  789. package/node_modules/tldts-core/dist/es6/src/is-ip.js +0 -69
  790. package/node_modules/tldts-core/dist/es6/src/is-ip.js.map +0 -1
  791. package/node_modules/tldts-core/dist/es6/src/is-valid.js +0 -66
  792. package/node_modules/tldts-core/dist/es6/src/is-valid.js.map +0 -1
  793. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js +0 -66
  794. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js.map +0 -1
  795. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js +0 -2
  796. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js.map +0 -1
  797. package/node_modules/tldts-core/dist/es6/src/options.js +0 -19
  798. package/node_modules/tldts-core/dist/es6/src/options.js.map +0 -1
  799. package/node_modules/tldts-core/dist/es6/src/subdomain.js +0 -11
  800. package/node_modules/tldts-core/dist/es6/src/subdomain.js.map +0 -1
  801. package/node_modules/tldts-core/dist/es6/tsconfig.bundle.tsbuildinfo +0 -1
  802. package/node_modules/tldts-core/dist/types/index.d.ts +0 -4
  803. package/node_modules/tldts-core/dist/types/src/domain-without-suffix.d.ts +0 -6
  804. package/node_modules/tldts-core/dist/types/src/domain.d.ts +0 -5
  805. package/node_modules/tldts-core/dist/types/src/extract-hostname.d.ts +0 -5
  806. package/node_modules/tldts-core/dist/types/src/factory.d.ts +0 -28
  807. package/node_modules/tldts-core/dist/types/src/is-ip.d.ts +0 -6
  808. package/node_modules/tldts-core/dist/types/src/is-valid.d.ts +0 -15
  809. package/node_modules/tldts-core/dist/types/src/lookup/fast-path.d.ts +0 -2
  810. package/node_modules/tldts-core/dist/types/src/lookup/interface.d.ts +0 -9
  811. package/node_modules/tldts-core/dist/types/src/options.d.ts +0 -10
  812. package/node_modules/tldts-core/dist/types/src/subdomain.d.ts +0 -4
  813. package/node_modules/tldts-core/index.ts +0 -10
  814. package/node_modules/tldts-core/package.json +0 -68
  815. package/node_modules/tldts-core/src/domain-without-suffix.ts +0 -14
  816. package/node_modules/tldts-core/src/domain.ts +0 -100
  817. package/node_modules/tldts-core/src/extract-hostname.ts +0 -170
  818. package/node_modules/tldts-core/src/factory.ts +0 -160
  819. package/node_modules/tldts-core/src/is-ip.ts +0 -87
  820. package/node_modules/tldts-core/src/is-valid.ts +0 -79
  821. package/node_modules/tldts-core/src/lookup/fast-path.ts +0 -80
  822. package/node_modules/tldts-core/src/lookup/interface.ts +0 -10
  823. package/node_modules/tldts-core/src/options.ts +0 -39
  824. package/node_modules/tldts-core/src/subdomain.ts +0 -11
  825. package/node_modules/tough-cookie/LICENSE +0 -12
  826. package/node_modules/tough-cookie/README.md +0 -154
  827. package/node_modules/tough-cookie/dist/cookie/canonicalDomain.d.ts +0 -33
  828. package/node_modules/tough-cookie/dist/cookie/canonicalDomain.js +0 -65
  829. package/node_modules/tough-cookie/dist/cookie/constants.d.ts +0 -54
  830. package/node_modules/tough-cookie/dist/cookie/constants.js +0 -38
  831. package/node_modules/tough-cookie/dist/cookie/cookie.d.ts +0 -326
  832. package/node_modules/tough-cookie/dist/cookie/cookie.js +0 -831
  833. package/node_modules/tough-cookie/dist/cookie/cookieCompare.d.ts +0 -58
  834. package/node_modules/tough-cookie/dist/cookie/cookieCompare.js +0 -84
  835. package/node_modules/tough-cookie/dist/cookie/cookieJar.d.ts +0 -621
  836. package/node_modules/tough-cookie/dist/cookie/cookieJar.js +0 -1000
  837. package/node_modules/tough-cookie/dist/cookie/defaultPath.d.ts +0 -40
  838. package/node_modules/tough-cookie/dist/cookie/defaultPath.js +0 -60
  839. package/node_modules/tough-cookie/dist/cookie/domainMatch.d.ts +0 -38
  840. package/node_modules/tough-cookie/dist/cookie/domainMatch.js +0 -94
  841. package/node_modules/tough-cookie/dist/cookie/formatDate.d.ts +0 -15
  842. package/node_modules/tough-cookie/dist/cookie/formatDate.js +0 -20
  843. package/node_modules/tough-cookie/dist/cookie/index.d.ts +0 -29
  844. package/node_modules/tough-cookie/dist/cookie/index.js +0 -54
  845. package/node_modules/tough-cookie/dist/cookie/parseDate.d.ts +0 -103
  846. package/node_modules/tough-cookie/dist/cookie/parseDate.js +0 -323
  847. package/node_modules/tough-cookie/dist/cookie/permutePath.d.ts +0 -14
  848. package/node_modules/tough-cookie/dist/cookie/permutePath.js +0 -32
  849. package/node_modules/tough-cookie/dist/getPublicSuffix.d.ts +0 -55
  850. package/node_modules/tough-cookie/dist/getPublicSuffix.js +0 -71
  851. package/node_modules/tough-cookie/dist/memstore.d.ts +0 -220
  852. package/node_modules/tough-cookie/dist/memstore.js +0 -187
  853. package/node_modules/tough-cookie/dist/pathMatch.d.ts +0 -17
  854. package/node_modules/tough-cookie/dist/pathMatch.js +0 -40
  855. package/node_modules/tough-cookie/dist/permuteDomain.d.ts +0 -15
  856. package/node_modules/tough-cookie/dist/permuteDomain.js +0 -44
  857. package/node_modules/tough-cookie/dist/store.d.ts +0 -211
  858. package/node_modules/tough-cookie/dist/store.js +0 -76
  859. package/node_modules/tough-cookie/dist/utils.d.ts +0 -34
  860. package/node_modules/tough-cookie/dist/utils.js +0 -99
  861. package/node_modules/tough-cookie/dist/validators.d.ts +0 -24
  862. package/node_modules/tough-cookie/dist/validators.js +0 -90
  863. package/node_modules/tough-cookie/dist/version.d.ts +0 -5
  864. package/node_modules/tough-cookie/dist/version.js +0 -8
  865. package/node_modules/tough-cookie/package.json +0 -144
  866. package/node_modules/ws/LICENSE +0 -20
  867. package/node_modules/ws/README.md +0 -548
  868. package/node_modules/ws/browser.js +0 -8
  869. package/node_modules/ws/index.js +0 -22
  870. package/node_modules/ws/lib/buffer-util.js +0 -131
  871. package/node_modules/ws/lib/constants.js +0 -19
  872. package/node_modules/ws/lib/event-target.js +0 -292
  873. package/node_modules/ws/lib/extension.js +0 -203
  874. package/node_modules/ws/lib/limiter.js +0 -55
  875. package/node_modules/ws/lib/permessage-deflate.js +0 -530
  876. package/node_modules/ws/lib/receiver.js +0 -743
  877. package/node_modules/ws/lib/sender.js +0 -607
  878. package/node_modules/ws/lib/stream.js +0 -161
  879. package/node_modules/ws/lib/subprotocol.js +0 -62
  880. package/node_modules/ws/lib/validation.js +0 -152
  881. package/node_modules/ws/lib/websocket-server.js +0 -562
  882. package/node_modules/ws/lib/websocket.js +0 -1407
  883. package/node_modules/ws/package.json +0 -74
  884. package/node_modules/ws/wrapper.mjs +0 -21
  885. package/node_modules/zca-js/.prettierrc +0 -5
  886. package/node_modules/zca-js/CODE_OF_CONDUCT.md +0 -163
  887. package/node_modules/zca-js/CONTRIBUTING.md +0 -470
  888. package/node_modules/zca-js/LICENSE +0 -21
  889. package/node_modules/zca-js/README.md +0 -225
  890. package/node_modules/zca-js/SECURITY.md +0 -83
  891. package/node_modules/zca-js/dist/Errors/ZaloApiError.d.ts +0 -4
  892. package/node_modules/zca-js/dist/Errors/ZaloApiError.js +0 -7
  893. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRAborted.d.ts +0 -4
  894. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRAborted.js +0 -7
  895. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRDeclined.d.ts +0 -4
  896. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRDeclined.js +0 -7
  897. package/node_modules/zca-js/dist/Errors/ZaloApiMissingImageMetadataGetter.d.ts +0 -4
  898. package/node_modules/zca-js/dist/Errors/ZaloApiMissingImageMetadataGetter.js +0 -7
  899. package/node_modules/zca-js/dist/Errors/index.d.ts +0 -4
  900. package/node_modules/zca-js/dist/Errors/index.js +0 -4
  901. package/node_modules/zca-js/dist/apis/acceptFriendRequest.d.ts +0 -2
  902. package/node_modules/zca-js/dist/apis/acceptFriendRequest.js +0 -28
  903. package/node_modules/zca-js/dist/apis/addGroupBlockedMember.d.ts +0 -2
  904. package/node_modules/zca-js/dist/apis/addGroupBlockedMember.js +0 -28
  905. package/node_modules/zca-js/dist/apis/addGroupDeputy.d.ts +0 -2
  906. package/node_modules/zca-js/dist/apis/addGroupDeputy.js +0 -30
  907. package/node_modules/zca-js/dist/apis/addPollOptions.d.ts +0 -14
  908. package/node_modules/zca-js/dist/apis/addPollOptions.js +0 -26
  909. package/node_modules/zca-js/dist/apis/addQuickMessage.d.ts +0 -11
  910. package/node_modules/zca-js/dist/apis/addQuickMessage.js +0 -60
  911. package/node_modules/zca-js/dist/apis/addReaction.d.ts +0 -18
  912. package/node_modules/zca-js/dist/apis/addReaction.js +0 -294
  913. package/node_modules/zca-js/dist/apis/addUnreadMark.d.ts +0 -8
  914. package/node_modules/zca-js/dist/apis/addUnreadMark.js +0 -52
  915. package/node_modules/zca-js/dist/apis/addUserToGroup.d.ts +0 -5
  916. package/node_modules/zca-js/dist/apis/addUserToGroup.js +0 -34
  917. package/node_modules/zca-js/dist/apis/blockUser.d.ts +0 -2
  918. package/node_modules/zca-js/dist/apis/blockUser.js +0 -28
  919. package/node_modules/zca-js/dist/apis/blockViewFeed.d.ts +0 -2
  920. package/node_modules/zca-js/dist/apis/blockViewFeed.js +0 -30
  921. package/node_modules/zca-js/dist/apis/changeAccountAvatar.d.ts +0 -3
  922. package/node_modules/zca-js/dist/apis/changeAccountAvatar.js +0 -52
  923. package/node_modules/zca-js/dist/apis/changeFriendAlias.d.ts +0 -2
  924. package/node_modules/zca-js/dist/apis/changeFriendAlias.js +0 -27
  925. package/node_modules/zca-js/dist/apis/changeGroupAvatar.d.ts +0 -3
  926. package/node_modules/zca-js/dist/apis/changeGroupAvatar.js +0 -44
  927. package/node_modules/zca-js/dist/apis/changeGroupName.d.ts +0 -4
  928. package/node_modules/zca-js/dist/apis/changeGroupName.js +0 -32
  929. package/node_modules/zca-js/dist/apis/changeGroupOwner.d.ts +0 -4
  930. package/node_modules/zca-js/dist/apis/changeGroupOwner.js +0 -30
  931. package/node_modules/zca-js/dist/apis/createAutoReply.d.ts +0 -14
  932. package/node_modules/zca-js/dist/apis/createAutoReply.js +0 -37
  933. package/node_modules/zca-js/dist/apis/createBankAccount.d.ts +0 -8
  934. package/node_modules/zca-js/dist/apis/createBankAccount.js +0 -32
  935. package/node_modules/zca-js/dist/apis/createCatalog.d.ts +0 -7
  936. package/node_modules/zca-js/dist/apis/createCatalog.js +0 -29
  937. package/node_modules/zca-js/dist/apis/createGroup.d.ts +0 -28
  938. package/node_modules/zca-js/dist/apis/createGroup.js +0 -43
  939. package/node_modules/zca-js/dist/apis/createNote.d.ts +0 -7
  940. package/node_modules/zca-js/dist/apis/createNote.js +0 -47
  941. package/node_modules/zca-js/dist/apis/createPoll.d.ts +0 -36
  942. package/node_modules/zca-js/dist/apis/createPoll.js +0 -40
  943. package/node_modules/zca-js/dist/apis/createProductCatalog.d.ts +0 -23
  944. package/node_modules/zca-js/dist/apis/createProductCatalog.js +0 -50
  945. package/node_modules/zca-js/dist/apis/createReminder.d.ts +0 -12
  946. package/node_modules/zca-js/dist/apis/createReminder.js +0 -63
  947. package/node_modules/zca-js/dist/apis/custom.d.ts +0 -9
  948. package/node_modules/zca-js/dist/apis/custom.js +0 -15
  949. package/node_modules/zca-js/dist/apis/deleteAutoReply.d.ts +0 -5
  950. package/node_modules/zca-js/dist/apis/deleteAutoReply.js +0 -29
  951. package/node_modules/zca-js/dist/apis/deleteAvatar.d.ts +0 -9
  952. package/node_modules/zca-js/dist/apis/deleteAvatar.js +0 -27
  953. package/node_modules/zca-js/dist/apis/deleteBankAccount.d.ts +0 -11
  954. package/node_modules/zca-js/dist/apis/deleteBankAccount.js +0 -32
  955. package/node_modules/zca-js/dist/apis/deleteCatalog.d.ts +0 -2
  956. package/node_modules/zca-js/dist/apis/deleteCatalog.js +0 -28
  957. package/node_modules/zca-js/dist/apis/deleteChat.d.ts +0 -19
  958. package/node_modules/zca-js/dist/apis/deleteChat.js +0 -50
  959. package/node_modules/zca-js/dist/apis/deleteGroupInviteBox.d.ts +0 -9
  960. package/node_modules/zca-js/dist/apis/deleteGroupInviteBox.js +0 -27
  961. package/node_modules/zca-js/dist/apis/deleteMessage.d.ts +0 -14
  962. package/node_modules/zca-js/dist/apis/deleteMessage.js +0 -52
  963. package/node_modules/zca-js/dist/apis/deleteProductCatalog.d.ts +0 -10
  964. package/node_modules/zca-js/dist/apis/deleteProductCatalog.js +0 -31
  965. package/node_modules/zca-js/dist/apis/disableGroupLink.d.ts +0 -2
  966. package/node_modules/zca-js/dist/apis/disableGroupLink.js +0 -24
  967. package/node_modules/zca-js/dist/apis/disperseGroup.d.ts +0 -2
  968. package/node_modules/zca-js/dist/apis/disperseGroup.js +0 -28
  969. package/node_modules/zca-js/dist/apis/editNote.d.ts +0 -17
  970. package/node_modules/zca-js/dist/apis/editNote.js +0 -46
  971. package/node_modules/zca-js/dist/apis/editReminder.d.ts +0 -13
  972. package/node_modules/zca-js/dist/apis/editReminder.js +0 -61
  973. package/node_modules/zca-js/dist/apis/enableGroupLink.d.ts +0 -6
  974. package/node_modules/zca-js/dist/apis/enableGroupLink.js +0 -25
  975. package/node_modules/zca-js/dist/apis/fetchAccountInfo.d.ts +0 -5
  976. package/node_modules/zca-js/dist/apis/fetchAccountInfo.js +0 -10
  977. package/node_modules/zca-js/dist/apis/findUser.d.ts +0 -3
  978. package/node_modules/zca-js/dist/apis/findUser.js +0 -42
  979. package/node_modules/zca-js/dist/apis/findUserByUsername.d.ts +0 -3
  980. package/node_modules/zca-js/dist/apis/findUserByUsername.js +0 -27
  981. package/node_modules/zca-js/dist/apis/forwardMessage.d.ts +0 -24
  982. package/node_modules/zca-js/dist/apis/forwardMessage.js +0 -114
  983. package/node_modules/zca-js/dist/apis/getAliasList.d.ts +0 -8
  984. package/node_modules/zca-js/dist/apis/getAliasList.js +0 -27
  985. package/node_modules/zca-js/dist/apis/getAllFriends.d.ts +0 -3
  986. package/node_modules/zca-js/dist/apis/getAllFriends.js +0 -34
  987. package/node_modules/zca-js/dist/apis/getAllGroups.d.ts +0 -7
  988. package/node_modules/zca-js/dist/apis/getAllGroups.js +0 -10
  989. package/node_modules/zca-js/dist/apis/getArchivedChatList.d.ts +0 -5
  990. package/node_modules/zca-js/dist/apis/getArchivedChatList.js +0 -23
  991. package/node_modules/zca-js/dist/apis/getAutoDeleteChat.d.ts +0 -9
  992. package/node_modules/zca-js/dist/apis/getAutoDeleteChat.js +0 -21
  993. package/node_modules/zca-js/dist/apis/getAutoReplyList.d.ts +0 -6
  994. package/node_modules/zca-js/dist/apis/getAutoReplyList.js +0 -24
  995. package/node_modules/zca-js/dist/apis/getAvatarList.d.ts +0 -12
  996. package/node_modules/zca-js/dist/apis/getAvatarList.js +0 -28
  997. package/node_modules/zca-js/dist/apis/getAvatarUrlProfile.d.ts +0 -7
  998. package/node_modules/zca-js/dist/apis/getAvatarUrlProfile.js +0 -30
  999. package/node_modules/zca-js/dist/apis/getBizAccount.d.ts +0 -24
  1000. package/node_modules/zca-js/dist/apis/getBizAccount.js +0 -27
  1001. package/node_modules/zca-js/dist/apis/getCatalogList.d.ts +0 -18
  1002. package/node_modules/zca-js/dist/apis/getCatalogList.js +0 -32
  1003. package/node_modules/zca-js/dist/apis/getCloseFriends.d.ts +0 -3
  1004. package/node_modules/zca-js/dist/apis/getCloseFriends.js +0 -20
  1005. package/node_modules/zca-js/dist/apis/getContext.d.ts +0 -1
  1006. package/node_modules/zca-js/dist/apis/getContext.js +0 -4
  1007. package/node_modules/zca-js/dist/apis/getCookie.d.ts +0 -1
  1008. package/node_modules/zca-js/dist/apis/getCookie.js +0 -9
  1009. package/node_modules/zca-js/dist/apis/getFriendBoardList.d.ts +0 -5
  1010. package/node_modules/zca-js/dist/apis/getFriendBoardList.js +0 -26
  1011. package/node_modules/zca-js/dist/apis/getFriendOnlines.d.ts +0 -10
  1012. package/node_modules/zca-js/dist/apis/getFriendOnlines.js +0 -35
  1013. package/node_modules/zca-js/dist/apis/getFriendRecommendations.d.ts +0 -42
  1014. package/node_modules/zca-js/dist/apis/getFriendRecommendations.js +0 -27
  1015. package/node_modules/zca-js/dist/apis/getFriendRequestStatus.d.ts +0 -8
  1016. package/node_modules/zca-js/dist/apis/getFriendRequestStatus.js +0 -25
  1017. package/node_modules/zca-js/dist/apis/getFullAvatar.d.ts +0 -5
  1018. package/node_modules/zca-js/dist/apis/getFullAvatar.js +0 -25
  1019. package/node_modules/zca-js/dist/apis/getGroupBlockedMember.d.ts +0 -23
  1020. package/node_modules/zca-js/dist/apis/getGroupBlockedMember.js +0 -29
  1021. package/node_modules/zca-js/dist/apis/getGroupChatHistory.d.ts +0 -8
  1022. package/node_modules/zca-js/dist/apis/getGroupChatHistory.js +0 -36
  1023. package/node_modules/zca-js/dist/apis/getGroupInfo.d.ts +0 -16
  1024. package/node_modules/zca-js/dist/apis/getGroupInfo.js +0 -32
  1025. package/node_modules/zca-js/dist/apis/getGroupInviteBoxInfo.d.ts +0 -32
  1026. package/node_modules/zca-js/dist/apis/getGroupInviteBoxInfo.js +0 -38
  1027. package/node_modules/zca-js/dist/apis/getGroupInviteBoxList.d.ts +0 -38
  1028. package/node_modules/zca-js/dist/apis/getGroupInviteBoxList.js +0 -31
  1029. package/node_modules/zca-js/dist/apis/getGroupLinkDetail.d.ts +0 -9
  1030. package/node_modules/zca-js/dist/apis/getGroupLinkDetail.js +0 -25
  1031. package/node_modules/zca-js/dist/apis/getGroupLinkInfo.d.ts +0 -34
  1032. package/node_modules/zca-js/dist/apis/getGroupLinkInfo.js +0 -28
  1033. package/node_modules/zca-js/dist/apis/getGroupMembersInfo.d.ts +0 -17
  1034. package/node_modules/zca-js/dist/apis/getGroupMembersInfo.js +0 -24
  1035. package/node_modules/zca-js/dist/apis/getHiddenConversations.d.ts +0 -11
  1036. package/node_modules/zca-js/dist/apis/getHiddenConversations.js +0 -23
  1037. package/node_modules/zca-js/dist/apis/getLabels.d.ts +0 -7
  1038. package/node_modules/zca-js/dist/apis/getLabels.js +0 -28
  1039. package/node_modules/zca-js/dist/apis/getListBank.d.ts +0 -5
  1040. package/node_modules/zca-js/dist/apis/getListBank.js +0 -20
  1041. package/node_modules/zca-js/dist/apis/getListBankAccount.d.ts +0 -7
  1042. package/node_modules/zca-js/dist/apis/getListBankAccount.js +0 -27
  1043. package/node_modules/zca-js/dist/apis/getListBoard.d.ts +0 -21
  1044. package/node_modules/zca-js/dist/apis/getListBoard.js +0 -45
  1045. package/node_modules/zca-js/dist/apis/getListDevice.d.ts +0 -10
  1046. package/node_modules/zca-js/dist/apis/getListDevice.js +0 -22
  1047. package/node_modules/zca-js/dist/apis/getListReminder.d.ts +0 -28
  1048. package/node_modules/zca-js/dist/apis/getListReminder.js +0 -47
  1049. package/node_modules/zca-js/dist/apis/getMultiUsersByPhones.d.ts +0 -5
  1050. package/node_modules/zca-js/dist/apis/getMultiUsersByPhones.js +0 -39
  1051. package/node_modules/zca-js/dist/apis/getMute.d.ts +0 -13
  1052. package/node_modules/zca-js/dist/apis/getMute.js +0 -22
  1053. package/node_modules/zca-js/dist/apis/getOwnId.d.ts +0 -1
  1054. package/node_modules/zca-js/dist/apis/getOwnId.js +0 -4
  1055. package/node_modules/zca-js/dist/apis/getPendingGroupMembers.d.ts +0 -11
  1056. package/node_modules/zca-js/dist/apis/getPendingGroupMembers.js +0 -27
  1057. package/node_modules/zca-js/dist/apis/getPinConversations.d.ts +0 -5
  1058. package/node_modules/zca-js/dist/apis/getPinConversations.js +0 -22
  1059. package/node_modules/zca-js/dist/apis/getPollDetail.d.ts +0 -3
  1060. package/node_modules/zca-js/dist/apis/getPollDetail.js +0 -30
  1061. package/node_modules/zca-js/dist/apis/getProductCatalogList.d.ts +0 -20
  1062. package/node_modules/zca-js/dist/apis/getProductCatalogList.js +0 -33
  1063. package/node_modules/zca-js/dist/apis/getQR.d.ts +0 -4
  1064. package/node_modules/zca-js/dist/apis/getQR.js +0 -29
  1065. package/node_modules/zca-js/dist/apis/getQuickMessageList.d.ts +0 -7
  1066. package/node_modules/zca-js/dist/apis/getQuickMessageList.js +0 -24
  1067. package/node_modules/zca-js/dist/apis/getRelatedFriendGroup.d.ts +0 -6
  1068. package/node_modules/zca-js/dist/apis/getRelatedFriendGroup.js +0 -30
  1069. package/node_modules/zca-js/dist/apis/getReminder.d.ts +0 -3
  1070. package/node_modules/zca-js/dist/apis/getReminder.js +0 -25
  1071. package/node_modules/zca-js/dist/apis/getReminderResponses.d.ts +0 -5
  1072. package/node_modules/zca-js/dist/apis/getReminderResponses.js +0 -24
  1073. package/node_modules/zca-js/dist/apis/getSentFriendRequest.d.ts +0 -18
  1074. package/node_modules/zca-js/dist/apis/getSentFriendRequest.js +0 -24
  1075. package/node_modules/zca-js/dist/apis/getSettings.d.ts +0 -3
  1076. package/node_modules/zca-js/dist/apis/getSettings.js +0 -20
  1077. package/node_modules/zca-js/dist/apis/getStickerCategoryDetail.d.ts +0 -3
  1078. package/node_modules/zca-js/dist/apis/getStickerCategoryDetail.js +0 -24
  1079. package/node_modules/zca-js/dist/apis/getStickers.d.ts +0 -1
  1080. package/node_modules/zca-js/dist/apis/getStickers.js +0 -40
  1081. package/node_modules/zca-js/dist/apis/getStickersDetail.d.ts +0 -3
  1082. package/node_modules/zca-js/dist/apis/getStickersDetail.js +0 -40
  1083. package/node_modules/zca-js/dist/apis/getUnreadMark.d.ts +0 -14
  1084. package/node_modules/zca-js/dist/apis/getUnreadMark.js +0 -30
  1085. package/node_modules/zca-js/dist/apis/getUserInfo.d.ts +0 -8
  1086. package/node_modules/zca-js/dist/apis/getUserInfo.js +0 -44
  1087. package/node_modules/zca-js/dist/apis/inviteUserToGroups.d.ts +0 -10
  1088. package/node_modules/zca-js/dist/apis/inviteUserToGroups.js +0 -30
  1089. package/node_modules/zca-js/dist/apis/joinGroupInviteBox.d.ts +0 -2
  1090. package/node_modules/zca-js/dist/apis/joinGroupInviteBox.js +0 -25
  1091. package/node_modules/zca-js/dist/apis/joinGroupLink.d.ts +0 -2
  1092. package/node_modules/zca-js/dist/apis/joinGroupLink.js +0 -27
  1093. package/node_modules/zca-js/dist/apis/keepAlive.d.ts +0 -4
  1094. package/node_modules/zca-js/dist/apis/keepAlive.js +0 -22
  1095. package/node_modules/zca-js/dist/apis/lastOnline.d.ts +0 -7
  1096. package/node_modules/zca-js/dist/apis/lastOnline.js +0 -26
  1097. package/node_modules/zca-js/dist/apis/leaveGroup.d.ts +0 -4
  1098. package/node_modules/zca-js/dist/apis/leaveGroup.js +0 -33
  1099. package/node_modules/zca-js/dist/apis/listen.d.ts +0 -102
  1100. package/node_modules/zca-js/dist/apis/listen.js +0 -425
  1101. package/node_modules/zca-js/dist/apis/lockPoll.d.ts +0 -2
  1102. package/node_modules/zca-js/dist/apis/lockPoll.js +0 -28
  1103. package/node_modules/zca-js/dist/apis/login.d.ts +0 -3
  1104. package/node_modules/zca-js/dist/apis/login.js +0 -96
  1105. package/node_modules/zca-js/dist/apis/loginQR.d.ts +0 -71
  1106. package/node_modules/zca-js/dist/apis/loginQR.js +0 -376
  1107. package/node_modules/zca-js/dist/apis/logoutV2.js +0 -79
  1108. package/node_modules/zca-js/dist/apis/lostFocus.d.ts +0 -4
  1109. package/node_modules/zca-js/dist/apis/lostFocus.js +0 -23
  1110. package/node_modules/zca-js/dist/apis/parseLink.d.ts +0 -21
  1111. package/node_modules/zca-js/dist/apis/parseLink.js +0 -27
  1112. package/node_modules/zca-js/dist/apis/registerCatalog.d.ts +0 -2
  1113. package/node_modules/zca-js/dist/apis/registerCatalog.js +0 -27
  1114. package/node_modules/zca-js/dist/apis/rejectFriendRequest.d.ts +0 -2
  1115. package/node_modules/zca-js/dist/apis/rejectFriendRequest.js +0 -27
  1116. package/node_modules/zca-js/dist/apis/removeFriend.d.ts +0 -2
  1117. package/node_modules/zca-js/dist/apis/removeFriend.js +0 -28
  1118. package/node_modules/zca-js/dist/apis/removeFriendAlias.d.ts +0 -2
  1119. package/node_modules/zca-js/dist/apis/removeFriendAlias.js +0 -24
  1120. package/node_modules/zca-js/dist/apis/removeGroupBlockedMember.d.ts +0 -2
  1121. package/node_modules/zca-js/dist/apis/removeGroupBlockedMember.js +0 -28
  1122. package/node_modules/zca-js/dist/apis/removeGroupDeputy.d.ts +0 -2
  1123. package/node_modules/zca-js/dist/apis/removeGroupDeputy.js +0 -30
  1124. package/node_modules/zca-js/dist/apis/removeQuickMessage.d.ts +0 -5
  1125. package/node_modules/zca-js/dist/apis/removeQuickMessage.js +0 -27
  1126. package/node_modules/zca-js/dist/apis/removeReminder.d.ts +0 -3
  1127. package/node_modules/zca-js/dist/apis/removeReminder.js +0 -40
  1128. package/node_modules/zca-js/dist/apis/removeUnreadMark.d.ts +0 -8
  1129. package/node_modules/zca-js/dist/apis/removeUnreadMark.js +0 -50
  1130. package/node_modules/zca-js/dist/apis/removeUserFromGroup.d.ts +0 -4
  1131. package/node_modules/zca-js/dist/apis/removeUserFromGroup.js +0 -34
  1132. package/node_modules/zca-js/dist/apis/resetHiddenConversPin.d.ts +0 -2
  1133. package/node_modules/zca-js/dist/apis/resetHiddenConversPin.js +0 -20
  1134. package/node_modules/zca-js/dist/apis/reuseAvatar.d.ts +0 -2
  1135. package/node_modules/zca-js/dist/apis/reuseAvatar.js +0 -26
  1136. package/node_modules/zca-js/dist/apis/reviewPendingMemberRequest.d.ts +0 -14
  1137. package/node_modules/zca-js/dist/apis/reviewPendingMemberRequest.js +0 -38
  1138. package/node_modules/zca-js/dist/apis/scanURL.d.ts +0 -4
  1139. package/node_modules/zca-js/dist/apis/scanURL.js +0 -28
  1140. package/node_modules/zca-js/dist/apis/searchSticker.d.ts +0 -3
  1141. package/node_modules/zca-js/dist/apis/searchSticker.js +0 -28
  1142. package/node_modules/zca-js/dist/apis/sendBankCard.d.ts +0 -9
  1143. package/node_modules/zca-js/dist/apis/sendBankCard.js +0 -53
  1144. package/node_modules/zca-js/dist/apis/sendCard.d.ts +0 -10
  1145. package/node_modules/zca-js/dist/apis/sendCard.js +0 -75
  1146. package/node_modules/zca-js/dist/apis/sendDeliveredEvent.d.ts +0 -16
  1147. package/node_modules/zca-js/dist/apis/sendDeliveredEvent.js +0 -55
  1148. package/node_modules/zca-js/dist/apis/sendFriendRequest.d.ts +0 -2
  1149. package/node_modules/zca-js/dist/apis/sendFriendRequest.js +0 -39
  1150. package/node_modules/zca-js/dist/apis/sendLink.d.ts +0 -10
  1151. package/node_modules/zca-js/dist/apis/sendLink.js +0 -78
  1152. package/node_modules/zca-js/dist/apis/sendMessage.d.ts +0 -105
  1153. package/node_modules/zca-js/dist/apis/sendMessage.js +0 -486
  1154. package/node_modules/zca-js/dist/apis/sendReport.d.ts +0 -17
  1155. package/node_modules/zca-js/dist/apis/sendReport.js +0 -53
  1156. package/node_modules/zca-js/dist/apis/sendSeenEvent.d.ts +0 -16
  1157. package/node_modules/zca-js/dist/apis/sendSeenEvent.js +0 -63
  1158. package/node_modules/zca-js/dist/apis/sendSticker.d.ts +0 -10
  1159. package/node_modules/zca-js/dist/apis/sendSticker.js +0 -74
  1160. package/node_modules/zca-js/dist/apis/sendTypingEvent.d.ts +0 -5
  1161. package/node_modules/zca-js/dist/apis/sendTypingEvent.js +0 -33
  1162. package/node_modules/zca-js/dist/apis/sendVideo.d.ts +0 -35
  1163. package/node_modules/zca-js/dist/apis/sendVideo.js +0 -134
  1164. package/node_modules/zca-js/dist/apis/sendVoice.d.ts +0 -12
  1165. package/node_modules/zca-js/dist/apis/sendVoice.js +0 -89
  1166. package/node_modules/zca-js/dist/apis/setHiddenConversations.d.ts +0 -3
  1167. package/node_modules/zca-js/dist/apis/setHiddenConversations.js +0 -39
  1168. package/node_modules/zca-js/dist/apis/setMute.d.ts +0 -20
  1169. package/node_modules/zca-js/dist/apis/setMute.js +0 -67
  1170. package/node_modules/zca-js/dist/apis/setPinnedConversations.d.ts +0 -3
  1171. package/node_modules/zca-js/dist/apis/setPinnedConversations.js +0 -34
  1172. package/node_modules/zca-js/dist/apis/sharePoll.d.ts +0 -2
  1173. package/node_modules/zca-js/dist/apis/sharePoll.js +0 -28
  1174. package/node_modules/zca-js/dist/apis/unblockUser.d.ts +0 -2
  1175. package/node_modules/zca-js/dist/apis/unblockUser.js +0 -28
  1176. package/node_modules/zca-js/dist/apis/undo.d.ts +0 -9
  1177. package/node_modules/zca-js/dist/apis/undo.js +0 -42
  1178. package/node_modules/zca-js/dist/apis/undoFriendRequest.d.ts +0 -2
  1179. package/node_modules/zca-js/dist/apis/undoFriendRequest.js +0 -27
  1180. package/node_modules/zca-js/dist/apis/updateActiveStatus.d.ts +0 -4
  1181. package/node_modules/zca-js/dist/apis/updateActiveStatus.js +0 -27
  1182. package/node_modules/zca-js/dist/apis/updateArchivedChatList.d.ts +0 -10
  1183. package/node_modules/zca-js/dist/apis/updateArchivedChatList.js +0 -34
  1184. package/node_modules/zca-js/dist/apis/updateAutoDeleteChat.d.ts +0 -9
  1185. package/node_modules/zca-js/dist/apis/updateAutoDeleteChat.js +0 -40
  1186. package/node_modules/zca-js/dist/apis/updateAutoReply.d.ts +0 -15
  1187. package/node_modules/zca-js/dist/apis/updateAutoReply.js +0 -38
  1188. package/node_modules/zca-js/dist/apis/updateBankAccount.d.ts +0 -9
  1189. package/node_modules/zca-js/dist/apis/updateBankAccount.js +0 -31
  1190. package/node_modules/zca-js/dist/apis/updateCatalog.d.ts +0 -11
  1191. package/node_modules/zca-js/dist/apis/updateCatalog.js +0 -30
  1192. package/node_modules/zca-js/dist/apis/updateGroupSettings.d.ts +0 -40
  1193. package/node_modules/zca-js/dist/apis/updateGroupSettings.js +0 -43
  1194. package/node_modules/zca-js/dist/apis/updateHiddenConversPin.d.ts +0 -2
  1195. package/node_modules/zca-js/dist/apis/updateHiddenConversPin.js +0 -30
  1196. package/node_modules/zca-js/dist/apis/updateLabels.d.ts +0 -15
  1197. package/node_modules/zca-js/dist/apis/updateLabels.js +0 -34
  1198. package/node_modules/zca-js/dist/apis/updateLang.d.ts +0 -6
  1199. package/node_modules/zca-js/dist/apis/updateLang.js +0 -30
  1200. package/node_modules/zca-js/dist/apis/updateProductCatalog.d.ts +0 -25
  1201. package/node_modules/zca-js/dist/apis/updateProductCatalog.js +0 -51
  1202. package/node_modules/zca-js/dist/apis/updateProfile.d.ts +0 -20
  1203. package/node_modules/zca-js/dist/apis/updateProfile.js +0 -43
  1204. package/node_modules/zca-js/dist/apis/updateProfileBio.d.ts +0 -2
  1205. package/node_modules/zca-js/dist/apis/updateProfileBio.js +0 -27
  1206. package/node_modules/zca-js/dist/apis/updateQuickMessage.d.ts +0 -11
  1207. package/node_modules/zca-js/dist/apis/updateQuickMessage.js +0 -61
  1208. package/node_modules/zca-js/dist/apis/updateSettings.d.ts +0 -16
  1209. package/node_modules/zca-js/dist/apis/updateSettings.js +0 -90
  1210. package/node_modules/zca-js/dist/apis/upgradeGroupToCommunity.d.ts +0 -2
  1211. package/node_modules/zca-js/dist/apis/upgradeGroupToCommunity.js +0 -27
  1212. package/node_modules/zca-js/dist/apis/uploadAttachment.d.ts +0 -50
  1213. package/node_modules/zca-js/dist/apis/uploadAttachment.js +0 -197
  1214. package/node_modules/zca-js/dist/apis/uploadProductPhoto.d.ts +0 -14
  1215. package/node_modules/zca-js/dist/apis/uploadProductPhoto.js +0 -50
  1216. package/node_modules/zca-js/dist/apis/votePoll.d.ts +0 -5
  1217. package/node_modules/zca-js/dist/apis/votePoll.js +0 -29
  1218. package/node_modules/zca-js/dist/apis.d.ts +0 -317
  1219. package/node_modules/zca-js/dist/apis.js +0 -319
  1220. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiError.cjs +0 -11
  1221. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiLoginQRAborted.cjs +0 -12
  1222. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiLoginQRDeclined.cjs +0 -12
  1223. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiMissingImageMetadataGetter.cjs +0 -12
  1224. package/node_modules/zca-js/dist/cjs/apis/acceptFriendRequest.cjs +0 -33
  1225. package/node_modules/zca-js/dist/cjs/apis/addGroupBlockedMember.cjs +0 -33
  1226. package/node_modules/zca-js/dist/cjs/apis/addGroupDeputy.cjs +0 -35
  1227. package/node_modules/zca-js/dist/cjs/apis/addPollOptions.cjs +0 -31
  1228. package/node_modules/zca-js/dist/cjs/apis/addQuickMessage.cjs +0 -65
  1229. package/node_modules/zca-js/dist/cjs/apis/addReaction.cjs +0 -308
  1230. package/node_modules/zca-js/dist/cjs/apis/addUnreadMark.cjs +0 -66
  1231. package/node_modules/zca-js/dist/cjs/apis/addUserToGroup.cjs +0 -39
  1232. package/node_modules/zca-js/dist/cjs/apis/blockUser.cjs +0 -33
  1233. package/node_modules/zca-js/dist/cjs/apis/blockViewFeed.cjs +0 -35
  1234. package/node_modules/zca-js/dist/cjs/apis/changeAccountAvatar.cjs +0 -57
  1235. package/node_modules/zca-js/dist/cjs/apis/changeFriendAlias.cjs +0 -32
  1236. package/node_modules/zca-js/dist/cjs/apis/changeGroupAvatar.cjs +0 -49
  1237. package/node_modules/zca-js/dist/cjs/apis/changeGroupName.cjs +0 -37
  1238. package/node_modules/zca-js/dist/cjs/apis/changeGroupOwner.cjs +0 -35
  1239. package/node_modules/zca-js/dist/cjs/apis/createAutoReply.cjs +0 -42
  1240. package/node_modules/zca-js/dist/cjs/apis/createBankAccount.cjs +0 -37
  1241. package/node_modules/zca-js/dist/cjs/apis/createCatalog.cjs +0 -34
  1242. package/node_modules/zca-js/dist/cjs/apis/createGroup.cjs +0 -48
  1243. package/node_modules/zca-js/dist/cjs/apis/createNote.cjs +0 -52
  1244. package/node_modules/zca-js/dist/cjs/apis/createPoll.cjs +0 -45
  1245. package/node_modules/zca-js/dist/cjs/apis/createProductCatalog.cjs +0 -55
  1246. package/node_modules/zca-js/dist/cjs/apis/createReminder.cjs +0 -77
  1247. package/node_modules/zca-js/dist/cjs/apis/custom.cjs +0 -19
  1248. package/node_modules/zca-js/dist/cjs/apis/deleteAutoReply.cjs +0 -34
  1249. package/node_modules/zca-js/dist/cjs/apis/deleteAvatar.cjs +0 -32
  1250. package/node_modules/zca-js/dist/cjs/apis/deleteBankAccount.cjs +0 -37
  1251. package/node_modules/zca-js/dist/cjs/apis/deleteCatalog.cjs +0 -33
  1252. package/node_modules/zca-js/dist/cjs/apis/deleteChat.cjs +0 -64
  1253. package/node_modules/zca-js/dist/cjs/apis/deleteGroupInviteBox.cjs +0 -32
  1254. package/node_modules/zca-js/dist/cjs/apis/deleteMessage.cjs +0 -66
  1255. package/node_modules/zca-js/dist/cjs/apis/deleteProductCatalog.cjs +0 -36
  1256. package/node_modules/zca-js/dist/cjs/apis/disableGroupLink.cjs +0 -29
  1257. package/node_modules/zca-js/dist/cjs/apis/disperseGroup.cjs +0 -33
  1258. package/node_modules/zca-js/dist/cjs/apis/editNote.cjs +0 -51
  1259. package/node_modules/zca-js/dist/cjs/apis/editReminder.cjs +0 -75
  1260. package/node_modules/zca-js/dist/cjs/apis/enableGroupLink.cjs +0 -30
  1261. package/node_modules/zca-js/dist/cjs/apis/fetchAccountInfo.cjs +0 -15
  1262. package/node_modules/zca-js/dist/cjs/apis/findUser.cjs +0 -56
  1263. package/node_modules/zca-js/dist/cjs/apis/findUserByUsername.cjs +0 -41
  1264. package/node_modules/zca-js/dist/cjs/apis/forwardMessage.cjs +0 -129
  1265. package/node_modules/zca-js/dist/cjs/apis/getAliasList.cjs +0 -32
  1266. package/node_modules/zca-js/dist/cjs/apis/getAllFriends.cjs +0 -48
  1267. package/node_modules/zca-js/dist/cjs/apis/getAllGroups.cjs +0 -15
  1268. package/node_modules/zca-js/dist/cjs/apis/getArchivedChatList.cjs +0 -28
  1269. package/node_modules/zca-js/dist/cjs/apis/getAutoDeleteChat.cjs +0 -26
  1270. package/node_modules/zca-js/dist/cjs/apis/getAutoReplyList.cjs +0 -29
  1271. package/node_modules/zca-js/dist/cjs/apis/getAvatarList.cjs +0 -33
  1272. package/node_modules/zca-js/dist/cjs/apis/getAvatarUrlProfile.cjs +0 -44
  1273. package/node_modules/zca-js/dist/cjs/apis/getBizAccount.cjs +0 -32
  1274. package/node_modules/zca-js/dist/cjs/apis/getCatalogList.cjs +0 -37
  1275. package/node_modules/zca-js/dist/cjs/apis/getCloseFriends.cjs +0 -25
  1276. package/node_modules/zca-js/dist/cjs/apis/getContext.cjs +0 -9
  1277. package/node_modules/zca-js/dist/cjs/apis/getCookie.cjs +0 -14
  1278. package/node_modules/zca-js/dist/cjs/apis/getFriendBoardList.cjs +0 -31
  1279. package/node_modules/zca-js/dist/cjs/apis/getFriendOnlines.cjs +0 -40
  1280. package/node_modules/zca-js/dist/cjs/apis/getFriendRecommendations.cjs +0 -32
  1281. package/node_modules/zca-js/dist/cjs/apis/getFriendRequestStatus.cjs +0 -30
  1282. package/node_modules/zca-js/dist/cjs/apis/getFullAvatar.cjs +0 -30
  1283. package/node_modules/zca-js/dist/cjs/apis/getGroupBlockedMember.cjs +0 -34
  1284. package/node_modules/zca-js/dist/cjs/apis/getGroupChatHistory.cjs +0 -51
  1285. package/node_modules/zca-js/dist/cjs/apis/getGroupInfo.cjs +0 -37
  1286. package/node_modules/zca-js/dist/cjs/apis/getGroupInviteBoxInfo.cjs +0 -43
  1287. package/node_modules/zca-js/dist/cjs/apis/getGroupInviteBoxList.cjs +0 -36
  1288. package/node_modules/zca-js/dist/cjs/apis/getGroupLinkDetail.cjs +0 -30
  1289. package/node_modules/zca-js/dist/cjs/apis/getGroupLinkInfo.cjs +0 -33
  1290. package/node_modules/zca-js/dist/cjs/apis/getGroupMembersInfo.cjs +0 -29
  1291. package/node_modules/zca-js/dist/cjs/apis/getHiddenConversations.cjs +0 -28
  1292. package/node_modules/zca-js/dist/cjs/apis/getLabels.cjs +0 -33
  1293. package/node_modules/zca-js/dist/cjs/apis/getListBank.cjs +0 -25
  1294. package/node_modules/zca-js/dist/cjs/apis/getListBankAccount.cjs +0 -32
  1295. package/node_modules/zca-js/dist/cjs/apis/getListBoard.cjs +0 -59
  1296. package/node_modules/zca-js/dist/cjs/apis/getListDevice.cjs +0 -27
  1297. package/node_modules/zca-js/dist/cjs/apis/getListReminder.cjs +0 -61
  1298. package/node_modules/zca-js/dist/cjs/apis/getMultiUsersByPhones.cjs +0 -53
  1299. package/node_modules/zca-js/dist/cjs/apis/getMute.cjs +0 -27
  1300. package/node_modules/zca-js/dist/cjs/apis/getOwnId.cjs +0 -9
  1301. package/node_modules/zca-js/dist/cjs/apis/getPendingGroupMembers.cjs +0 -32
  1302. package/node_modules/zca-js/dist/cjs/apis/getPinConversations.cjs +0 -27
  1303. package/node_modules/zca-js/dist/cjs/apis/getPollDetail.cjs +0 -35
  1304. package/node_modules/zca-js/dist/cjs/apis/getProductCatalogList.cjs +0 -38
  1305. package/node_modules/zca-js/dist/cjs/apis/getQR.cjs +0 -34
  1306. package/node_modules/zca-js/dist/cjs/apis/getQuickMessageList.cjs +0 -29
  1307. package/node_modules/zca-js/dist/cjs/apis/getRelatedFriendGroup.cjs +0 -35
  1308. package/node_modules/zca-js/dist/cjs/apis/getReminder.cjs +0 -30
  1309. package/node_modules/zca-js/dist/cjs/apis/getReminderResponses.cjs +0 -29
  1310. package/node_modules/zca-js/dist/cjs/apis/getSentFriendRequest.cjs +0 -29
  1311. package/node_modules/zca-js/dist/cjs/apis/getSettings.cjs +0 -25
  1312. package/node_modules/zca-js/dist/cjs/apis/getStickerCategoryDetail.cjs +0 -29
  1313. package/node_modules/zca-js/dist/cjs/apis/getStickers.cjs +0 -45
  1314. package/node_modules/zca-js/dist/cjs/apis/getStickersDetail.cjs +0 -45
  1315. package/node_modules/zca-js/dist/cjs/apis/getUnreadMark.cjs +0 -35
  1316. package/node_modules/zca-js/dist/cjs/apis/getUserInfo.cjs +0 -58
  1317. package/node_modules/zca-js/dist/cjs/apis/inviteUserToGroups.cjs +0 -35
  1318. package/node_modules/zca-js/dist/cjs/apis/joinGroupInviteBox.cjs +0 -30
  1319. package/node_modules/zca-js/dist/cjs/apis/joinGroupLink.cjs +0 -32
  1320. package/node_modules/zca-js/dist/cjs/apis/keepAlive.cjs +0 -27
  1321. package/node_modules/zca-js/dist/cjs/apis/lastOnline.cjs +0 -31
  1322. package/node_modules/zca-js/dist/cjs/apis/leaveGroup.cjs +0 -38
  1323. package/node_modules/zca-js/dist/cjs/apis/listen.cjs +0 -440
  1324. package/node_modules/zca-js/dist/cjs/apis/lockPoll.cjs +0 -33
  1325. package/node_modules/zca-js/dist/cjs/apis/login.cjs +0 -102
  1326. package/node_modules/zca-js/dist/cjs/apis/loginQR.cjs +0 -368
  1327. package/node_modules/zca-js/dist/cjs/apis/logoutV2.cjs +0 -83
  1328. package/node_modules/zca-js/dist/cjs/apis/lostFocus.cjs +0 -28
  1329. package/node_modules/zca-js/dist/cjs/apis/parseLink.cjs +0 -32
  1330. package/node_modules/zca-js/dist/cjs/apis/registerCatalog.cjs +0 -32
  1331. package/node_modules/zca-js/dist/cjs/apis/rejectFriendRequest.cjs +0 -32
  1332. package/node_modules/zca-js/dist/cjs/apis/removeFriend.cjs +0 -33
  1333. package/node_modules/zca-js/dist/cjs/apis/removeFriendAlias.cjs +0 -29
  1334. package/node_modules/zca-js/dist/cjs/apis/removeGroupBlockedMember.cjs +0 -33
  1335. package/node_modules/zca-js/dist/cjs/apis/removeGroupDeputy.cjs +0 -35
  1336. package/node_modules/zca-js/dist/cjs/apis/removeQuickMessage.cjs +0 -32
  1337. package/node_modules/zca-js/dist/cjs/apis/removeReminder.cjs +0 -54
  1338. package/node_modules/zca-js/dist/cjs/apis/removeUnreadMark.cjs +0 -64
  1339. package/node_modules/zca-js/dist/cjs/apis/removeUserFromGroup.cjs +0 -39
  1340. package/node_modules/zca-js/dist/cjs/apis/resetHiddenConversPin.cjs +0 -25
  1341. package/node_modules/zca-js/dist/cjs/apis/reuseAvatar.cjs +0 -31
  1342. package/node_modules/zca-js/dist/cjs/apis/reviewPendingMemberRequest.cjs +0 -43
  1343. package/node_modules/zca-js/dist/cjs/apis/scanURL.cjs +0 -33
  1344. package/node_modules/zca-js/dist/cjs/apis/searchSticker.cjs +0 -33
  1345. package/node_modules/zca-js/dist/cjs/apis/sendBankCard.cjs +0 -68
  1346. package/node_modules/zca-js/dist/cjs/apis/sendCard.cjs +0 -89
  1347. package/node_modules/zca-js/dist/cjs/apis/sendDeliveredEvent.cjs +0 -69
  1348. package/node_modules/zca-js/dist/cjs/apis/sendFriendRequest.cjs +0 -44
  1349. package/node_modules/zca-js/dist/cjs/apis/sendLink.cjs +0 -92
  1350. package/node_modules/zca-js/dist/cjs/apis/sendMessage.cjs +0 -500
  1351. package/node_modules/zca-js/dist/cjs/apis/sendReport.cjs +0 -67
  1352. package/node_modules/zca-js/dist/cjs/apis/sendSeenEvent.cjs +0 -77
  1353. package/node_modules/zca-js/dist/cjs/apis/sendSticker.cjs +0 -88
  1354. package/node_modules/zca-js/dist/cjs/apis/sendTypingEvent.cjs +0 -47
  1355. package/node_modules/zca-js/dist/cjs/apis/sendVideo.cjs +0 -148
  1356. package/node_modules/zca-js/dist/cjs/apis/sendVoice.cjs +0 -103
  1357. package/node_modules/zca-js/dist/cjs/apis/setHiddenConversations.cjs +0 -53
  1358. package/node_modules/zca-js/dist/cjs/apis/setMute.cjs +0 -81
  1359. package/node_modules/zca-js/dist/cjs/apis/setPinnedConversations.cjs +0 -48
  1360. package/node_modules/zca-js/dist/cjs/apis/sharePoll.cjs +0 -33
  1361. package/node_modules/zca-js/dist/cjs/apis/unblockUser.cjs +0 -33
  1362. package/node_modules/zca-js/dist/cjs/apis/undo.cjs +0 -56
  1363. package/node_modules/zca-js/dist/cjs/apis/undoFriendRequest.cjs +0 -32
  1364. package/node_modules/zca-js/dist/cjs/apis/updateActiveStatus.cjs +0 -32
  1365. package/node_modules/zca-js/dist/cjs/apis/updateArchivedChatList.cjs +0 -39
  1366. package/node_modules/zca-js/dist/cjs/apis/updateAutoDeleteChat.cjs +0 -54
  1367. package/node_modules/zca-js/dist/cjs/apis/updateAutoReply.cjs +0 -43
  1368. package/node_modules/zca-js/dist/cjs/apis/updateBankAccount.cjs +0 -36
  1369. package/node_modules/zca-js/dist/cjs/apis/updateCatalog.cjs +0 -35
  1370. package/node_modules/zca-js/dist/cjs/apis/updateGroupSettings.cjs +0 -48
  1371. package/node_modules/zca-js/dist/cjs/apis/updateHiddenConversPin.cjs +0 -35
  1372. package/node_modules/zca-js/dist/cjs/apis/updateLabels.cjs +0 -39
  1373. package/node_modules/zca-js/dist/cjs/apis/updateLang.cjs +0 -35
  1374. package/node_modules/zca-js/dist/cjs/apis/updateProductCatalog.cjs +0 -56
  1375. package/node_modules/zca-js/dist/cjs/apis/updateProfile.cjs +0 -48
  1376. package/node_modules/zca-js/dist/cjs/apis/updateProfileBio.cjs +0 -32
  1377. package/node_modules/zca-js/dist/cjs/apis/updateQuickMessage.cjs +0 -66
  1378. package/node_modules/zca-js/dist/cjs/apis/updateSettings.cjs +0 -95
  1379. package/node_modules/zca-js/dist/cjs/apis/upgradeGroupToCommunity.cjs +0 -32
  1380. package/node_modules/zca-js/dist/cjs/apis/uploadAttachment.cjs +0 -211
  1381. package/node_modules/zca-js/dist/cjs/apis/uploadProductPhoto.cjs +0 -55
  1382. package/node_modules/zca-js/dist/cjs/apis/votePoll.cjs +0 -34
  1383. package/node_modules/zca-js/dist/cjs/apis.cjs +0 -324
  1384. package/node_modules/zca-js/dist/cjs/context.cjs +0 -34
  1385. package/node_modules/zca-js/dist/cjs/index.cjs +0 -159
  1386. package/node_modules/zca-js/dist/cjs/models/AutoReply.cjs +0 -9
  1387. package/node_modules/zca-js/dist/cjs/models/Bank.cjs +0 -263
  1388. package/node_modules/zca-js/dist/cjs/models/Board.cjs +0 -8
  1389. package/node_modules/zca-js/dist/cjs/models/DeliveredMessage.cjs +0 -23
  1390. package/node_modules/zca-js/dist/cjs/models/Enum.cjs +0 -27
  1391. package/node_modules/zca-js/dist/cjs/models/FriendEvent.cjs +0 -87
  1392. package/node_modules/zca-js/dist/cjs/models/Group.cjs +0 -13
  1393. package/node_modules/zca-js/dist/cjs/models/GroupEvent.cjs +0 -94
  1394. package/node_modules/zca-js/dist/cjs/models/Message.cjs +0 -35
  1395. package/node_modules/zca-js/dist/cjs/models/Reaction.cjs +0 -74
  1396. package/node_modules/zca-js/dist/cjs/models/Reminder.cjs +0 -9
  1397. package/node_modules/zca-js/dist/cjs/models/SeenMessage.cjs +0 -23
  1398. package/node_modules/zca-js/dist/cjs/models/Typing.cjs +0 -23
  1399. package/node_modules/zca-js/dist/cjs/models/Undo.cjs +0 -16
  1400. package/node_modules/zca-js/dist/cjs/models/ZBusiness.cjs +0 -39
  1401. package/node_modules/zca-js/dist/cjs/update.cjs +0 -34
  1402. package/node_modules/zca-js/dist/cjs/utils.cjs +0 -703
  1403. package/node_modules/zca-js/dist/cjs/zalo.cjs +0 -112
  1404. package/node_modules/zca-js/dist/context.d.ts +0 -179
  1405. package/node_modules/zca-js/dist/context.js +0 -28
  1406. package/node_modules/zca-js/dist/index.d.ts +0 -166
  1407. package/node_modules/zca-js/dist/index.js +0 -14
  1408. package/node_modules/zca-js/dist/models/Attachment.d.ts +0 -9
  1409. package/node_modules/zca-js/dist/models/Attachment.js +0 -1
  1410. package/node_modules/zca-js/dist/models/AutoReply.d.ts +0 -20
  1411. package/node_modules/zca-js/dist/models/AutoReply.js +0 -7
  1412. package/node_modules/zca-js/dist/models/Bank.d.ts +0 -291
  1413. package/node_modules/zca-js/dist/models/Bank.js +0 -262
  1414. package/node_modules/zca-js/dist/models/Board.d.ts +0 -60
  1415. package/node_modules/zca-js/dist/models/Board.js +0 -6
  1416. package/node_modules/zca-js/dist/models/Catalog.d.ts +0 -16
  1417. package/node_modules/zca-js/dist/models/Catalog.js +0 -1
  1418. package/node_modules/zca-js/dist/models/DeliveredMessage.d.ts +0 -27
  1419. package/node_modules/zca-js/dist/models/DeliveredMessage.js +0 -17
  1420. package/node_modules/zca-js/dist/models/Enum.d.ts +0 -21
  1421. package/node_modules/zca-js/dist/models/Enum.js +0 -25
  1422. package/node_modules/zca-js/dist/models/FriendEvent.d.ts +0 -107
  1423. package/node_modules/zca-js/dist/models/FriendEvent.js +0 -83
  1424. package/node_modules/zca-js/dist/models/Group.d.ts +0 -125
  1425. package/node_modules/zca-js/dist/models/Group.js +0 -11
  1426. package/node_modules/zca-js/dist/models/GroupEvent.d.ts +0 -178
  1427. package/node_modules/zca-js/dist/models/GroupEvent.js +0 -90
  1428. package/node_modules/zca-js/dist/models/Label.d.ts +0 -10
  1429. package/node_modules/zca-js/dist/models/Label.js +0 -1
  1430. package/node_modules/zca-js/dist/models/Message.d.ts +0 -91
  1431. package/node_modules/zca-js/dist/models/Message.js +0 -29
  1432. package/node_modules/zca-js/dist/models/ProductCatalog.d.ts +0 -17
  1433. package/node_modules/zca-js/dist/models/ProductCatalog.js +0 -1
  1434. package/node_modules/zca-js/dist/models/QuickMessage.d.ts +0 -25
  1435. package/node_modules/zca-js/dist/models/QuickMessage.js +0 -1
  1436. package/node_modules/zca-js/dist/models/Reaction.d.ts +0 -85
  1437. package/node_modules/zca-js/dist/models/Reaction.js +0 -70
  1438. package/node_modules/zca-js/dist/models/Reminder.d.ts +0 -51
  1439. package/node_modules/zca-js/dist/models/Reminder.js +0 -7
  1440. package/node_modules/zca-js/dist/models/SeenMessage.d.ts +0 -26
  1441. package/node_modules/zca-js/dist/models/SeenMessage.js +0 -17
  1442. package/node_modules/zca-js/dist/models/Sticker.d.ts +0 -27
  1443. package/node_modules/zca-js/dist/models/Sticker.js +0 -1
  1444. package/node_modules/zca-js/dist/models/Typing.d.ts +0 -24
  1445. package/node_modules/zca-js/dist/models/Typing.js +0 -17
  1446. package/node_modules/zca-js/dist/models/Undo.d.ts +0 -34
  1447. package/node_modules/zca-js/dist/models/Undo.js +0 -12
  1448. package/node_modules/zca-js/dist/models/User.d.ts +0 -70
  1449. package/node_modules/zca-js/dist/models/User.js +0 -1
  1450. package/node_modules/zca-js/dist/models/ZBusiness.d.ts +0 -22
  1451. package/node_modules/zca-js/dist/models/ZBusiness.js +0 -35
  1452. package/node_modules/zca-js/dist/models/index.d.ts +0 -22
  1453. package/node_modules/zca-js/dist/models/index.js +0 -22
  1454. package/node_modules/zca-js/dist/update.d.ts +0 -2
  1455. package/node_modules/zca-js/dist/update.js +0 -29
  1456. package/node_modules/zca-js/dist/utils.d.ts +0 -167
  1457. package/node_modules/zca-js/dist/utils.js +0 -719
  1458. package/node_modules/zca-js/dist/zalo.d.ts +0 -41
  1459. package/node_modules/zca-js/dist/zalo.js +0 -107
  1460. package/node_modules/zca-js/eslint.config.js +0 -21
  1461. package/node_modules/zca-js/index.d.ts +0 -2
  1462. package/node_modules/zca-js/package.json +0 -78
  1463. package/node_modules/zca-js/rollup.config.js +0 -28
  1464. package/patches/zca-js+2.2.0.patch +0 -1445
  1465. package/src/cli.test.js +0 -127
  1466. package/src/core/forward.js +0 -112
  1467. package/src/core/group-history.js +0 -248
  1468. package/src/core/group-invite.js +0 -53
  1469. package/src/core/offline-queue.js +0 -194
  1470. package/src/core/pin.js +0 -222
  1471. package/src/core/socket-tap.js +0 -154
  1472. package/src/core/sync-v2/assets.js +0 -181
  1473. package/src/core/sync-v2/gid.js +0 -106
  1474. package/src/core/sync-v2/keepalive.js +0 -177
  1475. package/src/core/sync-v2/message-types.js +0 -522
  1476. package/src/core/sync-v2/renewlink.js +0 -124
  1477. package/src/core/sync-v2/zcloud-cipher.js +0 -88
  1478. package/src/core/zca-custom.js +0 -78
  1479. package/src/mcp/message-buffer.test.js +0 -360
  1480. package/src/mcp/notifier.test.js +0 -275
  1481. package/src/mcp/thread-filter.test.js +0 -206
  1482. package/src/mcp/thread-name-cache.test.js +0 -142
  1483. package/src/utils/atomic-file.js +0 -209
  1484. package/src/utils/bank-helpers.test.js +0 -66
  1485. package/src/utils/device-fingerprint.js +0 -72
  1486. package/src/utils/mentions.js +0 -140
  1487. package/src/utils/proxy-helpers.test.js +0 -36
  1488. package/src/utils/split-message.js +0 -222
  1489. package/src/utils/urgency.js +0 -29
  1490. /package/src/{core → zalo/custom}/user-info.js +0 -0
  1491. /package/src/{utils → zalo/format}/extract-message-text.js +0 -0
  1492. /package/src/{utils → zalo/format}/markdown.js +0 -0
package/README.md CHANGED
@@ -4,23 +4,25 @@
4
4
 
5
5
  # zalo-agent-cli
6
6
 
7
- Công cụ CLI tự động hóa Zalo — đa tài khoản, proxy, chuyển khoản ngân hàng, thanh toán QR, Official Account API v3.0, và MCP server cho AI agent.
8
- Xây dựng trên [zca-js](https://github.com/RFS-ADRENO/zca-js).
7
+ Công cụ CLI tự động hóa Zalo — đa tài khoản, proxy, chuyển khoản ngân hàng, thanh toán QR, Official Account API và ZBS Template Message, và MCP server cho AI agent.
8
+ Engine do dự án tự viết theo giao thức của Zalo (từ 3.0, không còn zca-js): mỗi request được dựng đúng định dạng Zalo yêu cầu, và engine theo sát giao thức hiện hành nên không phải chờ một thư viện bên thứ ba cập nhật.
9
9
 
10
10
  [![License: CC BY-NC-SA 4.0](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by-nc-sa/4.0/)
11
11
 
12
12
  **[Tiếng Việt](#bắt-đầu-nhanh)** | **[English](#english)**
13
13
 
14
14
  > [!WARNING]
15
- > Tool này sử dụng API Zalo **không chính thức** ([zca-js](https://github.com/RFS-ADRENO/zca-js)). Zalo không hỗ trợ và **tài khoản của bạn có thể bị khóa hoặc ban**. Tự chịu trách nhiệm. Không liên kết với Zalo hay VNG. Xem [DISCLAIMER.md](DISCLAIMER.md).
15
+ > Tool này sử dụng API Zalo **không chính thức** (giao thức riêng của Zalo, không có tài liệu công khai). Zalo không hỗ trợ và **tài khoản của bạn có thể bị khóa hoặc ban**. Tự chịu trách nhiệm. Không liên kết với Zalo hay VNG. Xem [DISCLAIMER.md](DISCLAIMER.md).
16
16
 
17
17
  > [!IMPORTANT]
18
- > **Zalo chỉ cho phép một phiên web trên mỗi tài khoản — CLI này chiếm phiên đó.**
19
- > Đăng nhập Zalo Web (hoặc ứng dụng PC khác) sẽ thu hồi phiên của CLI ngay lập tức
20
- > ở phía máy chủ, kể cả khi không có tiến trình nào đang chạy. Ngược lại,
21
- > `zalo-agent login` sẽ đăng xuất Zalo Web. Ứng dụng điện thoại không bị ảnh hưởng.
22
- > Đo ngày 20/09/2026.
23
- > Lệnh `oa` là ngoại lệ — chúng dùng **API chính thức** của Zalo OA, không có rủi ro ban.
18
+ > **Zalo chỉ giữ một phiên đăng nhập web cho mỗi tài khoản — CLI (và server) này chính là phiên đó.**
19
+ > Quét QR đăng nhập Zalo trên trình duyệt ở nơi khác sẽ đăng xuất server ngay ở phía Zalo, kể cả khi không có tiến trình
20
+ > nào đang chạy: daemon đang chạy chuyển sang `signed_out` và chờ bạn thêm lại tài khoản bằng QR. Ngược lại,
21
+ > `zalo-agent login` đăng xuất Zalo trên trình duyệt. **Ứng dụng điện thoại và ứng dụng Zalo trên máy tính là các phiên
22
+ > riêng, chạy song song với server được** — muốn xem tin nhắn bên cạnh server thì dùng hai ứng dụng này, đừng dùng trình duyệt.
23
+ > Mỗi lần đăng nhập QR, điện thoại hiện thêm một mục trong danh sách thiết bị (các mục cũ của server bị đăng xuất),
24
+ > nhưng hàng đợi tin nhắn offline vẫn còn, vì CLI giữ nguyên mã thiết bị của tài khoản khi đăng nhập lại.
25
+ > Lệnh `oa`, `zbs` và `social` là ngoại lệ — chúng dùng **API chính thức** của Zalo (OA, ZBS, Social API), không có rủi ro ban.
24
26
 
25
27
  > [!TIP]
26
28
  > **AI Agent Skill** — Dùng với OpenClaw, Claude Code, hoặc bất kỳ agent nào hỗ trợ SKILL.md:
@@ -28,19 +30,20 @@ Xây dựng trên [zca-js](https://github.com/RFS-ADRENO/zca-js).
28
30
  > clawhub install zalo-agent # OpenClaw (từ ClawHub registry)
29
31
  > cp -r skill/ ~/.claude/skills/zalo-agent/ # Claude Code
30
32
  > ```
31
- > 18 nhóm lệnh · 222 lệnh · listen mode + webhook · 55+ ngân hàng VN · đa tài khoản + proxy
33
+ > 24 nhóm lệnh · 321 lệnh · listen mode + webhook · 60+ ngân hàng VN · đa tài khoản + proxy
32
34
  > Xem [skill/SKILL.md](skill/SKILL.md) · [Tham chiếu lệnh đầy đủ](skill/references/command-reference.md) · [Eval scenarios](skill/evals/)
33
35
 
34
36
  > [!NOTE]
35
- > **Zalo Official Account (OA)** — Zalo OA API v3.0 chính thức:
37
+ > **Zalo Official Account (OA) và ZBS** — API chính thức của Zalo OA và ZBS Template Message:
36
38
  > ```bash
37
39
  > zalo-agent oa init # Setup wizard (interactive)
38
40
  > zalo-agent oa init --app-id <ID> --secret <KEY> --skip-webhook # Non-interactive (AI agent)
39
41
  > zalo-agent oa whoami # Xem thông tin OA
40
- > zalo-agent oa msg text <user-id> "Xin chào" # Gửi tin nhắn
41
- > zalo-agent oa listen -p 3000 # Webhook listener
42
+ > zalo-agent oa msg text <user-id> "Xin chào" # Gửi tin tư vấn
43
+ > zalo-agent zbs send 0901234567 <template-id> '{...}' # Gửi tin template ZBS qua SĐT
44
+ > zalo-agent oa listen -p 3000 -s <oa-secret-key> # Webhook listener
42
45
  > ```
43
- > OAuth login · gửi tin nhắn · follower · tag · bài viết · cửa hàng · webhook listener · multi-OA · VPS support
46
+ > OAuth login · tin tư vấn · người dùng · tag · bài viết · nhóm chat GMF · gọi thoại · tin template ZBS · webhook listener · multi-OA · VPS support
44
47
  > Xem [docs/official-account.vi.md](docs/official-account.vi.md) · [English](docs/official-account.md)
45
48
 
46
49
  > [!TIP]
@@ -48,21 +51,21 @@ Xây dựng trên [zca-js](https://github.com/RFS-ADRENO/zca-js).
48
51
  > ```bash
49
52
  > zalo-agent mcp start # stdio (local Claude Code)
50
53
  > zalo-agent mcp start --account <ID> # Ghim tài khoản (chạy nhiều tài khoản live cùng lúc)
51
- > zalo-agent mcp start --http 3847 --auth your-secret # HTTP (VPS)
54
+ > ZALO_MCP_AUTH_TOKEN=<token> zalo-agent mcp start --http 3847 # HTTP; token qua biến môi trường, không đặt trên dòng lệnh
52
55
  > zalo-agent mcp wait -c my-bot --timeout 55 --json # Zero-polling chờ tin nhắn mới qua CLI
53
56
  > zalo-agent mcp mark-read <cursor> -c my-bot --json # Đánh dấu đã đọc tới cursor qua CLI
54
57
  > ```
55
- > 25 tools: `zalo_get_messages` · `zalo_send_message` · `zalo_list_threads` · `zalo_search_threads` · `zalo_mark_read` · `zalo_get_history` · `zalo_view_media` · `zalo_react` · `zalo_undo` · `zalo_get_group_members` · `zalo_list_conversations` · `zalo_coverage` · `zalo_sync` · `zalo_sync_status` · `zalo_search_messages` · `zalo_lookup_user` · `zalo_forward_message` · `zalo_delete_message` · `zalo_reminder` · `zalo_note` · `zalo_poll` · `zalo_wait_for_message` · `zalo_label` · `zalo_friend` · `zalo_group`
58
+ > 37 tools: `zalo_get_messages` · `zalo_send_message` · `zalo_list_threads` · `zalo_search_threads` · `zalo_mark_read` · `zalo_get_history` · `zalo_view_media` · `zalo_react` · `zalo_undo` · `zalo_get_group_members` · `zalo_list_conversations` · `zalo_coverage` · `zalo_sync` · `zalo_sync_status` · `zalo_search_messages` · `zalo_lookup_user` · `zalo_forward_message` · `zalo_delete_message` · `zalo_reminder` · `zalo_note` · `zalo_poll` · `zalo_wait_for_message` · `zalo_label` · `zalo_friend` · `zalo_group` · `zalo_read` · `zalo_write` · `zalo_conversation` · `zalo_profile` · `zalo_auto_reply` · `zalo_quick_message` · `zalo_catalog` · `zalo_bank` · `zalo_cloud` · `zalo_sticker` · `zalo_link` · `zalo_official`
56
59
 
57
- [Sync qua MCP](docs/mcp-sync.vi.md) · [Ghim đa tài khoản live](docs/account-pinning.vi.md) · [Triển khai Production](docs/deployment.vi.md).
58
- > Auto-reconnect · thread filter · noise reduction · tự tải media · thông báo qua nhóm Zalo · chạy song song nhiều tài khoản (`--account <ID>`)
60
+ > [Sync qua MCP](docs/mcp-sync.vi.md) · [Ghim đa tài khoản live](docs/account-pinning.vi.md) · [Triển khai Production](docs/deployment.vi.md) · [Cấu hình](docs/configuration.vi.md).
61
+ > Hiện diện on-demand (server HTTP chỉ giữ socket khi có việc; `presence.mode: "always-on"` khi cần thời gian thực) · thread filter · noise reduction · tự tải media · thông báo qua nhóm Zalo · chạy song song nhiều tài khoản (`--account <ID>`)
59
62
  > Xem [MCP Guide](skill/references/mcp-guide.md) · [INSTALLATION.vi.md](INSTALLATION.vi.md)
60
63
 
61
64
  ---
62
65
 
63
66
  ## Cài đặt
64
67
 
65
- Yêu cầu **Node.js 22+**.
68
+ Yêu cầu **Node.js 22+** (22.19 trở lên).
66
69
 
67
70
  ```bash
68
71
  npm install -g @ardennguyen/zalo-agent-cli
@@ -70,6 +73,26 @@ npm install -g @ardennguyen/zalo-agent-cli
70
73
 
71
74
  Muốn cài kèm MCP server dạng sandbox (khuyến nghị cho AI client) → xem [INSTALLATION.vi.md](INSTALLATION.vi.md) ([English](INSTALLATION.md)).
72
75
 
76
+ ### Nâng cấp từ 2.x lên 3.0
77
+
78
+ 3.0 thay zca-js bằng engine riêng; cách chạy CLI, MCP server và wrapper không đổi. **Trước lệnh 3.0 đầu tiên, hãy sao lưu thư mục `~/.zalo-agent-cli`** (lúc đó vẫn là dữ liệu chưa mã hóa): các lệnh 3.0 mã hóa thông tin đăng nhập, `zalo.db` và media ngay khi mở tới chúng (lệnh đầu tiên đã niêm phong phiên đăng nhập), và việc này chỉ đi một chiều — 2.5.9 không đọc lại được. Đừng bao giờ chạy cùng lúc hai bản sao của một phiên đăng nhập (bản sao lưu và bản đã nâng cấp): chúng sẽ đá nhau ra. Các bước đầy đủ: [INSTALLATION.vi.md](INSTALLATION.vi.md#nâng-cấp-từ-259-lên-30). Các thay đổi phá vỡ tương thích:
79
+
80
+ - **Dữ liệu trên đĩa được mã hóa.** `zalo.db` là SQLCipher: `sqlite3`, DB Browser hay bot mở thẳng file sẽ không đọc được nữa — dùng `zalo-agent db query`/`db export` hoặc các MCP tool.
81
+ - **Lệnh phá hủy cần `--yes`.** `msg undo`/`delete`, `group leave`, `friend remove`, `conv delete`, `logout`, `account remove`, `account export`… thiếu `--yes` thì không gửi gì và thoát với mã 2; `--dry-run` cho xem trước. Script cần thêm `--yes`.
82
+ - **MCP:** các thao tác tương ứng cần `confirm: true`; `confirmMode` của từng triển khai quyết định ai xác nhận (`agent` mặc định, `human` hỏi người dùng qua MCP elicitation hoặc một trang duyệt dùng một lần, `off`). Mỗi id có một tên: `msgId` (không còn `id`/`messageId`), `userId` (không còn `uid`); `threadType` là `"dm"` hoặc `"group"`; mọi id là chuỗi. Các tool mới, `zalo_friend`, `zalo_group` và `zalo_send_message` từ chối tham số không nhận.
83
+ - **Hiện diện on-demand là mặc định** của `mcp start --http` và `listen --daemon`: socket chỉ mở khi có việc và tạm nghỉ sau 5 phút rảnh; tin đến lúc nghỉ được lấy lại từ hàng đợi offline của Zalo ở lần kết nối sau (`catchUp: true`). Cần webhook thời gian thực thì đặt `presence.mode: "always-on"`. MCP qua stdio và `listen` chạy foreground vẫn luôn kết nối.
84
+ - **Daemon on-demand bị phiên khác chiếm tài khoản thì nhường (`yielded`)** thay vì thoát: mọi yêu cầu bị từ chối với `YIELDED` cho tới khi bạn chạy `zalo-agent presence resume --yes`. Chế độ always-on vẫn thoát với mã 3.
85
+ - **Bị Zalo từ chối đăng nhập (ví dụ vì ai đó đăng nhập Zalo trên trình duyệt) thì daemon vẫn chạy ở trạng thái `signed_out`** và chờ thêm lại tài khoản bằng QR, không còn thoát với mã 4; muốn giữ mã 4 thì đặt `ZALO_EXIT_ON_SIGNED_OUT=1`.
86
+ - **Rời nhóm (hoặc bị xóa, bị chặn, nhóm bị giải tán) thì lịch sử nhóm trên máy bị xóa**, như ứng dụng Zalo; `groups.onLeave: "keep"` giữ lại.
87
+ - **`senderName` giờ ưu tiên tên gợi nhớ (alias)** mà chủ tài khoản đặt; tên Zalo gốc nằm ở `senderZaloName`.
88
+ - **`ZALO_QR_FLOW=legacy` đã bị bỏ** — xóa khỏi môi trường hoặc `.env`.
89
+ - **Official Account:** `oa msg` chỉ gửi tin tư vấn; tin giao dịch và truyền thông (`-m transaction|promotion`, Zalo đã dừng trên OA API từ 01/03/2026) chuyển sang nhóm lệnh mới `zbs` (`zbs send`, `zbs uid`). `oa store`, `oa menu`, `oa msg list` và `oa msg status` (thay bằng `zbs status`) đã bị bỏ; vài tùy chọn đổi tên theo tài liệu của Zalo (`oa msg image --url`/`--attachment-id`, `oa msg file --token`, `oa follower update` dùng flag theo tên).
90
+ - **`logout` đăng xuất thiết bị** ở phía Zalo; `--keep-session` giữ cách cũ.
91
+ - **Lệnh thất bại thoát với mã 1** (trước đây phần lớn thoát với mã 0). Mã thoát: 0 thành công, 1 thất bại, 2 cần xác nhận (`--yes`), 3 daemon always-on bị kick (phiên khác chiếm tài khoản), 4 Zalo liên tục từ chối phiên đăng nhập đã lưu (với daemon: chỉ khi `ZALO_EXIT_ON_SIGNED_OUT=1`). Với `--json`, lỗi là `{"error": …}`, và stdout luôn là một object hoặc mảng JSON (không còn `""` hay `null`).
92
+ - Wrapper `@ardennguyen/zalo-mcp` 2.1.0 cần engine 3.0.0.
93
+
94
+ Chi tiết: [CHANGELOG.md](CHANGELOG.md).
95
+
73
96
  ## Bắt đầu nhanh
74
97
 
75
98
  ### 1. Đăng nhập
@@ -78,7 +101,9 @@ Muốn cài kèm MCP server dạng sandbox (khuyến nghị cho AI client) → x
78
101
  zalo-agent login
79
102
  ```
80
103
 
81
- Quét QR bằng **Zalo app > Quét mã QR** (không dùng camera thường). QR cũng xem được trên trình duyệt tại `http://<host>:18927/qr`. Thông tin đăng nhập tự động lưu tại `~/.zalo-agent-cli/` (quyền 0600).
104
+ Quét QR bằng **Zalo app > Quét mã QR** (không dùng camera thường). QR cũng xem được trên trình duyệt tại `http://localhost:18927/qr` (chỉ trên máy này; `--qr-url` mở cho mạng LAN, `--public-url` cho một reverse proxy). Thông tin đăng nhập lưu tại `~/.zalo-agent-cli/` (quyền 0600, được mã hóa trên đĩa).
105
+
106
+ Nếu khi xác nhận trên điện thoại bạn tick ô **"Đồng bộ tin nhắn"**, `login` khôi phục lịch sử ngay, không cần chạm thêm; nếu không, nó in lệnh `zalo-agent sync --from <ngày>` để lấy phần máy này còn thiếu. `--no-sync` chỉ báo mà không khôi phục, `--verbose` liệt kê những gì nó đã đọc. Đăng nhập lại bằng QR giữ nguyên mã thiết bị của tài khoản, nên hàng đợi tin offline của Zalo vẫn còn.
82
107
 
83
108
  ### 2. Tìm bạn bè
84
109
 
@@ -113,22 +138,31 @@ Tất cả lệnh hỗ trợ `--json`. Tài liệu đầy đủ: **[Wiki](https:
113
138
  | Nhóm lệnh | Số lệnh | Mô tả | Docs |
114
139
  |------------|:---:|--------|------|
115
140
  | *(top-level)* | 11 | `login`, `logout`, `status`, `whoami`, `update`, `sync`, `sync-mobile`, `sync-media`, `sync-reactions`, `sync-boards`, `sync-cloud` | [Đăng nhập & Đăng xuất](https://github.com/ardennguyen/zalo-agent-cli/wiki/%C4%90%C4%83ng-Nh%E1%BA%ADp-&-%C4%90%C4%83ng-Xu%E1%BA%A5t) |
116
- | `msg` | 24 | Gửi tin nhắn, hình, file, voice, video, sticker, link, thẻ chuyển khoản, QR, thu hồi, lịch sử | [Tin nhắn](https://github.com/ardennguyen/zalo-agent-cli/wiki/Tin-Nh%E1%BA%AFn) |
141
+ | `msg` | 27 | Gửi tin nhắn, hình, file, voice, video, sticker, link, thẻ chuyển khoản, QR, thu hồi, lịch sử, tìm kiếm, mở media | [Tin nhắn](https://github.com/ardennguyen/zalo-agent-cli/wiki/Tin-Nh%E1%BA%AFn) |
117
142
  | `friend` | 26 | Danh sách, tìm, thêm, xóa, chặn, biệt danh, gợi ý | [Bạn bè](https://github.com/ardennguyen/zalo-agent-cli/wiki/B%E1%BA%A1n-B%C3%A8) |
118
143
  | `group` | 35 | Tạo, đổi tên, thành viên, cài đặt, link, ghi chú, lời mời | [Nhóm & Cộng đồng](https://github.com/ardennguyen/zalo-agent-cli/wiki/Nh%C3%B3m) |
119
- | `conv` | 21 | Tắt thông báo, ghim, lưu trữ, ẩn hội thoại, tự xóa, xoá bộ nhớ đệm cục bộ (`forget`) | [Hội thoại](https://github.com/ardennguyen/zalo-agent-cli/wiki/H%E1%BB%99i-Tho%E1%BA%A1i) |
120
- | `account` | 7 | Đa tài khoản & proxy, thiết bị đã liên kết, xóa tài khoản | [Tài khoản](https://github.com/ardennguyen/zalo-agent-cli/wiki/T%C3%A0i-Kho%E1%BA%A3n) |
144
+ | `conv` | 22 | Tắt thông báo, ghim, lưu trữ, ẩn hội thoại, tự xóa, xoá bộ nhớ đệm cục bộ (`forget`) | [Hội thoại](https://github.com/ardennguyen/zalo-agent-cli/wiki/H%E1%BB%99i-Tho%E1%BA%A1i) |
145
+ | `account` | 12 | Đa tài khoản & proxy, thiết bị đã liên kết, gói zBusiness/zCloud và dung lượng trên máy, xuất phiên đăng nhập (`export --yes`), xóa tài khoản, mã hóa dữ liệu trên đĩa (`security status\|migrate\|rekey\|provider`) | [Tài khoản](https://github.com/ardennguyen/zalo-agent-cli/wiki/T%C3%A0i-Kho%E1%BA%A3n) |
121
146
  | `profile` | 14 | Xem/cập nhật hồ sơ, ảnh đại diện, quyền riêng tư | [Hồ sơ](https://github.com/ardennguyen/zalo-agent-cli/wiki/H%E1%BB%93-S%C6%A1) |
122
147
  | `poll` | 7 | Tạo, bỏ phiếu, đóng khảo sát | [Khảo sát](https://github.com/ardennguyen/zalo-agent-cli/wiki/Kh%E1%BA%A3o-S%C3%A1t) |
123
148
  | `reminder` | 6 | Tạo, sửa, xóa nhắc nhở | [Nhắc nhở](https://github.com/ardennguyen/zalo-agent-cli/wiki/Nh%E1%BA%AFc-Nh%E1%BB%9F) |
124
149
  | `auto-reply` | 4 | Quản lý trả lời tự động | [Trả lời tự động](https://github.com/ardennguyen/zalo-agent-cli/wiki/Tr%E1%BA%A3-L%E1%BB%9Di-T%E1%BB%B1-%C4%90%E1%BB%99ng) |
125
- | `quick-msg` | 4 | Tin nhắn nhanh đã lưu | [Tin nhắn nhanh](https://github.com/ardennguyen/zalo-agent-cli/wiki/Tin-Nh%E1%BA%AFn-Nhanh) |
150
+ | `quick-msg` | 6 | Tin nhắn nhanh đã lưu, bật/tắt tính năng | [Tin nhắn nhanh](https://github.com/ardennguyen/zalo-agent-cli/wiki/Tin-Nh%E1%BA%AFn-Nhanh) |
151
+ | `read` | 2 | Các endpoint chỉ-đọc của Zalo chưa có lệnh riêng: sticker, GIF, hạng hồ sơ, danh sách chặn, biệt danh… (chỉ đọc, không thay đổi gì) | [Tham chiếu lệnh](skill/references/command-reference.md) |
152
+ | `write` | 2 | Các endpoint thay đổi trạng thái của Zalo chưa có lệnh riêng: ghim, RSVP nhắc hẹn, thu hồi nhiều tin… (`--dry-run` để xem yêu cầu, `--yes` mới gửi thật) | [Tham chiếu lệnh](skill/references/command-reference.md) |
126
153
  | `label` | 2 | Nhãn hội thoại | [Nhãn](https://github.com/ardennguyen/zalo-agent-cli/wiki/Nh%C3%A3n) |
127
- | `catalog` | 10 | zBusiness — danh mục sản phẩm | [zBusiness](https://github.com/ardennguyen/zalo-agent-cli/wiki/zBusiness) |
154
+ | `catalog` | 11 | zBusiness — danh mục sản phẩm | [zBusiness](https://github.com/ardennguyen/zalo-agent-cli/wiki/zBusiness) |
128
155
  | `bank` | 5 | Tài khoản ngân hàng đã lưu, danh sách ngân hàng được hỗ trợ | [Ngân hàng](https://github.com/ardennguyen/zalo-agent-cli/wiki/Ng%C3%A2n-H%C3%A0ng) |
156
+ | `cloud` | 4 | Chỉ mục zCloud cục bộ: tổng quan, kế hoạch dọn dẹp, dọn dẹp (`apply --yes`), tải một mục về | [Tham chiếu lệnh](skill/references/command-reference.md) |
157
+ | `db` | 6 | Cơ sở dữ liệu tin nhắn đã mã hóa: truy vấn SQL chỉ-đọc (`query`), sao lưu mã hóa (`backup`), xuất bản sao (`export`: mã hóa bằng mật khẩu, hoặc `--plaintext` cần `--yes`), kiểm tra toàn vẹn (`verify`), dung lượng và hạn mức (`usage`), dọn theo hạn mức/thời hạn lưu (`purge`); chat ẩn chỉ hiện khi có mã PIN | [Bộ nhớ đệm & Đồng bộ](https://github.com/ardennguyen/zalo-agent-cli/wiki/B%E1%BB%99-Nh%E1%BB%9B-%C4%90%E1%BB%87m-&-%C4%90%E1%BB%93ng-B%E1%BB%99) |
129
158
  | `listen` | 1 | Lắng nghe real-time, webhook, JSONL, ghi vào cache cục bộ | [Lắng nghe](https://github.com/ardennguyen/zalo-agent-cli/wiki/L%E1%BA%AFng-Nghe) |
130
- | `mcp` | 3 | MCP server (`start`, `wait`, `mark-read`) — 25 tools cho AI agent + zero-polling CLI | [MCP Server](https://github.com/ardennguyen/zalo-agent-cli/wiki/MCP-Server-(VN)) |
131
- | **`oa`** | **32** | **Zalo Official Account API v3.0 — OAuth, tin nhắn, follower, tag, bài viết, cửa hàng, webhook** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account-(VN))** |
159
+ | `fleet` | 8 | Chạy nhiều tài khoản trên một máy: bảng cổng, một bảng trạng thái, khởi động/dừng/khởi động lại theo lô (qua systemd khi có unit), dọn dữ liệu theo lịch (`purge`), sinh file systemd/Caddy cho VPS (`generate`), API vòng đời tài khoản kèm thêm tài khoản bằng QR (`serve`) | [Tham chiếu lệnh](skill/references/command-reference.md) |
160
+ | `policy` | 4 | Chính sách runtime đổi được khi server đang chạy (`get`, `set`, `unset`) và token của admin API (`token --rotate`) | [Cấu hình](docs/configuration.vi.md) |
161
+ | `presence` | 4 | Socket của daemon theo hiện diện on-demand: trạng thái, thức ngay, tạm nghỉ ngay, lấy lại tài khoản sau khi nhường (`resume --yes`) | [Tham chiếu lệnh](skill/references/command-reference.md) |
162
+ | `mcp` | 8 | MCP server (`start`, `wait`, `mark-read`, bốn lệnh `webhook` và `approver` đặt mật khẩu người duyệt) — 37 tools cho AI agent + zero-polling CLI | [MCP Server](https://github.com/ardennguyen/zalo-agent-cli/wiki/MCP-Server-(VN)) |
163
+ | **`oa`** | **70** | **Zalo Official Account API — OAuth, tin tư vấn, người dùng, tag, bài viết, nhóm chat GMF, gọi thoại, webhook** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account-(VN))** |
164
+ | **`zbs`** | **18** | **ZBS Template Message — template, gửi tin qua SĐT (hash, RSA, journey) hoặc UID, trạng thái, quota, chất lượng** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account-(VN))** |
165
+ | **`social`** | **6** | **Social API — người dùng Zalo đăng nhập vào ứng dụng của bạn (OAuth v4, PKCE, DPoP), đọc ID, tên, ảnh đại diện** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account-(VN))** |
132
166
 
133
167
  Xem thêm: [Đa tài khoản & Proxy](https://github.com/ardennguyen/zalo-agent-cli/wiki/%C4%90a-T%C3%A0i-Kho%E1%BA%A3n-&-Proxy) · [Cài đặt VPS](https://github.com/ardennguyen/zalo-agent-cli/wiki/C%C3%A0i-%C4%90%E1%BA%B7t-VPS) · [Thẻ chuyển khoản & QR](https://github.com/ardennguyen/zalo-agent-cli/wiki/Th%E1%BA%BB-Chuy%E1%BB%83n-Kho%E1%BA%A3n-&-QR) · [Bộ nhớ đệm & Đồng bộ](https://github.com/ardennguyen/zalo-agent-cli/wiki/B%E1%BB%99-Nh%E1%BB%9B-%C4%90%E1%BB%87m-&-%C4%90%E1%BB%93ng-B%E1%BB%99) · [Bảo mật](https://github.com/ardennguyen/zalo-agent-cli/wiki/B%E1%BA%A3o-M%E1%BA%ADt)
134
168
 
@@ -136,20 +170,29 @@ Xem thêm: [Đa tài khoản & Proxy](https://github.com/ardennguyen/zalo-agent-
136
170
 
137
171
  ## Tính năng
138
172
 
139
- - Đăng nhập QR qua HTTP server tự động (browser + terminal), báo ngay khi bị **từ chối trên điện thoại** thay vì treo tới hết 60s
173
+ - Đăng nhập QR qua HTTP server tự động (browser + terminal), báo ngay khi bị **từ chối trên điện thoại** thay vì treo tới khi mã hết hạn; trang QR báo đăng nhập thành công hay thất bại, và mã hết hạn có nút "Lấy mã mới"
140
174
  - Đa tài khoản với proxy riêng biệt (1:1), device fingerprint riêng cho từng tài khoản; chạy **nhiều tài khoản live đồng thời** (mỗi tài khoản một tiến trình `mcp start` hoặc `listen` kèm `--account <ID>`, và truyền `--account <ID>` / `ZALO_ACCOUNT` trên mọi lệnh CLI mà không ghi đè `accounts.json`)
141
- - **222 lệnh** phủ hết tính năng Zalo cá nhân
142
- - **Zalo Official Account (OA) API v3.0** — OAuth login, gửi tin nhắn, follower, tag, bài viết, cửa hàng, webhook listener, multi-OA
143
- - **MCP server** (stdio + HTTP/HTTPS + OAuth 2.0) — 25 tools cho Claude Code, Gemini và các MCP client: đọc, chờ tin nhắn đến (`zalo_wait_for_message`), gửi (văn bản, link preview, danh thiếp, vào My Documents, đánh dấu Quan trọng/Khẩn cấp), tìm kiếm tin nhắn trong cache, tra cứu người dùng, gắn/gỡ nhãn hội thoại (`zalo_label`), xem bạn bè và xử lý lời mời kết bạn (`zalo_friend`), xem thông tin nhóm, tạo nhóm, thêm/xóa thành viên và rời nhóm (`zalo_group`), thả cảm xúc, thu hồi, chuyển tiếp, xóa tin, nhắc hẹn, ghi chú/ghim tin, bình chọn, xem thành viên nhóm, liệt kê hội thoại gần đây và kiểm tra độ đầy đủ của cache
144
- - **Bộ nhớ đệm cục bộ (SQLite)** — `listen` ghi mọi tin nhắn vào `zalo.db`, `msg history` đọc từ cache, `sync` (hoặc `sync-mobile`) khôi phục toàn bộ lịch sử từ điện thoại vào `zalo.db` (giải mã transfer-sync-v2; xác nhận một lần trên điện thoại), mặc định lấy **toàn bộ** lịch sử (không còn mốc chặn 2024-01-01); thêm `--days <n>` hoặc `--from <YYYY-MM-DD>` nếu chỉ cần một khoảng. Dọn dẹp: `sync-media --prune <days|all>` giải phóng dung lượng nhưng giữ nguyên nội dung tin nhắn, `--prune-orphans` nhắm vào hội thoại tài khoản không còn, và `conv forget` xoá hẳn bản sao cục bộ của một hội thoại — không cái nào gửi gì tới Zalo. Luồng đồng bộ chỉ mang **liên kết** media chứ không mang file, nên sau khi lưu tin nhắn, `sync-mobile` **tự động tải media về** (thêm `--messages-only` nếu chỉ muốn tin nhắn); `sync-media` chạy lại/tiếp tục bước tải này, không cần xác nhận trên điện thoại. Ghi chú, tin ghim, bình chọn và nhắc hẹn nằm ngoài luồng tin nhắn — dùng `sync-boards`
175
+ - **321 lệnh** phủ hết tính năng Zalo cá nhân, cùng API chính thức OA, ZBS và Social API
176
+ - **Zalo Official Account (OA) API và ZBS Template Message** — OAuth login, tin tư vấn, người dùng, tag, bài viết, nhóm chat GMF, gọi thoại, tin template qua SĐT hoặc UID, webhook listener, multi-OA
177
+ - **MCP server** (stdio + HTTP/HTTPS + OAuth 2.0) — 37 tools cho Claude Code, Gemini và các MCP client: đọc, chờ tin nhắn đến (`zalo_wait_for_message`), gửi (văn bản, đính kèm file/ảnh trên máy, link preview, danh thiếp, vào My Documents, đánh dấu Quan trọng/Khẩn cấp), tìm kiếm tin nhắn trong cache, tra cứu người dùng, gắn/gỡ nhãn hội thoại (`zalo_label`), quản lý bạn bè và lời mời kết bạn (`zalo_friend`), quản trị nhóm đầy đủ (`zalo_group`), cài đặt hội thoại (`zalo_conversation`), hồ sơ (`zalo_profile`), trả lời tự động, tin nhắn nhanh, catalog, tài khoản ngân hàng, chỉ mục zCloud, sticker và link, thả cảm xúc, thu hồi, chuyển tiếp, xóa tin, nhắc hẹn, ghi chú/ghim tin, bình chọn, xem thành viên nhóm, liệt kê hội thoại gần đây và kiểm tra độ đầy đủ của cache; mọi lệnh CLI của tài khoản cá nhân đều có hành động MCP tương ứng
178
+ - **Dữ liệu được mã hóa trên đĩa** — thông tin đăng nhập và các file nhỏ được niêm phong, `zalo.db` và hàng đợi webhook là SQLCipher v4, media tải về được mã hóa; khóa nằm trong bộ cung cấp khóa của máy (DPAPI, keychain, Secret Service, systemd-creds, KMS hoặc file passphrase). Mỗi tin nhắn có **row MAC** để phát hiện chỉnh sửa (`db verify`). Bot đọc dữ liệu qua `db query` / `db export` (chat ẩn chỉ khi có PIN) hoặc các MCP tool — xem [docs/security.vi.md](docs/security.vi.md)
179
+ - **Hiện diện on-demand** — `mcp start --http` và `listen --daemon` chỉ giữ socket khi có việc (tool call, chờ tin, lease của CRM, lệnh CLI chuyển qua daemon) rồi tạm nghỉ; tin đến lúc nghỉ được lấy lại từ hàng đợi offline của Zalo. `presence.mode: "always-on"` cho thời gian thực, `presence status|wake|park|resume`, sự kiện `account_state`; bị phiên khác chiếm thì nhường (`YIELDED`), bị đăng xuất thì vẫn chạy (`SIGNED_OUT`) để thêm lại bằng QR
180
+ - **Chính sách runtime và admin API** — `confirmMode`, chat ẩn, link media, webhook, hạn mức, thời hạn lưu, hiện diện… đổi được khi server đang chạy (`zalo-agent policy set`, file thả vào, hoặc `/zalo/admin/policy` với credential admin riêng mà agent không bao giờ có), theo tầng tenant < user < tài khoản
181
+ - **Hạn mức dung lượng kiểu zCloud** — vượt hạn mức vẫn lưu tiếp, gửi sự kiện `storage_quota` (webhook, `listen`, MCP) và chỉ xóa (media cũ trước) sau **45 ngày** ân hạn; quy tắc thời hạn lưu `retention.*`; `db usage`, `db purge`, `fleet purge` cho timer
182
+ - **Xuất dữ liệu cho CRM** — `POST /zalo/admin/export/<ownId>` tạo file xuất mã hóa bằng mật khẩu của người dùng (hoặc plaintext khi xác nhận) qua link tải có hạn; chat ẩn chỉ có khi chủ tài khoản nhập PIN trên trang bảo mật. CLI: `db export --password`
183
+ - **Trang duyệt dùng một lần** cho `confirmMode: "human"` và PIN chat ẩn, link media có hạn (`inline` / `link` / `tempfile`), tất cả dựng từ một địa chỉ công khai `publicUrl`
184
+ - **Tên gợi nhớ (alias) trước tiên ở mọi nơi** — mọi output gọi một người theo tên chủ tài khoản đặt cho họ, như ứng dụng Zalo (`senderAlias`, `senderZaloName` đi kèm); đổi alias trên thiết bị nào cũng tới daemon trong vài giây (log của daemon ghi `aliases: N changed`)
185
+ - **Rời nhóm thì xóa lịch sử nhóm trên máy**, như ứng dụng Zalo (sự kiện `group_gone`); `groups.onLeave: "keep"` giữ lại
186
+ - **Bộ nhớ đệm cục bộ (SQLite mã hóa)** — `listen` ghi mọi tin nhắn vào `zalo.db`, `msg history` đọc từ cache, `sync` (hoặc `sync-mobile`) khôi phục toàn bộ lịch sử từ điện thoại vào `zalo.db` (giải mã transfer-sync-v2; xác nhận một lần trên điện thoại), mặc định lấy **toàn bộ** lịch sử (không còn mốc chặn 2024-01-01); thêm `--days <n>` hoặc `--from <YYYY-MM-DD>` nếu chỉ cần một khoảng. Dọn dẹp: `sync-media --prune <days|all>` giải phóng dung lượng nhưng giữ nguyên nội dung tin nhắn, `--prune-orphans` nhắm vào hội thoại tài khoản không còn, và `conv forget` xoá hẳn bản sao cục bộ của một hội thoại — không cái nào gửi gì tới Zalo. Luồng đồng bộ chỉ mang **liên kết** media chứ không mang file, nên sau khi lưu tin nhắn, `sync-mobile` **tự động tải media về** (thêm `--messages-only` nếu chỉ muốn tin nhắn); `sync-media` chạy lại/tiếp tục bước tải này, không cần xác nhận trên điện thoại. Ghi chú, tin ghim, bình chọn và nhắc hẹn nằm ngoài luồng tin nhắn — dùng `sync-boards`
145
187
  - Tự động tải media (ảnh/audio/video) — một downloader duy nhất cho `listen`, `msg history`, `mcp start` và các lệnh sync, lưu vào `~/.zalo-agent-cli/accounts/<id>/media/<threadId>/` (hoặc tách riêng credentials, database `zalo.db`, media và OA sang các ổ đĩa/mount khác nhau qua `--credentials-dir`, `--data-dir`, `--media-dir`, `--oa-dir` / biến môi trường `ZALO_*_DIR` trong `~/.zalo-agent-cli/.env`; nếu dùng kèm `zalo-mcp`, chỉ nên giữ cấu hình PORT trong `zalo-mcp/.env` và đặt toàn bộ đường dẫn lưu trữ vào `<CONFIG_DIR>/.env`)
146
- - Thẻ chuyển khoản (55+ ngân hàng VN) & QR VietQR
188
+ - Thẻ chuyển khoản (60+ ngân hàng VN) & QR VietQR
147
189
  - Lắng nghe real-time với webhook & lưu JSONL local. Webhook **bền vững**: mỗi sự kiện ghi xuống đĩa rồi mới gửi, đúng thứ tự, thử lại khi bên nhận hỏng, sống sót qua khởi động lại (`mcp webhook status`)
148
- - **Vận hành nhiều tài khoản**: `/health`, `/ready`, `/status` và `/metrics` (Prometheus), `fleet status|start|restart|generate`, mức log + xoay vòng `daemon.log`, `ZALO_START_JITTER` / `ZALO_LOGIN_SLOTS` — xem `docs/deployment.vi.md` §4.7–4.8
190
+ - **Vận hành nhiều tài khoản**: `/health`, `/ready`, `/status` và `/metrics` (Prometheus), `fleet status|start|stop|restart|purge|generate|serve`, mức log + xoay vòng `daemon.log`, `ZALO_START_JITTER` / `ZALO_LOGIN_SLOTS` / `ZALO_CONNECT_SLOTS` — xem [docs/deployment.vi.md](docs/deployment.vi.md) §4.7–4.8 và [bộ cấu hình mẫu theo từng trường hợp](docs/config-samples/use-cases/) (máy cá nhân, LAN, VPS, backend CRM, SaaS với KMS)
191
+ - Hàng đợi offline của Zalo tính theo thiết bị: đăng nhập lại bằng QR giữ nguyên mã thiết bị; độ phủ của cache không bao giờ tính từ trước khi thiết bị này bắt đầu dùng (`deviceSince`), và khi Zalo báo tràn hàng đợi, tin nhóm được bù từ kho tin trên cloud (sự kiện `queue_overflow`)
149
192
  - Tin nhắn **Markdown** được chuyển thành định dạng thật của Zalo (đậm, nghiêng, gạch đầu dòng, tiêu đề) — `zalo_send_message` mặc định, `msg send --markdown`
150
193
  - `logout` hủy phiên **phía server** thật sự; `logout --purge` / `account remove` xóa sạch dữ liệu cục bộ
151
194
  - Output `--json` cho mọi lệnh — scripting & AI agents
152
- - Credentials lưu cục bộ với quyền 0600
195
+ - Credentials lưu cục bộ với quyền 0600, được niêm phong trên đĩa; `account export` ghi phiên đăng nhập ra file rõ chỉ khi có `--yes`
153
196
  - **Dual mode**: interactive (con người) + non-interactive (AI agents, CI/CD)
154
197
 
155
198
  ## Tài liệu
@@ -157,12 +200,15 @@ Xem thêm: [Đa tài khoản & Proxy](https://github.com/ardennguyen/zalo-agent-
157
200
  | Tài liệu | Nội dung |
158
201
  |----------|----------|
159
202
  | [INSTALLATION.vi.md](INSTALLATION.vi.md) ([EN](INSTALLATION.md)) | Cài đặt `zalo-mcp` wrapper, cấu hình MCP client, thiết lập OA |
160
- | [docs/official-account.vi.md](docs/official-account.vi.md) ([EN](docs/official-account.md)) | Tham chiếu đầy đủ lệnh OA (song ngữ VN / EN) |
203
+ | [docs/official-account.vi.md](docs/official-account.vi.md) ([EN](docs/official-account.md)) | Tham chiếu đầy đủ lệnh OA và ZBS (song ngữ VN / EN) |
161
204
  | [docs/deployment.vi.md](docs/deployment.vi.md) ([EN](docs/deployment.md)) | Hướng dẫn triển khai production (một socket, nhiều bot, HTTPS, OAuth 2.0, systemd/Docker) |
205
+ | [docs/configuration.vi.md](docs/configuration.vi.md) ([EN](docs/configuration.md)) | Mọi biến môi trường, khóa `mcp-config.json` / `storage.json`, chính sách runtime, hạn mức, hiện diện on-demand, `groups.onLeave` và các cách cấu hình khuyến nghị |
206
+ | [docs/config-samples/use-cases/](docs/config-samples/use-cases/) | Bộ file cấu hình đầy đủ cho từng trường hợp: máy cá nhân (stdio), LAN qua HTTP, VPS vài tài khoản, backend CRM, SaaS với KMS (README song ngữ) |
207
+ | [docs/security.vi.md](docs/security.vi.md) ([EN](docs/security.md)) | Mã hóa dữ liệu trên đĩa: những gì được niêm phong, bộ cung cấp khóa (DPAPI, systemd-creds, KMS, passphrase), lớp dkey, nâng cấp từ 2.x, row MAC, file xuất mã hóa bằng mật khẩu, sao lưu và xử lý sự cố |
162
208
  | [skill/SKILL.md](skill/SKILL.md) | Skill cho AI agent |
163
209
  | [skill/references/command-reference.md](skill/references/command-reference.md) | Tham chiếu lệnh đầy đủ (nguồn chuẩn) |
164
210
  | [skill/references/mcp-guide.md](skill/references/mcp-guide.md) | Hướng dẫn MCP server (tiếng Việt) |
165
- | [skill/references/oa-command-reference.md](skill/references/oa-command-reference.md) | Tham chiếu nhanh lệnh OA cho agent |
211
+ | [skill/references/oa-command-reference.md](skill/references/oa-command-reference.md) | Tham chiếu lệnh OA và ZBS cho agent |
166
212
  | [skill/references/login-flow.md](skill/references/login-flow.md) | Các cách đăng nhập (QR, proxy, credentials) |
167
213
  | [skill/references/listen-mode-guide.md](skill/references/listen-mode-guide.md) | Vận hành listener và webhook |
168
214
  | [tests/README.md](tests/README.md) | Cách chạy và viết test: bộ offline, E2E phân tầng + checklist thủ công |
@@ -177,21 +223,25 @@ zalo-agent-cli © 2026 Arden Nguyen Duc Huy được cấp phép theo [CC BY-NC-
177
223
  - **Miễn phí cho mục đích phi thương mại**: cá nhân, học thuật, nghiên cứu. **Không cấp phép cho mục đích thương mại** — ví dụ dùng trong sản phẩm thương mại, để cung cấp dịch vụ có thu phí, hoặc trong hoạt động kinh doanh của một công ty. Muốn xin giấy phép thương mại, hãy [mở một issue](https://github.com/ardennguyen/zalo-agent-cli/issues).
178
224
  - **Ghi công**: khi chia sẻ dự án này hoặc một phần của nó (nguyên bản hay đã sửa đổi, kể cả bên trong dự án khác), hãy ghi công theo mẫu trong [NOTICE](NOTICE), nêu rõ bạn có sửa đổi hay không, và dẫn link giấy phép.
179
225
  - **Chia sẻ tương tự (ShareAlike)**: bản sửa đổi được chia sẻ phải dùng CC BY-NC-SA 4.0 (hoặc phiên bản mới hơn, hoặc giấy phép tương thích do Creative Commons liệt kê).
180
- - Các phần dẫn xuất từ phần mềm MIT — [zalo-agent-cli của PhucMPham](https://github.com/PhucMPham/zalo-agent-cli) và bản vá của [zca-js](https://github.com/RFS-ADRENO/zca-js) được đóng gói kèm — vẫn thuộc giấy phép MIT; xem [NOTICE](NOTICE).
226
+ - Các thông báo giấy phép MIT mà dự án phải giữ nằm trong [NOTICE](NOTICE).
181
227
  - Các phiên bản phát hành trước thay đổi này (2.0.0 trở về trước) được phát hành theo giấy phép MIT và giữ nguyên các điều khoản đó.
182
228
 
183
229
  ---
184
230
 
185
231
  ## English
186
232
 
187
- CLI tool for Zalo automation — multi-account, proxy support, bank transfers, QR payments, Official Account API v3.0, and an MCP server for AI agents.
233
+ CLI tool for Zalo automation — multi-account, proxy support, bank transfers, QR payments, the Official Account API and ZBS Template Message, and an MCP server for AI agents.
234
+ Its engine is this project's own implementation of Zalo's protocol (since 3.0, no zca-js): requests are built in the wire format Zalo expects, and the engine tracks the current protocol instead of waiting for a third-party library.
188
235
 
189
236
  > [!IMPORTANT]
190
- > **Zalo allows one web session per account — this CLI occupies it.**
191
- > Signing into Zalo Web (or another PC client) revokes the CLI's session
192
- > server-side, instantly, even with nothing running. The reverse is also true:
193
- > `zalo-agent login` signs Zalo Web out. Your phone app is unaffected.
194
- > Measured 2026-09-20.
237
+ > **Zalo keeps one web login per account — this CLI (and its server) is that login.**
238
+ > A QR login into Zalo in a browser anywhere else signs the server out at Zalo, instantly, even with nothing
239
+ > running: a running daemon goes `signed_out` and waits for the account to be added again by QR. The
240
+ > reverse is also true: `zalo-agent login` signs Zalo in the browser out. **The phone app and the Zalo desktop app
241
+ > are separate logins that run beside the server** — use them to read along, never a browser.
242
+ > Each QR login adds a new entry to the phone's device list (the server's older entries show as logged
243
+ > out), but Zalo's offline queue survives, because the CLI keeps the account's device id across re-logins.
244
+ > The `oa`, `zbs` and `social` commands are the exception — they use Zalo's **official APIs** (OA, ZBS, Social API) and carry no ban risk.
195
245
 
196
246
  > [!TIP]
197
247
  > **AI Agent Skill** — Use with OpenClaw, Claude Code, or any SKILL.md-compatible agent:
@@ -199,19 +249,20 @@ CLI tool for Zalo automation — multi-account, proxy support, bank transfers, Q
199
249
  > clawhub install zalo-agent # OpenClaw (from ClawHub registry)
200
250
  > cp -r skill/ ~/.claude/skills/zalo-agent/ # Claude Code
201
251
  > ```
202
- > 18 command groups · 222 commands · listen mode + webhook · 55+ VN banks · multi-account + proxy
252
+ > 24 command groups · 321 commands · listen mode + webhook · 60+ VN banks · multi-account + proxy
203
253
  > See [skill/SKILL.md](skill/SKILL.md) · [Full command reference](skill/references/command-reference.md) · [Eval scenarios](skill/evals/)
204
254
 
205
255
  > [!NOTE]
206
- > **Zalo Official Account (OA)** — Official Zalo OA API v3.0:
256
+ > **Zalo Official Account (OA) and ZBS** — Zalo's official OA API and ZBS Template Message:
207
257
  > ```bash
208
258
  > zalo-agent oa init # Setup wizard (interactive)
209
259
  > zalo-agent oa init --app-id <ID> --secret <KEY> --skip-webhook # Non-interactive (AI agent)
210
260
  > zalo-agent oa whoami # OA profile
211
- > zalo-agent oa msg text <user-id> "Hello" # Send message
212
- > zalo-agent oa listen -p 3000 # Webhook listener
261
+ > zalo-agent oa msg text <user-id> "Hello" # Send a consultation message
262
+ > zalo-agent zbs send 0901234567 <template-id> '{...}' # Send a ZBS template message by phone
263
+ > zalo-agent oa listen -p 3000 -s <oa-secret-key> # Webhook listener
213
264
  > ```
214
- > OAuth login · messaging · followers · tags · articles · store · webhook listener · multi-OA · VPS support
265
+ > OAuth login · consultation messages · users · tags · articles · GMF group chats · voice calls · ZBS template messages · webhook listener · multi-OA · VPS support
215
266
  > See [docs/official-account.md](docs/official-account.md) · [Tiếng Việt](docs/official-account.vi.md)
216
267
 
217
268
  > [!TIP]
@@ -219,19 +270,19 @@ CLI tool for Zalo automation — multi-account, proxy support, bank transfers, Q
219
270
  > ```bash
220
271
  > zalo-agent mcp start # stdio (local Claude Code)
221
272
  > zalo-agent mcp start --account <ID> # Pin account (run multiple live accounts at once)
222
- > zalo-agent mcp start --http 3847 --auth your-secret # HTTP (VPS)
273
+ > ZALO_MCP_AUTH_TOKEN=<token> zalo-agent mcp start --http 3847 # HTTP; token in the environment, never on the command line
223
274
  > zalo-agent mcp wait -c my-bot --timeout 55 --json # Zero-polling wait for next message via CLI
224
275
  > zalo-agent mcp mark-read <cursor> -c my-bot --json # Advance consumer read cursor via CLI
225
276
  > ```
226
- > 25 tools: `zalo_get_messages` · `zalo_send_message` · `zalo_list_threads` · `zalo_search_threads` · `zalo_mark_read` · `zalo_get_history` · `zalo_view_media` · `zalo_react` · `zalo_undo` · `zalo_get_group_members` · `zalo_list_conversations` · `zalo_coverage` · `zalo_sync` · `zalo_sync_status` · `zalo_search_messages` · `zalo_lookup_user` · `zalo_forward_message` · `zalo_delete_message` · `zalo_reminder` · `zalo_note` · `zalo_poll` · `zalo_wait_for_message` · `zalo_label` · `zalo_friend` · `zalo_group`
277
+ > 37 tools: `zalo_get_messages` · `zalo_send_message` · `zalo_list_threads` · `zalo_search_threads` · `zalo_mark_read` · `zalo_get_history` · `zalo_view_media` · `zalo_react` · `zalo_undo` · `zalo_get_group_members` · `zalo_list_conversations` · `zalo_coverage` · `zalo_sync` · `zalo_sync_status` · `zalo_search_messages` · `zalo_lookup_user` · `zalo_forward_message` · `zalo_delete_message` · `zalo_reminder` · `zalo_note` · `zalo_poll` · `zalo_wait_for_message` · `zalo_label` · `zalo_friend` · `zalo_group` · `zalo_read` · `zalo_write` · `zalo_conversation` · `zalo_profile` · `zalo_auto_reply` · `zalo_quick_message` · `zalo_catalog` · `zalo_bank` · `zalo_cloud` · `zalo_sticker` · `zalo_link` · `zalo_official`
227
278
 
228
- [MCP sync](docs/mcp-sync.md) · [Multi-account pinning](docs/account-pinning.md) · [Production deployment](docs/deployment.md).
229
- > Auto-reconnect · thread filter · noise reduction · media auto-download · Zalo-group notifications · concurrent multi-account (`--account <ID>`)
279
+ > [MCP sync](docs/mcp-sync.md) · [Multi-account pinning](docs/account-pinning.md) · [Production deployment](docs/deployment.md) · [Configuration](docs/configuration.md).
280
+ > On-demand presence (an HTTP server holds the socket only while there is work; `presence.mode: "always-on"` for real time) · thread filter · noise reduction · media auto-download · Zalo-group notifications · concurrent multi-account (`--account <ID>`)
230
281
  > See [MCP Guide](skill/references/mcp-guide.md) · [INSTALLATION.md](INSTALLATION.md)
231
282
 
232
283
  ### Quick Start
233
284
 
234
- Requires **Node.js 22+**.
285
+ Requires **Node.js 22+** (22.19 or later).
235
286
 
236
287
  ```bash
237
288
  npm install -g @ardennguyen/zalo-agent-cli
@@ -241,8 +292,30 @@ zalo-agent listen # 3. Listen for threadId
241
292
  zalo-agent msg send <THREAD_ID> "Hello!" # 4. Send a message
242
293
  ```
243
294
 
295
+ Scan the QR with **Zalo app > QR scanner** (not the regular camera); the page is also at `http://localhost:18927/qr` (this machine only; `--qr-url` offers it to the LAN, `--public-url` to a reverse proxy). If you tick **"Sync messages"** on the phone when you confirm, `login` restores the history at once with no further tap; if not, it prints the `zalo-agent sync --from <date>` run that fetches what this machine lacks. `--no-sync` only reports, `--verbose` lists what it read. A QR re-login keeps the account's device id, so Zalo's offline queue survives it.
296
+
244
297
  For the sandboxed MCP-server install (recommended for AI clients), see [INSTALLATION.md](INSTALLATION.md) ([Tiếng Việt](INSTALLATION.vi.md)).
245
298
 
299
+ ### Upgrading from 2.x
300
+
301
+ 3.0 replaces zca-js with the project's own engine; how you run the CLI, the MCP server and the wrapper does not change. **Before the first 3.0 command, back up `~/.zalo-agent-cli`** (still plaintext at that point): 3.0 commands encrypt the saved login, `zalo.db` and the media as they open them (the very first one seals the login), and that is one-way — 2.5.9 cannot read them back. Never run two copies of one login at once (the backup and the upgraded home): they kick each other off. The full steps: [INSTALLATION.md](INSTALLATION.md#upgrading-from-259-to-30). The breaking changes:
302
+
303
+ - **Data on disk is encrypted.** `zalo.db` is SQLCipher: `sqlite3`, DB Browser or a bot that opens the file directly can no longer read it — use `zalo-agent db query` / `db export` or the MCP tools.
304
+ - **Destructive commands need `--yes`.** `msg undo`/`delete`, `group leave`, `friend remove`, `conv delete`, `logout`, `account remove`, `account export`, … send nothing without it and exit 2; `--dry-run` previews. Scripts add `--yes`.
305
+ - **MCP:** the matching actions need `confirm: true`; each deployment's `confirmMode` decides who confirms (`agent` by default, `human` asks the user through MCP elicitation or a one-time approve page, `off`). Every id has one name: `msgId` (not `id`/`messageId`), `userId` (not `uid`); `threadType` is `"dm"` or `"group"`; every id is a string. The new tools, `zalo_friend`, `zalo_group` and `zalo_send_message` refuse an input they do not take.
306
+ - **On-demand presence is the default** for `mcp start --http` and `listen --daemon`: the socket opens only while there is work and parks after 5 idle minutes; what arrives meanwhile comes back from Zalo's offline queue on the next connect (`catchUp: true`). For real-time webhooks set `presence.mode: "always-on"`. stdio MCP and a foreground `listen` stay connected.
307
+ - **An on-demand daemon whose account another session takes yields** (`yielded`) instead of exiting: every request is refused with `YIELDED` until you run `zalo-agent presence resume --yes`. Always-on still exits 3.
308
+ - **A login Zalo keeps refusing (for example after a Zalo login in a browser) leaves the daemon up, `signed_out`**, waiting for the account to be added again by QR, instead of exiting 4; `ZALO_EXIT_ON_SIGNED_OUT=1` keeps exit 4.
309
+ - **Leaving a group (or being removed or blocked, or a disband) deletes the group's local history**, as Zalo's own apps do; `groups.onLeave: "keep"` keeps it.
310
+ - **`senderName` is now alias first** (the name the account owner set); the Zalo name itself is `senderZaloName`.
311
+ - **`ZALO_QR_FLOW=legacy` is removed** — take it out of your environment or `.env`.
312
+ - **Official Account:** `oa msg` sends consultation messages only; transaction and promotion messages (`-m transaction|promotion`, stopped by Zalo on the OA API on 01/03/2026) move to the new `zbs` group (`zbs send`, `zbs uid`). `oa store`, `oa menu`, `oa msg list` and `oa msg status` (replaced by `zbs status`) are removed; some options are renamed to match Zalo's docs (`oa msg image --url`/`--attachment-id`, `oa msg file --token`, `oa follower update` takes named flags).
313
+ - **`logout` signs the device out** at Zalo; `--keep-session` keeps the old behavior.
314
+ - **A command that fails exits 1** (before, most exited 0). Exit codes: 0 done, 1 failed, 2 confirmation needed (`--yes`), 3 an always-on daemon was kicked (another session took the account), 4 Zalo keeps refusing the saved login (for a daemon, only with `ZALO_EXIT_ON_SIGNED_OUT=1`). With `--json` a failure is `{"error": …}`, and stdout is always one JSON object or array (never `""` or `null`).
315
+ - Wrapper `@ardennguyen/zalo-mcp` 2.1.0 requires engine 3.0.0.
316
+
317
+ Details: [CHANGELOG.md](CHANGELOG.md).
318
+
246
319
  ### Commands
247
320
 
248
321
  Full docs: **[Wiki](https://github.com/ardennguyen/zalo-agent-cli/wiki)** · [Full command reference](skill/references/command-reference.md)
@@ -250,41 +323,59 @@ Full docs: **[Wiki](https://github.com/ardennguyen/zalo-agent-cli/wiki)** · [Fu
250
323
  | Group | Commands | Description | Docs |
251
324
  |-------|:---:|-------------|------|
252
325
  | *(top-level)* | 11 | `login`, `logout`, `status`, `whoami`, `update`, `sync`, `sync-mobile`, `sync-media`, `sync-reactions`, `sync-boards`, `sync-cloud` | [Login & Logout](https://github.com/ardennguyen/zalo-agent-cli/wiki/Login-&-Logout) |
253
- | `msg` | 24 | Text, images, files, voice, video, stickers, links, bank cards, QR, recall, history | [Messages](https://github.com/ardennguyen/zalo-agent-cli/wiki/Messages) |
326
+ | `msg` | 27 | Text, images, files, voice, video, stickers, links, bank cards, QR, recall, history, search, open media | [Messages](https://github.com/ardennguyen/zalo-agent-cli/wiki/Messages) |
254
327
  | `friend` | 26 | List, find, add, remove, block, alias, recommendations | [Friends](https://github.com/ardennguyen/zalo-agent-cli/wiki/Friends) |
255
328
  | `group` | 35 | Create, rename, members, settings, links, notes, invites | [Groups](https://github.com/ardennguyen/zalo-agent-cli/wiki/Groups) |
256
- | `conv` | 21 | Mute, pin, archive, hidden, auto-delete, forget local cache | [Conversations](https://github.com/ardennguyen/zalo-agent-cli/wiki/Conversations) |
257
- | `account` | 7 | Multi-account & proxy, linked devices, account removal | [Accounts](https://github.com/ardennguyen/zalo-agent-cli/wiki/Accounts) |
329
+ | `conv` | 22 | Mute, pin, archive, hidden, auto-delete, forget local cache | [Conversations](https://github.com/ardennguyen/zalo-agent-cli/wiki/Conversations) |
330
+ | `account` | 12 | Multi-account & proxy, linked devices, zBusiness/zCloud plans and this machine's storage, login export (`export --yes`), account removal, encryption at rest (`security status\|migrate\|rekey\|provider`) | [Accounts](https://github.com/ardennguyen/zalo-agent-cli/wiki/Accounts) |
258
331
  | `profile` | 14 | Profile, avatar gallery, privacy | [Profile](https://github.com/ardennguyen/zalo-agent-cli/wiki/Profile) |
259
332
  | `poll` | 7 | Create, vote, lock polls | [Polls](https://github.com/ardennguyen/zalo-agent-cli/wiki/Polls) |
260
333
  | `reminder` | 6 | Create, edit, remove reminders | [Reminders](https://github.com/ardennguyen/zalo-agent-cli/wiki/Reminders) |
261
334
  | `auto-reply` | 4 | Auto-reply rules | [Auto-Reply](https://github.com/ardennguyen/zalo-agent-cli/wiki/Auto-Reply) |
262
- | `quick-msg` | 4 | Saved quick messages | [Quick Messages](https://github.com/ardennguyen/zalo-agent-cli/wiki/Quick-Messages) |
335
+ | `quick-msg` | 6 | Saved quick messages, the feature's on/off switch | [Quick Messages](https://github.com/ardennguyen/zalo-agent-cli/wiki/Quick-Messages) |
336
+ | `read` | 2 | Zalo's read-only endpoints with no command of their own: stickers, GIFs, profile rank, block list, nicknames… (reads only, changes nothing) | [Command reference](skill/references/command-reference.md) |
337
+ | `write` | 2 | Zalo's state-changing endpoints with no command of their own: pins, reminder RSVP, multi-recall… (`--dry-run` shows the request, `--yes` sends it) | [Command reference](skill/references/command-reference.md) |
263
338
  | `label` | 2 | Conversation labels | [Labels](https://github.com/ardennguyen/zalo-agent-cli/wiki/Labels) |
264
- | `catalog` | 10 | zBusiness catalogs & products | [Catalog](https://github.com/ardennguyen/zalo-agent-cli/wiki/Catalog) |
339
+ | `catalog` | 11 | zBusiness catalogs & products | [Catalog](https://github.com/ardennguyen/zalo-agent-cli/wiki/Catalog) |
265
340
  | `bank` | 5 | Saved bank accounts, supported banks | [Bank](https://github.com/ardennguyen/zalo-agent-cli/wiki/Bank) |
341
+ | `cloud` | 4 | The local zCloud index: summary, cleanup plan, the cleanup (`apply --yes`), download one item | [Command reference](skill/references/command-reference.md) |
342
+ | `db` | 6 | The encrypted message database: read-only SQL (`query`), encrypted backup (`backup`), copies (`export`: password-encrypted, or `--plaintext` with `--yes`), integrity check (`verify`), storage and quota (`usage`), quota/retention purge (`purge`); hidden chats only with the PIN | [Local Cache & Sync](https://github.com/ardennguyen/zalo-agent-cli/wiki/Local-Cache-&-Sync) |
266
343
  | `listen` | 1 | Real-time listener, webhook, JSONL, local cache writes | [Listener](https://github.com/ardennguyen/zalo-agent-cli/wiki/Listener) |
267
- | `mcp` | 3 | MCP server (`start`, `wait`, `mark-read`) — 25 tools for AI agents + zero-polling CLI | [MCP Server](https://github.com/ardennguyen/zalo-agent-cli/wiki/MCP-Server) |
268
- | **`oa`** | **32** | **Zalo Official Account API v3.0 — OAuth, messaging, followers, tags, articles, store, webhook** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account)** |
344
+ | `fleet` | 8 | Run many accounts on one machine: port table, one status table, batched start/stop/restart (through systemd when a unit runs the account), a purge for a timer (`purge`), the VPS's systemd/Caddy files (`generate`), the account-lifecycle API with QR add (`serve`) | [Command reference](skill/references/command-reference.md) |
345
+ | `policy` | 4 | The runtime policy a running server takes without a restart (`get`, `set`, `unset`) and the admin API's token (`token --rotate`) | [Configuration](docs/configuration.md) |
346
+ | `presence` | 4 | The daemon's socket under on-demand presence: status, wake now, park now, take the account back after a yield (`resume --yes`) | [Command reference](skill/references/command-reference.md) |
347
+ | `mcp` | 8 | MCP server (`start`, `wait`, `mark-read`, the four `webhook` commands and `approver` for the approver password) — 37 tools for AI agents + zero-polling CLI | [MCP Server](https://github.com/ardennguyen/zalo-agent-cli/wiki/MCP-Server) |
348
+ | **`oa`** | **70** | **Zalo Official Account API — OAuth, consultation messages, users, tags, articles, GMF group chats, voice calls, webhook** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account)** |
349
+ | **`zbs`** | **18** | **ZBS Template Message — templates, sends by phone number (hashed, RSA, journey) or UID, status, quota, quality** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account)** |
350
+ | **`social`** | **6** | **Social API — a Zalo user logs in to your app (OAuth v4, PKCE, DPoP); their ID, name and avatar** | **[Official Account](https://github.com/ardennguyen/zalo-agent-cli/wiki/Official-Account)** |
269
351
 
270
352
  See also: [Multi-Account & Proxy](https://github.com/ardennguyen/zalo-agent-cli/wiki/Multi-Account-&-Proxy) · [VPS Setup](https://github.com/ardennguyen/zalo-agent-cli/wiki/VPS-Setup) · [Bank Card & QR Payments](https://github.com/ardennguyen/zalo-agent-cli/wiki/Bank-Card-&-QR-Payments) · [Local Cache & Sync](https://github.com/ardennguyen/zalo-agent-cli/wiki/Local-Cache-&-Sync) · [Security](https://github.com/ardennguyen/zalo-agent-cli/wiki/Security)
271
353
 
272
354
  ### Features
273
355
 
274
- - QR login over an auto-started HTTP server (browser + terminal), reporting a **decline on the phone** immediately instead of hanging until the 60s timeout
356
+ - QR login over an auto-started HTTP server (browser + terminal), reporting a **decline on the phone** immediately instead of hanging until the code expires; the QR page says whether the login succeeded or failed, and an expired code has a "Get a new code" button
275
357
  - Multi-account with a dedicated proxy (1:1) and a per-account device fingerprint; run **multiple live accounts simultaneously** (one `mcp start` or `listen` process per account with `--account <ID>`, plus `--account <ID>` / `ZALO_ACCOUNT` on any CLI command without mutating `accounts.json`)
276
- - **222 commands** covering the personal-account Zalo surface
277
- - **Zalo Official Account (OA) API v3.0** — OAuth login, messaging, followers, tags, articles, store, webhook listener, multi-OA
278
- - **MCP server** (stdio + HTTP/HTTPS + OAuth 2.0) — 25 tools for Claude Code, Gemini and other MCP clients: read, wait for incoming messages (`zalo_wait_for_message`), send (text, local file/image attachments, link previews, contact cards, to My Documents too, marked Important/Urgent), search cached messages, look up users, manage conversation labels (`zalo_label`), list friends and handle friend requests (`zalo_friend`), inspect, create and manage groups and leave them (`zalo_group`), react, recall, forward, delete, reminders, group notes/pins, group polls, list a group's members, list recent conversations, and check how complete the cache is
279
- - **Local SQLite cache** — `listen` writes every message to `zalo.db`, `msg history` reads from it, and `sync` (or `sync-mobile`) restores full history from the phone into `zalo.db` (transfer-sync-v2 decrypt; one confirmation on the phone), defaulting to **all** history (the old 2024-01-01 floor is gone), with `--days <n>` or `--from <YYYY-MM-DD>` to narrow it. Housekeeping: `sync-media --prune <days|all>` reclaims disk while keeping message text, `--prune-orphans` targets conversations the account no longer has, and `conv forget` removes a conversation's local copy entirely — none of which contact Zalo. The sync stream carries media **links**, not files, so a `sync-mobile` run **downloads its attachments automatically** once the messages are stored (`--messages-only` skips it); `sync-media` re-runs or resumes that fetch on its own, with no phone confirmation. Notes, pinned messages, polls and reminders live outside the message stream — `sync-boards` fetches those
358
+ - **321 commands** covering the personal-account Zalo surface plus the official OA, ZBS and Social APIs
359
+ - **Zalo Official Account (OA) API and ZBS Template Message** — OAuth login, consultation messages, users, tags, articles, GMF group chats, voice calls, template messages by phone number or UID, webhook listener, multi-OA
360
+ - **MCP server** (stdio + HTTP/HTTPS + OAuth 2.0) — 37 tools for Claude Code, Gemini and other MCP clients: read, wait for incoming messages (`zalo_wait_for_message`), send (text, local file/image attachments, link previews, contact cards, to My Documents too, marked Important/Urgent), search cached messages, look up users, manage conversation labels (`zalo_label`), friends and friend requests (`zalo_friend`), full group administration (`zalo_group`), conversation settings (`zalo_conversation`), the profile (`zalo_profile`), auto-replies, quick messages, the catalog, bank accounts, the zCloud index, stickers and links, react, recall, forward, delete, reminders, group notes/pins, group polls, list a group's members, list recent conversations, and check how complete the cache is; every personal CLI command has an MCP action
361
+ - **Data encrypted at rest** — the saved login and the small files are sealed, `zalo.db` and the webhook outbox are SQLCipher v4, downloaded media is encrypted; the keys stay with the machine's key provider (DPAPI, the keychain, Secret Service, systemd-creds, a KMS or a passphrase file). Every message carries a **row MAC** for tamper evidence (`db verify`). Bots read through `db query` / `db export` (hidden chats only with the PIN) or the MCP tools — see [docs/security.md](docs/security.md)
362
+ - **On-demand presence** — `mcp start --http` and `listen --daemon` hold the socket only while something needs it (a tool call, a wait, a CRM lease, a CLI request routed to the daemon) and then park; what arrives meanwhile comes back from Zalo's offline queue. `presence.mode: "always-on"` for real time, `presence status|wake|park|resume`, `account_state` events; another session taking the account makes it yield (`YIELDED`), a revoked login leaves it up (`SIGNED_OUT`) to be added again by QR
363
+ - **Runtime policy and the admin API** — `confirmMode`, hidden chats, media links, the webhook, quotas, retention, presence… change while the server runs (`zalo-agent policy set`, a dropped file, or `/zalo/admin/policy` with its own admin credential that no agent ever holds), layered tenant < user < account
364
+ - **Storage quotas, the zCloud way** — over a limit, caching goes on, `storage_quota` events go out (webhook, `listen`, MCP), and only after a **45-day** grace period is anything deleted (oldest media first); `retention.*` rules; `db usage`, `db purge`, `fleet purge` for a timer
365
+ - **Export for a CRM** — `POST /zalo/admin/export/<ownId>` builds an export encrypted under the user's password (or plaintext when confirmed) behind an expiring download link; hidden chats only when the owner types the PIN on the secure page. CLI: `db export --password`
366
+ - **One-time approve pages** for `confirmMode: "human"` and the hidden-chat PIN, expiring media links (`inline` / `link` / `tempfile`), all built from one public address, `publicUrl`
367
+ - **Alias first, everywhere** — every output names a person by the alias the account owner set, as Zalo's own apps do (`senderAlias`, `senderZaloName` beside it); an alias changed on any device reaches the daemon within seconds (the daemon log says `aliases: N changed`)
368
+ - **Leaving a group deletes its local history**, as Zalo's own apps do (a `group_gone` event); `groups.onLeave: "keep"` keeps it
369
+ - **Local encrypted SQLite cache** — `listen` writes every message to `zalo.db`, `msg history` reads from it, and `sync` (or `sync-mobile`) restores full history from the phone into `zalo.db` (transfer-sync-v2 decrypt; one confirmation on the phone), defaulting to **all** history (the old 2024-01-01 floor is gone), with `--days <n>` or `--from <YYYY-MM-DD>` to narrow it. Housekeeping: `sync-media --prune <days|all>` reclaims disk while keeping message text, `--prune-orphans` targets conversations the account no longer has, and `conv forget` removes a conversation's local copy entirely — none of which contact Zalo. The sync stream carries media **links**, not files, so a `sync-mobile` run **downloads its attachments automatically** once the messages are stored (`--messages-only` skips it); `sync-media` re-runs or resumes that fetch on its own, with no phone confirmation. Notes, pinned messages, polls and reminders live outside the message stream — `sync-boards` fetches those
280
370
  - Automatic media download — one downloader shared by `listen`, `msg history`, `mcp start` and the sync commands, saving to `~/.zalo-agent-cli/accounts/<id>/media/<threadId>/` (or separate credentials, `zalo.db`, media, and OA credentials onto independent volumes/mounts via `--credentials-dir`, `--data-dir`, `--media-dir`, `--oa-dir` / `ZALO_*_DIR` in `~/.zalo-agent-cli/.env`; when using `zalo-mcp`, keep `zalo-mcp/.env` for PORT settings only and place all storage/engine settings in `<CONFIG_DIR>/.env`)
281
- - Bank cards (55+ VN banks) and VietQR payment images
371
+ - Bank cards (60+ VN banks) and VietQR payment images
282
372
  - Real-time listener with webhook forwarding and local JSONL archival. The webhook is **durable**: each event is written to disk first, then delivered in order, retried while the receiver is down, and kept across restarts (`mcp webhook status`)
283
- - **Running many accounts**: `/health`, `/ready`, `/status` and `/metrics` (Prometheus), `fleet status|start|restart|generate`, log levels and `daemon.log` rotation, `ZALO_START_JITTER` / `ZALO_LOGIN_SLOTS` — see `docs/deployment.md` §4.7–4.8
373
+ - **Running many accounts**: `/health`, `/ready`, `/status` and `/metrics` (Prometheus), `fleet status|start|stop|restart|purge|generate|serve`, log levels and `daemon.log` rotation, `ZALO_START_JITTER` / `ZALO_LOGIN_SLOTS` / `ZALO_CONNECT_SLOTS` — see [docs/deployment.md](docs/deployment.md) §4.7–4.8 and the [complete config set per use case](docs/config-samples/use-cases/) (desktop, LAN, VPS, CRM backend, SaaS with KMS)
374
+ - Zalo's offline queue is per device: a QR re-login keeps the device id; cache coverage never starts before this device came into use (`deviceSince`), and when Zalo reports a queue overflow the groups are repaired from their cloud message store (a `queue_overflow` event)
284
375
  - **Markdown** messages become real Zalo formatting (bold, italic, bullets, headings): the default in `zalo_send_message`, `msg send --markdown` on the CLI
285
376
  - `logout` performs a real **server-side** session invalidation; `logout --purge` / `account remove` wipe all local data
286
377
  - `--json` output on every command — scripting and AI agents
287
- - Credentials stored locally with 0600 permissions
378
+ - Credentials stored locally with 0600 permissions and sealed at rest; `account export` writes the login out in plaintext only with `--yes`
288
379
  - **Dual mode**: interactive (human) and non-interactive (AI agents, CI/CD)
289
380
 
290
381
  ### Documentation
@@ -292,12 +383,15 @@ See also: [Multi-Account & Proxy](https://github.com/ardennguyen/zalo-agent-cli/
292
383
  | Document | Contents |
293
384
  |----------|----------|
294
385
  | [INSTALLATION.md](INSTALLATION.md) ([VI](INSTALLATION.vi.md)) | `zalo-mcp` wrapper install, MCP client config, OA setup |
295
- | [docs/official-account.md](docs/official-account.md) ([VI](docs/official-account.vi.md)) | Full OA command reference (bilingual EN / VN) |
386
+ | [docs/official-account.md](docs/official-account.md) ([VI](docs/official-account.vi.md)) | Full OA and ZBS command reference (bilingual EN / VN) |
296
387
  | [docs/deployment.md](docs/deployment.md) ([VI](docs/deployment.vi.md)) | Production deployment guide (one socket, many bots, HTTPS, OAuth 2.0, systemd/Docker) |
388
+ | [docs/configuration.md](docs/configuration.md) ([VI](docs/configuration.vi.md)) | Every environment variable, `mcp-config.json` / `storage.json` key, the runtime policy, quotas, on-demand presence, `groups.onLeave`, and the recommended setups |
389
+ | [docs/config-samples/use-cases/](docs/config-samples/use-cases/) | A complete config set per use case: desktop (stdio), LAN over HTTP, a VPS with a few accounts, a CRM backend, SaaS with KMS (bilingual READMEs) |
390
+ | [docs/security.md](docs/security.md) ([VI](docs/security.vi.md)) | Encryption at rest: what is sealed, key providers (DPAPI, systemd-creds, KMS, passphrase), the dkey layer, upgrading from 2.x, row MACs, the password-encrypted export file, backups and incident steps |
297
391
  | [skill/SKILL.md](skill/SKILL.md) | AI agent skill |
298
392
  | [skill/references/command-reference.md](skill/references/command-reference.md) | Exhaustive command reference (source of truth) |
299
393
  | [skill/references/mcp-guide.md](skill/references/mcp-guide.md) | MCP server guide (Vietnamese) |
300
- | [skill/references/oa-command-reference.md](skill/references/oa-command-reference.md) | OA quick reference for agents |
394
+ | [skill/references/oa-command-reference.md](skill/references/oa-command-reference.md) | OA and ZBS reference for agents |
301
395
  | [skill/references/login-flow.md](skill/references/login-flow.md) | Login methods (QR, proxy, credentials file) |
302
396
  | [skill/references/listen-mode-guide.md](skill/references/listen-mode-guide.md) | Listener and webhook operation |
303
397
  | [tests/README.md](tests/README.md) | How to run and write the tests: offline suite, tiered live E2E, manual checklist |
@@ -314,5 +408,5 @@ zalo-agent-cli © 2026 Arden Nguyen Duc Huy is licensed under [CC BY-NC-SA 4.0](
314
408
  - **Free for non-commercial use** (personal, academic, research). **Commercial use is not licensed** — for example in a commercial product, to provide paid services, or in a company's business operations. To request a commercial license, [open an issue](https://github.com/ardennguyen/zalo-agent-cli/issues).
315
409
  - **Credit required:** if you share this project or any part of it, as-is or modified (including inside another project), credit it as shown in [NOTICE](NOTICE), say whether you made changes, and link to the license.
316
410
  - **ShareAlike:** shared modifications must be released under CC BY-NC-SA 4.0 (or a later version, or a compatible license listed by Creative Commons).
317
- - Portions derived from MIT-licensed software — [zalo-agent-cli by PhucMPham](https://github.com/PhucMPham/zalo-agent-cli) and the patched [zca-js](https://github.com/RFS-ADRENO/zca-js) shipped inside the package — remain under the MIT License; see [NOTICE](NOTICE).
411
+ - The MIT notices this project must keep are in [NOTICE](NOTICE).
318
412
  - Versions published before this change (2.0.0 and earlier) were released under the MIT License and keep those terms.