Skip to content

Commit 76e87dc

Browse files
committed
improve readme
1 parent e8c4e4c commit 76e87dc

4 files changed

Lines changed: 73 additions & 13 deletions

File tree

README.md

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,25 +89,37 @@ On setup:
8989

9090
The GitHub marketplace flow installs from the repository root.
9191

92+
The setup step requires the `nsolid-plugin` CLI on your PATH:
93+
94+
```bash
95+
npm i -g nsolid-plugin # stable release
96+
# during pre-release:
97+
npm i -g nsolid-plugin@next
98+
```
99+
100+
Or invoke it once-off with `npx -y nsolid-plugin setup --harness <harness>` (`npx -y nsolid-plugin@next ...` during pre-release).
101+
92102
### Claude Code
93103

94104
```bash
95105
claude plugin marketplace add NodeSource/nsolid-plugin
96106
claude plugin install nsolid-plugin@nodesource
97-
npx -y @nodesource/nsolid-plugin setup --harness claude
107+
nsolid-plugin setup --harness claude
98108
```
99109

100110
Claude installs plugins through marketplaces. The repository root includes `.claude-plugin/marketplace.json`, so GitHub install works directly. If marketplace/local plugin install is unavailable, `nsolid-plugin install --harness claude` is the fallback direct installer and does not open a browser.
101111

112+
> `nsolid-plugin` must be available on your PATH. Once published, install it globally (`npm i -g nsolid-plugin`) or invoke it via npx (`npx -y nsolid-plugin setup --harness claude`). During the pre-release window, use the prerelease tag (`npx -y nsolid-plugin@next ...` or `npm i -g nsolid-plugin@next`).
113+
102114
### Codex CLI
103115

104116
```bash
105117
codex plugin marketplace add NodeSource/nsolid-plugin
106118
codex plugin add nsolid-plugin@nodesource
107-
npx -y @nodesource/nsolid-plugin setup --harness codex
119+
nsolid-plugin setup --harness codex
108120
```
109121

110-
Codex is marketplace-owned. A NodeSource-owned Git/local marketplace can be used as fallback if OpenAI curation is unavailable. Authentication remains explicit through `npx -y @nodesource/nsolid-plugin setup --harness codex`.
122+
Codex is marketplace-owned. A NodeSource-owned Git/local marketplace can be used as fallback if OpenAI curation is unavailable. Authentication remains explicit through `nsolid-plugin setup --harness codex` (or `npx -y nsolid-plugin setup --harness codex`).
111123

112124
### OpenCode
113125

@@ -123,7 +135,7 @@ Use `nsolid-plugin install --harness opencode` only as a no-browser fallback/rep
123135

124136
```bash
125137
agy plugin install https://github.com/NodeSource/nsolid-plugin.git
126-
npx -y @nodesource/nsolid-plugin setup --harness antigravity
138+
nsolid-plugin setup --harness antigravity
127139
```
128140

129141
Antigravity installs the repository root as a native plugin and stages skills/MCP wrappers under `~/.gemini/antigravity-cli/plugins/nsolid-plugin/`. Install does not start auth.

docs/qa-guide.md

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,14 @@ Refresh the committed root manifests from `bundle.json` before native-install QA
5252
pnpm plugin:root
5353
```
5454

55-
`plugin:root` runs `scripts/materialize-github-marketplace.mjs`, which rewrites the root manifests and validates that every bundle skill exists at `skills/<name>/SKILL.md`. Leave the resulting files staged for QA; native install (sections 7–9) reads them directly from the repo root. To verify the committed manifests are in sync (no drift after a `bundle.json` change), run `pnpm plugin:root:check`.
55+
`plugin:root` runs `scripts/materialize-github-marketplace.mjs`, which rewrites the root manifests and validates that every bundle skill exists at `skills/<name>/SKILL.md`. Leave the resulting files staged for QA; native install (sections 8–10) reads them directly from the repo root. To verify the committed manifests are in sync (no drift after a `bundle.json` change), run `pnpm plugin:root:check`.
5656

5757
## 3. Real HOME CLI QA setup
5858

5959
This QA flow uses your real HOME and modifies real harness configs.
6060

61+
Local build (default — QA the code in this checkout):
62+
6163
```bash
6264
export REPO_ROOT="$(pwd)"
6365
export REAL_HOME="$(node -e 'console.log(require("node:os").homedir())')"
@@ -66,6 +68,18 @@ export CLI="node $REPO_ROOT/packages/core/dist/src/cli.js"
6668
echo "Using real HOME: $HOME"
6769
```
6870

71+
Published package (once `nsolid-plugin` is on npm — QA the shipped artifact instead):
72+
73+
```bash
74+
export REAL_HOME="$(node -e 'console.log(require("node:os").homedir())')"
75+
export HOME="$REAL_HOME"
76+
# stable release:
77+
export CLI="npx -y nsolid-plugin"
78+
# prerelease (published under the next dist-tag):
79+
export CLI="npx -y nsolid-plugin@next"
80+
echo "Using real HOME: $HOME"
81+
```
82+
6983
Confirm CLI help:
7084

7185
```bash
@@ -163,7 +177,38 @@ Expected:
163177
- `uninstall` removes fallback OpenCode artifacts.
164178
- `logout` removes credentials or says none were found.
165179

