Skip to content
Skillpedia
General coding48k · #3847

poka-yoke

Makes your agent create code and processes that prevent errors. This ensures wrong actions are impossible or easy to notice.

What it does

Poka-yoke is a technique to make processes or code mistake-proof. Instead of relying on people to remember to do everything correctly, the system is designed so that mistakes are either impossible to make or immediately obvious.

When to use it

  • ✓When you want to prevent errors from happening in a process or code.
  • ✓When designing systems where errors can have serious consequences (money, important data).
  • ✓After a recurring error, to ensure it doesn't happen again.

Example of what to ask your AI

“How can I make this registration form mistake-proof so the user cannot submit invalid information?”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/poka-yoke/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/poka-yoke/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

Poka-yoke works by creating 'devices' that prevent errors. This could be a specific data type, a rule that doesn't allow proceeding if something is wrong, or a clear warning at the exact moment of the error.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill poka-yoke

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/poka-yoke/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Poka-Yoke: Mistake-Proofing for Software

Shigeo Shingo's insight, from the Toyota Production System: people will always make mistakes; that is not the problem worth solving. The problem is letting a mistake become a defect. So you stop trying to make humans more careful and start redesigning the work so the mistake either cannot physically happen or announces itself immediately.

A poka-yoke ("poh-kah yoh-kay", ポカヨケ) is a device: a jig, a shape, a counter: not an instruction. In software: a type, a constraint, a hook, a schema, a state machine. The single most important consequence:

A comment, a docstring, a wiki page, a code review checklist, or a line in CLAUDE.md saying "don't do X" is not a poka-yoke. It is training. Training degrades. A device does not. If your proposed fix relies on someone remembering something, keep going.

When to Use This Skill

  • Use when the user says "poka-yoke this", "mistake-proof it", or "make this harder to get wrong".
  • Use when designing an interface, schema or state machine and the ask is "make invalid states unrepresentable" or "so callers cannot screw it up".
  • Use when auditing existing code for footguns: "what could bite us here", "what is easy to misuse".
  • Use after an incident, when the fix must close the class rather than the case: "make sure this never happens again", "this is the third time".
  • Especially for money, auth, permissions, deletion, migrations and pipelines, where failure is silent.

The two axes

Every real poka-yoke answers two questions. Use both when you classify a hazard or propose a device. They are the difference between this method and generic code review.

Axis 1, Regulatory function: what happens when the mistake occurs?

This is a strict preference ladder. Always reach for the highest rung you can afford.

Rung Name What it does Software examples
1 Control The mistake is impossible. The work cannot proceed. Type won't compile · NOT NULL / CHECK / unique constraint · required function argument · private constructor + smart constructor · PreToolUse hook returns deny · protected branch
2 Warning The mistake is possible but announced at the moment it happens. Lint error in the editor · failing CI gate · runtime assertion that throws · confirmation prompt naming the exact thing being destroyed
3 Detection The mistake ships, and something finds it afterward. Tests · monitoring · alerting · reconciliation job
0 (not a poka-yoke) Relies on a human remembering. Docs · comments · training · "be careful" · review checklists

Shingo's rule: prefer control over warning, always, and only settle for warning when control is genuinely too expensive, then say why out loud. In software the honest reason is usually "the language can't express it" or "it would break every existing caller," and both are worth stating explicitly so the tradeoff is visible.

Axis 2, Setting function: how does the device notice?

Shingo's three detection methods map cleanly onto software. These are your inspection lenses, run all three over any interface and you will find hazards that a general code review misses.

Method Factory floor The question to ask code Software devices
Contact The part physically won't seat unless it's the right shape and orientation Can the wrong thing fit? Distinct types instead of shared primitives · branded/newtype IDs · parse-don't-validate at boundaries · units in the type · discriminated unions instead of bags of optionals
Fixed-value A counter says all 6 screws were fitted Can the wrong count or an incomplete set pass? Exhaustive match/switch over an enum · required fields · "all migrations applied" check · row-count guard on a bulk write · checksums · config validated as a whole at boot
Motion-step A sensor confirms step 3 happened before step 4 Can the steps happen in the wrong order, or be skipped? Typestate · builder that cannot .build() until required steps run · state machines with illegal transitions unrepresentable · idempotency keys · RAII / defer / context managers · transactions

The third principle: inspect at the source

Shingo separated source inspection from informative inspection, which finds the defect

…

FAQ

What is NOT a poka-yoke?

A poka-yoke is not a comment in the code, an instruction in a document, or a checklist. These things rely on human memory and can be forgotten. A poka-yoke is a rule or structure within the system itself.

What are the levels of poka-yoke?

There are three levels: Control (the error is impossible), Warning (the error is announced at the moment), and Detection (something finds the error afterward). The ideal is always to aim for Control.

How does poka-yoke identify errors?

It uses three methods: Contact (the wrong part won't fit), Fixed-value (the count or set is incorrect), and Motion-step (steps happen in the wrong order or are skipped).

Details

Original description by the author

Mistake-proof code, config and process: make the wrong action impossible or self-announcing rather than documented.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#3847
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills