@leemour/cli-messaging 0.95.0 → 0.97.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 (99) hide show
  1. package/README.md +9 -2
  2. package/dist/cli/bot/command.d.ts +1 -1
  3. package/dist/cli/bot/command.d.ts.map +1 -1
  4. package/dist/cli/bot/command.js +52 -11
  5. package/dist/cli/bot/command.js.map +1 -1
  6. package/dist/cli/bot/context.d.ts +17 -1
  7. package/dist/cli/bot/context.d.ts.map +1 -1
  8. package/dist/cli/bot/context.js +37 -3
  9. package/dist/cli/bot/context.js.map +1 -1
  10. package/dist/cli/bot/copy.d.ts +19 -0
  11. package/dist/cli/bot/copy.d.ts.map +1 -0
  12. package/dist/cli/bot/copy.js +85 -0
  13. package/dist/cli/bot/copy.js.map +1 -0
  14. package/dist/cli/bot/messages.d.ts +10 -0
  15. package/dist/cli/bot/messages.d.ts.map +1 -0
  16. package/dist/cli/bot/messages.js +242 -0
  17. package/dist/cli/bot/messages.js.map +1 -0
  18. package/dist/cli/bot/port.d.ts +50 -5
  19. package/dist/cli/bot/port.d.ts.map +1 -1
  20. package/dist/cli/bot/port.js +2 -1
  21. package/dist/cli/bot/port.js.map +1 -1
  22. package/dist/cli/index.d.ts +3 -1
  23. package/dist/cli/index.d.ts.map +1 -1
  24. package/dist/cli/index.js +3 -0
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/messenger/ask.d.ts.map +1 -1
  27. package/dist/cli/messenger/ask.js +1 -1
  28. package/dist/cli/messenger/ask.js.map +1 -1
  29. package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
  30. package/dist/cli/messenger/conversations-command.js +66 -0
  31. package/dist/cli/messenger/conversations-command.js.map +1 -1
  32. package/dist/cli/messenger/store-maintenance-command.d.ts.map +1 -1
  33. package/dist/cli/messenger/store-maintenance-command.js +50 -11
  34. package/dist/cli/messenger/store-maintenance-command.js.map +1 -1
  35. package/dist/cli/skill-command.d.ts.map +1 -1
  36. package/dist/cli/skill-command.js +5 -1
  37. package/dist/cli/skill-command.js.map +1 -1
  38. package/dist/search/query.d.ts +28 -0
  39. package/dist/search/query.d.ts.map +1 -0
  40. package/dist/search/query.js +109 -0
  41. package/dist/search/query.js.map +1 -0
  42. package/dist/search/trigrams.d.ts +7 -0
  43. package/dist/search/trigrams.d.ts.map +1 -0
  44. package/dist/search/trigrams.js +13 -0
  45. package/dist/search/trigrams.js.map +1 -0
  46. package/dist/sends/permissions.d.ts +1 -1
  47. package/dist/sends/permissions.d.ts.map +1 -1
  48. package/dist/sends/permissions.js +14 -1
  49. package/dist/sends/permissions.js.map +1 -1
  50. package/dist/services/conversations.d.ts +11 -1
  51. package/dist/services/conversations.d.ts.map +1 -1
  52. package/dist/services/conversations.js +8 -0
  53. package/dist/services/conversations.js.map +1 -1
  54. package/dist/services/messages.d.ts +2 -0
  55. package/dist/services/messages.d.ts.map +1 -1
  56. package/dist/services/messages.js +13 -6
  57. package/dist/services/messages.js.map +1 -1
  58. package/dist/sqlite-runtime.d.ts +29 -0
  59. package/dist/sqlite-runtime.d.ts.map +1 -0
  60. package/dist/sqlite-runtime.js +105 -0
  61. package/dist/sqlite-runtime.js.map +1 -0
  62. package/dist/store/drivers/bun-sqlite.d.ts +5 -0
  63. package/dist/store/drivers/bun-sqlite.d.ts.map +1 -1
  64. package/dist/store/drivers/bun-sqlite.js +24 -2
  65. package/dist/store/drivers/bun-sqlite.js.map +1 -1
  66. package/dist/store/index.d.ts +1 -0
  67. package/dist/store/index.d.ts.map +1 -1
  68. package/dist/store/index.js +1 -0
  69. package/dist/store/index.js.map +1 -1
  70. package/dist/store/open.d.ts +2 -0
  71. package/dist/store/open.d.ts.map +1 -1
  72. package/dist/store/open.js +10 -5
  73. package/dist/store/open.js.map +1 -1
  74. package/dist/store/sqlite/backfill.d.ts +2 -1
  75. package/dist/store/sqlite/backfill.d.ts.map +1 -1
  76. package/dist/store/sqlite/backfill.js +3 -1
  77. package/dist/store/sqlite/backfill.js.map +1 -1
  78. package/dist/store/sqlite/batches.d.ts +17 -3
  79. package/dist/store/sqlite/batches.d.ts.map +1 -1
  80. package/dist/store/sqlite/batches.js +93 -6
  81. package/dist/store/sqlite/batches.js.map +1 -1
  82. package/dist/store/sqlite/chats.d.ts +2 -0
  83. package/dist/store/sqlite/chats.d.ts.map +1 -1
  84. package/dist/store/sqlite/chats.js +6 -0
  85. package/dist/store/sqlite/chats.js.map +1 -1
  86. package/dist/store/sqlite/open.d.ts.map +1 -1
  87. package/dist/store/sqlite/open.js +2 -4
  88. package/dist/store/sqlite/open.js.map +1 -1
  89. package/dist/store/sqlite/search-index.d.ts +36 -0
  90. package/dist/store/sqlite/search-index.d.ts.map +1 -0
  91. package/dist/store/sqlite/search-index.js +131 -0
  92. package/dist/store/sqlite/search-index.js.map +1 -0
  93. package/dist/store/store.d.ts +29 -0
  94. package/dist/store/store.d.ts.map +1 -1
  95. package/dist/store/store.js +26 -0
  96. package/dist/store/store.js.map +1 -1
  97. package/package.json +9 -2
  98. package/parity.json +20 -72
  99. package/skills/link-conversations/SKILL.md +77 -0
@@ -0,0 +1,242 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import { annotate } from "@leemour/cli-core/commands";
3
+ import { Command } from "commander";
4
+ import { parseMarkdown } from "../../domain/markdown.js";
5
+ import { renderMessages } from "../../render/messages.js";
6
+ import { guardedWrite } from "../../sends/guarded.js";
7
+ import { newOperationId } from "../../sends/send-id.js";
8
+ import { readAttachments } from "../../sends/upload.js";
9
+ import { environmentOf } from "../context.js";
10
+ import { readAll } from "../messenger/stdin.js";
11
+ import { listed } from "../paging.js";
12
+ import { botContext } from "./context.js";
13
+ /** The adapter's `method`, or a refusal naming what this messenger's bot cannot do. */
14
+ export const botCan = (adapter, method, bot, what) => {
15
+ const found = adapter[method];
16
+ if (typeof found !== "function") {
17
+ throw new CliError("validation_error", `a ${bot.name ?? "messenger"} bot cannot ${what}`);
18
+ }
19
+ return found.bind(adapter);
20
+ };
21
+ /** The bot's own id — the key its local copy is kept under — remembered after the first time it is asked. */
22
+ export const botIdOf = async (context, adapter) => {
23
+ const known = context.registry.botId();
24
+ if (known)
25
+ return known;
26
+ const { id } = await adapter.me();
27
+ context.registry.rememberBot(id);
28
+ return id;
29
+ };
30
+ const show = (context, bot, messages, one = false) => {
31
+ if (context.format === "pretty") {
32
+ context.streams.data(renderMessages(messages, {
33
+ color: context.color,
34
+ verbosity: context.settings.detail,
35
+ senderColors: context.settings.senderColors,
36
+ profile: context.profile,
37
+ provider: bot.provider,
38
+ locale: bot.app.locale,
39
+ }));
40
+ }
41
+ else if (context.format === "jsonl")
42
+ context.renderer.stream(messages);
43
+ else
44
+ context.renderer.result(one ? messages[0] : listed(messages));
45
+ };
46
+ const marks = (md, html) => {
47
+ if (md && html)
48
+ throw new CliError("validation_error", "--md and --html mark up the text two ways; use one");
49
+ };
50
+ /** Wrote somewhere real — a numeric chat — so the bot has seen that chat. */
51
+ const seen = (context, message) => {
52
+ if (/^-?\d+$/.test(message.chatId))
53
+ context.registry.observe([{ id: message.chatId }]);
54
+ };
55
+ const sendCommand = (bot) => annotate(new Command("send"), { mutates: true })
56
+ .description("send a message as the bot; without [text], the text is read from stdin")
57
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
58
+ .argument("[text]", "the message")
59
+ .option("--reply-to <message>", "answer this message, by its id in the same chat")
60
+ .option("--silent", "deliver without a notification")
61
+ .option("--md", "read **bold**, _italic_, ~~struck~~ and `code` in the text; \\ keeps a mark literal")
62
+ .option("--html", "the text is HTML: <b>, <i>, <a href>, <code>")
63
+ .option("--file <file>", "attach a file; the text becomes its caption")
64
+ .option("--photo <file>", "attach a .jpg, .png or .webp as a photo; the text becomes its caption")
65
+ .option("--as-file", "send the --file as a file to download, a video included")
66
+ .option("--voice <file>", "send an Ogg Opus file as a voice message, alone, with no text")
67
+ .option("--allow-any-file", "send a file even from a hidden folder, ~/.ssh or this CLI's own folders")
68
+ .action(async function (chat, text) {
69
+ const context = botContext(this, bot);
70
+ const options = this.opts();
71
+ marks(options.md, options.html);
72
+ const ref = context.chatRef(chat);
73
+ const attachments = await readAttachments({
74
+ ...(options.photo === undefined ? {} : { photo: options.photo }),
75
+ ...(options.file === undefined ? {} : { file: options.file }),
76
+ ...(options.voice === undefined ? {} : { voice: options.voice }),
77
+ ...(text === undefined ? {} : { text }),
78
+ asFile: options.asFile === true,
79
+ }, { app: bot.app, env: context.env, anyFile: options.allowAnyFile === true });
80
+ const body = text ?? (attachments.length > 0 ? "" : await readAll(environmentOf(this).stdin ?? process.stdin));
81
+ if (body.trim() === "" && attachments.length === 0) {
82
+ throw new CliError("validation_error", "nothing to send — give the text or pipe it in");
83
+ }
84
+ const { text: plain, markup } = options.md ? parseMarkdown(body) : { text: body, markup: undefined };
85
+ const replyTo = options.replyTo?.trim();
86
+ await context.run(async (events) => {
87
+ const adapter = await context.authenticated({ events });
88
+ const send = botCan(adapter, "send", bot, "send messages");
89
+ const operationId = newOperationId();
90
+ const message = await guardedWrite(context.guard(), { operationId, chatId: ref, kind: "message", key: "bot.messages.send", ...(replyTo ? { replyTo } : {}) }, () => send(ref, plain, {
91
+ ...(replyTo ? { replyTo } : {}),
92
+ ...(options.silent ? { silent: true } : {}),
93
+ ...(markup ? { markup } : {}),
94
+ ...(options.html ? { html: true } : {}),
95
+ ...(attachments.length > 0 ? { attachments } : {}),
96
+ }), (sent) => ({ messageId: sent.id }));
97
+ seen(context, message);
98
+ if (message.senderId)
99
+ context.registry.rememberBot(message.senderId);
100
+ const botId = message.senderId ?? (await botIdOf(context, adapter));
101
+ await context.copy.keep(botId, [message], "send", context.renderer.warn);
102
+ context.renderer.result({ operationId, message });
103
+ });
104
+ });
105
+ const listCommand = (bot) => new Command("list")
106
+ .description(`the latest messages in a chat; where ${bot.name ?? "the messenger"} gives a bot no history, and with --offline, ` +
107
+ "the ones this bot has seen on this machine")
108
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
109
+ .action(async function (chat) {
110
+ const context = botContext(this, bot);
111
+ const ref = context.chatRef(chat);
112
+ const limit = context.settings.limit;
113
+ await context.run(async (events) => {
114
+ const fromCopy = async (botId) => {
115
+ const page = await context.copy.read((store) => store.messages(context.copy.accountOf(botId), ref, { limit }));
116
+ return page.items;
117
+ };
118
+ if (context.settings.offline) {
119
+ const botId = context.registry.botId();
120
+ if (!botId)
121
+ throw new CliError("not_found", "this bot has kept nothing on this machine yet");
122
+ show(context, bot, await fromCopy(botId));
123
+ return;
124
+ }
125
+ const adapter = await context.authenticated({ events });
126
+ const botId = await botIdOf(context, adapter);
127
+ if (!adapter.history) {
128
+ context.renderer.note(`${bot.name ?? "the messenger"} gives a bot no history: these are the messages it kept`);
129
+ show(context, bot, await fromCopy(botId));
130
+ return;
131
+ }
132
+ const messages = await adapter.history(ref, { limit });
133
+ await context.copy.keep(botId, messages, "history", context.renderer.warn);
134
+ if (/^-?\d+$/.test(ref))
135
+ context.registry.observe([{ id: ref }]);
136
+ show(context, bot, messages);
137
+ });
138
+ });
139
+ const showCommand = (bot) => new Command("show")
140
+ .description("one message by its id in a chat")
141
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
142
+ .argument("<message>", "message id")
143
+ .action(async function (chat, messageId) {
144
+ const context = botContext(this, bot);
145
+ const ref = context.chatRef(chat);
146
+ await context.run(async (events) => {
147
+ const fromCopy = async (botId) => {
148
+ const kept = await context.copy.read((store) => store.message(context.copy.accountOf(botId), messageId, { chatId: ref }));
149
+ if (!kept)
150
+ throw new CliError("not_found", `message ${messageId} is not in this bot's local copy`);
151
+ return kept;
152
+ };
153
+ if (context.settings.offline) {
154
+ const botId = context.registry.botId();
155
+ if (!botId)
156
+ throw new CliError("not_found", "this bot has kept nothing on this machine yet");
157
+ show(context, bot, [await fromCopy(botId)], true);
158
+ return;
159
+ }
160
+ const adapter = await context.authenticated({ events });
161
+ const botId = await botIdOf(context, adapter);
162
+ if (!adapter.message) {
163
+ show(context, bot, [await fromCopy(botId)], true);
164
+ return;
165
+ }
166
+ const found = await adapter.message(ref, messageId);
167
+ await context.copy.keep(botId, [found], "history", context.renderer.warn);
168
+ show(context, bot, [found], true);
169
+ });
170
+ });
171
+ const editCommand = (bot) => annotate(new Command("edit"), { mutates: true })
172
+ .description("replace the text of a message the bot sent")
173
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
174
+ .argument("<message>", "message id")
175
+ .argument("<text>", "the new text")
176
+ .option("--md", "read **bold**, _italic_, ~~struck~~ and `code` in the text; \\ keeps a mark literal")
177
+ .option("--html", "the text is HTML: <b>, <i>, <a href>, <code>")
178
+ .action(async function (chat, messageId, text) {
179
+ const context = botContext(this, bot);
180
+ const options = this.opts();
181
+ marks(options.md, options.html);
182
+ const ref = context.chatRef(chat);
183
+ const { text: plain, markup } = options.md ? parseMarkdown(text) : { text, markup: undefined };
184
+ await context.run(async (events) => {
185
+ const adapter = await context.authenticated({ events });
186
+ const edit = botCan(adapter, "edit", bot, "edit messages");
187
+ const operationId = newOperationId();
188
+ const message = await guardedWrite(context.guard(), { operationId, chatId: ref, kind: "edit", key: "bot.messages.edit", messageId }, () => edit(ref, messageId, plain, { ...(markup ? { markup } : {}), ...(options.html ? { html: true } : {}) }));
189
+ await context.copy.keep(await botIdOf(context, adapter), [message], "send", context.renderer.warn);
190
+ context.renderer.result({ operationId, message });
191
+ });
192
+ });
193
+ const deleteCommand = (bot) => annotate(new Command("delete"), { mutates: true })
194
+ .description("delete messages in a chat the bot can delete in; it cannot be undone")
195
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
196
+ .argument("<messages...>", "message ids")
197
+ .option("--allow-dangerous", "delete without asking")
198
+ .action(async function (chat, messageIds) {
199
+ const context = botContext(this, bot);
200
+ const ref = context.chatRef(chat);
201
+ await context.run(async (events) => {
202
+ const adapter = await context.authenticated({ events });
203
+ const remove = botCan(adapter, "delete", bot, "delete messages");
204
+ const operationId = newOperationId();
205
+ await guardedWrite(context.guard(), { operationId, chatId: ref, kind: "delete", key: "bot.messages.delete", count: messageIds.length }, () => remove(ref, messageIds));
206
+ await context.copy.forget(await botIdOf(context, adapter), ref, messageIds, context.renderer.warn);
207
+ context.renderer.result({ operationId, deleted: messageIds });
208
+ });
209
+ });
210
+ const pinCommand = (bot, pin) => {
211
+ const command = annotate(new Command(pin ? "pin" : "unpin"), { mutates: true })
212
+ .description(pin ? "pin a message in a chat; quietly unless --notify" : "unpin a message in a chat")
213
+ .argument("<chat>", "a chat id, user:<id> for a person, or the title of a chat this bot has seen")
214
+ .argument("<message>", "message id");
215
+ if (pin)
216
+ command.option("--notify", "tell the chat's members");
217
+ return command.action(async function (chat, messageId) {
218
+ const context = botContext(this, bot);
219
+ const ref = context.chatRef(chat);
220
+ const notify = this.opts().notify === true;
221
+ await context.run(async (events) => {
222
+ const adapter = await context.authenticated({ events });
223
+ const operationId = newOperationId();
224
+ const key = pin ? "bot.messages.pin" : "bot.messages.unpin";
225
+ await guardedWrite(context.guard(), { operationId, chatId: ref, kind: "pin", key, messageId }, () => pin
226
+ ? botCan(adapter, "pin", bot, "pin messages")(ref, messageId, { notify })
227
+ : botCan(adapter, "unpin", bot, "unpin messages")(ref, messageId));
228
+ context.renderer.result({ operationId, chatId: ref, messageId, pinned: pin });
229
+ });
230
+ });
231
+ };
232
+ /** `bot messages`: the bot's own messages, under the names the personal account uses. */
233
+ export const botMessagesCommand = (bot) => new Command("messages")
234
+ .description("the messages in the chats this bot is in")
235
+ .addCommand(sendCommand(bot))
236
+ .addCommand(listCommand(bot))
237
+ .addCommand(showCommand(bot))
238
+ .addCommand(editCommand(bot))
239
+ .addCommand(deleteCommand(bot))
240
+ .addCommand(pinCommand(bot, true))
241
+ .addCommand(pinCommand(bot, false));
242
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/cli/bot/messages.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,61 @@
1
1
  import type { Command } from "commander";
