{
  "markdown": "# git-release\n\nPrepares a local git project for public release on GitHub in one pass: adds an MIT license if missing, verifies README and `.gitignore`, creates a GitHub remote if one doesn't exist, applies branch protection requiring pull requests, and cuts a tagged release.\n\n## Highlights\n\n- **Idempotent** — every step checks current state first and reports \"already exists, skipping\" rather than clobbering existing files or config\n- **Doesn't overreach on docs** — if README.md is missing or a stub, it warns and points at `/make-readme` rather than generating one itself\n- **Sane branch protection defaults** — requires 1 approving PR review, dismisses stale reviews on new pushes, blocks force-push and branch deletion, while leaving admin bypass on so the owner can still push directly\n- **Version-aware releases** — suggests `v1.0.0` for a first release, or the next patch/minor/major based on the latest existing tag\n- **Full summary table** — reports exactly what was done vs. skipped at each of the 9 steps\n- **Defers, doesn't duplicate** — for both docs and its own help mechanism, this skill only checks and warns; generating either is `/make-readme`'s job\n\n## Usage\n\nInvoke `/git-release` (or say \"release this,\" \"make this public,\" \"set up GitHub for this project\") from inside a git repository you want to prepare for public release. Run `/git-release --help` to print what it does, what it needs, and usage without making any changes. Run `/git-release --marketplace` on a skill/plugin project to add or update its listing in a marketplace.json (asks for its location the first time, then remembers it) — version-prefixes the description, points its `source` at this project's public repo, and updates the marketplace's README.md entry, linking to `help.md`/`CHANGELOG.md` if present. It also adds/updates a \"from the marketplace\" section at the top of this project's own README.md Installation section with the marketplace's registration and install commands. Otherwise the full workflow walks through, in order:\n\n1. Confirms the current directory is a git repo and identifies the default branch\n2. Adds an MIT `LICENSE` if one doesn't exist\n3. Checks `README.md` exists and has real content (warns and defers to `/make-readme` if not)\n4. For skill/plugin projects, checks for a `--help`/`:help` mechanism backed by `help.md` (warns and defers to `/make-readme` if missing — this skill checks but never creates it)\n5. Checks `.gitignore` exists (warns if missing)\n6. Creates a GitHub remote via `gh repo create --public --source=. --push` if none exists, or confirms the existing one is up to date\n7. Applies branch protection (PR required, 1 approval, stale reviews dismissed, force-push and deletion blocked) via the GitHub API\n8. Creates a tagged GitHub release with `gh release create --generate-notes --latest`\n9. Prints a summary table of what was done or skipped at each step\n\nThis skill's own `--help` follows the same convention it checks other skills for: `SKILL.md` has a short `## Flags` section pointing at a `help.md` file in the same folder, which is read and displayed verbatim. `/make-readme` is what actually generates this pattern for a project that's missing it — see that skill's docs for details.\n\n## Installation\n\n### From the mackayi marketplace (recommended)\n\n```\n/plugin marketplace add keithmackay/mackayi\n/plugin install git-release@mackayi\n```\n\n### Claude Code\n\n```bash\ncp -r /path/to/git-release/ ~/.claude/skills/git-release/\n```\n\nOr symlink:\n```bash\nln -s /path/to/git-release/ ~/.claude/skills/git-release\n```\n\nThen invoke with: `/git-release`\n\n### Codex\n\nPlace the plugin directory where Codex can find it, then add an entry to your marketplace:\n\n**`~/.agents/plugins/marketplace.json`** (create if absent):\n```json\n{\n  \"name\": \"personal\",\n  \"interface\": { \"displayName\": \"Personal Plugins\" },\n  \"plugins\": [\n    {\n      \"name\": \"git-release\",\n      \"source\": { \"source\": \"local\", \"path\": \"/path/to/git-release/\" },\n      \"policy\": { \"installation\": \"AVAILABLE\", \"authentication\": \"ON_INSTALL\" },\n      \"category\": \"Productivity\"\n    }\n  ]\n}\n```\n\n### Antigravity\n\n**Global install** (all workspaces):\n```bash\ncp -r /path/to/git-release/ ~/.gemini/antigravity/skills/git-release/\n```\n\n**Workspace install** (current project only):\n```bash\ncp -r /path/to/git-release/ .agents/skills/git-release/\n```\n\nThe root `SKILL.md` has no Claude Code-specific metadata, so it is used as-is — no separate Antigravity variant is needed.\n\nSkills are auto-discovered. You can also mention the skill by name to force activation.\n\n### Gemini CLI\n\nGemini CLI installs extensions directly from GitHub:\n\n```bash\ngemini extensions install https://github.com/keithmackay/git-release\n```\n\nTo update:\n```bash\ngemini extensions update git-release\n```\n\nThe skill is auto-discovered from `GEMINI.md` after installation.\n\n## Compatibility\n\n| Feature | Claude Code | Codex | Antigravity | Gemini CLI |\n|---------|:-----------:|:-----:|:-----------:|:----------:|\n| Core skill | ✅ | ✅ | ✅ | ✅ |\n\nNo Claude Code-specific frontmatter (`metadata`, `retrieval`, `tags`), sub-documents, or subagent dispatch is used by this skill, so there are no platform gaps to document — it ports cleanly to all four platforms.\n\nLegend: ✅ Supported · ❌ Not supported\n\n## References\n\n- **Claude Code Skills:** https://code.claude.com/docs/en/skills\n- **Claude Code Complete Guide (PDF):** https://resources.anthropic.com/hubfs/The-Complete-Guide-to-Building-Skill-for-Claude.pdf\n- **Codex Plugins:** https://developers.openai.com/codex/plugins/build\n- **Antigravity Skills:** https://antigravity.google/docs/skills\n- **Gemini CLI Extensions:** https://github.com/google-gemini/gemini-cli/blob/main/docs/extension.md\n- **Agent Skills open standard:** https://agentskills.io/home\n\n## Contributing\n\nThis is a personal skill, but improvements are welcome — fork, branch, and open a pull request.\n\n## Changelog\n\nSee [CHANGELOG.md](CHANGELOG.md) for release history.\n\n## License\n\n[MIT](LICENSE)\n",
  "bytes": 5991,
  "sha": "9375bee1e4a36f1eb7c7e109ac500906a861b84f76acbd58cfe0386602c897ce",
  "repo_slug": "keithmackay/git-release",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_keithmackay_git_release_b7ff3c06/readme"
}