camelagi 0.5.0 → 0.5.16

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 (113) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +241 -104
  3. package/dist/agent/agent-sdk.js +136 -65
  4. package/dist/agent/agent-sdk.js.map +1 -1
  5. package/dist/agent.js +4 -1
  6. package/dist/agent.js.map +1 -1
  7. package/dist/bootstrap.js +148 -331
  8. package/dist/bootstrap.js.map +1 -1
  9. package/dist/channels/handler.js +109 -1
  10. package/dist/channels/handler.js.map +1 -1
  11. package/dist/cli/cmd-agents.js +11 -14
  12. package/dist/cli/cmd-agents.js.map +1 -1
  13. package/dist/cli/cmd-bootstrap.js +4 -4
  14. package/dist/cli/cmd-bootstrap.js.map +1 -1
  15. package/dist/cli/cmd-install.js +80 -0
  16. package/dist/cli/cmd-install.js.map +1 -0
  17. package/dist/cli/cmd-pairing.js +14 -15
  18. package/dist/cli/cmd-pairing.js.map +1 -1
  19. package/dist/cli/cmd-reset.js +10 -12
  20. package/dist/cli/cmd-reset.js.map +1 -1
  21. package/dist/cli/cmd-sessions.js +10 -13
  22. package/dist/cli/cmd-sessions.js.map +1 -1
  23. package/dist/cli/cmd-status.js +67 -0
  24. package/dist/cli/cmd-status.js.map +1 -0
  25. package/dist/cli/cmd-uninstall.js +79 -0
  26. package/dist/cli/cmd-uninstall.js.map +1 -0
  27. package/dist/cli/cmd-update.js +47 -0
  28. package/dist/cli/cmd-update.js.map +1 -0
  29. package/dist/cli.js +44 -26
  30. package/dist/cli.js.map +1 -1
  31. package/dist/core/config.js +53 -8
  32. package/dist/core/config.js.map +1 -1
  33. package/dist/core/log.js +33 -13
  34. package/dist/core/log.js.map +1 -1
  35. package/dist/core/update-check.js +11 -13
  36. package/dist/core/update-check.js.map +1 -1
  37. package/dist/core/version.js +4 -0
  38. package/dist/core/version.js.map +1 -0
  39. package/dist/runtime/orchestrate.js +25 -15
  40. package/dist/runtime/orchestrate.js.map +1 -1
  41. package/dist/serve.js +22 -7
  42. package/dist/serve.js.map +1 -1
  43. package/dist/setup.js +259 -231
  44. package/dist/setup.js.map +1 -1
  45. package/dist/telegram/admin-bot.js +325 -1
  46. package/dist/telegram/admin-bot.js.map +1 -1
  47. package/dist/telegram/agent-bot.js +143 -2
  48. package/dist/telegram/agent-bot.js.map +1 -1
  49. package/dist/telegram/resolve.js +11 -2
  50. package/dist/telegram/resolve.js.map +1 -1
  51. package/dist/telegram/wizards.js +361 -12
  52. package/dist/telegram/wizards.js.map +1 -1
  53. package/dist/telegram.js +2 -0
  54. package/dist/telegram.js.map +1 -1
  55. package/dist/usage.js +106 -0
  56. package/dist/usage.js.map +1 -1
  57. package/dist/workspace.js +20 -0
  58. package/dist/workspace.js.map +1 -1
  59. package/package.json +7 -4
  60. package/dist/agent/agent-openai.js +0 -206
  61. package/dist/agent/agent-openai.js.map +0 -1
  62. package/dist/approval-forward.js +0 -42
  63. package/dist/approval-forward.js.map +0 -1
  64. package/dist/approvals.js +0 -151
  65. package/dist/approvals.js.map +0 -1
  66. package/dist/camelagi-gateway.mjs +0 -93611
  67. package/dist/camelagi-gateway.mjs.map +0 -7
  68. package/dist/compact.js +0 -92
  69. package/dist/compact.js.map +0 -1
  70. package/dist/config.js +0 -153
  71. package/dist/config.js.map +0 -1
  72. package/dist/constants.js +0 -21
  73. package/dist/constants.js.map +0 -1
  74. package/dist/cron.js +0 -81
  75. package/dist/cron.js.map +0 -1
  76. package/dist/errors.js +0 -5
  77. package/dist/errors.js.map +0 -1
  78. package/dist/hooks.js +0 -72
  79. package/dist/hooks.js.map +0 -1
  80. package/dist/lanes.js +0 -62
  81. package/dist/lanes.js.map +0 -1
  82. package/dist/policy.js +0 -22
  83. package/dist/policy.js.map +0 -1
  84. package/dist/queue.js +0 -45
  85. package/dist/queue.js.map +0 -1
  86. package/dist/retry.js +0 -96
  87. package/dist/retry.js.map +0 -1
  88. package/dist/runs.js +0 -83
  89. package/dist/runs.js.map +0 -1
  90. package/dist/skills.js +0 -89
  91. package/dist/skills.js.map +0 -1
  92. package/dist/subagent.js +0 -71
  93. package/dist/subagent.js.map +0 -1
  94. package/dist/telegram-admin.js +0 -800
  95. package/dist/telegram-admin.js.map +0 -1
  96. package/dist/tools/edit.js +0 -29
  97. package/dist/tools/edit.js.map +0 -1
  98. package/dist/tools/exec.js +0 -38
  99. package/dist/tools/exec.js.map +0 -1
  100. package/dist/tools/fetch.js +0 -28
  101. package/dist/tools/fetch.js.map +0 -1
  102. package/dist/tools/index.js +0 -16
  103. package/dist/tools/index.js.map +0 -1
  104. package/dist/tools/read.js +0 -26
  105. package/dist/tools/read.js.map +0 -1
  106. package/dist/tools/search.js +0 -62
  107. package/dist/tools/search.js.map +0 -1
  108. package/dist/tools/subagent.js +0 -48
  109. package/dist/tools/subagent.js.map +0 -1
  110. package/dist/tools/write.js +0 -22
  111. package/dist/tools/write.js.map +0 -1
  112. package/dist/types.js +0 -3
  113. package/dist/types.js.map +0 -1
@@ -1,6 +1,8 @@
1
1
  // Agent bot: per-agent Telegram bot with commands and message handling
2
2
  import { Bot, InlineKeyboard, InputFile } from "grammy";
3
- import { loadConfig } from "../core/config.js";
3
+ import { loadConfig, saveConfig } from "../core/config.js";
4
+ import { startWizard, advanceWizard, hasActiveWizard } from "./wizard.js";
5
+ import { createMcpAddWizard } from "./wizards.js";
4
6
  import { createClient } from "../model.js";
5
7
  import { loadMessages, deleteSession, listSessions } from "../session.js";
6
8
  import { isRunActive } from "../runtime/runs.js";
@@ -28,18 +30,44 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
28
30
  runtimeModels: new Map(),
29
31
  runtimeThinking: new Map(),
30
32
  runtimeEffort: new Map(),
33
+ runtimeBriefMode: new Map(),
31
34
  };
32
35
  activeBots.set(agentId, state);
33
36
  // Register first bot for approval forwarding (headless -> Telegram)
34
37
  if (activeBots.size === 1) {
35
38
  registerForwardBot(b);
36
39
  }
37
- const { botInfo, runtimeModels, runtimeThinking, runtimeEffort } = state;
40
+ const { botInfo, runtimeModels, runtimeThinking, runtimeEffort, runtimeBriefMode } = state;
41
+ // Error alert throttling — max 1 per agent per 5 minutes
42
+ const errorAlertTimes = new Map();
43
+ const ALERT_COOLDOWN_MS = 5 * 60 * 1000;
44
+ async function alertAdmin(message) {
45
+ const lastAlert = errorAlertTimes.get(agentId) ?? 0;
46
+ if (Date.now() - lastAlert < ALERT_COOLDOWN_MS)
47
+ return;
48
+ errorAlertTimes.set(agentId, Date.now());
49
+ const config = getConfig();
50
+ const adminEntry = Object.entries(config.agents).find(([, a]) => a.admin);
51
+ if (!adminEntry)
52
+ return;
53
+ const [adminId] = adminEntry;
54
+ const adminState = activeBots.get(adminId);
55
+ if (!adminState)
56
+ return;
57
+ const adminUsers = adminEntry[1].telegram?.allowedUsers ?? [];
58
+ for (const userId of adminUsers) {
59
+ try {
60
+ await adminState.bot.api.sendMessage(userId, message);
61
+ }
62
+ catch { /* best effort */ }
63
+ }
64
+ }
38
65
  const sid = (chatId) => agentId === "telegram" ? `telegram-${chatId}` : `${agentId}-${chatId}`;
