{"id":50331782,"url":"https://github.com/rupurt/keel-skill","last_synced_at":"2026-05-29T10:01:40.517Z","repository":{"id":342434204,"uuid":"1173963751","full_name":"rupurt/keel-skill","owner":"rupurt","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-05T23:57:04.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-06T03:36:54.333Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rupurt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-03-05T23:43:48.000Z","updated_at":"2026-03-05T23:57:07.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/rupurt/keel-skill","commit_stats":null,"previous_names":["rupurt/keel-skill"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/rupurt/keel-skill","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupurt%2Fkeel-skill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupurt%2Fkeel-skill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupurt%2Fkeel-skill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupurt%2Fkeel-skill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rupurt","download_url":"https://codeload.github.com/rupurt/keel-skill/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupurt%2Fkeel-skill/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33646428,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-29T02:00:06.066Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-29T10:01:39.657Z","updated_at":"2026-05-29T10:01:40.510Z","avatar_url":"https://github.com/rupurt.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# keel-skill\n\n`keel-skill` packages the Keel workflow as:\n\n- A reusable agent skill: [`skills/keel-workflow`](skills/keel-workflow)\n- A Claude Code plugin: [`.claude-plugin/plugin.json`](.claude-plugin/plugin.json)\n- A Gemini CLI extension: [`gemini-extension.json`](gemini-extension.json)\n- Shared harness context files: [`AGENTS.md`](AGENTS.md), [`CLAUDE.md`](CLAUDE.md), and [`GEMINI.md`](GEMINI.md)\n\nThe source workflow came from `~/workspace/rupurt/keel/AGENTS.md` and is now split into:\n\n- A shared harness-level workflow file in [`AGENTS.md`](AGENTS.md)\n- A concise reusable skill in [`skills/keel-workflow/SKILL.md`](skills/keel-workflow/SKILL.md)\n- Namespaced plugin commands in [`commands/keel`](commands/keel)\n\n## What You Get\n\n- `keel-workflow` skill for planning, implementation, and research tasks in Keel-managed repositories\n- `/keel:implement`, `/keel:plan`, and `/keel:research` commands for Claude Code and Gemini CLI\n- Importable `AGENTS.md` instructions for repos that want shared harness context instead of a global install\n\n## Install\n\n### Codex\n\nFrom the repo root, install the skill directly into your Codex skills directory:\n\n```bash\nmkdir -p ~/.codex/skills\nln -s \"$(pwd)/skills/keel-workflow\" ~/.codex/skills/keel-workflow\n```\n\nIf you want workspace-scoped installation for tools that support the generic agent-skills alias, symlink the same folder into `.agents/skills/keel-workflow` inside the target repository instead.\n\n### Claude Code\n\nFrom the parent directory of this repo, create a small local marketplace that points at this plugin:\n\n```bash\nmkdir -p ../dev-marketplace/.claude-plugin\ncat \u003e ../dev-marketplace/.claude-plugin/marketplace.json \u003c\u003c'EOF'\n{\n  \"name\": \"local-keel\",\n  \"plugins\": [\n    {\n      \"name\": \"keel-skill\",\n      \"source\": \"../keel-skill\",\n      \"description\": \"Keel workflow plugin\"\n    }\n  ]\n}\nEOF\n```\n\nStart Claude Code from the parent directory, add the marketplace, and install the plugin:\n\n```text\n/plugin marketplace add ./dev-marketplace\n/plugin install keel-skill@local-keel\n```\n\nFor published installs, point `/plugin install` at the marketplace entry that serves this repo.\n\n### Gemini CLI\n\nFrom the repo root, install the full extension:\n\n```bash\ngemini extensions link .\n```\n\nYou can also install from a Git repository:\n\n```bash\ngemini extensions install https://github.com/your-org/keel-skill\n```\n\nIf you only want the reusable skill instead of the full extension:\n\n```bash\ngemini skills install \"$(pwd)/skills/keel-workflow\"\n```\n\n## Usage\n\n### Codex\n\nThe skill auto-triggers when the task is clearly about Keel workflow operations such as planning a voyage, implementing a story, or running bearing research. You can also mention the skill explicitly:\n\n```text\nUse the keel-workflow skill to plan the next voyage.\nUse the keel-workflow skill to implement the next story with TDD.\nUse the keel-workflow skill to research this ambiguous feature area.\n```\n\n### Claude Code\n\nAfter installation, use the bundled namespaced commands:\n\n```text\n/keel:implement STORY-123\n/keel:plan \"Plan the auth hardening voyage\"\n/keel:research \"Explore API versioning strategy\"\n```\n\nThe bundled `keel-workflow` skill is also available for automatic invocation when the task matches.\n\n### Gemini CLI\n\nAfter linking or installing the extension, use the same namespaced commands:\n\n```text\n/keel:implement STORY-123\n/keel:plan \"Plan the auth hardening voyage\"\n/keel:research \"Explore API versioning strategy\"\n```\n\nGemini also loads [`GEMINI.md`](GEMINI.md) at session start and can invoke the bundled `keel-workflow` skill automatically.\n\n## Repo Layout\n\n```text\n.\n├── AGENTS.md\n├── CLAUDE.md\n├── GEMINI.md\n├── .claude-plugin/plugin.json\n├── gemini-extension.json\n├── commands/keel/\n└── skills/keel-workflow/\n```\n\n## Official References\n\n- OpenAI Codex agent skills: https://developers.openai.com/codex/guides/skills\n- Claude Code plugins: https://docs.claude.com/en/docs/claude-code/plugins\n- Gemini CLI skills: https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md\n- Gemini CLI extensions: https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupurt%2Fkeel-skill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frupurt%2Fkeel-skill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupurt%2Fkeel-skill/lists"}