create-egregore 0.21.0-runtime-mvp.23 → 0.21.0-runtime-mvp.24

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.
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- // egregore-launcher-version: 0.21.0-runtime-mvp.23
2
+ // egregore-launcher-version: 0.21.0-runtime-mvp.24
3
3
  //
4
4
  // egregore — launch and browse Egregore instances from your terminal.
5
5
  // Installed by create-egregore. Reads ~/.egregore/instances.json.
@@ -35,7 +35,7 @@ const crypto = require("node:crypto");
35
35
  const { spawnSync, spawn } = require("node:child_process");
36
36
  const readline = require("node:readline");
37
37
 
38
- const VERSION = "0.21.0-runtime-mvp.23";
38
+ const VERSION = "0.21.0-runtime-mvp.24";
39
39
  const REGISTRY = path.join(os.homedir(), ".egregore", "instances.json");
40
40
  const DEFAULT_FILE = path.join(os.homedir(), ".egregore", "default");
41
41
  const UPDATE_CACHE_FILE = path.join(os.homedir(), ".egregore", "update-check.json");
@@ -766,9 +766,8 @@ function codexSupportMessage(egregoreDir) {
766
766
  " .codex/hooks.json",
767
767
  " .codex/hooks/",
768
768
  "",
769
- "Automatic repair did not complete. Retry with:",
770
- " npx -y create-egregore@latest --refresh-launcher",
771
- "Then rerun egregore.",
769
+ "Restore this instance using its installed runtime version, then rerun egregore.",
770
+ "A global CLI refresh does not repair instance files.",
772
771
  "Egregore workflows appear as slash commands. In Codex, invoke them with the matching $skill token or ask in natural language.",
773
772
  ].join("\n");
774
773
  }
@@ -799,7 +798,7 @@ function piSupportMessage(egregoreDir) {
799
798
  "Pi meta-harness support is missing from this Egregore checkout.",
800
799
  ` path: ${egregoreDir}`,
801
800
  "",
802
- "Run npx -y create-egregore@latest to install the packaged Pi runtime, then rerun egregore.",
801
+ "Restore this instance using its installed runtime version, then rerun egregore.",
803
802
  ].join("\n");
804
803
  }
805
804
 
@@ -818,31 +817,10 @@ function primeSupportMessage(egregoreDir) {
818
817
  "Prime Agent runtime support is missing from this Egregore checkout.",
819
818
  ` path: ${egregoreDir}`,
820
819
  "",
821
- "Run npx -y create-egregore@latest to install the packaged Prime Agent runtime, then rerun egregore.",
820
+ "Restore this instance using its installed runtime version, then rerun egregore.",
822
821
  ].join("\n");
823
822
  }
824
823
 
825
- function repairPortableRuntime(egregoreDir, runtime) {
826
- const label = runtimeLabel(runtime);
827
- process.stdout.write(`\n ${CYAN}↻${RESET} ${BOLD}Repairing ${label} support${RESET}${DIM} — updating this checkout${RESET}\n`);
828
- const result = spawnSync(
829
- "npx",
830
- ["-y", `${PUBLIC_NPX_PACKAGE}@latest`, "--refresh-launcher"],
831
- {
832
- cwd: egregoreDir,
833
- stdio: "inherit",
834
- env: { ...process.env, EGREGORE_RUNTIME_REPAIR: runtime },
835
- timeout: 3 * 60 * 1000,
836
- },
837
- );
838
- if (result.error || result.status !== 0) {
839
- process.stderr.write(` ${YELLOW}!${RESET} Automatic ${label} repair failed; the checkout was left in place.\n`);
840
- return false;
841
- }
842
- process.stdout.write(` ${GREEN}✓${RESET} ${label} support repaired\n\n`);
843
- return true;
844
- }
845
-
846
824
  // Minimal y/N line prompt for pre-launch decisions (the TUI select machinery
847
825
  // is torn down by the time launch() runs).
848
826
  function confirmLine(question) {
@@ -988,19 +966,15 @@ async function launch(inst, runtimeOverride) {
988
966
  }
989
967
  }
990
968
  if (runtime === "codex") {
991
- if (!hasCodexCoreSupport(inst.path)) {
992
- if (!repairPortableRuntime(inst.path, runtime) || !hasCodexCoreSupport(inst.path)) {
993
- die(codexSupportMessage(inst.path));
994
- }
995
- }
969
+ // Launching never changes an instance's runtime or release channel.
970
+ if (!hasCodexCoreSupport(inst.path)) die(codexSupportMessage(inst.path));
996
971
  const skillsInstalled = installCodexSkills(inst.path);
997
972
  const cardRendered = await renderCodexStartupCard(inst.path);
998
973
  if (!skillsInstalled || !cardRendered) {
999
974
  die(codexSupportMessage(inst.path));
1000
975
  }
1001
976
  } else if (runtime === "pi") {
1002
- if (!hasPiCoreSupport(inst.path) &&
1003
- (!repairPortableRuntime(inst.path, runtime) || !hasPiCoreSupport(inst.path))) {
977
+ if (!hasPiCoreSupport(inst.path)) {
1004
978
  die(piSupportMessage(inst.path));
1005
979
  }
1006
980
  }
@@ -1011,10 +985,7 @@ async function launch(inst, runtimeOverride) {
1011
985
  // check + the trust-flag probe, which shells out to the binary), then a
1012
986
  // single handoff line explains the remaining in-harness startup.
1013
987
  const stopLoader = startSpinner("Starting Prime Agent");
1014
- let coreOk = hasPrimeCoreSupport(inst.path);
1015
- if (!coreOk && repairPortableRuntime(inst.path, runtime)) {
1016
- coreOk = hasPrimeCoreSupport(inst.path);
1017
- }
988
+ const coreOk = hasPrimeCoreSupport(inst.path);
1018
989
  launchArgs = coreOk ? runtimeLaunchArgs(runtime, inst.path) : null;
1019
990
  stopLoader();
1020
991
  if (!coreOk) die(primeSupportMessage(inst.path));
@@ -1883,9 +1854,10 @@ async function cmdConnect(args) {
1883
1854
  console.log(` ${DIM}${line}${RESET}`);
1884
1855
  }
1885
1856
  }
1857
+ // Connect is an instance-scoped overlay; never refresh other runtimes here.
1886
1858
  const runtimeRefresh = spawnSync(
1887
1859
  "npx",
1888
- ["-y", `${PUBLIC_NPX_PACKAGE}@latest`, "--refresh-launcher"],
1860
+ ["-y", `${PUBLIC_NPX_PACKAGE}@${VERSION}`, "--refresh-connect"],
1889
1861
  {
1890
1862
  cwd: inst.path,
1891
1863
  encoding: "utf-8",
@@ -1897,7 +1869,7 @@ async function cmdConnect(args) {
1897
1869
  console.log(` ${GREEN}✓${RESET} Connect features installed`);
1898
1870
  } else {
1899
1871
  console.log(` ${YELLOW}!${RESET} Connect features will retry on the next update`);
1900
- console.log(` ${DIM}npx -y ${PUBLIC_NPX_PACKAGE}@latest --refresh-launcher${RESET}`);
1872
+ console.log(` ${DIM}npx -y ${PUBLIC_NPX_PACKAGE}@${VERSION} --refresh-connect${RESET}`);
1901
1873
  }
1902
1874
  console.log("");
1903
1875
  console.log(` ${GREEN}✓${RESET} ${BOLD}${inst.slug}${RESET} is connected. Local files remain the source of truth.`);
package/lib/setup.js CHANGED
@@ -1132,7 +1132,7 @@ function codexSupportMessage(egregoreDir) {
1132
1132
  " .codex/hooks.json",
1133
1133
  " .codex/hooks/",
1134
1134
  "",
1135
- "Run npx -y create-egregore@latest to install the packaged Codex runtime, then rerun egregore.",
1135
+ "Restore this instance using its installed runtime version, then rerun egregore.",
1136
1136
  "Egregore workflows appear as slash commands. In Codex, invoke them with the matching $skill token or ask in natural language.",
1137
1137
  ].join("\n");
1138
1138
  }
@@ -1146,7 +1146,7 @@ function piSupportMessage(egregoreDir) {
1146
1146
  "Pi meta-harness support is missing from this Egregore checkout.",
1147
1147
  ` path: ${egregoreDir}`,
1148
1148
  "",
1149
- "Run npx -y create-egregore@latest to install the packaged Pi runtime, then rerun egregore.",
1149
+ "Restore this instance using its installed runtime version, then rerun egregore.",
1150
1150
  "Pi loads Egregore through project-local .pi resources and the shared portable skill corpus.",
1151
1151
  ].join("\n");
1152
1152
  }
@@ -1156,7 +1156,7 @@ function primeSupportMessage(egregoreDir) {
1156
1156
  "Prime Agent runtime support is missing from this Egregore checkout.",
1157
1157
  ` path: ${egregoreDir}`,
1158
1158
  "",
1159
- "Run npx -y create-egregore@latest to install the packaged Prime Agent runtime, then rerun egregore.",
1159
+ "Restore this instance using its installed runtime version, then rerun egregore.",
1160
1160
  "Prime Agent loads Egregore through project-local .prime/agent resources and the shared portable skill corpus.",
1161
1161
  ].join("\n");
1162
1162
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-egregore",
3
- "version": "0.21.0-runtime-mvp.23",
3
+ "version": "0.21.0-runtime-mvp.24",
4
4
  "description": "Set up Egregore for your team in one command — installs the egregore launcher and your choice of Claude Code, Codex, or Pi.",
5
5
  "license": "MIT",
6
6
  "bin": {