exec
Use when a plan is approved and implementation has not started: dispatches one fresh subagent per task, runs each task's verify clause, and routes failures…
Skill by rizukirr
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/rizukirr-exec
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: productivity, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/exec
What's inside
- Skill name
exec- Description
- Use when a plan is approved and implementation has not started: dispatches one fresh subagent per task, runs each task's verify clause, and routes failures back instead of repairing them. One task, one commit.
- License
- MIT
- Instructions
- 86 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# exec Execute an approved plan, one task per fresh subagent. No task is written here and nothing is repaired here. ## HARD-GATE Do NOT implement any task in this session. Every task goes to a fresh subagent. The reason is not tidiness. A session that wrote the plan reads past its own contradictions. A fresh context reads the plan literally and stops. Every plan defect found in this project was found by a dispatched implementer or a reviewer, never by the author. ## Whole-plan gate Before dispatching anything, refuse unless all of these hold: - The plan file exists, is committed, and the user approved it. - The spec it names carries `status: approved`. - The working tree is clean. - The run is on a dedicated branch or worktree, never the base branch. - **Every task header carries a `→ verify:` clause.** A plan missing even one clause is rejected whole, naming the task. Do not dispatch the tasks that do have clauses and deal with the rest later. The alternative is discovering task six is unverifiable after paying for five dispatches. `exec` does not create the workspace. If there is no dedicated branch, stop and say so. ## The task loop For each task in order: **1. Record BASE.** `git rev-parse HEAD`, before dispatch. Every later check measures against it. Never `HEAD~1`: a task making three commits would have two escape the scope check silently. **2. Write the brief to a file.** Extract this task's section from the plan verbatim, heading, files, every step, the clause, into a scratch file, and add one line to it: invoke `lazy` before writing any code. Pass the path. Never paste the task into the prompt, and never hand over the whole plan. Everything pasted into a dispatch stays in your context for the rest of the session and is re-read on every later turn. The line goes in the brief, not beside it. The brief is what the implementer treats as its requirements. Anything else is framing it may reasonably ignore. **3. Dispatch one fresh subagent.** Its prompt carries: one line on where the task sits, the brief path introduced as its requirements to use verbatim, repo state it cannot infer, interfaces earlier tasks produced that its brief cannot know, and the return contract below. Restrict its tools to what the task needs, plus whatever loads a skill. The brief tells it to invoke `lazy`, and an instruction it has no means to obey is worse than no instruction. A constraint the runtime enforces cannot be talked past. A constraint in prose can. A dispatched agent inherits none of this session's modifiers. It starts unaware of them. What you know about how much to build reaches the implementer only if the brief says so, and naming the skill beats restating it: the ladder has one home. **4. Run the clause.** Execute the task's `→ verify:` command yourself. Its exit status decides. This is the gate. There is no reviewer. **5. Check scope.** `git diff --name-only BASE..HEAD` must be a subset of the task's files. Every changed line traces to the task that authorised it. Then tick the task's checkboxes and commit that plan update on its own, so the plan always states what actually happened. ## Return contract Three statuses. Branch on the first field. - **`done`**: commits made as `sha: subject`, the command run and its exit status, and a `concerns` string, empty if none. Concerns are recorded, not acted on. - **`blocked`**: cannot be completed as written. What was tried and why it stopped. Not a retry request. - **`needs-input`**: a genuine ambiguity in the plan. The blocking step quoted verbatim, what was attempted from the brief alone, and two or more options. Roll back to BASE before returning, so a halt never leaves partial work. ## Repair nothing On anything that is not `done`, halt and route. Never fix it here. - **`needs-input`**: surface the question verbatim, wait. On an answer, the plan is amended by `plan`, in its own commit, then the task is dispatched fresh. Never patch the plan inline mid-loop: the plan and the work drift apart, and the drift is only found later, by a reviewer. - **`blocked`**: surface, stop the run. - **Clause fails**: halt. The task's own criterion said no. A failed clause is a failure with no diagnosis, which is what `debug` is for. - **Scope violation**: halt, name the offending paths. A halt leaves the branch as it was at the last completed task. ## Never - Never dispatch two implementers at once. They conflict. - Never fix a finding yourself. Your context is for coordination, and a fix you make skips the gate. - Never re-dispatch an unchanged brief after a halt. If it stopped, something has to change first. - Never batch commits across tasks. ## Name the model Every dispatch names its model explicitly. An omitted model inherits this session's, which is usually the most expensive one available, on tasks that rarely need it. Choose by task shape, not by importance: - **Cheap tier**: the brief carries the full code and the steps are mechanical. - **Standard tier**: the steps require judgement the brief cannot spell out. Naming it is the point. A dispatch with no model is a cost decision made by accident. ## Handoff When every task is complete, the plan file is fully ticked and the branch holds one or more commits per task. The next skill is `verify`. Say plainly what ran and what remains unproven.
From rizukirr/vibekit, MIT.
More from rizukirr/vibekit
- 0.644score
quick
rizukirr
Use when the user types /vibekit:quick: writes the change immediately under lazy's ladder, no spec, no plan, no subagents.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
debug
rizukirr
Use when a check fails: a red test, a broken build, a failed clause, or a bug you can point at.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
using-vibekit
rizukirr
Use when starting any conversation: establishes the auto-trigger discipline so guardrail skills fire instead of being silently skipped.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
plain
rizukirr
Use before writing any text, in chat or into a file.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
plan
rizukirr
Use when a spec is approved and implementation has not started: turns it into a task-by-task plan with exact paths and checkable verification.
SkillAFreshness: A★ 20Claude Code +9 - 0.641score
brainstorm
rizukirr
Use before any creative or implementation work: features, components, behavior changes.
SkillAFreshness: A★ 20Claude Code +9 - 0.641score
lazy
rizukirr
Use at the start of any coding work: writing, adding, refactoring, fixing, designing.
SkillAFreshness: A★ 20Claude Code +9 - 0.641score
terse
rizukirr
Use at the start of every session.
SkillAFreshness: A★ 20Claude Code +9 - 0.641score
verify
rizukirr
Use before claiming a change is done, fixed or passing: checks the whole change against its spec, runs the checks no single task could, hunts for the bugs the…
SkillAFreshness: A★ 20Claude Code +9 - 0.633score
vibe
rizukirr
Run a short intent through the pipeline.
SkillAFreshness: A★ 20Claude Code +9
Signals
- Stars
- 20
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Aug 25, 2026 (2 months ago)
- Last release
- Oct 10, 2026 (19 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/rizukirr/vibekit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from rizukirr
- 0.644score
quick
rizukirr
Use when the user types /vibekit:quick: writes the change immediately under lazy's ladder, no spec, no plan, no subagents.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
debug
rizukirr
Use when a check fails: a red test, a broken build, a failed clause, or a bug you can point at.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
using-vibekit
rizukirr
Use when starting any conversation: establishes the auto-trigger discipline so guardrail skills fire instead of being silently skipped.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
plain
rizukirr
Use before writing any text, in chat or into a file.
SkillAFreshness: A★ 20Claude Code +9 - 0.644score
plan
rizukirr
Use when a spec is approved and implementation has not started: turns it into a task-by-task plan with exact paths and checkable verification.
SkillAFreshness: A★ 20Claude Code +9 - 0.641score
brainstorm
rizukirr
Use before any creative or implementation work: features, components, behavior changes.
SkillAFreshness: A★ 20Claude Code +9
Cite this page
exec skill. Agent Mart. https://agentmart.dev/skills/rizukirr-exec (last updated 2026-10-24)