O registro existe porque a votação o produziu.
Não é automação, nem mágica: a argumentação é o artefato. Quando o Claude leva uma pergunta ao conselho do Kirat, o ChatGPT e o Gemini assumem posições de forma independente, o Claude acrescenta a sua, e eles votam. A chamada e o resultado guardam a pergunta, as opções, cada voto, a decisão, como se chegou a ela e a divergência. A argumentação é registrada enquanto acontece, não reconstruída semanas depois.
As decisões sobrevivem ao raciocínio por trás delas.
ADRs são escritos depois do fato, quando são escritos — e a essa altura o raciocínio já se reduziu a um resumo da conclusão.
A decisão de fato aconteceu numa thread. A thread não é pesquisável, e quem a escreveu já foi embora.
“Por que isso foi construído assim?” é respondido com arqueologia, por quem está ali há mais tempo.
A argumentação de que um ADR precisa, registrada enquanto acontece.
Uma votação do conselho produz a parte de um ADR que se deteriora mais rápido: o que foi perguntado, o que foi considerado, o que venceu, como venceu e quem objetou. Não é um ADR pronto, e o Kirat não escreve ADRs. Status, consequências e responsável continuam sendo seus para preencher. O que ele elimina é reconstruir uma argumentação que ninguém registrou.
FIG. 1 — O que o resultado cobre e o que não cobre. Preferimos mostrar a segunda linha a escondê-la. Os números dos votos são a confiança autodeclarada dos modelos. Sem maioria, o desfecho é needs_human: você decide.
O Kirat guarda os últimos 20 resultados na pasta .kirat da sua pasta pessoal, e o Claude pode buscar os recentes com kirat_result. Isso é memória de trabalho, não um arquivo. Salve os resultados importantes onde quer que seus ADRs fiquem.
O que ele pode decidir sem você.
Uma ferramenta foi feita para decisões que você delega: kirat_decide, para escolhas de trabalho reversíveis. Ela tem um veto e um limite diário, e cada decisão delegada vai para um registro local na pasta .kirat. Para todo o resto, o conselho vota e você vê a divisão. Sem maioria, ele diz needs_human em vez de escolher um lado.
As regras em torno das chamadas estão no código, não em um prompt:
FIG. 2 — Lista de componentes das salvaguardas. O controle de orçamento funciona na base do melhor esforço: defina limites de gasto também nos provedores.
Essas regras já falharam de formas instrutivas, e as correções estão no código. Um caso dos release candidates: uma recusa por orçamento contava como falha de API e podia acionar o disjuntor (circuit breaker), removendo um membro saudável. Recusas por orçamento não contam mais como falhas. O Kirat tem 256 testes automatizados, executados sem acesso à rede. A linha do tempo completa das falhas está na seção de evidências da página principal.
O que isto não faz
- —Não é à prova de adulteração. Os resultados e o registro de decisões delegadas são arquivos locais na pasta
.kirat. Qualquer pessoa com acesso ao computador pode editá-los ou apagá-los. É um registro local de execuções e um auxílio de memória, não uma evidência de conformidade. - —Não substitui a revisão de código, e por si só não vai reduzir a sua carga de revisão. Se ele economiza tempo de alguém depende inteiramente do seu fluxo de trabalho. Não temos nenhuma medição, então não afirmamos isso.
- —Não se conecta ao seu pipeline. Nenhum bot comenta em pull requests, e nada roda no seu pipeline de build. O Kirat funciona dentro de um chat do Claude Desktop ou de uma sessão do Claude Code — local, ou uma sessão na nuvem após a configuração única — quando o Claude o chama.
- —A delegação é uma salvaguarda, não um sistema de permissões. O veto e o limite diário restringem o
kirat_decide. Eles não restringem o que o Claude, suas ferramentas ou seus sistemas podem fazer. - —Não mantém o seu código dentro de casa. Tudo o que você fornece ao Kirat (perguntas, contexto, código) vai diretamente para a OpenAI e o Google, nas suas contas e sob os termos deles — a partir do seu computador ou, nas sessões na nuvem do Claude Code, a partir do seu próprio ambiente de nuvem, pelo proxy de rede da Anthropic para esse ambiente. Em comparação com usar só o Claude, isso acrescenta dois destinatários.
- —Não funciona em todo lugar onde você usa o Claude. Só onde o Claude executa ferramentas em uma máquina com o Kirat instalado: chats do Claude Desktop no macOS e no Windows, Claude Code no terminal ou no VS Code, sessões locais na aba Code do Claude Desktop, sessões SSH — e sessões na nuvem do Claude Code (sessões na nuvem da aba Code, Claude Code na web ou no app para celular) após uma configuração única do seu ambiente de nuvem. A nuvem tem limitações: todos que usam o ambiente podem ler as variáveis de ambiente dele, incluindo suas chaves; o orçamento diário do Kirat é contado por sessão, então defina limites de gasto na OpenAI e no Google; tarefas em segundo plano e resultados recentes terminam com a sessão; e o ambiente precisa permitir dois hosts,
api.openai.come o host de download do Kirat. Se a configuração falhar, a sessão ainda inicia, só que sem o Kirat, e o estado de falha pode ficar em cache para novas sessões até você editar o script de configuração. Não no chat do navegador nem nos apps para celular, e não em tarefas do Cowork executadas na nuvem. Sessões WSL e tarefas locais do Cowork não foram testadas. Redes no seu próprio computador que exigem um proxy HTTP não são suportadas. Organizações que restringem as extensões do Desktop a uma lista de permissões bloqueiam instalações manuais; fale com o seu administrador. Onde funciona, em detalhes.
Antes de comprar.
Isto substitui a revisão de código?
Não. O kirat_review obtém apontamentos sobre uma alteração de outras famílias de modelos antes que um humano a veja, e cada apontamento é verificado pela outra família de modelos. Humanos continuam revisando. Muda o que eles olham, não se eles olham.
O que de fato pode ser delegado?
Escolhas de trabalho reversíveis, por meio do kirat_decide, com um veto e um limite diário. Cada decisão delegada é gravada no registro de decisões delegadas na pasta .kirat.
Tudo o que seria caro desfazer pertence a uma votação, não a uma delegação. Uma votação dá a você as posições e o desfecho; sem maioria, ela retorna needs_human e não decide nada.
Como isso se encaixa num processo de ADR existente?
Ele produz a argumentação; você produz o ADR. A chamada e o resultado guardam a pergunta, as opções e a decisão — a parte que as pessoas parafraseiam mal semanas depois. Status, consequências e responsável continuam manuais; veja a Fig. 1.
O Kirat guarda apenas os últimos 20 resultados, então salve os que quiser ao lado do ADR.
Como funciona para uma equipe?
Uma licença cobre uma pessoa, em qualquer número de dispositivos próprios e ambientes de nuvem próprios dessa pessoa. Ela não permite redistribuição, então cada pessoa da equipe que executa o Kirat precisa da própria licença, e um ambiente de nuvem compartilhado com outras pessoas precisa de uma licença para cada pessoa. Não há assentos para administrar, nem conta conosco, nem servidor para operar.
Cada pessoa usa as próprias chaves de API e o próprio orçamento diário. Recomendamos um projeto separado no provedor, com limite de gasto. Num ambiente de nuvem compartilhado, todos que o usam podem ler as variáveis de ambiente dele, incluindo as chaves.
Onde ficam as chaves de API?
Você as insere na própria caixa de diálogo de instalação ou de configurações do Claude. O Claude Desktop as guarda no armazenamento seguro do sistema operacional (macOS Keychain, Windows Credential Manager). O Claude Code as guarda no macOS Keychain e, no Windows e no Linux, em ~/.claude/.credentials.json, legível apenas pelo seu usuário. Nas sessões na nuvem do Claude Code, elas são variáveis de ambiente do seu ambiente de nuvem, legíveis por todos que o usam.
O Kirat não tem servidor nem telemetria. Nós nunca vemos suas chaves nem seus dados.
O que a implantação envolve?
Claude Desktop: descompacte o download, abra Settings → Extensions → Advanced settings → Install Extension…, escolha o arquivo .mcpb e insira as duas chaves na caixa de diálogo. O Desktop avisa que extensões instaladas a partir de um arquivo não são verificadas pela Anthropic; isso é esperado.
Claude Code: descompacte o download e mova a pasta kirat extraída para a sua pasta pessoal, de modo que ~/kirat/claude-code exista. Depois, em uma sessão, execute /plugin marketplace add ~/kirat/claude-code e /plugin install kirat@kirat, e insira as chaves quando solicitado. O plugin precisa do Node.js 20 ou mais recente.
Sessões na nuvem do Claude Code: uma vez por ambiente de nuvem, cole o bloco do download (cloud/setup.sh) no início do script de configuração do ambiente e adicione as duas chaves como variáveis de ambiente. Recomendamos os nomes KIRAT_OPENAI_API_KEY e KIRAT_GEMINI_API_KEY: eles não colidem com a OPENAI_API_KEY do próprio projeto (o Kirat também aceita OPENAI_API_KEY e GEMINI_API_KEY). Se o acesso à rede estiver em Full, não há nada a mudar; caso contrário, defina-o como Custom (em apps mais novos: Limited) com a lista padrão de gerenciadores de pacotes, mais api.openai.com e o host de download do Kirat. Se a configuração falhar, a sessão inicia sem o Kirat, e o estado de falha pode ficar em cache até você editar o script de configuração. Confira antes as limitações da nuvem: onde funciona.
Se a sua organização restringe as extensões do Desktop a uma lista de permissões, instalações manuais ficam bloqueadas; fale com o seu administrador. A parte demorada da configuração é criar as duas chaves de API dos provedores.
E quanto a atualizações e mudanças de modelo?
Para atualizar no Claude Desktop, instale o novo .mcpb da mesma forma (no Claude Code, descompacte a nova versão sobre a pasta kirat antiga e reinicie o Claude Code ou execute /reload-plugins); chaves e configurações são mantidas. Atualizações de compatibilidade são gratuitas quando possível, sem garantia. Novas versões maiores podem ser vendidas separadamente.
Nomes e preços de modelos são configurações. Se um provedor aposentar um modelo, você insere o novo nome e os dois preços dele — sem necessidade de atualização.
Um produto para todos: uma compra, um download com a extensão do Claude Desktop e o plugin do Claude Code. Preços e detalhes estão na página principal.