codeharbor 0.1.4 → 0.1.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 (3) hide show
  1. package/README.md +3 -2
  2. package/dist/cli.js +28 -5
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -83,8 +83,9 @@ Run local script with custom options:
83
83
 
84
84
  Runtime home behavior:
85
85
 
86
- - By default, all `codeharbor` commands use `/opt/codeharbor` for `.env` and relative data paths.
87
- - No manual `cd /opt/codeharbor` is required after installation.
86
+ - By default, all `codeharbor` commands use `~/.codeharbor` for `.env` and relative data paths.
87
+ - Backward compatibility: if `/opt/codeharbor/.env` already exists, it continues to be used automatically.
88
+ - No manual `cd` is required after installation.
88
89
  - To use a custom runtime directory, set `CODEHARBOR_HOME` (for example `export CODEHARBOR_HOME=/srv/codeharbor`).
89
90
 
90
91
  Install directly from GitHub:
package/dist/cli.js CHANGED
@@ -24,7 +24,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  ));
25
25
 
26
26
  // src/cli.ts
27
- var import_node_fs9 = __toESM(require("fs"));
27
+ var import_node_fs10 = __toESM(require("fs"));
28
28
  var import_node_path11 = __toESM(require("path"));
29
29
  var import_commander = require("commander");
30
30
 
@@ -4911,21 +4911,34 @@ function readEnv(env, key) {
4911
4911
  }
4912
4912
 
4913
4913
  // src/runtime-home.ts
4914
+ var import_node_fs9 = __toESM(require("fs"));
4915
+ var import_node_os2 = __toESM(require("os"));
4914
4916
  var import_node_path10 = __toESM(require("path"));
4915
- var DEFAULT_RUNTIME_HOME = "/opt/codeharbor";
4917
+ var LEGACY_RUNTIME_HOME = "/opt/codeharbor";
4918
+ var USER_RUNTIME_HOME_DIR = ".codeharbor";
4919
+ var DEFAULT_RUNTIME_HOME = import_node_path10.default.resolve(import_node_os2.default.homedir(), USER_RUNTIME_HOME_DIR);
4916
4920
  var RUNTIME_HOME_ENV_KEY = "CODEHARBOR_HOME";
4917
4921
  function resolveRuntimeHome(env = process.env) {
4918
4922
  const configured = env[RUNTIME_HOME_ENV_KEY]?.trim();
4919
4923
  if (configured) {
4920
4924
  return import_node_path10.default.resolve(configured);
4921
4925
  }
4922
- return DEFAULT_RUNTIME_HOME;
4926
+ const legacyEnvPath = import_node_path10.default.resolve(LEGACY_RUNTIME_HOME, ".env");
4927
+ if (import_node_fs9.default.existsSync(legacyEnvPath)) {
4928
+ return LEGACY_RUNTIME_HOME;
4929
+ }
4930
+ return resolveUserRuntimeHome(env);
4931
+ }
4932
+ function resolveUserRuntimeHome(env = process.env) {
4933
+ const home = env.HOME?.trim() || import_node_os2.default.homedir();
4934
+ return import_node_path10.default.resolve(home, USER_RUNTIME_HOME_DIR);
4923
4935
  }
4924
4936
 
4925
4937
  // src/cli.ts
4926
4938
  var runtimeHome = null;
4939
+ var cliVersion = resolveCliVersion();
4927
4940
  var program = new import_commander.Command();
4928
- program.name("codeharbor").description("Instant-messaging bridge for Codex CLI sessions").version("0.1.0");
4941
+ program.name("codeharbor").description("Instant-messaging bridge for Codex CLI sessions").version(cliVersion);
4929
4942
  program.command("init").description("Create or update .env via guided prompts").option("-f, --force", "overwrite existing .env without confirmation").action(async (options) => {
4930
4943
  const home = ensureRuntimeHomeOrExit();
4931
4944
  await runInitCommand({ force: options.force ?? false, cwd: home });
@@ -5049,7 +5062,7 @@ function ensureRuntimeHomeOrExit() {
5049
5062
  }
5050
5063
  const home = resolveRuntimeHome();
5051
5064
  try {
5052
- import_node_fs9.default.mkdirSync(home, { recursive: true });
5065
+ import_node_fs10.default.mkdirSync(home, { recursive: true });
5053
5066
  } catch (error) {
5054
5067
  const message = error instanceof Error ? error.message : String(error);
5055
5068
  process.stderr.write(`Runtime setup failed: cannot create ${home}. ${message}
@@ -5077,6 +5090,16 @@ function parsePortOption(raw, fallback) {
5077
5090
  }
5078
5091
  return parsed;
5079
5092
  }
5093
+ function resolveCliVersion() {
5094
+ try {
5095
+ const packagePath = import_node_path11.default.resolve(__dirname, "..", "package.json");
5096
+ const content = import_node_fs10.default.readFileSync(packagePath, "utf8");
5097
+ const parsed = JSON.parse(content);
5098
+ return typeof parsed.version === "string" && parsed.version.trim() ? parsed.version : "0.0.0";
5099
+ } catch {
5100
+ return "0.0.0";
5101
+ }
5102
+ }
5080
5103
  function formatError3(error) {
5081
5104
  if (error instanceof Error) {
5082
5105
  return error.message;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeharbor",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "Instant-messaging bridge for Codex CLI sessions",
5
5
  "license": "MIT",
6
6
  "main": "dist/cli.js",