pi-kage 0.3.4 → 0.3.6
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/README.md +20 -5
- package/bin/kage.mjs +690 -620
- package/package.json +13 -3
package/README.md
CHANGED
|
@@ -47,8 +47,8 @@ can't check out the same branch twice, you share stash/refs, and you get a *fres
|
|
|
47
47
|
npm install -g pi-kage # then use `kage` anywhere
|
|
48
48
|
npx pi-kage # or run without installing
|
|
49
49
|
|
|
50
|
-
# pnpm
|
|
51
|
-
pnpm add -g pi-kage
|
|
50
|
+
# pnpm
|
|
51
|
+
pnpm add -g pi-kage
|
|
52
52
|
pnpm dlx pi-kage # or run without installing
|
|
53
53
|
|
|
54
54
|
# or install script (no npm needed — kage is a single, zero-dependency Node script)
|
|
@@ -62,7 +62,7 @@ From source:
|
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
64
|
git clone https://github.com/kid7st/kage
|
|
65
|
-
cd kage && npm link
|
|
65
|
+
cd kage && npm install && npm link # `npm install` builds bin/kage.mjs from src/ (TypeScript)
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
Requires **git**, [**pi**](https://github.com/earendil-works), and **Node ≥ 18** on your `PATH`.
|
|
@@ -168,9 +168,24 @@ pass `--push` / `--pr` / `--force`.
|
|
|
168
168
|
|
|
169
169
|
## Development
|
|
170
170
|
|
|
171
|
+
The CLI and its tests are written in TypeScript and compiled with `tsc`:
|
|
172
|
+
|
|
173
|
+
- `src/kage.mts` → `bin/kage.mjs` — a single, zero-runtime-dependency file (the only thing the
|
|
174
|
+
install script + npm package ship).
|
|
175
|
+
- `test/kage.test.mts` → `dist/kage.test.mjs` — black-box `node:test` smoke tests that spawn the
|
|
176
|
+
built CLI (compiled to `dist/` so they run on every Node in CI, no TS loader needed).
|
|
177
|
+
|
|
178
|
+
`bin/` and `dist/` are build artifacts — both gitignored. `bin/` is produced on `npm install`
|
|
179
|
+
(via `prepare`), so `npm link` from a clone just works.
|
|
180
|
+
|
|
181
|
+
Linting/formatting is handled by [Biome](https://biomejs.dev) — a dev-only dependency that never
|
|
182
|
+
ships in the package, so the zero-runtime-dependency artifact is unaffected.
|
|
183
|
+
|
|
171
184
|
```bash
|
|
172
|
-
npm run
|
|
173
|
-
npm
|
|
185
|
+
npm run build # tsc: src/kage.mts -> bin/kage.mjs
|
|
186
|
+
npm run format # biome: auto-format + safe lint fixes
|
|
187
|
+
npm run lint # biome (lint + format check) + tsc type check (src + test)
|
|
188
|
+
npm test # build CLI + tests, then run node:test smoke tests (temp repos, no network)
|
|
174
189
|
```
|
|
175
190
|
|
|
176
191
|
Releases publish automatically: bump `version` in `package.json`, then
|