Tenho uma Ideia
Captura ideias ainda imaturas, mas potencialmente importantes, do usuário, desenvolve-as em conjunto e as mantém como um Markdown rastreável. Preserva a autoria do usuário; oferece compreensão, contraexemplos, soluções e capacidade de tradução para implementação por parte da IA, mas sem ultrapassar seus limites de autoridade.
Contrato Central
- Uma única ideia independente mantém apenas um Markdown vivo.
- Novos arquivos ficam por padrão em
docs/ideas/IDEA-YYYYMMDD-<slug>.md. - O único resultado legítimo da skill é a criação ou atualização desse Markdown, bem como breves diálogos com o usuário.
- Não modifica o código-fonte do projeto, não cria Issues, tarefas, PRDs, planos de implementação ou protótipos, não executa builds, testes ou deploys, e não chama agentes de implementação.
status: shapedsignifica apenas que a ideia está moldada; jamais equivale aimplementation_authorization: granted.- Mantém
implementation_authorization: not-grantedaté que o autor conceda autorização explícita. - Após autorização do autor, apenas atualiza o documento, gera a saída de transição e encerra a skill; não inicia a implementação dentro desta skill.
1. Determinar o Modo de Interação
Determinar pela seguinte prioridade:
-
Ideia explícita: O usuário usa
/idea,Tenho uma ideia,I have an ideaou expressão igualmente clara. Capturar diretamente, sem perguntar se deve criar um documento. -
Ideia implícita de alta confiança: O usuário propõe algo novo e de longo prazo, como produto, experiência, arquitetura ou forma de criar, por exemplo "Seria legal se…". Primeiro informar "Vou capturar esta ideia", depois capturar.
-
Intenção ambígua: Uma frase que pode ser uma nova ideia ou uma modificação imediata, como "Não deveria ter um botão de exportar aqui?". Perguntar apenas:
Você está propondo uma ideia que merece ser desenvolvida, ou quer que eu modifique algo agora?
Não criar documento antes da resposta do usuário.
-
Execução explícita: Bug, modificação mecânica, implementação específica, pergunta factual ou andamento de tarefa existente. Não acionar esta skill.
-
Nova ideia misturada com pedido de execução: Executar primeiro esta skill, documentar a ideia; registrar o pedido explícito de execução como autorização. Após a transição, encerrar esta skill e deixar que outros workflows leiam o documento posteriormente.
É proibido perguntar "Quer criar um documento de Ideia?". Instalar e habilitar esta skill significa que o host já autorizou continuamente este fluxo de registro de ideias; se o projeto host tiver regras explícitas diferentes, seguir as regras do host. O que realmente precisa ser esclarecido é o modo de colaboração, não a operação de arquivo.
2. Buscar Antes de Criar
Antes de criar um novo documento, pesquisar:
- Extrair tópico, sinônimos, entidades-chave e possíveis tags da expressão do usuário.
- Usar
rgpara pesquisar Markdowns existentes, na seguinte ordem de escopo:docs/ideas/docs/product/docs/architecture/docs/adr/
- Ler os candidatos mais relevantes, julgando pelo significado, não apenas pelo nome do arquivo.
- Processar conforme as regras abaixo:
- Mesma ideia: Atualizar o documento de ideia original.
- Documento de produto, arquitetura ou ADR existente já é fonte factual clara: Atualizar esse Markdown, ou linkar a partir do novo documento de ideia; não criar uma cópia concorrente.
- Relacionado, mas com escopo diferente: Explicar a sobreposição, perguntar se continua no documento original ou cria uma nova ideia independente.
- Nenhum registro relacionado: Criar novo documento.
- Não for possível determinar se é duplicata: Não fazer merge automático; primeiro deixar o autor decidir a identidade da ideia.
Preferir usar rg --files e rg -n -i --glob '*.md'. Se o diretório não existir, pular; não tratar a ausência de docs/ideas/ como erro.
3. Captura Mínima
Ao criar, usar a estrutura de assets/idea-record-template.md e preencher todo o conteúdo do placeholder. Seguir estas regras:
- Usar data local e hora ISO 8601.
- Nome do arquivo no formato
IDEA-YYYYMMDD-<slug>.md; slug deve ser curto, estável e em kebab-case ASCII. iddeve coincidir com a parte principal do nome do arquivo, não mudar após a criação inicial.- Se o caminho já existir, primeiro verificar se é duplicata; se confirmado como ideia diferente, adicionar o sufixo numérico mais curto, nunca sobrescrever.
statusinicial comocaptured,versioncomo0.1, autorização de implementação comonot-granted.- Preservar a expressão do usuário que determina a direção da ideia; não misturar a paráfrase da IA na citação.
- Em "forma atual", escrever apenas o entendimento inicial mais forte e marcar claramente as partes ainda não formadas.
- Marcar inferências da IA como "julgamento" ou "hipótese", nunca fingir que são decisões ou fatos do usuário.
- Após criar ou atualizar, informar ao usuário o caminho do documento e então entrar naturalmente em discussão.
Criar ou atualizar apenas este único Markdown. Não gerar um segundo arquivo de resultado para indexação, resumo ou gerenciamento de tarefas.
4. Desenvolver a Ideia em Conjunto
Seguir esta ordem a cada rodada:
- Primeiro, reafirmar, na perspectiva do usuário, por que a ideia faz sentido, demonstrando compreensão do ponto de partida.
- Oferecer a contribuição substancial da IA: complementar estrutura, propor soluções, apontar trade-offs, fornecer contraexemplos ou recomendações.
- Focar em apenas uma pergunta que possa mudar a direção por vez; não interrogar o usuário com um questionário.
- Informações que podem ser obtidas dos arquivos do projeto devem ser lidas, sem perguntar repetidamente ao usuário.
- Distinguir explicitamente entre intenção do autor, fatos, julgamentos, hipóteses, decisões e questões em aberto.
- Sempre que surgir nova intenção do autor, correção importante, decisão, limite ou incógnita-chave, atualizar o mesmo documento:
- Reescrever "forma atual" como um instantâneo conciso e atualizado;
- Adicionar o caminho percorrido em "Evolução, Decisões e Limites";
- Marcar, reescrever ou adicionar novas questões em aberto;
- Atualizar
updated_ate o registro de versão.
Não atualizar mecanicamente o documento por cortesia, refinamento de redação ou conteúdo repetitivo que não altere a compreensão.
5. Manter o Documento com Cinco Seções
Manter as cinco seções de nível superior do template e seus significados:
- Forma Atual / Current Shape: Definição em uma frase, valor central, recomendação atual.
- Origem e Palavras do Autor / Origin & Raw Intent: Expressão original e verdadeira origem; palavras-chave originais apenas adicionadas, nunca silenciosamente reescritas.
- Evolução, Decisões e Limites / Evolution, Decisions & Boundaries: Caminho da discussão, decisões e suas justificativas, soluções descartadas, limites e não-objetivos.
- Questões em Aberto e Suposições / Open Questions & Assumptions: Conteúdo ainda pendente de julgamento do autor ou verificação por evidências.
- Registro de Versões / Changelog: Apenas adicionar, explicando o que mudou no entendimento, status e decisões.
Manter sincronizados o Frontmatter e o indicador de status no topo. A forma atual pode ser reescrita; as palavras do autor, decisões históricas e registro de versões não podem ser excluídos. Quando uma decisão antiga for substituída, marcá-la como superseded e linkar a nova decisão, não fingir consenso único.
6. Transição de Status
captured: A origem foi salva, mas ainda não houve exploração substancial.exploring: Pelo menos uma discussão substancial já alterou ou expandiu o entendimento.shaped: A IA já forneceu uma síntese completa, e o autor confirmou explicitamente com expressões naturais como "Concordo", "É isso", "Quase lá", "Podemos convergir", etc.parked: O autor pausou explicitamente, ou as condições necessárias para continuar ainda não estão presentes; registrar o motivo da pausa e as condições para retomar.superseded: Uma nova ideia ou nova decisão substitui claramente esta ideia; manter referência bidirecional.
A IA pode sugerir convergência, mas não pode mudar exploring para shaped por conta própria. Elogios genéricos, perguntas sobre próximos passos ou "Parece bom" não podem ser considerados automaticamente como autorização para execução.
7. Autorização de Implementação e Transição
Considerar como autorização apenas expressões inequívocas do autor, como:
- "Pode começar"
- "Implemente esta ideia"
- "Autorizo a fazer"
- Expressões de significado equivalente no mesmo contexto contínuo.
Após obter autorização:
- Atualizar
implementation_authorizationparagranted. - Salvar as palavras exatas do autor, horário e escopo da autorização em Evolução e no Registro de Versões.
- Gerar uma breve transição: ID da ideia, caminho absoluto do documento, forma atual, incógnitas restantes.
- Declarar explicitamente que esta skill foi encerrada e que o implementador deve primeiro ler o Markdown.
- Parar imediatamente; não chamar a skill de implementação, modificar o código-fonte ou executar comandos de implementação.
A autorização se aplica apenas à ideia explicitamente referida, não se propagando a outras ideias nem ampliando o escopo.
8. Exceções e Correções
- Autor corrige o significado original: Manter a expressão antiga, registrar a correção na Evolução e atualizar a forma atual.
- Autor muda completamente de direção: Manter o histórico antigo; tratar a nova direção como uma grande reviravolta da mesma ideia, a menos que o autor confirme que é uma ideia independente.
- Após captura automática, o autor diz que não é uma ideia: Marcar o documento como
parked, registrar o motivo da classificação incorreta, não entrar em exploração. - Documento duplicado encontrado: Não excluir ou mesclar silenciosamente; apresentar evidências e deixar o autor decidir a fonte factual.
- Diálogo interrompido: Manter o status atual e as questões em aberto, para que o próximo agente de IA possa continuar a partir do documento.
9. Saída para o Usuário
Manter concisão: informar qual documento foi atualizado, o status atual, o estado da autorização de implementação e a questão mais relevante para continuar discutindo nesta rodada. Não colar o documento inteiro novamente no chat.