@moxxy/plugin-telegram 0.41.2 → 0.42.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 (90) hide show
  1. package/dist/channel/callback-handler.d.ts +5 -2
  2. package/dist/channel/callback-handler.d.ts.map +1 -1
  3. package/dist/channel/callback-handler.js +31 -58
  4. package/dist/channel/callback-handler.js.map +1 -1
  5. package/dist/channel/mirror.d.ts +23 -0
  6. package/dist/channel/mirror.d.ts.map +1 -0
  7. package/dist/channel/mirror.js +23 -0
  8. package/dist/channel/mirror.js.map +1 -0
  9. package/dist/channel/model-picker.d.ts +17 -0
  10. package/dist/channel/model-picker.d.ts.map +1 -0
  11. package/dist/channel/model-picker.js +58 -0
  12. package/dist/channel/model-picker.js.map +1 -0
  13. package/dist/channel/model.d.ts +22 -0
  14. package/dist/channel/model.d.ts.map +1 -0
  15. package/dist/channel/model.js +11 -0
  16. package/dist/channel/model.js.map +1 -0
  17. package/dist/channel/pairing-handler.d.ts +2 -0
  18. package/dist/channel/pairing-handler.d.ts.map +1 -1
  19. package/dist/channel/pairing-handler.js +4 -0
  20. package/dist/channel/pairing-handler.js.map +1 -1
  21. package/dist/channel/send-rich.d.ts +16 -0
  22. package/dist/channel/send-rich.d.ts.map +1 -0
  23. package/dist/channel/send-rich.js +25 -0
  24. package/dist/channel/send-rich.js.map +1 -0
  25. package/dist/channel/slash-handler.d.ts +8 -6
  26. package/dist/channel/slash-handler.d.ts.map +1 -1
  27. package/dist/channel/slash-handler.js +29 -51
  28. package/dist/channel/slash-handler.js.map +1 -1
  29. package/dist/channel/text-handler.d.ts +6 -4
  30. package/dist/channel/text-handler.d.ts.map +1 -1
  31. package/dist/channel/text-handler.js +23 -52
  32. package/dist/channel/text-handler.js.map +1 -1
  33. package/dist/channel/turn-runner.d.ts +10 -4
  34. package/dist/channel/turn-runner.d.ts.map +1 -1
  35. package/dist/channel/turn-runner.js +22 -5
  36. package/dist/channel/turn-runner.js.map +1 -1
  37. package/dist/channel/voice-handler.d.ts.map +1 -1
  38. package/dist/channel/voice-handler.js +2 -0
  39. package/dist/channel/voice-handler.js.map +1 -1
  40. package/dist/channel.d.ts +8 -10
  41. package/dist/channel.d.ts.map +1 -1
  42. package/dist/channel.js +55 -55
  43. package/dist/channel.js.map +1 -1
  44. package/dist/format.d.ts +1 -0
  45. package/dist/format.d.ts.map +1 -1
  46. package/dist/format.js +1 -1
  47. package/dist/format.js.map +1 -1
  48. package/dist/index.d.ts +1 -1
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +3 -72
  51. package/dist/index.js.map +1 -1
  52. package/dist/keys.d.ts +3 -0
  53. package/dist/keys.d.ts.map +1 -1
  54. package/dist/keys.js +3 -0
  55. package/dist/keys.js.map +1 -1
  56. package/dist/pair-flow.d.ts +2 -1
  57. package/dist/pair-flow.d.ts.map +1 -1
  58. package/dist/pair-flow.js +9 -23
  59. package/dist/pair-flow.js.map +1 -1
  60. package/dist/tools/send-message.d.ts +21 -0
  61. package/dist/tools/send-message.d.ts.map +1 -0
  62. package/dist/tools/send-message.js +84 -0
  63. package/dist/tools/send-message.js.map +1 -0
  64. package/package.json +11 -10
  65. package/src/channel/callback-handler.test.ts +4 -33
  66. package/src/channel/callback-handler.ts +34 -65
  67. package/src/channel/mirror.test.ts +59 -0
  68. package/src/channel/mirror.ts +36 -0
  69. package/src/channel/model-picker.ts +75 -0
  70. package/src/channel/model.test.ts +203 -0
  71. package/src/channel/model.ts +33 -0
  72. package/src/channel/pairing-handler.test.ts +38 -0
  73. package/src/channel/pairing-handler.ts +5 -0
  74. package/src/channel/send-rich.ts +36 -0
  75. package/src/channel/slash-handler.test.ts +68 -0
  76. package/src/channel/slash-handler.ts +35 -66
  77. package/src/channel/text-handler.test.ts +6 -5
  78. package/src/channel/text-handler.ts +28 -52
  79. package/src/channel/turn-runner.test.ts +84 -0
  80. package/src/channel/turn-runner.ts +31 -9
  81. package/src/channel/voice-handler.ts +2 -0
  82. package/src/channel/voice-reply.test.ts +16 -14
  83. package/src/channel.ts +68 -57
  84. package/src/format.ts +1 -1
  85. package/src/index.ts +8 -75
  86. package/src/keys.ts +4 -0
  87. package/src/pair-flow.ts +9 -23
  88. package/src/subcommands.test.ts +2 -1
  89. package/src/tools/send-message.test.ts +118 -0
  90. package/src/tools/send-message.ts +97 -0
