visionclaw 0.1.185 → 0.1.187-beta.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 (69) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/dist/agent/command-handlers.d.ts.map +1 -1
  3. package/dist/agent/command-handlers.js +97 -51
  4. package/dist/agent/command-handlers.js.map +1 -1
  5. package/dist/agent/interrupt-handler.d.ts.map +1 -1
  6. package/dist/agent/interrupt-handler.js +5 -3
  7. package/dist/agent/interrupt-handler.js.map +1 -1
  8. package/dist/agent/loop.d.ts.map +1 -1
  9. package/dist/agent/loop.js +10 -0
  10. package/dist/agent/loop.js.map +1 -1
  11. package/dist/agent/status.d.ts.map +1 -1
  12. package/dist/agent/status.js +1 -34
  13. package/dist/agent/status.js.map +1 -1
  14. package/dist/agent/subscription-gate.d.ts.map +1 -1
  15. package/dist/agent/subscription-gate.js +4 -3
  16. package/dist/agent/subscription-gate.js.map +1 -1
  17. package/dist/agent/system-prompt.d.ts.map +1 -1
  18. package/dist/agent/system-prompt.js +1 -0
  19. package/dist/agent/system-prompt.js.map +1 -1
  20. package/dist/agent/wake-cycle-runner.d.ts.map +1 -1
  21. package/dist/agent/wake-cycle-runner.js +4 -2
  22. package/dist/agent/wake-cycle-runner.js.map +1 -1
  23. package/dist/channels/interface.d.ts +25 -0
  24. package/dist/channels/interface.d.ts.map +1 -1
  25. package/dist/channels/manager.d.ts +13 -0
  26. package/dist/channels/manager.d.ts.map +1 -1
  27. package/dist/channels/manager.js +30 -0
  28. package/dist/channels/manager.js.map +1 -1
  29. package/dist/channels/telegram.d.ts +34 -0
  30. package/dist/channels/telegram.d.ts.map +1 -1
  31. package/dist/channels/telegram.js +248 -9
  32. package/dist/channels/telegram.js.map +1 -1
  33. package/dist/config/types.d.ts +2 -0
  34. package/dist/config/types.d.ts.map +1 -1
  35. package/dist/config/types.js +2 -0
  36. package/dist/config/types.js.map +1 -1
  37. package/dist/i18n/index.d.ts +25 -0
  38. package/dist/i18n/index.d.ts.map +1 -0
  39. package/dist/i18n/index.js +40 -0
  40. package/dist/i18n/index.js.map +1 -0
  41. package/dist/i18n/messages.d.ts +314 -0
  42. package/dist/i18n/messages.d.ts.map +1 -0
  43. package/dist/i18n/messages.js +337 -0
  44. package/dist/i18n/messages.js.map +1 -0
  45. package/dist/obs/notify.d.ts.map +1 -1
  46. package/dist/obs/notify.js +5 -0
  47. package/dist/obs/notify.js.map +1 -1
  48. package/dist/obs/server.d.ts.map +1 -1
  49. package/dist/obs/server.js +252 -17
  50. package/dist/obs/server.js.map +1 -1
  51. package/dist/onboarding/bot-profile.d.ts.map +1 -1
  52. package/dist/onboarding/bot-profile.js +1 -0
  53. package/dist/onboarding/bot-profile.js.map +1 -1
  54. package/dist/onboarding/remote-set-owner.d.ts.map +1 -1
  55. package/dist/onboarding/remote-set-owner.js +1 -0
  56. package/dist/onboarding/remote-set-owner.js.map +1 -1
  57. package/dist/onboarding/set-owner.d.ts.map +1 -1
  58. package/dist/onboarding/set-owner.js +1 -0
  59. package/dist/onboarding/set-owner.js.map +1 -1
  60. package/dist/onboarding/telegram-onboarding.d.ts +17 -4
  61. package/dist/onboarding/telegram-onboarding.d.ts.map +1 -1
  62. package/dist/onboarding/telegram-onboarding.js +89 -5
  63. package/dist/onboarding/telegram-onboarding.js.map +1 -1
  64. package/dist/utils/exec.d.ts +19 -0
  65. package/dist/utils/exec.d.ts.map +1 -1
  66. package/dist/utils/exec.js +57 -1
  67. package/dist/utils/exec.js.map +1 -1
  68. package/dist-agent/bundle.cjs +3635 -3127
  69. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## [0.1.186](https://github.com/babelcloud/visionclaw/compare/v0.1.185...v0.1.186) (2026-04-22)
2
+
3
+
1
4
  ## [0.1.185](https://github.com/babelcloud/visionclaw/compare/v0.1.184...v0.1.185) (2026-04-22)
