{"id":49456114,"url":"https://github.com/rizukirr/vibekit","last_synced_at":"2026-04-30T06:02:06.989Z","repository":{"id":353329024,"uuid":"1217129907","full_name":"rizukirr/vibekit","owner":"rizukirr","description":"A token-efficient plugin, built for vibe coding","archived":false,"fork":false,"pushed_at":"2026-04-23T12:45:38.000Z","size":78,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-23T13:28:17.324Z","etag":null,"topics":["claude-code","claude-plugin","codex","codex-plugin","opencode","opencode-plugin","plugin","vibe-coding","vibecoding"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rizukirr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-04-21T15:17:02.000Z","updated_at":"2026-04-23T12:36:34.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/rizukirr/vibekit","commit_stats":null,"previous_names":["rizukirr/vibekit"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/rizukirr/vibekit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rizukirr%2Fvibekit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rizukirr%2Fvibekit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rizukirr%2Fvibekit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rizukirr%2Fvibekit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rizukirr","download_url":"https://codeload.github.com/rizukirr/vibekit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rizukirr%2Fvibekit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32456167,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"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":["claude-code","claude-plugin","codex","codex-plugin","opencode","opencode-plugin","plugin","vibe-coding","vibecoding"],"created_at":"2026-04-30T06:02:05.456Z","updated_at":"2026-04-30T06:02:06.978Z","avatar_url":"https://github.com/rizukirr.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# vibekit\n\nVibekit is a discipline-first vibe-coding plugin for Claude Code, OpenAI Codex, OpenCode, Gemini CLI, and Pi. One command — `/vibe \u003cintent\u003e` — drives a 7-stage pipeline (brainstorm → plan → isolate → exec → verify → review → integrate) that produces a verified, user-approved feature. For autonomy, `/ralph-loop` re-runs `/vibe` across iterations until verify-gate is satisfied, bounded by budgets, and never bypassing sign-off.\n\nToken-efficient per feature: subagent briefs are RTCO-compressed and reports are schema-stripped, while every guardrail — evidence quotes, plans, constraints, degradation warnings — stays verbatim.\n\nGuardrails are non-negotiable. If the plan is wrong or the tests don't pass, the pipeline **halts loudly** — it does not silently commit the wrong thing.\n\n---\n\n## What you get\n\n- **`/vibe \u003cintent\u003e`** — the full 7-stage pipeline in one command.\n- **`/ralph-loop \u003cintent\u003e`** — autonomous bounded re-run of `/vibe` with a blocker classifier and thrashing critic. Same gates, never bypasses sign-off.\n- **Thirteen invocable skills** that also work standalone, plus an auto-loaded priming layer (`using-vibekit`) that carries the trigger map.\n- **Auto-trigger discipline.** A SessionStart hook (Claude Code) and equivalent adapters (Codex native discovery, Gemini `@`-import, opencode plugin, Pi `before_agent_start` extension) load `using-vibekit` into every session so pipeline skills cannot be silently skipped.\n- **Evidence-based verification.** Every \"done\" claim is backed by the exact test output, verbatim.\n- **Halt-and-report discipline.** Real live eval caught two plan defects cleanly; neither reached a commit.\n- **Token-efficient by design.** Compression is applied to agent framing; every guardrail stays verbatim.\n- **Karpathy-aligned discipline.** Four-axis authoring contract: PEG (substance), Karpathy (behavior), Caveman (style), Quad-Adapter (cross-runtime portability).\n- **Parallel-group dispatch** when a plan marks tasks as independent, with honest sequential fallback on runtimes that lack parallel subagents.\n- **Cross-session knowledge.** `memory-dual` captures durable project knowledge — atomic facts, compound documents, and a working notepad — under one file-backed convention.\n\n---\n\n## Install\n\n### Claude Code\n\nFrom a marketplace that hosts this plugin:\n\n```\n/plugin marketplace add rizukirr/vibekit\n/plugin install vibekit@vibekit\n```\n\nFrom a local clone:\n\n```bash\ngit clone \u003cthis repo\u003e\ncd vibekit\n# then add the repo path as a plugin source in Claude Code settings\n```\n\nAfter installation, restart Claude Code. The `/vibe` command and all skills become available.\n\n### OpenCode\n\nTell the agent:\n\n```\nFetch and follow instructions from https://raw.githubusercontent.com/rizukirr/vibekit/refs/heads/main/.opencode/INSTALL.md\n```\n\nThat keeps installation instructions centralized in one file and avoids README drift.\n\n### OpenAI Codex\n\nTell Codex:\n\n```\nFetch and follow instructions from https://raw.githubusercontent.com/rizukirr/vibekit/refs/heads/main/.codex/INSTALL.md\n```\n\nManual installation is also documented in `.codex/INSTALL.md`.\n\n### Gemini CLI\n\nTell Gemini CLI:\n\n```bash\nFetch and follow instructions from https://raw.githubusercontent.com/rizukirr/vibekit/refs/heads/main/INSTALL.gemini.md\n```\n\nDetailed Gemini docs: `INSTALL.gemini.md` and `docs/README.gemini.md`.\n\n### Pi\n\nTell Pi:\n\n```\nFetch and follow instructions from https://raw.githubusercontent.com/rizukirr/vibekit/refs/heads/main/docs/INSTALL.pi.md\n```\n\nManual installation is also documented in `docs/INSTALL.pi.md`. Quick path:\n\n```bash\nnpm install -g @mariozechner/pi-coding-agent\npi install git:github.com/rizukirr/vibekit\n```\n\n\u003e **Heads-up — possible conflict if vibekit is already installed.** Pi reads skills from `~/.agents/skills/` as well as its own package directory. If you previously installed vibekit for another runtime (most commonly Codex, which symlinks `~/.agents/skills/vibekit/`), pi will already see every vibekit skill from that path, and running `pi install …` on top of it produces benign-but-noisy \"skill collision\" warnings on every pi startup (pi's precedence ranks `~/.agents/`-auto above `pi install` packages, so the auto copy wins). **Check first:**\n\u003e\n\u003e ```bash\n\u003e ls ~/.agents/skills/vibekit/ 2\u003e/dev/null\n\u003e ```\n\u003e\n\u003e If that lists 14 skill directories, vibekit is already reachable on pi via `/skill:\u003cname\u003e` — skip `pi install` to avoid collision warnings, or follow the \"Avoiding collisions\" guidance in `docs/INSTALL.pi.md`.\n\n---\n\n## Quick start\n\n```\n/vibe add a toKebabCase utility with tests\n```\n\nWhat happens:\n\n1. **Brainstorm.** The pipeline asks a few clarifying questions (edge cases, scope, testing approach), proposes 2–3 approaches with trade-offs, and writes a short design doc you sign off on.\n2. **Plan.** It produces a TDD-shaped implementation plan — every step is bite-sized, every command is exact, every commit is named.\n3. **Isolate.** A git worktree gets created so your main branch is untouched.\n4. **Execute.** Each task runs in a fresh subagent with a tight brief. On any \"Expected\" mismatch, the agent halts and reports — no improvised fixes.\n5. **Verify.** Every spec requirement is checked against the actual evidence. Three independent verdict passes per requirement.\n6. **Review.** A self-critique surfaces blocks / warns / nits. You see the full diff.\n7. **Integrate.** You pick: merge locally, open a PR, keep the branch, or abandon. Nothing ships without your explicit choice.\n\nYou only talk to the pipeline during brainstorm and at each gate. The rest is autonomous.\n\n---\n\n## The skills\n\nAll 13 invocable skills live in `skills/` and can be used standalone. A 14th skill, `using-vibekit`, is the priming layer — it is auto-loaded on session start by every supported runtime and is not invoked manually.\n\n**Pipeline:**\n\n| Skill | Role |\n|-------|------|\n| `vibe` | Orchestrator for the 7-stage pipeline. |\n| `brainstorm-lean` | Disciplined Socratic design gate with a HARD-GATE before implementation; pushback turn challenges framing before approaches are proposed. |\n| `plan-write` | TDD-shaped, bite-sized implementation plan with exact commands; mandatory `→ verify:` clause per task; optional `parallel-group` markers. |\n| `brief-compiler` | Turns verbose intents into tight RTCO subagent briefs with surgical-change constraints baked in. |\n| `exec-dispatch` | One fresh subagent per task, two-stage review, parallel-group fan-out where the runtime supports it. |\n| `report-filter` | Validates subagent returns against the declared schema; rejects drift. |\n| `verify-gate` | Evidence-based completion check, three independent verdict dispatches per requirement, plus a fail-closed surgical-diff pass. |\n| `review-pack` | Reflexion-style self-critique with simplicity + surgical-diff passes, then user sign-off on the diff. |\n| `finish-branch` | Integration endpoint — merge / PR / keep / abandon, no auto-actions. |\n| `isolate` | Dedicated worktree or branch per run; rollback is cheap. |\n\n**Cross-cutting:**\n\n| Skill | Role |\n|-------|------|\n| `memory-dual` | Durable project knowledge under `.vibekit/memory/` — atomic facts and compound documents in one storage convention, plus a working notepad. Keyword + tag + type search; `[[key]]` cross-links; audit pass. |\n| `vibekit-doctor` | Diagnostic health check — skill files, runtime registrations, `.vibekit/` health, `docs/` subdirs, authoring contracts. Read-only by default; `--fix` for safe repairs. |\n| `ralph-loop` | Autonomous-driver peer to `vibe` — bounded persistence loop with blocker classifier and thrashing critic. Same gates, same sign-off, no shortcuts. Cross-runtime with degraded checkpoint mode where native loops are absent. |\n\n---\n\n## The guardrails\n\nNon-negotiable. None of them can be bypassed by a flag.\n\n- No implementation without an approved spec.\n- No dispatch without a plan.\n- No commit without the task's exact test command running and passing.\n- No \"done\" claim without evidence quoted verbatim.\n- No merge / PR / push without explicit user sign-off.\n- On any \"Expected\" mismatch: **halt and report**, never improvise a fix.\n\nThis is what keeps vibe-coding from turning into vibe-disasters.\n\n---\n\n## Token budget\n\nMeasured in live eval on a small feature (toKebabCase utility, 2-task plan, 1 verification pass):\n\n- Total subagent tokens: ~118k across 4 dispatches.\n- Wall clock: minutes per dispatch; dominated by test-runner I/O.\n- Compression concentrated in agent briefs + reports; guardrails stay full prose.\n\nLarge features scale linearly with task count. Verification cost scales with requirement count × 3 (self-consistency). For large specs the `verify-gate` skill offers a critical-only mode.\n\n---\n\n## Philosophy\n\n- **Form compresses, guardrails don't.** Agent framing is fragmented; evidence and constraints are verbatim.\n- **Halt is a feature.** The pipeline would rather stop and surface a defect than improvise.\n- **One thing per run.** No mega-runs. One feature, one spec, one plan, one integration choice.\n- **Files over summaries.** Stages hand off via committed files, never prose summaries.\n- **Cross-runtime portability is a contract, not a hope.** Every runtime-coupled skill declares its required capabilities and ships a documented fallback for runtimes that lack them — with a verbatim degradation warning, never a silent skip.\n\n---\n\n## Evals\n\nThree evals are on record under `docs/evals/`:\n\n- `2026-04-21-static-eval-run-01.md` — initial static walkthrough; found 3 blocking defects, 7 warns, 4 nits.\n- `2026-04-21-static-eval-run-02.md` — post-fix re-walk; all blockers resolved, no regressions.\n- `2026-04-21-live-eval-run-03.md` — live dispatch on a throwaway repo; the halt-and-report discipline was proven twice under real subagents.\n\nRe-running the evals after substantive skill changes is recommended. A packaged harness will come in a later release.\n\n---\n\n## License\n\nMIT.\n\n## Acknowledgements\n\nThanks to all plugins that inspired this one, especially:\n\n- [superpowers](https://github.com/obra/superpowers)\n- [omc](https://github.com/Yeachan-Heo/oh-my-claudecode)\n- [andrej-karpathy-skills](https://github.com/forrestchang/andrej-karpathy-skills)\n- [caveman](https://github.com/JuliusBrussee/caveman)\n- [Prompt-Engineering-Guide](https://github.com/dair-ai/Prompt-Engineering-Guide)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frizukirr%2Fvibekit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frizukirr%2Fvibekit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frizukirr%2Fvibekit/lists"}