Agent skill

No Mistakes

by mnemosyne-oss in mnemosyne-oss/mnemosyne

Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream.

MITAuto-check passedDevelopment

Install No Mistakes

skills CLI
$ npx skills add mnemosyne-oss/mnemosyne --skill no-mistakes -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mnemosyne-oss/mnemosyne no-mistakes --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mnemosyne-oss/mnemosyne.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/no-mistakes .claude/skills/no-mistakes && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
no-mistakes
GitHub stars
3.4k
Token cost
~2.8k tokens
SKILL.md length
1,553 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream.

  • Works in 3 steps: Check scope. Inspect git status before… → Do the work. Make the changes the task… → Then validate, passing the user's task…
  • The user asks to run no-mistakes
  • SKILL.md covers Two ways to invoke, Before you start, Intent is required and Validate and decide, plus 3 more sections
  • Calls git

What it does

No Mistakes is an agent skill from mnemosyne-oss/mnemosyne. Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream. Use when the user asks to run no-mistakes, gate or ship or validate their changes, push safely, asks you to do a task and then validate it, or invokes /no-mistakes.

Its SKILL.md is about 2.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Linting and formatting. The repository describes itself as: Zero-cloud AI memory that works everywhere. SQLite-backed. One pure-Python dependency. The licence is MIT.

When your agent uses it

  • The user asks to run no-mistakes
  • Validate their changes
  • Asks you to do a task and then validate it
  • Invokes /no-mistakes

Example prompts

  • “/no-mistakes”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Check scope. Inspect git status before you change or commit anything.
  2. Do the work. Make the changes the task describes, then **commit them on
  3. Then validate, passing the user's task as your --intent. The task

What it can do on your machine

Read from SKILL.md and the folder at commit bf22366. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • toonformat.dev

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

No Mistakes loads about 2.8k tokens when it runs. Until then it costs about 82 tokens; SKILL.md has 1,553 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~82
When it runs · the whole SKILL.md, loaded when a task matches
~2.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mnemosyne-oss/mnemosyne at commit bf22366, republished under its MIT licence (© mnemosyne-oss). 1,553 words, ~2,824 tokens.

