fix(schema): move domain field to metadata.json for Claude Code compatibility

BREAKING FIX: Claude Code's marketplace schema validator rejects
unrecognized keys. The 'domain' field added in v8.0.0 caused
'Failed to load marketplace' errors on all 20 plugin entries.

- Removed 'domain' from marketplace.json (all 3 profiles)
- Removed 'domain' from all 20 plugin.json files
- Added 'domain' to metadata.json for all 20 plugins
- Updated validate-marketplace.sh to read from metadata.json
- Updated docs (CANONICAL-PATHS.md, CLAUDE.md) to reference metadata.json
- 12 new metadata.json files created (plugins without mcp_servers)
- 8 existing metadata.json files updated with domain field

Version: 9.1.2

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-07 17:00:58 -05:00
parent f4e62dd1fb
commit e824b18e44
46 changed files with 192 additions and 129 deletions

View File

@@ -154,7 +154,7 @@ When user says "fix the sprint plan command", edit the SOURCE code.
## Project Overview
**Repository:** leo-claude-mktplace
**Version:** 9.1.1
**Version:** 9.1.2
**Status:** Production Ready
A plugin marketplace for Claude Code containing:
@@ -424,19 +424,18 @@ Stored in Gitea Wiki under `lessons-learned/sprints/`.
### Adding a New Plugin
1. Create `plugins/{name}/.claude-plugin/plugin.json` — must include `"domain"` field (`core`, `data`, `saas`, `ops`, or `debug`)
2. Add entry to `.claude-plugin/marketplace.json` with category, tags, license, and `"domain"` field (must match plugin.json)
3. Create `claude-md-integration.md`
4. If using new MCP server, add to root `mcp-servers/` and update `.mcp.json`
5. Run `./scripts/validate-marketplace.sh` — rejects plugins without valid `domain` field
6. Update `CHANGELOG.md`
1. Create `plugins/{name}/.claude-plugin/plugin.json` (standard schema fields only — no custom fields)
2. Create `plugins/{name}/.claude-plugin/metadata.json` — must include `"domain"` field (`core`, `data`, `saas`, `ops`, or `debug`)
3. Add entry to `.claude-plugin/marketplace.json` with category, tags, license (no custom fields — Claude Code schema is strict)
4. Create `claude-md-integration.md`
5. If using new MCP server, add to root `mcp-servers/` and update `.mcp.json`
6. Run `./scripts/validate-marketplace.sh` — rejects plugins without valid `domain` field
7. Update `CHANGELOG.md`
**Domain field is required (v8.0.0+):**
**Domain field is required in metadata.json (v8.0.0+, moved from plugin.json in v9.1.2):**
```json
{
"name": "plugin-name",
"domain": "core",
...
"domain": "core"
}
```