aura-code 0.3.7 → 0.5.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 (109) hide show
  1. package/README.md +54 -2
  2. package/dist/agent/compactor.d.ts +26 -0
  3. package/dist/agent/compactor.js +156 -0
  4. package/dist/agent/compactor.js.map +1 -0
  5. package/dist/agent/design.d.ts +17 -0
  6. package/dist/agent/design.js +175 -0
  7. package/dist/agent/design.js.map +1 -0
  8. package/dist/agent/loop.js +8 -1
  9. package/dist/agent/loop.js.map +1 -1
  10. package/dist/agent/system-prompt.d.ts +1 -1
  11. package/dist/agent/system-prompt.js +5 -2
  12. package/dist/agent/system-prompt.js.map +1 -1
  13. package/dist/cli/display.js +40 -4
  14. package/dist/cli/display.js.map +1 -1
  15. package/dist/cli/index.js +258 -44
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/config/defaults.js +1 -1
  18. package/dist/config/defaults.js.map +1 -1
  19. package/dist/config/project-config.d.ts +6 -0
  20. package/dist/config/project-config.js +2 -0
  21. package/dist/config/project-config.js.map +1 -1
  22. package/dist/dream/dream.d.ts +48 -0
  23. package/dist/dream/dream.js +187 -0
  24. package/dist/dream/dream.js.map +1 -0
  25. package/dist/kanban/index.d.ts +5 -0
  26. package/dist/kanban/index.js +11 -0
  27. package/dist/kanban/index.js.map +1 -0
  28. package/dist/kanban/pipeline.d.ts +16 -0
  29. package/dist/kanban/pipeline.js +910 -0
  30. package/dist/kanban/pipeline.js.map +1 -0
  31. package/dist/kanban/server.d.ts +5 -0
  32. package/dist/kanban/server.js +820 -0
  33. package/dist/kanban/server.js.map +1 -0
  34. package/dist/kanban/types.d.ts +75 -0
  35. package/dist/kanban/types.js +6 -0
  36. package/dist/kanban/types.js.map +1 -0
  37. package/dist/learnlight/driven.d.ts +2 -0
  38. package/dist/learnlight/driven.js +109 -0
  39. package/dist/learnlight/driven.js.map +1 -0
  40. package/dist/learnlight/index.d.ts +4 -0
  41. package/dist/learnlight/index.js +32 -0
  42. package/dist/learnlight/index.js.map +1 -0
  43. package/dist/learnlight/lesson-prep.d.ts +36 -0
  44. package/dist/learnlight/lesson-prep.js +224 -0
  45. package/dist/learnlight/lesson-prep.js.map +1 -0
  46. package/dist/learnlight/report.d.ts +2 -0
  47. package/dist/learnlight/report.js +37 -0
  48. package/dist/learnlight/report.js.map +1 -0
  49. package/dist/learnlight/types.d.ts +72 -0
  50. package/dist/learnlight/types.js +6 -0
  51. package/dist/learnlight/types.js.map +1 -0
  52. package/dist/perception/graph-store.d.ts +11 -0
  53. package/dist/perception/graph-store.js +33 -0
  54. package/dist/perception/graph-store.js.map +1 -1
  55. package/dist/perception/index.d.ts +1 -1
  56. package/dist/perception/index.js +2 -1
  57. package/dist/perception/index.js.map +1 -1
  58. package/dist/providers/factory.d.ts +16 -0
  59. package/dist/providers/factory.js +72 -0
  60. package/dist/providers/factory.js.map +1 -1
  61. package/dist/providers/openai-compatible.js +80 -49
  62. package/dist/providers/openai-compatible.js.map +1 -1
  63. package/dist/research/council.d.ts +26 -0
  64. package/dist/research/council.js +225 -0
  65. package/dist/research/council.js.map +1 -0
  66. package/dist/research/research.d.ts +24 -0
  67. package/dist/research/research.js +116 -0
  68. package/dist/research/research.js.map +1 -0
  69. package/dist/ruby/alternator.d.ts +36 -1
  70. package/dist/ruby/alternator.js +40 -31
  71. package/dist/ruby/alternator.js.map +1 -1
  72. package/dist/ruby/stats.js +10 -11
  73. package/dist/ruby/stats.js.map +1 -1
  74. package/dist/ruby/types.js +1 -1
  75. package/dist/ruby/types.js.map +1 -1
  76. package/dist/safety/permissions.d.ts +8 -0
  77. package/dist/safety/permissions.js +12 -0
  78. package/dist/safety/permissions.js.map +1 -1
  79. package/dist/setup/provider-registry.js +14 -0
  80. package/dist/setup/provider-registry.js.map +1 -1
  81. package/dist/setup/provider-test.js +24 -2
  82. package/dist/setup/provider-test.js.map +1 -1
  83. package/dist/setup/telegram-wizard.d.ts +57 -0
  84. package/dist/setup/telegram-wizard.js +343 -0
  85. package/dist/setup/telegram-wizard.js.map +1 -0
  86. package/dist/tools/audio-transcribe.d.ts +20 -0
  87. package/dist/tools/audio-transcribe.js +39 -28
  88. package/dist/tools/audio-transcribe.js.map +1 -1
  89. package/dist/tools/gmail-tool.d.ts +11 -0
  90. package/dist/tools/gmail-tool.js +221 -0
  91. package/dist/tools/gmail-tool.js.map +1 -0
  92. package/dist/tools/read-file.js +13 -0
  93. package/dist/tools/read-file.js.map +1 -1
  94. package/dist/tools/telegram-bot.js +103 -18
  95. package/dist/tools/telegram-bot.js.map +1 -1
  96. package/dist/tools/telegram-voice.d.ts +22 -0
  97. package/dist/tools/telegram-voice.js +203 -0
  98. package/dist/tools/telegram-voice.js.map +1 -0
  99. package/dist/tools/telegram.d.ts +6 -1
  100. package/dist/tools/telegram.js +115 -5
  101. package/dist/tools/telegram.js.map +1 -1
  102. package/dist/tools/video-render.d.ts +11 -0
  103. package/dist/tools/video-render.js +189 -0
  104. package/dist/tools/video-render.js.map +1 -0
  105. package/dist/util/errors.js +6 -0
  106. package/dist/util/errors.js.map +1 -1
  107. package/dist/viz/index.js +816 -30
  108. package/dist/viz/index.js.map +1 -1
  109. package/package.json +2 -1
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.GMAIL_DEFINITION = void 0;
37
+ exports.gmailTool = gmailTool;
38
+ const fs = __importStar(require("fs"));
39
+ const path = __importStar(require("path"));
40
+ const os = __importStar(require("os"));
41
+ exports.GMAIL_DEFINITION = {
42
+ name: 'gmail',
43
+ description: 'Read and write emails via Gmail API. Uses existing Google OAuth from ~/.hermes/google_token.json. ' +
44
+ 'Actions: list (recent emails), read (full message by id), send (compose new email).',
45
+ parameters: {
46
+ type: 'object',
47
+ properties: {
48
+ action: { type: 'string', description: 'Action: list, read, send' },
49
+ to: { type: 'string', description: 'Recipient email (for send)' },
50
+ subject: { type: 'string', description: 'Email subject (for send/read)' },
51
+ body: { type: 'string', description: 'Email body text (for send)' },
52
+ max_results: { type: 'number', description: 'Max results for list (default: 10)' },
53
+ message_id: { type: 'string', description: 'Gmail message ID to read (for read)' },
54
+ },
55
+ required: ['action'],
56
+ },
57
+ };
58
+ const TOKEN_PATH = path.join(os.homedir(), '.hermes', 'google_token.json');
59
+ function loadToken() {
60
+ if (!fs.existsSync(TOKEN_PATH))
61
+ throw new Error(`Google token not found at ${TOKEN_PATH}`);
62
+ return JSON.parse(fs.readFileSync(TOKEN_PATH, 'utf8'));
63
+ }
64
+ function saveToken(token) {
65
+ fs.writeFileSync(TOKEN_PATH, JSON.stringify(token, null, 2));
66
+ }
67
+ async function refreshAccess(token) {
68
+ const tokenUri = token.token_uri || 'https://oauth2.googleapis.com/token';
69
+ const body = new URLSearchParams({
70
+ client_id: token.client_id,
71
+ client_secret: token.client_secret,
72
+ refresh_token: token.refresh_token,
73
+ grant_type: 'refresh_token',
74
+ });
75
+ const res = await fetch(tokenUri, {
76
+ method: 'POST',
77
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
78
+ body: body.toString(),
79
+ });
80
+ if (!res.ok) {
81
+ const text = await res.text();
82
+ throw new Error(`Token refresh failed (${res.status}): ${text}`);
83
+ }
84
+ const data = (await res.json());
85
+ token.token = data.access_token;
86
+ if (data.expires_in) {
87
+ token.expiry = new Date(Date.now() + data.expires_in * 1000).toISOString();
88
+ }
89
+ saveToken(token);
90
+ return data.access_token;
91
+ }
92
+ async function getValidToken() {
93
+ const token = loadToken();
94
+ if (token.token) {
95
+ // If expiry present and still valid, use it
96
+ if (token.expiry && Date.now() < new Date(token.expiry).getTime() + 60000) {
97
+ return token.token;
98
+ }
99
+ // Try the token anyway; if 401, we'll refresh on auth error below
100
+ token.token;
101
+ }
102
+ if (!token.refresh_token)
103
+ throw new Error('No refresh_token available to obtain a new access token');
104
+ return refreshAccess(token);
105
+ }
106
+ async function gmailApi(path, init) {
107
+ const expectJson = init?.expectJson ?? true;
108
+ delete init?.expectJson;
109
+ let token = await getValidToken();
110
+ const base = 'https://www.googleapis.com/gmail/v1';
111
+ let res = await fetch(`${base}${path}`, {
112
+ ...init,
113
+ headers: {
114
+ Authorization: `Bearer ${token}`,
115
+ ...(init?.headers || {}),
116
+ },
117
+ });
118
+ if (res.status === 401) {
119
+ // Refresh and retry once
120
+ const tokenData = loadToken();
121
+ if (tokenData.refresh_token) {
122
+ token = await refreshAccess(tokenData);
123
+ res = await fetch(`${base}${path}`, {
124
+ ...init,
125
+ headers: {
126
+ Authorization: `Bearer ${token}`,
127
+ ...(init?.headers || {}),
128
+ },
129
+ });
130
+ }
131
+ }
132
+ if (res.status === 204) {
133
+ return '';
134
+ }
135
+ const text = await res.text();
136
+ if (!res.ok) {
137
+ throw new Error(`Gmail API error ${res.status}: ${text}`);
138
+ }
139
+ return expectJson ? JSON.parse(text) : text;
140
+ }
141
+ function decodeBase64Url(str) {
142
+ let base64 = str.replace(/-/g, '+').replace(/_/g, '/');
143
+ while (base64.length % 4)
144
+ base64 += '=';
145
+ return Buffer.from(base64, 'base64').toString('utf8');
146
+ }
147
+ function extractPlainBody(msg) {
148
+ if (msg.payload?.parts) {
149
+ const plain = msg.payload.parts.find((p) => p.mimeType === 'text/plain');
150
+ if (plain?.body?.data)
151
+ return decodeBase64Url(plain.body.data);
152
+ // multipart container without direct data
153
+ for (const p of msg.payload.parts) {
154
+ if (p.parts) {
155
+ const nested = p.parts.find((n) => n.mimeType === 'text/plain' && n.body?.data);
156
+ if (nested)
157
+ return decodeBase64Url(nested.body.data);
158
+ }
159
+ }
160
+ }
161
+ if (msg.payload?.body?.data)
162
+ return decodeBase64Url(msg.payload.body.data);
163
+ return '(empty body)';
164
+ }
165
+ async function gmailTool(input) {
166
+ try {
167
+ switch (input.action) {
168
+ case 'list': {
169
+ const max = input.max_results ?? 10;
170
+ const data = (await gmailApi(`/users/me/messages?maxResults=${max}${input.subject ? `&q=subject:${encodeURIComponent(input.subject)}` : ''}`));
171
+ const messages = data.messages ?? [];
172
+ if (messages.length === 0)
173
+ return 'No emails found.';
174
+ const summaries = [];
175
+ for (const m of messages.slice(0, max)) {
176
+ const msg = (await gmailApi(`/users/me/messages/${m.id}`));
177
+ const headers = msg.payload?.headers ?? [];
178
+ const h = (name) => headers.find((h) => h.name?.toLowerCase() === name.toLowerCase())?.value ?? '';
179
+ summaries.push(`ID: ${m.id}\nFrom: ${h('From')}\nSubject: ${h('Subject')}\nDate: ${h('Date')}`);
180
+ }
181
+ return `Found ${summaries.length} emails:\n\n${summaries.join('\n---\n')}`;
182
+ }
183
+ case 'read': {
184
+ if (!input.message_id)
185
+ return 'Error: message_id is required for read';
186
+ const msg = (await gmailApi(`/users/me/messages/${input.message_id}`));
187
+ const headers = msg.payload?.headers ?? [];
188
+ const h = (name) => headers.find((h) => h.name?.toLowerCase() === name.toLowerCase())?.value ?? '';
189
+ const body = extractPlainBody(msg);
190
+ return `From: ${h('From')}\nTo: ${h('To')}\nSubject: ${h('Subject')}\nDate: ${h('Date')}\n\n${body}`;
191
+ }
192
+ case 'send': {
193
+ if (!input.to)
194
+ return 'Error: to is required for send';
195
+ if (!input.subject)
196
+ return 'Error: subject is required for send';
197
+ if (!input.body)
198
+ return 'Error: body is required for send';
199
+ // Determine content type — HTML if body contains HTML tags, otherwise plain text
200
+ const isHtml = /<html|<body|<div|<p|<br|<table|<h[1-6]/i.test(input.body);
201
+ const contentType = isHtml ? 'text/html; charset=UTF-8' : 'text/plain; charset=UTF-8';
202
+ // Get sender email from token or use default
203
+ const tokenData = loadToken();
204
+ const fromEmail = tokenData.email || 'milodule3@gmail.com';
205
+ const raw = Buffer.from(`From: ${fromEmail}\r\nTo: ${input.to}\r\nSubject: ${input.subject}\r\nMIME-Version: 1.0\r\nContent-Type: ${contentType}\r\n\r\n${input.body}`).toString('base64url');
206
+ const data = (await gmailApi('/users/me/messages', {
207
+ method: 'POST',
208
+ headers: { 'Content-Type': 'application/json' },
209
+ body: JSON.stringify({ raw }),
210
+ }));
211
+ return `Email sent to ${input.to}: "${input.subject}"${data.id ? ` (ID: ${data.id})` : ''}`;
212
+ }
213
+ default:
214
+ return `Error: Unknown gmail action: ${input.action}`;
215
+ }
216
+ }
217
+ catch (e) {
218
+ return `Gmail error: ${e?.message ?? String(e)}`;
219
+ }
220
+ }
221
+ //# sourceMappingURL=gmail-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gmail-tool.js","sourceRoot":"","sources":["../../src/tools/gmail-tool.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,19 @@ function readFile(input, cwd) {
63
63
  const numbered = slice.map((l, i) => `${start + i + 1}: ${l}`).join('\n');
