hyperclaw 5.3.45 → 5.4.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 (51) hide show
  1. package/dist/banner-B2Qo91lq.js +143 -0
  2. package/dist/banner-CmNA9NKE.js +7 -0
  3. package/dist/banner-D3-Ik5d2.js +143 -0
  4. package/dist/banner-D3X8tQ-0.js +7 -0
  5. package/dist/chat-BGD9AWhr.js +523 -0
  6. package/dist/chat-D8wFNN4z.js +523 -0
  7. package/dist/daemon-D-klsy3i.js +7 -0
  8. package/dist/daemon-D_bYfHgn.js +421 -0
  9. package/dist/daemon-DcE6vcjH.js +421 -0
  10. package/dist/daemon-NFwpuo3L.js +7 -0
  11. package/dist/engine-B7Q4Vx-C.js +7 -0
  12. package/dist/engine-C-G3G-U7.js +7 -0
  13. package/dist/engine-DRpy9Y5O.js +327 -0
  14. package/dist/engine-DetHi9LP.js +327 -0
  15. package/dist/hyperclawbot-BqyZr2GM.js +516 -0
  16. package/dist/hyperclawbot-DTzP20Up.js +516 -0
  17. package/dist/mcp-loader-BAGRKfJz.js +93 -0
  18. package/dist/mcp-loader-Dt64EewT.js +93 -0
  19. package/dist/onboard-32d2Gsuy.js +14 -0
  20. package/dist/onboard-Cgj_CIrq.js +3812 -0
  21. package/dist/onboard-ChnsqU5z.js +14 -0
  22. package/dist/onboard-CjzqTYq3.js +3812 -0
  23. package/dist/orchestrator-Bcj7uc1F.js +189 -0
  24. package/dist/orchestrator-C7oLWNFW.js +6 -0
  25. package/dist/orchestrator-Cuyqncql.js +189 -0
  26. package/dist/orchestrator-CxlEm5li.js +6 -0
  27. package/dist/osint-ADgw_Gkd.js +283 -0
  28. package/dist/osint-B5j3IuJK.js +283 -0
  29. package/dist/osint-chat-BbH6eW8z.js +789 -0
  30. package/dist/osint-chat-xRP672b-.js +789 -0
  31. package/dist/run-main.js +28 -28
  32. package/dist/server-6TIyu0mb.js +4 -0
  33. package/dist/server-Da_jSrfS.js +4 -0
  34. package/dist/server-gai_RW1u.js +1356 -0
  35. package/dist/server-vbYKep6r.js +1356 -0
  36. package/dist/skill-runtime-CHQT7c1k.js +5 -0
  37. package/dist/skill-runtime-Cfd0OLkP.js +104 -0
  38. package/dist/skill-runtime-Dr0fimDf.js +5 -0
  39. package/dist/skill-runtime-DtO4i9vK.js +104 -0
  40. package/dist/src-CDLnbsLp.js +458 -0
  41. package/dist/src-D4VRanxB.js +458 -0
  42. package/dist/src-DK-ayUx7.js +63 -0
  43. package/dist/src-H1I7JC2E.js +63 -0
  44. package/dist/sub-agent-tools-BoMCZ6jz.js +39 -0
  45. package/dist/sub-agent-tools-Dla3ZB5N.js +39 -0
  46. package/package.json +145 -143
  47. package/scripts/fix-mojibake.mjs +166 -0
  48. package/static/web/assets/index-B5N1LHGR.css +1 -0
  49. package/static/web/assets/{index-BeAuHLb2.js → index-Bf8pf7Wg.js} +2 -2
  50. package/static/web/index.html +2 -2
  51. package/static/web/assets/index-D2RfO0dG.css +0 -1
package/dist/run-main.js CHANGED
@@ -3,13 +3,13 @@ const require_paths = require('./paths-AIyBxIzm.js');
3
3
  const require_paths$1 = require('./paths-DPovhojT.js');
4
4
  require('./env-resolve-CHxjGo8u.js');
5
5
  const require_config = require('./config-DGAAJ49A.js');
6
- require('./server-DfrmKeE6.js');
7
- const require_daemon = require('./daemon-C4j0wqxz.js');
6
+ require('./server-vbYKep6r.js');
7
+ const require_daemon = require('./daemon-DcE6vcjH.js');
8
8
  const require_gateway = require('./gateway-CzI8dnlS.js');
9
9
  require('./providers-DP8T0QCR.js');
10
- const require_onboard = require('./onboard-C7vJegQc.js');
10
+ const require_onboard = require('./onboard-CjzqTYq3.js');
11
11
  require('./theme-CLXvI6Hr.js');
12
- const require_banner = require('./banner-DG3v43xA.js');
12
+ const require_banner = require('./banner-B2Qo91lq.js');
13
13
  const require_hub = require('./hub-Bb_dYECE.js');
14
14
  const require_update_check = require('./update-check-DlUFL81n.js');
15
15
  const require_manager = require('./manager-DYfzqckn.js');
@@ -2539,7 +2539,7 @@ function sanitizeForLog(value) {
2539
2539
  return String(value ?? "").replace(/[\r\n\t]+/g, " ").replace(/[^\x20-\x7e]+/g, "?").slice(0, 200);
2540
2540
  }
2541
2541
  const program = new commander.Command();