2
5
 
3
6
  ### Bug Fixes
@@ -1 +1 @@
1
- {"version":3,"file":"command-handlers.d.ts","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAuBxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,YAAY,CAAC;AAgBlE,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAusBtE"}
1
+ {"version":3,"file":"command-handlers.d.ts","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA2BxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,YAAY,CAAC;AAiBlE,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAqwBtE"}
@@ -1,5 +1,7 @@
1
+ import { t, resolveLocale } from "../i18n/index.js";
1
2
  import { runGracefulShutdown } from "./state.js";
2
3
  import { saveOwnerConfig, loadConfig, saveConfig, buildPricingUrl } from "../config/index.js";
4
+ import { execSudo } from "../utils/exec.js";
3
5
  import { logger } from "../logger.js";
4
6
  import { buildHelpText, buildStatusReport } from "./status.js";
5
7
  import { DEFAULT_BASE_URL as WEIXIN_DEFAULT_BASE_URL, saveWeixinAccount, registerWeixinAccountId, } from "@tencent-weixin/openclaw-weixin/src/auth/accounts.js";
@@ -15,6 +17,7 @@ import { scheduleRestart } from "../utils/restart.js";
15
17
  export function registerCommandHandlers(deps) {
16
18
  const { agentState, channelManager, messageQueue, session, config, ownerConfig, heartbeat } = deps;
17
19
  const pricingUrl = buildPricingUrl(config);
20
+ const getLocale = () => resolveLocale(ownerConfig.language);
18
21
  channelManager.on("stop_request", (req) => {
19
22
  if (agentState.busy && !agentState.stopRequested) {
20
23
  logger.system(`Agent stop requested via ${req.channel} by ${req.sender}`);
@@ -29,14 +32,14 @@ export function registerCommandHandlers(deps) {
29
32
  });
30
33
  agentState.requestStop();
31
34
  channelManager
32
- .sendMessage(req.channel, req.sender, "Stop signal sent. The agent will finish its current step and stop.")
35
+ .sendMessage(req.channel, req.sender, t("cmd.stop.sent", getLocale()))
33
36
  .catch((err) => {
34
37
  logger.warn(`Failed to send stop confirmation: ${err instanceof Error ? err.message : String(err)}`);
35
38
  });
36
39
  }
37
40
  else {
38
41
  channelManager
39
- .sendMessage(req.channel, req.sender, "The agent is not currently working.")
42
+ .sendMessage(req.channel, req.sender, t("cmd.stop.not_working", getLocale()))
40
43
  .catch((err) => {
41
44
  logger.warn(`Failed to send stop reply: ${err instanceof Error ? err.message : String(err)}`);
42
45
  });
@@ -49,7 +52,7 @@ export function registerCommandHandlers(deps) {
49
52
  saveOwnerConfig(ownerConfig);
50
53
  logger.system(`Sleep interval changed from ${oldMs / 60000}m to ${minutes}m by ${req.sender} via ${req.channel}`);
51
54
  channelManager
52
- .sendMessage(req.channel, req.sender, `Sleep interval changed from ${oldMs / 60000}m to ${minutes}m.`)
55
+ .sendMessage(req.channel, req.sender, t("cmd.sleep.changed", getLocale(), String(oldMs / 60000), String(minutes)))
53
56
  .catch((err) => {
54
57
  logger.warn(`Failed to send sleep confirmation: ${err instanceof Error ? err.message : String(err)}`);
55
58
  });
@@ -60,14 +63,14 @@ export function registerCommandHandlers(deps) {
60
63
  const { generateToken } = await import("../obs/token.js");
61
64
  const tunnelUrl = agentState.consoleUrl;
62
65
  if (!tunnelUrl) {
63
- await channelManager.sendMessage(req.channel, req.sender, "\u{1F6AB} Remote desktop is unavailable: tunnel URL not set. Make sure the tunnel is running.");
66
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.rdp.unavailable", getLocale()));
64
67
  return;
65
68
  }
66
69
  const ttl = req.ttlMinutes && req.ttlMinutes > 0 ? Math.min(req.ttlMinutes, 480) : 30;
67
70
  const { token, expiresAt } = generateToken(ttl, `Requested via /rdp by ${req.sender}`);
68
71
  const baseUrl = tunnelUrl.replace(/\/(obs|console)(\/.*)?$/, "").replace(/\/$/, "");
69
72
  const url = `${baseUrl}/rdp/${token}`;
70
- await channelManager.sendMessage(req.channel, req.sender, `\u{1F5A5}\uFE0F Remote desktop link (expires in ${ttl} min):\n${url}\n\nExpires: ${expiresAt}`);
73
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.rdp.link", getLocale(), String(ttl), url, expiresAt));
71
74
  };
72
75
  doRdp().catch((err) => {
73
76
  logger.warn(`Failed to handle remote_desktop_request: ${err instanceof Error ? err.message : String(err)}`);
@@ -77,7 +80,7 @@ export function registerCommandHandlers(deps) {
77
80
  const url = agentState.consoleUrl;
78
81
  const reply = url
79
82
  ? `${url}/console`
80
- : "Console URL is not available yet (tunnel may still be starting).";
83
+ : t("cmd.console.unavailable", getLocale());
81
84
  channelManager
82
85
  .sendMessage(req.channel, req.sender, reply)
83
86
  .catch((err) => {
@@ -96,7 +99,7 @@ export function registerCommandHandlers(deps) {
96
99
  timestamp: new Date().toISOString(),
97
100
  });
98
101
  channelManager
99
- .sendMessage(req.channel, req.sender, "Restarting agent in 5 seconds...")
102
+ .sendMessage(req.channel, req.sender, t("cmd.restart.confirm", getLocale()))
100
103
  .catch((err) => {
101
104
  logger.warn(`Failed to send restart confirmation: ${err instanceof Error ? err.message : String(err)}`);
102
105
  });
@@ -118,14 +121,14 @@ export function registerCommandHandlers(deps) {
118
121
  logger.system(`Tunnel restart requested by ${req.sender} via ${req.channel}`);
119
122
  if (!agentState.restartTunnel) {
120
123
  channelManager
121
- .sendMessage(req.channel, req.sender, "Tunnel is not configured.")
124
+ .sendMessage(req.channel, req.sender, t("cmd.tunnel.not_configured", getLocale()))
122
125
  .catch((err) => {
123
126
  logger.warn(`Failed to send tunnel reply: ${err instanceof Error ? err.message : String(err)}`);
124
127
  });
125
128
  return;
126
129
  }
127
130
  channelManager
128
- .sendMessage(req.channel, req.sender, "Restarting tunnel...")
131
+ .sendMessage(req.channel, req.sender, t("cmd.tunnel.restarting", getLocale()))
129
132
  .catch((err) => {
130
133
  logger.warn(`Failed to send tunnel reply: ${err instanceof Error ? err.message : String(err)}`);
131
134
  });
@@ -160,19 +163,19 @@ export function registerCommandHandlers(deps) {
160
163
  channelManager.on("backup_request", (req) => {
161
164
  logger.system(`Backup requested by ${req.sender} via ${req.channel}`);
162
165
  channelManager
163
- .sendMessage(req.channel, req.sender, "Starting backup... This may take a few minutes.")
166
+ .sendMessage(req.channel, req.sender, t("cmd.backup.starting", getLocale()))
164
167
  .catch((err) => {
165
168
  logger.warn(`Failed to send backup start message: ${err instanceof Error ? err.message : String(err)}`);
166
169
  });
167
170
  const doBackup = async () => {
168
171
  const { runBackup } = await import("./backup.js");
169
172
  const link = await runBackup(config, ownerConfig.ownerEmail);
170
- await channelManager.sendMessage(req.channel, req.sender, `Backup complete! Download from Google Drive:\n${link}`);
173
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.backup.complete", getLocale(), link));
171
174
  };
172
175
  doBackup().catch((err) => {
173
176
  logger.err(`Backup failed: ${err instanceof Error ? err.message : String(err)}`);
174
177
  channelManager
175
- .sendMessage(req.channel, req.sender, `Backup failed: ${err instanceof Error ? err.message : String(err)}`)
178
+ .sendMessage(req.channel, req.sender, t("cmd.backup.failed", getLocale(), err instanceof Error ? err.message : String(err)))
176
179
  .catch((sendErr) => {
177
180
  logger.warn(`Failed to send backup error: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
178
181
  });
@@ -184,7 +187,7 @@ export function registerCommandHandlers(deps) {
184
187
  const label = req.enabled ? "on" : "off";
185
188
  logger.system(`Silent compaction mode set to ${label} by ${req.sender} via ${req.channel}`);
186
189
  channelManager
187
- .sendMessage(req.channel, req.sender, `Silent compaction mode is now ${label}. ${req.enabled ? "Compaction notifications will be suppressed." : "You'll see notifications when context is compacted."}`)
190
+ .sendMessage(req.channel, req.sender, req.enabled ? t("cmd.silent.on", getLocale()) : t("cmd.silent.off", getLocale()))
188
191
  .catch((err) => {
189
192
  logger.warn(`Failed to send silent mode confirmation: ${err instanceof Error ? err.message : String(err)}`);
190
193
  });
@@ -193,14 +196,14 @@ export function registerCommandHandlers(deps) {
193
196
  logger.system(`WeChat login requested by ${req.sender} via ${req.channel}`);
194
197
  const doWeixinLogin = async () => {
195
198
  const apiBaseUrl = config.channels.weixin?.baseUrl ?? WEIXIN_DEFAULT_BASE_URL;
196
- await channelManager.sendMessage(req.channel, req.sender, "Starting WeChat QR login...");
199
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.weixin.starting", getLocale()));
197
200
  const startResult = await startWeixinLoginWithQr({
198
201
  apiBaseUrl,
199
202
  verbose: true,
200
203
  force: true,
201
204
  });
202
205
  if (!startResult.qrcodeUrl) {
203
- await channelManager.sendMessage(req.channel, req.sender, `WeChat login failed: ${startResult.message}`);
206
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.weixin.failed", getLocale(), startResult.message));
204
207
  return;
205
208
  }
206
209
  const fs = await import("node:fs");
@@ -214,7 +217,7 @@ export function registerCommandHandlers(deps) {
214
217
  width: 512,
215
218
  margin: 2,
216
219
  });
217
- await channelManager.sendMessage(req.channel, req.sender, "Save this QR code image, then open WeChat and scan it to log in.\nWaiting for scan (up to 8 minutes)...", [{ type: "image", localPath: qrImagePath, mimeType: "image/png" }]);
220
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.weixin.scan_qr", getLocale()), [{ type: "image", localPath: qrImagePath, mimeType: "image/png" }]);
218
221
  fs.unlink(qrImagePath, () => { });
219
222
  const result = await waitForWeixinLogin({
220
223
  sessionKey: startResult.sessionKey,
@@ -223,7 +226,7 @@ export function registerCommandHandlers(deps) {
223
226
  timeoutMs: 480_000,
224
227
  });
225
228
  if (!result.connected || !result.accountId) {
226
- await channelManager.sendMessage(req.channel, req.sender, `WeChat login failed: ${result.message}`);
229
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.weixin.failed", getLocale(), result.message));
227
230
  return;
228
231
  }
229
232
  const accountId = normalizeAccountId(result.accountId);
@@ -241,7 +244,7 @@ export function registerCommandHandlers(deps) {
241
244
  cdnBaseUrl: freshConfig.channels.weixin?.cdnBaseUrl ?? "https://novac2c.cdn.weixin.qq.com/c2c",
242
245
  };
243
246
  saveConfig(freshConfig);
244
- await channelManager.sendMessage(req.channel, req.sender, `${result.message}\nAccount: ${accountId}\nAgent will restart shortly and be back soon.`);
247
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.weixin.success", getLocale(), result.message, accountId));
245
248
  const shutdownHook = async () => {
246
249
  if (deps.obsClose)
247
250
  await deps.obsClose();
@@ -252,7 +255,7 @@ export function registerCommandHandlers(deps) {
252
255
  doWeixinLogin().catch((err) => {
253
256
  logger.err(`WeChat login failed: ${err instanceof Error ? err.message : String(err)}`);
254
257
  channelManager
255
- .sendMessage(req.channel, req.sender, `WeChat login error: ${err instanceof Error ? err.message : String(err)}`)
258
+ .sendMessage(req.channel, req.sender, t("cmd.weixin.error", getLocale(), err instanceof Error ? err.message : String(err)))
256
259
  .catch((sendErr) => {
257
260
  logger.warn(`Failed to send weixin login error: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
258
261
  });
@@ -279,7 +282,7 @@ export function registerCommandHandlers(deps) {
279
282
  doScreenshot().catch((err) => {
280
283
  logger.warn(`Failed to send screenshot: ${err instanceof Error ? err.message : String(err)}`);
281
284
  channelManager
282
- .sendMessage(req.channel, req.sender, `Screenshot failed: ${err instanceof Error ? err.message : String(err)}`)
285
+ .sendMessage(req.channel, req.sender, t("cmd.screenshot.failed", getLocale(), err instanceof Error ? err.message : String(err)))
283
286
  .catch((sendErr) => {
284
287
  logger.warn(`Failed to send screenshot error: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
285
288
  });
@@ -288,7 +291,7 @@ export function registerCommandHandlers(deps) {
288
291
  channelManager.on("upgrade_beta_request", (req) => {
289
292
  logger.system(`Beta upgrade requested by ${req.sender} via ${req.channel}`);
290
293
  const doUpgradeBeta = async () => {
291
- await channelManager.sendMessage(req.channel, req.sender, "Checking for beta updates...");
294
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.upgrade_beta.checking", getLocale()));
292
295
  const { performUpgrade } = await import("../tools/upgrade.js");
293
296
  const result = await performUpgrade({ beta: true });
294
297
  await channelManager.sendMessage(req.channel, req.sender, result.message);
@@ -296,7 +299,7 @@ export function registerCommandHandlers(deps) {
296
299
  doUpgradeBeta().catch((err) => {
297
300
  logger.err(`Beta upgrade failed: ${err instanceof Error ? err.message : String(err)}`);
298
301
  channelManager
299
- .sendMessage(req.channel, req.sender, `Beta upgrade failed: ${err instanceof Error ? err.message : String(err)}`)
302
+ .sendMessage(req.channel, req.sender, t("cmd.upgrade_beta.failed", getLocale(), err instanceof Error ? err.message : String(err)))
300
303
  .catch((sendErr) => {
301
304
  logger.warn(`Failed to send beta upgrade error: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
302
305
  });
@@ -305,7 +308,7 @@ export function registerCommandHandlers(deps) {
305
308
  channelManager.on("upgrade_dev_request", (req) => {
306
309
  logger.system(`Dev upgrade requested by ${req.sender} via ${req.channel} (tag: ${req.tag})`);
307
310
  const doUpgradeDev = async () => {
308
- await channelManager.sendMessage(req.channel, req.sender, `Checking for dev updates (tag: ${req.tag})...`);
311
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.upgrade_dev.checking", getLocale(), req.tag));
309
312
  const { performUpgrade } = await import("../tools/upgrade.js");
310
313
  const result = await performUpgrade({ tag: req.tag });
311
314
  await channelManager.sendMessage(req.channel, req.sender, result.message);
@@ -313,7 +316,7 @@ export function registerCommandHandlers(deps) {
313
316
  doUpgradeDev().catch((err) => {
314
317
  logger.err(`Dev upgrade failed: ${err instanceof Error ? err.message : String(err)}`);
315
318
  channelManager
316
- .sendMessage(req.channel, req.sender, `Dev upgrade failed: ${err instanceof Error ? err.message : String(err)}`)
319
+ .sendMessage(req.channel, req.sender, t("cmd.upgrade_dev.failed", getLocale(), err instanceof Error ? err.message : String(err)))
317
320
  .catch((sendErr) => {
318
321
  logger.warn(`Failed to send dev upgrade error: ${sendErr instanceof Error ? sendErr.message : String(sendErr)}`);
319
322
  });
@@ -324,16 +327,16 @@ export function registerCommandHandlers(deps) {
324
327
  const doSubscribe = async () => {
325
328
  const portal = await heartbeat.getBillingPortal();
326
329
  if (!portal) {
327
- await channelManager.sendMessage(req.channel, req.sender, "Subscription info is not available (billing service unreachable or not configured).");
330
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.subscribe.unavailable", getLocale()));
328
331
  return;
329
332
  }
330
333
  const lines = [];
331
- lines.push("\u{1f4cb} Subscription Status");
334
+ lines.push(t("cmd.subscribe.title", getLocale()));
332
335
  // Free trial / no subscription — direct to pricing page
333
336
  if (portal.status === "none" || (!portal.planName && !portal.portalUrl)) {
334
- lines.push("Status: Free Trial");
337
+ lines.push(t("cmd.subscribe.free_trial", getLocale()));
335
338
  lines.push("");
336
- lines.push("No active subscription. Browse plans and subscribe:");
339
+ lines.push(t("cmd.subscribe.no_subscription", getLocale()));
337
340
  lines.push(pricingUrl);
338
341
  await channelManager.sendMessage(req.channel, req.sender, lines.join("\n"));
339
342
  return;
@@ -341,9 +344,9 @@ export function registerCommandHandlers(deps) {
341
344
  if (portal.planName) {
342
345
  lines.push(`Plan: ${portal.planName}`);
343
346
  }
344
- const statusLabel = portal.status === "active" ? "Active \u2705"
345
- : portal.status === "past_due" ? "Past Due \u26a0\ufe0f"
346
- : portal.status === "pending" ? "Pending"
347
+ const statusLabel = portal.status === "active" ? t("cmd.subscribe.status_active", getLocale())
348
+ : portal.status === "past_due" ? t("cmd.subscribe.status_past_due", getLocale())
349
+ : portal.status === "pending" ? t("cmd.subscribe.status_pending", getLocale())
347
350
  : portal.status.charAt(0).toUpperCase() + portal.status.slice(1);
348
351
  lines.push(`Status: ${statusLabel}`);
349
352
  if (portal.currentPeriodEnd) {
@@ -352,7 +355,7 @@ export function registerCommandHandlers(deps) {
352
355
  }
353
356
  if (portal.portalUrl) {
354
357
  lines.push("");
355
- lines.push(`\u{1f517} Manage your subscription:\n${portal.portalUrl}`);
358
+ lines.push(`${t("cmd.subscribe.manage_link", getLocale())}\n${portal.portalUrl}`);
356
359
  }
357
360
  await channelManager.sendMessage(req.channel, req.sender, lines.join("\n"));
358
361
  };
@@ -364,18 +367,18 @@ export function registerCommandHandlers(deps) {
364
367
  logger.system(`Context refresh requested by ${req.sender} via ${req.channel}`);
365
368
  const doRefresh = async () => {
366
369
  if (agentState.busy) {
367
- await channelManager.sendMessage(req.channel, req.sender, "The agent is currently busy. Please /stop first, then /refresh.");
370
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.refresh.busy", getLocale()));
368
371
  return;
369
372
  }
370
373
  const activeSession = session.activeSession;
371
374
  const sessionId = activeSession.getSessionId();
372
375
  if (!sessionId) {
373
- await channelManager.sendMessage(req.channel, req.sender, "No active session to refresh. The agent will start fresh on the next wake cycle.");
376
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.refresh.no_session", getLocale()));
374
377
  return;
375
378
  }
376
- await channelManager.sendMessage(req.channel, req.sender, "Refreshing context... This may take a moment.");
379
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.refresh.refreshing", getLocale()));
377
380
  await activeSession.requestCompaction();
378
- await channelManager.sendMessage(req.channel, req.sender, "Context refreshed.");
381
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.refresh.done", getLocale()));
379
382
  };
380
383
  doRefresh().catch((err) => {
381
384
  logger.warn(`Failed to handle refresh request: ${err instanceof Error ? err.message : String(err)}`);
@@ -392,33 +395,33 @@ export function registerCommandHandlers(deps) {
392
395
  const queueSize = messageQueue.size();
393
396
  if (!agentState.busy && todos.length === 0) {
394
397
  channelManager
395
- .sendMessage(req.channel, req.sender, "📋 No active tasks.")
398
+ .sendMessage(req.channel, req.sender, t("cmd.tasks.no_tasks", getLocale()))
396
399
  .catch((err) => {
397
400
  logger.warn(`Failed to send tasks reply: ${err instanceof Error ? err.message : String(err)}`);
398
401
  });
399
402
  return;
400
403
  }
401
404
  const lines = [];
402
- lines.push("📋 Tasks");
405
+ lines.push(t("cmd.tasks.title", getLocale()));
403
406
  lines.push("");
404
407
  // Status line
405
408
  if (agentState.busy && elapsedMs !== null) {
406
409
  const sec = Math.floor(elapsedMs / 1000);
407
410
  const m = Math.floor(sec / 60);
408
411
  const s = sec % 60;
409
- lines.push(`🔵 Status: Working (${m}m ${s}s)`);
412
+ lines.push(t("cmd.tasks.status_working", getLocale(), String(m), String(s)));
410
413
  }
411
414
  else {
412
- lines.push(" Status: Idle");
415
+ lines.push(t("cmd.tasks.status_idle", getLocale()));
413
416
  }
414
417
  if (taskDesc) {
415
- lines.push(`📝 Task: "${taskDesc}"`);
418
+ lines.push(t("cmd.tasks.task_label", getLocale(), taskDesc));
416
419
  }
417
- lines.push(`🔄 Session: ${activeMode}`);
420
+ lines.push(t("cmd.tasks.session_label", getLocale(), activeMode));
418
421
  // Todo list
419
422
  if (todos.length > 0) {
420
423
  lines.push("");
421
- lines.push("Todo List:");
424
+ lines.push(t("cmd.tasks.todo_list", getLocale()));
422
425
  for (const todo of todos) {
423
426
  const icon = todo.status === "in_progress" ? "🔵" : todo.status === "completed" ? "✅" : "⚪";
424
427
  lines.push(` ${icon} ${todo.status === "in_progress" ? "in progress" : todo.status} — ${todo.content}`);
@@ -427,14 +430,14 @@ export function registerCommandHandlers(deps) {
427
430
  // Recent steps (last 5)
428
431
  if (recentActions.length > 0) {
429
432
  lines.push("");
430
- lines.push("Recent Steps (last 5):");
433
+ lines.push(t("cmd.tasks.recent_steps", getLocale()));
431
434
  const last5 = recentActions.slice(-5);
432
435
  for (const action of last5) {
433
436
  lines.push(` ${action}`);
434
437
  }
435
438
  }
436
439
  lines.push("");
437
- lines.push(`Queue: ${queueSize} pending message${queueSize === 1 ? "" : "s"}`);
440
+ lines.push(t("cmd.tasks.queue", getLocale(), String(queueSize), queueSize === 1 ? "" : "s"));
438
441
  channelManager
439
442
  .sendMessage(req.channel, req.sender, lines.join("\n"))
440
443
  .catch((err) => {
@@ -447,9 +450,9 @@ export function registerCommandHandlers(deps) {
447
450
  saveOwnerConfig(ownerConfig);
448
451
  logger.system(`Android-use toggled from ${prev} to ${req.enabled} by ${req.sender} via ${req.channel}`);
449
452
  const emoji = req.enabled ? "📱" : "🚫";
450
- const state = req.enabled ? "ON" : "OFF";
453
+ const state = req.enabled ? t("common.on", getLocale()) : t("common.off", getLocale());
451
454
  channelManager
452
- .sendMessage(req.channel, req.sender, `${emoji} Android use tools turned ${state}. Restarting to apply...`)
455
+ .sendMessage(req.channel, req.sender, t("cmd.android_use.toggle", getLocale(), emoji, state))
453
456
  .then(() => {
454
457
  // Schedule restart so the new tool set takes effect
455
458
  scheduleRestart(2000);
@@ -460,13 +463,13 @@ export function registerCommandHandlers(deps) {
460
463
  });
461
464
  channelManager.on("chat_monitor_request", (req) => {
462
465
  const emoji = req.enabled ? "💬" : "🚫";
463
- const state = req.enabled ? "ON" : "OFF";
466
+ const state = req.enabled ? t("common.on", getLocale()) : t("common.off", getLocale());
464
467
  const pm2Action = req.enabled ? "startChatMonitor" : "stopChatMonitor";
465
468
  void (async () => {
466
469
  try {
467
470
  const mod = await import("../utils/chat-monitor.js");
468
471
  if (req.enabled && !mod.hasAnyChatDb()) {
469
- await channelManager.sendMessage(req.channel, req.sender, `${emoji} Chat monitor stays OFF because no local chat databases were found (checked WeChat and Feishu). Install and open a supported chat app first, then try again.`);
472
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.chat_monitor.no_db", getLocale(), emoji));
470
473
  return;
471
474
  }
472
475
  const prev = ownerConfig.chatMonitorEnabled;
@@ -474,18 +477,61 @@ export function registerCommandHandlers(deps) {
474
477
  saveOwnerConfig(ownerConfig);
475
478
  logger.system(`Chat monitor toggled from ${prev} to ${req.enabled} by ${req.sender} via ${req.channel}`);
476
479
  mod[pm2Action]();
477
- await channelManager.sendMessage(req.channel, req.sender, `${emoji} Chat monitor turned ${state}.`);
480
+ await channelManager.sendMessage(req.channel, req.sender, t("cmd.chat_monitor.toggle", getLocale(), emoji, state));
478
481
  }
479
482
  catch (err) {
480
483
  const errMsg = err instanceof Error ? err.message : String(err);
481
484
  logger.warn(`Failed to ${pm2Action}: ${errMsg}`);
482
485
  await channelManager
483
- .sendMessage(req.channel, req.sender, `${emoji} Chat monitor config set to ${state}, but pm2 action failed: ${errMsg}`)
486
+ .sendMessage(req.channel, req.sender, t("cmd.chat_monitor.error", getLocale(), emoji, state, errMsg))
484
487
  .catch((_sendErr) => {
485
488
  logger.warn(`Failed to send chat-monitor error reply: ${_sendErr instanceof Error ? _sendErr.message : String(_sendErr)}`);
486
489
  });
487
490
  }
488
491
  })();
489
492
  });
493
+ channelManager.on("set_request", (req) => {
494
+ logger.system(`Settings menu requested by ${req.sender} via ${req.channel}`);
495
+ channelManager
496
+ .sendTelegramSetMenu(req.chatId)
497
+ .catch((err) => {
498
+ logger.warn(`Failed to send /settings menu: ${err instanceof Error ? err.message : String(err)}`);
499
+ });
500
+ });
501
+ channelManager.on("set_language_selected", (event) => {
502
+ const newLocale = resolveLocale(event.language);
503
+ ownerConfig.language = event.language;
504
+ saveOwnerConfig(ownerConfig);
505
+ logger.system(`Language changed to "${event.language}" via /settings`);
506
+ const langLabel = event.language === "zh" ? "中文" : "English";
507
+ channelManager
508
+ .sendMessage("telegram", String(event.chatId), t("cmd.set.language_changed", newLocale, langLabel))
509
+ .catch((err) => {
510
+ logger.warn(`Failed to send language change confirmation: ${err instanceof Error ? err.message : String(err)}`);
511
+ });
512
+ });
513
+ channelManager.on("set_timezone_selected", (event) => {
514
+ const currentLocale = resolveLocale(ownerConfig.language);
515
+ ownerConfig.timezone = event.timezone;
516
+ saveOwnerConfig(ownerConfig);
517
+ logger.system(`Timezone changed to "${event.timezone}" via /settings`);
518
+ const doSetTimezone = async () => {
519
+ try {
520
+ await execSudo(["systemsetup", "-settimezone", event.timezone], {
521
+ password: config.systemPassword,
522
+ timeoutMs: 10_000,
523
+ });
524
+ await channelManager.sendMessage("telegram", String(event.chatId), t("cmd.set.timezone_changed", currentLocale, event.timezone));
525
+ }
526
+ catch (err) {
527
+ const errMsg = err instanceof Error ? err.message : String(err);
528
+ logger.warn(`Failed to set system timezone: ${errMsg}`);
529
+ await channelManager.sendMessage("telegram", String(event.chatId), t("cmd.set.timezone_failed", currentLocale, event.timezone, errMsg));
530
+ }
531
+ };
532
+ doSetTimezone().catch((err) => {
533
+ logger.warn(`Failed to handle timezone change: ${err instanceof Error ? err.message : String(err)}`);
534
+ });
535
+ });
490
536
  }
491
537
  //# sourceMappingURL=command-handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-handlers.js","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-handlers.js","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interrupt-handler.d.ts","sourceRoot":"","sources":["../../src/agent/interrupt-handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAO7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAKrE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,MAAM,UAAU,CAAC;IAChC,qEAAqE;IACrE,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,4EAA4E;IAC5E,OAAO,CAAC,gBAAgB,CAAqB;gBAEjC,IAAI,EAAE,oBAAoB;IAItC;;;OAGG;IACH,yBAAyB,IAAI,IAAI;IAIjC,OAAO,CAAC,+BAA+B;IAevC;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAQhB,OAAO,IAAI,IAAI;IAOf;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwD7D,OAAO,CAAC,OAAO;IAQf;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAOzB;;;OAGG;YACW,0BAA0B;IAgCxC;;;;;;;OAOG;YACW,sBAAsB;YAyFtB,YAAY;CA4K3B"}
1
+ {"version":3,"file":"interrupt-handler.d.ts","sourceRoot":"","sources":["../../src/agent/interrupt-handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAQ7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAKrE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,MAAM,UAAU,CAAC;IAChC,qEAAqE;IACrE,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,4EAA4E;IAC5E,OAAO,CAAC,gBAAgB,CAAqB;gBAEjC,IAAI,EAAE,oBAAoB;IAItC;;;OAGG;IACH,yBAAyB,IAAI,IAAI;IAIjC,OAAO,CAAC,+BAA+B;IAevC;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAQhB,OAAO,IAAI,IAAI;IAOf;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwD7D,OAAO,CAAC,OAAO;IAQf;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAOzB;;;OAGG;YACW,0BAA0B;IAiCxC;;;;;;;OAOG;YACW,sBAAsB;YAyFtB,YAAY;CA4K3B"}
@@ -4,6 +4,7 @@ import { fastRespond } from "./fast-responder.js";
4
4
  import { formatMessageSummary, previewIncomingForConsole, buildIncomingLogData } from "./message-format.js";
5
5
  import { transcribeVoiceMessages } from "../utils/transcribe.js";
6
6
  import { logger } from "../logger.js";
7
+ import { t, resolveLocale } from "../i18n/index.js";
7
8
  const INTERRUPT_DEBOUNCE_MS = 3000;
8
9
  const FAST_RESPONDER_TIMEOUT_MS = 10_000;
9
10
  export class InterruptHandler {
@@ -134,11 +135,12 @@ export class InterruptHandler {
134
135
  const { channelManager } = this.deps;
135
136
  const agentState = this.deps.getAgentState();
136
137
  const sent = new Set();
138
+ const locale = resolveLocale(this.deps.ownerConfig.language);
137
139
  const text = agentState.compacting
138
- ? "I'm compressing my context right now — please wait a moment, I'll get back to you shortly."
140
+ ? t("interrupt.compacting", locale)
139
141
  : agentState.learning
140
- ? "I'm learning and updating my skills right now — please wait a moment, I'll get back to you shortly."
141
- : "Got your message — working on it now.";
142
+ ? t("interrupt.learning", locale)
143
+ : t("interrupt.working", locale);
142
144
  for (const msg of batch) {
143
145
  const key = `${msg.channel}::${msg.sender}`;
144
146
  if (sent.has(key))