@leemour/max-cli 0.13.0 → 0.14.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 (112) hide show
  1. package/README.md +53 -9
  2. package/dist/bot/auth.d.ts +23 -0
  3. package/dist/bot/auth.d.ts.map +1 -0
  4. package/dist/bot/auth.js +36 -0
  5. package/dist/bot/auth.js.map +1 -0
  6. package/dist/bot/client.d.ts +20 -0
  7. package/dist/bot/client.d.ts.map +1 -0
  8. package/dist/bot/client.js +91 -0
  9. package/dist/bot/client.js.map +1 -0
  10. package/dist/bot/generated/manifest.d.ts +3 -0
  11. package/dist/bot/generated/manifest.d.ts.map +1 -0
  12. package/dist/bot/generated/manifest.js +1232 -0
  13. package/dist/bot/generated/manifest.js.map +1 -0
  14. package/dist/bot/generated/schemas.d.ts +271 -0
  15. package/dist/bot/generated/schemas.d.ts.map +1 -0
  16. package/dist/bot/generated/schemas.js +869 -0
  17. package/dist/bot/generated/schemas.js.map +1 -0
  18. package/dist/bot/generated/types.d.ts +1088 -0
  19. package/dist/bot/generated/types.d.ts.map +1 -0
  20. package/dist/bot/generated/types.js +5 -0
  21. package/dist/bot/generated/types.js.map +1 -0
  22. package/dist/bot/input.d.ts +10 -0
  23. package/dist/bot/input.d.ts.map +1 -0
  24. package/dist/bot/input.js +88 -0
  25. package/dist/bot/input.js.map +1 -0
  26. package/dist/bot/map.d.ts +11 -0
  27. package/dist/bot/map.d.ts.map +1 -0
  28. package/dist/bot/map.js +76 -0
  29. package/dist/bot/map.js.map +1 -0
  30. package/dist/bot/permissions.d.ts +14 -0
  31. package/dist/bot/permissions.d.ts.map +1 -0
  32. package/dist/bot/permissions.js +53 -0
  33. package/dist/bot/permissions.js.map +1 -0
  34. package/dist/bot/registry.d.ts +27 -0
  35. package/dist/bot/registry.d.ts.map +1 -0
  36. package/dist/bot/registry.js +68 -0
  37. package/dist/bot/registry.js.map +1 -0
  38. package/dist/bot/russian-trusted-root.d.ts +8 -0
  39. package/dist/bot/russian-trusted-root.d.ts.map +1 -0
  40. package/dist/bot/russian-trusted-root.js +41 -0
  41. package/dist/bot/russian-trusted-root.js.map +1 -0
  42. package/dist/bot/transport.d.ts +41 -0
  43. package/dist/bot/transport.d.ts.map +1 -0
  44. package/dist/bot/transport.js +200 -0
  45. package/dist/bot/transport.js.map +1 -0
  46. package/dist/client.d.ts +23 -2
  47. package/dist/client.d.ts.map +1 -1
  48. package/dist/client.js +120 -12
  49. package/dist/client.js.map +1 -1
  50. package/dist/commands/bot-context.d.ts +21 -0
  51. package/dist/commands/bot-context.d.ts.map +1 -0
  52. package/dist/commands/bot-context.js +59 -0
  53. package/dist/commands/bot-context.js.map +1 -0
  54. package/dist/commands/bot-reads.d.ts +7 -0
  55. package/dist/commands/bot-reads.d.ts.map +1 -0
  56. package/dist/commands/bot-reads.js +103 -0
  57. package/dist/commands/bot-reads.js.map +1 -0
  58. package/dist/commands/bot-sends.d.ts +12 -0
  59. package/dist/commands/bot-sends.d.ts.map +1 -0
  60. package/dist/commands/bot-sends.js +225 -0
  61. package/dist/commands/bot-sends.js.map +1 -0
  62. package/dist/commands/bot.d.ts +3 -0
  63. package/dist/commands/bot.d.ts.map +1 -0
  64. package/dist/commands/bot.js +145 -0
  65. package/dist/commands/bot.js.map +1 -0
  66. package/dist/commands/chats.d.ts.map +1 -1
  67. package/dist/commands/chats.js +65 -1
  68. package/dist/commands/chats.js.map +1 -1
  69. package/dist/commands/context.d.ts +10 -1
  70. package/dist/commands/context.d.ts.map +1 -1
  71. package/dist/commands/context.js.map +1 -1
  72. package/dist/commands/review.d.ts.map +1 -1
  73. package/dist/commands/review.js +17 -1
  74. package/dist/commands/review.js.map +1 -1
  75. package/dist/commands/rules.d.ts +7 -0
  76. package/dist/commands/rules.d.ts.map +1 -0
  77. package/dist/commands/rules.js +69 -0
  78. package/dist/commands/rules.js.map +1 -0
  79. package/dist/domain/map.d.ts +6 -1
  80. package/dist/domain/map.d.ts.map +1 -1
  81. package/dist/domain/map.js +34 -1
  82. package/dist/domain/map.js.map +1 -1
  83. package/dist/domain/models.d.ts +51 -0
  84. package/dist/domain/models.d.ts.map +1 -1
  85. package/dist/domain/models.js.map +1 -1
  86. package/dist/generated/operations.generated.d.ts +3 -1
  87. package/dist/generated/operations.generated.d.ts.map +1 -1
  88. package/dist/mcp/tools.d.ts.map +1 -1
  89. package/dist/mcp/tools.js +10 -2
  90. package/dist/mcp/tools.js.map +1 -1
  91. package/dist/moderation/rules.d.ts +56 -0
  92. package/dist/moderation/rules.d.ts.map +1 -0
  93. package/dist/moderation/rules.js +138 -0
  94. package/dist/moderation/rules.js.map +1 -0
  95. package/dist/program.d.ts.map +1 -1
  96. package/dist/program.js +18 -3
  97. package/dist/program.js.map +1 -1
  98. package/dist/protocol/connection.d.ts.map +1 -1
  99. package/dist/protocol/connection.js +12 -1
  100. package/dist/protocol/connection.js.map +1 -1
  101. package/dist/review.d.ts +23 -2
  102. package/dist/review.d.ts.map +1 -1
  103. package/dist/review.js +58 -3
  104. package/dist/review.js.map +1 -1
  105. package/dist/spec/operations/chats.d.ts +4 -1
  106. package/dist/spec/operations/chats.d.ts.map +1 -1
  107. package/dist/spec/operations/chats.js +10 -4
  108. package/dist/spec/operations/chats.js.map +1 -1
  109. package/dist/version.d.ts +1 -1
  110. package/dist/version.js +1 -1
  111. package/package.json +14 -6
  112. package/skills/max-cli/SKILL.md +15 -1
package/dist/review.js CHANGED
@@ -1,17 +1,29 @@
1
+ import { CliError } from "@leemour/cli-core";
1
2
  import { notDownloaded, openInstalled, transcribe } from "./transcribe/index.js";
2
3
  import { isInstalled, modelsDirectory } from "./transcribe/install.js";
3
4
  import { speechModel } from "./transcribe/models.js";
4
5
  /** Owner's ruling: without a boundary, a review looks at the last three days. */
5
6
  export const REVIEW_DAYS = 3;
6
7
  export const reviewStart = (now = Date.now()) => now - REVIEW_DAYS * 86_400_000;
8
+ export const UNANSWERED_HOURS = 24;
9
+ /** `--unanswered` with no value is `true`; a value is hours, a fraction allowed. */
10
+ export const unansweredHours = (value) => {
11
+ if (value === true)
12
+ return UNANSWERED_HOURS;
13
+ const hours = Number(value);
14
+ if (!Number.isFinite(hours) || hours < 0) {
15
+ throw new CliError("validation_error", `--unanswered takes hours, a number 0 or more — got ${String(value)}`);
16
+ }
17
+ return hours;
18
+ };
7
19
  /**
8
20
  * `max review` and `max_review` alike. A text already heard comes from the cache with no model
9
21
  * loaded; with `transcribeWith`, the rest are transcribed one by one. A missing model or a recording
10
22
  * that will not decode is a field in the answer, not a failed review: the messages are still worth
11
23
  * reading. The model is never downloaded from here (`NEED-231`).
12
24
  */
