| You are adding | Put it in |
|---|---|
| a Claude Code plugin | claude/<name>/, with .claude-plugin/plugin.json |
| a plugin for Codex, Copilot, Gemini CLI or Antigravity | that host’s folder, whose AGENTS.md states the format |
| a skill any host can read | skills/<name>/SKILL.md |
| a team’s practice | a skill in the team’s plugin or in skills/, named in the team’s section of teams/README.md |
| a package for a machine | packages/miadi/deb/<package>/ |
| a specification | rispecs/<subject>/ (RISE) |
| a research packet | foundations/<topic>/ |
A plugin that works on episodes links the one copy of skills/chronicle-episode instead of copying it. miadi-chronicle-episode-kit does this with a symlink, so every host reads the same text.
From claude/AGENTS.md:
${CLAUDE_PLUGIN_ROOT} for every path a hook or a command uses.MIADI_CHRONICLE_MW_URL.A hook enforces what guidance could not: the mkdir refusal exists because manifest-less episodes kept growing while the rule was written down.
plugin.json and in its entry in .claude-plugin/marketplace.json together..mcp.json moves its pins with scripts/kit-mcp-upgrade.sh --ref owner/repo#n. It bumps the plugin, proves the servers connect, commits and pushes. The miadi-factory-delivery sweep in jgwill/Miadi runs it after a publish.README.md and llms.txt in the same commit.git add ., with an owner/repo#n reference in the message. An agent commits and pushes its own work (AGENTS.md).