@agentvault/agentvault 0.14.1 → 0.14.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -45881,6 +45881,7 @@ var init_openclaw_compat = __esm({
45881
45881
  var http_handlers_exports = {};
45882
45882
  __export(http_handlers_exports, {
45883
45883
  handleActionRequest: () => handleActionRequest,
45884
+ handleDecisionRequest: () => handleDecisionRequest,
45884
45885
  handleSendRequest: () => handleSendRequest,
45885
45886
  handleStatusRequest: () => handleStatusRequest
45886
45887
  });
@@ -45934,6 +45935,34 @@ async function handleActionRequest(parsed, channel2) {
45934
45935
  return { status: 500, body: { ok: false, error: String(err) } };
45935
45936
  }
45936
45937
  }
45938
+ async function handleDecisionRequest(parsed, channel2) {
45939
+ const title = parsed.title;
45940
+ if (!title || typeof title !== "string") {
45941
+ return { status: 400, body: { ok: false, error: "Missing 'title' field" } };
45942
+ }
45943
+ const options = parsed.options;
45944
+ if (!Array.isArray(options) || options.length < 2) {
45945
+ return { status: 400, body: { ok: false, error: "'options' must be an array with at least 2 items" } };
45946
+ }
45947
+ for (const opt of options) {
45948
+ if (!opt || typeof opt !== "object" || !opt.option_id || !opt.label) {
45949
+ return { status: 400, body: { ok: false, error: "Each option must have 'option_id' and 'label'" } };
45950
+ }
45951
+ }
45952
+ try {
45953
+ const decision_id = await channel2.sendDecisionRequest({
45954
+ title,
45955
+ description: parsed.description,
45956
+ options,
45957
+ context_refs: parsed.context_refs,
45958
+ deadline: parsed.deadline,
45959
+ auto_action: parsed.auto_action
45960
+ });
45961
+ return { status: 200, body: { ok: true, decision_id } };
45962
+ } catch (err) {
45963
+ return { status: 500, body: { ok: false, error: String(err) } };
45964
+ }
45965
+ }
45937
45966
  function handleStatusRequest(channel2) {
45938
45967
  return {
45939
45968
  status: 200,
@@ -46738,6 +46767,22 @@ var init_channel = __esm({
46738
46767
  res.end(JSON.stringify({ ok: false, error: String(err) }));
46739
46768
  }
46740
46769
  });
46770
+ } else if (req.method === "POST" && req.url === "/decision") {
46771
+ let body = "";
46772
+ req.on("data", (chunk) => {
46773
+ body += chunk.toString();
46774
+ });
46775
+ req.on("end", async () => {
46776
+ try {
46777
+ const parsed = JSON.parse(body);
46778
+ const result = await handlers.handleDecisionRequest(parsed, this);
46779
+ res.writeHead(result.status, { "Content-Type": "application/json" });
46780
+ res.end(JSON.stringify(result.body));
46781
+ } catch (err) {
46782
+ res.writeHead(500, { "Content-Type": "application/json" });
46783
+ res.end(JSON.stringify({ ok: false, error: String(err) }));
46784
+ }
46785
+ });
46741
46786
  } else if (req.method === "POST" && req.url === "/action") {
46742
46787
  let body = "";
46743
46788
  req.on("data", (chunk) => {
@@ -46760,7 +46805,7 @@ var init_channel = __esm({
46760
46805
  res.end(JSON.stringify(result.body));
46761
46806
  } else {
46762
46807
  res.writeHead(404, { "Content-Type": "application/json" });
46763
- res.end(JSON.stringify({ ok: false, error: "Not found. Use POST /send, POST /action, or GET /status" }));
46808
+ res.end(JSON.stringify({ ok: false, error: "Not found. Use POST /send, POST /decision, POST /action, or GET /status" }));
46764
46809
  }
46765
46810
  });
46766
46811
  this._httpServer.listen(port, "127.0.0.1", () => {
@@ -48686,6 +48731,7 @@ var init_openclaw_plugin = __esm({
48686
48731
  var gateway_send_exports = {};
48687
48732
  __export(gateway_send_exports, {
48688
48733
  checkGateway: () => checkGateway,
48734
+ sendDecisionToOwner: () => sendDecisionToOwner,
48689
48735
  sendToOwner: () => sendToOwner
48690
48736
  });
48691
48737
  function resolveBaseUrl(options) {
@@ -48726,6 +48772,34 @@ async function sendToOwner(text, options) {
48726
48772
  return { ok: false, error: friendlyError(err) };
48727
48773
  }
48728
48774
  }
48775
+ async function sendDecisionToOwner(request, options) {
48776
+ if (!request.title || typeof request.title !== "string") {
48777
+ return { ok: false, error: "Decision title must be a non-empty string" };
48778
+ }
48779
+ if (!Array.isArray(request.options) || request.options.length < 2) {
48780
+ return { ok: false, error: "Decision must have at least 2 options" };
48781
+ }
48782
+ requestHeartbeatNow({ reason: "proactive-decision" }).catch(() => {
48783
+ });
48784
+ try {
48785
+ const base = resolveBaseUrl(options);
48786
+ const path = process.env.OPENCLAW_GATEWAY_URL ? "/agentvault/decision" : "/decision";
48787
+ const res = await fetch(`${base}${path}`, {
48788
+ method: "POST",
48789
+ headers: { "Content-Type": "application/json" },
48790
+ body: JSON.stringify(request),
48791
+ signal: options?.signal
48792
+ });
48793
+ if (!res.ok) {
48794
+ const body = await res.text().catch(() => "");
48795
+ return { ok: false, error: `HTTP ${res.status}${body ? `: ${body}` : ""}` };
48796
+ }
48797
+ const data = await res.json();
48798
+ return { ok: true, decision_id: data.decision_id };
48799
+ } catch (err) {
48800
+ return { ok: false, error: friendlyError(err) };
48801
+ }
48802
+ }
48729
48803
  async function checkGateway(options) {
48730
48804
  try {
48731
48805
  const base = resolveBaseUrl(options);
@@ -49143,12 +49217,251 @@ var init_setup = __esm({
49143
49217
  }
49144
49218
  });
49145
49219
 
49220
+ // src/create-agent.ts
49221
+ var create_agent_exports = {};
49222
+ __export(create_agent_exports, {
49223
+ findNextPort: () => findNextPort,
49224
+ generateWorkspaceFiles: () => generateWorkspaceFiles,
49225
+ openclawHome: () => openclawHome,
49226
+ readOpenClawConfig: () => readOpenClawConfig,
49227
+ runCreateCommand: () => runCreateCommand
49228
+ });
49229
+ import { execSync as execSync2 } from "node:child_process";
49230
+ import { existsSync, mkdirSync, readFileSync, writeFileSync, copyFileSync } from "node:fs";
49231
+ import { join as join3 } from "node:path";
49232
+ function openclawHome() {
49233
+ const home = process.env.HOME ?? process.env.USERPROFILE ?? "";
49234
+ return join3(home, ".openclaw");
49235
+ }
49236
+ function readOpenClawConfig(home) {
49237
+ const configPath = join3(home, "openclaw.json");
49238
+ const raw = readFileSync(configPath, "utf-8");
49239
+ return JSON.parse(raw);
49240
+ }
49241
+ function writeOpenClawConfig(home, config, backupSuffix) {
49242
+ const configPath = join3(home, "openclaw.json");
49243
+ const backupPath = `${configPath}.bak.pre-${backupSuffix}`;
49244
+ copyFileSync(configPath, backupPath);
49245
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
49246
+ }
49247
+ function collectPorts(config) {
49248
+ const ports = [];
49249
+ const accounts = config?.channels?.agentvault?.accounts;
49250
+ if (accounts && typeof accounts === "object") {
49251
+ for (const acct of Object.values(accounts)) {
49252
+ if (typeof acct.httpPort === "number") {
49253
+ ports.push(acct.httpPort);
49254
+ }
49255
+ }
49256
+ }
49257
+ return ports;
49258
+ }
49259
+ function findNextPort(config, startPort = 18790) {
49260
+ const ports = collectPorts(config);
49261
+ if (ports.length === 0) return startPort;
49262
+ return Math.max(...ports, startPort - 1) + 1;
49263
+ }
49264
+ function isPortInUse(config, port) {
49265
+ return collectPorts(config).includes(port);
49266
+ }
49267
+ function generateWorkspaceFiles(name2) {
49268
+ const displayName = name2.charAt(0).toUpperCase() + name2.slice(1).toLowerCase();
49269
+ return {
49270
+ "IDENTITY.md": `# IDENTITY.md - Who Am I?
49271
+
49272
+ - **Name:** ${displayName}
49273
+ - **Creature:** AI assistant \u2014 a capable peer agent in the AgentVault network
49274
+ - **Vibe:** Direct, competent, focused on their specialty domain
49275
+ - **Emoji:** (placeholder \u2014 update to something fitting)
49276
+ - **Avatar:** _(none set yet)_
49277
+
49278
+ > TODO: Customize this file to give ${name2} a distinct identity.
49279
+ `,
49280
+ "SOUL.md": `# SOUL.md - Who You Are
49281
+
49282
+ > TODO: Define ${name2}'s personality, tone, and behavioral rules.
49283
+ > Copy and adapt from ~/.openclaw/workspace/SOUL.md as a starting point.
49284
+
49285
+ ## Core Truths
49286
+
49287
+ - Be genuinely helpful, not performatively helpful.
49288
+ - Have opinions. Be resourceful before asking.
49289
+ - Earn trust through competence.
49290
+
49291
+ ## Channel Reply Rules
49292
+
49293
+ - Never include reasoning or internal logic in visible replies.
49294
+ - No narrating your approach before or after tool calls.
49295
+ - Just deliver the answer \u2014 clean and direct.
49296
+
49297
+ ## Vibe
49298
+
49299
+ _(Define ${name2}'s specific personality here.)_
49300
+ `,
49301
+ "HEARTBEAT.md": `# Heartbeat
49302
+
49303
+ - Stay available. If nothing needs attention, reply HEARTBEAT_OK.
49304
+ - **Heartbeat replies are INTERNAL ONLY.** Reply with ONLY \`HEARTBEAT_OK\` when nothing needs attention.
49305
+ - If something genuinely urgent needs attention, send it proactively FIRST, THEN reply HEARTBEAT_OK.
49306
+ `,
49307
+ "MEMORY.md": `# MEMORY.md - Long-Term Memory
49308
+
49309
+ _(Empty \u2014 ${name2} starts with a clean memory. Update as the agent learns.)_
49310
+ `
49311
+ };
49312
+ }
49313
+ async function runCreateCommand(options) {
49314
+ const { name: name2, token: token2, apiUrl: apiUrl2, force } = options;
49315
+ const home = openclawHome();
49316
+ const configPath = join3(home, "openclaw.json");
49317
+ const workspaceDir = join3(home, `workspace-${name2}`);
49318
+ const dataDir2 = join3(home, "agents", name2, "agentvault-data");
49319
+ const templateDir = join3(home, "workspace");
49320
+ console.log(`
49321
+ \u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557
49322
+ \u2551 AgentVault \u2014 Create New Agent \u2551
49323
+ \u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D
49324
+ `);
49325
+ console.log(" Step 1/7 \u2014 Preflight checks...");
49326
+ try {
49327
+ execSync2("openclaw --version", { stdio: "pipe" });
49328
+ } catch {
49329
+ console.error(" Error: 'openclaw' not found in PATH. Is OpenClaw installed?");
49330
+ process.exit(1);
49331
+ }
49332
+ if (!existsSync(configPath)) {
49333
+ console.error(` Error: openclaw.json not found at ${configPath}`);
49334
+ process.exit(1);
49335
+ }
49336
+ console.log(" Preflight passed.\n");
49337
+ console.log(" Step 2/7 \u2014 Detecting port...");
49338
+ const config = readOpenClawConfig(home);
49339
+ let port;
49340
+ if (options.port != null) {
49341
+ port = options.port;
49342
+ if (isPortInUse(config, port)) {
49343
+ console.error(` Error: Port ${port} is already in use in openclaw.json.`);
49344
+ process.exit(1);
49345
+ }
49346
+ console.log(` Using explicit port ${port}.
49347
+ `);
49348
+ } else {
49349
+ port = findNextPort(config);
49350
+ console.log(` Auto-assigned port ${port}.
49351
+ `);
49352
+ }
49353
+ console.log(" Step 3/7 \u2014 Creating agent with OpenClaw...");
49354
+ try {
49355
+ execSync2(`openclaw agents add ${name2}`, { stdio: "pipe" });
49356
+ console.log(` Agent '${name2}' created.
49357
+ `);
49358
+ } catch {
49359
+ console.log(` Warning: 'openclaw agents add' failed \u2014 agent may already exist. Continuing.
49360
+ `);
49361
+ }
49362
+ console.log(" Step 4/7 \u2014 Creating directories...");
49363
+ mkdirSync(workspaceDir, { recursive: true });
49364
+ mkdirSync(dataDir2, { recursive: true });
49365
+ console.log(` Workspace: ${workspaceDir}`);
49366
+ console.log(` DataDir: ${dataDir2}
49367
+ `);
49368
+ console.log(" Step 5/7 \u2014 Writing workspace files...");
49369
+ const files = generateWorkspaceFiles(name2);
49370
+ for (const [filename, content] of Object.entries(files)) {
49371
+ writeFileSync(join3(workspaceDir, filename), content, "utf-8");
49372
+ }
49373
+ for (const copyFile of ["AGENTS.md", "USER.md"]) {
49374
+ const src = join3(templateDir, copyFile);
49375
+ if (existsSync(src)) {
49376
+ copyFileSync(src, join3(workspaceDir, copyFile));
49377
+ console.log(` Copied ${copyFile} from template workspace.`);
49378
+ }
49379
+ }
49380
+ console.log(" Workspace files written.\n");
49381
+ console.log(" Step 6/7 \u2014 Enrolling with AgentVault...\n");
49382
+ await runSetupCommand({
49383
+ token: token2,
49384
+ name: name2,
49385
+ apiUrl: apiUrl2,
49386
+ dataDir: dataDir2,
49387
+ accountId: name2,
49388
+ force
49389
+ });
49390
+ console.log("\n Step 7/7 \u2014 Patching httpPort in openclaw.json...");
49391
+ try {
49392
+ const freshConfig = readOpenClawConfig(home);
49393
+ let patched = false;
49394
+ const avChannel = freshConfig?.channels?.agentvault;
49395
+ if (avChannel?.accounts) {
49396
+ const acct = avChannel.accounts[name2];
49397
+ if (acct) {
49398
+ acct.httpPort = port;
49399
+ patched = true;
49400
+ }
49401
+ }
49402
+ if (patched) {
49403
+ writeOpenClawConfig(home, freshConfig, name2);
49404
+ console.log(` httpPort set to ${port}.
49405
+ `);
49406
+ } else {
49407
+ console.log(` Warning: Could not find account '${name2}' in channels.agentvault.accounts.`);
49408
+ console.log(` You may need to manually set httpPort: ${port} in openclaw.json.
49409
+ `);
49410
+ }
49411
+ } catch (err) {
49412
+ console.log(` Warning: Failed to patch httpPort: ${err.message}
49413
+ `);
49414
+ }
49415
+ console.log(" Verifying agent...");
49416
+ try {
49417
+ const http = await import("node:http");
49418
+ await new Promise((resolve4) => {
49419
+ const req = http.get(`http://127.0.0.1:${port}/status`, { timeout: 3e3 }, (res) => {
49420
+ console.log(` Port ${port} responded (HTTP ${res.statusCode}).`);
49421
+ res.resume();
49422
+ resolve4();
49423
+ });
49424
+ req.on("error", () => {
49425
+ console.log(` Port ${port} not yet responding \u2014 gateway may need a moment.`);
49426
+ resolve4();
49427
+ });
49428
+ req.on("timeout", () => {
49429
+ req.destroy();
49430
+ console.log(` Port ${port} timed out \u2014 check gateway logs.`);
49431
+ resolve4();
49432
+ });
49433
+ });
49434
+ } catch {
49435
+ console.log(" Verification skipped.");
49436
+ }
49437
+ console.log(`
49438
+ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
49439
+ Agent '${name2}' created successfully!
49440
+ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
49441
+
49442
+ Workspace: ${workspaceDir}
49443
+ DataDir: ${dataDir2}
49444
+ HTTP Port: ${port}
49445
+
49446
+ Next steps:
49447
+ 1. Edit ${workspaceDir}/SOUL.md \u2014 give ${name2} a personality
49448
+ 2. Edit ${workspaceDir}/IDENTITY.md \u2014 set name, emoji, vibe
49449
+ 3. Approve the agent in the AgentVault app
49450
+ `);
49451
+ }
49452
+ var init_create_agent = __esm({
49453
+ async "src/create-agent.ts"() {
49454
+ "use strict";
49455
+ await init_setup();
49456
+ }
49457
+ });
49458
+
49146
49459
  // src/skills-publish.ts
49147
49460
  var skills_publish_exports = {};
49148
49461
  __export(skills_publish_exports, {
49149
49462
  publishSkills: () => publishSkills
49150
49463
  });
49151
- import { readFileSync } from "node:fs";
49464
+ import { readFileSync as readFileSync2 } from "node:fs";
49152
49465
  import { resolve as resolve2 } from "node:path";
49153
49466
  async function publishSkills(opts) {
49154
49467
  if (!opts.manifest) {
@@ -49162,7 +49475,7 @@ async function publishSkills(opts) {
49162
49475
  const manifestPath = resolve2(opts.manifest);
49163
49476
  let raw;
49164
49477
  try {
49165
- raw = readFileSync(manifestPath, "utf-8");
49478
+ raw = readFileSync2(manifestPath, "utf-8");
49166
49479
  } catch {
49167
49480
  console.error(`Error: Cannot read manifest file: ${manifestPath}`);
49168
49481
  process.exit(1);
@@ -49309,6 +49622,36 @@ After setup, restart OpenClaw \u2014 messages will flow automatically.
49309
49622
  });
49310
49623
  process.exit(0);
49311
49624
  }
49625
+ if (subcommand === "create") {
49626
+ const agentName = args.slice(1).find((a2) => !a2.startsWith("--"));
49627
+ if (!agentName || !token) {
49628
+ console.error(`
49629
+ AgentVault Create Agent
49630
+
49631
+ Usage:
49632
+ npx @agentvault/agentvault create <name> --token=TOKEN
49633
+
49634
+ Options:
49635
+ --token=TOKEN Invite token from the AgentVault app (required)
49636
+ --port=PORT HTTP port (auto-detected if omitted)
49637
+ --api-url=URL API endpoint (default: https://api.agentvault.chat)
49638
+ --force Re-enroll even if already enrolled
49639
+
49640
+ Example:
49641
+ npx @agentvault/agentvault create nova --token=av_tok_abc123
49642
+ `);
49643
+ process.exit(1);
49644
+ }
49645
+ const { runCreateCommand: runCreateCommand2 } = await init_create_agent().then(() => create_agent_exports);
49646
+ await runCreateCommand2({
49647
+ name: agentName,
49648
+ token,
49649
+ port: flags["port"] ? Number(flags["port"]) : void 0,
49650
+ apiUrl,
49651
+ force: flags["force"] === "true"
49652
+ });
49653
+ process.exit(0);
49654
+ }
49312
49655
  if (subcommand === "pm2-setup") {
49313
49656
  const { configurePm2: configurePm22 } = await init_setup().then(() => setup_exports);
49314
49657
  const home = process.env.HOME ?? "";
@@ -49374,7 +49717,8 @@ if (!token) {
49374
49717
  AgentVault Secure Channel CLI
49375
49718
 
49376
49719
  Usage:
49377
- npx @agentvault/agentvault setup --token=TOKEN # First-time OpenClaw setup
49720
+ npx @agentvault/agentvault create <name> --token=TOKEN # Create a new agent end-to-end
49721
+ npx @agentvault/agentvault setup --token=TOKEN # Connect existing agent to AgentVault
49378
49722
  npx @agentvault/agentvault pm2-setup # Configure pm2 (existing install)
49379
49723
  npx @agentvault/agentvault send "message" # Send a message to the owner
49380
49724
  npx @agentvault/agentvault status # Check gateway status
@@ -49404,7 +49748,10 @@ Environment variables:
49404
49748
  GATEWAY_SEND_PORT Same as --port for send/status
49405
49749
 
49406
49750
  Examples:
49407
- # One-time OpenClaw setup (recommended):
49751
+ # Create a new agent from scratch:
49752
+ npx @agentvault/agentvault create nova --token=av_tok_abc123
49753
+
49754
+ # Connect an existing agent:
49408
49755
  npx @agentvault/agentvault setup --token=av_tok_abc123
49409
49756
 
49410
49757
  # Send a message to the owner: