@agentvault/agentvault 0.13.7 → 0.13.8

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/index.d.ts CHANGED
@@ -5,5 +5,5 @@ export type { ResolvedAccount } from "./account-config.js";
5
5
  export { agentVaultPlugin, setOcRuntime, getActiveChannel } from "./openclaw-plugin.js";
6
6
  export { sendToOwner, checkGateway } from "./gateway-send.js";
7
7
  export type { GatewaySendOptions, GatewaySendResult, GatewayStatusResult, } from "./gateway-send.js";
8
- export declare const VERSION = "0.13.7";
8
+ export declare const VERSION = "0.13.8";
9
9
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -45447,10 +45447,12 @@ import { mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
45447
45447
  import { join } from "node:path";
45448
45448
  var STATE_FILE = "agentvault.json";
45449
45449
  var LEGACY_STATE_FILE = "secure-channel.json";
45450
+ var DIR_MODE = 448;
45451
+ var FILE_MODE = 384;
45450
45452
  async function saveState(dataDir, state) {
45451
- await mkdir(dataDir, { recursive: true });
45453
+ await mkdir(dataDir, { recursive: true, mode: DIR_MODE });
45452
45454
  const filePath = join(dataDir, STATE_FILE);
45453
- await writeFile(filePath, JSON.stringify(state, null, 2), "utf-8");
45455
+ await writeFile(filePath, JSON.stringify(state, null, 2), { encoding: "utf-8", mode: FILE_MODE });
45454
45456
  try {
45455
45457
  await rm(join(dataDir, LEGACY_STATE_FILE));
45456
45458
  } catch {
@@ -45467,8 +45469,8 @@ async function loadState(dataDir) {
45467
45469
  try {
45468
45470
  const raw = await readFile(legacyPath, "utf-8");
45469
45471
  const parsed = JSON.parse(raw);
45470
- await mkdir(dataDir, { recursive: true });
45471
- await writeFile(filePath, JSON.stringify(parsed, null, 2), "utf-8");
45472
+ await mkdir(dataDir, { recursive: true, mode: DIR_MODE });
45473
+ await writeFile(filePath, JSON.stringify(parsed, null, 2), { encoding: "utf-8", mode: FILE_MODE });
45472
45474
  await rm(legacyPath);
45473
45475
  return parsed;
45474
45476
  } catch {
@@ -45491,7 +45493,7 @@ async function backupState(dataDir) {
45491
45493
  const tmp = join(dataDir, `${STATE_FILE}.bak.tmp`);
45492
45494
  try {
45493
45495
  const data = await readFile(src, "utf-8");
45494
- await writeFile(tmp, data, "utf-8");
45496
+ await writeFile(tmp, data, { encoding: "utf-8", mode: FILE_MODE });
45495
45497
  await rename(tmp, bak);
45496
45498
  } catch {
45497
45499
  }
@@ -45506,8 +45508,8 @@ async function restoreState(dataDir) {
45506
45508
  if (!parsed || !parsed.deviceId || !parsed.deviceJwt || !parsed.sessions || Object.keys(parsed.sessions).length === 0) {
45507
45509
  return false;
45508
45510
  }
45509
- await mkdir(dataDir, { recursive: true });
45510
- await writeFile(join(dataDir, STATE_FILE), data, "utf-8");
45511
+ await mkdir(dataDir, { recursive: true, mode: DIR_MODE });
45512
+ await writeFile(join(dataDir, STATE_FILE), data, { encoding: "utf-8", mode: FILE_MODE });
45511
45513
  return true;
45512
45514
  } catch {
45513
45515
  return false;
@@ -48262,43 +48264,46 @@ var agentVaultPlugin = {
48262
48264
  }
48263
48265
  const dataDir = resolve(account.dataDir.replace(/^~/, process.env.HOME ?? "~"));
48264
48266
  log?.(`[AgentVault] starting channel (dataDir=${dataDir})`);
48265
- const channel = new SecureChannel({
48266
- // No invite token needed — resuming from persisted enrolled state
48267
- inviteToken: "",
48268
- dataDir,
48269
- apiUrl: account.apiUrl,
48270
- agentName: account.agentName,
48271
- onMessage: async (plaintext, metadata) => {
48272
- if (!_ocRuntime) {
48273
- log?.("[AgentVault] runtime not ready \u2014 dropping inbound message");
48274
- return;
48275
- }
48276
- try {
48277
- await _handleInbound({ plaintext, metadata, channel, account, cfg });
48278
- } catch (err) {
48279
- log?.(`[AgentVault] inbound dispatch error: ${String(err)}`);
48267
+ await new Promise((resolvePromise, reject) => {
48268
+ const channel = new SecureChannel({
48269
+ inviteToken: "",
48270
+ dataDir,
48271
+ apiUrl: account.apiUrl,
48272
+ agentName: account.agentName,
48273
+ onMessage: async (plaintext, metadata) => {
48274
+ if (!_ocRuntime) {
48275
+ log?.("[AgentVault] runtime not ready \u2014 dropping inbound message");
48276
+ return;
48277
+ }
48278
+ try {
48279
+ await _handleInbound({ plaintext, metadata, channel, account, cfg });
48280
+ } catch (err) {
48281
+ log?.(`[AgentVault] inbound dispatch error: ${String(err)}`);
48282
+ }
48283
+ },
48284
+ onStateChange: (state) => {
48285
+ log?.(`[AgentVault] state \u2192 ${state}`);
48286
+ if (state === "error") reject(new Error("AgentVault channel permanent error"));
48280
48287
  }
48281
- },
48282
- onStateChange: (state) => {
48283
- log?.(`[AgentVault] state \u2192 ${state}`);
48284
- }
48285
- });
48286
- _channels.set(account.accountId, channel);
48287
- const httpPort = account.httpPort;
48288
- channel.on("ready", () => {
48289
- channel.startHttpServer(httpPort);
48290
- log?.(`[AgentVault] HTTP send server listening on http://127.0.0.1:${httpPort}`);
48291
- });
48292
- abortSignal?.addEventListener("abort", () => {
48293
- _channels.delete(account.accountId);
48294
- });
48295
- await channel.start();
48296
- return {
48297
- stop: async () => {
48288
+ });
48289
+ _channels.set(account.accountId, channel);
48290
+ channel.on("error", (err) => {
48291
+ log?.(`[AgentVault] channel error (non-fatal): ${String(err)}`);
48292
+ });
48293
+ const httpPort = account.httpPort;
48294
+ channel.on("ready", () => {
48295
+ channel.startHttpServer(httpPort);
48296
+ log?.(`[AgentVault] HTTP send server listening on http://127.0.0.1:${httpPort}`);
48297
+ });
48298
+ abortSignal?.addEventListener("abort", async () => {
48298
48299
  await channel.stop();
48299
48300
  _channels.delete(account.accountId);
48300
- }
48301
- };
48301
+ resolvePromise();
48302
+ });
48303
+ channel.start().catch(reject);
48304
+ });
48305
+ return { stop: async () => {
48306
+ } };
48302
48307
  }
48303
48308
  },
48304
48309
  outbound: {
@@ -48463,7 +48468,7 @@ async function checkGateway(options) {
48463
48468
  }
48464
48469
 
48465
48470
  // src/index.ts
48466
- var VERSION = "0.13.7";
48471
+ var VERSION = "0.13.8";
48467
48472
  export {
48468
48473
  SecureChannel,
48469
48474
  VERSION,