Download SKILL.mdSave it as .claude/skills/no-mistakes/SKILL.md (or your agent's skills folder).
name
no-mistakes
description
Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream. Use when the user asks to run no-mistakes, gate or ship or validate their changes, push safely, asks you to do a task and then validate it, or invokes /no-mistakes.
user-invocable
true

no-mistakes

no-mistakes is a local gate that validates your code changes through a pipeline (intent, rebase, review, test, document, lint, push, PR, CI) before they reach upstream. You drive it through the no-mistakes axi command family, which prints machine-readable TOON to stdout and progress to stderr.

When the user invokes /no-mistakes, report the outcome at the end. If the user asks for something specific, translate that request into the matching axi run flags yourself - for example, "skip the lint step" becomes --skip=lint. Run no-mistakes axi run --help to see the available flags.

Two ways to invoke

/no-mistakes works in two modes, depending on whether the user hands you a task along with the command:

  • Validate-only - bare /no-mistakes (optionally with flag-style requests like "skip the lint step"). The user's code changes are already committed; validate them and report the outcome.
  • Task-first - /no-mistakes <task>, e.g. /no-mistakes add a --json flag to the status command. First carry out the task yourself, then validate the result through the pipeline:
    1. Check scope. Inspect git status before you change or commit anything. Preserve unrelated pre-existing uncommitted changes, and when you commit, commit only the changes that belong to the user's task.
    2. Do the work. Make the changes the task describes, then commit them on a feature branch. If the user is on the repository's default branch, create a feature branch first - the gate validates committed history on a non-default branch, so the work must land there before you run.
    3. Then validate, passing the user's task as your --intent. The task text is exactly what the user set out to accomplish, in their own words, so it is the intent - pass it through, enriched with the decisions and tradeoffs you made while doing the work (see Intent is required).

Everything below - preconditions, intent, the validate-and-decide loop - applies the same way once the work is committed on a feature branch.

Before you start

  • The work you want validated must be committed on a branch. The gate validates committed history, not your uncommitted working tree.
  • You must be on a feature branch, not the repository's default branch.
  • The repository must already be initialized with no-mistakes init.

If any of these is not met, axi run returns an error: with the exact command to fix it - read it and act on it (commit your work, or create a branch). If the repository is not initialized, run no-mistakes init first; if the no-mistakes command itself is missing or misbehaving, no-mistakes doctor reports what is wrong. Before starting, a quick no-mistakes axi (home view) shows whether a run is already active - resume or axi abort it rather than starting a second run on top of it.

Intent is required

When you start a run you must pass --intent: what the user set out to accomplish - the goal or request behind this work, in their terms. This is not a description of the diff or the files you changed; it is the objective the change is meant to achieve. You know it from the conversation, so pass it directly - no-mistakes uses it verbatim instead of inferring it from local agent transcripts (slower and flakier).

Err on the side of completeness, not brevity. The review step uses --intent to tell a deliberate decision apart from a mistake, so a thin one-line summary makes it flag things the user already chose. Capture the nuance: the user's goal, the specific decisions and tradeoffs they made along the way, any constraints or approaches they ruled in or out, and anything they explicitly asked for that might otherwise look surprising in the diff. A few sentences to a short paragraph is normal - write down what you learned from the conversation that a reviewer reading only the diff would not know.

Validate and decide

Run the pipeline and decide on its findings as they come up:

  1. Start the run. It blocks until the first decision point or the end:

    sh
    no-mistakes axi run --intent "<what the user set out to accomplish>"

    axi run and every axi respond block synchronously - the review, test, and CI steps can each take several minutes, so a single call may not return for a while. That is normal; allow a long timeout and do not cancel or re-issue the command because it seems slow. To check progress without disturbing the run, use no-mistakes axi status from a separate call.

  2. If the output contains a gate: object, the pipeline is waiting on you. Read its findings table. Each finding has an id, severity, file, description, and an action that tells you how the pipeline classified it:

    • auto-fix - mechanical and low-risk; you can authorize the fix on your own judgment by responding with --action fix.
    • no-op - informational only; nothing to do.
    • ask-user - the finding challenges the user's deliberate intent or touches product behavior. This is a call only the user can make - see Escalate ask-user findings below.

    Choose one response:

    sh
    # accept the step as-is and continue
    no-mistakes axi respond --action approve
    
    # have the pipeline fix specific findings, then continue
    no-mistakes axi respond --action fix --findings <id1,id2> --instructions "<optional guidance>"
    
    # skip this step
    no-mistakes axi respond --action skip

    While a run is active, never fix findings by editing the code yourself - the pipeline owns both the findings and the fixes. Your job at a gate is to decide and respond; --action fix has the pipeline apply the fix and re-review the result.

    Each respond blocks until the next gate:, checks-passed decision point, or final outcome.

    Two extra flags are available on respond when you need them:

    • --add-finding '<json>' (with --action fix) folds a finding you spotted yourself - one the pipeline did not surface - into the fix round, as a JSON finding object. Use it for a problem you noticed that is not in the gate's own findings table.
    • --step <name> responds to a specific step instead of the one currently awaiting approval. You rarely need this; omit it to answer the active gate.
  3. Repeat step 2 until the output has an outcome: instead of a gate:. The outcomes are:

    • checks-passed - the change is validated and CI is green, but the PR is not merged yet. You are done driving the pipeline. Do not wait for the merge: tell the user the PR is ready and ask them to review and merge it (the PR link is in the help line). no-mistakes keeps monitoring the PR in the background, so a human can watch it in the TUI.
    • passed - the changes cleared the gate and the PR was merged or closed.
    • failed or cancelled - they did not; read the output and address it. Fix whatever the output points at (a failing test, a lint error, a finding you skipped), commit the fix on the same feature branch, then drive the pipeline again - no-mistakes axi run --intent "..." starts a fresh run, or no-mistakes rerun re-runs the pipeline for the current branch. Do not leave the user at a failed outcome without either retrying or explaining what blocks it.
Show full SKILL.md (437 more words)Show less

The CI step deliberately watches the PR until it is merged or closed, so axi run returns checks-passed the moment checks are green rather than blocking on the human merge. Never poll or re-run waiting for the merge yourself.

Escalate ask-user findings

A gate whose findings are all auto-fix or no-op is safe to drive on your own judgment: respond with --action fix or --action approve as appropriate. But a finding marked ask-user is a decision that belongs to the user, not you - the pipeline flagged it because it challenges their deliberate intent or changes product behavior. Do not approve, fix, or skip it on your own. Instead, stop and bring it to the user before you respond:

  • Relay each ask-user finding to them as the pipeline wrote it - its id, file, and full description verbatim. Do not paraphrase, summarize away the detail, or pre-judge the answer.
  • Ask how they want to proceed, then translate their decision into the matching respond call: --action fix (pass their guidance through --instructions), --action approve, or --action skip.

The one exception is --yes (below): it is the user's standing consent to drive every gate unattended, so under --yes you resolve ask-user findings automatically instead of stopping to ask.

If you have clear consent to drive the run automatically, pass --yes to axi run or axi respond. It treats every actionable finding - auto-fix and ask-user alike - as consent to fix it, selects every current finding for one fix round, accepts the resulting fix review, and approves gates with only no-op findings. Only use it when the user has asked you to drive the whole run without checking back.

Inspecting state

sh
no-mistakes axi               # home view: active run, recent runs, next steps
no-mistakes axi status        # full detail of the active (or most recent) run
no-mistakes axi logs --step <name> --full   # full log output of one step
no-mistakes axi abort         # cancel the active run

Reading the output

  • Output is TOON: key: value pairs, name[N]{cols}: tables, and help[N]: hints.
  • The help list at the bottom of most responses tells you the next commands to run.
  • Errors are printed as error: ... on stdout with a help list; act on the suggestion.
  • Exit codes: 0 success, no-op, or normal decision gates, 1 failed or cancelled final outcomes, 2 bad usage.

A gate: waiting on you looks roughly like this - a gate: line naming the step, a findings[N]{...}: table with one row per finding, and a help[N]: list of next commands:

gate: review
findings[2]{id,severity,file,description,action}:
  r1,medium,internal/pipeline/executor.go,Error from os.Remove is ignored,auto-fix
  r2,high,cmd/no-mistakes/main.go,New --force flag bypasses the confirm prompt,ask-user
help[2]:
  no-mistakes axi respond --action fix --findings r1
  no-mistakes axi respond --action approve

Read the action column per row: decide r1 (auto-fix) on your own judgment - respond --action fix --findings r1 hands it to the pipeline to fix - but stop and escalate r2 (ask-user) to the user before responding. A final state instead shows outcome: <checks-passed|passed|failed|cancelled> with no findings table. Field names and exact columns can vary by step and version, so read the actual findings header rather than assuming this layout.

© mnemosyne-oss, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/no-mistakes of mnemosyne-oss/mnemosyne.

Open the folder on GitHubat commit bf22366

Compare with similar skills

No Mistakes next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

No Mistakes compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
No Mistakes this skillmnemosyne-oss/mnemosyne3.4k—~2.8kAutomated safety check: PassMIT
Minimizing Ty Ecosystem Changesastral-sh/ruff50k—~4.6kAutomated safety check: PassMIT
Install Anti-Slop Oxlint Rulesdmmulroy/anti-slop5.4k—~2.2kAutomated safety check: PassMIT
Babysit PR To Pass CIsgl-project/sglang37k2 repos~3kAutomated safety check: PassApache-2.0
Rust Best Practicesfarm-fe/farm5.6k3 repos~1.1kAutomated safety check: PassMIT
Summarise Ecosystem Resultsastral-sh/ruff50k—~2.2kAutomated safety check: PassMIT

Similar skills

  • Official

    A skill your agent uses when a user says "minimize this ty ecosystem change", "reproduce this ecosystem result", "investigate a primer difference", "investigate a mypyprimer difference"…

    50k GitHub stars~4.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.

    5.4k GitHub stars~2.2k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Babysit PR To Pass CI

    sgl-project/sglang

    Start and persistently pursue a goal to babysit an SGLang pull request until selected GitHub Actions workflows pass on the latest PR head.

    37k GitHub starsUsed in 2 repos~3k tokens
    DevelopmentAuto-check passed
  • Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook.

    5.6k GitHub starsUsed in 3 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Official

    A skill your agent uses when a user says "summarise ecosystem results", "summarize this ty ecosystem report", "what changed in this ecosystem run?", or asks to summarise or summarize ty ecosystem…

    50k GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Go Pedantry

    chromedp/chromedp

    This skill should be used when the user is writing Go code and needs guidance on Go-specific pedantry: error wrapping with fmt.Errorf and %w, interface design (accept interfaces return structs)…

    13k GitHub stars~3.7k tokensUpdated 5 days ago
    DevelopmentAuto-check passed

More from mnemosyne-oss/mnemosyne

  • Mnemosyne Context

    mnemosyne-oss/mnemosyne

    Load this when working on the mnemosyne memory system — its repo, sync server, memory databases, or CI.

    3.4k GitHub stars~2.6k tokensUpdated yesterday
    Auto-check passed
  • Hermes Memory Providers

    mnemosyne-oss/mnemosyne

    Install and configure Mnemosyne as a Hermes Agent memory provider — local SQLite with vector search, episodic consolidation, and temporal knowledge graphs.

    3.4k GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Mnemosyne Memory Override

    mnemosyne-oss/mnemosyne

    Hard rule override that forces Mnemosyne for all durable memory storage.

    3.4k GitHub stars~630 tokensUpdated yesterday
    Auto-check passed

Categories

Questions about No Mistakes

What does No Mistakes do?

Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream. No Mistakes is an agent skill from mnemosyne-oss/mnemosyne. Validate your code changes through the no-mistakes pipeline - automated code review, tests, lint, docs, push, PR, and CI - before they reach upstream.

When should I use No Mistakes?

No Mistakes fits situations like: the user asks to run no-mistakes; validate their changes; asks you to do a task and then validate it; invokes /no-mistakes.

How do I install No Mistakes in Claude Code?

Run `npx skills add mnemosyne-oss/mnemosyne --skill no-mistakes -a claude-code`. Or copy the skill folder (.agents/skills/no-mistakes in mnemosyne-oss/mnemosyne) into .claude/skills/no-mistakes in your project. Claude Code loads it when a task matches its description.

How do I install No Mistakes in Codex?

Run `npx skills add mnemosyne-oss/mnemosyne --skill no-mistakes -a codex`. Or copy the skill folder (.agents/skills/no-mistakes in mnemosyne-oss/mnemosyne) into .agents/skills/no-mistakes in your project. Codex loads it when a task matches its description.

Can I use No Mistakes in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mnemosyne-oss/mnemosyne --skill no-mistakes -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/no-mistakes, .gemini/skills/no-mistakes, .github/skills/no-mistakes and .opencode/skills/no-mistakes in your project.

What does No Mistakes need to run?

Going by SKILL.md and its folder, No Mistakes needs the command-line tools its instructions call (git).

Does No Mistakes access the network?

SKILL.md names 1 domain. As links in the text: toonformat.dev. This is read from the text; nothing was executed.

Is No Mistakes safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does No Mistakes use?

No Mistakes is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does No Mistakes use?

About 2.8k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to No Mistakes?

Skills that share tags, products or a category with No Mistakes: Minimizing Ty Ecosystem Changes (astral-sh/ruff, 50k stars), Install Anti-Slop Oxlint Rules (dmmulroy/anti-slop, 5.4k stars), Babysit PR To Pass CI (sgl-project/sglang, 37k stars) and Rust Best Practices (farm-fe/farm, 5.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains No Mistakes?

mnemosyne-oss (a GitHub organization) maintains it in mnemosyne-oss/mnemosyne, which has 3,375 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 10, 2026.

Source: mnemosyne-oss/mnemosyne on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.