166-
## 7. Claude Code native install QA
180+
## 7. Published CLI package QA
181+
182+
Once `nsolid-plugin` is published to npm, QA the shipped package itself — not the local build — to confirm the `bin` works, the right files ship, and skills/bundle are included. Run this in a throwaway directory.
183+
184+
```bash
185+
# In a throwaway dir, NOT the repo:
186+
mkdir -p /tmp/nsolid-pkg-qa && cd /tmp/nsolid-pkg-qa
187+
188+
# stable release:
189+
npx -y nsolid-plugin --help
190+
# prerelease:
191+
npx -y nsolid-plugin@next --help
192+
193+
# Inspect what the package actually ships (files included in the tarball):
194+
npm pack nsolid-plugin@next --dry-run 2>&1 | sed -n '/Tarball Contents/,/Tarball Details/p'
195+
```
196+
197+
Expected:
198+
- `--help` runs without a local build; the `nsolid-plugin` bin is executable.
199+
- Tarball contents include `dist/src/`, `skills/`, `bundle.json`, and `scripts/`.
200+
- The `bin` entry resolves to `./dist/src/cli.js` and that file is executable.
201+
- No `test/`, no source `*.ts`, no `tsconfig` shipped.
202+
203+
Optional — run `doctor` from the published package against a real HOME:
204+
205+
```bash
206+
export REAL_HOME="$(node -e 'console.log(require("node:os").homedir())')"
207+
export HOME="$REAL_HOME"
208+
npx -y nsolid-plugin@next doctor --harness claude || true
209+
```
210+
211+
## 8. Claude Code native install QA
167212

168213
Claude installs from the GitHub plugin root. The local path can be the repo checkout itself, or a clone for closer-to-release coverage.
169214

@@ -212,7 +257,7 @@ claude plugin marketplace remove nodesource || true
212257
$CLI uninstall --harness claude --keep-credentials || true
213258
```
214259

215-
## 8. Codex native install QA
260+
## 9. Codex native install QA
216261

217262
Codex installs from the GitHub plugin root. The marketplace name is `nodesource`.
218263

@@ -265,7 +310,7 @@ $CLI uninstall --harness codex --keep-credentials || true
265310

266311
If `codex plugin remove nsolid-plugin@nodesource` is unavailable, remove it through `codex /plugins`.
267312

268-
## 9. Antigravity native install QA
313+
## 10. Antigravity native install QA
269314

270315
Antigravity installs directly from the GitHub plugin root (a git URL).
271316

@@ -318,7 +363,7 @@ agy plugin uninstall nsolid-plugin || true
318363
$CLI uninstall --harness antigravity --keep-credentials || true
319364
```
320365

321-
## 10. Pi package install QA
366+
## 11. Pi package install QA
322367

323368
Local pre-release package QA with production accounts:
324369

@@ -352,7 +397,10 @@ Production package QA uses the published Pi package instead of the local package
352397
export HOME="$REAL_HOME"
353398
$CLI uninstall --harness pi --keep-credentials || true
354399
find "$HOME/.pi/agent/skills" "$HOME/.agents/skills" -maxdepth 1 -name 'ns-*' -exec rm -rf {} + 2>/dev/null || true
400+
# stable release:
355401
pi install npm:nsolid-pi-plugin
402+
# prerelease (published under the next dist-tag) — pin the exact version, e.g.:
403+
# pi install npm:nsolid-pi-plugin@1.0.0-next.0
356404
$CLI setup --harness pi --yes
357405
pi install npm:pi-mcp-adapter
358406
$CLI doctor --harness pi || true
@@ -381,7 +429,7 @@ $CLI uninstall --harness pi --keep-credentials || true
381429
pnpm plugin:clean
382430
```
383431

384-
## 11. OpenCode CLI-only install QA
432+
## 12. OpenCode CLI-only install QA
385433

386434
OpenCode is CLI-only. `setup --harness opencode` is the primary onboarding command because it authenticates and then performs the direct install; `install --harness opencode` is a no-browser fallback/repair path.
387435

@@ -415,7 +463,7 @@ Cleanup:
415463
$CLI uninstall --harness opencode --keep-credentials || true
416464
```
417465

418-
## 12. Final cleanup
466+
## 13. Final cleanup
419467

420468
```bash
421469
$CLI logout || true

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "nsolid-plugin",
3-
"version": "0.1.0",
3+
"version": "1.0.0-next.0",
44
"type": "module",
55
"main": "dist/src/index.js",
66
"types": "dist/src/index.d.ts",

packages/pi-plugin/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "nsolid-pi-plugin",
3-
"version": "0.1.0",
3+
"version": "1.0.0-next.0",
44
"type": "module",
55
"description": "N|Solid Plugin for Pi Agent",
66
"keywords": [

0 commit comments

Comments
 (0)