13
- export const review = async (client, { since, cache, transcribeWith }) => {
14
- const read = await client.inbox.review({ since });
25
+ export const review = async (client, { since, cache, transcribeWith, chatId, unansweredAfterHours, now = Date.now() }) => {
26
+ const read = await client.inbox.review({ since, ...(chatId === undefined ? {} : { chatId }) });
15
27
  const unheard = [];
16
28
  const model = transcribeWith === undefined ? undefined : speechModel(transcribeWith);
17
29
  const directory = modelsDirectory();
@@ -51,6 +63,49 @@ export const review = async (client, { since, cache, transcribeWith }) => {
51
63
  loaded?.free();
52
64
  }
53
65
  const complete = read.skipped.length === 0 && !read.partial && unheard.length === 0 && read.chats.every((chat) => !chat.more);
54
- return { ...read, complete, unheard, ...(transcribeProblem === undefined ? {} : { transcribeProblem }) };
66
+ const found = {
67
+ ...read,
68
+ complete,
69
+ unheard,
70
+ ...(transcribeProblem === undefined ? {} : { transcribeProblem }),
71
+ };
72
+ if (unansweredAfterHours === undefined)
73
+ return found;
74
+ const chats = [];
75
+ for (const chat of found.chats) {
76
+ const admins = chat.kind === "dialog" ? [] : await client.chats.adminIds(chat.id);
77
+ const open = unanswered(chat.messages, {
78
+ answerers: new Set(admins ?? []),
79
+ before: now - unansweredAfterHours * 3_600_000,
80
+ });
81
+ if (open.length === 0)
82
+ continue;
83
+ chats.push({ ...chat, messages: open, answeredBy: admins === undefined ? "owner" : "owner-and-admins" });
84
+ }
85
+ return { ...found, chats, unanswered: { olderThanHours: unansweredAfterHours } };
86
+ };
87
+ /** A shared link's query string is not a question. */
88
+ const LINKS = /https?:\/\/\S+/g;
89
+ /**
90
+ * Questions from others still waiting. A question is a message with `?` in it, or a reply to the
91
+ * owner or an admin. It is answered when one of them replied to it, or was the next to speak after
92
+ * the person who asked — "the next to speak" rather than "spoke later", because in a busy group an
93
+ * admin answering somebody else says nothing about this question.
94
+ */
95
+ export const unanswered = (messages, { answerers, before }) => {
96
+ const answers = (message) => message.outgoing === true || (message.senderId !== null && answerers.has(message.senderId));
97
+ return messages.filter((message, index) => {
98
+ if (answers(message) || Date.parse(message.timestamp) >= before)
99
+ return false;
100
+ const text = message.transcript ?? message.text;
101
+ const asked = text.replace(LINKS, "").includes("?") || (message.replyTo !== null && answers(message.replyTo));
102
+ if (!asked)
103
+ return false;
104
+ const later = messages.slice(index + 1);
105
+ if (later.some((reply) => reply.replyTo?.id === message.id && answers(reply)))
106
+ return false;
107
+ const next = later.find((other) => other.senderId !== message.senderId);
108
+ return !(next && answers(next));
109
+ });
55
110
  };
56
111
  //# sourceMappingURL=review.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"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"}
@@ -68,10 +68,13 @@ export declare const chatsUpdate: import("../define.js").Operation<v.UnionSchema
68
68
  }, undefined>>;