2542
- program.name("hyperclaw").description("⚡ HyperClaw — AI Gateway Platform. The Lobster Evolution 🦅").version("5.3.45").option("--profile <name>", "Use an isolated gateway profile. Auto-scopes HYPERCLAW_STATE_DIR and HYPERCLAW_CONFIG_PATH. Required for multi-gateway setups (rescue bot, staging, etc.). Example: hyperclaw --profile rescue gateway --port 19001").addHelpText("after", `
2542
+ program.name("hyperclaw").description("⚡ HyperClaw — AI Gateway Platform. The Lobster Evolution 🦅").version("5.4.0").option("--profile <name>", "Use an isolated gateway profile. Auto-scopes HYPERCLAW_STATE_DIR and HYPERCLAW_CONFIG_PATH. Required for multi-gateway setups (rescue bot, staging, etc.). Example: hyperclaw --profile rescue gateway --port 19001").addHelpText("after", `
2543
2543
  Full commands reference: READMECOMMAND.md (all commands and options)
2544
2544
 
2545
2545
  Main command groups:
@@ -2711,7 +2711,7 @@ sandboxCmd.command("explain").description("Show effective sandbox mode, tool pol
2711
2711
  const sandboxMode = cfg?.agents?.defaults?.sandbox?.mode ?? "non-main";
2712
2712
  const toolsCfg = cfg?.tools ?? {};
2713
2713
  const { describeToolPolicy, applyToolPolicy } = await Promise.resolve().then(() => require("./tool-policy-QXF3MMxu.js"));
2714
- const { getBuiltinTools, getSessionsTools, getPCAccessTools, getBrowserTools, getExtractionTools, getWebsiteWatchTools, getVisionTools } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
2714
+ const { getBuiltinTools, getSessionsTools, getPCAccessTools, getBrowserTools, getExtractionTools, getWebsiteWatchTools, getVisionTools } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
2715
2715
  const allTools = [
2716
2716
  ...getBuiltinTools(),
2717
2717
  ...getSessionsTools(() => null),
@@ -3315,7 +3315,7 @@ cfgCmd.command("set-service-key <serviceId> [apiKey]").description("Set API key
3315
3315
  cfgCmd.command("schema").description("Show configuration schema").action(() => {
3316
3316
  console.log(chalk.default.bold.hex("#06b6d4")("\n Config schema: ~/.hyperclaw/hyperclaw.json\n"));
3317
3317
  const schema = {
3318
- version: "string (e.g. \"5.3.45\")",
3318
+ version: "string (e.g. \"5.4.0\")",
3319
3319
  workspaceName: "string",
3320
3320
  provider: {
3321
3321
  providerId: "string",
@@ -3635,20 +3635,20 @@ securityCmd.command("audit").description("Security audit — file permissions, D
3635
3635
  process.exit(0);
3636
3636
  });
3637
3637
  program.command("osint").description("OSINT / Ethical Hacking mode — configure HyperClaw for security research").argument("[workflow]", "Workflow preset: recon | bugbounty | pentest | footprint | custom | chat").option("--show", "Show current OSINT profile").option("--reset", "Clear OSINT profile and disable OSINT mode").option("--model <model>", "Override model for OSINT chat").action(async (workflow, opts) => {
3638
- const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-DtRd_A_O.js"));
3638
+ const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-B5j3IuJK.js"));
3639
3639
  if (opts.show || opts.reset) await osintSetup({
3640
3640
  show: opts.show,
3641
3641
  reset: opts.reset
3642
3642
  });
3643
3643
  else if (workflow === "chat") {
3644
- const { runOsintChat } = await Promise.resolve().then(() => require("./osint-chat-CfexqWop.js"));
3644
+ const { runOsintChat } = await Promise.resolve().then(() => require("./osint-chat-xRP672b-.js"));
3645
3645
  await runOsintChat({ model: opts.model });
3646
3646
  } else if (workflow === "setup" || workflow) await osintSetup({ mode: workflow });
3647
3647
  else await osintQuickStart();
3648
3648
  process.exit(0);
3649
3649
  });
3650
3650
  program.command("chat").description("Interactive terminal chat with the agent").option("--session <id>", "Resume a named session").option("--model <model>", "Override model").option("--thinking <level>", "Thinking level: high|medium|low|none", "none").option("--workspace <dir>", "Override workspace directory").option("--daemon", "Use daemon theme (red borders & prompt)").action(async (opts) => {
3651
- const { runChat } = await Promise.resolve().then(() => require("./chat-D-i8bqTf.js"));
3651
+ const { runChat } = await Promise.resolve().then(() => require("./chat-BGD9AWhr.js"));
3652
3652
  const cfg = await new require_manager.ConfigManager().load().catch(() => null);
3653
3653
  const port = cfg?.gateway?.port ?? 18789;
3654
3654
  const gm = new GatewayManager$1();
@@ -3663,7 +3663,7 @@ program.command("chat").description("Interactive terminal chat with the agent").
3663
3663
  });
3664
3664
  const agentRunCmd = program.command("agent").description("Run agent with thinking control");
3665
3665
  agentRunCmd.requiredOption("-m, --message <text>", "Message to send to the agent").option("--thinking <level>", "Thinking level: high|medium|low|none", "none").option("--model <model>", "Override model").option("--session <id>", "Session/thread ID").option("--multi-step", "Decompose into steps and run each (sequential)").option("--parallel", "Run sub-agents in parallel for independent subtasks").option("--verbose", "Show thinking blocks and request details").option("--workspace <dir>", "Override workspace directory").action(async (opts) => {
3666
- const { runAgent } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
3666
+ const { runAgent } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
3667
3667
  await runAgent({
3668
3668
  message: opts.message,
3669
3669
  thinking: opts.thinking,
@@ -3679,7 +3679,7 @@ agentRunCmd.requiredOption("-m, --message <text>", "Message to send to the agent
3679
3679
  });
3680
3680
  const threadsCmd = program.command("threads").description("ACP thread-bound agent sessions");
3681
3681
  threadsCmd.command("list").description("List agent threads").option("--channel <id>", "Filter by channel").option("--active", "Show only active threads").action(async (opts) => {
3682
- const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
3682
+ const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
3683
3683
  const mgr = new ACPThreadManager();
3684
3684
  const threads = await mgr.list({
3685
3685
  channelId: opts.channel,
@@ -3689,7 +3689,7 @@ threadsCmd.command("list").description("List agent threads").option("--channel <
3689
3689
  process.exit(0);
3690
3690
  });
3691
3691
  threadsCmd.command("terminate <id>").description("Terminate a thread").action(async (id) => {
3692
- const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
3692
+ const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
3693
3693
  await new ACPThreadManager().terminate(id);
3694
3694
  console.log(require("chalk").green(`\n ✔ Thread terminated: ${id}\n`));
3695
3695
  process.exit(0);
@@ -3937,7 +3937,7 @@ logsCmd.action(async (opts) => {
3937
3937
  }
3938
3938
  });
3939
3939
  program.command("gateway:serve").description("Start the gateway server in the foreground (used by daemon)").action(async () => {
3940
- const { startGateway } = await Promise.resolve().then(() => require("./server-rHap51o6.js"));
3940
+ const { startGateway } = await Promise.resolve().then(() => require("./server-6TIyu0mb.js"));
3941
3941
  await startGateway();
3942
3942
  process.on("SIGINT", () => process.exit(0));
3943
3943
  process.on("SIGTERM", () => process.exit(0));
@@ -4190,13 +4190,13 @@ workspaceCmd.command("show [dir]").description("Show workspace files summary").a
4190
4190
  });
4191
4191
  const botCmd = program.command("bot").description("HyperClaw Bot — companion bot for remote gateway control");
4192
4192
  botCmd.command("status").action(async () => {
4193
- const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-DcQt62PL.js"));
4193
+ const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
4194
4194
  await showBotStatus();
4195
4195
  process.exit(0);
4196
4196
  });
4197
4197
  botCmd.command("setup").description("Configure HyperClaw Bot (Telegram token, allowed users)").action(async () => {
4198
4198
  const inquirer$2 = require("inquirer");
4199
- const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-DcQt62PL.js"));
4199
+ const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
4200
4200
  const chalk$11 = require("chalk");
4201
4201
  console.log(chalk$11.bold.hex("#06b6d4")("\n 🦅 HYPERCLAW BOT SETUP\n"));
4202
4202
  console.log(chalk$11.gray(" Create a bot at t.me/BotFather, then paste the token below.\n"));
@@ -4258,14 +4258,14 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
4258
4258
  cwd: process.cwd()
4259
4259
  });
4260
4260
  child.unref();
4261
- const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-DcQt62PL.js"));
4261
+ const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
4262
4262
  await writeBotPid(child.pid);
4263
4263
  console.log(require("chalk").green(`\n ✔ HyperClaw Bot started in background (PID ${child.pid})`));
4264
4264
  console.log(require("chalk").gray(" Stop with: hyperclaw bot stop\n"));
4265
4265
  process.exit(0);
4266
4266
  return;
4267
4267
  }
4268
- const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-DcQt62PL.js"));
4268
+ const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
4269
4269
  const cfg = await loadBotConfig();
4270
4270
  if (!cfg) {
4271
4271
  console.log(require("chalk").red("\n ✖ HyperClaw Bot not configured. Run: hyperclaw bot setup\n"));
@@ -4292,41 +4292,41 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
4292
4292
  });
4293
4293
  botCmd.command("stop").description("Stop HyperClaw Bot (when running in background)").action(async () => {
4294
4294
  const chalk$11 = require("chalk");
4295
- const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-DcQt62PL.js"));
4295
+ const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
4296
4296
  const stopped = await stopBotProcess();
4297
4297
  if (stopped) console.log(chalk$11.green("\n ✔ HyperClaw Bot stopped\n"));
4298
4298
  else console.log(chalk$11.gray("\n Bot not running in background (no PID file). Use Ctrl+C to stop foreground bot.\n"));
4299
4299
  process.exit(stopped ? 0 : 1);
4300
4300
  });
4301
4301
  memCmd.command("search <query>").description("Search MEMORY.md").action(async (query) => {
4302
- const { searchMemory } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4302
+ const { searchMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4303
4303
  await searchMemory(query);
4304
4304
  process.exit(0);
4305
4305
  });
4306
4306
  memCmd.command("auto-show").description("Show auto-extracted memories from MEMORY.md").action(async () => {
4307
- const { showMemory } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4307
+ const { showMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4308
4308
  await showMemory();
4309
4309
  process.exit(0);
4310
4310
  });
4311
4311
  memCmd.command("clear").description("Clear all auto-extracted memories").action(async () => {
4312
- const { clearMemory } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4312
+ const { clearMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4313
4313
  await clearMemory();
4314
4314
  process.exit(0);
4315
4315
  });
4316
4316
  memCmd.command("save <text>").description("Manually save a fact to MEMORY.md").action(async (text) => {
4317
- const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4317
+ const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4318
4318
  await saveMemoryDirect(text);
4319
4319
  console.log(chalk.default.hex("#06b6d4")(` ✅ Saved: ${text}\n`));
4320
4320
  process.exit(0);
4321
4321
  });
4322
4322
  const pcCmd = program.command("pc").description("PC access — give the AI access to your computer");
4323
4323
  pcCmd.command("status").description("Show PC access status and config").action(async () => {
4324
- const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4324
+ const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4325
4325
  await showPCAccessStatus();
4326
4326
  process.exit(0);
4327
4327
  });
4328
4328
  pcCmd.command("enable").description("Enable PC access for the AI").option("--level <level>", "Access level: read-only | sandboxed | full", "full").option("--paths <paths>", "Comma-separated allowed paths (sandboxed mode)").action(async (opts) => {
4329
- const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4329
+ const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4330
4330
  const level = opts.level;
4331
4331
  const allowed = [
4332
4332
  "read-only",
@@ -4353,7 +4353,7 @@ pcCmd.command("enable").description("Enable PC access for the AI").option("--lev
4353
4353
  process.exit(0);
4354
4354
  });
4355
4355
  pcCmd.command("disable").description("Disable PC access").action(async () => {
4356
- const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4356
+ const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4357
4357
  await savePCAccessConfig({ enabled: false });
4358
4358
  console.log(chalk.default.hex("#06b6d4")("\n ✅ PC access disabled\n"));
4359
4359
  process.exit(0);
@@ -4378,7 +4378,7 @@ pcCmd.command("log").description("Show PC access audit log").option("-n, --lines
4378
4378
  process.exit(0);
4379
4379
  });
4380
4380
  pcCmd.command("run <command>").description("Run a shell command via PC access (must be enabled)").action(async (command) => {
4381
- const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-ClYgvXAj.js"));
4381
+ const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
4382
4382
  const cfg = await loadPCAccessConfig();
4383
4383
  if (!cfg.enabled) {
4384
4384
  console.log(chalk.default.red("\n ✖ PC access disabled. Run: hyperclaw pc enable\n"));
@@ -4437,7 +4437,7 @@ if (process.argv.length === 2) (async () => {
4437
4437
  console.log(` ✓ ${t.c("hyperclaw --help")} — 📖 all commands\n`);
4438
4438
  } else {
4439
4439
  await new require_banner.Banner().showNeonBanner(false);
4440
- const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-BF29mNbC.js"));
4440
+ const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-ChnsqU5z.js"));
4441
4441
  await new HyperClawWizard$1().run({ wizard: true });
4442
4442
  }
4443
4443
  await runUpdateCheck();
@@ -0,0 +1,4 @@
1
+ const require_chunk = require('./chunk-jS-bbMI5.js');
2
+ const require_server = require('./server-vbYKep6r.js');
3
+
4
+ exports.startGateway = require_server.startGateway;
@@ -0,0 +1,4 @@
1
+ const require_chunk = require('./chunk-jS-bbMI5.js');
2
+ const require_server = require('./server-gai_RW1u.js');
3
+
4
+ exports.startGateway = require_server.startGateway;