From maverick
Wraps implementation work so the Maverick workflow report captures what was done and coding standards are applied before editing. Invoke once per task from inside a do-issue-* or do-epic phase.
How this skill is triggered — by the user, by Claude, or both
Slash command
/maverick:do-code brief description of the task (one line)brief description of the task (one line)The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Wraps implementation work in a Maverick skill so the workflow report
Wraps implementation work in a Maverick skill so the workflow report
records what was done and the agent applies the project's coding
standards before editing. Invoke this skill once per task from
inside do-issue-solo / do-issue-guided /
do-epic Phase 5. The argument is a one-line task
description that gets logged in the report.
This skill is a thin wrapper. The actual edits are made by the orchestrating Claude Code session using its built-in tools (Read, Edit, Write, Bash, Grep). The skill's job is to pin standards and scope, not to perform the edits in a subagent.
Before doing anything else, check for repo-specific coding guidance at
docs/maverick/skills/do-code/SKILL.md (path relative to the repo root).
Run this first. If it exits non-zero, halt and report the stderr output to the user verbatim. Do not proceed.
uv run maverick preflight do-code
Skip the preflight when invoked from inside a do-issue-* or
do-epic phase — the orchestrator already ran a stricter one this
session. Run it only when this skill is invoked standalone.
The check verifies the project is initialised and uv is on PATH.
Before editing, read and follow:
mav-scope-boundaries — implement only what $ARGUMENTS
asks for. No unrelated cleanup, no opportunistic refactors, no
abstractions for hypothetical future requirements. Three similar
lines is better than a premature abstraction.mav-bp-error-handling — error handling at system
boundaries only (user input, external APIs). Don't catch what
framework guarantees rule out. No defensive code for scenarios that
can't happen.mav-bp-operability — log levels, structured fields, and
the project's logging conventions.mav-bp-application-security — input validation, secret
handling, authn/authz patterns. If the change touches any of these,
surface the design choice in your verification.Also read any project-level skills at docs/maverick/skills/ —
topic-specific guidance for this codebase that supplements the
maverick-wide best practices.
mav-local-verification (lint,
typecheck, tests). Run the project's verification commands.mav-systematic-debugging and fix. Do not paper over
a failing test or silence a lint warning. Do not commit red.git push --force,
git reset --hard, rm -rf, drop tables, or delete data. If the
task description doesn't explicitly authorise a destructive step,
treat it as out of scope and ask.do-test as a sibling call before the commit).$ARGUMENTS is
ambiguous, ask for clarification rather than guess.do-code is a subroutine of the calling workflow's
per-task loop — not a terminal action. Returning from this skill is a
hand-back to the caller's next numbered step, not a completion event
(#106).
When you return from this skill, do not post a closing summary, do not stop, do not treat verification-green as "task done." The calling workflow's loop still owns, in order:
skill-dispatch interval that wrapped this invocation
(uv run maverick report end skill-dispatch … --outcome success).do-test for tests that
weren't folded into this skill.uv run maverick report commit …).If you find yourself drafting a final summary after returning here,
that is the signal: scroll back to the calling workflow's per-task
loop and resume from the step immediately after the
/do-code invocation.
npx claudepluginhub thermiteau/maverick --plugin maverickMakes one focused code change with planning, testing, verification, and reporting. Useful when a task is clearly scoped and needs a single, review-ready commit.
Implements scoped code changes safely: confirms scope, edits minimal relevant files, runs checks/tests, verifies, and summarizes updates/next steps.
Delegates implementation tasks to Claude Code for autonomous code writing, editing, and refactoring with full read/write access.