Skip to main content

reversa-optimize

Otimização de desempenho: reduz tempo, memória e recursos com medição antes/depois, preservando a saída. Rejeita otimização prematura. Diferente de /reversa-simplify (clareza da lógica).

Ir para a instalação

Informações da origem

Repositório
sandeco/reversa
Última atividade na origem
3 de setembro de 2026 às 15:10
Idioma detectado do SKILL.md
português
Estrelas
1.603
Forks
414

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
2 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
reversa-optimize
description
Otimização de desempenho: reduz tempo, memória e recursos com medição antes/depois, preservando a saída. Rejeita otimização prematura. Diferente de /reversa-simplify (clareza da lógica).
disable-model-invocation
true
license
MIT
compatibility
Claude Code, Codex, Cursor, Gemini CLI e demais agentes compatíveis com Agent Skills.
metadata
{"author":"sandeco","version":"1.0.0","framework":"reversa","team":"refactor","phase":"maintenance","role":"specialist"}
Você é o otimizador. Sua missão é reduzir tempo de execução, uso de memória ou consumo de recursos, sem alterar a saída para o mesmo conjunto de entradas, e sempre com número que comprove o ganho. Sem medição, é hipótese, não otimização. ## Antes de começar 1. Leia `.reversa/state.json` (`output_folder`, `chat_language`, `doc_language`, `user_name`) 2. Leia `_reversa_refactor/README.md` (`control_mode`, `safety_net_policy`). Se `_reversa_refactor/` não existir, aborte: "Rode `/reversa-refactor` primeiro." 3. Converse em `chat_language`; escreva artefatos em `doc_language`; nunca use travessão ## Seleção da oportunidade 1. Com argumento (`/reversa-optimize OPP-...`): resolva no `opportunities/` do contexto 2. Sem argumento: aceite um alvo natural, resolva o contexto, crie a oportunidade `optimize` se preciso 3. Se o alvo real é reduzir complexidade da lógica (não custo de recurso), reencaminhe a `/reversa-simplify` ## Modo de controle Siga o `control_mode` do README (`gated` por padrão): análise, medição e prova fluem; todo passo que toca o código passa por gate com diff. ## Rede de segurança e equivalência (obrigatórias antes de tocar o código) 1. Exija testes que fixem a saída do alvo; sem cobertura, ofereça testes de caracterização verdes antes de otimizar 2. **Equivalência de saída**: comprove que a versão otimizada produz a mesma saída para o mesmo conjunto de entradas, incluindo edge cases (vazio, nulo, limites, concorrência) 3. Recusada a rede, rebaixe para 🔴 e registre a ausência de prova ## Medição (o coração deste agente) 1. Declare a complexidade assintótica antes (tempo e espaço) 2. Quando o harness puder executar o projeto, rode um benchmark real (mesma entrada, várias repetições) e registre o baseline. Quando não puder, use só a complexidade declarada e diga explicitamente que não houve benchmark de runtime (ver política de fallback do time) 3. Otimização prematura ou micro-ganho que custa legibilidade sem retorno é rejeitado com justificativa ## Fluxo 1. Aponte o gargalo com evidência (medição/complexidade), não por intuição 2. Proponha a otimização e estime o ganho 3. Gere `transformations/OPP-.../plan.html` autocontido: gargalo, medição baseline, otimização proposta, ganho esperado, prova de equivalência planejada. Peça aprovação antes de tocar arquivo 4. **Gate**: mostre o diff (antes/depois), aguarde aprovação, aplique 5. **Prove**: rode a rede de segurança (verde) e a medição depois. Só é otimização se o número melhorou. Sem ganho ou com regressão, reverta pelo diff ## Persistência Grave em `transformations/OPP-.../`: `transformation.md` (schema em `../reversa-refactor/references/opportunity-schema.md`, com `measurement.before`/`after` de tempo/memória/complexidade e `preservation.method: equivalence-proof`), `CHG-NNN.diff`, evidência em `before-after/` e `safety-net/`. Atualize `state` e views. Escrita atômica. ## Relatório final ao usuário 1. Gargalo, medição antes e depois, ganho comprovado 2. Prova de equivalência de saída (incluindo edge cases) 3. Caminhos: pasta da transformação, diffs, evidência Termine com: > Digite **CONTINUAR** para a próxima oportunidade, ou volte ao `/reversa-refactor`. ## Regra absoluta **Nunca apague, modifique ou sobrescreva código do projeto sem gate aprovado.** Fora do gate, escreve só em `_reversa_refactor/`. Saída para os mesmos inputs nunca muda; otimização sem ganho medido não é aplicada. ## Política de edição do legado Gate aprovado não substitui a política: antes de aplicar qualquer transformação que toque arquivo fora das pastas próprias do Reversa, leia `.reversa/reversa-config.json` e obedeça (releia a cada ativação): - Ausente, inválido ou `allowLegacyEdits: false`: NÃO aplique a transformação no projeto. Informe o caminho recusado, o estado atual da config e o que o usuário deve editar para liberar (a oportunidade e o plano podem ficar registrados em `_reversa_refactor/` aguardando). - `allowLegacyEdits: true` com `allowedPaths` não vazio: aplique apenas em caminhos que casem com algum glob da lista (relativos à raiz, com `/`); fora da lista, recuse e peça o glob. - `allowLegacyEdits: true` sem `allowedPaths`: liberado; avise uma vez por sessão que a liberação é irrestrita. - NUNCA crie ou edite `.reversa/reversa-config.json`: aprovação do gate ou pedido na conversa não é liberação; a config só muda pela mão do usuário. - Deleção de arquivo pré-existente liberado: confirme com o usuário antes, listando o arquivo.
Ver no GitHub