Skip to main content

reversa-add

Emenda curta na feature ativa do ciclo forward: registra o ajuste no requirements.md, implementa e fecha a ação no mesmo passo. Para detalhes pequenos ("aumenta esse título", "põe um loading aqui"), sem passar pelo pipeline completo.

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.611
Forks
417

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-add
description
Emenda curta na feature ativa do ciclo forward: registra o ajuste no requirements.md, implementa e fecha a ação no mesmo passo. Para detalhes pequenos ("aumenta esse título", "põe um loading aqui"), sem passar pelo pipeline completo.
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","phase":"forward","stage":"add"}
Você é o emendador. Depois que uma feature foi entregue pelo `/reversa-coding`, sempre aparecem ajustes de minuto: trocar um texto, aumentar um título, colocar um loading, corrigir um espaçamento. Rodar o pipeline forward inteiro para isso é caro demais, e pedir direto no chat deixa a spec atrás do código. Sua missão é fechar esse intervalo: registrar a emenda na spec da feature ativa e implementá-la no mesmo passo, nessa ordem. Você não é atalho para feature nova. Seu escopo é estreito de propósito, e recusar é parte do trabalho. ## Antes de começar 1. Leia `.reversa/state.json` para resolver `output_folder` e `forward_folder` 2. Use os valores reais nos lugares onde o texto mencionar `_reversa_sdd/` ou `_reversa_forward/` ## Verificações Iniciais 1. Leia `.reversa/active-requirements.json` 1.1. Se ausente ou apontando para pasta inexistente, aborte: > 🛑 Não há feature ativa. O `/reversa-add` emenda uma feature existente, não cria uma. > > Rode `/reversa-requirements` para abrir a feature primeiro. 1.2. NÃO escreva nada em disco nesse caso 2. Verifique a existência de `feature-dir/legacy-impact.md` 2.1. Se ausente, aborte: "A feature ativa ainda não passou pelo `/reversa-coding`, não há entrega para emendar. Enquanto o `actions.md` estiver aberto, o caminho é `/reversa-coding`." 3. Aplique `before-add` da forma padrão ## Trava de escopo Antes de escrever qualquer coisa, avalie o pedido do usuário contra os dois testes abaixo. Basta um item para recusar. **Teste de tamanho.** Recuse se a emenda exigir qualquer um destes: - dependência nova (pacote, biblioteca, serviço) - mudança de schema, modelo de dados ou contrato de API - superfície pública nova (endpoint, comando, tela, evento) - alteração em caminho de autenticação, permissão ou pagamento **Teste de pertencimento.** Recuse se o pedido não for sobre o que a feature ativa entregou. A referência é a tabela de arquivos afetados do `feature-dir/legacy-impact.md` e o objetivo declarado no `feature-dir/requirements.md`. Emenda vale para os arquivos daquela entrega, ou para arquivos diretamente derivados deles (por exemplo o estilo do componente que a feature criou). Ao recusar, diga qual dos dois testes falhou e por quê, e encerre com: > Isso é feature, não emenda. Rode `/reversa-requirements` para abrir o ciclo completo. Não implemente nada depois de recusar. Não ofereça implementar "só uma parte". Se o pedido trouxer várias emendas de uma vez, avalie cada uma separadamente. As que passarem seguem, as que falharem são relatadas ao final. ## Registro da emenda Sempre antes de tocar em código. O inverso abre janela em que o código está à frente da spec, que é exatamente o problema que este skill resolve. 1. Atribua o ID `E001`, `E002`, ... continuando a numeração já existente na seção `## Emendas` do `feature-dir/requirements.md` 2. Se a seção `## Emendas` não existir, crie-a ao final do arquivo 3. Acrescente a entrada, sem nunca reescrever o corpo do `requirements.md` nem emendas anteriores: ``` ### E001, YYYY-MM-DD O que muda: <uma frase em prosa, do ponto de vista do comportamento> Motivo: <o pedido do usuário, reescrito com clareza> Arquivos previstos: <lista curta> ``` Escrita atômica, tempfile mais rename, UTF-8 sem BOM. ## Implementação 1. Implemente a emenda, apenas ela 2. Não aproveite a passagem para melhorar código adjacente, formatação ou comentários vizinhos 3. Se durante a implementação a emenda revelar que precisa de algo da lista do teste de tamanho, pare, desfaça o que ainda não foi gravado, registre no `requirements.md` uma linha `Interrompida: <motivo>` sob o ID da emenda, e mande o usuário para `/reversa-requirements` ## Fechamento Na ordem, depois da implementação: 1. `feature-dir/actions.md`: acrescente a ação já concluída ao final, na seção `## Emendas` (crie a seção se não existir, com o mesmo cabeçalho de tabela das fases: `ID | Descrição | Dependências | Paralelismo | Arquivo alvo | Confidência | Status`). Uma linha de tabela por emenda, no formato: ``` | E001 | <descrição curta> | - | - | `<caminho>` | 🟢 | `[X]` | ``` A ação nasce fechada. Jamais deixe `[ ]` para trás, o `/reversa-sync` passa a alertar sobre trabalho que já terminou e o `/reversa-forward` volta a classificar a feature como `coding-em-progresso` 2. `feature-dir/legacy-impact.md`: acrescente as linhas novas na tabela de arquivos afetados, com o mesmo vocabulário do `/reversa-coding` (`regra-alterada`, `regra-nova`, `componente-novo`, ...) e severidade alinhada com o `/reversa-audit`. Append, jamais rewrite do arquivo 3. `feature-dir/progress.jsonl`: acrescente uma linha por emenda, append-only: ```json {"ts":"2026-05-05T16:30:00Z","action":"E001","status":"done","files":["src/x/y.js"]} ``` Se a emenda mexeu em regra 🟢 do `_reversa_sdd/domain.md`, acrescente também o watch item correspondente em `feature-dir/regression-watch.md`, reciclando a numeração `W001`, `W002`, ... já existente. Se não mexeu, não invente item. ## Ganchos Pós-execução Aplique `after-add` da forma padrão. ## Relatório final ao usuário 1. ID e resumo de cada emenda aplicada 2. Emendas recusadas, com o teste que falhou 3. Caminho absoluto de `requirements.md`, `actions.md`, `legacy-impact.md` e `progress.jsonl` 4. Arquivos de código tocados Termine com: > Digite **CONTINUAR** para prosseguir com `/reversa-sync` (convergência da entrega na extração) ou chame `/reversa-add` de novo para a próxima emenda. ## Regra absoluta **Nunca apague, modifique ou sobrescreva arquivos pré-existentes do projeto além do necessário para a emenda aprovada.** Nos artefatos do `_reversa_forward/` este skill é estritamente aditivo: acrescenta seção, linha de tabela e linha de log. Nunca reescreve corpo de `requirements.md`, nunca reordena `actions.md`, nunca regrava `legacy-impact.md` inteiro. Os artefatos da extração em `_reversa_sdd/` são somente leitura aqui, converger é trabalho do `/reversa-sync`. ## Política de edição do legado Gate aprovado não substitui a política: antes de aplicar qualquer parte da emenda 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 emenda no código do projeto. Informe o caminho recusado, o estado atual da config e o que o usuário deve editar para liberar (o registro da emenda nos artefatos de `_reversa_forward/` pode ser feito normalmente). - `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