A Claude Code skill that turns feature building into a guided, step-through workflow: Claude plans with you, executes one atomic change at a time, lets work accumulate uncommitted, and hands you four concrete next-step suggestions after every step. You stay in control. Claude proposes, you decide, you commit when ready.
Micro decisions where they matter; macro, let it flow.
Coding agents tend toward two extremes: they either ask permission for everything or disappear for ten minutes and return with a 40-file diff you can't review. Vibe Engineering sits in the middle. Every change is small enough to review at a glance, nothing is ever committed automatically, and the interactive picker keeps the next move one keypress away. When you trust the direction, you can still open the throttle with Flow or Agent Mode.
- You describe a feature.
/vibe-engineer Build a teams feature with invitations. - The grilling. Claude enters Plan Mode, reads your codebase first, then asks informed questions in rounds until the blocking and hard-to-reverse decisions are settled. Say "just plan it" to skip ahead; unanswered important questions become stated assumptions.
- Plan and goal. You get a short prose technical brief and a goal: one measurable completion condition with exact proof, the contract for the session. Finishing checks against it.
- Safe workspace. After approval, Claude records the Git baselines and creates a task branch for a clean tree. For a dirty tree, it prefers a dedicated worktree, verifies the worktree's exact base commit, and never stashes without asking.
- The loop. Claude completes one coherent, reviewable outcome, validates it, reports every changed file, and presents 4 dependency-ordered suggestions in the picker. Type a number, give your own instruction, or ask a question (questions are free; no files touched). When one of your installed skills fits a step, the suggestion names it ("Run
/tddfor the invite flow"). - You commit. Work accumulates uncommitted until you type
commit. Path-limited commits exclude unrelated changes even when those changes were already staged. - Adversarial review. When the complete session diff gets substantial, the first suggestion becomes a parallel multi-agent review. Claude chooses 2-4 lenses for the actual risk, includes untracked files, gives reviewers no coding rationale, and rejects the run if a reviewer changes the workspace.
- Finish.
finish/ship itchecks the goal honestly, pushes the branch, and offers a PR.
| You type | What happens |
|---|---|
1-4 or a suggestion |
Claude does that step without a redundant confirmation |
commit / commit this |
Stage and commit the session's files (vibe: <summary>) |
report |
Reprint the latest Done report as its own message |
reject / undo all |
Restore only the current uncommitted batch to its batch baseline |
undo <task> / remove <file> |
Reverse that task's recorded patch without erasing later work |
do 1, 2 and 3 |
Flow Mode: batch several steps, then back to step-by-step |
just keep going |
Agent Mode: autonomous chunks with picker checkpoints (only you can enable it) |
pause / resume |
Step out of / back into the workflow, context intact |
finish / ship it |
Verify the goal, push, offer a PR |
Sessions adapt to the job (new feature, bug fix, refactor, dependency upgrade, performance work, UI, security hardening, docs); see session-types.md.
Bug-fix sessions use the same loop with diagnostic steps. The grilling is short and symptom-focused, then Claude builds a red-capable feedback loop, minimizes the reproduction, ranks falsifiable hypotheses in the picker, instruments, and fixes behind a regression test. Same atomic checkpoints, different work; see bug-diagnosis.md.
Copy the contents of src/ into a vibe-engineer skill folder:
# Personal (all projects)
mkdir -p ~/.claude/skills/vibe-engineer
cp src/SKILL.md ~/.claude/skills/vibe-engineer/
cp -R src/references ~/.claude/skills/vibe-engineer/
# Or per-project
mkdir -p .claude/skills/vibe-engineer
cp src/SKILL.md .claude/skills/vibe-engineer/
cp -R src/references .claude/skills/vibe-engineer/Claude Code detects SKILL.md changes inside known skill directories live. Restart only if the top-level skills directory did not exist when the current session started.
Invoke it directly:
/vibe-engineer Build a teams feature with invitations
Or just say what you want naturally. "vibe", "start session", "plan this feature", and "let's step through building X" all trigger it. It deliberately does not trigger for quick one-off fixes or simple questions; those don't need the ceremony.
Ordinary English is the default. Ask for ASD-STE100 Simplified Technical English ("use STE" or "simplified English") and Claude applies it to prose, plans, suggestions, and picker labels for the rest of the session. Code, paths, commands, and quoted output stay unchanged. Ask to turn it off at any time.
Built for Claude Code specifically. The interaction requires the first two capabilities below. The third is an optional integration. Full branch, commit, and undo safety also requires a Git repository with at least one commit.
AskUserQuestionpicker: the interactive 4-option selector is the workflow's primary navigation. If your environment renders it as plain text, typing a number still works.- Plan Mode: used for the grilling and planning phase.
- Dynamic workflows (v2.1.154+, supported paid or API/provider setup): preferred for parallel adversarial review, with a fallback to fresh
Agent-tool subagents.
Without Git or an initial commit, the step-through loop can still run, but safe branching, scoped commits, and baseline restoration are unavailable. The skill discloses that limitation before editing.
src/
├── SKILL.md # The skill itself: rules, session flow, core loop
└── references/ # Loaded on demand to keep the main skill lean
├── modes.md # Step / Flow / Agent modes, pausing
├── session-types.md # Per-session-type planning strategies
├── session-safety.md # Branch, dirty-tree, commit, and undo safety
├── bug-diagnosis.md # Repro-first loop for bug-fix sessions
├── prototype.md # Throwaway spikes that answer a design question
├── adversarial-review.md # Reviewer isolation, lens selection, workflow script
└── troubleshooting.md # Common issues and version requirements