69
69
  export declare const chatsMembers: import("../define.js").Operation<v.StrictObjectSchema<{
70
70
  readonly chatId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
71
- readonly type: v.LiteralSchema<"JOIN_REQUEST", undefined>;
71
+ readonly type: v.PicklistSchema<["MEMBER", "JOIN_REQUEST"], undefined>;
72
+ /** `MEMBER` only: 0 for the first page, then the `marker` the previous answer carried. */
73
+ readonly marker: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
72
74
  readonly count: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>]>;
73
75
  }, undefined>, v.LooseObjectSchema<{
74
76
  readonly members: v.OptionalSchema<v.ArraySchema<v.LooseObjectSchema<{}, undefined>, undefined>, undefined>;
77
+ readonly marker: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
75
78
  }, undefined>>;
76
79
  export declare const chatsUpdateMembers: import("../define.js").Operation<v.StrictObjectSchema<{
77
80
  readonly chatId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
@@ -1 +1 @@
1
- {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAM5B,eAAO,MAAM,SAAS;IAMlB,6DAA6D;;;;;cAW/D,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;IAerB,6GAA6G;;;;;;cAc/G,CAAA;AAEF,eAAO,MAAM,SAAS;;;;IAalB;;;;OAIG;;;;;cAcL,CAAA;AAKF,eAAO,MAAM,aAAa;;;;cAaxB,CAAA;AAEF,eAAO,MAAM,SAAS;;;;cAcpB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;cAarB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;cA8CtB,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;cAiBvB,CAAA;AAQF,eAAO,MAAM,kBAAkB;;;;IAS3B,uCAAuC;;;IAGvC,iGAAiG;;IAEjG,mGAAmG;;;;cA0BrG,CAAA;AAEF,eAAO,MAAM,UAAU,oCAOrB,CAAA"}
1
+ {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAM5B,eAAO,MAAM,SAAS;IAMlB,6DAA6D;;;;;cAW/D,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;IAerB,6GAA6G;;;;;;cAc/G,CAAA;AAEF,eAAO,MAAM,SAAS;;;;IAalB;;;;OAIG;;;;;cAcL,CAAA;AAKF,eAAO,MAAM,aAAa;;;;cAaxB,CAAA;AAEF,eAAO,MAAM,SAAS;;;;cAcpB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;cAarB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;cA8CtB,CAAA;AAEF,eAAO,MAAM,YAAY;;;IAQrB,0FAA0F;;;;;;cAgB5F,CAAA;AAQF,eAAO,MAAM,kBAAkB;;;;IAS3B,uCAAuC;;;IAGvC,iGAAiG;;IAEjG,mGAAmG;;;;cA0BrG,CAAA;AAEF,eAAO,MAAM,UAAU,oCAOrB,CAAA"}
@@ -182,15 +182,21 @@ export const chatsMembers = defineOperation({
182
182
  auth: true,
183
183
  request: v.strictObject({
184
184
  chatId: id(),
185
- type: v.literal("JOIN_REQUEST"),
185
+ type: v.picklist(["MEMBER", "JOIN_REQUEST"]),
186
+ /** `MEMBER` only: 0 for the first page, then the `marker` the previous answer carried. */
187
+ marker: v.optional(v.number()),
186
188
  count: v.pipe(v.number(), v.integer(), v.minValue(1)),
187
189
  }),
188
- response: v.looseObject({ members: v.optional(v.array(v.looseObject({}))) }),
190
+ response: v.looseObject({ members: v.optional(v.array(v.looseObject({}))), marker: v.optional(v.number()) }),
189
191
  guard: null,
190
192
  provenance: {
191
193
  confidence: "measured",
192
- sources: ["measured against MAX 2026-09-24 with no requests (`pnpm probe:groups`)", "PyMax get_join_requests"],
193
- notes: "With no requests the answer is `{}` — no `members` at all. Each member is `{contact, presence}` in PyMax.",
194
+ sources: [
195
+ "measured against MAX 2026-09-24 with no requests (`pnpm probe:groups`)",
196
+ "`MEMBER` measured 2026-09-27 on a group of 2 (`pnpm probe:member-list`): `{members: [{contact, presence, readMark}]}`, no `marker`",
197
+ "PyMax get_join_requests, get_chat_members (53103f0)",
198
+ ],
199
+ notes: "With no requests the answer is `{}` — no `members` at all. Paging by `marker` is PyMax's claim: one page of two members carried none.",
194
200
  },
195
201
  });
196
202
  const MEMBER_ACTIONS = {
@@ -1 +1 @@
1
- {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC9E,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC;IACvC,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,6DAA6D;QAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KAClE,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,KAAK,EAAE,IAAI;IACX,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,CAAC,iCAAiC,EAAE,gCAAgC,CAAC;QAC9E,KAAK,EAAE,gGAAgG;KACxG;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,EAAE,EAAE;QACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,2FAA2F;QAC3F,kGAAkG;QAClG,qCAAqC;QACrC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACnC,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACpC,6GAA6G;QAC7G,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACxD,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QAChC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;KACzB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,KAAK,EAAE,IAAI;IACX,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,iCAAiC;YACjC,mHAAmH;SACpH;KACF;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC;IACvC,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV;;;OAGG;IACH,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QAC/B,MAAM,EAAE,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE,EAAE;QACf;;;;WAIG;QACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;IACzF,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IACtF,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,oJAAoJ;YACpJ,iFAAiF;YACjF,wDAAwD;SACzD;QACD,KAAK,EAAE,qGAAqG;KAC7G;CACF,CAAC,CAAA;AAEF,mGAAmG;AACnG,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAErD,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;IAC3C,IAAI,EAAE,gBAAgB;IACtB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAChE,KAAK,EAAE,IAAI;IACX,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,CAAC,uDAAuD,EAAE,6BAA6B,CAAC;QACjG,KAAK,EAAE,qFAAqF;KAC7F;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,CAAC;IACvC,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAChE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC7D,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,CAAC,iFAAiF,EAAE,kBAAkB,CAAC;QAChH,KAAK,EACH,8GAA8G;KACjH;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC;IACxC,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACnE,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAChF,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,CAAC,uDAAuD,EAAE,mBAAmB,CAAC;QACvF,KAAK,EAAE,8EAA8E;KACtF;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,eAAe,CAAC;IACzC,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;QACf,kCAAkC;QAClC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QACpG,kCAAkC;QAClC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC5E,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,+DAA+D;QAC/D,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;KAC7E,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;QAC9B,MAAM,OAAO,GAAG;YACd,cAAc,IAAI,OAAO;YACzB,mBAAmB,IAAI,OAAO;YAC9B,SAAS,IAAI,OAAO;YACpB,OAAO,IAAI,OAAO,IAAI,aAAa,IAAI,OAAO;SAC/C,CAAA;QACD,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC,cAAc,CAAC,CAAA;QAC1E,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;YACjD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAA;QACjH,CAAC;QACD,IAAI,OAAO,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAA;QACrE,IAAI,OAAO,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;QACnE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IACnD,CAAC;IACD,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,6EAA6E;YAC7E,uEAAuE;YACvE,uMAAuM;SACxM;QACD,KAAK,EACH,6IAA6I;YAC7I,+GAA+G;YAC/G,8FAA8F;YAC9F,yGAAyG;YACzG,oGAAoG;KACvG;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,EAAE,EAAE;QACZ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC5C,0FAA0F;QAC1F,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC9B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KACtD,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;IAC5G,KAAK,EAAE,IAAI;IACX,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,wEAAwE;YACxE,oIAAoI;YACpI,qDAAqD;SACtD;QACD,KAAK,EACH,uIAAuI;KAC1I;CACF,CAAC,CAAA;AAEF,MAAM,cAAc,GAAsD;IACxE,MAAM,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;IACzC,KAAK,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC;IACtC,YAAY,EAAE,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;CACtD,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAChD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,qBAAqB;IAC/B,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,EAAE,EAAE;QACZ,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9C,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxC,uCAAuC;QACvC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QACvD,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACpC,iGAAiG;QACjG,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACxC,mGAAmG;QACnG,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;KACxE,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAA;QAChE,MAAM,MAAM,GACV,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACxG,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC,qBAAqB,CAAC,CAAA;QACpD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;YACvB,IAAI,EAAE,MAAM;YACZ,MAAM;YACN,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;YAChC,GAAG,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAA;IACH,CAAC;IACD,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,kIAAkI;YAClI,6GAA6G;SAC9G;QACD,KAAK,EACH,2OAA2O;KAC9O;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC;IACtC,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,EAAE;IACV,MAAM,EACJ,4JAA4J;IAC9J,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE;CAChF,CAAC,CAAA"}
package/dist/version.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  /** The one the running command reports. `pnpm version:check` fails when it and package.json disagree. */
2
- export declare const VERSION = "0.13.0";
2
+ export declare const VERSION = "0.14.0";
3
3
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /** The one the running command reports. `pnpm version:check` fails when it and package.json disagree. */
2
- export const VERSION = "0.13.0";
2
+ export const VERSION = "0.14.0";
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@leemour/max-cli",
3
- "version": "0.13.0",
4
- "description": "A local command line interface for a personal MAX Messenger account, built for agents and scripts",
3
+ "version": "0.14.0",
4
+ "description": "MAX Messenger bots through the official Bot API, and a personal MAX account, from the terminal \u2014 built for agents and scripts",
5
5
  "license": "MIT",
6
6
  "author": "Viacheslav Ptsarev",
7
7
  "repository": {
@@ -24,7 +24,10 @@
24
24
  ],
25
25
  "scripts": {
26
26
  "build": "tsc --build",
27
- "generate": "pnpm build && node --experimental-strip-types scripts/generate.ts && node --experimental-strip-types scripts/commands.ts",
27
+ "generate": "node --experimental-strip-types scripts/bot/generate.ts && pnpm build && node --experimental-strip-types scripts/generate.ts && node --experimental-strip-types scripts/commands.ts",
28
+ "bot:spec:sync": "node --experimental-strip-types scripts/bot/sync-spec.ts",
29
+ "bot:generate": "node --experimental-strip-types scripts/bot/generate.ts",
30
+ "bot:generate:check": "node --experimental-strip-types scripts/bot/generate.ts --check",
28
31
  "typecheck": "tsc --build --force --emitDeclarationOnly && tsc -p tsconfig.test.json && tsc -p tsconfig.scripts.json",
29
32
  "lint": "biome check .",
30
33
  "lint:fix": "biome check --write .",
@@ -57,11 +60,15 @@
57
60
  "probe:account": "pnpm build && node --experimental-strip-types scripts/probe-account.ts",
58
61
  "probe:read-mark": "pnpm build && node --experimental-strip-types scripts/probe-read-mark.ts",
59
62
  "probe:pre-release": "pnpm build && node --experimental-strip-types scripts/probe-pre-release.ts",
60
- "probe:message-count": "pnpm build && node --experimental-strip-types scripts/probe-message-count.ts"
63
+ "probe:control": "pnpm build && node --experimental-strip-types scripts/probe-control.ts",
64
+ "probe:member-list": "pnpm build && node --experimental-strip-types scripts/probe-member-list.ts",
65
+ "probe:message-count": "pnpm build && node --experimental-strip-types scripts/probe-message-count.ts",
66
+ "probe:bot:me": "pnpm build && node --experimental-strip-types scripts/probe-bot-me.ts"
61
67
  },
62
68
  "dependencies": {
63
69
  "@bomb.sh/tab": "0.0.22",
64
- "@leemour/cli-core": "0.7.0",
70
+ "@leemour/cli-core": "0.8.0",
71
+ "@leemour/cli-messaging": "0.2.0",
65
72
  "@modelcontextprotocol/server": "2.1.0",
66
73
  "@msgpack/msgpack": "3.1.3",
67
74
  "@valibot/to-json-schema": "1.8.0",
@@ -82,7 +89,8 @@
82
89
  "@types/ws": "^8.18.1",
83
90
  "lefthook": "^2.1.8",
84
91
  "typescript": "^7.0.2",
85
- "vitest": "^5.0.1"
92
+ "vitest": "^5.0.1",
93
+ "yaml": "^2.9.1"
86
94
  },
87
95
  "publishConfig": {
88
96
  "access": "public"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: max-cli
3
- description: Читать и отправлять сообщения в личном аккаунте MAX Messenger владельца через команду `max`. Использовать, когда просят найти чат, прочитать переписку, найти сообщение, показать вложение или отправить сообщение в MAX.
3
+ description: Читать и отправлять сообщения в личном аккаунте MAX Messenger владельца и от имени его ботов через команду `max`. Использовать, когда просят найти чат, прочитать переписку, найти сообщение, показать вложение, отправить сообщение в MAX или написать от имени бота.
4
4
  ---
5
5
 
6
6
  # max — личный MAX владельца из командной строки
@@ -122,10 +122,14 @@ max chats list --unread --json # где есть непрочи
122
122
  max inbox --json # непрочитанное во всех чатах
123
123
  max inbox --new --json # что пришло с прошлой проверки, один раз
124
124
  max review --since 2026-09-23T09:00 --json # всё, свои тоже, для обзора «кто кому должен»
125
+ max review --chat -1000 --unanswered 4 --json # вопросы в группе, на которые 4 часа не ответили ни владелец, ни админы
125
126
  max watch --jsonl # новые сообщения по мере прихода, если запущен `max serve`
126
127
  max watch --events --jsonl # плюс правки, удаления, реакции; в каждой строке "event"
127
128
  max server status --json # работает ли фоновый сервер, какой версии, подключён ли
128
129
  max chats show -1000 --json # один чат и кто в нём
130
+ max chats events -1000 --since 2026-09-20T00:00 --json # кто вступил, вышел, кого добавили и удалили
131
+ max chats members list -1000 --json # все участники от MAX: registeredAt, lastSeenAt
132
+ max chats rules show -1000 --json # правила модерации группы; set <ключ> <значение> меняет одно
129
133
  max contacts show @ivan --json # один человек и общие чаты
130
134
  max messages list -1000 --limit 20 --json # последние сообщения, от старых к новым
131
135
  max messages list -1000 --after 100000000000000001 --json # что было после этого сообщения
@@ -147,3 +151,13 @@ max messages transcribe -1000 100000000000000001 --json # текст голо
147
151
 
148
152
  Вложение в JSON: `{ "kind": "photo", "url": "https://…", "width": 901, "height": 594 }`. Чтобы
149
153
  посмотреть фото, скачать его по `url` и открыть файл.
154
+
155
+ ## Бот
156
+
157
+ `max <имя> bot …` — бот владельца через официальный Bot API, **не** личный аккаунт. Имя — первое
158
+ слово, как профиль: `max sales bot messages send -72894839451 "текст"`. Какие боты есть —
159
+ `max bot list`. Чат бота — номер, `user:<номер>` для человека или название чата, который бот уже
160
+ видел; списка чатов бота у MAX нет, `max <имя> bot chats list` — только увиденные. Отказ с кодом `7`
161
+ значит «чата нет в списке получателей бота»: скажите владельцу, какую команду выполнить, и не
162
+ пишите в обход. Любая операция API — `max <имя> bot api <операция>`; её флаги —
163
+ `max commands --json`. Отправляйте от имени бота только то, о чём просил владелец.