64
64
  return `${input.path} (lines ${start + 1}–${end} of ${total}):\n\n${numbered}`;
65
65
  }
66
+ // Hard byte ceiling, checked BEFORE the line-count check. Line-based
67
+ // truncation alone is no protection: a file with few lines but one enormous
68
+ // line (minified JS/CSS, a base64-inlined asset, a single-line data blob) can
69
+ // still be many megabytes and, read in full, will blow past the model's
70
+ // context window in one tool call. ~256 KB ≈ 70K+ tokens, plenty for a real
71
+ // source file; anything larger must be read in slices.
72
+ const MAX_BYTES = 256 * 1024;
73
+ const byteLen = Buffer.byteLength(content, 'utf8');
74
+ if (byteLen > MAX_BYTES) {
75
+ const head = content.slice(0, 4000);
76
+ const tail = content.slice(-2000);
77
+ return `${input.path} (${byteLen} bytes across ${total} lines — too large to inline; showing first 4000 + last 2000 chars). Use start_line/end_line to read specific sections, or grep_search to locate content:\n\n${head}\n\n... [${byteLen - 6000} bytes omitted] ...\n\n${tail}`;
78
+ }
66
79
  // Return full file with line numbers, truncating if very large
67
80
  const MAX_LINES = 500;
68
81
  if (total > MAX_LINES) {
@@ -1 +1 @@
1
- {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../src/tools/read-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../src/tools/read-file.ts"],"names":[],"mappings":"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"}
@@ -42,12 +42,12 @@ const path = __importStar(require("path"));
42
42
  const os = __importStar(require("os"));
43
43
  const child_process_1 = require("child_process");
44
44
  const factory_js_1 = require("../providers/factory.js");
45
+ const env_js_1 = require("../util/env.js");
46
+ const voiceModule = __importStar(require("./telegram-voice.js"));
45
47
  const context_js_1 = require("../agent/context.js");
46
48
  const load_env_js_1 = require("../util/load-env.js");
47
49
  const global_config_js_1 = require("../setup/global-config.js");
48
50
  const project_config_js_1 = require("../config/project-config.js");
49
- const provider_wizard_js_1 = require("../setup/provider-wizard.js");
50
- const env_js_1 = require("../util/env.js");
51
51
  const loop_js_1 = require("../agent/loop.js");
52
52
  const permissions_js_1 = require("../safety/permissions.js");
53
53
  const telegram_safety_js_1 = require("./telegram-safety.js");
@@ -84,12 +84,17 @@ const AUTHORIZED_USER_IDS = loadAuthorizedUserIds();
84
84
  const PROJECT_ROOT = process.env.TELEGRAM_BOT_PROJECT_ROOT
85
85
  ?? path.resolve(__dirname, '../..'); // default to aura-code repo
86
86
  (0, load_env_js_1.bootstrapAuraEnv)(PROJECT_ROOT);
87
+ // Register custom providers from .aura.json so that prefixed model IDs
88
+ // (e.g. deepseek/v4-flash) route to the correct API endpoint.
89
+ const _projectConfig = (0, project_config_js_1.loadProjectConfig)(PROJECT_ROOT);
90
+ if (_projectConfig?.providers?.length) {
91
+ (0, factory_js_1.registerCustomProviders)(_projectConfig.providers);
92
+ }
87
93
  function resolveTaskModel() {
88
- const fileConfig = (0, project_config_js_1.loadProjectConfig)(PROJECT_ROOT);
89
94
  const globalCfg = (0, global_config_js_1.loadGlobalConfig)();
90
95
  return process.env.TELEGRAM_BOT_MODEL
91
96
  ?? process.env.AURA_MODEL
92
- ?? fileConfig.model
97
+ ?? _projectConfig.model
93
98
  ?? globalCfg?.defaultModel
94
99
  ?? 'deepseek/deepseek-v4-flash';
95
100
  }
@@ -103,21 +108,18 @@ function saveState() {
103
108
  }
104
109
  // ── Provider (created once, reused) ────────────────────────────────────────
105
110
  function createLLMProvider() {
106
- const saved = (0, provider_wizard_js_1.loadProviderConfig)();
107
111
  const fileConfig = (0, project_config_js_1.loadProjectConfig)(PROJECT_ROOT);
108
112
  const globalCfg = (0, global_config_js_1.loadGlobalConfig)();
109
113
  const apiKey = process.env.AURA_API_KEY
110
- ?? saved?.apiKey
111
- ?? (0, env_js_1.getApiKey)('DEEPSEEK_API_KEY')
112
- ?? (0, env_js_1.getApiKey)('XIAOMI_API_KEY')
113
- ?? (0, env_js_1.getApiKey)('ANTHROPIC_API_KEY')
114
- ?? (0, env_js_1.getApiKey)('OPENAI_API_KEY')
115
- ?? (0, env_js_1.getApiKey)('GOOGLE_API_KEY')
116
- ?? (0, env_js_1.getApiKey)('OPENROUTER_API_KEY');
114
+ ?? (0, factory_js_1.getApiKeyForModel)(TASK_MODEL);
117
115
  const baseUrl = process.env.AURA_BASE_URL
118
116
  ?? fileConfig.baseUrl
119
- ?? globalCfg?.baseUrl
120
- ?? saved?.baseUrl;
117
+ ?? globalCfg?.baseUrl;
118
+ // Deliberately NOT falling back to the wizard's saved baseUrl here —
119
+ // createProvider() already applies it internally, but only when the
120
+ // saved config's model actually matches TASK_MODEL. Resolving it here
121
+ // too bypasses that check entirely, which is exactly how a MiMo model
122
+ // string previously ended up paired with a DeepSeek endpoint.
121
123
  return (0, factory_js_1.createProvider)({
122
124
  model: TASK_MODEL,
123
125
  apiKey,
@@ -222,8 +224,10 @@ async function executeTask(chatId, task) {
222
224
  maxTurns: 50,
223
225
  disableSpawn: true, // no sub-agents via Telegram for now
224
226
  confirmFn,
227
+ initialHistory: getChatHistory(chatId),
225
228
  });
226
229
  console.log("Agent loop completed");
230
+ setChatHistory(chatId, result.history);
227
231
  // Build a readable response
228
232
  const lines = [];
229
233
  const tag = (0, telegram_safety_js_1.safetyLabel)(safetyState.safetyOn);
@@ -322,6 +326,18 @@ async function sendMessage(chatId, text, parseMode) {
322
326
  await curlPost('sendMessage', body);
323
327
  }
324
328
  }
329
+ // Voice handling lives in telegram-voice.ts — that module has no side
330
+ // effects at import time, unlike this file (which starts a real polling
331
+ // loop unconditionally below), so it's safe to unit test directly.
332
+ async function transcribeVoiceMessage(fileId) {
333
+ return voiceModule.transcribeVoiceMessage(TOKEN, fileId);
334
+ }
335
+ async function textToSpeech(text, apiKey) {
336
+ return voiceModule.textToSpeech(text, apiKey);
337
+ }
338
+ async function sendVoiceMessage(chatId, audioBuffer) {
339
+ return voiceModule.sendVoiceMessage(TOKEN, chatId, audioBuffer);
340
+ }
325
341
  function splitMessage(text, maxLen) {
326
342
  if (text.length <= maxLen)
327
343
  return [text];
@@ -425,6 +441,8 @@ function handleCommand(chatId, text, from) {
425
441
  `/git — Git status`,
426
442
  `/cancel — Cancel stuck task`,
427
443
  `/clear — Clear context`,
444
+ `/sur30 — Webcam surveillance 30 min`,
445
+ `/sur60 — Webcam surveillance 60 min`,
428
446
  ``,
429
447
  `Or just write anything — I'll execute it as an Aura task!`,
430
448
  ].join('\n');
@@ -535,6 +553,7 @@ function handleCommand(chatId, text, from) {
535
553
  return `🌿 Git:\n${result.stdout || '(not a git repo)'}`;
536
554
  }
537
555
  if (lower === '/clear') {
556
+ chatHistories.delete(chatId);
538
557
  return `🧹 Context cleared. Starting fresh. ${tag}`;
539
558
  }
540
559
  if (lower === '/cancel') {
@@ -544,6 +563,21 @@ function handleCommand(chatId, text, from) {
544
563
  }
545
564
  return `ℹ️ No task is running for this chat. ${tag}`;
546
565
  }
566
+ // ── Surveillance commands ─────────────────────────────────────────────
567
+ if (lower === '/sur30' || lower === '/sur60') {
568
+ const duration = lower === '/sur30' ? 30 : 60;
569
+ const script = path.resolve(PROJECT_ROOT, 'surveillance.sh');
570
+ if (!fs.existsSync(script)) {
571
+ return `❌ surveillance.sh not found at ${script}`;
572
+ }
573
+ // Run in background — don't block the bot
574
+ (0, child_process_1.exec)(`nohup bash "${script}" ${duration} > /tmp/sur-${duration}-$(date +%s).log 2>&1 &`, {
575
+ cwd: PROJECT_ROOT,
576
+ timeout: 5_000,
577
+ encoding: 'utf8',
578
+ });
579
+ return `🔒 Surveillance started — ${duration} minutes, snapshots every 5 min.\nYou'll get photos in this chat. ${tag}`;
580
+ }
547
581
  // Looks like a shell command — run directly
548
582
  const looksLikeCommand = /^(ls|cat|pwd|whoami|date|df|du|ps|top|free|uname|which|find|grep|git|npm|node|python|curl)\b/.test(lower);
549
583
  if (looksLikeCommand) {
@@ -580,6 +614,27 @@ function isAuthorized(chatId, fromUser) {
580
614
  * If a task is running, new non-command messages are queued.
581
615
  */
582
616
  const runningTasks = new Set();
617
+ /**
618
+ * Per-chat conversation history. Without this, every Telegram message
619
+ * started a brand-new `runAgentLoop` call with no `initialHistory` — so
620
+ * replies like "B", "Ok", or "/approve" to a previous question had zero
621
+ * context, and Aura would respond as if the conversation had never
622
+ * happened. Keyed by chatId, threaded into runAgentLoop below, and updated
623
+ * with the loop's returned history after each task — same pattern the CLI
624
+ * REPL uses for `activeChatHistory`. Capped per-chat to avoid unbounded
625
+ * growth in a long-running bot process.
626
+ */
627
+ const chatHistories = new Map();
628
+ const MAX_HISTORY_MESSAGES = 200;
629
+ function getChatHistory(chatId) {
630
+ return chatHistories.get(chatId) ?? [];
631
+ }
632
+ function setChatHistory(chatId, history) {
633
+ const trimmed = history.length > MAX_HISTORY_MESSAGES
634
+ ? history.slice(history.length - MAX_HISTORY_MESSAGES)
635
+ : history;
636
+ chatHistories.set(chatId, trimmed);
637
+ }
583
638
  async function poll() {
584
639
  let offset = loadOffset();
585
640
  console.log('💎 Aura Telegram Bot started');
@@ -630,12 +685,26 @@ async function poll() {
630
685
  // Don't reply to unauthorized users — don't reveal the bot exists
631
686
  continue;
632
687
  }
633
- // ── Handle voice messages (Phase 2 placeholder) ──────────────────
688
+ // ── Handle voice messages: transcribe, then fall through into the
689
+ // same pipeline as typed text ─────────────────────────────────────
690
+ let isVoiceInput = false;
691
+ let text = msg.text;
634
692
  if (msg.voice) {
635
- await sendMessage(chatId, '🎤 Voice messages are not yet supported. Please send text.');
636
- continue;
693
+ isVoiceInput = true;
694
+ try {
695
+ text = await transcribeVoiceMessage(msg.voice.file_id);
696
+ if (!text) {
697
+ await sendMessage(chatId, "🎤 Couldn't make out any words in that voice message — try again?");
698
+ continue;
699
+ }
700
+ console.log(`🎤 [${from}] transcribed: ${text}`);
701
+ }
702
+ catch (e) {
703
+ console.error(`❌ Voice transcription error: ${e.message}`);
704
+ await sendMessage(chatId, `🎤 Couldn't transcribe that voice message: ${e.message}`);
705
+ continue;
706
+ }
637
707
  }
638
- const text = msg.text;
639
708
  if (!text)
640
709
  continue;
641
710
  console.log(`📩 [${from}]: ${text}`);
@@ -671,6 +740,22 @@ async function poll() {
671
740
  .then(async (response) => {
672
741
  await sendMessage(chatId, response);
673
742
  console.log(`📤 Task result sent to ${from}`);
743
+ if (isVoiceInput) {
744
+ try {
745
+ const groqKey = (0, env_js_1.getApiKey)('GROQ_API_KEY', 'groq_api_key');
746
+ if (groqKey) {
747
+ const audio = await textToSpeech(response, groqKey);
748
+ await sendVoiceMessage(chatId, audio);
749
+ console.log(`🎤 Voice reply sent to ${from}`);
750
+ }
751
+ }
752
+ catch (e) {
753
+ // Voice reply is a bonus on top of the text reply already
754
+ // sent above — never let a TTS failure look like the task
755
+ // itself failed.
756
+ console.error(`⚠️ Voice reply failed (text reply already sent): ${e.message}`);
757
+ }
758
+ }
674
759
  })
675
760
  .catch(async (e) => {
676
761
  console.error(`❌ Task error: ${e.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"telegram-bot.js","sourceRoot":"","sources":["../../src/tools/telegram-bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram-bot.js","sourceRoot":"","sources":["../../src/tools/telegram-bot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /** Downloads a Telegram-hosted file (by file_id) to a local temp path. */
2
+ export declare function downloadTelegramFile(token: string, fileId: string): Promise<string>;
3
+ /**
4
+ * Calls Groq's text-to-speech endpoint and returns raw audio bytes.
5
+ * Requests 'ogg' specifically — that's the one format both Groq supports
6
+ * as a response_format AND Telegram's sendVoice expects natively for the
7
+ * round voice-bubble UI, so no local transcoding/ffmpeg step is needed.
8
+ */
9
+ export declare function textToSpeech(text: string, apiKey: string): Promise<Buffer>;
10
+ /** Sends a voice reply (ogg/opus audio) to a chat via Telegram's sendVoice. */
11
+ export declare function sendVoiceMessage(token: string, chatId: string | number, audioBuffer: Buffer): Promise<void>;
12
+ /**
13
+ * Downloads a voice message, transcribes it via Groq Whisper, and returns
14
+ * the raw transcribed text — ready to feed straight into the same pipeline
15
+ * that handles typed text. Throws on any failure; caller decides how to
16
+ * report that back to the chat.
17
+ *
18
+ * Deliberately has its own curl-based Whisper call rather than reusing
19
+ * audio-transcribe.ts's callGroqWhisper (which uses native fetch) — keeps
20
+ * the bot's voice pipeline fully insulated from the fetch issue above.
21
+ */
22
+ export declare function transcribeVoiceMessage(token: string, fileId: string): Promise<string>;