Skip to content

Cover the plugin manifests and skill frontmatter (stack 4/5) - #45

Closed
martient wants to merge 1 commit into
claude/ai-agents-capabilities-report-fgpp3p-cross-toolfrom
claude/ai-agents-capabilities-report-fgpp3p-manifest-tests
Closed

martient wants to merge 1 commit into
claude/ai-agents-capabilities-report-fgpp3p-cross-toolfrom
claude/ai-agents-capabilities-report-fgpp3p-manifest-tests

Conversation

@martient

@martient martient commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Stacked on #44. Resolves P1-12.

AGENTS.md asks for public-seam tests over "machine output, exit codes, Git behavior, hook protocol, and plugin manifests". The first four were covered. Nothing compiled or executed the manifests, so a typo in any of the six JSON and Markdown files shipped silently — the plugin would simply fail to load for a user, with no signal here.

Nine tests

Manifests

  • Both marketplace manifests parse, and their declared sources resolve to real directories carrying the expected plugin manifest.
  • The Claude and Codex plugin manifests agree on name, version and license — they describe the same plugin and had no mechanism keeping them in step.
  • The Codex skills path resolves.

Skill frontmatter, against the Agent Skills spec

  • Only spec-allowed keys (name, description, license, allowed-tools, metadata, compatibility); anything else fails validation in a compliant runtime.
  • Both required keys present.
  • A skill's frontmatter name matches its directory, or discovery breaks.
  • Descriptions carry a trigger ("Use when …"), not just a capability — the description is all a runtime sees before deciding whether to load the body.

Shared-body hygiene

These were mutation-checked

Tests that pass the moment you write them prove nothing, so I broke the things they guard and confirmed they fail with a message that names the problem:

Mutation Result
Added author: to a skill's frontmatter FAILED — `author` is not an Agent Skills frontmatter key
Pointed the marketplace at ./plugins/typo FAILED — marketplace points at `./plugins/typo`, which does not exist

Both pass again after restoring.

Verification

fmt clean, clippy -D warnings clean. The pre-existing tag_tests failure noted in #42 is unchanged.

AGENTS.md asks for public-seam tests over "machine output, exit codes,
Git behavior, hook protocol, and plugin manifests". The first four were
covered; nothing compiled or executed the manifests, so a typo in any of
the six JSON and Markdown files shipped silently.

Nine tests: both marketplace manifests parse and their declared sources
resolve to real directories carrying the expected plugin manifest; the
Claude and Codex plugin manifests agree on name, version and license;
the Codex skills path resolves; skill frontmatter uses only the keys the
Agent Skills spec allows and carries the two required ones; a skill's
frontmatter name matches its directory; descriptions carry a trigger
rather than just a capability; no skill body uses runtime-specific
invocation syntax, since that body is shared by Codex and Claude Code;
and every skill is reachable from the cross-tool .agents/skills path.

Each assertion was mutation-checked -- a bogus frontmatter key and a
marketplace source pointing at a missing directory both fail with the
message that names the problem.

Copy link
Copy Markdown
Owner Author

Superseded by #49, which carries these commits unchanged. Closing — see #42 for why the stack was collapsed.


Generated by Claude Code

@martient martient closed this Sep 20, 2026
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