Skip to content

Make the harness installable, and test that it stays so - #4

Merged
coderloganli merged 2 commits into
mainfrom
add-plugin-packaging
Aug 15, 2026
Merged

Make the harness installable, and test that it stays so#4
coderloganli merged 2 commits into
mainfrom
add-plugin-packaging

Conversation

@coderloganli

Copy link
Copy Markdown
Owner

The repository becomes its own marketplace, so the plugin can actually be installed:

/plugin marketplace add coderloganli/dev-harness
/plugin install harness@harness

One entry, "source": "./", no second repository to keep in step. Fields checked against schemastore's claude-code-marketplace.json.

Also here:

  • package.jsonnpm test runs the suite. Nothing to publish; private: true.
  • CI — ubuntu and windows, Node 20 and 22. Windows is in the matrix on purpose: the one refusal is a path comparison, and a path bug shows up there first.
  • Test 38 — the version is now declared in three files, and the marketplace one is what tells an installed copy that a newer one exists, so a release that bumps plugin.json alone ships to nobody. The test holds the three equal, and holds the README install line to the names actually declared. Verified it fails on drift before trusting it.
  • docs/architecture.md §1 — says the repository is also its own marketplace, because a file that exists and is undocumented is the thing this project is against.

43/43 tests pass locally (Node 24, Windows).

Not verified: that /plugin marketplace add succeeds end to end. That needs the branch on GitHub first — which is now true, so it can be tried against this branch.

🤖 Generated with Claude Code

https://claude.ai/code/session_011mjhmFa9c2dwxmNeH5tboy

coderloganli and others added 2 commits August 15, 2026 15:41
The repository becomes its own marketplace: one entry whose source is the
repository root, so `/plugin marketplace add` and `/plugin install` reach the
plugin without a second repository to keep in step.

A package.json so `npm test` runs the suite, and CI on ubuntu and windows. The
one refusal is a path comparison, and a path bug appears on windows first.

The version is now declared in three files, and the marketplace one is what
tells an installed copy a newer one exists — a release that bumps plugin.json
alone ships to nobody. Test 38 holds them equal, and holds the README install
line to the names actually declared.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011mjhmFa9c2dwxmNeH5tboy
checkout and setup-node at v4 target Node 20, which the runners now force
onto Node 24 and will stop carrying. v7 targets node24 directly. Nothing
about the matrix changes: the Node versions tested are the plugin's own.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011mjhmFa9c2dwxmNeH5tboy
@coderloganli
coderloganli merged commit 3374970 into main Aug 15, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant