forrestchang/andrej-karpathy-skills é um projeto de ferramentas de desenvolvedor de código aberto com imensa popularidade no GitHub que tem como objetivo abordar completamente as falhas comportamentais comuns na geração automática de código por modelos de linguagem grande (LLMs) e inteligências de código de IA, como o Claude Code. Fundado pelo desenvolvedor Forrest Chang, a principal inspiração do projeto vem diretamente das observações virais e dos resumos de Andrej Karpathy, renomado especialista em IA, sobre as armadilhas da programação de IA.
Na programação assistida por IA, as inteligências de codificação costumam ter excesso de confiança, com o hábito de fazer “suposições silenciosas”, introduzir complexidade desnecessária (excesso de engenharia), fazer alterações de formatação sem foco e não ter critérios claros para verificação de sucesso. Este projeto aborda esses pontos problemáticos, destilando-os em uma estrutura minimalista, porém altamente controlável. CLAUDE.md Perfis. Ao introduzir quatro comportamentos principais - “pense antes de codificar”, “simplicidade em primeiro lugar”, “modificação cirúrgica” e “execução orientada por metas” - ele transforma instantaneamente a IA de um “codificador intuitivo” espontâneo em uma “execução orientada por metas” disciplinada e lógica. "Com a modificação cirúrgica e a execução orientada por metas, ela transforma instantaneamente as IAs de "codificadores intuitivos" espontâneos em "engenheiros de software avançados" disciplinados e lógicos. Ele transforma instantaneamente as IAs de "codificadores intuitivos" espontâneos em "engenheiros de software avançados" disciplinados e lógicos. Os desenvolvedores só precisam introduzir esse arquivo na base de código para reduzir significativamente o custo da revisão do código de IA, evitar efetivamente a cascata de erros e melhorar consideravelmente a qualidade geral do código e a eficiência do desenvolvimento do projeto.
Lista de funções
- Pense antes de codificarForçar as inteligências de IA a declarar explicitamente suas suposições de pensamento antes de escrever qualquer código. Se não tiver certeza ou encontrar vários caminhos de implementação, a IA apresentará proativamente as compensações ao desenvolvedor e as solicitará, eliminando completamente as suposições ruins autoinfligidas.
- Simplicidade forçada primeiroRestrições minimalistas na saída do código da IA. O excesso de engenharia é eliminado pela proibição explícita de que a IA gere funcionalidades adicionais que não sejam explicitamente solicitadas, camadas de abstração de uso único ou lógica redundante de tratamento de erros para cenários improváveis.
- Alterações cirúrgicasDefinir estritamente o escopo da modificação do código pela IA para garantir que ela toque apenas nas linhas de código necessárias para resolver o problema. Proibir a IA de refatorar módulos de código não danificados ou alterar a indentação e a formatação irrelevantes do código, de modo a manter perfeitamente o estilo de código existente do projeto.
- Execução orientada por metasExigir que a IA traduza instruções ambíguas em metas autoverificáveis. Antes e depois de modificar o código, a IA é forçada a escrever e executar casos de teste de forma autônoma, nunca parando até que os critérios de sucesso sejam atendidos, formando um loop automatizado completo de teste para correção.
- Altamente compatível e perfeitamente integradoCompatibilidade nativa Claude Code Ferramenta CLI que aproveita o nível do projeto
CLAUDE.mdsem a necessidade de configuração complexa do ambiente, pode ser globalmente eficaz na base de código atual. - Suporte à instalação automatizadaAlém de fornecer o download e a cópia de arquivos básicos, ele também oferece suporte à injeção de pacotes de habilidades com um clique no ambiente de desenvolvimento por meio de ferramentas modernas de gerenciamento e execução de pacotes, como npm, npx, bunx e assim por diante.
Usando a Ajuda
forrestchang/andrej-karpathy-skills O valor central do AI Code Assistant está em seu custo de acesso extremamente baixo e nos benefícios de alta restrição comportamental. Para que o AI Code Assistant seja realmente seu parceiro de engenharia confiável, leia o processo de instalação detalhado e o guia de operação dos principais recursos a seguir. Esse guia o ajudará a minimizar a incontrolabilidade da IA.
I. Processo detalhado de instalação e configuração
Dependendo do ambiente de desenvolvimento e das ferramentas que você estiver usando, este projeto oferece duas maneiras extremamente fáceis de instalá-lo. De qualquer forma, a essência é distribuir o arquivo de regras subjacente do projeto para o seu espaço de trabalho.
Maneira A: instalação automatizada a partir da linha de comando (altamente recomendada para usuários da CLI do Claude Code)
Se você já estiver usando um smartphone de código final compatível com o Skills Marketplace, poderá introduzir essas diretrizes com um único clique diretamente no Package Manager:
- Abra sua ferramenta de terminal (Terminal).
- Navegue até o diretório raiz de seu projeto de software de destino.
- Digite e execute o seguinte comando para a instalação global:
npx skills add https://github.com/forrestchang/andrej-karpathy-skills --skill karpathy-guidelines
(Observação: se estiver usando bun ou pnpm, pode substituir npx por bunx ou pnpm dlx). - Depois de instalado, o módulo de habilidades entrará em vigor automaticamente em seu backend, assumindo o fluxo de todos os comandos subsequentes que envolvem geração e refatoração de código.
Abordagem B: acesso nativo puramente manual (para todos os IDEs que suportam palavras de prompt do sistema em nível de projeto, como Cursor, Windsurf, VSCode, etc.)
Se você não precisar de ferramentas complexas de linha de comando ou quiser forçar a aplicação dessas regras em um IDE específico, a configuração manual é a abordagem mais transparente e confiável:
- Localização do diretório raiz do projetoAbra seu editor de código e vá para o diretório raiz do projeto que está desenvolvendo no momento.
- Criação de um arquivo de regrasCrie um novo arquivo Markdown em branco no diretório raiz, estritamente chamado
CLAUDE.md. Se você estiver usando o Cursor Ferramentas como.cursorrulesA lógica subjacente é totalmente interoperável. - Obter código-fonte: Visite a página inicial do projeto no GitHub
https://github.com/forrestchang/andrej-karpathy-skillsNão tenho certeza se consigo encontrar o depósito.CLAUDE.mdDocumento original. - Copiar e salvarSelecione o texto dos quatro princípios fundamentais no documento, copie-o, cole-o no arquivo que acabou de criar localmente e pressione Salvar. Pronto, sua IA foi submetida a uma nova lavagem cerebral e treinada.
II. demonstração da operação da função principal e do fluxo de desenvolvimento diário
Depois de instalado, a verdadeira mágica se reflete em seu diálogo interativo diário com a IA. Aqui estão sugestões e resultados esperados para quatro cenários comuns de desenvolvimento:
1) Possibilitando o “pense antes de codificar”: lidando com o desenvolvimento de requisitos ambíguos
- método operacionalQuando estiver desenvolvendo um novo recurso, não faça declarações extremamente rígidas e longas, apenas digite uma solicitação natural. Por exemplo, “Por favor, ajude-me a adicionar um recurso para exportar dados do usuário como um relatório do Excel”.”
- IA Mudança de comportamentoAntes desse documento, a IA teria introduzido bibliotecas de terceiros, escrito dezenas de linhas de código complexo e até mesmo se dado ao trabalho de consultar o banco de dados. Depois que a regra for introduzida, a IA imediatamente “pisará no freio” e responderá ao terminal com:“Para implementar a função de exportação, tenho as seguintes perguntas e suposições: 1. Supondo que somente os dados do usuário ativo no momento precisem ser exportados. 2. Posso perguntar se é permitido introduzir a função
xlsxou você está pedindo para usar um formato CSV nativo puro para reduzir as dependências? Por favor, confirme antes de eu começar a escrever.” - Sua operaçãoResposta curta: Uma resposta curta baseada nas opções listadas pela IA é suficiente. Essa confirmação de uma pergunta e uma resposta elimina a geração de código inválido na fonte.
2. praticar a “simplicidade em primeiro lugar”: evitar uma base de código em rápida expansão
- método operacional: Pergunta diária “Ajude-me a escrever uma função de formatação de tempo que converta carimbos de data/hora em AAAA-MM-DD.”
- IA Mudança de comportamentoAs IAs geralmente escrevem conversão de fuso horário, suporte a vários idiomas e até mesmo um conjunto completo de classes de processamento de tempo para demonstrar seus recursos. De acordo com a regra da “simplicidade em primeiro lugar”, a IA produzirá apenas algumas linhas da linguagem nativa
DateFunções simplificadas para a lógica de manipulação de objetos sem nenhum absurdo e extensões de interface além do esperado. - DicasSe você achar que a IA ainda é complicada de escrever, basta responder com a frase: “Revise a diretriz nº 2 (Simplicidade em primeiro lugar) e reduza suas 100 linhas de código para menos de 20 linhas”.”
3. experimentar a “modificação cirúrgica”: corrigir bugs muito rapidamente sem provocar conflitos de mesclagem
- método operacionalQuando um erro é relatado, você digita: “fix
auth.jsLinha 45: falha do programa devido a ponteiro nulo.” - IA Mudança de comportamentoIA: a IA agirá como um cirurgião experiente, identificando e usando apenas
?(operador de cadeia opcional) ouifEle não mudará a linha de destino porque ela não parece boa para você. Ele nunca ajustará a indentação da linha 10 porque ela não parece boa para você, nem refatorará a estrutura do código em torno dela por causa das chamadas “práticas recomendadas”. - Avaliação de ganhos: Isso permite que você execute
git diffAo revisar o código, o histórico de alterações visto é extremamente limpo e contém apenas a lógica central que resolve o problema.
4. impulsionar o “ciclo fechado de validação de metas”: garantia de confiabilidade automatizada
- método operacionalInsira uma diretiva de ordem superior: “Refatorar a lógica atual de carregamento do cache para exigir um princípio orientado por metas”.”
- IA Mudança de comportamentoIA: a IA desmontará automaticamente seus comandos difusos. Primeiro, ele encontrará ou escreverá um script de teste para a lógica de cache antiga e o executará uma vez para garantir que o teste seja aprovado; em seguida, começará a substituir o código subjacente e, quando terminar, executará novamente o teste de forma automática. Somente quando você vir a mensagem verde
PASSantes de informar a você: “Refatoração concluída, testes não degradados”. Esse fechamento do loop reduz a probabilidade de uma falha do sistema a um nível muito baixo.
III. técnicas avançadas de personalização
该 CLAUDE.md O documento é um excelente modelo de base que pode ser expandido de forma flexível e secundária com base nas especificações da equipe. Recomenda-se que, na parte inferior do documento, você adicione ### 5. 团队定制规范 (Team Customs) Módulo.
Por exemplo, você pode incluí-lo na parte inferior do documento:
“Todos os componentes devem usar o React Componentes funcionais com as respectivas definições de interface TypeScript.”
ou “É estritamente proibido introduzir caminhos absolutos diretamente no projeto. @/components/ a configuração do alias.”
Com essa configuração de sobreposição, você não apenas bloqueia o resultado comportamental da IA, mas também dá a ela um conhecimento das normas de negócios da equipe, tornando a IA realmente um superassistente indispensável para a sua equipe de desenvolvimento.
cenário do aplicativo
- Desenvolvimento mínimo de funções comerciais diárias
Ao desenvolver módulos de negócios totalmente novos, evite que a IA projete demais a arquitetura do sistema para demonstrar recursos. Exija que a IA atenda às reivindicações comerciais atuais com o código mínimo e mais simples para evitar incorrer em responsabilidades de manutenção desnecessárias. - Refatoração segura de grandes bases de código legadas
Aplicar cenários de “modificação cirúrgica” quando confrontados com bibliotecas grandes e não comentadas de código antigo. Certifique-se de que as inteligências de IA consertem apenas as falhas lógicas especificadas, sem danificar o frágil ecossistema de código legado e formatos especiais ao redor delas, para evitar que todo o sistema seja afetado. - Solução de problemas e correção precisa de bugs complexos
Ao se deparar com problemas difíceis de reproduzir, aplique o cenário de “eliminação de suposições silenciosas”. Deixe que a IA coloque na mesa todas as possíveis causas de falha e as suposições padrão do ambiente do sistema e, por meio da confirmação do alinhamento com o desenvolvedor, encontre imediatamente os focos do problema. - Revisão de código de alta qualidade e controle de qualidade
Como uma linha de referência para a revisão assistida por IA dentro da equipe. Antes que o agente de IA esteja pronto para enviar o código, ele aciona o “fechamento de validação de destino”, exigindo que ele seja acompanhado por casos de teste automatizados que possam ser aprovados para que a tarefa seja considerada concluída e para garantir a alta qualidade do código da ramificação principal.
QA
- Pergunta: O que é
forrestchang/andrej-karpathy-skills? Como ele é fundamentalmente diferente das palavras de alerta do sistema de IA normal?
Resposta: Este é um perfil de controle de comportamento de código aberto que destila a experiência dos principais especialistas em IA. Enquanto os prompts normais tendem a se concentrar no que a IA “sabe” (por exemplo, requisitos de pilha de tecnologia), esse arquivo se concentra em restringir a IA “como ela se comporta” (por exemplo, não esconda perguntas, não se exiba, não faça alterações extensas). Ele reformula os hábitos de trabalho das inteligências de IA a partir de uma perspectiva de psicologia comportamental. - Pergunta: Esse perfil só funciona com a ferramenta de linha de comando Claude Code? Ele funcionará para mim com o Cursor ou o GitHub Copilot?
Resposta: apesar de seu nomeCLAUDE.mdO Cursor foi projetado principalmente para o Claude Code, mas os princípios básicos do Markdown são completamente universais. Você pode copiar esses princípios diretamente na seção.cursorrulesou como um arquivo GitHub Copilot / ChatGPT As palavras-chave do sistema em nível de item a serem usadas são igualmente eficazes. - Pergunta: Se a IA ainda fizer a suposição silenciosa errada após a introdução do arquivo, como posso ajustá-la?
Resposta: como há alguma saída probabilística do LLM, se ocorrer uma violação, você pode simplesmente corrigi-la com severidade na caixa de diálogo: “Você violou o primeiro princípio em CLAUDE.md, por favor, saia do seu código e liste suas suposições para mim primeiro”. Esse tipo de crítica, com base em um arquivo de regras pré-existente, permite que o modelo maior corrija rapidamente sua ponderação de atenção subsequente. - PERGUNTA: Forçar a IA a pensar e perguntar antes de escrever o código reduzirá drasticamente a velocidade de geração do código?
Resposta: No curto prazo, é uma etapa extra na comunicação, mas é exatamente o que Karpathy enfatiza: “Afiar a faca não é o mesmo que cortar a madeira”, e é muito menos eficiente para uma IA gerar instantaneamente centenas de linhas de código com erros e fazer com que você passe duas horas solucionando-os do que parar e passar 10 segundos fazendo uma pergunta crítica. De modo geral, isso reduz drasticamente o tempo gasto com retrabalho e depuração de código, aumentando substancialmente a eficiência do desenvolvimento.





























