hyperclaw 5.3.4 → 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.
- package/dist/banner-3jmKGq6t.js +143 -0
- package/dist/banner-B2Qo91lq.js +143 -0
- package/dist/banner-BhOid_rp.js +7 -0
- package/dist/banner-C5D09Afq.js +7 -0
- package/dist/banner-CmNA9NKE.js +7 -0
- package/dist/banner-D3-Ik5d2.js +143 -0
- package/dist/banner-D3X8tQ-0.js +7 -0
- package/dist/banner-DG3v43xA.js +143 -0
- package/dist/chat-BGD9AWhr.js +523 -0
- package/dist/chat-D-i8bqTf.js +523 -0
- package/dist/chat-D8wFNN4z.js +523 -0
- package/dist/daemon-BXfbyPBf.js +7 -0
- package/dist/daemon-C4j0wqxz.js +421 -0
- package/dist/daemon-CUNaq2Ls.js +421 -0
- package/dist/daemon-D-klsy3i.js +7 -0
- package/dist/daemon-D_bYfHgn.js +421 -0
- package/dist/daemon-DcE6vcjH.js +421 -0
- package/dist/daemon-IU5UIMJo.js +7 -0
- package/dist/daemon-NFwpuo3L.js +7 -0
- package/dist/engine-2Tc-z0e4.js +7 -0
- package/dist/engine-B7Q4Vx-C.js +7 -0
- package/dist/engine-C-G3G-U7.js +7 -0
- package/dist/engine-DQ3hT5JD.js +327 -0
- package/dist/engine-DRpy9Y5O.js +327 -0
- package/dist/engine-DetHi9LP.js +327 -0
- package/dist/hyperclawbot-BqyZr2GM.js +516 -0
- package/dist/hyperclawbot-DTzP20Up.js +516 -0
- package/dist/hyperclawbot-DcQt62PL.js +516 -0
- package/dist/mcp-loader-BAGRKfJz.js +93 -0
- package/dist/mcp-loader-CPlsbcja.js +93 -0
- package/dist/mcp-loader-Dt64EewT.js +93 -0
- package/dist/onboard-32d2Gsuy.js +14 -0
- package/dist/onboard-BF29mNbC.js +14 -0
- package/dist/onboard-C7vJegQc.js +3812 -0
- package/dist/onboard-CJKxKPBH.js +3812 -0
- package/dist/onboard-Cgj_CIrq.js +3812 -0
- package/dist/onboard-ChnsqU5z.js +14 -0
- package/dist/onboard-CjzqTYq3.js +3812 -0
- package/dist/onboard-CytL65jh.js +14 -0
- package/dist/orchestrator-Bcj7uc1F.js +189 -0
- package/dist/orchestrator-C7oLWNFW.js +6 -0
- package/dist/orchestrator-Cuyqncql.js +189 -0
- package/dist/orchestrator-CxlEm5li.js +6 -0
- package/dist/orchestrator-DcEHTInR.js +6 -0
- package/dist/orchestrator-PQY07fH7.js +189 -0
- package/dist/osint-ADgw_Gkd.js +283 -0
- package/dist/osint-B5j3IuJK.js +283 -0
- package/dist/osint-DsUwGzgP.js +283 -0
- package/dist/osint-DtRd_A_O.js +283 -0
- package/dist/osint-chat-BbH6eW8z.js +789 -0
- package/dist/osint-chat-CfexqWop.js +789 -0
- package/dist/osint-chat-DdclrVa6.js +789 -0
- package/dist/osint-chat-xRP672b-.js +789 -0
- package/dist/run-main.js +103 -44
- package/dist/server-6TIyu0mb.js +4 -0
- package/dist/server-C9f6qtEW.js +1366 -0
- package/dist/server-CdlilrcS.js +4 -0
- package/dist/server-Da_jSrfS.js +4 -0
- package/dist/server-DfrmKeE6.js +1356 -0
- package/dist/server-gai_RW1u.js +1356 -0
- package/dist/server-rHap51o6.js +4 -0
- package/dist/server-vbYKep6r.js +1356 -0
- package/dist/skill-runtime-249xckq3.js +5 -0
- package/dist/skill-runtime-Bv59FUVu.js +104 -0
- package/dist/skill-runtime-CHQT7c1k.js +5 -0
- package/dist/skill-runtime-Cfd0OLkP.js +104 -0
- package/dist/skill-runtime-Dr0fimDf.js +5 -0
- package/dist/skill-runtime-DtO4i9vK.js +104 -0
- package/dist/src-CDLnbsLp.js +458 -0
- package/dist/src-ClYgvXAj.js +63 -0
- package/dist/src-D4VRanxB.js +458 -0
- package/dist/src-DK-ayUx7.js +63 -0
- package/dist/src-DiYkDVnn.js +458 -0
- package/dist/src-H1I7JC2E.js +63 -0
- package/dist/sub-agent-tools-8-Imp1B5.js +39 -0
- package/dist/sub-agent-tools-BoMCZ6jz.js +39 -0
- package/dist/sub-agent-tools-Dla3ZB5N.js +39 -0
- package/package.json +145 -143
- package/scripts/fix-mojibake.mjs +166 -0
- package/static/chat.html +764 -764
- package/static/web/assets/index-B5N1LHGR.css +1 -0
- package/static/web/assets/{index-BhCDgT5S.js → index-Bf8pf7Wg.js} +1 -1
- package/static/web/index.html +2 -2
- 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-
|
|
7
|
-
const require_daemon = require('./daemon-
|
|
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-
|
|
10
|
+
const require_onboard = require('./onboard-CjzqTYq3.js');
|
|
11
11
|
require('./theme-CLXvI6Hr.js');
|
|
12
|
-
const require_banner = require('./banner-
|
|
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');
|
|
@@ -115,7 +115,7 @@ var Dashboard = class {
|
|
|
115
115
|
};
|
|
116
116
|
const logRow = (content) => console.log(row(content));
|
|
117
117
|
console.log(c("├" + line + "┤"));
|
|
118
|
-
console.log(c("│") + chalk.default.bold.hex("#06b6d4")(`${"🦅 HYPERCLAW v5.
|
|
118
|
+
console.log(c("│") + chalk.default.bold.hex("#06b6d4")(`${"🦅 HYPERCLAW v5.3.45 — GATEWAY DASHBOARD".padStart(45).padEnd(w)}`) + c("│"));
|
|
119
119
|
console.log(c("├" + line + "┤"));
|
|
120
120
|
logRow(`${statusDot} Gateway ${statusText} ${chalk.default.gray("│")} ws://localhost:${port} ${chalk.default.gray("│")} Agent: ${c(agent)}`);
|
|
121
121
|
logRow(`${c("●")} Model ${chalk.default.gray(model.slice(0, 30))} ${chalk.default.gray("│")} User: ${c(user)}`);
|
|
@@ -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.
|
|
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-
|
|
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),
|
|
@@ -2933,7 +2933,7 @@ skillCmd.command("install <id>").description("Install skill from ClawHub (or bun
|
|
|
2933
2933
|
program.command("menu-bar").description("Launch macOS menu bar companion (Electron tray app)").action(async () => {
|
|
2934
2934
|
const path$5 = await import("path");
|
|
2935
2935
|
const { spawn: spawn$1 } = await import("child_process");
|
|
2936
|
-
const fs$7 = await import("fs-extra");
|
|
2936
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
2937
2937
|
const root = path$5.join(process.cwd(), "apps", "macos");
|
|
2938
2938
|
const altRoot = path$5.join(__dirname, "..", "..", "apps", "macos");
|
|
2939
2939
|
const macosDir = await fs$7.pathExists(root) ? root : await fs$7.pathExists(altRoot) ? altRoot : null;
|
|
@@ -2966,7 +2966,7 @@ program.command("update").description("Update HyperClaw").option("-c, --channel
|
|
|
2966
2966
|
});
|
|
2967
2967
|
program.command("web").description("Launch React Web UI").option("--skip-install", "Skip npm install (use if deps already installed)").option("--port <port>", "Port to serve on", "3000").action(async (opts) => {
|
|
2968
2968
|
const path$5 = await import("path");
|
|
2969
|
-
const fs$7 = await import("fs-extra");
|
|
2969
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
2970
2970
|
const { spawn: spawn$1 } = await import("child_process");
|
|
2971
2971
|
const http$2 = await import("http");
|
|
2972
2972
|
const net$3 = await import("net");
|
|
@@ -3063,13 +3063,38 @@ program.command("web").description("Launch React Web UI").option("--skip-install
|
|
|
3063
3063
|
server.listen(PORT, () => {
|
|
3064
3064
|
console.log(chalk.default.hex("#06b6d4")(` Open: http://localhost:${PORT}\n`));
|
|
3065
3065
|
});
|
|
3066
|
-
|
|
3067
|
-
|
|
3068
|
-
|
|
3069
|
-
|
|
3070
|
-
|
|
3071
|
-
|
|
3072
|
-
|
|
3066
|
+
await new Promise((resolve, reject) => {
|
|
3067
|
+
let settled = false;
|
|
3068
|
+
let closing = false;
|
|
3069
|
+
const cleanup = () => {
|
|
3070
|
+
server.off("close", onClose);
|
|
3071
|
+
server.off("error", onError);
|
|
3072
|
+
process.off("SIGINT", onSignal);
|
|
3073
|
+
process.off("SIGTERM", onSignal);
|
|
3074
|
+
};
|
|
3075
|
+
const finish = () => {
|
|
3076
|
+
if (settled) return;
|
|
3077
|
+
settled = true;
|
|
3078
|
+
cleanup();
|
|
3079
|
+
resolve();
|
|
3080
|
+
};
|
|
3081
|
+
const fail = (err) => {
|
|
3082
|
+
if (settled) return;
|
|
3083
|
+
settled = true;
|
|
3084
|
+
cleanup();
|
|
3085
|
+
reject(err);
|
|
3086
|
+
};
|
|
3087
|
+
const onClose = () => finish();
|
|
3088
|
+
const onError = (err) => fail(err);
|
|
3089
|
+
const onSignal = () => {
|
|
3090
|
+
if (closing) return;
|
|
3091
|
+
closing = true;
|
|
3092
|
+
server.close(() => finish());
|
|
3093
|
+
};
|
|
3094
|
+
server.on("close", onClose);
|
|
3095
|
+
server.on("error", onError);
|
|
3096
|
+
process.on("SIGINT", onSignal);
|
|
3097
|
+
process.on("SIGTERM", onSignal);
|
|
3073
3098
|
});
|
|
3074
3099
|
return;
|
|
3075
3100
|
}
|
|
@@ -3105,8 +3130,42 @@ program.command("web").description("Launch React Web UI").option("--skip-install
|
|
|
3105
3130
|
stdio: "inherit",
|
|
3106
3131
|
shell: true
|
|
3107
3132
|
});
|
|
3108
|
-
|
|
3109
|
-
|
|
3133
|
+
await new Promise((resolve, reject) => {
|
|
3134
|
+
let settled = false;
|
|
3135
|
+
const cleanup = () => {
|
|
3136
|
+
child.off("error", onError);
|
|
3137
|
+
child.off("exit", onExit);
|
|
3138
|
+
process.off("SIGINT", onSignal);
|
|
3139
|
+
process.off("SIGTERM", onSignal);
|
|
3140
|
+
};
|
|
3141
|
+
const finish = () => {
|
|
3142
|
+
if (settled) return;
|
|
3143
|
+
settled = true;
|
|
3144
|
+
cleanup();
|
|
3145
|
+
resolve();
|
|
3146
|
+
};
|
|
3147
|
+
const fail = (err) => {
|
|
3148
|
+
if (settled) return;
|
|
3149
|
+
settled = true;
|
|
3150
|
+
cleanup();
|
|
3151
|
+
reject(err);
|
|
3152
|
+
};
|
|
3153
|
+
const onError = (err) => fail(err);
|
|
3154
|
+
const onExit = (code, signal) => {
|
|
3155
|
+
if (signal || code === 0) {
|
|
3156
|
+
finish();
|
|
3157
|
+
return;
|
|
3158
|
+
}
|
|
3159
|
+
fail(new Error(`Vite dev server exited with code ${code}`));
|
|
3160
|
+
};
|
|
3161
|
+
const onSignal = (signal) => {
|
|
3162
|
+
if (!child.killed) child.kill(signal);
|
|
3163
|
+
};
|
|
3164
|
+
child.on("error", onError);
|
|
3165
|
+
child.on("exit", onExit);
|
|
3166
|
+
process.on("SIGINT", onSignal);
|
|
3167
|
+
process.on("SIGTERM", onSignal);
|
|
3168
|
+
});
|
|
3110
3169
|
});
|
|
3111
3170
|
program.command("doctor").description("Health check — surfaces misconfigs, risky DM policies, and repairs").option("--fix", "Auto-repair fixable issues").option("--repair", "Apply recommended repairs (same as --fix)").option("--force", "Apply aggressive repairs (use with --repair)").option("-y, --yes", "Accept defaults without prompting").option("--non-interactive", "Skip prompts; only run safe migrations").option("--deep", "Scan system services for extra gateway installs").action(async (opts) => {
|
|
3112
3171
|
await require_doctor.runDoctor(opts.fix || opts.repair, {
|
|
@@ -3256,7 +3315,7 @@ cfgCmd.command("set-service-key <serviceId> [apiKey]").description("Set API key
|
|
|
3256
3315
|
cfgCmd.command("schema").description("Show configuration schema").action(() => {
|
|
3257
3316
|
console.log(chalk.default.bold.hex("#06b6d4")("\n Config schema: ~/.hyperclaw/hyperclaw.json\n"));
|
|
3258
3317
|
const schema = {
|
|
3259
|
-
version: "string (e.g. \"5.
|
|
3318
|
+
version: "string (e.g. \"5.4.0\")",
|
|
3260
3319
|
workspaceName: "string",
|
|
3261
3320
|
provider: {
|
|
3262
3321
|
providerId: "string",
|
|
@@ -3401,7 +3460,7 @@ program.command("dashboard").description("Launch live terminal dashboard").optio
|
|
|
3401
3460
|
program.command("status").description("System overview").option("--all", "Full local diagnosis (read-only)").option("--deep", "Also probe the running gateway").action(async (opts) => {
|
|
3402
3461
|
await new require_banner.Banner().showStatus();
|
|
3403
3462
|
if (opts.all || opts.deep) {
|
|
3404
|
-
const fs$7 = await import("fs-extra");
|
|
3463
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
3405
3464
|
const { getConfigPath: getConfigPath$1 } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3406
3465
|
const t = (await Promise.resolve().then(() => require("./theme-DdZT-Bq4.js"))).getTheme(false);
|
|
3407
3466
|
const configPath = getConfigPath$1();
|
|
@@ -3576,20 +3635,20 @@ securityCmd.command("audit").description("Security audit — file permissions, D
|
|
|
3576
3635
|
process.exit(0);
|
|
3577
3636
|
});
|
|
3578
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) => {
|
|
3579
|
-
const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-
|
|
3638
|
+
const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-B5j3IuJK.js"));
|
|
3580
3639
|
if (opts.show || opts.reset) await osintSetup({
|
|
3581
3640
|
show: opts.show,
|
|
3582
3641
|
reset: opts.reset
|
|
3583
3642
|
});
|
|
3584
3643
|
else if (workflow === "chat") {
|
|
3585
|
-
const { runOsintChat } = await Promise.resolve().then(() => require("./osint-chat-
|
|
3644
|
+
const { runOsintChat } = await Promise.resolve().then(() => require("./osint-chat-xRP672b-.js"));
|
|
3586
3645
|
await runOsintChat({ model: opts.model });
|
|
3587
3646
|
} else if (workflow === "setup" || workflow) await osintSetup({ mode: workflow });
|
|
3588
3647
|
else await osintQuickStart();
|
|
3589
3648
|
process.exit(0);
|
|
3590
3649
|
});
|
|
3591
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) => {
|
|
3592
|
-
const { runChat } = await Promise.resolve().then(() => require("./chat-
|
|
3651
|
+
const { runChat } = await Promise.resolve().then(() => require("./chat-BGD9AWhr.js"));
|
|
3593
3652
|
const cfg = await new require_manager.ConfigManager().load().catch(() => null);
|
|
3594
3653
|
const port = cfg?.gateway?.port ?? 18789;
|
|
3595
3654
|
const gm = new GatewayManager$1();
|
|
@@ -3604,7 +3663,7 @@ program.command("chat").description("Interactive terminal chat with the agent").
|
|
|
3604
3663
|
});
|
|
3605
3664
|
const agentRunCmd = program.command("agent").description("Run agent with thinking control");
|
|
3606
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) => {
|
|
3607
|
-
const { runAgent } = await Promise.resolve().then(() => require("./src-
|
|
3666
|
+
const { runAgent } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
3608
3667
|
await runAgent({
|
|
3609
3668
|
message: opts.message,
|
|
3610
3669
|
thinking: opts.thinking,
|
|
@@ -3620,7 +3679,7 @@ agentRunCmd.requiredOption("-m, --message <text>", "Message to send to the agent
|
|
|
3620
3679
|
});
|
|
3621
3680
|
const threadsCmd = program.command("threads").description("ACP thread-bound agent sessions");
|
|
3622
3681
|
threadsCmd.command("list").description("List agent threads").option("--channel <id>", "Filter by channel").option("--active", "Show only active threads").action(async (opts) => {
|
|
3623
|
-
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-
|
|
3682
|
+
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
3624
3683
|
const mgr = new ACPThreadManager();
|
|
3625
3684
|
const threads = await mgr.list({
|
|
3626
3685
|
channelId: opts.channel,
|
|
@@ -3630,7 +3689,7 @@ threadsCmd.command("list").description("List agent threads").option("--channel <
|
|
|
3630
3689
|
process.exit(0);
|
|
3631
3690
|
});
|
|
3632
3691
|
threadsCmd.command("terminate <id>").description("Terminate a thread").action(async (id) => {
|
|
3633
|
-
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-
|
|
3692
|
+
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
3634
3693
|
await new ACPThreadManager().terminate(id);
|
|
3635
3694
|
console.log(require("chalk").green(`\n ✔ Thread terminated: ${id}\n`));
|
|
3636
3695
|
process.exit(0);
|
|
@@ -3799,7 +3858,7 @@ cronCmd.command("remove <id>").action(async (id) => {
|
|
|
3799
3858
|
program.command("nodes").description("List connected mobile nodes (iOS/Android Connect tab)").action(async () => {
|
|
3800
3859
|
const chalk$11 = require("chalk");
|
|
3801
3860
|
const http$2 = await import("http");
|
|
3802
|
-
const fs$7 = await import("fs-extra");
|
|
3861
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
3803
3862
|
const { getConfigPath: getConfigPath$1 } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3804
3863
|
let port = 18789;
|
|
3805
3864
|
try {
|
|
@@ -3878,7 +3937,7 @@ logsCmd.action(async (opts) => {
|
|
|
3878
3937
|
}
|
|
3879
3938
|
});
|
|
3880
3939
|
program.command("gateway:serve").description("Start the gateway server in the foreground (used by daemon)").action(async () => {
|
|
3881
|
-
const { startGateway } = await Promise.resolve().then(() => require("./server-
|
|
3940
|
+
const { startGateway } = await Promise.resolve().then(() => require("./server-6TIyu0mb.js"));
|
|
3882
3941
|
await startGateway();
|
|
3883
3942
|
process.on("SIGINT", () => process.exit(0));
|
|
3884
3943
|
process.on("SIGTERM", () => process.exit(0));
|
|
@@ -3938,7 +3997,7 @@ authCmd.command("add <service_id>").description("Add API key for a service (any
|
|
|
3938
3997
|
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-Bmm9e1SS.js"));
|
|
3939
3998
|
const { getHyperClawDir: getHyperClawDir$1, getEnvFilePath } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3940
3999
|
const { getApiKeyGuide, GENERIC_API_KEY_STEPS } = await Promise.resolve().then(() => require("./api-keys-guide--73Bq0Ey.js"));
|
|
3941
|
-
const fs$7 = await import("fs-extra");
|
|
4000
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
3942
4001
|
const path$5 = await import("path");
|
|
3943
4002
|
const guide = getApiKeyGuide(serviceId);
|
|
3944
4003
|
const steps = guide?.setupSteps ?? GENERIC_API_KEY_STEPS;
|
|
@@ -3992,7 +4051,7 @@ authCmd.command("remove <service_id>").description("Remove API key for a service
|
|
|
3992
4051
|
const chalk$11 = require("chalk");
|
|
3993
4052
|
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-Bmm9e1SS.js"));
|
|
3994
4053
|
const { getHyperClawDir: getHyperClawDir$1, getEnvFilePath } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3995
|
-
const fs$7 = await import("fs-extra");
|
|
4054
|
+
const fs$7 = (await import("fs-extra")).default;
|
|
3996
4055
|
const safeId = serviceId.replace(/[^a-zA-Z0-9_-]/g, "_").toLowerCase();
|
|
3997
4056
|
const creds = new CredentialsStore(getHyperClawDir$1());
|
|
3998
4057
|
await creds.remove(safeId);
|
|
@@ -4131,13 +4190,13 @@ workspaceCmd.command("show [dir]").description("Show workspace files summary").a
|
|
|
4131
4190
|
});
|
|
4132
4191
|
const botCmd = program.command("bot").description("HyperClaw Bot — companion bot for remote gateway control");
|
|
4133
4192
|
botCmd.command("status").action(async () => {
|
|
4134
|
-
const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4193
|
+
const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
|
|
4135
4194
|
await showBotStatus();
|
|
4136
4195
|
process.exit(0);
|
|
4137
4196
|
});
|
|
4138
4197
|
botCmd.command("setup").description("Configure HyperClaw Bot (Telegram token, allowed users)").action(async () => {
|
|
4139
4198
|
const inquirer$2 = require("inquirer");
|
|
4140
|
-
const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4199
|
+
const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
|
|
4141
4200
|
const chalk$11 = require("chalk");
|
|
4142
4201
|
console.log(chalk$11.bold.hex("#06b6d4")("\n 🦅 HYPERCLAW BOT SETUP\n"));
|
|
4143
4202
|
console.log(chalk$11.gray(" Create a bot at t.me/BotFather, then paste the token below.\n"));
|
|
@@ -4199,14 +4258,14 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
|
|
|
4199
4258
|
cwd: process.cwd()
|
|
4200
4259
|
});
|
|
4201
4260
|
child.unref();
|
|
4202
|
-
const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4261
|
+
const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
|
|
4203
4262
|
await writeBotPid(child.pid);
|
|
4204
4263
|
console.log(require("chalk").green(`\n ✔ HyperClaw Bot started in background (PID ${child.pid})`));
|
|
4205
4264
|
console.log(require("chalk").gray(" Stop with: hyperclaw bot stop\n"));
|
|
4206
4265
|
process.exit(0);
|
|
4207
4266
|
return;
|
|
4208
4267
|
}
|
|
4209
|
-
const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4268
|
+
const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
|
|
4210
4269
|
const cfg = await loadBotConfig();
|
|
4211
4270
|
if (!cfg) {
|
|
4212
4271
|
console.log(require("chalk").red("\n ✖ HyperClaw Bot not configured. Run: hyperclaw bot setup\n"));
|
|
@@ -4233,41 +4292,41 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
|
|
|
4233
4292
|
});
|
|
4234
4293
|
botCmd.command("stop").description("Stop HyperClaw Bot (when running in background)").action(async () => {
|
|
4235
4294
|
const chalk$11 = require("chalk");
|
|
4236
|
-
const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4295
|
+
const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-BqyZr2GM.js"));
|
|
4237
4296
|
const stopped = await stopBotProcess();
|
|
4238
4297
|
if (stopped) console.log(chalk$11.green("\n ✔ HyperClaw Bot stopped\n"));
|
|
4239
4298
|
else console.log(chalk$11.gray("\n Bot not running in background (no PID file). Use Ctrl+C to stop foreground bot.\n"));
|
|
4240
4299
|
process.exit(stopped ? 0 : 1);
|
|
4241
4300
|
});
|
|
4242
4301
|
memCmd.command("search <query>").description("Search MEMORY.md").action(async (query) => {
|
|
4243
|
-
const { searchMemory } = await Promise.resolve().then(() => require("./src-
|
|
4302
|
+
const { searchMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4244
4303
|
await searchMemory(query);
|
|
4245
4304
|
process.exit(0);
|
|
4246
4305
|
});
|
|
4247
4306
|
memCmd.command("auto-show").description("Show auto-extracted memories from MEMORY.md").action(async () => {
|
|
4248
|
-
const { showMemory } = await Promise.resolve().then(() => require("./src-
|
|
4307
|
+
const { showMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4249
4308
|
await showMemory();
|
|
4250
4309
|
process.exit(0);
|
|
4251
4310
|
});
|
|
4252
4311
|
memCmd.command("clear").description("Clear all auto-extracted memories").action(async () => {
|
|
4253
|
-
const { clearMemory } = await Promise.resolve().then(() => require("./src-
|
|
4312
|
+
const { clearMemory } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4254
4313
|
await clearMemory();
|
|
4255
4314
|
process.exit(0);
|
|
4256
4315
|
});
|
|
4257
4316
|
memCmd.command("save <text>").description("Manually save a fact to MEMORY.md").action(async (text) => {
|
|
4258
|
-
const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-
|
|
4317
|
+
const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4259
4318
|
await saveMemoryDirect(text);
|
|
4260
4319
|
console.log(chalk.default.hex("#06b6d4")(` ✅ Saved: ${text}\n`));
|
|
4261
4320
|
process.exit(0);
|
|
4262
4321
|
});
|
|
4263
4322
|
const pcCmd = program.command("pc").description("PC access — give the AI access to your computer");
|
|
4264
4323
|
pcCmd.command("status").description("Show PC access status and config").action(async () => {
|
|
4265
|
-
const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-
|
|
4324
|
+
const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4266
4325
|
await showPCAccessStatus();
|
|
4267
4326
|
process.exit(0);
|
|
4268
4327
|
});
|
|
4269
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) => {
|
|
4270
|
-
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-
|
|
4329
|
+
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4271
4330
|
const level = opts.level;
|
|
4272
4331
|
const allowed = [
|
|
4273
4332
|
"read-only",
|
|
@@ -4294,7 +4353,7 @@ pcCmd.command("enable").description("Enable PC access for the AI").option("--lev
|
|
|
4294
4353
|
process.exit(0);
|
|
4295
4354
|
});
|
|
4296
4355
|
pcCmd.command("disable").description("Disable PC access").action(async () => {
|
|
4297
|
-
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-
|
|
4356
|
+
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4298
4357
|
await savePCAccessConfig({ enabled: false });
|
|
4299
4358
|
console.log(chalk.default.hex("#06b6d4")("\n ✅ PC access disabled\n"));
|
|
4300
4359
|
process.exit(0);
|
|
@@ -4319,7 +4378,7 @@ pcCmd.command("log").description("Show PC access audit log").option("-n, --lines
|
|
|
4319
4378
|
process.exit(0);
|
|
4320
4379
|
});
|
|
4321
4380
|
pcCmd.command("run <command>").description("Run a shell command via PC access (must be enabled)").action(async (command) => {
|
|
4322
|
-
const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-
|
|
4381
|
+
const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-H1I7JC2E.js"));
|
|
4323
4382
|
const cfg = await loadPCAccessConfig();
|
|
4324
4383
|
if (!cfg.enabled) {
|
|
4325
4384
|
console.log(chalk.default.red("\n ✖ PC access disabled. Run: hyperclaw pc enable\n"));
|
|
@@ -4378,7 +4437,7 @@ if (process.argv.length === 2) (async () => {
|
|
|
4378
4437
|
console.log(` ✓ ${t.c("hyperclaw --help")} — 📖 all commands\n`);
|
|
4379
4438
|
} else {
|
|
4380
4439
|
await new require_banner.Banner().showNeonBanner(false);
|
|
4381
|
-
const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-
|
|
4440
|
+
const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-ChnsqU5z.js"));
|
|
4382
4441
|
await new HyperClawWizard$1().run({ wizard: true });
|
|
4383
4442
|
}
|
|
4384
4443
|
await runUpdateCheck();
|