124 pontos por xguru 22 일 전 | 7 comentários | Compartilhar no WhatsApp
  • Um projeto open source em que Addy Osmani, diretor de IA no Google Cloud, empacota workflows no nível de engenheiros seniores como skills estruturadas para resolver o problema de agentes de codificação com IA pularem especificação, testes e revisão de segurança
  • Composto por 7 comandos slash e 19 skills que cobrem todo o ciclo de vida de desenvolvimento (definição → planejamento → construção → verificação → revisão → deploy)
    • /spec definir o que será construído: "especificação antes do código"
    • /plan planejar como implementar: "em tarefas atômicas pequenas"
    • /build implementação incremental: "apenas um slice por vez"
    • /test provar que funciona: "teste é evidência"
    • /review gate de qualidade antes do merge: "melhorar a saúde do código"
    • /code-simplify simplificar o código: "clareza acima de esperteza"
    • /ship deploy em produção: "quanto mais rápido, mais seguro"
  • A skill apropriada é ativada automaticamente conforme o contexto. Ex.: ao projetar uma API, api-and-interface-design; ao implementar UI, frontend-ui-engineering etc.
  • Princípios centrais da cultura de engenharia do Google, como Hyrum's Law, Beyonce Rule, Chesterton's Fence, Shift Left etc., são incorporados diretamente ao workflow de cada etapa

Lista completa das 19 skills

  • Define (clarear o que será construído)

    • idea-refine: estrutura pensamento divergente/convergente para transformar ideias vagas em propostas concretas
    • spec-driven-development: criação de PRD antes de escrever código, cobrindo objetivos, comandos, estrutura, estilo de código, testes e limites
  • Plan (decomposição)

    • planning-and-task-breakdown: decompõe a especificação em tarefas pequenas e verificáveis, com critérios de aceitação e ordem de dependências
  • Build (escrita de código)

    • incremental-implementation: implementa, testa, valida e faz commit em fatias verticais finas, com suporte a feature flags e mudanças amigáveis a rollback
    • test-driven-development: aplica Red-Green-Refactor, pirâmide de testes (80/15/5), DAMP over DRY e a Beyonce Rule
    • context-engineering: fornece ao agente a informação certa no momento certo (arquivos de regras, empacotamento de contexto, integração MCP)
    • frontend-ui-engineering: arquitetura de componentes, design system, gerenciamento de estado, design responsivo e acessibilidade WCAG 2.1 AA
    • api-and-interface-design: design contract-first, Hyrum's Law, One-Version Rule, semântica de erros e validação de limites
  • Verify (provar que funciona)

    • browser-testing-with-devtools: dados de runtime em tempo real via Chrome DevTools MCP (inspeção do DOM, logs de console, rastros de rede, profiling de performance)
    • debugging-and-error-recovery: triagem em 5 etapas (reproduzir → localizar → reduzir → corrigir → proteger), com regra de stop-the-line
  • Review (gate de qualidade antes do merge)

    • code-review-and-quality: revisão em 5 eixos, tamanho de mudança (~100 linhas), rótulos de severidade (Nit/Optional/FYI) e critérios de velocidade de revisão
    • code-simplification: aplica Chesterton's Fence, Rule of 500 e reduz complexidade mantendo o comportamento exato
    • security-and-hardening: prevenção do OWASP Top 10, padrões de autenticação, gestão de segredos, auditoria de dependências e sistema de limites em 3 camadas
    • performance-optimization: abordagem de medir primeiro, metas de Core Web Vitals, workflow de profiling e análise de bundle
  • Ship (entrega)

    • git-workflow-and-versioning: desenvolvimento baseado em trunk, commits atômicos, tamanho de mudança (~100 linhas) e padrão commit-as-savepoint
    • ci-cd-and-automation: Shift Left, Faster is Safer, feature flags e pipeline com quality gates
    • deprecation-and-migration: mentalidade de código-como-dívida, formas obrigatórias/recomendadas de descontinuação e remoção de código zumbi
    • documentation-and-adrs: Architecture Decision Records, documentação de API e critérios para documentação inline (documentar o "por quê")
    • shipping-and-launch: checklist pré-lançamento, ciclo de vida de feature flags, rollout gradual, procedimentos de rollback e configuração de monitoramento

Personas do agente

  • 3 personas especialistas pré-configuradas para revisão direcionada
    • code-reviewer: perspectiva de engenheiro staff sênior, com revisão de código em 5 eixos baseada no critério "está no nível para aprovação por um staff engineer?"
    • test-engineer: perspectiva de especialista em QA, com estratégia de testes, análise de cobertura e padrão Prove-It
    • security-auditor: perspectiva de engenheiro de segurança, com detecção de vulnerabilidades, modelagem de ameaças e avaliação OWASP

Checklists de referência

  • 4 materiais de referência rápida consultados pelas skills quando necessário
    • testing-patterns.md: estrutura de testes, nomenclatura, mocking, exemplos de React/API/E2E e antipadrões
    • security-checklist.md: checagens antes de commit, autenticação, validação de entrada, headers, CORS e OWASP Top 10
    • performance-checklist.md: metas de Core Web Vitals, checklist de frontend/backend e comandos de medição
    • accessibility-checklist.md: navegação por teclado, leitor de tela, design visual, ARIA e ferramentas de teste

Princípios de design das skills

  • Processo, não prosa: as skills são workflows seguidos pelo agente, com etapas, checkpoints e critérios de término, e não documentos de referência
  • Prevenção de racionalização: cada skill incorpora desculpas comuns usadas pelo agente para pular etapas ("vou adicionar testes depois") e a lógica de refutação correspondente
  • Verificação não é negociável: toda skill termina com requisitos de evidência (testes aprovados, saída de build, dados de runtime); "parece que funcionou" não basta
  • Divulgação progressiva: SKILL.md é o ponto de entrada, e as referências de suporte só são carregadas quando necessário para minimizar o uso de tokens

Como instalar (ferramentas compatíveis)

  • Claude Code (recomendado): /plugin marketplace add addyosmani/agent-skills e depois /plugin install agent-skills@addy-agent-skills
    • Desenvolvimento local: após git clone, execute claude --plugin-dir /path/to/agent-skills
  • Cursor: copie qualquer SKILL.md para .cursor/rules/ ou referencie o diretório skills/ inteiro
  • Gemini CLI: gemini skills install https://github.com/addyosmani/agent-skills.git
  • Windsurf: adicione o conteúdo das skills à configuração de rules do Windsurf
  • GitHub Copilot: use as definições de agente em agents/ como personas do Copilot e o conteúdo das skills em .github/copilot-instructions.md
  • Codex e outros agentes: como as skills são Markdown comum, são compatíveis com qualquer agente que suporte system prompts ou arquivos de instruções

7 comentários

 
xguru 22 일 전

Ultimamente, parece que virou moda divulgar seus próprios conjuntos de skills.

Como no fim das contas são só arquivos Markdown, não é necessário adotar tudo do jeito que está.
Quanto mais coisas você coloca, maior fica apenas o consumo de tokens.
É melhor dizer para o meu agente: analise isso e pegue só o que for necessário.

É assim que você vai construindo o seu próprio harness.

 
thestackai 22 일 전

Concordo. Acho que essa é a melhor forma de lidar com a enxurrada de projetos open source.

 
yangeok 17 일 전

Parece ser algo como o Speckit.

 
blacksocks 20 일 전

Recebemos a orientação interna para tentar desenvolver apenas com vibe coding, então apliquei várias coisas aqui e ali, mas quando fui fazer de fato percebi que excelentes habilidades de desenvolvimento não garantem necessariamente alta qualidade.. Ao contrário, parece que o ponto central é a capacidade de revisar e entender o código gerado pela IA. Talvez seja a ironia de que, quanto melhores ficam as ferramentas, mais importante se torna a “capacidade de ler e julgar”.

 
ragingwind 22 일 전

Líder da equipe do Google Chrome, Addy Osmani, mudou de cargo para Director, Google Cloud AI.

 
xguru 22 일 전

Eita, quando foi que mudaram? Eu tinha continuado achando que era assim. Já corrigi.

 
ragingwind 22 일 전

Agora, a esta altura, a única pessoa que conheço no time do Chrome é o Paul Kinlan (líder de DevRel do Chrome). Como o tempo passa.