cruo-agent 0.1.18 → 0.1.19

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.18
1
+ 0.1.19
package/dist/cli.js CHANGED
@@ -15300,6 +15300,13 @@ var init_order = __esm({
15300
15300
  }
15301
15301
  });
15302
15302
 
15303
+ // ../../packages/core/dist/csv.js
15304
+ var init_csv = __esm({
15305
+ "../../packages/core/dist/csv.js"() {
15306
+ "use strict";
15307
+ }
15308
+ });
15309
+
15303
15310
  // ../../packages/core/dist/index.js
15304
15311
  var init_dist = __esm({
15305
15312
  "../../packages/core/dist/index.js"() {
@@ -15315,6 +15322,7 @@ var init_dist = __esm({
15315
15322
  init_tree();
15316
15323
  init_place();
15317
15324
  init_order();
15325
+ init_csv();
15318
15326
  }
15319
15327
  });
15320
15328
 
@@ -47659,6 +47667,14 @@ async function invokeHarness(ctx, identity, hit, worktree) {
47659
47667
  "--strict-mcp-config",
47660
47668
  "--allowedTools",
47661
47669
  options.allow,
47670
+ // CRA-131. The local database is shared by every agent and person on the
47671
+ // machine, so no agent resets it. `pnpm supabase:reset` refuses inside a
47672
+ // run on its own (CRUO_AGENT_RUN, below); these are the spellings that
47673
+ // bypass that script. A deny rule matches a prefix, so it is a fence and
47674
+ // not a wall — `bash -c "…"` still gets round it — but it stops the
47675
+ // ordinary command an agent reaches for, which is how 2026-09-19 happened.
47676
+ "--disallowedTools",
47677
+ DB_RESET_DENY.join(","),
47662
47678
  "--system-prompt",
47663
47679
  systemPromptText,
47664
47680
  ...options.model ? ["--model", options.model] : [],
@@ -47675,7 +47691,9 @@ async function invokeHarness(ctx, identity, hit, worktree) {
47675
47691
  // both are written straight through — this tees, it does not capture.
47676
47692
  stdio: ["ignore", "pipe", "pipe"],
47677
47693
  cwd,
47678
- env: harnessEnv()
47694
+ // CRA-131: marks everything the harness runs as inside an agent run,
47695
+ // which is what makes `pnpm supabase:reset` refuse with no override.
47696
+ env: { ...harnessEnv(), CRUO_AGENT_RUN: hit.ref }
47679
47697
  });
47680
47698
  const startedAtMs = Date.now();
47681
47699
  let stdoutBytes = 0;
@@ -48400,7 +48418,7 @@ to catch: a second supervisor nothing could see or stop.
48400
48418
  if (stopping) return;
48401
48419
  }
48402
48420
  }
48403
- var argv, flag, opt, num2, ms, readOptions, options, log, sessionRenewal, worktreeConfig, lastRefusal, CONFIG_DIR_PREFIX, CRUO_OWNED_ENV, HEAD_STORED, lastHolding, warnedAboutSpendTable, stopping, paused, stopRequestedAt, currentRun, pendingWait;
48421
+ var argv, flag, opt, num2, ms, readOptions, options, log, sessionRenewal, worktreeConfig, lastRefusal, CONFIG_DIR_PREFIX, CRUO_OWNED_ENV, DB_RESET_DENY, HEAD_STORED, lastHolding, warnedAboutSpendTable, stopping, paused, stopRequestedAt, currentRun, pendingWait;
48404
48422
  var init_supervisor = __esm({
48405
48423
  "src/supervisor.ts"() {
48406
48424
  "use strict";
@@ -48628,6 +48646,12 @@ cruo-supervisor: ${error51.message}
48628
48646
  // stands in for. Cheap to list, and wrong to discover the hard way.
48629
48647
  "CRUO_SESSION"
48630
48648
  ];
48649
+ DB_RESET_DENY = [
48650
+ "Bash(npx supabase db reset:*)",
48651
+ "Bash(supabase db reset:*)",
48652
+ "Bash(pnpm exec supabase db reset:*)",
48653
+ "Bash(pnpm dlx supabase db reset:*)"
48654
+ ];
48631
48655
  HEAD_STORED = 200;
48632
48656
  lastHolding = 0;
48633
48657
  warnedAboutSpendTable = false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cruo-agent",
3
- "version": "0.1.18",
3
+ "version": "0.1.19",
4
4
  "description": "Run a Cruo agent: it watches your board, picks up the cards you assign it, and works them.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://cruo.space/docs#agents",