package/dist/channel.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Bot, GrammyError, HttpError, InputFile } from 'grammy';
2
2
  import { newTurnId } from '@moxxy/core';
3
- import { TurnCoordinator, deliverVoiceReply, resolveSecret } from '@moxxy/channel-kit';
3
+ import { AutoApproveSwitch, TurnCoordinator, deliverVoiceReply, resolveSecret, } from '@moxxy/channel-kit';
4
4
  import { TelegramPermissionResolver } from './permission.js';
5
5
  import { TelegramApprovalResolver } from './approval.js';
6
6
  import { FramePump } from './channel/frame-pump.js';
@@ -14,6 +14,8 @@ import { runUserTurn } from './channel/turn-runner.js';
14
14
  import { handleTextMessage } from './channel/text-handler.js';
15
15
  import { handleVoiceMessage } from './channel/voice-handler.js';
16
16
  import { loadVoiceReplies, saveVoiceReplies } from './keys.js';
17
+ import { createTelegramMirror } from './channel/mirror.js';
18
+ import { telegramModel } from './channel/model.js';
17
19
  const TOKEN_KEY = 'telegram_bot_token';
18
20
  /** Cap on the up-front `getMe` (bot identity → `t.me` connect link). It must
19
21
  * never gate channel startup: if Telegram is slow/unreachable, we proceed
@@ -40,14 +42,15 @@ export class TelegramChannel {
40
42
  // re-publish the channel's status file. See `onConnectChange` on the handle.
41
43
  connectListeners = new Set();
42
44
  currentChatId = null;
43
- // Last chat we ran a turn for — the target for mirroring turns this channel
44
- // did NOT initiate (e.g. a web-surface action on a shared session).
45
- lastChatId = null;
45
+ // Turns another surface ran on this bot's session (the desktop's chat with
46
+ // the bot) shown here: into the chat we last served, else the paired chat.
47
+ mirror;
48
+ mirrorTarget;
46
49
  logUnsub = null;
47
50
  session = null;
48
51
  model;
49
- activeModelOverride = null;
50
- yolo = false;
52
+ /** `/auto-approve` — the conversation's shared switch (see AutoApproveSwitch). */
53
+ autoApprove = new AutoApproveSwitch(() => this.session);
51
54
  // When true, the final assistant reply of each turn is also synthesized (via
52
55
  // the session's active Synthesizer) and sent as a voice note. Persisted per
53
56
  // paired chat in the vault (`telegram_voice_replies`), toggled with `/voice`.
@@ -85,6 +88,14 @@ export class TelegramChannel {
85
88
  // A completed pairing flips this channel's connect-state to "connected";
86
89
  // notify the host so it can swap the QR for a "✓ Connected" affordance.
87
90
  this.pairing.onPaired(() => this.notifyConnectChange());
91
+ const { mirror, target } = createTelegramMirror({
92
+ turns: this.turns,
93
+ api: () => this.bot?.api ?? null,
94
+ pairedChat: () => this.pairing.authorizedChatId(),
95
+ ...(opts.logger ? { logger: opts.logger } : {}),
96
+ });
97
+ this.mirror = mirror;
98
+ this.mirrorTarget = target;
88
99
  }
89
100
  /** This channel's connect value (see {@link Channel.requestUrl}): the resolved
90
101
  * bot's `t.me` link, surfaced by control surfaces as a QR / open-bot step.
@@ -157,11 +168,10 @@ export class TelegramChannel {
157
168
  // this channel. setApprovalResolver(null) on stop tears it down so
158
169
  // headless code paths after channel close don't see a stale handler.
159
170
  this.session.setApprovalResolver(this.approvalResolver);
160
- // Mirror-to-both: when the session runs a turn this channel did NOT
161
- // initiate (e.g. a user submitted a form on the co-attached web surface),
162
- // post the assistant's prose into the last chat we served. Our OWN turns
163
- // are rendered by the FramePump (gated by `busy`), so skip those.
164
- this.logUnsub = this.session.log.subscribe((event) => this.mirrorForeignTurn(event));
171
+ // Mirror-to-both: a turn this channel did NOT initiate (a message written
172
+ // in the desktop's chat with this bot) shows here — its prompt, then its
173
+ // reply. Our OWN turns are rendered by the FramePump, so the mirror skips them.
174
+ this.logUnsub = this.session.log.subscribe((event) => this.mirror.accept(event));
165
175
  this.bot.command('start', (ctx) => this.pairing.handleStartCommand(ctx));
166
176
  this.bot.on('callback_query:data', (ctx) => this.dispatchCallback(ctx));
167
177
  // grammy's built-in long-poller (Bot.handleUpdates) awaits each update
@@ -290,9 +300,6 @@ export class TelegramChannel {
290
300
  handleText(ctx) {
291
301
  return handleTextMessage(ctx, {
292
302
  session: this.session,
293
- model: this.model,
294
- activeModelOverride: this.activeModelOverride,
295
- yolo: this.yolo,
296
303
  voiceReplies: this.voiceReplies,
297
304
  busy: this.turns.busy,
298
305
  turnController: this.turns.controller,
@@ -307,14 +314,10 @@ export class TelegramChannel {
307
314
  setAwaitingApprovalText: (state) => {
308
315
  this.awaitingApprovalText = state;
309
316
  },
310
- toggleYolo: () => {
311
- this.yolo = !this.yolo;
312
- return this.yolo;
313
- },
314
- setYolo: (value) => {
315
- this.yolo = value;
316
- },
317
+ toggleYolo: () => this.autoApprove.toggle(),
318
+ setYolo: () => this.autoApprove.forgetLocal(),
317
319
  setVoiceReplies: (on) => this.setVoiceReplies(on),
320
+ model: this.pickerModel(),
318
321
  runUserTurn: (c, chatId, text) => this.runUserTurn(c, chatId, text),
319
322
  tryHostPair: (chatId, text) => this.tryHostPair(ctx, chatId, text),
320
323
  });
@@ -336,7 +339,7 @@ export class TelegramChannel {
336
339
  * unavailable), and deliver via grammy. The text reply already went out.
337
340
  */
338
341
  async sendVoiceReply(chatId, text) {
339
- if (!this.voiceReplies || !this.bot || !this.session)
342
+ if (!this.bot || !this.session)
340
343
  return;
341
344
  const bot = this.bot;
342
345
  const outcome = await deliverVoiceReply(this.session, text, {
@@ -386,66 +389,65 @@ export class TelegramChannel {
386
389
  this.opts.logger?.warn('telegram handler failed', { kind, err: String(err) });
387
390
  });
388
391
  }
392
+ /** `/model` and its picker, answering "not ready" before start(). */
393
+ pickerModel() {
394
+ return {
395
+ run: (arg) => this.botModel()?.run(arg) ?? Promise.resolve('Session is not ready yet.'),
396
+ choices: () => this.botModel()?.choices() ?? Promise.resolve({ current: null, options: [] }),
397
+ };
398
+ }
399
+ /** This bot's own model (see TelegramModel); null before start(). */
400
+ botModel() {
401
+ return this.session ? telegramModel({ session: this.session, vault: this.opts.vault }) : null;
402
+ }
389
403
  async runUserTurn(ctx, chatId, text) {
390
- if (!this.session)
404
+ const model = this.botModel();
405
+ if (!this.session || !model)
391
406
  throw new Error('TelegramChannel.start() must be called first');
392
407
  // Atomic single-flight guard: `begin` claims the slot synchronously BEFORE
393
408
  // any await so a second turn dispatched concurrently (the poll loop is no
394
409
  // longer parked on us) can't slip past the busy check in the text/voice
395
- // handlers. If we are already busy, refuse rather than corrupt the
396
- // single-instance per-turn state (framePump / currentChatId / controller).
397
- // The turnId is minted here so the coordinator records it as an own-turn
398
- // id — that's what mirrorForeignTurn filters on.
410
+ // handlers. The turnId is minted here so the coordinator records it as an
411
+ // own-turn id — that's what the mirror filters on.
399
412
  const lease = this.turns.begin(newTurnId());
400
413
  if (!lease) {
401
414
  await ctx.reply('I am still working on the previous prompt. Send /cancel to abort it.');
402
415
  return;
403
416
  }
404
417
  this.currentChatId = chatId;
405
- this.lastChatId = chatId;
406
- const effectiveModel = this.activeModelOverride ?? this.model;
418
+ this.mirrorTarget.remember(chatId);
407
419
  try {
420
+ const channelModel = await model.resolve();
421
+ if (channelModel.warning)
422
+ await ctx.reply(channelModel.warning);
408
423
  await runUserTurn(ctx, {
409
424
  session: this.session,
410
425
  bot: this.bot,
411
426
  framePump: this.framePump,
412
427
  typing: this.typing,
413
428
  ...(this.opts.logger ? { logger: this.opts.logger } : {}),
414
- onFinalReply: (finalText) => this.sendVoiceReply(chatId, finalText),
415
- }, { chatId, text, model: effectiveModel, controller: lease.controller, turnId: lease.turnId });
429
+ speakReply: (finalText) => this.sendVoiceReply(chatId, finalText),
430
+ }, {
431
+ chatId,
432
+ text,
433
+ ...(this.voiceReplies ? { spoken: true } : {}),
434
+ model: channelModel.model ?? this.model,
435
+ controller: lease.controller,
436
+ turnId: lease.turnId,
437
+ });
416
438
  }
417
439
  finally {
418
440
  lease.end();
419
441
  this.currentChatId = null;
420
442
  }
421
443
  }
422
- /**
423
- * Post the assistant's prose for a turn this channel did not initiate. Gated
424
- * by `!busy` (our own turns are rendered by the FramePump from the runUserTurn
425
- * iterator) and by having served a chat at least once. Sent as plain text to
426
- * avoid parse-mode pitfalls; the view itself lives on the web surface.
427
- */
428
- mirrorForeignTurn(event) {
429
- // The coordinator skips turns THIS channel initiated, by turnId — robust to
430
- // events that arrive after `busy` flips false (async ordering /
431
- // RemoteSession replay), which the `busy` flag alone could mis-mirror as
432
- // foreign (invariant #8) — and yields the trimmed assistant prose.
433
- const text = this.turns.mirrorText(event);
434
- if (text == null)
435
- return;
436
- if (!this.bot || this.lastChatId == null)
437
- return;
438
- void this.bot.api.sendMessage(this.lastChatId, text).catch((err) => {
439
- this.opts.logger?.warn('telegram mirror failed', { err: String(err) });
440
- });
441
- }
442
444
  askForPermission(call, ctx) {
443
445
  return askForPermission(call, ctx, {
444
446
  bot: this.bot,
445
447
  chatId: this.currentChatId,
446
448
  session: this.session,
447
449
  resolver: this.permissionResolver,
448
- yolo: this.yolo,
450
+ yolo: this.autoApprove.enabled,
449
451
  ...(this.opts.logger ? { logger: this.opts.logger } : {}),
450
452
  });
451
453
  }
