@leemour/max-cli 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -12
- package/dist/client.d.ts +11 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +56 -8
- package/dist/client.js.map +1 -1
- package/dist/commands/doctor.d.ts +6 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +57 -7
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/mcp.d.ts +24 -0
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +80 -14
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/models.d.ts.map +1 -1
- package/dist/commands/models.js +13 -2
- package/dist/commands/models.js.map +1 -1
- package/dist/commands/review.d.ts +8 -0
- package/dist/commands/review.d.ts.map +1 -0
- package/dist/commands/review.js +80 -0
- package/dist/commands/review.js.map +1 -0
- package/dist/diagnose.d.ts +19 -1
- package/dist/diagnose.d.ts.map +1 -1
- package/dist/diagnose.js +37 -1
- package/dist/diagnose.js.map +1 -1
- package/dist/domain/models.d.ts +28 -0
- package/dist/domain/models.d.ts.map +1 -1
- package/dist/domain/models.js.map +1 -1
- package/dist/download.d.ts +1 -1
- package/dist/download.d.ts.map +1 -1
- package/dist/download.js +3 -3
- package/dist/download.js.map +1 -1
- package/dist/install.d.ts +43 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +142 -0
- package/dist/install.js.map +1 -0
- package/dist/mcp/confirm.d.ts +4 -0
- package/dist/mcp/confirm.d.ts.map +1 -1
- package/dist/mcp/confirm.js +2 -0
- package/dist/mcp/confirm.js.map +1 -1
- package/dist/mcp/instructions.js +3 -3
- package/dist/mcp/instructions.js.map +1 -1
- package/dist/mcp/prompts.d.ts +7 -0
- package/dist/mcp/prompts.d.ts.map +1 -0
- package/dist/mcp/prompts.js +73 -0
- package/dist/mcp/prompts.js.map +1 -0
- package/dist/mcp/resources.d.ts +12 -0
- package/dist/mcp/resources.d.ts.map +1 -0
- package/dist/mcp/resources.js +42 -0
- package/dist/mcp/resources.js.map +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +4 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +164 -11
- package/dist/mcp/tools.js.map +1 -1
- package/dist/online.d.ts +23 -0
- package/dist/online.d.ts.map +1 -0
- package/dist/online.js +87 -0
- package/dist/online.js.map +1 -0
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +2 -0
- package/dist/program.js.map +1 -1
- package/dist/report.d.ts.map +1 -1
- package/dist/report.js +13 -2
- package/dist/report.js.map +1 -1
- package/dist/review.d.ts +20 -0
- package/dist/review.d.ts.map +1 -0
- package/dist/review.js +56 -0
- package/dist/review.js.map +1 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +19 -9
- package/dist/server/server.js.map +1 -1
- package/dist/server/start.d.ts.map +1 -1
- package/dist/server/start.js +2 -2
- package/dist/server/start.js.map +1 -1
- package/dist/session/store.d.ts +6 -1
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +14 -3
- package/dist/session/store.js.map +1 -1
- package/dist/transcribe/index.d.ts +1 -0
- package/dist/transcribe/index.d.ts.map +1 -1
- package/dist/transcribe/index.js +8 -4
- package/dist/transcribe/index.js.map +1 -1
- package/dist/transcribe/speech.d.ts.map +1 -1
- package/dist/transcribe/speech.js +2 -0
- package/dist/transcribe/speech.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/skills/max-cli/SKILL.md +11 -0
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# max-cli
|
|
6
6
|
|
|
7
|
-
Ваш личный аккаунт мессенджера [MAX](https://max.ru) в терминале и в ИИ-агентах. `max` —
|
|
7
|
+
Ваш личный аккаунт мессенджера [MAX](https://max.ru) в терминале и в ИИ-агентах. `max` — программа для терминала и
|
|
8
8
|
MCP-сервер: читайте и пишите в чаты сами или поручите это Claude, Codex, Cursor и другим агентам.
|
|
9
9
|
|
|
10
10
|
> ⚠️ **max-cli использует неофициальный внутренний API MAX.** API может измениться без
|
|
@@ -27,14 +27,34 @@ max messages send "Иван Петров" "Опаздываю на 15 минут
|
|
|
27
27
|
сводку: кто ждёт ответа, что срочно, что можно не читать.
|
|
28
28
|
- **Отчёты.** Итог недели по рабочему чату: что решили, кто что взял на себя, какие вопросы
|
|
29
29
|
остались без ответа.
|
|
30
|
-
- **Кто кому должен.**
|
|
31
|
-
|
|
30
|
+
- **Кто кому должен.** `max review` одним вызовом отдаёт всё, что было в переписке с прошлого
|
|
31
|
+
обзора, — ваши сообщения тоже, голосовые — текстом. Агент раскладывает это на «я должен», «жду от
|
|
32
|
+
других» и «нужно уточнить», а прежде чем назвать что-то просроченным, проверяет рабочие группы:
|
|
33
|
+
может, уже сделано.
|
|
32
34
|
- **Напоминания.** Кому вы обещали ответить и не ответили; чей вопрос висит третий день.
|
|
33
35
|
- **Черновики ответов.** Агент предлагает текст, а отправляете вы — или он сам, если вы разрешили
|
|
34
36
|
писать в этот чат.
|
|
35
37
|
- **Поиск.** «Когда мы договорились о встрече с Иваном?» — ответ с датой и самим сообщением.
|
|
36
38
|
|
|
37
|
-
Как
|
|
39
|
+
Как это выглядит:
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
Вы: Что я кому обещал за последние три дня?
|
|
43
|
+
Агент: (вызывает max review: 12 чатов, 3 голосовых расшифровано)
|
|
44
|
+
Я должен
|
|
45
|
+
· Ивану Петрову — прислать счёт до пятницы. «Иван Петров», 24.09
|
|
46
|
+
Жду от других
|
|
47
|
+
· Ольга — макет к 25.09. В группе «Дизайн» его пока нет
|
|
48
|
+
Нужно уточнить
|
|
49
|
+
· «Проект Альфа»: кто везёт образцы — договорились «потом решим», 25.09
|
|
50
|
+
Следующий обзор — с 26.09, 14:05.
|
|
51
|
+
Вы: Напомни Ольге про макет.
|
|
52
|
+
Агент: Черновик: «Ольга, привет! Как там макет?» Отправить?
|
|
53
|
+
Вы: Да.
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Агент ничего не отправляет без вашего «да», а чтение не ставит отметку «прочитано». Как настроить
|
|
57
|
+
агента под каждую задачу — готовые запросы, расписание и ограничения:
|
|
38
58
|
[docs/recipes.md](docs/recipes.md).
|
|
39
59
|
|
|
40
60
|
## Как это работает
|
|
@@ -48,9 +68,11 @@ max messages send "Иван Петров" "Опаздываю на 15 минут
|
|
|
48
68
|
- **Агент с терминалом** — Claude Code, Codex, Gemini CLI. Он сам вызывает команды `max`. Дайте
|
|
49
69
|
ему навык (skill) — инструкцию, как работать с `max`: одна команда, см.
|
|
50
70
|
[ниже](#для-скриптов-и-агентов).
|
|
51
|
-
- **Агент без терминала** — Claude Desktop, Cursor и другие клиенты MCP. Подключите `max mcp
|
|
52
|
-
|
|
53
|
-
|
|
71
|
+
- **Агент без терминала** — Claude Desktop, Cursor и другие клиенты MCP. Подключите `max mcp`:
|
|
72
|
+
готовую запись для их настроек печатает `max mcp config`. Там же есть команды `/catch-up` (что
|
|
73
|
+
нового), `/review` (кто кому должен), `/reply` (черновик ответа) и `/find` (поиск). По умолчанию
|
|
74
|
+
агент только читает. Отправку можно разрешить, в том числе с вашим подтверждением каждого
|
|
75
|
+
сообщения.
|
|
54
76
|
|
|
55
77
|
[](https://www.npmjs.com/package/@leemour/max-cli)
|
|
56
78
|
[](https://github.com/leemour/max-cli/actions/workflows/ci.yml)
|
|
@@ -62,7 +84,7 @@ max messages send "Иван Петров" "Опаздываю на 15 минут
|
|
|
62
84
|
## Что умеет
|
|
63
85
|
|
|
64
86
|
- **Читать.** Чаты, история, одно сообщение вместе с соседними, непрочитанное во всех чатах
|
|
65
|
-
сразу (`max inbox`), новые сообщения по мере прихода (`max watch`), скачивание вложений,
|
|
87
|
+
сразу (`max inbox`), вся переписка с прошлого обзора для разбора «кто кому должен» (`max review`), новые сообщения по мере прихода (`max watch`), скачивание вложений,
|
|
66
88
|
расшифровка голосовых в текст на вашем компьютере, выгрузка переписки в JSONL или Markdown.
|
|
67
89
|
- **Искать.** Сообщения — по тексту всего прочитанного, без подключения к MAX. Чаты и контакты —
|
|
68
90
|
по части названия или имени.
|
|
@@ -115,7 +137,7 @@ max messages send "Иван Петров" "Опаздываю на 15 минут
|
|
|
115
137
|
|
|
116
138
|
| | max-cli | [PyMax](https://github.com/MaxApiTeam/PyMax) | [max-mcp](https://github.com/renosaza/max-mcp) |
|
|
117
139
|
|---|:-:|:-:|:-:|
|
|
118
|
-
| что это |
|
|
140
|
+
| что это | программа для терминала и MCP-сервер | библиотека на Python | MCP-сервер на PyMax |
|
|
119
141
|
| MCP-сервер и навык для агентов | ✅ | — | MCP |
|
|
120
142
|
| ограничения для агента: только чтение, разрешённые действия, список чатов, лимит в час, подтверждение отправки | ✅ | — | — |
|
|
121
143
|
| расшифровка голосовых в текст на вашем компьютере | ✅ | — | — |
|
|
@@ -169,8 +191,11 @@ npm install -g @leemour/max-cli
|
|
|
169
191
|
max --version
|
|
170
192
|
```
|
|
171
193
|
|
|
172
|
-
Нужен **Node 22 или новее**, либо **Bun 1.3+**.
|
|
173
|
-
ложатся файлы, — [docs/installation.md](docs/installation.md).
|
|
194
|
+
Нужен **Node 22 или новее**, либо **Bun 1.3+**. Работает на macOS, Linux и Windows. Подробности,
|
|
195
|
+
переменные окружения и то, куда ложатся файлы, — [docs/installation.md](docs/installation.md).
|
|
196
|
+
|
|
197
|
+
Если после установки команда `max` не находится, `npx @leemour/max-cli doctor` скажет почему и
|
|
198
|
+
напечатает команду, которая это исправит.
|
|
174
199
|
|
|
175
200
|
## Вход
|
|
176
201
|
|
|
@@ -257,9 +282,13 @@ Claude Desktop, Cursor и другие клиенты MCP подключаютс
|
|
|
257
282
|
видите чат и текст и отвечаете «да» или «нет». Подробно — [docs/mcp.md](docs/mcp.md).
|
|
258
283
|
|
|
259
284
|
```sh
|
|
260
|
-
claude mcp add max -- max mcp
|
|
285
|
+
claude mcp add max -- max mcp # Claude Code
|
|
286
|
+
max mcp config # запись для Claude Desktop, Cursor и других — с полными путями
|
|
261
287
|
```
|
|
262
288
|
|
|
289
|
+
Команды сервера — `/catch-up`, `/review`, `/reply`, `/find` — готовые просьбы: агент знает, какие
|
|
290
|
+
инструменты вызвать и чего не делать.
|
|
291
|
+
|
|
263
292
|
### Ответы в JSON
|
|
264
293
|
|
|
265
294
|
```sh
|
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CacheStore, PersonOrder, SyncSummary } from "./cache/store.js";
|
|
2
|
-
import type { AccountSession, AttachmentLink, Chat, ChatCard, ChatKind, Contact, ContactImport, Deletion, Folder, GroupCard, GroupSettings, Id, Inbox, Message, MessageChange, MessageHit, Page, PersonCard, Pin, Profile, Reactions, ReadMark, WindowedMessage } from "./domain/models.js";
|
|
2
|
+
import type { AccountSession, AttachmentLink, Chat, ChatCard, ChatKind, Contact, ContactImport, Deletion, Folder, GroupCard, GroupSettings, Id, Inbox, Message, MessageChange, MessageHit, Page, PersonCard, Pin, Profile, Reactions, ReadMark, Review, WindowedMessage } from "./domain/models.js";
|
|
3
3
|
import { type Wire } from "./protocol/connection.js";
|
|
4
4
|
import { type Payload } from "./protocol/frame.js";
|
|
5
5
|
import { type DiagnosticEvent } from "./runs/events.js";
|
|
@@ -411,6 +411,16 @@ export declare class MaxClient {
|
|
|
411
411
|
since: number;
|
|
412
412
|
limit: number;
|
|
413
413
|
}) => Promise<Inbox>;
|
|
414
|
+
/**
|
|
415
|
+
* **Every message, both sides, in each chat that changed after `since`** — what a review of
|
|
416
|
+
* commitments reads, where `since` reads only other people's newest few. The same cut at the
|
|
417
|
+
* chat list's newest message, so the next review starting at `until` misses nothing. Pages
|
|
418
|
+
* forward from `since`; a chat with more than `REVIEW_PER_CHAT` in the window is cut short and
|
|
419
|
+
* says so.
|
|
420
|
+
*/
|
|
421
|
+
review: ({ since }: {
|
|
422
|
+
since: number;
|
|
423
|
+
}) => Promise<Omit<Review, "complete" | "unheard">>;
|
|
414
424
|
};
|
|
415
425
|
/**
|
|
416
426
|
* **For a connection that stays open** (`max serve`). A one-shot command never calls these.
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -945,7 +945,7 @@ export class MaxClient {
|
|
|
945
945
|
unread: async ({ limit }) => {
|
|
946
946
|
const chats = (await this.chats.list()).items;
|
|
947
947
|
const waiting = byRecency(chats.filter((chat) => (chat.unreadCount ?? 0) > 0));
|
|
948
|
-
const { read, skipped } = capped(waiting);
|
|
948
|
+
const { read, skipped } = capped(waiting, INBOX_CHATS);
|
|
949
949
|
const found = [];
|
|
950
950
|
for (const { id, title, kind, unreadCount } of read) {
|
|
951
951
|
const count = unreadCount ?? 0;
|
|
@@ -971,10 +971,8 @@ export class MaxClient {
|
|
|
971
971
|
* never show. Anything newer than the snapshot waits for the next run and shows once there.
|
|
972
972
|
*/
|
|
973
973
|
since: async ({ since, limit }) => {
|
|
974
|
-
const chats =
|
|
975
|
-
const
|
|
976
|
-
const cut = Math.max(since, ...changed.map((chat) => Date.parse(chat.lastMessageAt ?? "")));
|
|
977
|
-
const { read, skipped } = capped(changed);
|
|
974
|
+
const { chats, changed, cut } = await this.#changedSince(since);
|
|
975
|
+
const { read, skipped } = capped(changed, INBOX_CHATS);
|
|
978
976
|
let until = since;
|
|
979
977
|
const found = [];
|
|
980
978
|
for (const { id, title, kind, unreadCount } of read) {
|
|
@@ -998,7 +996,53 @@ export class MaxClient {
|
|
|
998
996
|
partial: !this.#cache && this.#chatsCut && changed.length === chats.length,
|
|
999
997
|
};
|
|
1000
998
|
},
|
|
999
|
+
/**
|
|
1000
|
+
* **Every message, both sides, in each chat that changed after `since`** — what a review of
|
|
1001
|
+
* commitments reads, where `since` reads only other people's newest few. The same cut at the
|
|
1002
|
+
* chat list's newest message, so the next review starting at `until` misses nothing. Pages
|
|
1003
|
+
* forward from `since`; a chat with more than `REVIEW_PER_CHAT` in the window is cut short and
|
|
1004
|
+
* says so.
|
|
1005
|
+
*/
|
|
1006
|
+
review: async ({ since }) => {
|
|
1007
|
+
const { chats, changed, cut } = await this.#changedSince(since);
|
|
1008
|
+
const { read, skipped } = capped(changed, REVIEW_CHATS);
|
|
1009
|
+
const found = [];
|
|
1010
|
+
for (const { id, title, kind } of read) {
|
|
1011
|
+
const messages = [];
|
|
1012
|
+
let from = since;
|
|
1013
|
+
let more = false;
|
|
1014
|
+
while (true) {
|
|
1015
|
+
const page = await this.messages.list(id, { after: from, limit: REVIEW_PAGE });
|
|
1016
|
+
const inWindow = page.items.filter((message) => Date.parse(message.timestamp) <= cut);
|
|
1017
|
+
messages.push(...inWindow);
|
|
1018
|
+
const last = page.items.at(-1);
|
|
1019
|
+
if (!page.hasMore || !last || inWindow.length < page.items.length)
|
|
1020
|
+
break;
|
|
1021
|
+
if (messages.length >= REVIEW_PER_CHAT) {
|
|
1022
|
+
more = true;
|
|
1023
|
+
break;
|
|
1024
|
+
}
|
|
1025
|
+
from = Date.parse(last.timestamp);
|
|
1026
|
+
}
|
|
1027
|
+
if (messages.length > 0)
|
|
1028
|
+
found.push({ id, title, kind, messages: messages.slice(0, REVIEW_PER_CHAT), more });
|
|
1029
|
+
}
|
|
1030
|
+
return {
|
|
1031
|
+
since: new Date(since).toISOString(),
|
|
1032
|
+
until: new Date(cut).toISOString(),
|
|
1033
|
+
chats: found,
|
|
1034
|
+
skipped,
|
|
1035
|
+
partial: !this.#cache && this.#chatsCut && changed.length === chats.length,
|
|
1036
|
+
};
|
|
1037
|
+
},
|
|
1001
1038
|
};
|
|
1039
|
+
/** Chats whose last message is after `since`, newest first, and that newest time: the snapshot to cut at. */
|
|
1040
|
+
async #changedSince(since) {
|
|
1041
|
+
const chats = (await this.chats.list()).items;
|
|
1042
|
+
const changed = byRecency(chats.filter((chat) => chat.lastMessageAt !== null && Date.parse(chat.lastMessageAt) > since));
|
|
1043
|
+
const cut = Math.max(since, ...changed.map((chat) => Date.parse(chat.lastMessageAt ?? "")));
|
|
1044
|
+
return { chats, changed, cut };
|
|
1045
|
+
}
|
|
1002
1046
|
/**
|
|
1003
1047
|
* A reaction is seen by the other person, so it goes through the send guard and the send log like a
|
|
1004
1048
|
* message. Not retried: a reaction lost in transit costs a second command, and nothing about it is
|
|
@@ -2005,6 +2049,10 @@ export const timeOfMessageId = (id) => {
|
|
|
2005
2049
|
* account rarely has that many chats change between two checks, and the rest are named, not lost.
|
|
2006
2050
|
*/
|
|
2007
2051
|
const INBOX_CHATS = 20;
|
|
2052
|
+
/** A review reads every changed chat of a few days; past this many, the rest are named, not read. */
|
|
2053
|
+
const REVIEW_CHATS = 50;
|
|
2054
|
+
const REVIEW_PAGE = 100;
|
|
2055
|
+
const REVIEW_PER_CHAT = 500;
|
|
2008
2056
|
export const FIRST_TAB_SYNC = { folders: 0, calls: 0, assets: {} };
|
|
2009
2057
|
const numberOr = (value, fallback) => (typeof value === "number" ? value : fallback);
|
|
2010
2058
|
const eventTime = (chat) => {
|
|
@@ -2027,9 +2075,9 @@ const CHAT_CHANGED = 135;
|
|
|
2027
2075
|
const CHANGES_CHATS = new Set([140, 142]);
|
|
2028
2076
|
/** Newest first — the chats a reader most likely came for are read before the cap. */
|
|
2029
2077
|
const byRecency = (chats) => chats.toSorted((a, b) => Date.parse(b.lastMessageAt ?? "") - Date.parse(a.lastMessageAt ?? ""));
|
|
2030
|
-
const capped = (chats) => ({
|
|
2031
|
-
read: chats.slice(0,
|
|
2032
|
-
skipped: chats.slice(
|
|
2078
|
+
const capped = (chats, most) => ({
|
|
2079
|
+
read: chats.slice(0, most),
|
|
2080
|
+
skipped: chats.slice(most).map(({ id, title, lastMessageAt }) => ({ id, title, lastMessageAt })),
|
|
2033
2081
|
});
|
|
2034
2082
|
const isPresent = (value) => value !== null && value !== undefined;
|
|
2035
2083
|
const needsName = (message) => message.senderId !== null && message.senderName === null && message.outgoing !== true;
|