Pular para o conteúdo
Skillpedia
Código em geral48 mil · #3847

poka-yoke

Faz seu agente criar códigos e processos que evitam erros. Isso garante que ações incorretas sejam impossíveis ou fáceis de notar.

O que ela faz

Poka-yoke é uma técnica para tornar processos ou códigos à prova de erros. Em vez de depender de as pessoas lembrarem de fazer tudo certo, o sistema é projetado para que erros sejam impossíveis de acontecer ou sejam imediatamente óbvios.

Quando usar

  • ✓Quando você quer evitar que erros aconteçam em um processo ou código.
  • ✓Ao projetar sistemas onde erros podem ter consequências graves (dinheiro, dados importantes).
  • ✓Depois de um erro recorrente, para garantir que ele não se repita.

Exemplo do que pedir para a IA

“Como posso tornar este formulário de cadastro à prova de erros para que o usuário não envie informações inválidas?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

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

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/poka-yoke/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O poka-yoke funciona criando 'dispositivos' que impedem o erro. Isso pode ser um tipo de dado específico, uma regra que não permite continuar se algo estiver errado, ou um aviso claro no momento exato do erro.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

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

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/poka-yoke/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Poka-Yoke: Prevenção de Erros para Software

A ideia de Shigeo Shingo, do Sistema Toyota de Produção: as pessoas sempre cometerão erros; esse não é o problema que vale a pena resolver. O problema é permitir que um erro se torne um defeito. Então, você para de tentar tornar os humanos mais cuidadosos e começa a redesenhar o trabalho para que o erro não possa acontecer fisicamente ou se anuncie imediatamente.

Um poka-yoke ("poh-kah yoh-kay", ポカヨケ) é um dispositivo: um gabarito, uma forma, um contador; não uma instrução. Em software: um tipo, uma restrição, um hook, um esquema, uma máquina de estados. A consequência mais importante:

Um comentário, uma docstring, uma página wiki, uma lista de verificação de revisão de código ou uma linha em CLAUDE.md dizendo "não faça X" não é um poka-yoke. É treinamento. O treinamento se degrada. Um dispositivo não. Se sua correção proposta depende de alguém se lembrar de algo, continue.

Quando Usar Esta Habilidade

  • Use quando o usuário disser "poka-yoke isso", "previna erros nisso" ou "torne isso mais difícil de fazer errado".
  • Use ao projetar uma interface, esquema ou máquina de estados e a solicitação for "torne estados inválidos irrepresentáveis" ou "para que os chamadores não possam estragar tudo".
  • Use ao auditar código existente em busca de "armadilhas": "o que pode nos prejudicar aqui", "o que é fácil de usar incorretamente".
  • Use após um incidente, quando a correção deve fechar a classe em vez do caso: "certifique-se de que isso nunca mais aconteça", "esta é a terceira vez".
  • Especialmente para dinheiro, autenticação, permissões, exclusão, migrações e pipelines, onde a falha é silenciosa.

Os dois eixos

Todo poka-yoke real responde a duas perguntas. Use ambos ao classificar um perigo ou propor um dispositivo. Eles são a diferença entre este método e a revisão de código genérica.

Eixo 1, Função regulatória: o que acontece quando o erro ocorre?

Esta é uma escada de preferência rigorosa. Sempre busque o degrau mais alto que você puder pagar.

Degrau Nome O que faz Exemplos de software
1 Controle O erro é impossível. O trabalho não pode prosseguir. Tipo não compila · NOT NULL / CHECK / restrição única · argumento de função obrigatório · construtor privado + construtor inteligente · hook PreToolUse retorna deny · branch protegido
2 Aviso O erro é possível, mas anunciado no momento em que acontece. Erro de lint no editor · falha no portão de CI · asserção em tempo de execução que lança uma exceção · prompt de confirmação nomeando a coisa exata que está sendo destruída
3 Detecção O erro é enviado, e algo o encontra depois. Testes · monitoramento · alertas · job de reconciliação
0 (não é um poka-yoke) Depende de um humano se lembrar. Documentos · comentários · treinamento · "tenha cuidado" · listas de verificação de revisão

Regra de Shingo: prefira controle sobre aviso, sempre, e só se contente com aviso quando o controle for genuinamente muito caro, então diga por que em voz alta. Em software, a razão honesta geralmente é "a linguagem não consegue expressar" ou "quebraria todos os chamadores existentes", e ambos valem a pena ser declarados explicitamente para que a troca seja visível.

Eixo 2, Função de configuração: como o dispositivo percebe?

Os três métodos de detecção de Shingo se mapeiam claramente para o software. Estas são suas lentes de inspeção, execute as três em qualquer interface e você encontrará perigos que uma revisão de código geral não encontra.

Método Linha de produção A pergunta a fazer ao código Dispositivos de software
Contato A peça fisicamente não se encaixa, a menos que tenha o formato e a orientação corretos A coisa errada pode se encaixar? Tipos distintos em vez de primitivas compartilhadas · IDs de marca/newtype · parse-don't-validate nas fronteiras · unidades no tipo · uniões discriminadas em vez de coleções de opcionais
Valor fixo Um contador diz que todos os 6 parafusos foram instalados A contagem errada ou um conjunto incompleto pode passar? match/switch exaustivos sobre um enum · campos obrigatórios · verificação "todas as migrações aplicadas" · guarda de contagem de linhas em uma escrita em massa · checksums · configuração validada como um todo na inicialização
Passo de movimento Um sensor confirma que o passo 3 aconteceu antes do passo 4 Os passos podem acontecer na ordem errada ou ser pulados? Typestate · builder que não pode .build() até que os passos necessários sejam executados · máquinas de estado com transições ilegais irrepresentáveis · chaves de idempotência · RAII / defer / gerenciadores de contexto · transações

O terceiro princípio: inspecionar na origem

Shingo separou a inspeção de origem da inspeção informativa, que encontra o defeito

…

Perguntas frequentes

O que NÃO é um poka-yoke?

Um poka-yoke não é um comentário no código, uma instrução em um documento ou uma lista de verificação. Essas coisas dependem da memória humana e podem ser esquecidas. Um poka-yoke é uma regra ou estrutura no próprio sistema.

Quais são os níveis de poka-yoke?

Existem três níveis: Controle (o erro é impossível), Aviso (o erro é anunciado no momento) e Detecção (algo encontra o erro depois). O ideal é sempre buscar o Controle.

Como o poka-yoke identifica erros?

Ele usa três métodos: Contato (a peça errada não encaixa), Valor Fixo (a contagem ou conjunto está incorreto) e Movimento (os passos ocorrem na ordem errada ou são pulados).

Detalhes

Descrição original do autor

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

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3847
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas