negotium 0.2.11 → 0.2.13

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/main.js CHANGED
@@ -176,6 +176,16 @@ function resolveBrowserRsBin(envValue) {
176
176
  return;
177
177
  }
178
178
  }
179
+ function resolveBashRsBin(envValue) {
180
+ const override = envValue?.trim();
181
+ const candidate = override ? resolve(override) : resolve(BINARIES_DIR, "bash-rs", BASH_RS_VERSION, "bash-rs");
182
+ try {
183
+ accessSync(candidate, constants.X_OK);
184
+ return candidate;
185
+ } catch {
186
+ return;
187
+ }
188
+ }
179
189
  function resolveBrowserMcpBin(envValue) {
180
190
  const override = envValue?.trim();
181
191
  if (override)
@@ -253,7 +263,7 @@ function resolveDefaultModel(agent, registryDefaultModel) {
253
263
  function codexAuthFilePath() {
254
264
  return process.env.NEGOTIUM_CODEX_AUTH_FILE || join(process.env.CODEX_HOME || join(homedir(), ".codex"), "auth.json");
255
265
  }
256
- var HOME, PROJECT_ROOT, STATE_DIR_ENV, STATE_DIR, WORKSPACE_DIR, TOPIC_WORKSPACE_DIR, SHARED_WIKI_DIR, CRON_WORKSPACE_DIR, BROWSER_DIR, BROWSER_PROFILES_DIR, BINARIES_DIR, SECRETS_DIR, DM_WORKSPACE_DIR, SESSION_WORKSPACE_DIR, CLAUDE_EXECUTABLE_ENV, CLAUDE_EXECUTABLE, DEFAULT_OUTPUT_LANGUAGE = "English", BROWSER_RS_VERSION = "v0.1.17", BROWSER_RS_MIN_SECURE_VERSION = "0.1.15", SNIPPETS_API_URL, BROWSER_RS_BIN, PLAYWRIGHT_MCP_BIN, TSX_BIN, TSX_LOADER, TSCONFIG_PATH, SESSION_COMM_SERVER, TASK_SERVER, BROWSER_MCP_SSE_PROXY_SERVER, CANONICAL_MCP_PROXY_SERVER, WIKI_SERVER, TOKEN_STATS_SERVER, COMPACTION_LOG_SERVER, SYSTEM_HEALTH_SERVER, AGENT_HEALTH_SERVER, BACKGROUND_BASH_SERVER, VAULT_SERVER, BG_BASH_BASE_PORT, BG_BASH_MAX_PORT, RUNTIME_MCP_SECRET, NODE_CONTROL_TOKEN, VAULT_MASTER_KEY, NEGOTIUM_PORT, hostname, DATA_DIR, LOG_DIR, UPLOADS_DIR, VAULT_DIR, SESSIONS_DB, DEBUG_FILE, USERS_LOG_DIR, RUN_DIR, PROGRESS_DIR, DM_CMD_DIR, DM_RESP_DIR, SESSION_INBOX_DIR, SESSION_ASKS_DIR, PLAYWRIGHT_BASE_PORT, PLAYWRIGHT_MAX_PORT, PLAYWRIGHT_PORTS_DIR, ACTIVE_QUERY_STALE_MS, AGENTS_PROMPTS_DIR, RESOURCES_DIR, FILE_TAG_REGEX, MODEL_SONNET = "claude-sonnet-5", MODEL_OPUS = "claude-opus-5", MODEL_FABLE = "claude-fable-5", FALLBACK_AGENT, SESSION_AGENT, GATEWAY_AGENT, FALLBACK_MODEL, SESSION_MODEL, GATEWAY_MODEL, FFMPEG_BIN, FFPROBE_BIN, PYTHON_BIN, FASTER_WHISPER_WRAPPER, WHISPER_MODEL, TESSERACT_BIN, PDFTOTEXT_BIN, _envMaxTellDepth, MAX_TELL_DEPTH;
266
+ var HOME, PROJECT_ROOT, STATE_DIR_ENV, STATE_DIR, WORKSPACE_DIR, TOPIC_WORKSPACE_DIR, SHARED_WIKI_DIR, CRON_WORKSPACE_DIR, BROWSER_DIR, BROWSER_PROFILES_DIR, BINARIES_DIR, SECRETS_DIR, DM_WORKSPACE_DIR, SESSION_WORKSPACE_DIR, CLAUDE_EXECUTABLE_ENV, CLAUDE_EXECUTABLE, DEFAULT_OUTPUT_LANGUAGE = "English", BROWSER_RS_VERSION = "v0.1.19", BROWSER_RS_MIN_SECURE_VERSION = "0.1.15", SNIPPETS_API_URL, BROWSER_RS_BIN, BASH_RS_VERSION = "v0.1.2", BASH_RS_BIN, PLAYWRIGHT_MCP_BIN, TSX_BIN, TSX_LOADER, TSCONFIG_PATH, SESSION_COMM_SERVER, TASK_SERVER, BROWSER_MCP_SSE_PROXY_SERVER, CANONICAL_MCP_PROXY_SERVER, WIKI_SERVER, TOKEN_STATS_SERVER, COMPACTION_LOG_SERVER, SYSTEM_HEALTH_SERVER, AGENT_HEALTH_SERVER, BACKGROUND_BASH_SERVER, VAULT_SERVER, BG_BASH_BASE_PORT, BG_BASH_MAX_PORT, RUNTIME_MCP_SECRET, NODE_CONTROL_TOKEN, VAULT_MASTER_KEY, NEGOTIUM_PORT, hostname, DATA_DIR, LOG_DIR, UPLOADS_DIR, VAULT_DIR, SESSIONS_DB, DEBUG_FILE, USERS_LOG_DIR, RUN_DIR, PROGRESS_DIR, DM_CMD_DIR, DM_RESP_DIR, SESSION_INBOX_DIR, SESSION_ASKS_DIR, BASHRS_SPILL_ROOT, PLAYWRIGHT_BASE_PORT, PLAYWRIGHT_MAX_PORT, PLAYWRIGHT_PORTS_DIR, ACTIVE_QUERY_STALE_MS, AGENTS_PROMPTS_DIR, RESOURCES_DIR, FILE_TAG_REGEX, MODEL_SONNET = "claude-sonnet-5", MODEL_OPUS = "claude-opus-5", MODEL_FABLE = "claude-fable-5", FALLBACK_AGENT, SESSION_AGENT, GATEWAY_AGENT, FALLBACK_MODEL, SESSION_MODEL, GATEWAY_MODEL, FFMPEG_BIN, FFPROBE_BIN, PYTHON_BIN, FASTER_WHISPER_WRAPPER, WHISPER_MODEL, TESSERACT_BIN, PDFTOTEXT_BIN, _envMaxTellDepth, MAX_TELL_DEPTH;
257
267
  var init_config = __esm(() => {
258
268
  init_config_helpers();
259
269
  init_logger();
@@ -276,6 +286,7 @@ var init_config = __esm(() => {
276
286
  CLAUDE_EXECUTABLE = CLAUDE_EXECUTABLE_ENV ? resolve(CLAUDE_EXECUTABLE_ENV) : undefined;
277
287
  SNIPPETS_API_URL = (envText("NEGOTIUM_SNIPPETS_API_URL") ?? envText("SNIPPETS_API_URL") ?? "").replace(/\/+$/, "");
278
288
  BROWSER_RS_BIN = resolveBrowserRsBin(envText("NEGOTIUM_BROWSER_RS_BIN"));
289
+ BASH_RS_BIN = resolveBashRsBin(envText("NEGOTIUM_BASH_RS_BIN"));
279
290
  PLAYWRIGHT_MCP_BIN = resolveBrowserMcpBin(envText("NEGOTIUM_BROWSER_MCP_BIN"));
280
291
  TSX_BIN = resolveDependencyBin("tsx");
281
292
  TSX_LOADER = createRequire(import.meta.url).resolve("tsx");
@@ -312,6 +323,7 @@ var init_config = __esm(() => {
312
323
  DM_RESP_DIR = resolve(RUN_DIR, "dm-responses");
313
324
  SESSION_INBOX_DIR = resolve(RUN_DIR, "session-inbox");
314
325
  SESSION_ASKS_DIR = resolve(RUN_DIR, "session-asks");
326
+ BASHRS_SPILL_ROOT = resolve(RUN_DIR, "bashrs");
315
327
  PLAYWRIGHT_BASE_PORT = parsePortEnv(process.env.PLAYWRIGHT_BASE_PORT, 9100);
316
328
  PLAYWRIGHT_MAX_PORT = parsePortEnv(process.env.PLAYWRIGHT_MAX_PORT, 9499);
317
329
  PLAYWRIGHT_PORTS_DIR = resolve(RUN_DIR, "playwright-ports");
@@ -1561,7 +1573,7 @@ var exports_version = {};
1561
1573
  __export(exports_version, {
1562
1574
  NEGOTIUM_VERSION: () => NEGOTIUM_VERSION
1563
1575
  });
1564
- var NEGOTIUM_VERSION = "0.2.11";
1576
+ var NEGOTIUM_VERSION = "0.2.13";
1565
1577
 
1566
1578
  // ../../packages/core/src/agents/codex-native-multi-agent.ts
1567
1579
  import { spawn } from "child_process";
@@ -2137,7 +2149,16 @@ function createBackgroundBashManager(options = {}) {
2137
2149
  const response = await fetchImpl(`http://127.0.0.1:${port}/health`, {
2138
2150
  signal: AbortSignal.timeout(2000)
2139
2151
  });
2140
- return response.ok && await response.text() === runtimeServerId;
2152
+ if (!response.ok)
2153
+ return false;
2154
+ const body = await response.text();
2155
+ try {
2156
+ const parsed = JSON.parse(body);
2157
+ if (parsed && typeof parsed === "object" && "instance_id" in parsed) {
2158
+ return parsed.instance_id === runtimeServerId;
2159
+ }
2160
+ } catch {}
2161
+ return body === runtimeServerId;
2141
2162
  } catch {
2142
2163
  return false;
2143
2164
  }
@@ -2156,13 +2177,17 @@ function createBackgroundBashManager(options = {}) {
2156
2177
  }
2157
2178
  async function spawnServer(key, reservedPort, excludedPorts = new Set) {
2158
2179
  const port = reservedPort ?? await allocatePort(excludedPorts);
2159
- const process2 = spawnImpl("bun", ["run", serverFile, `--port=${port}`], {
2180
+ const [command, args] = BASH_RS_BIN ? [BASH_RS_BIN, [String(port)]] : ["bun", ["run", serverFile, `--port=${port}`]];
2181
+ const process2 = spawnImpl(command, args, {
2160
2182
  stdio: "ignore",
2161
2183
  detached: false,
2162
2184
  env: {
2163
2185
  ...options.env ?? globalThis.process.env,
2164
2186
  NEGOTIUM_BG_BASH_CAPABILITY: runtimeCapability,
2165
- NEGOTIUM_BG_BASH_SERVER_ID: runtimeServerId
2187
+ NEGOTIUM_BG_BASH_SERVER_ID: runtimeServerId,
2188
+ BASHRS_HTTP_CAPABILITY: runtimeCapability,
2189
+ BASHRS_INSTANCE_ID: runtimeServerId,
2190
+ BASHRS_SPILL_ROOT
2166
2191
  }
2167
2192
  });
2168
2193
  process2.once("error", (error) => {
@@ -45061,4 +45086,4 @@ switch (command) {
45061
45086
  }
45062
45087
  }
45063
45088
 
45064
- //# debugId=8F713006520C412564756E2164756E21
45089
+ //# debugId=41725DFC7CF611BE64756E2164756E21