Problem
Installing matsengrp-agents from the marketplace produces this error in claude /doctor:
Plugin matsengrp-agents has an invalid manifest file at .claude-plugin/plugin.json.
Validation errors: hooks: Invalid input, agents: Invalid input
Cause
.claude-plugin/plugin.json declares:
"agents": "agents/",
"hooks": "hooks/hooks.json"
The current Claude Code plugin schema rejects strings for these keys:
agents expects an array of agent objects (or omitted, in which case agents/ is auto-discovered).
hooks expects an inline hooks-config object (or omitted, in which case hooks/hooks.json is auto-discovered).
Analogous to commit 960560a ("Fix marketplace.json source path format"), which corrected a similar schema mismatch.
Suggested fix
Drop both fields — the agents/ directory and hooks/hooks.json already sit at the standard auto-discovery paths, so all 12 agents plus the Notification/Stop hooks continue to load.
"keywords": [
"scientific-writing",
...
"bioinformatics"
- ],
- "agents": "agents/",
- "hooks": "hooks/hooks.json"
+ ]
}
Verified locally
After applying this diff to my local clone:
claude /doctor passes.
- All 12 agents (
scientific-tex-editor, snakemake-pipeline-expert, etc.) still load.
- Both Notification and Stop hooks still fire.
Environment
- Claude Code: latest
- Plugin commit: f6cd4d1
Happy to send a PR — will follow up shortly.
Reported by Vito Butardo (vbutardo), Swinburne University of Technology.
Problem
Installing
matsengrp-agentsfrom the marketplace produces this error inclaude /doctor:Cause
.claude-plugin/plugin.jsondeclares:The current Claude Code plugin schema rejects strings for these keys:
agentsexpects an array of agent objects (or omitted, in which caseagents/is auto-discovered).hooksexpects an inline hooks-config object (or omitted, in which casehooks/hooks.jsonis auto-discovered).Analogous to commit 960560a ("Fix marketplace.json source path format"), which corrected a similar schema mismatch.
Suggested fix
Drop both fields — the
agents/directory andhooks/hooks.jsonalready sit at the standard auto-discovery paths, so all 12 agents plus the Notification/Stop hooks continue to load."keywords": [ "scientific-writing", ... "bioinformatics" - ], - "agents": "agents/", - "hooks": "hooks/hooks.json" + ] }Verified locally
After applying this diff to my local clone:
claude /doctorpasses.scientific-tex-editor,snakemake-pipeline-expert, etc.) still load.Environment
Happy to send a PR — will follow up shortly.
Reported by Vito Butardo (vbutardo), Swinburne University of Technology.