38 engineering discipline skills for Claude Code & OpenAI Codex — research, quality gates, testing, deployment, gap analysis, and more. Born from real pain, not theory.
Shell
162
29 commits
updated Oct 6, 2026
33 engineering discipline skills for Claude Code, OpenAI Codex & Gemini CLI + a CLI for CI/CD enforcement. Extracted from real-world multi-agent system development: not theoretical best practices, but patterns that survived 3 weeks of intensive production development with 205+ test files, 11 agents, and 50+ session observations.
"Vibe coding" meets engineering rigor. Every skill here exists because skipping it caused real pain, and every skill was re-checked in v2.0 against what current models and agent harnesses now handle on their own.
/plugin marketplace add ash1794/vibe-engineering
/plugin install vibe-engineering@vibe-plugins
Your agent picks the right skill from its description: research before design, quality gates before shipping, evidence before claiming "done."
vibe-slop-filter counts the tells that make prose read as machine-written (keyword saturation, stacked tricolons, "not X, it's Y", bolded thesis lines, signpost phrases) and fixes the reflexive ones without sanding out real voice.vibe-devil-advocate-review now reviews any artifact as a named senior expert in its field: code, specs, proposals, policies, curricula. It searches assuming defects exist, reports only those it can evidence, names genuine strengths in a line, and checks its own review for manufactured findings before sending.Earlier releases:
vibe-workstream-orchestration, vibe-publication-leak-guard, and vibe-flake-root-cause from a multi-agent production build, plus panel mode, deploy provenance, wind-down handovers, and performance budgets in existing skills.Full history: CHANGELOG · Releases
A skill collection in the open Agent Skills format with 33 skills that enforce engineering discipline across any project, plus a lightweight CLI (vibe-cli) for CI/CD pipelines and automation:
Modern models and harnesses already handle some things well, and a skill that duplicates them only adds noise. v2.0 removed skills for context-window management (harnesses compact automatically), output formatting (models format well by default), always-on skill bootstrapping (skills trigger from their descriptions), and private task queues (use your issue tracker). See CHANGELOG for the full list and migration.
From inside a Claude Code session:
# 1. Add the marketplace (one-time)
/plugin marketplace add ash1794/vibe-engineering
# 2. Install the plugin
/plugin install vibe-engineering@vibe-plugins
Later, pull updates with /plugin marketplace update vibe-plugins.
Local development (unpackaged, for testing plugin changes):
git clone https://github.com/ash1794/vibe-engineering.git
claude --plugin-dir ./vibe-engineering/plugins/vibe-engineering
All 33 skills are now available in every Claude Code session.
Both read skills from .agents/skills/, the cross-tool path in the Agent Skills standard, so one set of symlinks covers both:
# Clone once, symlink many times
git clone https://github.com/ash1794/vibe-engineering.git ~/src/vibe-engineering
# User-wide (available in all projects)
mkdir -p ~/.agents/skills
ln -s ~/src/vibe-engineering/plugins/vibe-engineering/skills/* ~/.agents/skills/
# Or per-project
mkdir -p .agents/skills
ln -s ~/src/vibe-engineering/plugins/vibe-engineering/skills/* .agents/skills/
Gemini CLI also accepts ~/.gemini/skills/ and .gemini/skills/. Run /skills in Gemini CLI to confirm the skills were discovered.
Upgrading from 1.x with symlinks? Skill folders were renamed to match their
name(e.g.quality-loop/→vibe-quality-loop/) and 9 skills were retired, so remove your old symlinks and re-run theln -scommand above.
After installation, skills activate automatically when a task matches their description.
Find the right skill:
/vibe-engineering:vibe-help # Claude Code
$vibe-help # Codex
Invoke any skill directly:
# Claude Code
/vibe-engineering:vibe-quality-loop
/vibe-engineering:vibe-research-before-design
# Codex
$vibe-quality-loop
$vibe-research-before-design
In Gemini CLI, skills are activated automatically from their descriptions, or you can ask for one by name.
vibe-cliThe vibe-cli CLI wraps critical skills into CI/CD-friendly commands with proper exit codes and JSON output. No dependencies — pure bash.
# Make it available system-wide (optional)
ln -s $(pwd)/scripts/vibe-cli /usr/local/bin/vibe-cli
# Or run directly from the repo
./scripts/vibe-cli help
vibe-cli pre-commit # Scan staged changes for secrets, debug code, disabled tests
vibe-cli coverage # Run test coverage and report against tier targets
vibe-cli spec-drift # Detect spec-code drift from staged changes
vibe-cli decisions # Extract decisions from staged diff
vibe-cli validate # Validate skill files and manifests
vibe-cli hook install # Install as git pre-commit hook
vibe-cli hook uninstall # Remove git pre-commit hook
| Code | Meaning |
|---|---|
0 | All checks passed |
1 | Blocking issues (CI should fail) |
2 | Warnings only (non-blocking) |
Every command supports --json for machine-readable output:
vibe-cli pre-commit --json
# {"status":"fail","blockers":1,"warnings":3,"findings":[...]}
vibe-cli coverage --json --spec docs/spec.md
# {"status":"pass","tool":"pytest","line_coverage":85,"spec_to_test":{"total":12,"covered":8}}
vibe-cli spec-drift --json --spec docs/spec.md
# {"status":"drift_detected","drift_items":3,"spec":"docs/spec.md","items":[...]}
vibe-cli decisions --json
# {"status":"decisions_found","count":4,"files_changed":7,"decisions":[...]}
GitHub Actions:
- name: Vibe pre-commit check
run: ./scripts/vibe-cli pre-commit --json
- name: Coverage check
run: ./scripts/vibe-cli coverage --spec docs/spec.md
GitLab CI:
vibe-checks:
script:
- ./scripts/vibe-cli pre-commit
- ./scripts/vibe-cli coverage --spec docs/spec.md
Pre-commit hook (automatic):
# Install once — blocks commits with secrets, debug code, etc.
./scripts/vibe-cli hook install
| Variable | Purpose |
|---|---|
VIBE_OUTPUT=json | Same as --json |
VIBE_SPEC=<path> | Default spec path for spec-drift/coverage |
VIBE_TEST_DIR=<path> | Default test directory |
NO_COLOR=1 | Disable colored output |
Four skills form a connected workflow that keeps spec, tests, and code in sync:
Code changes
↓
vibe-decision-journal ──→ Extract decisions from diffs
↓
vibe-spec-sync ──→ Update spec to reflect approved decisions
↓
vibe-adversarial-test-generation ──→ Generate spec-driven tests with req:ID traceability
↓
vibe-coverage-enforcer ──→ Verify 3 dimensions (line + spec-to-test + spec-to-code)
↓
vibe-spec-sync --audit ──→ Final verification: no remaining gaps
The CLI exposes the critical parts for automation:
vibe-cli decisions → extract decisions from staged changesvibe-cli spec-drift → detect spec-code driftvibe-cli coverage → verify all coverage dimensionsvibe-cli pre-commit → block commits with secrets/debug code| Skill | Trigger | Purpose |
|---|---|---|
vibe-help | "What skill should I use?" | Skill router and full catalog |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-research-before-design | Before any new feature/architecture/tech choice | Research real projects, papers, and documented failures, with verified sources |
vibe-decision-journal | After any architectural choice or before committing | Automatic decision extraction from diffs + ADR recording |
vibe-devil-advocate-review | Before shipping recommendations, large changes, or multi-agent releases; any "tear this apart" request | 5-dimension challenge from a named senior expert's standards, by a fresh context or different model; only evidenced findings survive; panel mode runs parallel lenses with a verification stage |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-acceptance-gate | After completing a task with criteria | PASS/FAIL validation against criteria, with evidence |
vibe-quality-loop | After any non-trivial implementation | Review→Test→Fix loop until clean, using the repo's own checks |
vibe-anti-rationalization-check | Before claiming done; when a test is "in the way" | Catches reward hacking: test tampering, special-casing, unverified claims |
vibe-spec-sync | Before committing, or when implementation is claimed complete | Spec drift detection + approved write-back; --audit for full spec-vs-code check |
vibe-doc-quality-gate | After editing any technical doc | Fast 6-point document quality check |
vibe-requirements-validator | When reviewing PRD/user stories | SMART criteria validation |
vibe-coverage-enforcer | Before claiming code complete | 3-dimension coverage: line + spec-to-test + spec-to-code |
vibe-slop-filter | Before shipping prose a person will read (docs, release notes, PR descriptions, posts) | Counts AI-writing tells first, then keeps only the devices doing real work |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-reflect-and-compound | After feedback, a non-trivial bug, or a repeated pattern | Learnings, bug entries, and patterns written to the memory file your agent loads (CLAUDE.md / AGENTS.md / GEMINI.md) |
vibe-handover-doc | Handing off, switching tools, or hitting a usage limit | Current-state-first handover with resume prompt; wind-down mode for interrupted multi-agent work |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-parallel-task-decomposition | Large task with independent subtasks | DAG analysis and dispatch plan for the harness's native subagents |
vibe-workstream-orchestration | Multi-phase project with 3+ agents at once | Orchestrator-only main thread, long-lived file-owning workstreams, route-don't-spawn, stale-checkout and shared-machine hygiene |
vibe-cherry-pick-integration | After parallel agents complete | Safe sequential integration of branches/worktrees |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-golden-file-testing | Snapshot/golden test implementation | Temporal normalization, update commands |
vibe-scenario-matrix | Planning test coverage | Behavioral scenario acceptance matrix |
vibe-concurrent-test-safety | Tests with shared mutable state | Race condition and cleanup auditing |
vibe-adversarial-test-generation | After happy-path tests written | Edge case + spec-driven test generation with req:ID traceability |
vibe-fuzz-parser-inputs | Implementing any parser | Fuzz test scaffolding and corpus |
vibe-flake-root-cause | "Passed on rerun", CI-only or intermittent failures | Force the controlling variable, reproduce at a stated rate, fix the cause, prove it with counts |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-pre-commit-audit | Before creating a commit | Runs hooks/secret scanners first, then checks for secrets, debug code, TODOs |
vibe-publication-leak-guard | Publishing agent-drafted or privately sourced content | Two-tier scan of built output, WIP visible in preview and absent in production, human-owned approval ledger |
vibe-safe-deploy | Before any deployment | Pre-flight checks, atomic deploy, SHA provenance check, rollback |
vibe-rollback-plan | Before risky changes | Documented rollback runbook |
vibe-service-health-dashboard | Checking running services | Multi-service health monitoring |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-gap-analysis | Before production launch or after major refactor | 17-dimension production readiness audit with parallel agents |
vibe-gap-closure-loop | 10+ findings, bugs, or audit items | Prioritized waves → parallel fix streams → test gate → re-audit |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-scope-guard | During implementation | Scope creep and over-engineering detection |
vibe-production-mindset | Before declaring a production feature done | Production hardening checklist scaled to real stakes, incl. performance budgets that are never loosened to pass |
vibe-iteration-review | End of development iteration | Quality grading and trend analysis |
AI coding agents are far more capable than they were a year ago, but some failure modes persist: satisfying the test instead of the goal, over-building, claiming "done" without evidence, and agreeing with their own first idea. vibe-engineering targets exactly those.
| Without | With vibe-engineering |
|---|---|
| "Let me just build it" | Research existing solutions and their failures first (vibe-research-before-design) |
| "Tests pass, ship it" | Check coverage standards are met (vibe-coverage-enforcer) |
| "I'll remember the decision" | Extract it automatically from diffs (vibe-decision-journal) |
| "Good enough" | Loop until clean, with evidence (vibe-quality-loop) |
| "Spec is probably still accurate" | Detect drift and sync back (vibe-spec-sync) |
| Test loosened until it passed | Caught and disclosed (vibe-anti-rationalization-check) |
| Same bug investigated twice | Root cause saved to the agent's memory file (vibe-reflect-and-compound) |
| Self-review that agrees with itself | Review by a fresh context or another model (vibe-devil-advocate-review) |
| Release notes that read like a chatbot wrote them | Tells counted and cut (vibe-slop-filter) |
references/platform-tools.md)The repo is a Claude Code marketplace (vibe-plugins) that ships one plugin (vibe-engineering), whose skills/ directory is also a standard Agent Skills collection for Codex and Gemini CLI:
.claude-plugin/marketplace.json at the repo root catalogs the plugin; the plugin itself lives in plugins/vibe-engineering/ with its own .claude-plugin/plugin.json.agents/skills/ symlinks into the plugin's skills/ directory; both discover skills from this standard pathvibe-engineering/ # repo root = marketplace root
├── .claude-plugin/
│ └── marketplace.json # marketplace: "vibe-plugins"
├── plugins/
│ └── vibe-engineering/ # plugin root
│ ├── .claude-plugin/plugin.json # plugin: "vibe-engineering"
│ └── skills/ # 33 skill definitions
│ ├── vibe-help/SKILL.md
│ ├── vibe-quality-loop/SKILL.md
│ ├── vibe-spec-sync/SKILL.md
│ └── ... (folder name == skill name)
├── .agents/
│ └── skills → ../plugins/vibe-engineering/skills # Codex + Gemini CLI discovery
├── AGENTS.md # Codex / cross-tool project instructions
├── CLAUDE.md # Claude Code project instructions (repo invariants)
├── GEMINI.md # Gemini CLI project instructions (imports AGENTS.md)
├── references/
│ └── platform-tools.md # Capability mapping across Claude Code, Codex, Gemini CLI
├── scripts/
│ ├── vibe-cli # CLI for CI/CD enforcement
│ └── validate-skills.sh # Skill file validator
├── CHANGELOG.md
└── README.md
Each skill has:
name (matching its folder) and descriptionFound a pattern that keeps saving you? Turn it into a skill:
plugins/vibe-engineering/skills/vibe-your-skill-name/SKILL.md (the folder name must equal name)references/platform-tools.mdvibe-helpbash scripts/validate-skills.sh, then submit a PRBefore adding a skill, ask: would a current frontier model do this well without being told? If yes, it isn't a skill.
---
name: vibe-your-skill-name
description: Performs [action] for [context]. Use when [trigger condition].
user-invocable: true
---
# vibe-your-skill-name
[One paragraph explaining the problem this skill solves]
## When to Use This Skill
- [Trigger 1]
- [Trigger 2]
## When NOT to Use This Skill
- [Anti-trigger 1]
- [Anti-trigger 2]
## Steps
1. [Step 1]
2. [Step 2]
## Output Format
[Template for structured output]
These skills were extracted from building an 11-agent personal assistant system with Go backend, React Native frontend, and 205+ test files.
The numbers:
MIT — Use it, fork it, make it yours.
38 engineering discipline skills for Claude Code & OpenAI Codex — research, quality gates, testing, deployment, gap analysis, and more. Born from real pain, not theory.
Shell
162
29 commits
updated Oct 6, 2026
33 engineering discipline skills for Claude Code, OpenAI Codex & Gemini CLI + a CLI for CI/CD enforcement. Extracted from real-world multi-agent system development: not theoretical best practices, but patterns that survived 3 weeks of intensive production development with 205+ test files, 11 agents, and 50+ session observations.
"Vibe coding" meets engineering rigor. Every skill here exists because skipping it caused real pain, and every skill was re-checked in v2.0 against what current models and agent harnesses now handle on their own.
/plugin marketplace add ash1794/vibe-engineering
/plugin install vibe-engineering@vibe-plugins
Your agent picks the right skill from its description: research before design, quality gates before shipping, evidence before claiming "done."
vibe-slop-filter counts the tells that make prose read as machine-written (keyword saturation, stacked tricolons, "not X, it's Y", bolded thesis lines, signpost phrases) and fixes the reflexive ones without sanding out real voice.vibe-devil-advocate-review now reviews any artifact as a named senior expert in its field: code, specs, proposals, policies, curricula. It searches assuming defects exist, reports only those it can evidence, names genuine strengths in a line, and checks its own review for manufactured findings before sending.Earlier releases:
vibe-workstream-orchestration, vibe-publication-leak-guard, and vibe-flake-root-cause from a multi-agent production build, plus panel mode, deploy provenance, wind-down handovers, and performance budgets in existing skills.Full history: CHANGELOG · Releases
A skill collection in the open Agent Skills format with 33 skills that enforce engineering discipline across any project, plus a lightweight CLI (vibe-cli) for CI/CD pipelines and automation:
Modern models and harnesses already handle some things well, and a skill that duplicates them only adds noise. v2.0 removed skills for context-window management (harnesses compact automatically), output formatting (models format well by default), always-on skill bootstrapping (skills trigger from their descriptions), and private task queues (use your issue tracker). See CHANGELOG for the full list and migration.
From inside a Claude Code session:
# 1. Add the marketplace (one-time)
/plugin marketplace add ash1794/vibe-engineering
# 2. Install the plugin
/plugin install vibe-engineering@vibe-plugins
Later, pull updates with /plugin marketplace update vibe-plugins.
Local development (unpackaged, for testing plugin changes):
git clone https://github.com/ash1794/vibe-engineering.git
claude --plugin-dir ./vibe-engineering/plugins/vibe-engineering
All 33 skills are now available in every Claude Code session.
Both read skills from .agents/skills/, the cross-tool path in the Agent Skills standard, so one set of symlinks covers both:
# Clone once, symlink many times
git clone https://github.com/ash1794/vibe-engineering.git ~/src/vibe-engineering
# User-wide (available in all projects)
mkdir -p ~/.agents/skills
ln -s ~/src/vibe-engineering/plugins/vibe-engineering/skills/* ~/.agents/skills/
# Or per-project
mkdir -p .agents/skills
ln -s ~/src/vibe-engineering/plugins/vibe-engineering/skills/* .agents/skills/
Gemini CLI also accepts ~/.gemini/skills/ and .gemini/skills/. Run /skills in Gemini CLI to confirm the skills were discovered.
Upgrading from 1.x with symlinks? Skill folders were renamed to match their
name(e.g.quality-loop/→vibe-quality-loop/) and 9 skills were retired, so remove your old symlinks and re-run theln -scommand above.
After installation, skills activate automatically when a task matches their description.
Find the right skill:
/vibe-engineering:vibe-help # Claude Code
$vibe-help # Codex
Invoke any skill directly:
# Claude Code
/vibe-engineering:vibe-quality-loop
/vibe-engineering:vibe-research-before-design
# Codex
$vibe-quality-loop
$vibe-research-before-design
In Gemini CLI, skills are activated automatically from their descriptions, or you can ask for one by name.
vibe-cliThe vibe-cli CLI wraps critical skills into CI/CD-friendly commands with proper exit codes and JSON output. No dependencies — pure bash.
# Make it available system-wide (optional)
ln -s $(pwd)/scripts/vibe-cli /usr/local/bin/vibe-cli
# Or run directly from the repo
./scripts/vibe-cli help
vibe-cli pre-commit # Scan staged changes for secrets, debug code, disabled tests
vibe-cli coverage # Run test coverage and report against tier targets
vibe-cli spec-drift # Detect spec-code drift from staged changes
vibe-cli decisions # Extract decisions from staged diff
vibe-cli validate # Validate skill files and manifests
vibe-cli hook install # Install as git pre-commit hook
vibe-cli hook uninstall # Remove git pre-commit hook
| Code | Meaning |
|---|---|
0 | All checks passed |
1 | Blocking issues (CI should fail) |
2 | Warnings only (non-blocking) |
Every command supports --json for machine-readable output:
vibe-cli pre-commit --json
# {"status":"fail","blockers":1,"warnings":3,"findings":[...]}
vibe-cli coverage --json --spec docs/spec.md
# {"status":"pass","tool":"pytest","line_coverage":85,"spec_to_test":{"total":12,"covered":8}}
vibe-cli spec-drift --json --spec docs/spec.md
# {"status":"drift_detected","drift_items":3,"spec":"docs/spec.md","items":[...]}
vibe-cli decisions --json
# {"status":"decisions_found","count":4,"files_changed":7,"decisions":[...]}
GitHub Actions:
- name: Vibe pre-commit check
run: ./scripts/vibe-cli pre-commit --json
- name: Coverage check
run: ./scripts/vibe-cli coverage --spec docs/spec.md
GitLab CI:
vibe-checks:
script:
- ./scripts/vibe-cli pre-commit
- ./scripts/vibe-cli coverage --spec docs/spec.md
Pre-commit hook (automatic):
# Install once — blocks commits with secrets, debug code, etc.
./scripts/vibe-cli hook install
| Variable | Purpose |
|---|---|
VIBE_OUTPUT=json | Same as --json |
VIBE_SPEC=<path> | Default spec path for spec-drift/coverage |
VIBE_TEST_DIR=<path> | Default test directory |
NO_COLOR=1 | Disable colored output |
Four skills form a connected workflow that keeps spec, tests, and code in sync:
Code changes
↓
vibe-decision-journal ──→ Extract decisions from diffs
↓
vibe-spec-sync ──→ Update spec to reflect approved decisions
↓
vibe-adversarial-test-generation ──→ Generate spec-driven tests with req:ID traceability
↓
vibe-coverage-enforcer ──→ Verify 3 dimensions (line + spec-to-test + spec-to-code)
↓
vibe-spec-sync --audit ──→ Final verification: no remaining gaps
The CLI exposes the critical parts for automation:
vibe-cli decisions → extract decisions from staged changesvibe-cli spec-drift → detect spec-code driftvibe-cli coverage → verify all coverage dimensionsvibe-cli pre-commit → block commits with secrets/debug code| Skill | Trigger | Purpose |
|---|---|---|
vibe-help | "What skill should I use?" | Skill router and full catalog |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-research-before-design | Before any new feature/architecture/tech choice | Research real projects, papers, and documented failures, with verified sources |
vibe-decision-journal | After any architectural choice or before committing | Automatic decision extraction from diffs + ADR recording |
vibe-devil-advocate-review | Before shipping recommendations, large changes, or multi-agent releases; any "tear this apart" request | 5-dimension challenge from a named senior expert's standards, by a fresh context or different model; only evidenced findings survive; panel mode runs parallel lenses with a verification stage |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-acceptance-gate | After completing a task with criteria | PASS/FAIL validation against criteria, with evidence |
vibe-quality-loop | After any non-trivial implementation | Review→Test→Fix loop until clean, using the repo's own checks |
vibe-anti-rationalization-check | Before claiming done; when a test is "in the way" | Catches reward hacking: test tampering, special-casing, unverified claims |
vibe-spec-sync | Before committing, or when implementation is claimed complete | Spec drift detection + approved write-back; --audit for full spec-vs-code check |
vibe-doc-quality-gate | After editing any technical doc | Fast 6-point document quality check |
vibe-requirements-validator | When reviewing PRD/user stories | SMART criteria validation |
vibe-coverage-enforcer | Before claiming code complete | 3-dimension coverage: line + spec-to-test + spec-to-code |
vibe-slop-filter | Before shipping prose a person will read (docs, release notes, PR descriptions, posts) | Counts AI-writing tells first, then keeps only the devices doing real work |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-reflect-and-compound | After feedback, a non-trivial bug, or a repeated pattern | Learnings, bug entries, and patterns written to the memory file your agent loads (CLAUDE.md / AGENTS.md / GEMINI.md) |
vibe-handover-doc | Handing off, switching tools, or hitting a usage limit | Current-state-first handover with resume prompt; wind-down mode for interrupted multi-agent work |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-parallel-task-decomposition | Large task with independent subtasks | DAG analysis and dispatch plan for the harness's native subagents |
vibe-workstream-orchestration | Multi-phase project with 3+ agents at once | Orchestrator-only main thread, long-lived file-owning workstreams, route-don't-spawn, stale-checkout and shared-machine hygiene |
vibe-cherry-pick-integration | After parallel agents complete | Safe sequential integration of branches/worktrees |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-golden-file-testing | Snapshot/golden test implementation | Temporal normalization, update commands |
vibe-scenario-matrix | Planning test coverage | Behavioral scenario acceptance matrix |
vibe-concurrent-test-safety | Tests with shared mutable state | Race condition and cleanup auditing |
vibe-adversarial-test-generation | After happy-path tests written | Edge case + spec-driven test generation with req:ID traceability |
vibe-fuzz-parser-inputs | Implementing any parser | Fuzz test scaffolding and corpus |
vibe-flake-root-cause | "Passed on rerun", CI-only or intermittent failures | Force the controlling variable, reproduce at a stated rate, fix the cause, prove it with counts |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-pre-commit-audit | Before creating a commit | Runs hooks/secret scanners first, then checks for secrets, debug code, TODOs |
vibe-publication-leak-guard | Publishing agent-drafted or privately sourced content | Two-tier scan of built output, WIP visible in preview and absent in production, human-owned approval ledger |
vibe-safe-deploy | Before any deployment | Pre-flight checks, atomic deploy, SHA provenance check, rollback |
vibe-rollback-plan | Before risky changes | Documented rollback runbook |
vibe-service-health-dashboard | Checking running services | Multi-service health monitoring |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-gap-analysis | Before production launch or after major refactor | 17-dimension production readiness audit with parallel agents |
vibe-gap-closure-loop | 10+ findings, bugs, or audit items | Prioritized waves → parallel fix streams → test gate → re-audit |
| Skill | Trigger | Purpose |
|---|---|---|
vibe-scope-guard | During implementation | Scope creep and over-engineering detection |
vibe-production-mindset | Before declaring a production feature done | Production hardening checklist scaled to real stakes, incl. performance budgets that are never loosened to pass |
vibe-iteration-review | End of development iteration | Quality grading and trend analysis |
AI coding agents are far more capable than they were a year ago, but some failure modes persist: satisfying the test instead of the goal, over-building, claiming "done" without evidence, and agreeing with their own first idea. vibe-engineering targets exactly those.
| Without | With vibe-engineering |
|---|---|
| "Let me just build it" | Research existing solutions and their failures first (vibe-research-before-design) |
| "Tests pass, ship it" | Check coverage standards are met (vibe-coverage-enforcer) |
| "I'll remember the decision" | Extract it automatically from diffs (vibe-decision-journal) |
| "Good enough" | Loop until clean, with evidence (vibe-quality-loop) |
| "Spec is probably still accurate" | Detect drift and sync back (vibe-spec-sync) |
| Test loosened until it passed | Caught and disclosed (vibe-anti-rationalization-check) |
| Same bug investigated twice | Root cause saved to the agent's memory file (vibe-reflect-and-compound) |
| Self-review that agrees with itself | Review by a fresh context or another model (vibe-devil-advocate-review) |
| Release notes that read like a chatbot wrote them | Tells counted and cut (vibe-slop-filter) |
references/platform-tools.md)The repo is a Claude Code marketplace (vibe-plugins) that ships one plugin (vibe-engineering), whose skills/ directory is also a standard Agent Skills collection for Codex and Gemini CLI:
.claude-plugin/marketplace.json at the repo root catalogs the plugin; the plugin itself lives in plugins/vibe-engineering/ with its own .claude-plugin/plugin.json.agents/skills/ symlinks into the plugin's skills/ directory; both discover skills from this standard pathvibe-engineering/ # repo root = marketplace root
├── .claude-plugin/
│ └── marketplace.json # marketplace: "vibe-plugins"
├── plugins/
│ └── vibe-engineering/ # plugin root
│ ├── .claude-plugin/plugin.json # plugin: "vibe-engineering"
│ └── skills/ # 33 skill definitions
│ ├── vibe-help/SKILL.md
│ ├── vibe-quality-loop/SKILL.md
│ ├── vibe-spec-sync/SKILL.md
│ └── ... (folder name == skill name)
├── .agents/
│ └── skills → ../plugins/vibe-engineering/skills # Codex + Gemini CLI discovery
├── AGENTS.md # Codex / cross-tool project instructions
├── CLAUDE.md # Claude Code project instructions (repo invariants)
├── GEMINI.md # Gemini CLI project instructions (imports AGENTS.md)
├── references/
│ └── platform-tools.md # Capability mapping across Claude Code, Codex, Gemini CLI
├── scripts/
│ ├── vibe-cli # CLI for CI/CD enforcement
│ └── validate-skills.sh # Skill file validator
├── CHANGELOG.md
└── README.md
Each skill has:
name (matching its folder) and descriptionFound a pattern that keeps saving you? Turn it into a skill:
plugins/vibe-engineering/skills/vibe-your-skill-name/SKILL.md (the folder name must equal name)references/platform-tools.mdvibe-helpbash scripts/validate-skills.sh, then submit a PRBefore adding a skill, ask: would a current frontier model do this well without being told? If yes, it isn't a skill.
---
name: vibe-your-skill-name
description: Performs [action] for [context]. Use when [trigger condition].
user-invocable: true
---
# vibe-your-skill-name
[One paragraph explaining the problem this skill solves]
## When to Use This Skill
- [Trigger 1]
- [Trigger 2]
## When NOT to Use This Skill
- [Anti-trigger 1]
- [Anti-trigger 2]
## Steps
1. [Step 1]
2. [Step 2]
## Output Format
[Template for structured output]
These skills were extracted from building an 11-agent personal assistant system with Go backend, React Native frontend, and 205+ test files.
The numbers:
MIT — Use it, fork it, make it yours.