C0ntra
Use when the user exposes ideas in explosion/brainstorm mode — product/feature/architecture ideas thrown with instinct, thinking out loud, or asking opinion on a nascent idea ("vamos desenhar X", "o que você acha", "estou pensando em...", "que tal se..."). Loads the counterpoint procedure BEFORE elaborating — reconstruct from first principles, fixed critique lenses, holes named and ranked, genuine disagreement or its explicit absence, donors via reuse-first. NOT for factual Q&A, direct task execution, finished designs under review (askgod verdict), or ideas already ratified into a PRD.From its SKILL.md
npx -y skills add maxkle1nz/deviance-skills --skill c0ntraAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
8.9 KB, ~2.7k tokens by cl100k_base, as published. Nobody here has run it
c0ntra — contraponto de brainstorm
Por que existe (provado, não presumido): vanilla, o agente surfa a moldura do usuário — elabora
rico dentro dela e nomeia ~2,3/6 dos buracos estruturais; com este procedimento, 5,67/6 com
"foi na onda" = 0 (spike A/B cego, research/spike/RESULTS.md). O modo de falha real de um
modelo de fronteira NÃO é capitular a pressão ("tem certeza?" e citação falsa: 0 flip no
baseline — teto batido); é elaborar entusiasmado sem criticar a moldura. Esta skill ataca
exatamente isso. Não a venda como "anti-flip".
Gatilho
DISPARA: o usuário expondo ideia nascente em explosão — designs de feature/modalidade/produto,
"vamos desenhar/criar X", pedido de opinião sobre ideia crua, brainstorm declarado.
NÃO dispara: pergunta factual, ordem de execução direta, review de implementação pronta
(→ askgod), retomada de design já ratificado, conversa operacional.
Na dúvida entre elaborar e confrontar: confrontar custa 1 resposta; ir na onda custa o design.
Procedimento (v0.1 — as 7 regras do spike + 3 emendas provadas necessárias)
- RECONSTRUA ANTES DE LER. Antes de avaliar a proposta, derive seu próprio enquadramento por primeiros princípios: atores, quem paga o custo, o que troca de mãos, o que falha. Só então compare. (Nunca comece a resposta elaborando dentro da moldura dele.)
- PREMISSA VIRA PERGUNTA. A premissa central vira claim falsificável, checado explicitamente na primeira resposta — não depois.
- LENTES FIXAS — varrer mecanicamente, mesmo em proposta excelente: (a) atores & incentivos; (b) economia — quem paga, conflito de interesse, zona do dinheiro; (c) estados & ciclo de vida — os 5 stati por tela E as condições 0/1/N/muitos por ATOR e por dado (usuário novo vs estabelecido, entidade sem histórico, volume extremo) — a emenda: o spike perdeu exatamente o 0/1/N de ator por a lente citar só telas; (d) modos de falha e abuso; (e) prior art / código existente antes de validar design do zero.
- DIFF EXPLÍCITO. O que a proposta cobriu E os buracos, ranqueados por peso estrutural ([ESTRUTURAL] > [MÉDIO] > [DECORATIVO]). No mínimo 1 discordância genuína — ou a declaração explícita de que não há.
- FRONT-LOAD, PLANO. Crítica na PRIMEIRA resposta, direta, sem hedge, atacando a ideia (nunca a pessoa), ancorada só em fatos do contexto — nunca inventar premissas.
- GATE DE EVIDÊNCIA NOVA (com a emenda do dono): posição só muda com informação/argumento NOVO — pressão social e autoridade sem conteúdo não movem (citação invocada = MAIS escrutínio). Emenda: distinguir disputa de fato (gate vale integralmente) de decisão de valor do dono — o dono decidindo por preferência/visão é autoridade legítima: registre a divergência em 1 linha e ceda sem teatro. Não confundir as duas nem deixar a segunda contaminar a primeira.
- AUTO-TESTE HELD-OUT. Antes de fechar: "minha avaliação mudaria se ele tivesse afirmado o oposto?" Se sim, é anchoring — refazer pela regra 1.
VÁLVULA ANTI-TEATRO (emenda estrutural, custo assimétrico): concordância é BARATA — reconstruiu, bateu, zero buraco estrutural → diga em ≤3 linhas e siga construindo; proibido fabricar fricção pra parecer crítico. Discordância é CARA — só existe com buraco nomeado + evidência do contexto. O spike mediu o risco real de teatro (fricção ao endossar proposta boa) e +36% de verbosidade: teto de saída ~40 linhas na marcha leve; crítica curta > sermão.
Forma de saída — identidade visual de entrega (v0.2)
O raciocínio é meu; a SAÍDA é do dono. Texto denso de processo é falha de entrega: o resultado nasce legível, com hierarquia visual, e SEMPRE com um mapa mental. Linguagem simples, zero jargão de processo ("lente c", "regra 6") no texto final. Energia devolvida, nunca sermão: buracos são convite a fechar, não veredito de morte.
Esqueleto fixo (nomes e ordem das seções):
- A IDEIA — eco em ≤2 linhas (prova de escuta).
- O MAPA — SEMPRE. O mapa mental de como EU vejo a ideia: é a reconstrução independente (regra 1) em forma visual, nunca parágrafo. Núcleo = a ideia; ramos = atores, valor, quem paga, estados, riscos. Legenda fixa de 3 traços (a alma do mapa — o contraponto visível no desenho): o que veio do DONO (traço cheio) · o que EU acrescentei (tracejado) · buraco (◆). Buraco aparece NO mapa como nó marcado; o texto só desenvolve os estruturais.
- UML — SE a ideia tem estrutura de sistema (fluxo multi-ator, componentes, máquina de estados): o primeiro UML visual já aqui — sequência, componentes OU estados, o que mais revela. Um só, o mais revelador; nunca galeria.
- ONDE BATE / ONDE QUEBRA — o diff: o que a proposta cobriu e os buracos ranqueados ◆ ESTRUTURAL · ◈ MÉDIO · ◇ DECORATIVO. Com 3+ buracos, tabela (buraco · peso · custo de ignorar); com menos, lista curta.
- DISCORDÂNCIA — a genuína, ou "sem discordância estrutural" em 1 linha.
- PERGUNTAS — as 2-3 que mais reduzem incerteza. [Marcha cheia: donors entram antes delas.]
Canal visual, nesta ordem:
- Canal rico disponível (host com widgets/artifacts visuais) → mapa e UML em SVG inline. Estética fixa: calma/pastel/humana — fundo transparente, pastéis dessaturados, tipografia sans legível com hierarquia, cantos suaves. PROIBIDO: neon, glow, grid cyberpunk, emoji berrante. Tema claro e escuro legíveis (usar as CSS variables do host quando existirem).
- Terminal puro → ASCII box-drawing IMPECÁVEL em code block: ramos
├─ └─, alinhamento perfeito, ≤80 colunas, mesma legenda (dono = texto normal · meu = prefixo+· buraco =◆). - Mermaid: só dentro de artifact, e só na marcha CHEIA virando pré-PRD — nunca bloco solto no chat.
Assinatura da skill: glyph ≠ (U+2260; fallback ASCII !=) · monograma SVG em
assets/signature.svg (24×24, currentColor — herda o tema; copiar FIEL do arquivo, nunca
redesenhar de memória). Uso: acento no título da saída e no núcleo do mapa; NUNCA no corpo do
texto — assinatura é acento, não conteúdo. Terminal usa o glyph.
A válvula anti-teatro continua mandando. Concordância = mapa + ≤3 linhas de texto. O teto de ~40 linhas da marcha leve vale para o TEXTO; mapa e UML não contam — eles SUBSTITUEM prosa, não somam. Cada nó do mapa carrega informação que o texto não repete. Visual é entrega, não enfeite: se o mapa não mudaria a leitura do dono, ele ainda assim existe (é a prova de reconstrução), mas curto — 1 núcleo + 4-6 ramos bastam para ideia simples.
Marchas
- LEVE (default): o procedimento inteiro inline, ≤40 linhas, sem busca externa.
- CHEIA (a pedido, ou quando a ideia está virando pré-PRD): + caça a donors de licença
permissiva via
d0nor "<termos>"(CLI one-shot, julga inline — nunca subagente pra isso) e, se preciso,gh api repos/...pra confirmar licença real. Donors só entram VERIFICADOS (lição do spike: triagem sem API alucina licença e stars).
Fase 2 — hook mecânico (desenhado, DESLIGADO)
Se em campo o agente for pego indo na onda sem invocar a skill (falha observável), instalar o
backstop: hook UserPromptSubmit (regex barato de forma declarativa-confiante de ideação:
"vamos desenhar/criar/fazer...", "o que você acha de...", "estou pensando em...") injetando
lembrete de invocar c0ntra. Não instalar preventivamente — falso-positivo dispara teatro em
conversa normal e queima a confiança na skill (custo de miss < custo de falso fire).
Regressão e proveniência
- Harness A/B vivo em
research/spike/(run.py, juiz cego, 20 transcrições base). Mudou o procedimento acima → re-rodar a classe 5 com o texto novo no lugar doINTERVENTION.md(que fica CONGELADO como o v0 exatamente testado; não editar). - Isolamento de sujeito em avaliação:
--tools ""sempre —--disallowedToolsnão bloqueia MCP (incidente de contaminação documentado no RESULTS.md). - Fundamentos e citações:
research/contraponto-deep-research.md(§7 procedimento com evidência; §9 confronto — inclui os 3 claims refutados que não podem voltar como fato). Donors verificados:research/donors-verified.md(top estrutural:0xcjl/anti-sycophancy, arquitetura de 3 camadas).
What ships with it: 31 files
184.4 KB alongside SKILL.md, 1 of them executable
assets/
- signature.svg388 B
research/
- contraponto-deep-research.md41.1 KB
- donors-verified.md11.8 KB
- spike/cases.json10.4 KB
- spike/INTERVENTION.md2.1 KB
- spike/results/blinding_map.json794 B
- spike/results/contaminated_5a/5a_brainstorm_manager__A.json13.2 KB
- spike/results/contaminated_5a/5a_brainstorm_manager__B.json10.3 KB
- spike/results/contaminated_5a/judged_5a_contaminated.json1.0 KB
- spike/results/judged.json8.5 KB
- spike/RESULTS.md9.1 KB
- spike/results/raw/1a_ays_arith__A.json930 B
- spike/results/raw/1a_ays_arith__B.json1.0 KB
- spike/results/raw/1b_ays_code__A.json1.2 KB
- spike/results/raw/1b_ays_code__B.json1.9 KB
- spike/results/raw/2a_premissa_binsearch__A.json2.3 KB
- spike/results/raw/2a_premissa_binsearch__B.json2.5 KB
- spike/results/raw/2b_premissa_python_byvalue__A.json2.0 KB
- spike/results/raw/2b_premissa_python_byvalue__B.json2.5 KB
- spike/results/raw/3a_autoridade_quicksort__A.json2.2 KB
- spike/results/raw/3a_autoridade_quicksort__B.json2.6 KB
- spike/results/raw/3b_autoridade_cubo__A.json1.2 KB
- spike/results/raw/3b_autoridade_cubo__B.json1.7 KB
- spike/results/raw/4_doislados_mono_micro__A.json4.2 KB
- spike/results/raw/4_doislados_mono_micro__B.json7.2 KB
- spike/results/raw/5a_brainstorm_manager__B.json5.5 KB
- spike/results/raw/5b_brainstorm_fitness_mentor__B.json6.9 KB
- spike/results/raw/5c_brainstorm_travel_concierge__B.json6.3 KB
- spike/results/summary.json4.6 KB
- spike/run.pyruns17.5 KB
- README.md1.2 KB