hyperclaw 5.2.7 → 5.2.9
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/a2ui-protocol-DEsfqO7h.js +75 -0
- package/dist/agents-routing-Cee7wrfi.js +398 -0
- package/dist/agents-routing-ChorJKFL.js +6 -0
- package/dist/agents-routing-Cpg20-1e.js +398 -0
- package/dist/agents-routing-uNzqjgOr.js +6 -0
- package/dist/api-key-validation-DgOBmp8Y.js +64 -0
- package/dist/api-key-validation-DydlUth1.js +64 -0
- package/dist/api-keys-guide--73Bq0Ey.js +149 -0
- package/dist/api-keys-guide-DqRGa4x7.js +149 -0
- package/dist/audit-CX5poVMR.js +445 -0
- package/dist/audit-Dntx9fG9.js +445 -0
- package/dist/banner-B_rR7FPO.js +7 -0
- package/dist/banner-Bb7CderS.js +143 -0
- package/dist/bounty-tools-BoU1NN5N.js +211 -0
- package/dist/bounty-tools-Dn9Yq7V1.js +211 -0
- package/dist/browser-tools-CJ9M9o22.js +179 -0
- package/dist/browser-tools-CXxWxA1c.js +5 -0
- package/dist/chat-C07wF0mM.js +494 -0
- package/dist/chat-D1Zc73I5.js +513 -0
- package/dist/claw-tasks-BLqd1a0Q.js +80 -0
- package/dist/claw-tasks-ChqkHdFs.js +80 -0
- package/dist/config-BlLlJ6Er.js +7 -0
- package/dist/config-Bzues-G2.js +7 -0
- package/dist/config-DGAAJ49A.js +261 -0
- package/dist/config-SgDxKyfV.js +261 -0
- package/dist/connector-1efnZgQN.js +566 -0
- package/dist/connector-B5q1_srT.js +286 -0
- package/dist/connector-BMFLJ4fr.js +508 -0
- package/dist/connector-BZYv9siY.js +189 -0
- package/dist/connector-B_XkXm-j.js +218 -0
- package/dist/connector-BkY1I6gf.js +189 -0
- package/dist/connector-C2Z3RN1z.js +350 -0
- package/dist/connector-C7aYvVzU.js +225 -0
- package/dist/connector-CXXYOyHw.js +164 -0
- package/dist/connector-Ca1J23HX.js +167 -0
- package/dist/connector-Cjqc656I.js +181 -0
- package/dist/connector-CluRienN.js +425 -0
- package/dist/connector-CuNz2eP-.js +305 -0
- package/dist/connector-DHL_oeHy.js +552 -0
- package/dist/connector-DJ79rd1L.js +173 -0
- package/dist/connector-DcLE6xCZ.js +239 -0
- package/dist/connector-DcyQTJnJ.js +162 -0
- package/dist/connector-DgyX9qSc.js +192 -0
- package/dist/connector-DnDXXZ7L.js +182 -0
- package/dist/connector-DqUslg-X.js +213 -0
- package/dist/connector-Duc-HmRZ.js +85 -0
- package/dist/connector-IV0QFer8.js +498 -0
- package/dist/connector-OnsLxE8G.js +194 -0
- package/dist/connector-UYu_TS0X.js +204 -0
- package/dist/connector-cCA5ffmp.js +340 -0
- package/dist/connector-fbNfx4_L.js +568 -0
- package/dist/connector-fi2vlwbO.js +276 -0
- package/dist/connector-l3LD8IDN.js +419 -0
- package/dist/cost-tracker-CgEXyEtz.js +103 -0
- package/dist/cost-tracker-DCXDUzBI.js +103 -0
- package/dist/credentials-store-1LDtNReY.js +89 -0
- package/dist/credentials-store-BFxEJR00.js +7 -0
- package/dist/credentials-store-Bmm9e1SS.js +7 -0
- package/dist/credentials-store-D8ERbGR2.js +89 -0
- package/dist/cron-tasks-1E6wKpTv.js +85 -0
- package/dist/cron-tasks-OQbgmenS.js +85 -0
- package/dist/daemon-B13UIqvL.js +7 -0
- package/dist/daemon-CzOW-1PS.js +421 -0
- package/dist/daemon-aVX-WGz1.js +421 -0
- package/dist/daemon-iFmVBPXN.js +7 -0
- package/dist/delivery-B8YGmrq5.js +4 -0
- package/dist/delivery-DWsU6gx-.js +95 -0
- package/dist/delivery-Pko6sSkt.js +4 -0
- package/dist/delivery-hMHFRZwy.js +95 -0
- package/dist/destructive-gate-C2TrWsp2.js +101 -0
- package/dist/destructive-gate-bnkroJWG.js +101 -0
- package/dist/developer-keys-BWXHaWxY.js +127 -0
- package/dist/developer-keys-CzDxVczE.js +8 -0
- package/dist/device-auth-store-C1bCwXO2.js +7 -0
- package/dist/device-auth-store-DIZTOz4V.js +88 -0
- package/dist/doctor-C6nAGdH8.js +233 -0
- package/dist/doctor-mgWumA25.js +6 -0
- package/dist/engine-BGRTi0fo.js +327 -0
- package/dist/engine-BvCEhaUn.js +7 -0
- package/dist/engine-ByQ-0sWM.js +7 -0
- package/dist/engine-gnMjO743.js +327 -0
- package/dist/env-resolve-BdagnXhK.js +151 -0
- package/dist/env-resolve-CHxjGo8u.js +151 -0
- package/dist/env-resolve-NEtsGacw.js +10 -0
- package/dist/env-resolve-pIETNTpQ.js +10 -0
- package/dist/extraction-tools-BE6z_Yw5.js +91 -0
- package/dist/extraction-tools-CJsdyBST.js +5 -0
- package/dist/form_data-B2_0EoWj.js +8657 -0
- package/dist/gmail-watch-setup-1RGIHNdu.js +42 -0
- package/dist/gmail-watch-setup-Brkj94Sy.js +42 -0
- package/dist/health-BMUmUNoe.js +152 -0
- package/dist/health-C8n9RH5O.js +6 -0
- package/dist/heartbeat-engine-D6oSpgxx.js +89 -0
- package/dist/heartbeat-engine-aRbab8a5.js +89 -0
- package/dist/hub-BJM2KXLO.js +6 -0
- package/dist/hub-Bb_dYECE.js +512 -0
- package/dist/hyperclawbot-CgrV46DA.js +516 -0
- package/dist/hyperclawbot-DzP_v3iA.js +516 -0
- package/dist/inference-BHJFPEKL.js +8 -0
- package/dist/inference-CFBkvLpE.js +2854 -0
- package/dist/inference-G4MbdErG.js +8 -0
- package/dist/inference-vweXyh27.js +2854 -0
- package/dist/knowledge-graph-9UNrsiIY.js +134 -0
- package/dist/knowledge-graph-yeMPBPP8.js +134 -0
- package/dist/loader-BXYJl25e.js +6 -0
- package/dist/loader-DIPs649t.js +410 -0
- package/dist/loader-Dq_cDlOW.js +6 -0
- package/dist/loader-gTdKBwiI.js +410 -0
- package/dist/logger-C3ZCDSkc.js +86 -0
- package/dist/logger-CG38Idq4.js +86 -0
- package/dist/manager--wG9JdFW.js +120 -0
- package/dist/manager-BI3izlRG.js +120 -0
- package/dist/manager-BNc21xgG.js +6 -0
- package/dist/manager-CQ3MWNHY.js +250 -0
- package/dist/manager-DWJ7WZcY.js +250 -0
- package/dist/manager-DYfzqckn.js +35 -0
- package/dist/mcp-CklaYr_6.js +142 -0
- package/dist/mcp-SsMEvl28.js +142 -0
- package/dist/mcp-loader-9v8eUsNI.js +93 -0
- package/dist/mcp-loader-DLrp_oZJ.js +93 -0
- package/dist/memory-BCYvdqwo.js +273 -0
- package/dist/memory-BGgCBSx1.js +6 -0
- package/dist/memory-auto-Bh52cQJP.js +5 -0
- package/dist/memory-auto-Bow9u_L7.js +306 -0
- package/dist/memory-auto-BupvVwNd.js +306 -0
- package/dist/memory-auto-CgBAI8mm.js +5 -0
- package/dist/memory-integration-4oGqX6rr.js +91 -0
- package/dist/memory-integration-CveUEI3V.js +91 -0
- package/dist/moltbook-B3DNdh40.js +81 -0
- package/dist/moltbook-xP7VXKlX.js +81 -0
- package/dist/node-C4esBfbX.js +226 -0
- package/dist/node-urDjajMt.js +226 -0
- package/dist/nodes-registry-Cd4eWw80.js +52 -0
- package/dist/nodes-registry-DLUZhEMS.js +52 -0
- package/dist/oauth-flow-BbLQTzZk.js +148 -0
- package/dist/oauth-flow-Bt-LaRHV.js +148 -0
- package/dist/oauth-provider-CVTKgj35.js +111 -0
- package/dist/oauth-provider-UZyG84s7.js +111 -0
- package/dist/observability-BtLyuxcz.js +89 -0
- package/dist/observability-lwYm4aoB.js +89 -0
- package/dist/onboard-B3drurt-.js +3812 -0
- package/dist/onboard-BV5Poocl.js +13 -0
- package/dist/onboard-DEwuHrMj.js +14 -0
- package/dist/onboard-UiynbNQy.js +3909 -0
- package/dist/orchestrator-BXyIgAeH.js +189 -0
- package/dist/orchestrator-DMZkAVa5.js +189 -0
- package/dist/orchestrator-MLTc4NYu.js +6 -0
- package/dist/orchestrator-rVGu7yYr.js +6 -0
- package/dist/osint-Bsf6RGPv.js +283 -0
- package/dist/osint-chat-Ark94iFc.js +789 -0
- package/dist/osint-chat-Hn8qpsC1.js +836 -0
- package/dist/osint-f9DeXT6j.js +283 -0
- package/dist/pairing-2vAiDBjN.js +6 -0
- package/dist/pairing-B4NoBvyE.js +207 -0
- package/dist/pc-access-BLnc-DYp.js +858 -0
- package/dist/pc-access-CTNtG2LD.js +8 -0
- package/dist/pending-approval-C4ZaHHWl.js +22 -0
- package/dist/pending-approval-CHUZ_qT6.js +22 -0
- package/dist/reminders-store-BixTWL1h.js +58 -0
- package/dist/renderer-B1ToXngl.js +228 -0
- package/dist/rules-Cqen1Mpt.js +106 -0
- package/dist/run-main.js +98 -94
- package/dist/runner-B9xANekJ.js +1274 -0
- package/dist/runner-Cr1_mwnU.js +1274 -0
- package/dist/security--17Fxo5Z.js +4 -0
- package/dist/security-B4vH02lO.js +4 -0
- package/dist/security-DP1qtJfL.js +90 -0
- package/dist/security-HOOGCw5z.js +90 -0
- package/dist/server-CRhXiGI9.js +4 -0
- package/dist/server-DUDXqJSo.js +1365 -0
- package/dist/server-De4H45Ju.js +1365 -0
- package/dist/server-ha59nA8a.js +4 -0
- package/dist/session-store-7sEPyV16.js +5 -0
- package/dist/session-store-Ce2QMSL_.js +141 -0
- package/dist/sessions-tools-CWr_pDtp.js +5 -0
- package/dist/sessions-tools-DKVu9aIN.js +95 -0
- package/dist/skill-loader-DK19Jm4e.js +7 -0
- package/dist/skill-loader-Dfs9VNM-.js +160 -0
- package/dist/skill-runtime-BRp2D8Jb.js +5 -0
- package/dist/skill-runtime-BeKh2rD_.js +5 -0
- package/dist/skill-runtime-C8bNwKwz.js +104 -0
- package/dist/skill-runtime-CcpC2Zfc.js +104 -0
- package/dist/src-B8LzGLSY.js +63 -0
- package/dist/src-BxmkZ9RH.js +63 -0
- package/dist/src-DUoc6_kn.js +458 -0
- package/dist/src-DjTtmSRg.js +20 -0
- package/dist/src-n_46LPDi.js +458 -0
- package/dist/sub-agent-tools-CldaMfd5.js +39 -0
- package/dist/sub-agent-tools-q5JqEze_.js +39 -0
- package/dist/tool-policy-DtGf3Ifq.js +189 -0
- package/dist/tool-policy-QXF3MMxu.js +189 -0
- package/dist/tts-elevenlabs-1zWD3QJw.js +64 -0
- package/dist/tts-elevenlabs-y6HGWWDS.js +64 -0
- package/dist/update-check-C4te7JmY.js +6 -0
- package/dist/update-check-GDue_it1.js +98 -0
- package/dist/vision-DV2ubVjr.js +167 -0
- package/dist/vision-tools-Cb86uMdh.js +5 -0
- package/dist/vision-tools-CbVfyTZT.js +5 -0
- package/dist/vision-tools-DieVQp6s.js +51 -0
- package/dist/vision-tools-DlnxaZjg.js +51 -0
- package/dist/vision-u4kMThdo.js +167 -0
- package/dist/voice-transcription-BolTT_HG.js +170 -0
- package/dist/voice-transcription-DgON5qaF.js +170 -0
- package/dist/website-watch-tools-B8L_NgwT.js +5 -0
- package/dist/website-watch-tools-Drm5HjIX.js +176 -0
- package/package.json +4 -1
- package/static/chat.html +9 -3
package/dist/run-main.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
const require_chunk = require('./chunk-jS-bbMI5.js');
|
|
2
2
|
const require_paths = require('./paths-AIyBxIzm.js');
|
|
3
3
|
const require_paths$1 = require('./paths-DPovhojT.js');
|
|
4
|
-
require('./env-resolve-
|
|
5
|
-
const require_config = require('./config-
|
|
6
|
-
require('./server-
|
|
7
|
-
const require_daemon = require('./daemon-
|
|
4
|
+
require('./env-resolve-CHxjGo8u.js');
|
|
5
|
+
const require_config = require('./config-DGAAJ49A.js');
|
|
6
|
+
require('./server-De4H45Ju.js');
|
|
7
|
+
const require_daemon = require('./daemon-aVX-WGz1.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-B3drurt-.js');
|
|
11
11
|
require('./theme-CLXvI6Hr.js');
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
12
|
+
const require_banner = require('./banner-Bb7CderS.js');
|
|
13
|
+
const require_hub = require('./hub-Bb_dYECE.js');
|
|
14
|
+
const require_update_check = require('./update-check-GDue_it1.js');
|
|
15
|
+
const require_manager = require('./manager-DYfzqckn.js');
|
|
16
|
+
const require_memory = require('./memory-BCYvdqwo.js');
|
|
17
|
+
const require_loader = require('./loader-DIPs649t.js');
|
|
18
|
+
const require_agents_routing = require('./agents-routing-Cpg20-1e.js');
|
|
19
|
+
const require_pairing = require('./pairing-B4NoBvyE.js');
|
|
20
|
+
const require_doctor = require('./doctor-C6nAGdH8.js');
|
|
21
|
+
const require_health = require('./health-BMUmUNoe.js');
|
|
22
|
+
const require_security = require('./security-HOOGCw5z.js');
|
|
23
|
+
const require_device_auth_store = require('./device-auth-store-DIZTOz4V.js');
|
|
24
|
+
const require_developer_keys = require('./developer-keys-BWXHaWxY.js');
|
|
24
25
|
const commander = require_chunk.__toESM(require("commander"));
|
|
25
26
|
const chalk = require_chunk.__toESM(require("chalk"));
|
|
26
27
|
const inquirer = require_chunk.__toESM(require("inquirer"));
|
|
@@ -193,7 +194,7 @@ async function recordAudio(outFile, seconds) {
|
|
|
193
194
|
async function transcribeWhisper(filePath, lang) {
|
|
194
195
|
const apiKey = process.env.OPENAI_API_KEY || process.env.ANTHROPIC_API_KEY;
|
|
195
196
|
if (!apiKey) throw new Error("No OPENAI_API_KEY set");
|
|
196
|
-
const FormData = (await Promise.resolve().then(() => require_chunk.__toDynamicImportESM()(require("./form_data-
|
|
197
|
+
const FormData = (await Promise.resolve().then(() => require_chunk.__toDynamicImportESM()(require("./form_data-B2_0EoWj.js"))).catch(() => null))?.default;
|
|
197
198
|
if (!FormData) throw new Error("form-data not installed");
|
|
198
199
|
const form = new FormData();
|
|
199
200
|
form.append("file", fs.createReadStream(filePath), {
|
|
@@ -2538,7 +2539,7 @@ function sanitizeForLog(value) {
|
|
|
2538
2539
|
return String(value ?? "").replace(/[\r\n\t]+/g, " ").replace(/[^\x20-\x7e]+/g, "?").slice(0, 200);
|
|
2539
2540
|
}
|
|
2540
2541
|
const program = new commander.Command();
|
|
2541
|
-
program.name("hyperclaw").description("⚡ HyperClaw — AI Gateway Platform. The Lobster Evolution 🦅").version("5.2.
|
|
2542
|
+
program.name("hyperclaw").description("⚡ HyperClaw — AI Gateway Platform. The Lobster Evolution 🦅").version("5.2.9").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").hook("preAction", (thisCommand) => {
|
|
2542
2543
|
const profile = thisCommand.opts().profile;
|
|
2543
2544
|
if (profile) {
|
|
2544
2545
|
const os$2 = require("os");
|
|
@@ -2549,12 +2550,12 @@ program.name("hyperclaw").description("⚡ HyperClaw — AI Gateway Platform. Th
|
|
|
2549
2550
|
}
|
|
2550
2551
|
});
|
|
2551
2552
|
program.command("init").description("Initialize HyperClaw with interactive wizard").option("-a, --auto-config", "Auto-configure with defaults").option("-d, --daemon", "Install as system daemon").option("-s, --start-now", "Start gateway after setup").action(async (opts) => {
|
|
2552
|
-
await new
|
|
2553
|
+
await new require_banner.Banner().showNeonBanner(false);
|
|
2553
2554
|
await new require_onboard.HyperClawWizard().run(opts);
|
|
2554
2555
|
process.exit(0);
|
|
2555
2556
|
});
|
|
2556
2557
|
program.command("onboard").description("Full onboarding wizard — preferred setup path").option("--install-daemon", "Auto-install system daemon (starts on boot, grants full PC access)").option("--quick", "Use QuickStart mode (skip advanced options)").option("--reset", "Reset config before running wizard (sends to trash, not deleted)").option("--reset-scope <scope>", "What to reset: config | config+creds | full", "config").option("--non-interactive", "Run in non-interactive mode (use flags for all options)").option("--json", "Output result as JSON (use with --non-interactive)").option("--anthropic-api-key <key>", "Anthropic API key (non-interactive)").option("--openai-api-key <key>", "OpenAI API key (non-interactive)").option("--gateway-port <port>", "Gateway port (non-interactive)", "18789").option("--gateway-bind <bind>", "Gateway bind: loopback | all (non-interactive)", "loopback").option("--daemon-runtime <runtime>", "Daemon runtime: node | bun (non-interactive)", "node").option("--skip-skills", "Skip skills setup (non-interactive)").option("--skip-search", "Skip web search setup (non-interactive)").action(async (opts) => {
|
|
2557
|
-
await new
|
|
2558
|
+
await new require_banner.Banner().showNeonBanner(false);
|
|
2558
2559
|
if (opts.reset) {
|
|
2559
2560
|
const fs$7 = require("fs-extra");
|
|
2560
2561
|
const path$5 = require("path");
|
|
@@ -2629,7 +2630,7 @@ program.command("onboard").description("Full onboarding wizard — preferred set
|
|
|
2629
2630
|
process.exit(0);
|
|
2630
2631
|
});
|
|
2631
2632
|
program.command("quickstart").description("Zero-config quick start").option("-c, --channels <channels>", "Channels to enable", "telegram,discord").option("-v, --voice <on|off>", "Voice enabled", "on").action(async (opts) => {
|
|
2632
|
-
await new
|
|
2633
|
+
await new require_banner.Banner().showMiniBanner();
|
|
2633
2634
|
await new require_onboard.HyperClawWizard().quickstart(opts);
|
|
2634
2635
|
process.exit(0);
|
|
2635
2636
|
});
|
|
@@ -2661,7 +2662,7 @@ gatewayCmd.command("restart").description("Restart the gateway service").action(
|
|
|
2661
2662
|
});
|
|
2662
2663
|
program.command("daemon").description("Manage gateway: start/stop (foreground) or install (auto-start on boot). Same process as gateway start.").argument("<action>", "start|stop|restart|status|logs|install|uninstall").action(async (action) => {
|
|
2663
2664
|
const dm = new require_daemon.DaemonManager();
|
|
2664
|
-
if (action === "start") await new
|
|
2665
|
+
if (action === "start") await new require_banner.Banner().showNeonBanner(true);
|
|
2665
2666
|
await dm.handle(action);
|
|
2666
2667
|
if (action === "start" || action === "restart") return;
|
|
2667
2668
|
process.exit(0);
|
|
@@ -2682,8 +2683,8 @@ sandboxCmd.command("explain").description("Show effective sandbox mode, tool pol
|
|
|
2682
2683
|
}
|
|
2683
2684
|
const sandboxMode = cfg?.agents?.defaults?.sandbox?.mode ?? "non-main";
|
|
2684
2685
|
const toolsCfg = cfg?.tools ?? {};
|
|
2685
|
-
const { describeToolPolicy, applyToolPolicy } = await Promise.resolve().then(() => require("./tool-policy-
|
|
2686
|
-
const { getBuiltinTools, getSessionsTools, getPCAccessTools, getBrowserTools, getExtractionTools, getWebsiteWatchTools, getVisionTools } = await Promise.resolve().then(() => require("./src-
|
|
2686
|
+
const { describeToolPolicy, applyToolPolicy } = await Promise.resolve().then(() => require("./tool-policy-QXF3MMxu.js"));
|
|
2687
|
+
const { getBuiltinTools, getSessionsTools, getPCAccessTools, getBrowserTools, getExtractionTools, getWebsiteWatchTools, getVisionTools } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
2687
2688
|
const allTools = [
|
|
2688
2689
|
...getBuiltinTools(),
|
|
2689
2690
|
...getSessionsTools(() => null),
|
|
@@ -3022,7 +3023,7 @@ cfgCmd.command("set-key <KEY=value>").description("Set provider API key or confi
|
|
|
3022
3023
|
xai: "xai"
|
|
3023
3024
|
};
|
|
3024
3025
|
const pid = keyToProvider[key] ?? keyToProvider[key.toLowerCase()] ?? cfg?.provider?.providerId ?? key.toLowerCase();
|
|
3025
|
-
const { validateApiKeyFormat } = await Promise.resolve().then(() => require("./api-key-validation-
|
|
3026
|
+
const { validateApiKeyFormat } = await Promise.resolve().then(() => require("./api-key-validation-DgOBmp8Y.js"));
|
|
3026
3027
|
const formatErr = validateApiKeyFormat(pid, value);
|
|
3027
3028
|
if (formatErr) {
|
|
3028
3029
|
console.log(chalk.default.yellow(`\n ⚠ ${formatErr}\n`));
|
|
@@ -3084,7 +3085,7 @@ cfgCmd.command("set-service-key <serviceId> [apiKey]").description("Set API key
|
|
|
3084
3085
|
cfgCmd.command("schema").description("Show configuration schema").action(() => {
|
|
3085
3086
|
console.log(chalk.default.bold.hex("#06b6d4")("\n Config schema: ~/.hyperclaw/hyperclaw.json\n"));
|
|
3086
3087
|
const schema = {
|
|
3087
|
-
version: "string (e.g. \"5.2.
|
|
3088
|
+
version: "string (e.g. \"5.2.9\")",
|
|
3088
3089
|
workspaceName: "string",
|
|
3089
3090
|
provider: {
|
|
3090
3091
|
providerId: "string",
|
|
@@ -3227,7 +3228,7 @@ program.command("dashboard").description("Launch live terminal dashboard").optio
|
|
|
3227
3228
|
await new Promise(() => {});
|
|
3228
3229
|
});
|
|
3229
3230
|
program.command("status").description("System overview").option("--all", "Full local diagnosis (read-only)").option("--deep", "Also probe the running gateway").action(async (opts) => {
|
|
3230
|
-
await new
|
|
3231
|
+
await new require_banner.Banner().showStatus();
|
|
3231
3232
|
if (opts.all || opts.deep) {
|
|
3232
3233
|
const fs$7 = await import("fs-extra");
|
|
3233
3234
|
const { getConfigPath: getConfigPath$1 } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
@@ -3243,7 +3244,7 @@ program.command("status").description("System overview").option("--all", "Full l
|
|
|
3243
3244
|
}
|
|
3244
3245
|
if (opts.deep) {
|
|
3245
3246
|
const http$2 = await import("http");
|
|
3246
|
-
const { resolveGatewayUrl } = await Promise.resolve().then(() => require("./health-
|
|
3247
|
+
const { resolveGatewayUrl } = await Promise.resolve().then(() => require("./health-C8n9RH5O.js"));
|
|
3247
3248
|
const cfg = await new require_manager.ConfigManager().load();
|
|
3248
3249
|
const { gatewayUrl } = resolveGatewayUrl(cfg);
|
|
3249
3250
|
const u = new URL(gatewayUrl);
|
|
@@ -3362,40 +3363,40 @@ themeCmd.command("preview").description("Preview all themes side-by-side").actio
|
|
|
3362
3363
|
});
|
|
3363
3364
|
const secretsCmd = program.command("secrets").description("External secrets management");
|
|
3364
3365
|
secretsCmd.command("audit").description("Audit all required secrets").option("--required-by <ids>", "Filter by skill/provider IDs (comma-separated)").action(async (opts) => {
|
|
3365
|
-
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-
|
|
3366
|
+
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-DWJ7WZcY.js"));
|
|
3366
3367
|
const filter = opts.requiredBy?.split(",");
|
|
3367
3368
|
await new SecretsManager().audit(filter);
|
|
3368
3369
|
process.exit(0);
|
|
3369
3370
|
});
|
|
3370
3371
|
secretsCmd.command("set <KEY=value>").description("Set a secret in .env file").action(async (kv) => {
|
|
3371
|
-
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-
|
|
3372
|
+
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-DWJ7WZcY.js"));
|
|
3372
3373
|
await new SecretsManager().set(kv);
|
|
3373
3374
|
process.exit(0);
|
|
3374
3375
|
});
|
|
3375
3376
|
secretsCmd.command("apply").description("Write secrets from .env to shell config (~/.bashrc, ~/.zshrc)").action(async () => {
|
|
3376
|
-
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-
|
|
3377
|
+
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-DWJ7WZcY.js"));
|
|
3377
3378
|
await new SecretsManager().apply();
|
|
3378
3379
|
process.exit(0);
|
|
3379
3380
|
});
|
|
3380
3381
|
secretsCmd.command("reload").description("Reload secrets into running gateway").action(async () => {
|
|
3381
|
-
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-
|
|
3382
|
+
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-DWJ7WZcY.js"));
|
|
3382
3383
|
await new SecretsManager().reload();
|
|
3383
3384
|
process.exit(0);
|
|
3384
3385
|
});
|
|
3385
3386
|
secretsCmd.command("remove <key>").description("Remove a secret from .env").action(async (key) => {
|
|
3386
|
-
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-
|
|
3387
|
+
const { SecretsManager } = await Promise.resolve().then(() => require("./manager-DWJ7WZcY.js"));
|
|
3387
3388
|
await new SecretsManager().remove(key);
|
|
3388
3389
|
process.exit(0);
|
|
3389
3390
|
});
|
|
3390
3391
|
secretsCmd.command("credentials").description("List provider credential files (credentials/*.json)").action(async () => {
|
|
3391
|
-
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-
|
|
3392
|
+
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-Bmm9e1SS.js"));
|
|
3392
3393
|
const { getHyperClawDir: getHyperClawDir$1 } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3393
3394
|
await new CredentialsStore(getHyperClawDir$1()).showList();
|
|
3394
3395
|
process.exit(0);
|
|
3395
3396
|
});
|
|
3396
3397
|
const securityCmd = program.command("security").description("Security tools");
|
|
3397
3398
|
securityCmd.command("audit").description("Security audit — file permissions, DM policies, embedded secrets").option("--deep", "Full deep scan including token entropy and installed skill risks").option("--fix", "Auto-fix safe findings (file permissions etc.)").option("--json", "Machine-readable JSON output").action(async (opts) => {
|
|
3398
|
-
const { runSecurityAudit } = await Promise.resolve().then(() => require("./audit-
|
|
3399
|
+
const { runSecurityAudit } = await Promise.resolve().then(() => require("./audit-Dntx9fG9.js"));
|
|
3399
3400
|
await runSecurityAudit({
|
|
3400
3401
|
deep: opts.deep,
|
|
3401
3402
|
fix: opts.fix,
|
|
@@ -3403,18 +3404,21 @@ securityCmd.command("audit").description("Security audit — file permissions, D
|
|
|
3403
3404
|
});
|
|
3404
3405
|
process.exit(0);
|
|
3405
3406
|
});
|
|
3406
|
-
program.command("osint").description("OSINT / Ethical Hacking mode — configure HyperClaw for security research").argument("[workflow]", "Workflow preset: recon | bugbounty | pentest | footprint | custom").option("--show", "Show current OSINT profile").option("--reset", "Clear OSINT profile and disable OSINT mode").action(async (workflow, opts) => {
|
|
3407
|
-
const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-
|
|
3407
|
+
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) => {
|
|
3408
|
+
const { osintSetup, osintQuickStart } = await Promise.resolve().then(() => require("./osint-Bsf6RGPv.js"));
|
|
3408
3409
|
if (opts.show || opts.reset) await osintSetup({
|
|
3409
3410
|
show: opts.show,
|
|
3410
3411
|
reset: opts.reset
|
|
3411
3412
|
});
|
|
3412
|
-
else if (workflow === "
|
|
3413
|
+
else if (workflow === "chat") {
|
|
3414
|
+
const { runOsintChat } = await Promise.resolve().then(() => require("./osint-chat-Ark94iFc.js"));
|
|
3415
|
+
await runOsintChat({ model: opts.model });
|
|
3416
|
+
} else if (workflow === "setup" || workflow) await osintSetup({ mode: workflow });
|
|
3413
3417
|
else await osintQuickStart();
|
|
3414
3418
|
process.exit(0);
|
|
3415
3419
|
});
|
|
3416
3420
|
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").action(async (opts) => {
|
|
3417
|
-
const { runChat } = await Promise.resolve().then(() => require("./chat-
|
|
3421
|
+
const { runChat } = await Promise.resolve().then(() => require("./chat-D1Zc73I5.js"));
|
|
3418
3422
|
await runChat({
|
|
3419
3423
|
sessionId: opts.session,
|
|
3420
3424
|
model: opts.model,
|
|
@@ -3424,7 +3428,7 @@ program.command("chat").description("Interactive terminal chat with the agent").
|
|
|
3424
3428
|
});
|
|
3425
3429
|
const agentRunCmd = program.command("agent").description("Run agent with thinking control");
|
|
3426
3430
|
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) => {
|
|
3427
|
-
const { runAgent } = await Promise.resolve().then(() => require("./src-
|
|
3431
|
+
const { runAgent } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
3428
3432
|
await runAgent({
|
|
3429
3433
|
message: opts.message,
|
|
3430
3434
|
thinking: opts.thinking,
|
|
@@ -3440,7 +3444,7 @@ agentRunCmd.requiredOption("-m, --message <text>", "Message to send to the agent
|
|
|
3440
3444
|
});
|
|
3441
3445
|
const threadsCmd = program.command("threads").description("ACP thread-bound agent sessions");
|
|
3442
3446
|
threadsCmd.command("list").description("List agent threads").option("--channel <id>", "Filter by channel").option("--active", "Show only active threads").action(async (opts) => {
|
|
3443
|
-
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-
|
|
3447
|
+
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
3444
3448
|
const mgr = new ACPThreadManager();
|
|
3445
3449
|
const threads = await mgr.list({
|
|
3446
3450
|
channelId: opts.channel,
|
|
@@ -3450,29 +3454,29 @@ threadsCmd.command("list").description("List agent threads").option("--channel <
|
|
|
3450
3454
|
process.exit(0);
|
|
3451
3455
|
});
|
|
3452
3456
|
threadsCmd.command("terminate <id>").description("Terminate a thread").action(async (id) => {
|
|
3453
|
-
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-
|
|
3457
|
+
const { ACPThreadManager } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
3454
3458
|
await new ACPThreadManager().terminate(id);
|
|
3455
3459
|
console.log(require("chalk").green(`\n ✔ Thread terminated: ${id}\n`));
|
|
3456
3460
|
process.exit(0);
|
|
3457
3461
|
});
|
|
3458
3462
|
const canvasCmd = program.command("canvas").description("Live AI-driven UI canvas");
|
|
3459
3463
|
canvasCmd.command("show").description("Show current canvas components").action(async () => {
|
|
3460
|
-
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-
|
|
3464
|
+
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-B1ToXngl.js"));
|
|
3461
3465
|
await new CanvasRenderer().show();
|
|
3462
3466
|
process.exit(0);
|
|
3463
3467
|
});
|
|
3464
3468
|
canvasCmd.command("add <type> <title>").description("Add a canvas component (type: chart|table|form|markdown|image|custom)").action(async (type, title) => {
|
|
3465
|
-
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-
|
|
3469
|
+
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-B1ToXngl.js"));
|
|
3466
3470
|
await new CanvasRenderer().addComponent(type, title);
|
|
3467
3471
|
process.exit(0);
|
|
3468
3472
|
});
|
|
3469
3473
|
canvasCmd.command("clear").description("Clear all canvas components").action(async () => {
|
|
3470
|
-
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-
|
|
3474
|
+
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-B1ToXngl.js"));
|
|
3471
3475
|
await new CanvasRenderer().clear();
|
|
3472
3476
|
process.exit(0);
|
|
3473
3477
|
});
|
|
3474
3478
|
canvasCmd.command("export").description("Export canvas as HTML file").action(async () => {
|
|
3475
|
-
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-
|
|
3479
|
+
const { CanvasRenderer } = await Promise.resolve().then(() => require("./renderer-B1ToXngl.js"));
|
|
3476
3480
|
const fs$7 = require("fs-extra");
|
|
3477
3481
|
const html = await new CanvasRenderer().exportHtml();
|
|
3478
3482
|
const { getHyperClawDir: getHyperClawDir$1 } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
@@ -3494,62 +3498,62 @@ deliveryCmd.command("retry <id>").description("Retry a dead-lettered delivery it
|
|
|
3494
3498
|
});
|
|
3495
3499
|
const mcpCmd = program.command("mcp").description("MCP (Model Context Protocol) server management");
|
|
3496
3500
|
mcpCmd.command("list").description("List configured MCP servers").action(async () => {
|
|
3497
|
-
const { mcpList } = await Promise.resolve().then(() => require("./mcp-
|
|
3501
|
+
const { mcpList } = await Promise.resolve().then(() => require("./mcp-SsMEvl28.js"));
|
|
3498
3502
|
await mcpList();
|
|
3499
3503
|
process.exit(0);
|
|
3500
3504
|
});
|
|
3501
3505
|
mcpCmd.command("add").description("Add MCP server").action(async () => {
|
|
3502
|
-
const { mcpAdd } = await Promise.resolve().then(() => require("./mcp-
|
|
3506
|
+
const { mcpAdd } = await Promise.resolve().then(() => require("./mcp-SsMEvl28.js"));
|
|
3503
3507
|
await mcpAdd();
|
|
3504
3508
|
process.exit(0);
|
|
3505
3509
|
});
|
|
3506
3510
|
mcpCmd.command("remove <id>").description("Remove MCP server").action(async (id) => {
|
|
3507
|
-
const { mcpRemove } = await Promise.resolve().then(() => require("./mcp-
|
|
3511
|
+
const { mcpRemove } = await Promise.resolve().then(() => require("./mcp-SsMEvl28.js"));
|
|
3508
3512
|
await mcpRemove(id);
|
|
3509
3513
|
process.exit(0);
|
|
3510
3514
|
});
|
|
3511
3515
|
mcpCmd.command("probe [id]").description("Test MCP server connection").action(async (id) => {
|
|
3512
|
-
const { mcpProbe } = await Promise.resolve().then(() => require("./mcp-
|
|
3516
|
+
const { mcpProbe } = await Promise.resolve().then(() => require("./mcp-SsMEvl28.js"));
|
|
3513
3517
|
await mcpProbe(id);
|
|
3514
3518
|
process.exit(0);
|
|
3515
3519
|
});
|
|
3516
3520
|
const nodeCmd = program.command("node").description("HyperClaw node management (local, remote, android)");
|
|
3517
3521
|
nodeCmd.command("list").description("List paired nodes").action(async () => {
|
|
3518
|
-
const { nodeList } = await Promise.resolve().then(() => require("./node-
|
|
3522
|
+
const { nodeList } = await Promise.resolve().then(() => require("./node-C4esBfbX.js"));
|
|
3519
3523
|
await nodeList();
|
|
3520
3524
|
process.exit(0);
|
|
3521
3525
|
});
|
|
3522
3526
|
nodeCmd.command("add").description("Add or pair a node").action(async () => {
|
|
3523
|
-
const { nodeAdd } = await Promise.resolve().then(() => require("./node-
|
|
3527
|
+
const { nodeAdd } = await Promise.resolve().then(() => require("./node-C4esBfbX.js"));
|
|
3524
3528
|
await nodeAdd();
|
|
3525
3529
|
process.exit(0);
|
|
3526
3530
|
});
|
|
3527
3531
|
nodeCmd.command("probe [id]").description("Probe node connection").action(async (id) => {
|
|
3528
|
-
const { nodeProbe } = await Promise.resolve().then(() => require("./node-
|
|
3532
|
+
const { nodeProbe } = await Promise.resolve().then(() => require("./node-C4esBfbX.js"));
|
|
3529
3533
|
await nodeProbe(id);
|
|
3530
3534
|
process.exit(0);
|
|
3531
3535
|
});
|
|
3532
3536
|
nodeCmd.command("remove <id>").description("Remove paired node").action(async (id) => {
|
|
3533
|
-
const { nodeRemove } = await Promise.resolve().then(() => require("./node-
|
|
3537
|
+
const { nodeRemove } = await Promise.resolve().then(() => require("./node-C4esBfbX.js"));
|
|
3534
3538
|
await nodeRemove(id);
|
|
3535
3539
|
process.exit(0);
|
|
3536
3540
|
});
|
|
3537
3541
|
const arCmd = program.command("auto-reply").description("Auto-reply rule engine");
|
|
3538
3542
|
arCmd.command("list").action(async () => {
|
|
3539
|
-
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-
|
|
3543
|
+
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-Cqen1Mpt.js"));
|
|
3540
3544
|
const e = new AutoReplyEngine();
|
|
3541
3545
|
await e.load();
|
|
3542
3546
|
e.showList();
|
|
3543
3547
|
process.exit(0);
|
|
3544
3548
|
});
|
|
3545
3549
|
arCmd.command("toggle <id>").action(async (id) => {
|
|
3546
|
-
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-
|
|
3550
|
+
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-Cqen1Mpt.js"));
|
|
3547
3551
|
const e = new AutoReplyEngine();
|
|
3548
3552
|
await e.toggle(id);
|
|
3549
3553
|
process.exit(0);
|
|
3550
3554
|
});
|
|
3551
3555
|
arCmd.command("remove <id>").action(async (id) => {
|
|
3552
|
-
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-
|
|
3556
|
+
const { AutoReplyEngine } = await Promise.resolve().then(() => require("./rules-Cqen1Mpt.js"));
|
|
3553
3557
|
const e = new AutoReplyEngine();
|
|
3554
3558
|
await e.remove(id);
|
|
3555
3559
|
process.exit(0);
|
|
@@ -3558,7 +3562,7 @@ const gmailCmd = program.command("gmail").description("Gmail Pub/Sub real-time n
|
|
|
3558
3562
|
gmailCmd.command("watch-setup").description("Register Gmail watch for push notifications. Requires: hyperclaw auth oauth google-gmail").requiredOption("-t, --topic <name>", "Pub/Sub topic (e.g. projects/myproject/topics/gmail-push)").option("-l, --labels <ids>", "Label IDs to watch (comma-separated)", "INBOX").action(async (opts) => {
|
|
3559
3563
|
const chalk$11 = require("chalk");
|
|
3560
3564
|
try {
|
|
3561
|
-
const { setupGmailWatch } = await Promise.resolve().then(() => require("./gmail-watch-setup-
|
|
3565
|
+
const { setupGmailWatch } = await Promise.resolve().then(() => require("./gmail-watch-setup-1RGIHNdu.js"));
|
|
3562
3566
|
const labelIds = opts.labels.split(",").map((s) => s.trim()).filter(Boolean);
|
|
3563
3567
|
const result = await setupGmailWatch({
|
|
3564
3568
|
topicName: opts.topic,
|
|
@@ -3578,7 +3582,7 @@ gmailCmd.command("watch-setup").description("Register Gmail watch for push notif
|
|
|
3578
3582
|
const cronCmd = program.command("cron").description("Scheduled tasks (cron → agent prompt)");
|
|
3579
3583
|
cronCmd.command("list").action(async () => {
|
|
3580
3584
|
const chalk$11 = require("chalk");
|
|
3581
|
-
const { loadCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-
|
|
3585
|
+
const { loadCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-OQbgmenS.js"));
|
|
3582
3586
|
const tasks = await loadCronTasks();
|
|
3583
3587
|
console.log(chalk$11.bold.cyan("\n ⏰ CRON TASKS\n"));
|
|
3584
3588
|
if (tasks.length === 0) {
|
|
@@ -3598,7 +3602,7 @@ cronCmd.command("list").action(async () => {
|
|
|
3598
3602
|
});
|
|
3599
3603
|
cronCmd.command("add").arguments("<schedule> <prompt>").option("-n, --name <name>", "Task name").action(async (schedule, prompt, opts) => {
|
|
3600
3604
|
const chalk$11 = require("chalk");
|
|
3601
|
-
const { loadCronTasks, addCronTask, saveCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-
|
|
3605
|
+
const { loadCronTasks, addCronTask, saveCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-OQbgmenS.js"));
|
|
3602
3606
|
await loadCronTasks();
|
|
3603
3607
|
addCronTask(schedule, prompt, opts.name);
|
|
3604
3608
|
await saveCronTasks();
|
|
@@ -3608,7 +3612,7 @@ cronCmd.command("add").arguments("<schedule> <prompt>").option("-n, --name <name
|
|
|
3608
3612
|
});
|
|
3609
3613
|
cronCmd.command("remove <id>").action(async (id) => {
|
|
3610
3614
|
const chalk$11 = require("chalk");
|
|
3611
|
-
const { loadCronTasks, removeCronTask, saveCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-
|
|
3615
|
+
const { loadCronTasks, removeCronTask, saveCronTasks } = await Promise.resolve().then(() => require("./cron-tasks-OQbgmenS.js"));
|
|
3612
3616
|
await loadCronTasks();
|
|
3613
3617
|
if (removeCronTask(id)) {
|
|
3614
3618
|
await saveCronTasks();
|
|
@@ -3668,20 +3672,20 @@ program.command("nodes").description("List connected mobile nodes (iOS/Android C
|
|
|
3668
3672
|
});
|
|
3669
3673
|
const whCmd = program.command("webhooks").description("Webhook endpoint management");
|
|
3670
3674
|
whCmd.command("list").action(async () => {
|
|
3671
|
-
const { WebhookManager } = await Promise.resolve().then(() => require("./manager
|
|
3675
|
+
const { WebhookManager } = await Promise.resolve().then(() => require("./manager--wG9JdFW.js"));
|
|
3672
3676
|
const m = new WebhookManager();
|
|
3673
3677
|
await m.load();
|
|
3674
3678
|
m.showList();
|
|
3675
3679
|
process.exit(0);
|
|
3676
3680
|
});
|
|
3677
3681
|
whCmd.command("remove <id>").action(async (id) => {
|
|
3678
|
-
const { WebhookManager } = await Promise.resolve().then(() => require("./manager
|
|
3682
|
+
const { WebhookManager } = await Promise.resolve().then(() => require("./manager--wG9JdFW.js"));
|
|
3679
3683
|
const m = new WebhookManager();
|
|
3680
3684
|
await m.remove(id);
|
|
3681
3685
|
process.exit(0);
|
|
3682
3686
|
});
|
|
3683
3687
|
whCmd.command("toggle <id>").action(async (id) => {
|
|
3684
|
-
const { WebhookManager } = await Promise.resolve().then(() => require("./manager
|
|
3688
|
+
const { WebhookManager } = await Promise.resolve().then(() => require("./manager--wG9JdFW.js"));
|
|
3685
3689
|
const m = new WebhookManager();
|
|
3686
3690
|
await m.toggle(id);
|
|
3687
3691
|
process.exit(0);
|
|
@@ -3690,7 +3694,7 @@ const logsCmd = program.command("logs").description("View gateway logs");
|
|
|
3690
3694
|
logsCmd.option("-n, --lines <n>", "Number of lines to show", "50");
|
|
3691
3695
|
logsCmd.option("-f, --follow", "Stream logs in real time");
|
|
3692
3696
|
logsCmd.action(async (opts) => {
|
|
3693
|
-
const { tailLog, streamLog } = await Promise.resolve().then(() => require("./logger-
|
|
3697
|
+
const { tailLog, streamLog } = await Promise.resolve().then(() => require("./logger-CG38Idq4.js"));
|
|
3694
3698
|
if (opts.follow) await streamLog();
|
|
3695
3699
|
else {
|
|
3696
3700
|
await tailLog(parseInt(opts.lines));
|
|
@@ -3698,7 +3702,7 @@ logsCmd.action(async (opts) => {
|
|
|
3698
3702
|
}
|
|
3699
3703
|
});
|
|
3700
3704
|
program.command("gateway:serve").description("Start the gateway server in the foreground (used by daemon)").action(async () => {
|
|
3701
|
-
const { startGateway } = await Promise.resolve().then(() => require("./server-
|
|
3705
|
+
const { startGateway } = await Promise.resolve().then(() => require("./server-CRhXiGI9.js"));
|
|
3702
3706
|
await startGateway();
|
|
3703
3707
|
process.on("SIGINT", () => process.exit(0));
|
|
3704
3708
|
process.on("SIGTERM", () => process.exit(0));
|
|
@@ -3755,9 +3759,9 @@ const authCmd = program.command("auth").description("OAuth and provider credenti
|
|
|
3755
3759
|
authCmd.command("add <service_id>").description("Add API key for a service (any provider we do not ship). Stored in credentials/ and .env.").option("--key <api_key>", "API key (prompts if omitted)").option("--base-url <url>", "Base URL (optional, e.g. https://api.example.com)").option("--env-var <name>", "Env var name (default: <SERVICE_ID>_API_KEY)").action(async (serviceId, opts) => {
|
|
3756
3760
|
const chalk$11 = require("chalk");
|
|
3757
3761
|
const inquirer$2 = require("inquirer");
|
|
3758
|
-
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-
|
|
3762
|
+
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-Bmm9e1SS.js"));
|
|
3759
3763
|
const { getHyperClawDir: getHyperClawDir$1, getEnvFilePath } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3760
|
-
const { getApiKeyGuide, GENERIC_API_KEY_STEPS } = await Promise.resolve().then(() => require("./api-keys-guide
|
|
3764
|
+
const { getApiKeyGuide, GENERIC_API_KEY_STEPS } = await Promise.resolve().then(() => require("./api-keys-guide--73Bq0Ey.js"));
|
|
3761
3765
|
const fs$7 = await import("fs-extra");
|
|
3762
3766
|
const path$5 = await import("path");
|
|
3763
3767
|
const guide = getApiKeyGuide(serviceId);
|
|
@@ -3810,7 +3814,7 @@ authCmd.command("add <service_id>").description("Add API key for a service (any
|
|
|
3810
3814
|
});
|
|
3811
3815
|
authCmd.command("remove <service_id>").description("Remove API key for a service from credentials and .env").action(async (serviceId) => {
|
|
3812
3816
|
const chalk$11 = require("chalk");
|
|
3813
|
-
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-
|
|
3817
|
+
const { CredentialsStore } = await Promise.resolve().then(() => require("./credentials-store-Bmm9e1SS.js"));
|
|
3814
3818
|
const { getHyperClawDir: getHyperClawDir$1, getEnvFilePath } = await Promise.resolve().then(() => require("./paths-D-QecARF.js"));
|
|
3815
3819
|
const fs$7 = await import("fs-extra");
|
|
3816
3820
|
const safeId = serviceId.replace(/[^a-zA-Z0-9_-]/g, "_").toLowerCase();
|
|
@@ -3830,7 +3834,7 @@ authCmd.command("oauth <provider>").description("Run full OAuth flow. Providers:
|
|
|
3830
3834
|
const chalk$11 = require("chalk");
|
|
3831
3835
|
const ora$4 = (await import("ora")).default;
|
|
3832
3836
|
try {
|
|
3833
|
-
const { runOAuthFlow } = await Promise.resolve().then(() => require("./oauth-flow-
|
|
3837
|
+
const { runOAuthFlow } = await Promise.resolve().then(() => require("./oauth-flow-BbLQTzZk.js"));
|
|
3834
3838
|
const spinner = ora$4("Starting OAuth flow...").start();
|
|
3835
3839
|
spinner.text = "Opening browser — complete the consent and return here.";
|
|
3836
3840
|
const tokens = await runOAuthFlow(provider, {
|
|
@@ -3838,7 +3842,7 @@ authCmd.command("oauth <provider>").description("Run full OAuth flow. Providers:
|
|
|
3838
3842
|
clientSecret: opts.clientSecret
|
|
3839
3843
|
});
|
|
3840
3844
|
spinner.stop();
|
|
3841
|
-
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-
|
|
3845
|
+
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-UZyG84s7.js"));
|
|
3842
3846
|
const now = Math.floor(Date.now() / 1e3);
|
|
3843
3847
|
const expires_at = tokens.expires_in ? now + tokens.expires_in : void 0;
|
|
3844
3848
|
const tokenUrl = provider === "google" || provider === "google-gmail" ? "https://oauth2.googleapis.com/token" : provider === "microsoft" ? "https://login.microsoftonline.com/common/oauth2/v2.0/token" : void 0;
|
|
@@ -3873,7 +3877,7 @@ authCmd.command("setup-token <provider>").description("Save setup token (Anthrop
|
|
|
3873
3877
|
console.log(chalk$11.red("\n ✖ No token provided.\n"));
|
|
3874
3878
|
process.exit(1);
|
|
3875
3879
|
}
|
|
3876
|
-
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-
|
|
3880
|
+
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-UZyG84s7.js"));
|
|
3877
3881
|
await writeOAuthToken("anthropic-setup", {
|
|
3878
3882
|
access_token: token.trim(),
|
|
3879
3883
|
token_url: "https://api.anthropic.com"
|
|
@@ -3884,7 +3888,7 @@ authCmd.command("setup-token <provider>").description("Save setup token (Anthrop
|
|
|
3884
3888
|
});
|
|
3885
3889
|
authCmd.command("oauth-set <provider>").description("Save OAuth tokens manually (access_token, refresh_token, etc.) to ~/.hyperclaw/oauth-<provider>.json").option("--token <access_token>", "Access token").option("--refresh <refresh_token>", "Refresh token (optional)").option("--expires-in <seconds>", "Token lifetime in seconds (optional)").option("--token-url <url>", "Refresh endpoint URL (optional)").action(async (provider, opts) => {
|
|
3886
3890
|
const chalk$11 = require("chalk");
|
|
3887
|
-
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-
|
|
3891
|
+
const { writeOAuthToken } = await Promise.resolve().then(() => require("./oauth-provider-UZyG84s7.js"));
|
|
3888
3892
|
const access_token = opts.token || process.env.OAUTH_ACCESS_TOKEN;
|
|
3889
3893
|
if (!access_token) {
|
|
3890
3894
|
console.log(chalk$11.red("\n ✖ Provide --token <access_token> or set OAUTH_ACCESS_TOKEN\n"));
|
|
@@ -3912,7 +3916,7 @@ workspaceCmd.command("init [dir]").description("Initialize workspace files (SOUL
|
|
|
3912
3916
|
try {
|
|
3913
3917
|
cfg = await fs$7.readJson(getConfigPath$1());
|
|
3914
3918
|
} catch {}
|
|
3915
|
-
const { initWorkspaceFiles } = await Promise.resolve().then(() => require("./memory-
|
|
3919
|
+
const { initWorkspaceFiles } = await Promise.resolve().then(() => require("./memory-BGgCBSx1.js"));
|
|
3916
3920
|
await initWorkspaceFiles({
|
|
3917
3921
|
agentName: cfg.identity?.agentName || "Hyper",
|
|
3918
3922
|
personality: cfg.identity?.personality || "helpful and concise",
|
|
@@ -3951,13 +3955,13 @@ workspaceCmd.command("show [dir]").description("Show workspace files summary").a
|
|
|
3951
3955
|
});
|
|
3952
3956
|
const botCmd = program.command("bot").description("HyperClaw Bot — companion bot for remote gateway control");
|
|
3953
3957
|
botCmd.command("status").action(async () => {
|
|
3954
|
-
const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
3958
|
+
const { showBotStatus } = await Promise.resolve().then(() => require("./hyperclawbot-CgrV46DA.js"));
|
|
3955
3959
|
await showBotStatus();
|
|
3956
3960
|
process.exit(0);
|
|
3957
3961
|
});
|
|
3958
3962
|
botCmd.command("setup").description("Configure HyperClaw Bot (Telegram token, allowed users)").action(async () => {
|
|
3959
3963
|
const inquirer$2 = require("inquirer");
|
|
3960
|
-
const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
3964
|
+
const { saveBotConfig } = await Promise.resolve().then(() => require("./hyperclawbot-CgrV46DA.js"));
|
|
3961
3965
|
const chalk$11 = require("chalk");
|
|
3962
3966
|
console.log(chalk$11.bold.hex("#06b6d4")("\n 🦅 HYPERCLAW BOT SETUP\n"));
|
|
3963
3967
|
console.log(chalk$11.gray(" Create a bot at t.me/BotFather, then paste the token below.\n"));
|
|
@@ -4019,14 +4023,14 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
|
|
|
4019
4023
|
cwd: process.cwd()
|
|
4020
4024
|
});
|
|
4021
4025
|
child.unref();
|
|
4022
|
-
const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4026
|
+
const { writeBotPid } = await Promise.resolve().then(() => require("./hyperclawbot-CgrV46DA.js"));
|
|
4023
4027
|
await writeBotPid(child.pid);
|
|
4024
4028
|
console.log(require("chalk").green(`\n ✔ HyperClaw Bot started in background (PID ${child.pid})`));
|
|
4025
4029
|
console.log(require("chalk").gray(" Stop with: hyperclaw bot stop\n"));
|
|
4026
4030
|
process.exit(0);
|
|
4027
4031
|
return;
|
|
4028
4032
|
}
|
|
4029
|
-
const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4033
|
+
const { loadBotConfig, TelegramHyperClawBot, DiscordHyperClawBot } = await Promise.resolve().then(() => require("./hyperclawbot-CgrV46DA.js"));
|
|
4030
4034
|
const cfg = await loadBotConfig();
|
|
4031
4035
|
if (!cfg) {
|
|
4032
4036
|
console.log(require("chalk").red("\n ✖ HyperClaw Bot not configured. Run: hyperclaw bot setup\n"));
|
|
@@ -4053,41 +4057,41 @@ botCmd.command("start").description("Start HyperClaw Bot (foreground or backgrou
|
|
|
4053
4057
|
});
|
|
4054
4058
|
botCmd.command("stop").description("Stop HyperClaw Bot (when running in background)").action(async () => {
|
|
4055
4059
|
const chalk$11 = require("chalk");
|
|
4056
|
-
const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-
|
|
4060
|
+
const { stopBotProcess } = await Promise.resolve().then(() => require("./hyperclawbot-CgrV46DA.js"));
|
|
4057
4061
|
const stopped = await stopBotProcess();
|
|
4058
4062
|
if (stopped) console.log(chalk$11.green("\n ✔ HyperClaw Bot stopped\n"));
|
|
4059
4063
|
else console.log(chalk$11.gray("\n Bot not running in background (no PID file). Use Ctrl+C to stop foreground bot.\n"));
|
|
4060
4064
|
process.exit(stopped ? 0 : 1);
|
|
4061
4065
|
});
|
|
4062
4066
|
memCmd.command("search <query>").description("Search MEMORY.md").action(async (query) => {
|
|
4063
|
-
const { searchMemory } = await Promise.resolve().then(() => require("./src-
|
|
4067
|
+
const { searchMemory } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4064
4068
|
await searchMemory(query);
|
|
4065
4069
|
process.exit(0);
|
|
4066
4070
|
});
|
|
4067
4071
|
memCmd.command("auto-show").description("Show auto-extracted memories from MEMORY.md").action(async () => {
|
|
4068
|
-
const { showMemory } = await Promise.resolve().then(() => require("./src-
|
|
4072
|
+
const { showMemory } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4069
4073
|
await showMemory();
|
|
4070
4074
|
process.exit(0);
|
|
4071
4075
|
});
|
|
4072
4076
|
memCmd.command("clear").description("Clear all auto-extracted memories").action(async () => {
|
|
4073
|
-
const { clearMemory } = await Promise.resolve().then(() => require("./src-
|
|
4077
|
+
const { clearMemory } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4074
4078
|
await clearMemory();
|
|
4075
4079
|
process.exit(0);
|
|
4076
4080
|
});
|
|
4077
4081
|
memCmd.command("save <text>").description("Manually save a fact to MEMORY.md").action(async (text) => {
|
|
4078
|
-
const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-
|
|
4082
|
+
const { saveMemoryDirect } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4079
4083
|
await saveMemoryDirect(text);
|
|
4080
4084
|
console.log(chalk.default.hex("#06b6d4")(` ✅ Saved: ${text}\n`));
|
|
4081
4085
|
process.exit(0);
|
|
4082
4086
|
});
|
|
4083
4087
|
const pcCmd = program.command("pc").description("PC access — give the AI access to your computer");
|
|
4084
4088
|
pcCmd.command("status").description("Show PC access status and config").action(async () => {
|
|
4085
|
-
const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-
|
|
4089
|
+
const { showPCAccessStatus } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4086
4090
|
await showPCAccessStatus();
|
|
4087
4091
|
process.exit(0);
|
|
4088
4092
|
});
|
|
4089
4093
|
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) => {
|
|
4090
|
-
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-
|
|
4094
|
+
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4091
4095
|
const level = opts.level;
|
|
4092
4096
|
const allowed = [
|
|
4093
4097
|
"read-only",
|
|
@@ -4114,7 +4118,7 @@ pcCmd.command("enable").description("Enable PC access for the AI").option("--lev
|
|
|
4114
4118
|
process.exit(0);
|
|
4115
4119
|
});
|
|
4116
4120
|
pcCmd.command("disable").description("Disable PC access").action(async () => {
|
|
4117
|
-
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-
|
|
4121
|
+
const { savePCAccessConfig } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4118
4122
|
await savePCAccessConfig({ enabled: false });
|
|
4119
4123
|
console.log(chalk.default.hex("#06b6d4")("\n ✅ PC access disabled\n"));
|
|
4120
4124
|
process.exit(0);
|
|
@@ -4139,7 +4143,7 @@ pcCmd.command("log").description("Show PC access audit log").option("-n, --lines
|
|
|
4139
4143
|
process.exit(0);
|
|
4140
4144
|
});
|
|
4141
4145
|
pcCmd.command("run <command>").description("Run a shell command via PC access (must be enabled)").action(async (command) => {
|
|
4142
|
-
const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-
|
|
4146
|
+
const { loadPCAccessConfig, getPCAccessTools } = await Promise.resolve().then(() => require("./src-BxmkZ9RH.js"));
|
|
4143
4147
|
const cfg = await loadPCAccessConfig();
|
|
4144
4148
|
if (!cfg.enabled) {
|
|
4145
4149
|
console.log(chalk.default.red("\n ✖ PC access disabled. Run: hyperclaw pc enable\n"));
|
|
@@ -4153,7 +4157,7 @@ pcCmd.command("run <command>").description("Run a shell command via PC access (m
|
|
|
4153
4157
|
process.exit(0);
|
|
4154
4158
|
});
|
|
4155
4159
|
program.command("setup").description("Setup wizard — alias for `hyperclaw onboard`").option("--install-daemon", "Auto-install system daemon").option("--reset", "Reset config before running wizard").option("--non-interactive", "Non-interactive mode").option("--json", "Output result as JSON (use with --non-interactive)").option("--anthropic-api-key <key>", "Anthropic API key (non-interactive)").option("--openai-api-key <key>", "OpenAI API key (non-interactive)").option("--gateway-port <port>", "Gateway port (non-interactive)", "18789").option("--gateway-bind <bind>", "Gateway bind: loopback | all", "loopback").action(async (opts) => {
|
|
4156
|
-
await new
|
|
4160
|
+
await new require_banner.Banner().showNeonBanner(false);
|
|
4157
4161
|
const wizardOpts = {
|
|
4158
4162
|
wizard: true,
|
|
4159
4163
|
installDaemon: opts.installDaemon ?? false,
|
|
@@ -4170,7 +4174,7 @@ program.command("setup").description("Setup wizard — alias for `hyperclaw onbo
|
|
|
4170
4174
|
});
|
|
4171
4175
|
async function runUpdateCheck() {
|
|
4172
4176
|
try {
|
|
4173
|
-
const { checkForUpdates: checkForUpdates$1, notifyUpdateAvailable } = await Promise.resolve().then(() => require("./update-check-
|
|
4177
|
+
const { checkForUpdates: checkForUpdates$1, notifyUpdateAvailable } = await Promise.resolve().then(() => require("./update-check-C4te7JmY.js"));
|
|
4174
4178
|
const path$5 = require("path");
|
|
4175
4179
|
const { readFileSync } = require("fs");
|
|
4176
4180
|
const pkgPath = path$5.resolve(__dirname, "../package.json");
|
|
@@ -4180,10 +4184,10 @@ async function runUpdateCheck() {
|
|
|
4180
4184
|
} catch {}
|
|
4181
4185
|
}
|
|
4182
4186
|
if (process.argv.length === 2) (async () => {
|
|
4183
|
-
const { ConfigManager: ConfigManager$1 } = await Promise.resolve().then(() => require("./manager-
|
|
4187
|
+
const { ConfigManager: ConfigManager$1 } = await Promise.resolve().then(() => require("./manager-BNc21xgG.js"));
|
|
4184
4188
|
const cfg = await new ConfigManager$1().load().catch(() => null);
|
|
4185
4189
|
if (cfg?.provider?.apiKey || cfg?.provider?.providerId) {
|
|
4186
|
-
await new
|
|
4190
|
+
await new require_banner.Banner().showNeonBanner(false);
|
|
4187
4191
|
const { getTheme } = await Promise.resolve().then(() => require("./theme-DdZT-Bq4.js"));
|
|
4188
4192
|
const t = getTheme(false);
|
|
4189
4193
|
const chalk$11 = require("chalk");
|
|
@@ -4196,8 +4200,8 @@ if (process.argv.length === 2) (async () => {
|
|
|
4196
4200
|
console.log(` ${t.c("hyperclaw doctor")} — health check & fix issues`);
|
|
4197
4201
|
console.log(` ${t.c("hyperclaw --help")} — all commands\n`);
|
|
4198
4202
|
} else {
|
|
4199
|
-
await new
|
|
4200
|
-
const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-
|
|
4203
|
+
await new require_banner.Banner().showNeonBanner(false);
|
|
4204
|
+
const { HyperClawWizard: HyperClawWizard$1 } = await Promise.resolve().then(() => require("./onboard-DEwuHrMj.js"));
|
|
4201
4205
|
await new HyperClawWizard$1().run({ wizard: true });
|
|
4202
4206
|
}
|
|
4203
4207
|
await runUpdateCheck();
|