Repository navigation
fix(agent-plugin): sync into Claude without manifest warnings (0.11.1) - #328
Merged
Merged
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
The narrowly scoped metadata, regression-test, and documentation changes are consistent, with no unresolved blocking defects identified.
No open issues 🎉
What changed in this PR
This PR prepares agent-plugin 0.11.1 to address Claude plugin-sync warnings without changing runtime behavior.
Changes:
- Removes the plugin manifest’s
$schemakey and shortens the marketplace description. - Synchronizes plugin versions and adds regression checks for manifest keys and description lengths.
- Updates release guidance and records host-validation results, with a fresh Claude sync still pending.
Decision compliance was not independently verified because the adrkit MCP server was unavailable.
| File | Description |
|---|---|
packages/adapters/agent-plugin/test/manifest.test.ts |
Adds manifest-key and description-length checks. |
packages/adapters/agent-plugin/skills/decision-memory/SKILL.md |
Bumps skill metadata to 0.11.1. |
packages/adapters/agent-plugin/skills/decision-backfill/SKILL.md |
Bumps skill metadata to 0.11.1. |
packages/adapters/agent-plugin/README.md |
Documents the patch and updated APM behavior. |
packages/adapters/agent-plugin/package.json |
Bumps the plugin package version. |
packages/adapters/agent-plugin/apm.yml |
Aligns the APM version. |
packages/adapters/agent-plugin/.claude-plugin/plugin.json |
Removes $schema and bumps the version. |
docs/RELEASING.md |
Updates expected APM validation output. |
docs/reference-verification-agent-plugin.md |
Records validation evidence and remaining sync verification. |
CHANGELOG.md |
Describes the manifest compatibility fix. |
bun.lock |
Aligns the plugin workspace version. |
AGENTS.md |
Documents manifest constraints and the current plugin version. |
.claude-plugin/marketplace.json |
Shortens the description and aligns both versions. |
Review effort: Balanced
Decisions governing this change12 accepted decisions govern this change · 4 active proposals Show all 12 governing decisions and why each applies
Active proposals touching this change (4)These are not yet ratified and do not bind this change:
Links point at |
6 tasks done
mbeacom
added a commit
that referenced
this pull request
Oct 25, 2026
…h advisories (#329) The required `audit` check now fails on every pull request, including #328, because of two advisories published after main's last green run: - GHSA-mrhx-c7xc-m3w5 (zod < 4.6.6, high): validating oversized constrained collections can exhaust memory. - GHSA-xjj6-f33q-929c (undici >= 6.23.0 < 6.29.1, high): an unhandled error on excessive content-encodings is a denial of service. undici reaches this repository through @actions/github and @actions/http-client (^6.23.0), which are bundled into all three Actions. As in #251, this edits only those two bun.lock entries: zod 4.6.5 -> 4.6.7 (inside ^4.6.5, published 2026-10-12) and undici 6.29.0 -> 6.29.1 (inside ^6.23.0, published 2026-10-15). Both clear the 3-day minimumReleaseAge, and both integrity hashes match the npm registry. Re-resolving the lockfile would have moved unrelated packages. `bun install --frozen-lockfile` accepts the edit, and `audit:gate` now reports no advisories at any severity. I regenerated packages/ci/dist under linux/amd64 oven/bun:1.4.2. The diff is zod's and undici's own code. `schema:emit` leaves schema/adr.schema.json byte-identical. typecheck, build, lint, and the full suite (4544 pass, 2 skip) pass, and each bundle run under Node with no event prints the same result as main's. Signed-off-by: Mark Beacom <m@beacom.dev>
Claude's plugin sync reported two warnings for adrkit at d94698c: it stripped the unrecognized `$schema` key from plugin.json, and it rejected a plugin description over 500 characters. The over-long copy was the marketplace entry's (550 characters), not plugin.json's (330). I removed `$schema` from .claude-plugin/plugin.json, which also clears APM's "Unrecognized plugin manifest $schema" warning, and shortened the marketplace description to 434 characters. It now names both Copilot canvases instead of only decision-review. Two manifest tests keep `$schema` out of both manifests and hold every description to 500 characters. Both fail against the 0.11.0 manifests. The plugin moves to 0.11.1 on every version-bearing surface, because Claude Code keys its plugin cache on the version. Signed-off-by: Mark Beacom <m@beacom.dev>
mbeacom
force-pushed
the
fix/plugin-manifest-claude-sync
branch
from
October 25, 2026 15:47
80fcbae to
df32c11
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What and why
Claude's plugin sync of this marketplace (at
d94698c) reported two warnings foradrkit:Plugin 'adrkit' has unrecognized key in plugin.json: '$schema' (stripped — the SDK ignores unknown top-level fields)Plugin description must be at most 500 characters.The over-long description was the marketplace entry's copy (550 characters), not
plugin.json's (330). I shortened it to 434 characters. It now names both Copilot canvases, where before it named onlydecision-review. I also removed$schemafrom.claude-plugin/plugin.json. No host reads that key, and removing it also clears APM'sUnrecognized plugin manifest $schemawarning. Copilot uses$schemaonly to select an Agent Plugins 1.0 manifest, and the value here was the schemastore Claude URL, not that one.The plugin moves to 0.11.1 on every version-bearing surface, because Claude Code keys its plugin cache on
version. Merging this ships it.Checklist
git commit -s).packages/ci/srcnor@adrkit/corechanged.packages/adapters/agent-plugin/test/manifest.test.ts, observed failing against the 0.11.0 manifests before the fix: no$schemain either manifest, and every description at most 500 characters.bun run typecheck && bun run build && bun test && bun run lintpass (4544 pass, 2 skip, 0 fail);check:changelog,check:stale-refs, andcheck:doc-pinspass.Notes for reviewers
Host validators, per
docs/RELEASING.md:claude plugin validate packages/adapters/agent-pluginandclaude plugin validate .claude-plugin/marketplace.jsonboth pass. The plugin-directory checks add anICON_MISSINGwarning. That comes from the directory's submission checks, not the sync. I left it alone: whichever icon is added first becomes the directory listing's icon and can't be changed later.apm install --target claude|copilot|opencodeon APM 0.35.0 gives no$schemawarning;mainstill prints it. Thebin/ executables skippednote shows up on both, so this change didn't cause it.I haven't re-run Claude's sync itself, because it reads
main. It should clear once this merges. The measurements are recorded indocs/reference-verification-agent-plugin.md.RELEASING.mdnow says to expect no APM warning.