kandev 0.55.0 → 0.57.0

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.
@@ -84,7 +84,9 @@ function captureLauncher() {
84
84
  const bundleDir = process.env.KANDEV_BUNDLE_DIR;
85
85
  const version = process.env.KANDEV_VERSION;
86
86
  const kind = bundleDir
87
- ? "homebrew"
87
+ ? homebrewShimPath(cliEntry)
88
+ ? "homebrew"
89
+ : "local"
88
90
  : looksLikeNpxEntry(cliEntry)
89
91
  ? "npx"
90
92
  : cliEntry.includes(`${node_path_1.default.sep}node_modules${node_path_1.default.sep}`)
@@ -9,11 +9,13 @@ exports.renderSystemdUnit = renderSystemdUnit;
9
9
  exports.renderLaunchdPlist = renderLaunchdPlist;
10
10
  const node_os_1 = __importDefault(require("node:os"));
11
11
  const node_path_1 = __importDefault(require("node:path"));
12
- // User-mode PATH includes ~/.local/bin and ~/.bun/bin so user-installed agent
13
- // CLIs (npm user prefix, pipx, fnm, Bun globals like oh-my-pi/omp, etc.) are
14
- // discoverable.
12
+ // Service PATH includes common per-user agent install dirs so user-installed
13
+ // CLIs (npm user prefix, pipx, fnm, Bun globals like oh-my-pi/omp, OpenCode's
14
+ // installer, etc.) are discoverable. System-mode units still run as the
15
+ // configured User=, so %h resolves to that user's home directory.
15
16
  const SYSTEMD_SYSTEM_PATH = "/usr/local/bin:/usr/bin:/bin:/opt/homebrew/bin:/home/linuxbrew/.linuxbrew/bin";
16
- const SYSTEMD_USER_PATH = `%h/.local/bin:%h/.bun/bin:${SYSTEMD_SYSTEM_PATH}`;
17
+ const SYSTEMD_AGENT_BIN_PATH = `%h/.local/bin:%h/.bun/bin:%h/.opencode/bin`;
18
+ const SYSTEMD_SERVICE_PATH = `${SYSTEMD_AGENT_BIN_PATH}:${SYSTEMD_SYSTEM_PATH}`;
17
19
  const LAUNCHD_SYSTEM_PATH = "/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin";
18
20
  const launchdUserPath = () => `${node_os_1.default.homedir()}/.local/bin:${node_os_1.default.homedir()}/.bun/bin:${LAUNCHD_SYSTEM_PATH}`;
19
21
  // Prepend the launcher node's bin dir so `npm`/`npx` resolve under per-user
@@ -63,7 +65,7 @@ function looksLikeManagedUnit(content) {
63
65
  */
64
66
  function renderSystemdUnit(input) {
65
67
  const shimPath = input.launcher.shimPath;
66
- const basePath = input.mode === "system" ? SYSTEMD_SYSTEM_PATH : SYSTEMD_USER_PATH;
68
+ const basePath = SYSTEMD_SERVICE_PATH;
67
69
  // For the shim, prepend its own bin dir (the Homebrew prefix's `bin`, where
68
70
  // node/npm/npx live) so npx-based agents resolve even when the prefix isn't
69
71
  // one of the hardcoded defaults. pathWithNodeBinDir dedupes when it already is.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kandev",
3
- "version": "0.55.0",
3
+ "version": "0.57.0",
4
4
  "private": false,
5
5
  "description": "Launcher for Kandev — manage tasks, orchestrate agents, review changes, and ship value",
6
6
  "license": "AGPL-3.0-only",
@@ -22,11 +22,11 @@
22
22
  "npm": ">=7"
23
23
  },
24
24
  "optionalDependencies": {
25
- "@kdlbs/runtime-linux-x64": "0.55.0",
26
- "@kdlbs/runtime-linux-arm64": "0.55.0",
27
- "@kdlbs/runtime-darwin-x64": "0.55.0",
28
- "@kdlbs/runtime-darwin-arm64": "0.55.0",
29
- "@kdlbs/runtime-win32-x64": "0.55.0"
25
+ "@kdlbs/runtime-linux-x64": "0.57.0",
26
+ "@kdlbs/runtime-linux-arm64": "0.57.0",
27
+ "@kdlbs/runtime-darwin-x64": "0.57.0",
28
+ "@kdlbs/runtime-darwin-arm64": "0.57.0",
29
+ "@kdlbs/runtime-win32-x64": "0.57.0"
30
30
  },
31
31
  "dependencies": {
32
32
  "tar": "^7.5.11",