Pular para o conteúdo
Skillpedia
Código em geral70 mil · #1742

refactor

Faz seu agente reestruturar e simplificar código existente. É útil quando você precisa modernizar ou melhorar a organização do código.

O que ela faz

Esta ferramenta ajuda a organizar e melhorar seu código. Ela entende o que você quer mudar, analisa como o código está conectado e planeja as alterações com segurança para evitar erros.

Quando usar

  • ✓Quando você quer simplificar um trecho de código complicado.
  • ✓Quando precisa extrair uma parte do código para um novo módulo.
  • ✓Quando quer modernizar ou reestruturar um projeto antigo.

Exemplo do que pedir para a IA

“Refatore a função de login para usar o novo padrão de autenticação.”

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/code-yeongyu/oh-my-openagent/blob/dev/packages/shared-skills/skills/refactor/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/code-yeongyu/oh-my-openagent/blob/dev/packages/shared-skills/skills/refactor/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A IA primeiro entende seu pedido e analisa todo o seu código para ver como as partes se relacionam. Depois, ela cria um plano detalhado e faz as mudanças passo a passo, verificando se tudo continua funcionando.

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 code-yeongyu/oh-my-openagent --skill refactor

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/packages/shared-skills/skills/refactor/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.

export const REFACTOR_TEMPLATE = `# Comando Inteligente de Refatoração

Uso

``` /refactor <alvo-da-refatoracao> [--escopo=<arquivo|modulo|projeto>] [--estrategia=<segura|agressiva>]

Argumentos: alvo-da-refatoracao: O que refatorar. Pode ser: - Caminho do arquivo: src/auth/handler.ts - Nome do símbolo: "Classe AuthService" - Padrão: "todas as funções que usam API depreciada" - Descrição: "extrair lógica de validação para um módulo separado"

Opções: --escopo: Escopo da refatoração (padrão: modulo) - arquivo: Apenas um arquivo - modulo: Escopo de módulo/diretório - projeto: Base de código inteira

--estrategia: Tolerância a risco (padrão: segura) - segura: Conservadora, cobertura máxima de testes exigida - agressiva: Permite mudanças mais amplas com cobertura adequada ```

O Que Este Comando Faz

Realiza refatoração inteligente e determinística com total conhecimento da base de código. Diferente de busca e substituição cega, este comando:

  1. Entende sua intenção - Analisa o que você realmente quer alcançar
  2. Mapeia a base de código - Constrói um mapa de código definitivo antes de tocar em qualquer coisa
  3. Avalia o risco - Avalia a cobertura de testes e determina a estratégia de verificação
  4. Planeja meticulosamente - Cria um plano detalhado com o agente de Planejamento
  5. Executa com precisão - Refatoração passo a passo com LSP e AST-grep
  6. Verifica constantemente - Executa testes após cada mudança para garantir zero regressão

FASE 0: PORTÃO DE INTENÇÃO (PASSO INICIAL OBRIGATÓRIO)

ANTES DE QUALQUER AÇÃO, classifique e valide a solicitação.

Passo 0.1: Analisar Tipo da Solicitação

Sinal Classificação Ação
Arquivo/símbolo específico Explícito Prosseguir para análise da base de código
"Refatorar X para Y" Transformação clara Prosseguir para análise da base de código
"Melhorar", "Limpar" Aberto DEVE perguntar: "Qual melhoria específica?"
Escopo ambíguo Incerto DEVE perguntar: "Quais módulos/arquivos?"
Contexto ausente Incompleto DEVE perguntar: "Qual o resultado desejado?"

Passo 0.2: Validar Entendimento

Antes de prosseguir, confirme:

  • O alvo está claramente identificado
  • O resultado desejado é compreendido
  • O escopo está definido (arquivo/módulo/projeto)
  • Os critérios de sucesso podem ser articulados

Se QUALQUER um dos itens acima for incerto, FAÇA UMA PERGUNTA DE ESCLARECIMENTO:

``` Quero ter certeza de que entendi corretamente o objetivo da refatoração.

O que entendi: [interpretação] Sobre o que estou incerto: [ambiguidade específica]

Opções que vejo:

  1. [Opção A] - [implicações]
  2. [Opção B] - [implicações]

Minha recomendação: [sugestão com justificativa]

Devo prosseguir com [recomendação], ou você prefere de outra forma? ```

Passo 0.3: Criar Tarefas Iniciais

IMEDIATAMENTE após entender a solicitação, crie tarefas:

``` TodoWrite([ {"id": "phase-1", "content": "FASE 1: Análise da Base de Código - iniciar agentes de exploração paralelos", "status": "pendente", "priority": "alta"}, {"id": "phase-2", "content": "FASE 2: Construir Mapa de Código - mapear dependências e zonas de impacto", "status": "pendente", "priority": "alta"}, {"id": "phase-3", "content": "FASE 3: Avaliação de Testes - analisar cobertura de testes e estratégia de verificação", "status": "pendente", "priority": "alta"}, {"id": "phase-4", "content": "FASE 4: Geração de Plano - invocar agente de Planejamento para plano de refatoração detalhado", "status": "pendente", "priority": "alta"}, {"id": "phase-5", "content": "FASE 5: Executar Refatoração - passo a passo com verificação contínua", "status": "pendente", "priority": "alta"}, {"id": "phase-6", "content": "FASE 6: Verificação Final - suíte completa de testes e verificação de regressão", "status": "pendente", "priority": "alta"} ]) ```


FASE 1: ANÁLISE DA BASE DE CÓDIGO (EXPLORAÇÃO PARALELA)

Marque phase-1 como em_progresso.

1.1: Iniciar Agentes de Exploração Paralelos (EM SEGUNDO PLANO)

Execute TODOS estes simultaneamente usando `call_omo_agent`:

``` // Agente 1: Encontrar o alvo da refatoração call_omo_agent( subagent_type="explore", run_in_background=true, prompt="Encontre todas as ocorrências e definições de [ALVO]. Relatar: caminhos de arquivo, números de linha, padrões de uso." )

// Agente 2: Encontrar código relacionado call_omo_agent( subagent_type="explore", run_in_background=true, prompt="Encontre todo o código que importa, usa ou depende de [ALVO]. Relatar: cadeias de dependência, grafos de importação." )

// Agente 3: Encontrar padrões semelhantes call_omo_agent( subagent_type="explore", run_in_background=true, prompt="Encontre padrões de código semelhantes a [ALVO] na base de código.

…

Perguntas frequentes

O que significa 'refatorar'?

Refatorar é reorganizar o código existente sem mudar o que ele faz, apenas para torná-lo mais limpo, eficiente ou fácil de entender.

Como a IA garante que não vai quebrar nada?

Ela analisa a cobertura dos testes existentes e roda os testes após cada pequena mudança para garantir que nada foi quebrado (regressão).

Posso pedir para refatorar um arquivo inteiro ou só uma parte?

Sim, você pode especificar se a refatoração deve ser em um arquivo, em um módulo (diretório) ou no projeto inteiro.

Detalhes

Descrição original do autor

Guides a refactor, cleanup, or restructure with the right decomposition. Use when the user asks to refactor, simplify, extract, or modernize code.

repo: code-yeongyu/oh-my-openagent

Popularidade

Estrelas no GitHub
70 mil
Posição no ranking
#1742
Licença
NOASSERTION
Atualizada em
16/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas