tg-claude 0.3.3 → 0.3.4

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 (125) hide show
  1. package/package.json +2 -3
  2. package/dist/claude/ClaudeProcess.d.ts +0 -77
  3. package/dist/claude/ClaudeProcess.d.ts.map +0 -1
  4. package/dist/claude/ClaudeProcess.js +0 -270
  5. package/dist/claude/ClaudeProcess.js.map +0 -1
  6. package/dist/claude/EventAdapter.d.ts +0 -44
  7. package/dist/claude/EventAdapter.d.ts.map +0 -1
  8. package/dist/claude/EventAdapter.js +0 -135
  9. package/dist/claude/EventAdapter.js.map +0 -1
  10. package/dist/claude/index.d.ts +0 -10
  11. package/dist/claude/index.d.ts.map +0 -1
  12. package/dist/claude/index.js +0 -9
  13. package/dist/claude/index.js.map +0 -1
  14. package/dist/claude/types.d.ts +0 -244
  15. package/dist/claude/types.d.ts.map +0 -1
  16. package/dist/claude/types.js +0 -8
  17. package/dist/claude/types.js.map +0 -1
  18. package/dist/env.d.ts +0 -21
  19. package/dist/env.d.ts.map +0 -1
  20. package/dist/env.js +0 -49
  21. package/dist/env.js.map +0 -1
  22. package/dist/index.d.ts +0 -2
  23. package/dist/index.d.ts.map +0 -1
  24. package/dist/index.js +0 -415
  25. package/dist/index.js.map +0 -1
  26. package/dist/parser/AnsiStripper.d.ts +0 -54
  27. package/dist/parser/AnsiStripper.d.ts.map +0 -1
  28. package/dist/parser/AnsiStripper.js +0 -115
  29. package/dist/parser/AnsiStripper.js.map +0 -1
  30. package/dist/parser/OptionExtractor.d.ts +0 -31
  31. package/dist/parser/OptionExtractor.d.ts.map +0 -1
  32. package/dist/parser/OptionExtractor.js +0 -91
  33. package/dist/parser/OptionExtractor.js.map +0 -1
  34. package/dist/parser/OutputParser.d.ts +0 -121
  35. package/dist/parser/OutputParser.d.ts.map +0 -1
  36. package/dist/parser/OutputParser.js +0 -306
  37. package/dist/parser/OutputParser.js.map +0 -1
  38. package/dist/parser/PromptDetector.d.ts +0 -20
  39. package/dist/parser/PromptDetector.d.ts.map +0 -1
  40. package/dist/parser/PromptDetector.js +0 -68
  41. package/dist/parser/PromptDetector.js.map +0 -1
  42. package/dist/parser/index.d.ts +0 -7
  43. package/dist/parser/index.d.ts.map +0 -1
  44. package/dist/parser/index.js +0 -5
  45. package/dist/parser/index.js.map +0 -1
  46. package/dist/parser/types.d.ts +0 -73
  47. package/dist/parser/types.d.ts.map +0 -1
  48. package/dist/parser/types.js +0 -2
  49. package/dist/parser/types.js.map +0 -1
  50. package/dist/pty/OutputBuffer.d.ts +0 -39
  51. package/dist/pty/OutputBuffer.d.ts.map +0 -1
  52. package/dist/pty/OutputBuffer.js +0 -55
  53. package/dist/pty/OutputBuffer.js.map +0 -1
  54. package/dist/pty/PtyProcess.d.ts +0 -47
  55. package/dist/pty/PtyProcess.d.ts.map +0 -1
  56. package/dist/pty/PtyProcess.js +0 -94
  57. package/dist/pty/PtyProcess.js.map +0 -1
  58. package/dist/pty/PtyService.d.ts +0 -55
  59. package/dist/pty/PtyService.d.ts.map +0 -1
  60. package/dist/pty/PtyService.js +0 -115
  61. package/dist/pty/PtyService.js.map +0 -1
  62. package/dist/pty/index.d.ts +0 -5
  63. package/dist/pty/index.d.ts.map +0 -1
  64. package/dist/pty/index.js +0 -4
  65. package/dist/pty/index.js.map +0 -1
  66. package/dist/pty/types.d.ts +0 -36
  67. package/dist/pty/types.d.ts.map +0 -1
  68. package/dist/pty/types.js +0 -2
  69. package/dist/pty/types.js.map +0 -1
  70. package/dist/router/BoundedQueue.d.ts +0 -57
  71. package/dist/router/BoundedQueue.d.ts.map +0 -1
  72. package/dist/router/BoundedQueue.js +0 -86
  73. package/dist/router/BoundedQueue.js.map +0 -1
  74. package/dist/router/EventRouter.d.ts +0 -103
  75. package/dist/router/EventRouter.d.ts.map +0 -1
  76. package/dist/router/EventRouter.js +0 -169
  77. package/dist/router/EventRouter.js.map +0 -1
  78. package/dist/router/index.d.ts +0 -13
  79. package/dist/router/index.d.ts.map +0 -1
  80. package/dist/router/index.js +0 -12
  81. package/dist/router/index.js.map +0 -1
  82. package/dist/router/types.d.ts +0 -104
  83. package/dist/router/types.d.ts.map +0 -1
  84. package/dist/router/types.js +0 -6
  85. package/dist/router/types.js.map +0 -1
  86. package/dist/setup/envWriter.d.ts +0 -22
  87. package/dist/setup/envWriter.d.ts.map +0 -1
  88. package/dist/setup/envWriter.js +0 -68
  89. package/dist/setup/envWriter.js.map +0 -1
  90. package/dist/setup/index.d.ts +0 -4
  91. package/dist/setup/index.d.ts.map +0 -1
  92. package/dist/setup/index.js +0 -4
  93. package/dist/setup/index.js.map +0 -1
  94. package/dist/setup/validators.d.ts +0 -22
  95. package/dist/setup/validators.d.ts.map +0 -1
  96. package/dist/setup/validators.js +0 -47
  97. package/dist/setup/validators.js.map +0 -1
  98. package/dist/setup/wizard.d.ts +0 -7
  99. package/dist/setup/wizard.d.ts.map +0 -1
  100. package/dist/setup/wizard.js +0 -56
  101. package/dist/setup/wizard.js.map +0 -1
  102. package/dist/telegram/TelegramBot.d.ts +0 -163
  103. package/dist/telegram/TelegramBot.d.ts.map +0 -1
  104. package/dist/telegram/TelegramBot.js +0 -634
  105. package/dist/telegram/TelegramBot.js.map +0 -1
  106. package/dist/telegram/index.d.ts +0 -7
  107. package/dist/telegram/index.d.ts.map +0 -1
  108. package/dist/telegram/index.js +0 -6
  109. package/dist/telegram/index.js.map +0 -1
  110. package/dist/telegram/types.d.ts +0 -30
  111. package/dist/telegram/types.d.ts.map +0 -1
  112. package/dist/telegram/types.js +0 -5
  113. package/dist/telegram/types.js.map +0 -1
  114. package/dist/terminal/TerminalInterface.d.ts +0 -61
  115. package/dist/terminal/TerminalInterface.d.ts.map +0 -1
  116. package/dist/terminal/TerminalInterface.js +0 -218
  117. package/dist/terminal/TerminalInterface.js.map +0 -1
  118. package/dist/terminal/index.d.ts +0 -3
  119. package/dist/terminal/index.d.ts.map +0 -1
  120. package/dist/terminal/index.js +0 -2
  121. package/dist/terminal/index.js.map +0 -1
  122. package/dist/terminal/types.d.ts +0 -17
  123. package/dist/terminal/types.d.ts.map +0 -1
  124. package/dist/terminal/types.js +0 -2
  125. package/dist/terminal/types.js.map +0 -1
