@livx.cc/agentx 0.99.124 → 0.99.125

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/cli.js CHANGED
@@ -15051,10 +15051,14 @@ import { BodDB as BodDB2 } from "@bod.ee/db";
15051
15051
  init_logging();
15052
15052
  import { existsSync as existsSync2, readFileSync as readFileSync5 } from "fs";
15053
15053
  import { homedir } from "os";
15054
+ import { delimiter as delimiter2 } from "path";
15054
15055
  var log33 = forComponent("cli-util");
15056
+ function extraDirs(env = process.env) {
15057
+ return (env.AGENTX_EXTRA_DIRS || "").split(delimiter2).map((d) => d.trim()).filter(Boolean);
15058
+ }
15055
15059
  function dotDirs(base, sub, opts = {}) {
15056
15060
  const home = opts.home ?? homedir();
15057
- const dirs = [`${base}/.agent/${sub}`, `${base}/.claude/${sub}`, `${home}/.agent/${sub}`, `${home}/.claude/${sub}`];
15061
+ const dirs = [`${base}/.agent/${sub}`, `${base}/.claude/${sub}`, `${home}/.agent/${sub}`, `${home}/.claude/${sub}`, ...extraDirs().map((d) => `${d}/${sub}`)];
15058
15062
  return opts.existing ? dirs.filter((d) => existsSync2(d)) : dirs;
15059
15063
  }
15060
15064
  function truncate(s, n, suffix = "\u2026") {
@@ -15226,7 +15230,7 @@ Reference files in them by their mount path (the left side).`;
15226
15230
  }
15227
15231
  const dot = (sub) => existsSync3(`${cwd}/.agent/${sub}`) ? `${cwd}/.agent/${sub}` : void 0;
15228
15232
  const dots = (sub) => {
15229
- const dirs = dotDirs(cwd, sub, { existing: true });
15233
+ const dirs = [...dotDirs(cwd, sub, { existing: true }), ...sub === "skills" ? (o.skillDirs ?? []).filter((d) => existsSync3(d)) : []];
15230
15234
  return dirs.length ? dirs : void 0;
15231
15235
  };
15232
15236
  const memoryDir = (() => {
@@ -16273,6 +16277,7 @@ function applyOverlay(cfg, file) {
16273
16277
  }
16274
16278
  if (raw?.mcpServers && typeof raw.mcpServers === "object") cfg.mcpServers = { ...cfg.mcpServers, ...raw.mcpServers };
16275
16279
  if (raw?.permissions && typeof raw.permissions === "object") cfg.permissions = mergePerms(cfg.permissions, raw.permissions);
16280
+ if (Array.isArray(raw?.skillDirs)) cfg.skillDirs = [...cfg.skillDirs ?? [], ...raw.skillDirs.filter((d) => typeof d === "string")];
16276
16281
  }
16277
16282
 
16278
16283
  // cli/hooks-config.ts
@@ -19591,7 +19596,7 @@ Flags:
19591
19596
  --no-think with --duplex: disable the Think tier (Act handles everything)
19592
19597
  --voice-system-prompt <text> with --duplex: appended to the voice (reflex) prompt only (--append-system-prompt \u2192 workers)
19593
19598
  --add-dir <path> mount another directory into the workspace (repeatable; disk mode only)
19594
- --mcp-config <file> JSON { mcpServers?, permissions? } merged over .agent config for this run only
19599
+ --mcp-config <file> JSON { mcpServers?, permissions?, skillDirs? } merged over .agent config for this run only
19595
19600
  --subagents allow the Task tool (spawn child agents)
19596
19601
  --delegate <worker> delegate mode: the main model plans (its writes are refused), <worker> writes via Task
19597
19602
  --advisor <model> advisor mode: the main model works; an Advise tool consults <model> (first write waits for it)
@@ -20393,6 +20398,7 @@ function optsFor(args, ai, cfg = {}, extraTools = []) {
20393
20398
  // Forwarded to cursor/* delegations for environment parity (chat-model providers ignore it).
20394
20399
  // Raw config (pre-OAuth): unresolved-oauth http servers are skipped by the cursor mapper.
20395
20400
  mcpServers: cfg.mcpServers,
20401
+ skillDirs: cfg.skillDirs,
20396
20402
  lean: args.lean,
20397
20403
  // Gates + powers default-on WebSearchAnthropic. Same precedence as the main client (env wins).
20398
20404
  anthropicKey: apiKeysFromEnv().anthropic ?? cfg.apiKeys?.anthropic,