@@ -469,9 +471,7 @@ export class TelegramChannel {
469
471
  setAwaitingApprovalText: (state) => {
470
472
  this.awaitingApprovalText = state;
471
473
  },
472
- setActiveModelOverride: (modelId) => {
473
- this.activeModelOverride = modelId;
474
- },
474
+ model: this.pickerModel(),
475
475
  });
476
476
  }
477
477
  }
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
package/dist/format.d.ts CHANGED
@@ -35,4 +35,5 @@
35
35
  * but no formatting markers run.
36
36
  */
37
37
  export declare function markdownToTelegramHtml(md: string): string;
38
+ export declare function escapeHtml(s: string): string;
38
39
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CA6FzD"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CA6FzD;AAmKD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C"}
package/dist/format.js CHANGED
@@ -269,7 +269,7 @@ function isAllowedUrl(url) {
269
269
  return true; // no explicit scheme — relative/anchor/host-only link
270
270
  return ALLOWED_URL_SCHEMES.has((m[1] ?? '').toLowerCase());
271
271
  }
272
- function escapeHtml(s) {
272
+ export function escapeHtml(s) {
273
273
  return s.replace(/[&<>]/g, (c) => (c === '&' ? '&amp;' : c === '<' ? '&lt;' : '&gt;'));
274
274
  }
275
275
  function escapeAttr(s) {
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,7 +10,7 @@ export { markdownToTelegramHtml } from './format.js';
10
10
  export interface BuildTelegramPluginOptions {
11
11
  readonly vault: VaultStore;
12
12
  }
13
- export { TELEGRAM_TOKEN_KEY, TELEGRAM_AUTHORIZED_CHAT_KEY, TELEGRAM_TOKEN_RE } from './keys.js';
13
+ export { TELEGRAM_TOKEN_KEY, TELEGRAM_AUTHORIZED_CHAT_KEY, TELEGRAM_MODEL_KEY, TELEGRAM_TOKEN_RE, } from './keys.js';
14
14
  export declare function buildTelegramPlugin(opts: BuildTelegramPluginOptions): Plugin;
15
15
  /**
16
16
  * Discovery-loadable default export: resolves the vault from the inter-plugin
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAC1G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAStD,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAMhG,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAG5E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,MAgBzB,CAAC;AAoRL,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAC1G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOtD,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAMnB,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAG5E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,MAgBzB,CAAC;AA8ML,eAAe,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,6 @@
1
1
  import { defineChannel, defineTool, definePlugin, z } from '@moxxy/sdk';
2
- import { Api, GrammyError } from 'grammy';
3
- import { markdownToTelegramHtml } from './format.js';
4
- import { stripHtml } from './channel/html.js';
5
2
  import { TelegramChannel } from './channel.js';
3
+ import { buildTelegramSendMessageTool } from './tools/send-message.js';
6
4
  import { TELEGRAM_AUTHORIZED_CHAT_KEY, TELEGRAM_TOKEN_KEY, parseChatId } from './keys.js';
7
5
  import { runTelegramWizard } from './setup-wizard.js';
8
6
  import { runPairFlow } from './pair-flow.js';
@@ -12,7 +10,7 @@ export { TelegramApprovalResolver } from './approval.js';
12
10
  export { createPairingState, beginHostIssuedPairing, handleStart, submitChatCode, isAuthorized, clearPairing, } from './pairing.js';
13
11
  export { TurnRenderer, splitForTelegram } from './render.js';
14
12
  export { markdownToTelegramHtml } from './format.js';
15
- export { TELEGRAM_TOKEN_KEY, TELEGRAM_AUTHORIZED_CHAT_KEY, TELEGRAM_TOKEN_RE } from './keys.js';
13
+ export { TELEGRAM_TOKEN_KEY, TELEGRAM_AUTHORIZED_CHAT_KEY, TELEGRAM_MODEL_KEY, TELEGRAM_TOKEN_RE, } from './keys.js';
16
14
  // Backwards-compat aliases for the existing call sites in this file.
17
15
  const TOKEN_KEY = TELEGRAM_TOKEN_KEY;
18
16
  const AUTHORIZED_CHAT_KEY = TELEGRAM_AUTHORIZED_CHAT_KEY;
@@ -211,74 +209,7 @@ function makeTelegramPlugin(getVault, hooks) {
211
209
  };
212
210
  },
213
211
  }),
214
- defineTool({
215
- name: 'telegram_send_message',
216
- description: 'Push a one-off message to the currently authorized Telegram chat. Use this from a ' +
217
- 'scheduled prompt to deliver results without an interactive channel running. By ' +
218
- 'default the text is rendered with the same rich Markdown→Telegram formatting as ' +
219
- 'interactive replies (bold, code, `> [!type]` callouts, `||spoilers||`, etc.); pass ' +
220
- 'an explicit `parseMode` to send the raw text under that parse mode instead. Requires ' +
221
- 'a stored bot token + a paired chat (run `moxxy channels telegram pair` once).',
222
- inputSchema: z.object({
223
- text: z.string().min(1).max(4096),
224
- /** Optional override; defaults to the vault-paired chat id. */
225
- chatId: z.number().int().optional(),
226
- /**
227
- * Force a specific Telegram parse mode and send `text` verbatim under
228
- * it. Omit to get the default Markdown→HTML rendering (recommended).
229
- */
230
- parseMode: z.enum(['MarkdownV2', 'Markdown', 'HTML']).optional(),
231
- }),
232
- permission: { action: 'prompt' },
233
- isolation: {
234
- capabilities: {
235
- fs: { read: ['~/.moxxy/vault.*'] },
236
- net: { mode: 'allowlist', hosts: ['api.telegram.org'] },
237
- env: ['MOXXY_TELEGRAM_TOKEN'],
238
- timeMs: 60_000,
239
- },
240
- },
241
- handler: async ({ text, chatId, parseMode }) => {
242
- const token = process.env.MOXXY_TELEGRAM_TOKEN ?? (await getVault().get(TOKEN_KEY));
243
- if (!token) {
244
- throw new Error('no Telegram bot token configured (set MOXXY_TELEGRAM_TOKEN or run `moxxy init` to store one)');
245
- }
246
- const targetChat = chatId ?? parseChatId(await getVault().get(AUTHORIZED_CHAT_KEY));
247
- if (!targetChat) {
248
- throw new Error('no authorized chat — run `moxxy channels telegram pair` first or pass `chatId` explicitly');
249
- }
250
- // Use grammy's lightweight `Api` client directly rather than a full
251
- // `Bot` (which builds a polling-capable instance + lazily resolves
252
- // bot info). This is a one-off send — no long-polling — so the Bot
253
- // wrapper was pure overhead per invocation.
254
- const api = new Api(token);
255
- if (parseMode) {
256
- // Explicit mode → caller owns the markup; send text verbatim.
257
- await api.sendMessage(targetChat, text, { parse_mode: parseMode });
258
- }
259
- else {
260
- // Default → render Markdown to Telegram HTML for the same rich look
261
- // as interactive replies, falling back to plain text if the model's
262
- // text produced an entity Telegram can't parse (rare).
263
- const html = markdownToTelegramHtml(text);
264
- try {
265
- await api.sendMessage(targetChat, html, {
266
- parse_mode: 'HTML',
267
- link_preview_options: { is_disabled: true },
268
- });
269
- }
270
- catch (err) {
271
- if (err instanceof GrammyError && /can't parse entities|Bad Request: can't parse/i.test(err.description ?? '')) {
272
- await api.sendMessage(targetChat, stripHtml(html));
273
- }
274
- else {
275
- throw err;
276
- }
277
- }
278
- }
279
- return { delivered: true, chatId: targetChat, length: text.length };
280
- },
281
- }),
212
+ buildTelegramSendMessageTool({ getVault }),
282
213
  defineTool({
283
214
  name: 'telegram_unpair',
284
215
  description: 'Forget the currently authorized Telegram chat. The next /start will start a fresh pairing.',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/keys.d.ts CHANGED
@@ -33,5 +33,8 @@ export declare function saveVoiceReplies(vault: Pick<VoiceFlagVault, 'set' | 'de
33
33
  * producing an opaque Telegram 400 instead of a clear "not paired" signal.
34
34
  */
35
35
  export declare function parseChatId(raw: string | null | undefined): number | null;
36
+ /** Vault key for this bot's model (`provider::model`); absent = the default model.
37
+ * The desktop's Channels panel writes the same key. */
38
+ export declare const TELEGRAM_MODEL_KEY = "telegram_model";
36
39
  export {};
37
40
  //# sourceMappingURL=keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AACvD,wDAAwD;AACxD,eAAO,MAAM,4BAA4B,gCAAgC,CAAC;AAC1E;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AACnE,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,QAA6B,CAAC;AAE5D,iEAAiE;AACjE,UAAU,cAAc;IACtB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED,gEAAgE;AAChE,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3F;AAED,qFAAqF;AACrF,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,QAAQ,CAAC,EAC7C,EAAE,EAAE,OAAO,GACV,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIzE"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AACvD,wDAAwD;AACxD,eAAO,MAAM,4BAA4B,gCAAgC,CAAC;AAC1E;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AACnE,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,QAA6B,CAAC;AAE5D,iEAAiE;AACjE,UAAU,cAAc;IACtB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxC;AAED,gEAAgE;AAChE,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3F;AAED,qFAAqF;AACrF,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,QAAQ,CAAC,EAC7C,EAAE,EAAE,OAAO,GACV,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIzE;AAED;wDACwD;AACxD,eAAO,MAAM,kBAAkB,mBAAmB,CAAC"}
package/dist/keys.js CHANGED
@@ -39,4 +39,7 @@ export function parseChatId(raw) {
39
39
  const n = Number(raw);
40
40
  return Number.isFinite(n) ? n : null;
41
41
  }
42
+ /** Vault key for this bot's model (`provider::model`); absent = the default model.
43
+ * The desktop's Channels panel writes the same key. */
44
+ export const TELEGRAM_MODEL_KEY = 'telegram_model';
42
45
  //# sourceMappingURL=keys.js.map
package/dist/keys.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AACvD,wDAAwD;AACxD,MAAM,CAAC,MAAM,4BAA4B,GAAG,6BAA6B,CAAC;AAC1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AACnE,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAS5D,gEAAgE;AAChE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAkC;IACvE,OAAO,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,KAAK,GAAG,CAAC;AAC/D,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA6C,EAC7C,EAAW;IAEX,IAAI,EAAE;QAAE,MAAM,KAAK,CAAC,GAAG,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;;QACpD,MAAM,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,GAA8B;IACxD,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AACvD,wDAAwD;AACxD,MAAM,CAAC,MAAM,4BAA4B,GAAG,6BAA6B,CAAC;AAC1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AACnE,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAS5D,gEAAgE;AAChE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAkC;IACvE,OAAO,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,KAAK,GAAG,CAAC;AAC/D,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA6C,EAC7C,EAAW;IAEX,IAAI,EAAE;QAAE,MAAM,KAAK,CAAC,GAAG,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;;QACpD,MAAM,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,GAA8B;IACxD,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED;wDACwD;AACxD,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC"}
@@ -12,7 +12,8 @@ import { type ChannelSubcommandContext } from '@moxxy/sdk';
12
12
  * 4. Render that deep link as a scannable QR (+ the plain link).
13
13
  * 5. The user scans / opens the link and taps START (or sends the 6 digits);
14
14
  * the bot authorizes that chat and `onPaired` fires.
15
- * 6. Hand off SIGINT to keep the bot running until the user Ctrl-Cs.
15
+ * 6. Stop the pairing bot (it ran on the provider-less probe session) and
16
+ * start the channel for real with the configured model (`finishPairing`).
16
17
  */
17
18
  export declare function runPairFlow(ctx: ChannelSubcommandContext): Promise<number>;
18
19
  //# sourceMappingURL=pair-flow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pair-flow.d.ts","sourceRoot":"","sources":["../src/pair-flow.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAQnF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6FhF"}
1
+ {"version":3,"file":"pair-flow.d.ts","sourceRoot":"","sources":["../src/pair-flow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAQ1E;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CA8EhF"}
package/dist/pair-flow.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { log, outro, spinner } from '@clack/prompts';
2
2
  import QRCode from 'qrcode';
3
- import { exitAfterPairRequested } from '@moxxy/sdk';
3
+ import { finishPairing } from '@moxxy/sdk';
4
4
  import { TelegramChannel } from './channel.js';
5
5
  // Tiny zero-dep ANSI dim helper, so this flow stays inside the plugin.
6
6
  const ANSI = process.stdout.isTTY && !process.env.NO_COLOR;
@@ -18,7 +18,8 @@ const dim = (s) => (ANSI ? `\x1b[2m${s}\x1b[22m` : s);
18
18
  * 4. Render that deep link as a scannable QR (+ the plain link).
19
19
  * 5. The user scans / opens the link and taps START (or sends the 6 digits);
20
20
  * the bot authorizes that chat and `onPaired` fires.
21
- * 6. Hand off SIGINT to keep the bot running until the user Ctrl-Cs.
21
+ * 6. Stop the pairing bot (it ran on the provider-less probe session) and
22
+ * start the channel for real with the configured model (`finishPairing`).
22
23
  */
23
24
  export async function runPairFlow(ctx) {
24
25
  const session = ctx.session;
@@ -66,7 +67,7 @@ export async function runPairFlow(ctx) {
66
67
  }
67
68
  await printPairQr(url);
68
69
  log.info('Scan the QR with your phone (or open the link and tap START) — your chat pairs automatically.');
69
- // Graceful Ctrl-C while waiting (or once running): stop the bot and exit.
70
+ // Graceful Ctrl-C while waiting for the pairing: stop the bot and exit.
70
71
  let stopping = false;
71
72
  const shutdown = async () => {
72
73
  if (stopping)
@@ -83,26 +84,11 @@ export async function runPairFlow(ctx) {
83
84
  spin.start('Waiting for you to pair in Telegram...');
84
85
  const chatId = await paired;
85
86
  spin.stop(`Paired ✓ — chat ${chatId} is authorized.`);
86
- if (exitAfterPairRequested(ctx)) {
87
- // Orchestrated pairing (`moxxy onboard`): hand control back — the caller
88
- // starts the bot under its own service afterwards. Our SIGINT handlers
89
- // would `process.exit` the orchestrator, so drop them first.
90
- process.removeListener('SIGINT', onSignal);
91
- process.removeListener('SIGTERM', onSignal);
92
- await stopBot();
93
- return 0;
94
- }
95
- log.info('Bot is running. Press Ctrl+C to stop.');
96
- try {
97
- // Only reached if the bot stops on its own (a signal path exits via
98
- // shutdown()); remove our handlers so they don't outlive this flow.
99
- await handle.running;
100
- return 0;
101
- }
102
- finally {
103
- process.removeListener('SIGINT', onSignal);
104
- process.removeListener('SIGTERM', onSignal);
105
- }
87
+ // Drop the pairing-only Ctrl+C handlers first: their `process.exit` would
88
+ // otherwise cut the real channel (or an orchestrator) short.
89
+ process.removeListener('SIGINT', onSignal);
90
+ process.removeListener('SIGTERM', onSignal);
91
+ return finishPairing(ctx, stopBot);
106
92
  }
107
93
  /** Render the pairing deep link as a scannable terminal QR + the plain link. */
108
94
  async function printPairQr(url) {