Context
Jira: APPENG-6002
When adding a new skill to a pack, contributors must manually create a catalog-info.yaml Compass manifest following the template documented in CLAUDE.md (section "Adding Compass Manifests for a New Skill"). This involves:
- Setting namespace to
ai5-marketplace (shared by all entities)
- Adding the right
dependsOn references (plugin, MCP servers, other skills)
- Updating the reverse
dependencyOf in the plugin manifest, MCP server manifests, and any referenced skill manifests (bidirectional policy per COMPASS-1288 workaround)
- Adding the file as a target in the pack's
catalog-info.yaml Location
This is error-prone and tedious, especially the bidirectional relationship updates across multiple files.
Key constraints to encode in the skill
- Namespace: All entities use
ai5-marketplace. Do NOT use pack-specific namespaces.
- Relationships: Only
dependsOn/dependencyOf and ownedBy/ownerOf generate actual relations for custom kinds (AiResource, MCPServer). partOf/hasPart does NOT work (confirmed Aug 2026).
- Plugin→System: Plugins use
spec.system: default/agentic-plugins (generates partOf automatically). Skills do NOT use spec.system.
- Bidirectional declarations: Compass does not auto-generate inverse relations for custom kinds (COMPASS-1288). Both directions must be declared manually.
Proposal
Create a Claude Code skill under .claude/skills/ that automates the generation of Compass manifests for new skills. Given a skill path (e.g., ocp-admin/skills/my-new-skill/), the skill should:
- Read the
SKILL.md frontmatter to extract name, description, and dependencies
- Generate the
catalog-info.yaml with correct namespace (ai5-marketplace), metadata, and relations
- Update the pack's
catalog-info.yaml Location to include the new target
- Update the plugin's
dependencyOf list
- Update any referenced MCP server manifests with
dependencyOf entries
- Update any referenced skill manifests with
dependencyOf entries (for orchestration skills)
Origin
Requested by @dmartinol in PR #133 review feedback.
Context
Jira: APPENG-6002
When adding a new skill to a pack, contributors must manually create a
catalog-info.yamlCompass manifest following the template documented inCLAUDE.md(section "Adding Compass Manifests for a New Skill"). This involves:ai5-marketplace(shared by all entities)dependsOnreferences (plugin, MCP servers, other skills)dependencyOfin the plugin manifest, MCP server manifests, and any referenced skill manifests (bidirectional policy per COMPASS-1288 workaround)catalog-info.yamlLocationThis is error-prone and tedious, especially the bidirectional relationship updates across multiple files.
Key constraints to encode in the skill
ai5-marketplace. Do NOT use pack-specific namespaces.dependsOn/dependencyOfandownedBy/ownerOfgenerate actual relations for custom kinds (AiResource, MCPServer).partOf/hasPartdoes NOT work (confirmed Aug 2026).spec.system: default/agentic-plugins(generatespartOfautomatically). Skills do NOT usespec.system.Proposal
Create a Claude Code skill under
.claude/skills/that automates the generation of Compass manifests for new skills. Given a skill path (e.g.,ocp-admin/skills/my-new-skill/), the skill should:SKILL.mdfrontmatter to extract name, description, and dependenciescatalog-info.yamlwith correct namespace (ai5-marketplace), metadata, and relationscatalog-info.yamlLocation to include the new targetdependencyOflistdependencyOfentriesdependencyOfentries (for orchestration skills)Origin
Requested by @dmartinol in PR #133 review feedback.