Skip to content

plugins: distribute via npx plugins add; CI verifies Claude Code + Codex#72

Merged
jbragg merged 1 commit into
mainfrom
plugin
Jun 8, 2026
Merged

plugins: distribute via npx plugins add; CI verifies Claude Code + Codex#72
jbragg merged 1 commit into
mainfrom
plugin

Conversation

@jbragg

@jbragg jbragg commented Jun 7, 2026

Copy link
Copy Markdown
Collaborator

Distribute asta plugins via npx plugins add

Enables two things:

  1. Full plugins into any agent the installer supports — whole plugins
    (skills + hooks) via the agent's native plugin system, not just loose skill
    files (npx skills add) or Claude Code's own marketplace.
  2. One canonical source, reduced duplicationplugins/asta-preview/ now
    holds the skills (edit here); plugins/asta is generated as the core subset.
    Only those 5 core skills are still duplicated, down from the old layout where
    a top-level skills/ was copied into both plugin dirs.

No skill/hook content changes. The shipped plugin trees are byte-identical
to main — SKILL.md, assets, scripts, workflows, and hooks. The PR deletes the
now-redundant top-level skills/+hooks/ (duplicates of the plugin copies — so
the diff shows deletions, not renames) and makes plugins/asta-preview the
canonical source. Verify (empty diff = identical):

$ git diff main HEAD -- plugins/asta plugins/asta-preview
                       # (no output)
$ git diff --stat main HEAD -- plugins/
 plugins/README.md | 29 +++++++++++++++++++++-----   # the only changed file

Layout, rationale, and the distribution matrix are in the DEVELOPER.md diff.
Install is verified in CI with no auth (plugin-install job). The verifier runs
under a throwaway HOME, so bash scripts/verify-plugin-install.sh <agent> is
safe to run locally too (needs claude/codex on PATH).

Tests. The split is asserted from the filesystem (TestPluginLayout);
CLI-based tests are thin smokes that our repo is consumable by the real
installers. Removed the npx skills --list discovery test — it re-checked the
CLI's own discovery and coupled to its output wording (vercel's to test, not
ours), and the install smoke now asserts the same exact set via real install.
CLI smokes run against @latest — what npx plugins add / npx skills add
actually give users — so green means users can install, and an upstream break
reds CI immediately (the SKILLS_CLI/PLUGINS_CLI env vars pin as an emergency
lever). New guards (in the diff) cover our own contract — marketplace sources
resolve, no committed per-plugin manifest, metadata.internal is boolean.

Not derivable from the diff: inspect-swe is unaffected — -S skills=
resolves plugins/asta-preview/skills (kept), now guarded by the docker smoke
test. Companion agent-baselines PR (allenai/agent-baselines#28):
points the inspect-swe swap-in-local-skills recipe at the now-canonical
plugins/asta-preview/skills (edit it directly). Land alongside this PR.

Make the asta plugins installable through npx plugins add into any agent the
CLI supports. Make plugins/asta-preview the canonical source (all skills +
hooks) and generate only the core plugins/asta subset from it, so the shared
skills are no longer duplicated across both plugins. Add a CI job + verify
script that check installation (skills + hooks) into Claude Code and Codex
with no auth.

@rodneykinney rodneykinney left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hooray!

@jbragg jbragg marked this pull request as ready for review June 8, 2026 16:57
@jbragg jbragg merged commit e51f61d into main Jun 8, 2026
7 checks passed
@jbragg jbragg deleted the plugin branch June 8, 2026 16:57
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.

2 participants