@tablation/crew 0.75.3 → 0.75.5

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.
Files changed (2) hide show
  1. package/dist/cli.js +22 -2
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -13948,6 +13948,7 @@ async function createOperatorRow(o, found) {
13948
13948
  const name = found.meName || found.meEmail || "Operator";
13949
13949
  if (o.dryRun) {
13950
13950
  found.provisioning.push(`would create Crew row "${name}" for you`);
13951
+ found.operatorAction = "would-create";
13951
13952
  return;
13952
13953
  }
13953
13954
  try {
@@ -19385,7 +19386,7 @@ Signed in as ${result.identity.email} \u2014 minted an API key in workspace "${r
19385
19386
  ]);
19386
19387
  }
19387
19388
  }
19388
- if (!operator && found.operatorCompared) {
19389
+ if (!operator && found.operatorCompared && found.operatorAction !== "would-create") {
19389
19390
  process.stderr.write(`crew connect: no Crew row matched you \u2014 ${found.operatorCompared}
19390
19391
  `);
19391
19392
  connectEvents.emit("operator_row", "no Crew row matched you", { action: "unmatched", compared: found.operatorCompared });
@@ -19400,7 +19401,15 @@ Signed in as ${result.identity.email} \u2014 minted an API key in workspace "${r
19400
19401
  ...opEmail ? { email: opEmail } : {}
19401
19402
  });
19402
19403
  }
19403
- if (!operator && !hadPreviousFile) {
19404
+ const operatorWouldBeCreated = !operator && found.operatorAction === "would-create";
19405
+ if (operatorWouldBeCreated) {
19406
+ connectEvents.emit("operator_row", `operator ${found.meName ?? found.meEmail ?? "you"} (would create)`, {
19407
+ action: "would-create",
19408
+ ...found.meName ? { name: found.meName } : {},
19409
+ ...found.meEmail ? { email: found.meEmail } : {}
19410
+ });
19411
+ }
19412
+ if (!operator && !hadPreviousFile && !operatorWouldBeCreated) {
19404
19413
  process.stderr.write(
19405
19414
  `crew connect ${route2}: cannot determine the operator \u2014 ${found.candidates.length} Crew row(s) could be it, none matching this key's own email, and there's no terminal to ask.
19406
19415
  Re-run from a real terminal to pick one, or pass --key for a key whose own
@@ -19556,6 +19565,17 @@ Signed in as ${result.identity.email} \u2014 minted an API key in workspace "${r
19556
19565
  if (!wroteConfig) process.stderr.write(`(${wizard.configPath} appeared while connecting \u2014 leaving it alone)
19557
19566
  `);
19558
19567
  }
19568
+ if (!dryRun) {
19569
+ if (wroteConfig) {
19570
+ connectEvents.emit("config", `wrote ${wizard.configPath}`, { written: true, path: wizard.configPath });
19571
+ } else if (wizard && writeFirstRun) {
19572
+ connectEvents.emit("config", `${wizard.configPath} appeared while connecting; left alone`, { written: false, path: wizard.configPath, reason: "appeared while connecting" });
19573
+ } else if (wizard) {
19574
+ connectEvents.emit("config", `no key file or keychain entry to name; ${wizard.configPath} not written`, { written: false, path: wizard.configPath, reason: "no-key" });
19575
+ } else {
19576
+ connectEvents.emit("config", `${cfg.configFile} already exists; left alone`, { written: false, path: cfg.configFile, reason: "exists" });
19577
+ }
19578
+ }
19559
19579
  if (!wroteConfig) (connectEvents.json ? process.stderr : process.stdout).write(routeBlock);
19560
19580
  if (!flag("no-mcp") && apiKey) {
19561
19581
  const replace = value("mcp") === "replace";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tablation/crew",
3
- "version": "0.75.3",
3
+ "version": "0.75.5",
4
4
  "description": "A standing team of headless agents that picks work off a Tablation board, does it on a machine you control, and reports back.",
5
5
  "type": "module",
6
6
  "license": "MIT",