39
66
  const getAgent = (chatId) => resolveAgent(agentId, getConfig(), getSystemPrompt(), {
40
67
  model: runtimeModels.get(chatId),
41
68
  thinking: runtimeThinking.get(chatId),
42
69
  effort: runtimeEffort.get(chatId),
70
+ briefMode: runtimeBriefMode.get(chatId),
43
71
  });
44
72
  // Register commands (only commands this bot actually handles)
45
73
  await b.api.setMyCommands([
@@ -53,6 +81,8 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
53
81
  { command: "skills", description: "List active skills" },
54
82
  { command: "export", description: "Export session as markdown file" },
55
83
  { command: "session", description: "Show or switch session" },
84
+ { command: "mcp", description: "Manage MCP tool servers" },
85
+ { command: "brief", description: "Toggle brief response mode" },
56
86
  { command: "compact", description: "Force compaction of chat history" },
57
87
  { command: "voice", description: "Voice transcription info" },
58
88
  ]).catch(() => { });
@@ -99,6 +129,8 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
99
129
  }
100
130
  // Create new pairing request
101
131
  const request = createPairingRequest(userId, agentId, ctx.chat.id, ctx.from?.username, ctx.from?.first_name);
132
+ const who = ctx.from?.username ? `@${ctx.from.username}` : ctx.from?.first_name ?? String(userId);
133
+ console.log(`\n \x1b[33mPairing request from ${who} for agent "${agentId}"\x1b[0m\n \x1b[90mRun: camel pairing\x1b[0m\n`);
102
134
  await ctx.reply(`Access requested. Waiting for admin approval.\nCode: ${request.code}`);
103
135
  notifyAdminOfPairing(request, getConfig(), activeBots);
104
136
  });
@@ -123,7 +155,9 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
123
155
  "/think <level> — Set thinking (off|low|medium|high)",
124
156
  "/effort <level> — Set effort (low|medium|high|max)",
125
157
  "/usage — Token usage for this session",
158
+ "/brief — Toggle brief response mode",
126
159
  "/skills — List active skills",
160
+ "/mcp — Manage MCP tool servers",
127
161
  "/export — Export session as markdown file",
128
162
  "/session — Show or switch session",
129
163
  "/compact — Force compaction of chat history",
@@ -132,6 +166,7 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
132
166
  `Thinking: ${agent.thinking}`,
133
167
  `Effort: ${agent.effort}`,
134
168
  `Max turns: ${agent.maxTurns}`,
169
+ `Brief mode: ${agent.briefMode ? "on" : "off"}`,
135
170
  ];
136
171
  await ctx.reply(lines.join("\n"));
137
172
  });
@@ -140,6 +175,7 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
140
175
  runtimeModels.delete(ctx.chat.id);
141
176
  runtimeThinking.delete(ctx.chat.id);
142
177
  runtimeEffort.delete(ctx.chat.id);
178
+ runtimeBriefMode.delete(ctx.chat.id);
143
179
  await ctx.reply("Session cleared.");
144
180
  });
145
181
  b.command("status", async (ctx) => {
@@ -229,6 +265,13 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
229
265
  catch { }
230
266
  await ctx.answerCallbackQuery();
231
267
  });
268
+ b.command("brief", async (ctx) => {
269
+ const agent = getAgent(ctx.chat.id);
270
+ const current = runtimeBriefMode.get(ctx.chat.id) ?? agent.briefMode;
271
+ const next = !current;
272
+ runtimeBriefMode.set(ctx.chat.id, next);
273
+ await ctx.reply(`Brief mode: ${next ? "on — short replies" : "off — detailed replies"}`);
274
+ });
232
275
  b.command("usage", async (ctx) => {
233
276
  const sessionId = sid(ctx.chat.id);
234
277
  const usage = getSessionUsage(sessionId);
@@ -312,6 +355,81 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
312
355
  await ctx.reply(`History is already compact (${history.length} messages).`);
313
356
  }
314
357
  });
358
+ b.command("mcp", async (ctx) => {
359
+ const kb = new InlineKeyboard()
360
+ .text("➕ Add Server", "mcp:add")
361
+ .text("📋 List", "mcp:list")
362
+ .text("🗑 Remove", "mcp:remove");
363
+ await ctx.reply("MCP Servers", { reply_markup: kb });
364
+ });
365
+ b.callbackQuery("mcp:add", async (ctx) => {
366
+ await ctx.answerCallbackQuery();
367
+ await startWizard(ctx.chat.id, createMcpAddWizard(getConfig, agentId), b);
368
+ });
369
+ b.callbackQuery("mcp:list", async (ctx) => {
370
+ await ctx.answerCallbackQuery();
371
+ const config = getConfig();
372
+ const isAgent = agentId && agentId !== "default" && config.agents[agentId];
373
+ const scope = isAgent ? `agent "${config.agents[agentId].name}"` : "global";
374
+ const servers = isAgent
375
+ ? config.agents[agentId]?.mcp?.servers ?? {}
376
+ : config.mcp.servers;
377
+ const entries = Object.entries(servers);
378
+ if (entries.length === 0) {
379
+ await ctx.reply(`No MCP servers (${scope}).`);
380
+ return;
381
+ }
382
+ const lines = entries.map(([name, s]) => {
383
+ const cfg = s;
384
+ if (cfg.type === "stdio") {
385
+ const args = Array.isArray(cfg.args) ? cfg.args.join(" ") : "";
386
+ return `⚙️ ${name} (stdio)\n ${cfg.command} ${args}`.trimEnd();
387
+ }
388
+ return `${cfg.type === "sse" ? "📡" : "🌐"} ${name} (${cfg.type})\n ${cfg.url}`;
389
+ });
390
+ await ctx.reply(`MCP Servers (${scope}):\n\n${lines.join("\n\n")}`);
391
+ });
392
+ b.callbackQuery("mcp:remove", async (ctx) => {
393
+ await ctx.answerCallbackQuery();
394
+ const config = getConfig();
395
+ const isAgent = agentId && agentId !== "default" && config.agents[agentId];
396
+ const servers = isAgent
397
+ ? config.agents[agentId]?.mcp?.servers ?? {}
398
+ : config.mcp.servers;
399
+ const names = Object.keys(servers);
400
+ if (names.length === 0) {
401
+ await ctx.reply("No MCP servers to remove.");
402
+ return;
403
+ }
404
+ const kb = new InlineKeyboard();
405
+ for (const name of names) {
406
+ kb.text(`✕ ${name}`, `mcp:rm:${name}`).row();
407
+ }
408
+ await ctx.reply("Remove which server?", { reply_markup: kb });
409
+ });
410
+ b.callbackQuery(/^mcp:rm:/, async (ctx) => {
411
+ await ctx.answerCallbackQuery();
412
+ const name = ctx.callbackQuery.data.replace("mcp:rm:", "");
413
+ const config = getConfig();
414
+ const isAgent = agentId && agentId !== "default" && config.agents[agentId];
415
+ const servers = isAgent
416
+ ? { ...(config.agents[agentId]?.mcp?.servers ?? {}) }
417
+ : { ...config.mcp.servers };
418
+ if (!(name in servers)) {
419
+ await ctx.reply(`Server "${name}" not found.`);
420
+ return;
421
+ }
422
+ delete servers[name];
423
+ if (isAgent) {
424
+ const agents = { ...config.agents };
425
+ agents[agentId] = { ...agents[agentId], mcp: { servers } };
426
+ saveConfig({ agents });
427
+ }
428
+ else {
429
+ saveConfig({ mcp: { servers } });
430
+ }
431
+ await ctx.reply(`Removed MCP server: ${name}`);
432
+ });
315
433
  // ─── Admin-only commands: redirect to admin bot ──────────────────
316
434
  const adminRedirect = async (ctx) => {
317
435
  const config = getConfig();
@@ -389,6 +507,14 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
389
507
  agentSystemPrompt: agent.systemPrompt,
390
508
  thinking: agent.thinking,
391
509
  effort: agent.effort,
510
+ onRetry: async (attempt, kind) => {
511
+ await alertAdmin(`⚠️ ${agent.name}: ${kind} (attempt ${attempt + 1}/${config.retry.maxRetries})`);
512
+ },
513
+ onError: async (err, kind) => {
514
+ const isFatal = kind === "auth" || kind === "billing";
515
+ const icon = isFatal ? "🚨" : "⚠️";
516
+ await alertAdmin(`${icon} ${agent.name}: ${kind} — ${err.message.slice(0, 200)}`);
517
+ },
392
518
  onEvent: async (event) => {
393
519
  if (event.type === "stream_text") {
394
520
  pendingText += event.text;
@@ -476,7 +602,22 @@ export async function setupAgentBot(agentId, botToken, getConfig, getSystemPromp
476
602
  }
477
603
  });
478
604
  // ─── Text message handler ─────────────────────────────────────────
605
+ // Handle wizard callback queries (inline button selections)
606
+ b.on("callback_query:data", async (ctx) => {
607
+ const data = ctx.callbackQuery.data;
608
+ if (data.startsWith("wizard:")) {
609
+ await ctx.answerCallbackQuery();
610
+ const value = data.split(":").slice(2).join(":");
611
+ await advanceWizard(ctx.chat.id, value, b);
612
+ }
613
+ });
479
614
  b.on("message:text", async (ctx) => {
615
+ // Advance active wizard with text input
616
+ if (hasActiveWizard(ctx.chat.id)) {
617
+ const consumed = await advanceWizard(ctx.chat.id, ctx.message.text, b);
618
+ if (consumed)
619
+ return;
620
+ }
480
621
  const agent = getAgent(ctx.chat.id);
481
622
  const text = ctx.message.text;
482
623
  if (isGroupChat(ctx.chat.type) && agent.mentionOnly) {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-bot.js","sourceRoot":"","sources":["../../src/telegram/agent-bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-bot.js","sourceRoot":"","sources":["../../src/telegram/agent-bot.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,42 @@
1
1
  // Agent config resolution for Telegram
2
2
  import { buildSystemPrompt } from "../system-prompt.js";
3
+ const BRIEF_MODE_INSTRUCTION = `
4
+
5
+ ## Response Style (Telegram)
6
+ You're replying in a Telegram chat — keep responses short and conversational, like a text message. Lead with the answer. Skip markdown formatting (no headers, no code fences unless asked). If the answer needs depth, give the key point first then offer to elaborate. Be helpful, not verbose.`;
3
7
  /** Resolve an agent's config from current config state (supports hot-reload) */
4
8
  export function resolveAgent(agentId, config, globalSystemPrompt, overrides) {
5
9
  if (agentId === "telegram") {
6
10
  // Legacy top-level telegram config
11
+ const briefMode = overrides?.briefMode ?? true;
7
12
  return {
8
13
  id: "telegram",
9
14
  name: "CamelAGI",
10
15
  model: overrides?.model ?? config.model,
11
- systemPrompt: globalSystemPrompt,
16
+ systemPrompt: globalSystemPrompt + (briefMode ? BRIEF_MODE_INSTRUCTION : ""),
12
17
  thinking: overrides?.thinking ?? config.thinking,
13
18
  effort: overrides?.effort ?? config.effort,
14
19
  maxTurns: config.maxTurns,
15
20
  allowedUsers: config.telegram.allowedUsers,
16
21
  mentionOnly: config.telegram.groups.mentionOnly,
22
+ briefMode,
17
23
  };
18
24
  }
19
25
  const agent = config.agents[agentId];
20
26
  const basePrompt = agent?.systemPrompt ?? config.systemPrompt;
27
+ const briefMode = overrides?.briefMode ?? (agent?.telegram?.briefMode ?? true);
28
+ const prompt = buildSystemPrompt(basePrompt, config.skills, agentId);
21
29
  return {
22
30
  id: agentId,
23
31
  name: agent?.name ?? agentId,
24
32
  model: overrides?.model ?? agent?.model ?? config.model,
25
- systemPrompt: buildSystemPrompt(basePrompt, config.skills, agentId),
33
+ systemPrompt: prompt + (briefMode ? BRIEF_MODE_INSTRUCTION : ""),
26
34
  thinking: overrides?.thinking ?? (agent?.thinking ?? config.thinking),
27
35
  effort: overrides?.effort ?? (agent?.effort ?? config.effort),
28
36
  maxTurns: agent?.maxTurns ?? config.maxTurns,
29
37
  allowedUsers: agent?.telegram?.allowedUsers ?? [],
30
38
  mentionOnly: agent?.telegram?.groups?.mentionOnly ?? true,
39
+ briefMode,
31
40
  };
32
41
  }
33
42
  //# sourceMappingURL=resolve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/telegram/resolve.ts"],"names":[],"mappings":"AAAA,uCAAuC;AAGvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AASxD,gFAAgF;AAChF,MAAM,UAAU,YAAY,CAC1B,OAAe,EACf,MAAc,EACd,kBAA0B,EAC1B,SAA4B;IAE5B,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,mCAAmC;QACnC,OAAO;YACL,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK;YACvC,YAAY,EAAE,kBAAkB;YAChC,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ;YAChD,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM;YAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY;YAC1C,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW;SAChD,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,KAAK,EAAE,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC;IAC9D,OAAO;QACL,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,OAAO;QAC5B,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK;QACvD,YAAY,EAAE,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;QACnE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAuB;QAC3F,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAqB;QACjF,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ;QAC5C,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,IAAI,EAAE;QACjD,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI;KAC1D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/telegram/resolve.ts"],"names":[],"mappings":"AAAA,uCAAuC;AAGvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAUxD,MAAM,sBAAsB,GAAG;;;mSAGoQ,CAAC;AAEpS,gFAAgF;AAChF,MAAM,UAAU,YAAY,CAC1B,OAAe,EACf,MAAc,EACd,kBAA0B,EAC1B,SAA4B;IAE5B,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,mCAAmC;QACnC,MAAM,SAAS,GAAG,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC;QAC/C,OAAO;YACL,EAAE,EAAE,UAAU;YACd,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK;YACvC,YAAY,EAAE,kBAAkB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ;YAChD,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM;YAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY;YAC1C,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW;YAC/C,SAAS;SACV,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,KAAK,EAAE,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC;IAC9D,MAAM,SAAS,GAAG,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrE,OAAO;QACL,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,OAAO;QAC5B,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK;QACvD,YAAY,EAAE,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAuB;QAC3F,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAqB;QACjF,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ;QAC5C,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,IAAI,EAAE;QACjD,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI;QACzD,SAAS;KACV,CAAC;AACJ,CAAC"}