@@ -1,22 +0,0 @@
1
- /**
2
- * Validation functions for setup wizard inputs.
3
- * Return true for valid input, or a helpful error message string for invalid input.
4
- */
5
- /**
6
- * Validate a Telegram bot token format.
7
- * Tokens follow the pattern: {bot_id}:{token_part}
8
- * Example: 123456789:ABCdefGHIjklMNOpqrSTUvwxYZ123456789
9
- *
10
- * @param value - The raw input string to validate
11
- * @returns true if valid, or an error message string if invalid
12
- */
13
- export declare function validateToken(value: string): boolean | string;
14
- /**
15
- * Validate a Telegram user ID.
16
- * User IDs are positive integers.
17
- *
18
- * @param value - The raw input string to validate
19
- * @returns true if valid, or an error message string if invalid
20
- */
21
- export declare function validateUserId(value: string): boolean | string;
22
- //# sourceMappingURL=validators.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/setup/validators.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAe7D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAmB9D"}
@@ -1,47 +0,0 @@
1
- /**
2
- * Validation functions for setup wizard inputs.
3
- * Return true for valid input, or a helpful error message string for invalid input.
4
- */
5
- /**
6
- * Validate a Telegram bot token format.
7
- * Tokens follow the pattern: {bot_id}:{token_part}
8
- * Example: 123456789:ABCdefGHIjklMNOpqrSTUvwxYZ123456789
9
- *
10
- * @param value - The raw input string to validate
11
- * @returns true if valid, or an error message string if invalid
12
- */
13
- export function validateToken(value) {
14
- const trimmed = value.trim();
15
- if (!trimmed) {
16
- return 'Token is required';
17
- }
18
- // Telegram bot tokens: {5-16 digit bot_id}:A{34 alphanumeric/underscore/dash chars}
19
- const tokenPattern = /^\d{5,16}:A[a-zA-Z0-9_-]{34}$/;
20
- if (!tokenPattern.test(trimmed)) {
21
- return 'Invalid token format. Should look like: 123456789:ABCdefGHIjklMNOpqrSTUvwxYZ123456789';
22
- }
23
- return true;
24
- }
25
- /**
26
- * Validate a Telegram user ID.
27
- * User IDs are positive integers.
28
- *
29
- * @param value - The raw input string to validate
30
- * @returns true if valid, or an error message string if invalid
31
- */
32
- export function validateUserId(value) {
33
- const trimmed = value.trim();
34
- if (!trimmed) {
35
- return 'User ID is required';
36
- }
37
- const parsed = parseInt(trimmed, 10);
38
- if (isNaN(parsed) || parsed <= 0) {
39
- return 'User ID must be a positive number. Get it from @userinfobot on Telegram.';
40
- }
41
- // Ensure no extra characters (e.g., "123abc" would parse to 123)
42
- if (parsed.toString() !== trimmed) {
43
- return 'User ID must contain only digits';
44
- }
45
- return true;
46
- }
47
- //# sourceMappingURL=validators.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/setup/validators.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,oFAAoF;IACpF,MAAM,YAAY,GAAG,+BAA+B,CAAC;IAErD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,uFAAuF,CAAC;IACjG,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAErC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,0EAA0E,CAAC;IACpF,CAAC;IAED,iEAAiE;IACjE,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,kCAAkC,CAAC;IAC5C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Interactive setup wizard for configuring Telegram bot credentials.
3
- * Guides the user through obtaining and entering their bot token and user ID.
4
- * Handles Ctrl+C gracefully without stack traces.
5
- */
6
- export declare function setupWizard(): Promise<void>;
7
- //# sourceMappingURL=wizard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/setup/wizard.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAuDjD"}
@@ -1,56 +0,0 @@
1
- import { input, confirm } from '@inquirer/prompts';
2
- import { validateToken, validateUserId } from './validators.js';
3
- import { readExistingEnv, writeEnvFile } from './envWriter.js';
4
- /**
5
- * Interactive setup wizard for configuring Telegram bot credentials.
6
- * Guides the user through obtaining and entering their bot token and user ID.
7
- * Handles Ctrl+C gracefully without stack traces.
8
- */
9
- export async function setupWizard() {
10
- try {
11
- // Header
12
- console.log('\n=== tg-claude Setup Wizard ===\n');
13
- console.log('This wizard will help you configure your Telegram bot credentials.');
14
- console.log('You will need to create a bot and get your user ID.\n');
15
- // Step 1: Bot token
16
- console.log('STEP 1: Get your bot token from @BotFather\n');
17
- console.log(' 1. Open Telegram and search for @BotFather');
18
- console.log(' 2. Send /newbot and follow the prompts to create a bot');
19
- console.log(' 3. Copy the token that BotFather gives you\n');
20
- const token = (await input({
21
- message: 'Paste your bot token:',
22
- validate: validateToken,
23
- })).trim();
24
- // Step 2: User ID
25
- console.log('\nSTEP 2: Get your user ID from @userinfobot\n');
26
- console.log(' 1. Open Telegram and search for @userinfobot');
27
- console.log(' 2. Start the bot - it will show your numeric user ID\n');
28
- const userId = (await input({
29
- message: 'Enter your user ID:',
30
- validate: validateUserId,
31
- })).trim();
32
- // Step 3: Confirm and write
33
- const existingContent = readExistingEnv();
34
- if (existingContent !== null) {
35
- const shouldUpdate = await confirm({
36
- message: 'A .env file already exists. Update Telegram settings?',
37
- default: true,
38
- });
39
- if (!shouldUpdate) {
40
- console.log('\nSetup cancelled.');
41
- return;
42
- }
43
- }
44
- writeEnvFile({ token, userId }, existingContent);
45
- console.log('\n✓ Setup complete! Your credentials have been saved to .env');
46
- }
47
- catch (error) {
48
- // Handle Ctrl+C gracefully
49
- if (error instanceof Error && error.name === 'ExitPromptError') {
50
- console.log('\n\nSetup cancelled.');
51
- process.exit(0);
52
- }
53
- throw error;
54
- }
55
- }
56
- //# sourceMappingURL=wizard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/setup/wizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,IAAI,CAAC;QACH,SAAS;QACT,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QAErE,oBAAoB;QACpB,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAE9D,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC;YACzB,OAAO,EAAE,uBAAuB;YAChC,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEX,kBAAkB;QAClB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QAExE,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC;YAC1B,OAAO,EAAE,qBAAqB;YAC9B,QAAQ,EAAE,cAAc;SACzB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEX,4BAA4B;QAC5B,MAAM,eAAe,GAAG,eAAe,EAAE,CAAC;QAE1C,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC;gBACjC,OAAO,EAAE,uDAAuD;gBAChE,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAClC,OAAO;YACT,CAAC;QACH,CAAC;QAED,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC;QAEjD,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAE9E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,2BAA2B;QAC3B,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,163 +0,0 @@
1
- /**
2
- * TelegramBot class wrapping grammY Bot with composition pattern.
3
- * Implements AUTH-01 whitelist authentication for single-user access.
4
- */
5
- import type { NotificationPayload } from './types.js';
6
- import type { TelegramConfig } from './types.js';
7
- /**
8
- * Handler for inline button callback responses.
9
- * @param sessionId - The session that receives the response
10
- * @param optionIndex - The selected option index (1-based)
11
- */
12
- export type CallbackHandler = (sessionId: string, optionIndex: number) => void;
13
- /**
14
- * Handler for freeform text message responses.
15
- * @param sessionId - The session that receives the response
16
- * @param text - The user's text input
17
- */
18
- export type TextMessageHandler = (sessionId: string, text: string) => void;
19
- /**
20
- * Options for TelegramBot initialization.
21
- * Extends TelegramConfig to allow future options.
22
- */
23
- export interface TelegramBotOptions extends TelegramConfig {
24
- }
25
- /**
26
- * TelegramBot wraps grammY Bot with composition pattern.
27
- * Provides single-user authentication and graceful lifecycle management.
28
- *
29
- * @example
30
- * ```typescript
31
- * const bot = new TelegramBot({
32
- * token: process.env.TELEGRAM_BOT_TOKEN,
33
- * allowedUserId: Number(process.env.TELEGRAM_USER_ID),
34
- * });
35
- * await bot.start();
36
- * ```
37
- */
38
- export declare class TelegramBot {
39
- private readonly bot;
40
- private readonly allowedUserId;
41
- private started;
42
- private readonly sessionChatMap;
43
- onCallback: CallbackHandler | null;
44
- onTextMessage: TextMessageHandler | null;
45
- private awaitingSession;
46
- private readonly multiSelectState;
47
- constructor(options: TelegramBotOptions);
48
- /**
49
- * Set up bot middleware and command handlers.
50
- */
51
- private setupMiddleware;
52
- /**
53
- * Set up error handler for Telegram API and network errors.
54
- */
55
- private setupErrorHandler;
56
- /**
57
- * Handle single-select button click (existing behavior, refactored)
58
- */
59
- private handleSingleSelect;
60
- /**
61
- * Handle multi-select toggle button click
62
- */
63
- private handleToggle;
64
- /**
65
- * Handle multi-select submit button click
66
- */
67
- private handleSubmit;
68
- /**
69
- * Build multi-select keyboard with checkmarks for selected options
70
- */
71
- private buildMultiSelectKeyboard;
72
- /**
73
- * Start the bot with long polling.
74
- * Safe to call multiple times (idempotent).
75
- */
76
- /**
77
- * Register bot commands for Telegram autocomplete menu.
78
- * Only basic bot commands are registered. GSD commands are typed manually
79
- * as /gsd:command-name since they often need arguments.
80
- */
81
- setupBotCommands(): Promise<void>;
82
- start(): Promise<void>;
83
- /**
84
- * Stop the bot gracefully.
85
- * Safe to call multiple times (idempotent).
86
- */
87
- stop(): void;
88
- /**
89
- * Check if the bot is currently running.
90
- */
91
- get isStarted(): boolean;
92
- /**
93
- * Get the chat ID for the single whitelisted user.
94
- * For private chats, chat_id equals user_id.
95
- */
96
- get chatId(): number;
97
- /**
98
- * Expose bot.api for proactive messaging.
99
- * Used by higher layers to send notifications.
100
- */
101
- get api(): import("grammy").Api<import("grammy").RawApi>;
102
- /**
103
- * Register a session for notifications.
104
- * Maps session to the whitelisted user's chat.
105
- */
106
- registerSession(sessionId: string): void;
107
- /**
108
- * Unregister a session.
109
- */
110
- unregisterSession(sessionId: string): void;
111
- /**
112
- * Check if a session is registered.
113
- */
114
- hasSession(sessionId: string): boolean;
115
- /**
116
- * Send a prompt notification to Telegram with inline keyboard.
117
- * @param payload - The notification payload with question and options
118
- * @returns Message ID if sent, undefined if session not registered
119
- */
120
- sendNotification(payload: NotificationPayload): Promise<number | undefined>;
121
- /**
122
- * Truncate button text for Telegram inline keyboards.
123
- * Extracts label (before " - ") and truncates to max length.
124
- * Telegram buttons have ~40-50 char visible width.
125
- */
126
- private truncateButtonText;
127
- /**
128
- * Escape HTML special characters for Telegram HTML parse mode.
129
- */
130
- escapeHtml(text: string): string;
131
- /**
132
- * Send a completion notification to Telegram.
133
- * Handles long messages by splitting into multiple messages.
134
- * @param payload - The completion payload with summary
135
- * @returns Message ID of last message if sent, undefined if session not registered
136
- */
137
- sendCompletionNotification(payload: {
138
- sessionId: string;
139
- summary: string;
140
- duration?: number;
141
- }): Promise<number | undefined>;
142
- /**
143
- * Split a long message into chunks at natural break points.
144
- */
145
- private splitMessage;
146
- /**
147
- * Mark a session as awaiting user input.
148
- * Called when a prompt notification is sent.
149
- */
150
- setAwaitingInput(sessionId: string): void;
151
- /**
152
- * Clear the awaiting input state.
153
- * Called when response is received or session ends.
154
- */
155
- clearAwaitingInput(): void;
156
- /**
157
- * Handle GSD skill commands.
158
- * Routes to Claude as text input (not as Telegram bot commands).
159
- * Handles cold-start scenario where no session is awaiting.
160
- */
161
- private handleGsdCommand;
162
- }
163
- //# sourceMappingURL=TelegramBot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelegramBot.d.ts","sourceRoot":"","sources":["../../src/telegram/TelegramBot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AASjD;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;AAE/E;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,cAAc;CAEzD;AAYD;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,OAAO,CAAS;IAIxB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAG5D,UAAU,EAAE,eAAe,GAAG,IAAI,CAAQ;IAC1C,aAAa,EAAE,kBAAkB,GAAG,IAAI,CAAQ;IAGhD,OAAO,CAAC,eAAe,CAAuB;IAG9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuC;gBAE5D,OAAO,EAAE,kBAAkB;IAOvC;;OAEG;IACH,OAAO,CAAC,eAAe;IAsJvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAezB;;OAEG;YAEW,kBAAkB;IAiChC;;OAEG;YAEW,YAAY;IA2C1B;;OAEG;YAEW,YAAY;IAgD1B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAuBhC;;;OAGG;IACH;;;;OAIG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAcjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5B;;;OAGG;IACH,IAAI,IAAI,IAAI;IAOZ;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;OAGG;IACH,IAAI,GAAG,kDAEN;IAED;;;OAGG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKxC;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAK1C;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAItC;;;;OAIG;IACG,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IA8EjF;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAOhC;;;;;OAKG;IACG,0BAA0B,CAAC,OAAO,EAAE;QACxC,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAkE/B;;OAEG;IACH,OAAO,CAAC,YAAY;IA0BpB;;;OAGG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKzC;;;OAGG;IACH,kBAAkB,IAAI,IAAI;IAO1B;;;;OAIG;YACW,gBAAgB;CAmB/B"}