2
- import type { Provider } from "../../domain/models.js";
2
+ import type { Markup } from "../../domain/markdown.js";
3
+ import type { Chat, Id, Message, Provider } from "../../domain/models.js";
4
+ import type { Upload } from "../../sends/upload.js";
3
5
  import type { AppIdentity } from "../app.js";
4
- import type { MessengerCore } from "../messenger/port.js";
6
+ import type { MessagePins, MessengerCore } from "../messenger/port.js";
5
7
  import type { EventSink } from "../runs/events.js";
6
8
  import type { GlobalFlags, ResolveOptions, Settings } from "../settings.js";
7
9
  import type { ChatRegistry } from "./registry.js";
8
10
  import type { BotTokenStore } from "./token.js";
9
11
  /**
10
- * The part of the personal core a bot can do. It grows as bot commands move here; a bot never gets
11
- * `chats` or `history` from this type, because neither Bot API lists a bot's chats.
12
+ * A chat as a bot command names it, resolved: a chat id, or `user:<id>` for the dialog with a person —
13
+ * MAX's Bot API writes to a person by user id, and Telegram's chat id for a dialog is the person's id.
12
14
  */
13
- export type BotAdapter = Pick<MessengerCore, "me" | "close">;
15
+ export type BotChatRef = string;
16
+ /** How one bot message goes. A bot send is never repeated — neither Bot API makes a repeat safe — so it has no send id. */
17
+ export interface BotSendOptions {
18
+ /** A message id in the same chat. */
19
+ replyTo?: Id;
20
+ silent?: boolean;
21
+ /** Spans of `text`, from `--md`. */
22
+ markup?: Markup[];
23
+ /** `text` is the messenger's HTML. */
24
+ html?: boolean;
25
+ attachments?: Upload[];
26
+ }
27
+ /** Sending, changing and deleting the bot's messages. */
28
+ export interface BotMessaging {
29
+ send(chat: BotChatRef, text: string, options: BotSendOptions): Promise<Message>;
30
+ edit(chat: BotChatRef, messageId: Id, text: string, options: {
31
+ markup?: Markup[];
32
+ html?: boolean;
33
+ }): Promise<Message>;
34
+ delete(chat: BotChatRef, messageIds: Id[]): Promise<void>;
35
+ }
36
+ /** Reading from the messenger, where its Bot API allows it — MAX's does, Telegram's does not. */
37
+ export interface BotHistory {
38
+ /** The newest `limit`, oldest first. */
39
+ history(chat: BotChatRef, window: {
40
+ limit: number;
41
+ }): Promise<Message[]>;
42
+ message(chat: BotChatRef, messageId: Id): Promise<Message>;
43
+ }
44
+ /** What a bot shows in a chat while it works. */
45
+ export declare const BOT_ACTIONS: readonly ["typing", "photo", "video", "voice", "file"];
46
+ export type BotAction = (typeof BOT_ACTIONS)[number];
47
+ /** One chat the bot is in. */
48
+ export interface BotChatTools {
49
+ chat(chat: BotChatRef): Promise<Chat>;
50
+ /** Only an admin of the chat can bring the bot back. */
51
+ leave(chat: BotChatRef): Promise<void>;
52
+ action(chat: BotChatRef, action: BotAction): Promise<void>;
53
+ }
54
+ /**
55
+ * The part of the personal core a bot can do, and the groups its Bot API has. A bot never gets
56
+ * `chats` from this type: neither Bot API lists a bot's chats.
57
+ */
58
+ export type BotAdapter = Pick<MessengerCore, "me" | "close"> & Partial<BotMessaging> & Partial<BotHistory> & Partial<MessagePins> & Partial<BotChatTools>;
14
59
  export interface BotConnectOptions {
15
60
  stop?: AbortSignal;
16
61
  events?: EventSink;
@@ -1 +1 @@
1
- {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../../src/cli/bot/port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,OAAO,CAAC,CAAA;AAE5D,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB;AAED,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,WAAW,CAAA;IAChB,uGAAuG;IACvG,QAAQ,EAAE,QAAQ,CAAA;IAClB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iCAAiC;IACjC,eAAe,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,QAAQ,CAAA;IAC3E;;;OAGG;IACH,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAC9F,sGAAsG;IACtG,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,aAAa,CAAA;IACjE,wEAAwE;IACxE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,YAAY,CAAA;IAC9D,+FAA+F;IAC/F,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CACnE"}
1
+ {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../../src/cli/bot/port.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- export {};
1
+ /** What a bot shows in a chat while it works. */
2
+ export const BOT_ACTIONS = ["typing", "photo", "video", "voice", "file"];
2
3
  //# sourceMappingURL=port.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"port.js","sourceRoot":"","sources":["../../../src/cli/bot/port.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"port.js","sourceRoot":"","sources":["../../../src/cli/bot/port.ts"],"names":[],"mappings":"AA2CA,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAU,CAAA"}
@@ -5,7 +5,9 @@ export { maskedAccount } from "../services/people.js";
5
5
  export { type AppIdentity, envName } from "./app.js";
6
6
  export { botCommand } from "./bot/command.js";
7
7
  export { type BotContext, botContext, botWords } from "./bot/context.js";
8
- export type { BotAdapter, BotConnectOptions, BotMessenger } from "./bot/port.js";
8
+ export { type BotCopy, botCopy } from "./bot/copy.js";
9
+ export { botCan, botIdOf, botMessagesCommand } from "./bot/messages.js";
10
+ export { BOT_ACTIONS, type BotAction, type BotAdapter, type BotChatRef, type BotChatTools, type BotConnectOptions, type BotHistory, type BotMessaging, type BotMessenger, type BotSendOptions, } from "./bot/port.js";
9
11
  export { botFiles, botsDirectory, ChatRegistry, registryProfiles, type SeenChat } from "./bot/registry.js";
10
12
  export { BotTokenStore, type BotTokenStoreOptions } from "./bot/token.js";
11
13
  export { CONTRACT, commandsCommand } from "./commands-command.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -5,6 +5,9 @@ export { maskedAccount } from "../services/people.js";
5
5
  export { envName } from "./app.js";
6
6
  export { botCommand } from "./bot/command.js";
7
7
  export { botContext, botWords } from "./bot/context.js";
8
+ export { botCopy } from "./bot/copy.js";
9
+ export { botCan, botIdOf, botMessagesCommand } from "./bot/messages.js";
10
+ export { BOT_ACTIONS, } from "./bot/port.js";
8
11
  export { botFiles, botsDirectory, ChatRegistry, registryProfiles } from "./bot/registry.js";
9
12
  export { BotTokenStore } from "./bot/token.js";
10
13
  export { CONTRACT, commandsCommand } from "./commands-command.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/ask.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAGjD,4GAA4G;AAC5G,eAAO,MAAM,WAAW,QAAS,MAAM,KAAG,mBAAmB,GAAG,OACL,CAAA;AAuC3D,wGAAwG;AACxG,eAAO,MAAM,QAAQ,YAAmB,OAAO,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAIxF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,YACd,OAAO,KAAG,KAsBnB,CAAA"}
1
+ {"version":3,"file":"ask.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/ask.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAGjD,4GAA4G;AAC5G,eAAO,MAAM,WAAW,QAAS,MAAM,KAAG,mBAAmB,GAAG,OAC4B,CAAA;AAuC5F,wGAAwG;AACxG,eAAO,MAAM,QAAQ,YAAmB,OAAO,YAAY,MAAM,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAIxF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,YACd,OAAO,KAAG,KAsBnB,CAAA"}
@@ -4,7 +4,7 @@ import { ReadStream } from "node:tty";
4
4
  import { CliError } from "@leemour/cli-core";
5
5
  import { environmentOf } from "../context.js";
6
6
  /** Deleting has its own word for "yes": the flag a person has to mean, not a habit (max-cli `NEED-238`). */
7
- export const skipFlagFor = (key) => key === "messages.delete" ? "--allow-dangerous" : "--yes";
7
+ export const skipFlagFor = (key) => key === "messages.delete" || key === "bot.messages.delete" ? "--allow-dangerous" : "--yes";
8
8
  /**
9
9
  * One line from the terminal itself, not stdin — stdin may be the text being sent. `null` when no
10
10
  * person is there. Ctrl-C and a closed terminal cancel, as `readSecret` does.
@@ -1 +1 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/messenger/ask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,4GAA4G;AAC5G,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAiC,EAAE,CACxE,GAAG,KAAK,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAA;AAE3D;;;GAGG;AACH,MAAM,YAAY,GAAG,KAAK,EAAE,QAAgB,EAA0B,EAAE;IACtE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IAC9D,IAAI,KAAiB,CAAA;IACrB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAA;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACjF,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC,CAAA;YACtF,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC5B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAwB,EAAE,EAAE,CAC5F;IACE,GAAG;IACH,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;IACxC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;IAC9E,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;IACrG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;CAClD;KACE,MAAM,CAAC,OAAO,CAAC;KACf,IAAI,CAAC,IAAI,CAAC,CAAA;AAEf,wGAAwG;AACxG,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,OAAgB,EAAE,QAAgB,EAA0B,EAAE;IAC3F,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,EAAuC,CAAA;IAC5E,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC5D,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;AAClE,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GACxB,CAAC,OAAgB,EAAS,EAAE,CAC5B,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;IACrB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,EAKjC,CAAA;IACJ,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI;QAAE,OAAM;IACjF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAA;IAC3D,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACrG,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAChB,uBAAuB,EACvB,GAAG,GAAG,8FAA8F;YAClG,OAAO,IAAI,cAAc,CAC5B,CAAA;IACH,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,GAAG,GAAG,gCAAgC,CAAC,CAAA;AAC9G,CAAC,CAAA"}
1
+ {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../src/cli/messenger/ask.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"conversations-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/conversations-command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAE/D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,cAAe,SAAS,KAAG,OAsI3D,CAAA;AAED,8EAA8E;AAC9E,eAAO,MAAM,YAAY,cAAe,SAAS,KAAG,OAwB9C,CAAA"}
1
+ {"version":3,"file":"conversations-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/conversations-command.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOnC,OAAO,EAAE,KAAK,SAAS,EAA2C,MAAM,cAAc,CAAA;AAGtF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,cAAe,SAAS,KAAG,OA4K3D,CAAA;AAuCD,8EAA8E;AAC9E,eAAO,MAAM,YAAY,cAAe,SAAS,KAAG,OAwB9C,CAAA"}
@@ -1,10 +1,12 @@
1
1
  import { CliError } from "@leemour/cli-core";
2
2
  import { Command } from "commander";
3
3
  import { renderMessages } from "../../render/messages.js";
4
+ import { levelFor } from "../../sends/permissions.js";
4
5
  import { BATCH_SIZE } from "../../services/conversations.js";
5
6
  import { momentOf } from "../../services/moment.js";
6
7
  import { positiveCount } from "../paging.js";
7
8
  import { messengerContext } from "./context.js";
9
+ import { readAll } from "./stdin.js";
8
10
  /**
9
11
  * `conversations`: the threads inside a group chat, found by rules over the stored messages — replies,
10
12
  * mentions, one sender's messages in a row. From the store alone; nothing is built until asked (phase 3).
@@ -117,8 +119,72 @@ export const conversationsCommand = (messenger) => {
117
119
  .join("")}`);
118
120
  context.renderer.note(`${batch.remaining.messages} messages left after this batch`);
119
121
  });
122
+ const links = conversations
123
+ .command("links")
124
+ .description("your agent's answers: which earlier message each message of a batch answers");
125
+ links
126
+ .command("add")
127
+ .description('store your agent\'s answer to a batch, read as JSON from stdin: { "model", "answers": [{ "message", ' +
128
+ '"parent", "confidence" }] }; all or nothing')
129
+ .requiredOption("--batch <id>", "the batch id `conversations batches next` printed")
130
+ .action(async function () {
131
+ const { batch } = this.opts();
132
+ const context = messengerContext(this, messenger);
133
+ writable(context, messenger.app.command);
134
+ const answer = answerOf(await readAll(context.stdin));
135
+ const stored = await context.withServices((services) => services.conversations.addAnswers(batch, answer));
136
+ if (context.format === "pretty") {
137
+ context.streams.data(`${stored.stored} answers stored — \`conversations build --chat ${stored.chat}\` uses them\n`);
138
+ }
139
+ else
140
+ context.renderer.result(stored);
141
+ });
142
+ links
143
+ .command("clear")
144
+ .description("drop your agent's answers for a chat, or only one model's; messages are never touched")
145
+ .requiredOption("--chat <chat>", messenger.chatArgument)
146
+ .option("--model <model>", "only the answers this model gave")
147
+ .action(async function () {
148
+ const { chat, model } = this.opts();
149
+ const context = messengerContext(this, messenger);
150
+ writable(context, messenger.app.command);
151
+ const cleared = await context.withServices((services) => services.conversations.clearAnswers(chat, model));
152
+ if (context.format === "pretty")
153
+ context.streams.data(`${cleared.cleared} answers dropped\n`);
154
+ else
155
+ context.renderer.result(cleared);
156
+ });
120
157
  return conversations;
121
158
  };
159
+ /**
160
+ * `deny` already stopped the command (`messengerContext`); `readonly` stops this write too. There is no
161
+ * question to put to the owner here, so `ask` refuses rather than writing unasked.
162
+ */
163
+ const writable = (context, command) => {
164
+ const { settings } = context;
165
+ const { level, key } = levelFor(settings.permissions, LINKS_KEY);
166
+ if (level === "allow")
167
+ return;
168
+ throw new CliError(level === "ask" ? "confirmation_required" : "permission_error", `profile ${settings.profile} does not let ${LINKS_KEY} write (permissions.${key} is ${level}, from the ` +
169
+ `${settings.permissionSources[key ?? ""] ?? "default"}); to allow it: ` +
170
+ `${command} ${settings.profile} config set permissions.${LINKS_KEY} allow`, { permission: LINKS_KEY });
171
+ };
172
+ const LINKS_KEY = "conversations.links";
173
+ /** The agent's JSON, shaped enough for the store to check the rest against the batch. */
174
+ const answerOf = (text) => {
175
+ let parsed;
176
+ try {
177
+ parsed = JSON.parse(text);
178
+ }
179
+ catch {
180
+ throw new CliError("validation_error", "the answer on stdin is not JSON — see `conversations links add --help`");
181
+ }
182
+ const answer = parsed;
183
+ if (!answer || typeof answer !== "object" || !Array.isArray(answer.answers)) {
184
+ throw new CliError("validation_error", 'the answer needs "answers": a list of { "message", "parent", "confidence" }');
185
+ }
186
+ return answer;
187
+ };
122
188
  /** `messages links`: why a message sits where it does in its conversation. */
123
189
  export const linksCommand = (messenger) => new Command("links")
124
190
  .description("why a message is in its conversation: each link it has, and the chain of answers back to the start")
@@ -1 +1 @@
1
- {"version":3,"file":"conversations-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/conversations-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversations-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/conversations-command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store-maintenance-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/store-maintenance-command.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AASnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAsC7C,oGAAoG;AACpG,eAAO,MAAM,YAAY,QAAe,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;EAkBxD,CAAA;AAED,eAAO,MAAM,wBAAwB,cAAe,SAAS,KAAG,OAAO,EAMtE,CAAA"}
1
+ {"version":3,"file":"store-maintenance-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/store-maintenance-command.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAwC7C,oGAAoG;AACpG,eAAO,MAAM,YAAY,QAAe,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;EAkBxD,CAAA;AAED,eAAO,MAAM,wBAAwB,cAAe,SAAS,KAAG,OAAO,EAOtE,CAAA"}