claude-nomad 0.32.4 → 0.33.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.33.0](https://github.com/funkadelic/claude-nomad/compare/v0.32.4...v0.33.0) (2026-05-30)
4
+
5
+
6
+ ### Added
7
+
8
+ * **dist:** run bin under node native type-stripping, drop tsx ([#198](https://github.com/funkadelic/claude-nomad/issues/198)) ([79b437d](https://github.com/funkadelic/claude-nomad/commit/79b437d8fee69d4f0f25394de9236f7c67289291))
9
+ * **help:** show CLI version at the top of default help ([#196](https://github.com/funkadelic/claude-nomad/issues/196)) ([f095d35](https://github.com/funkadelic/claude-nomad/commit/f095d354273122bc530aac5f486fdb9ad771341e))
10
+
3
11
  ## [0.32.4](https://github.com/funkadelic/claude-nomad/compare/v0.32.3...v0.32.4) (2026-05-30)
4
12
 
5
13
 
package/README.md CHANGED
@@ -381,8 +381,6 @@ Read these before adopting so you opt in with eyes open.
381
381
  - Node.js 22.22.1 or newer (24 LTS recommended; the npm `engines` field declares the 22.22.1 floor
382
382
  and surfaces a warning on older runtimes - npm only blocks the install when `engine-strict=true`
383
383
  is configured)
384
- - `tsx` (ships as a runtime dependency of the published package; no separate global install
385
- required)
386
384
  - Git
387
385
  - [`gitleaks`](https://github.com/gitleaks/gitleaks) (required for `nomad push`, which exits with an
388
386
  error if it is not on PATH; `nomad doctor` also checks it against the pinned 8.30.x and warns when
@@ -455,9 +453,11 @@ $ git clone git@github.com:<your-username>/claude-nomad.git ~/claude-nomad
455
453
  export NOMAD_HOST=<your-host-label> # any short, stable label; nomad reads this instead of os.hostname()
456
454
  ```
457
455
 
458
- `npm i -g claude-nomad` puts a `nomad` binary on your PATH. The bin shim is the existing
459
- `src/nomad.ts` entrypoint resolved through tsx (a runtime dependency); no compile step. (The Node
460
- version floor and the `engine-strict` caveat are in [Requirements](#requirements).)
456
+ `npm i -g claude-nomad` puts a `nomad` binary on your PATH. The binary runs the `src/nomad.ts`
457
+ source directly under Node's built-in type-stripping. What this means for you: there is no compile
458
+ step, no extra transpiler to install, and nothing is fetched from the network the first time you run
459
+ `nomad`, so the first run works offline. (The Node version floor and the `engine-strict` caveat are
460
+ in [Requirements](#requirements).)
461
461
 
462
462
  On every additional host you repeat only steps 3-4; steps 1-2 are already done, since your private
463
463
  repo lives on the remote from step 2.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-nomad",
3
- "version": "0.32.4",
3
+ "version": "0.33.0",
4
4
  "type": "module",
5
5
  "description": "Sync Claude Code config (~/.claude/) across machines via a private Git repo, with path remapping and per-host settings overrides.",
6
6
  "keywords": [
@@ -33,9 +33,9 @@
33
33
  "node": ">=22.22.1"
34
34
  },
35
35
  "scripts": {
36
- "pull": "tsx src/nomad.ts pull",
37
- "push": "tsx src/nomad.ts push",
38
- "doctor": "tsx src/nomad.ts doctor",
36
+ "pull": "node src/nomad.ts pull",
37
+ "push": "node src/nomad.ts push",
38
+ "doctor": "node src/nomad.ts doctor",
39
39
  "update": "bash scripts/update.sh",
40
40
  "test": "vitest run",
41
41
  "coverage": "vitest run --coverage",
@@ -81,7 +81,6 @@
81
81
  },
82
82
  "dependencies": {
83
83
  "diff": "^9.0.0",
84
- "picocolors": "^1.1.1",
85
- "tsx": "^4.22.2"
84
+ "picocolors": "^1.1.1"
86
85
  }
87
86
  }
package/src/nomad.help.ts CHANGED
@@ -6,6 +6,8 @@
6
6
  * into the README. Channel is stderr, exit code is 1.
7
7
  */
8
8
 
9
+ import pkg from '../package.json' with { type: 'json' };
10
+
9
11
  /**
10
12
  * Column (0-indexed) at which every command and flag description starts. Sized
11
13
  * to clear the longest label (`--resume-cmd <id>`, which ends at column 24)
@@ -28,6 +30,8 @@ const row = (label: string, desc: string): string => label.padEnd(DESC_COL) + de
28
30
  const cont = (text: string): string => ' '.repeat(DESC_COL) + text;
29
31
 
30
32
  export const DEFAULT_HELP = [
33
+ `claude-nomad v${pkg.version}`,
34
+ '',
31
35
  'usage: nomad <command> [flags]',
32
36
  '',
33
37
  'Commands:',
package/src/nomad.ts CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env -S npx tsx
1
+ #!/usr/bin/env -S node --disable-warning=ExperimentalWarning
2
2
  /**
3
3
  * claude-nomad: Claude Code config sync wrapper over a private Git repo.
4
4
  *