Kostria
Pasta não é projeto. O Kostria segue o arquivo que a IA editou de verdade, resolve o repositório certo e infere a área do commit e possíveis IDs de ticket — sem proxy, sem SDK, sem mudar código.
O que e
Ferramentas de IA (Claude Code, OpenCode, Codex CLI, Gemini CLI) custam caro e crescem rápido. O painel do fornecedor mostra custo por conta — não por projeto, não por área de trabalho, não pelo ticket validado. Planilha juntada na mão é frágil.
O Kostria lê os logs que essas ferramentas já deixam no disco, segue o arquivo editado até o commit que o fechou e infere dali uma área técnica e possíveis IDs de ticket. Isso não prova que uma feature foi entregue; conectar GitHub Issues, Jira ou Linear permite validar os IDs. No Time, cada pessoa escolhe localmente quais projetos podem entrar no board compartilhado.
$ pip install kostria
$ kostria scan
custo total: $2,480.00 tokens: 1.2B sessões: 89
by commit scope (illustrative):
checkout-pix (PROJ-118) $942.40 38%
onboarding (PROJ-204) $719.20 29%
busca (PROJ-091) $496.00 20%
Por que atribuir por cwd mente: 65% das edições do Claude Code acontecem
em repos que NÃO são o diretório de trabalho. Worktree, monorepo, sessão de
terminal — o cwd joga o custo no projeto errado. O Kostria segue o arquivo.
Quickstart
pip install kostria
kostria init # detecta suas pastas de trabalho
kostria scan # 30 segundos ate o primeiro resultado
kostria serve # dashboard em http://127.0.0.1:8787
Zero dependências. Só Python 3.11+ e stdlib.
O que o Kostria responde
- Quanto cada projeto consumiu? Por arquivo editado, não por diretório.
- Onde se concentrou o uso? Arquivo → commit → área técnica inferida; ticket só é confirmado com o rastreador conectado.
- Qual modelo é mais eficiente? Custo por edição entregue, não por token.
- Quanto da assinatura foi usado? Separa consumo real do fixo (Claude Pro/Max).
- Tem conta ociosa? Sinaliza contas sem atividade nos últimos 14 dias.
- O orçamento vai estourar? Projeção mensal + previsão de fechamento do mês.
- O que mudou entre duas janelas? Compare equivalente de API e tokens por dia corrido, com cobertura de preço, sem confundir referência com fatura.
- Onde faltou capacidade? Registre limites, bloqueios e a conta ou o provedor usado para continuar, sem somar quotas incompatíveis.
- Quando revisar uma assinatura? Informe a renovação na Carteira e escolha um aviso opcional por e-mail, de 1 a 30 dias antes.
Suporta
| Ferramenta | Coletor | Preço |
|---|---|---|
| Claude Code | ~/.claude*/projects/**/*.jsonl |
Tabela Anthropic publica (medido) |
| OpenCode | ~/.local/share/opencode/opencode.db |
Auto-reportado (confiável) |
| Codex CLI | ~/.codex/sessions/rollout-*.jsonl |
Respostas/deltas + cenário da tabela OpenAI quando modelo e componentes permitem |
| Gemini CLI | ~/.gemini/tmp/*/chats/session-*.jsonl |
Tabela Google publica (medido) |
Planos
| Plano | Preço | Inclui |
|---|---|---|
| Local | Grátis | Custo por projeto, conta e modelo (Claude Code), painel local, 1 pessoa e 1 máquina, 30 dias no board |
| Pro | R$ 39/mês ou R$ 390/ano | Outros coletores, área inferida do commit/ID de ticket, até 5 máquinas suas, trackers, 1 ano de histórico |
| Time | R$ 39 · 29 · 19 por pessoa/mês | Tudo do Pro, board agregado, alerta por e-mail, relatório mensal, máquinas sem limite |
| Enterprise | sob consulta | Contrato e necessidades específicas |
No Time você escolhe os assentos, com mínimo de 2. Faixas: 2–5 pessoas R$ 39 por pessoa; 6–20 R$ 29; 21–50 R$ 19. Três assentos custam R$ 117/mês; dez, R$ 290/mês. O board avisa se medir mais pessoas do que assentos, sem ajustar a cobrança automaticamente. Veja os preços vigentes.
O motor roda localmente e o código é proprietário. Você pode começar grátis com Claude Code; Pro e Time liberam os outros coletores e a atribuição fina. O board hospedado é opcional. Nos planos Pro e Time, repositórios públicos do GitHub podem validar tickets sem token. Repositórios privados exigem um token de leitura, cifrado pelo Kostria.
Comandos
kostria scan # resumo no terminal
kostria scan --since 30d --compare # contra mes anterior
kostria scan --budget 3000 # alerta de orcamento
kostria scan --anonymize # mascara nomes (compartilhavel)
kostria report # HTML (abre no navegador)
kostria report --format json -o dados.json
kostria report --format csv -o custos.csv
kostria serve # dashboard local em 127.0.0.1:8787
kostria watch # vigia ao vivo no terminal
kostria doctor # 11 checagens de integridade
kostria contas --json # contas locais e planos individuais precificados
kostria badge -o badge.svg # selo shields.io local
kostria compartilhar # no Time: escolha localmente os projetos que podem subir
kostria compartilhar --conta CONTA # no Time: inclui uma conta de IA na Carteira do workspace
kostria sync # envia somente o recorte autorizado no Time
kostria agendar # sync recorrente pelo agendador do SO
kostria agendar --mostrar # lê o que seria instalado, sem instalar
kostria contas lista as contas de IA desta máquina, o plano detectado e o
preço público do plano, com fonte e data, e diz quando leu o uso na Anthropic
ou por que não leu. kostria sync --descobrir-contas, num terminal, mostra o
que muda e pede confirmação: envia à Carteira as contas detectadas (e-mail
mascarado, plano, estado do login e % de uso) e lê o % de uso de cada conta
Claude em api.anthropic.com/api/oauth/usage com o token que o Claude Code já
guarda — só leitura, no máximo a cada 5 minutos, sem renovar nem alterar o
login. Fora de um terminal (cron, script), só envia as contas. O Codex informa
o próprio uso nos logs locais. kostria contas --revogar desfaz a
autorização. Quem autorizou numa versão anterior à 0.2.20 continua enviando as
contas, mas a leitura na Anthropic só volta depois de confirmar de novo.
A Carteira faz uma única pergunta por conta: quem paga. Plano, estado do login (ativa, desconectada, parada há N dias), uso da semana e das últimas 5 horas e o aviso de conta usada em várias máquinas vêm da máquina. A data de renovação não tem fonte local (o reset semanal não é renovação) e fica como campo opcional. Planos Enterprise aparecem "sob contrato", sem preço público e sem somar zero. Preço público não é fatura e equivalente de API não mede ROI.
Na Carteira, contas sem pagador, desconectadas ou com limites altos aparecem primeiro; o filtro Atenção reúne o que revisar. Uso mensal compara as contas sem confundir o mês em andamento com um mês completo. Em Modelos, a distribuição principal acompanha período, pessoa e projeto; ferramentas e fornecedores ficam no histórico acumulado, separado. No Time, tendência, variação e projeto principal de cada pessoa continuam visíveis no celular.
Os preços vêm das tabelas oficiais de Anthropic e OpenAI, lidas por inteiro
todo dia; modelo novo entra no catálogo por dado, sem nova versão da CLI, e o
catálogo chega a cada máquina no sync. Onde a tabela oficial não cobre, o
OpenRouter entra como fonte secundária marcada como tal; variante de nível
(-pro, -high) de modelo com preço oficial fica sem preço em vez de herdar
o da base. Fonte ilegível conserva a última versão íntegra.
Depois do kostria login, os comandos do dia a dia (scan, report) podem
sincronizar de 6 em 6 horas — sem refazer a varredura. Em workspace Time ou
Enterprise, o primeiro envio fica bloqueado até você rodar
kostria compartilhar; projetos não escolhidos não entram no payload, nem como total
anônimo. kostria compartilhar --limpar deixa a seleção vazia e remove do
servidor os dados anteriores desta máquina no próximo sync bem-sucedido.
Desligue o envio automático com --sem-autosync (ou
autosync = false no kostria.toml). O kostria agendar cobre o caso de
quem passa o dia dentro do agente e nunca digita kostria.
Privacidade
- A análise e o relatório rodam localmente e funcionam sem rede. Por padrão,
scanenvia um ping anônimo de instalação e consulta o PyPI para avisar de atualização;kostria scan --no-telemetrydesliga os dois nessa execução. Dados do trabalho só chegam ao board apóskostria logine umsyncmanual, agendado ou oportunista emscan/report. - No workspace pessoal Pro, o
syncenvia o agregado: projeto, dia, custo, tokens, área inferida e ID de ticket, os totais por modelo/fornecedor/ferramenta, a base de medição e um identificador irreversível por resposta para deduplicação, o nome desta máquina e o seu plano de IA (valor pago e equivalente em API) com a conta mascarada (a***@dominio). Nunca caminho de arquivo, nunca conteúdo de sessão, nunca o e-mail completo. No Time/Enterprise, só projetos escolhidos localmente são enviados; totais globais, assinaturas e inventário de contas ficam fora porque poderiam revelar dados pessoais por diferença. Uma conta de IA só entra na Carteira do Time se você a incluir comkostria compartilhar --conta, e só ela é consultada na Anthropic. - No Time, owner e admin veem o detalhe por dia, projeto e modelo de cada pessoa; os demais membros veem o próprio detalhe e o total dos colegas.
- Rodar
kostria loginde novo na mesma máquina substitui o token anterior dela (sem somar em dobro), e a troca de seleção alcança o histórico inteiro da máquina. - Não quer mandar o plano?
kostria sync --sem-assinatura. --anonymizetroca nomes por hash estável para relatórios compartilháveis.- Não acredite: confira.
kostria sync --dry-run -vimprime o JSON exato que subiria — e não envia nada. É a resposta certa para "o que essa ferramenta manda do meu trabalho para fora?", e vale a pena rodar antes do primeirosync.
$ kostria sync --dry-run
[dry-run] endpoint: https://kostria.hypermind.space/sync
[dry-run] 255 entries -> workspace 0000…
[dry-run] 3 assinatura(s): a***@empresa.com.br (claude_max_20x, $200.00/mes), …
Por que o Kostria é diferente
Não é um proxy (Helicone). Não é tracing de qualidade (Langfuse). Não é FinOps de cloud (Vantage). É o único que lê os logs que já estão no disco, segue o arquivo até o commit e infere dali área técnica e ID de ticket — sem SDK, sem proxy, sem mudar uma linha de código.
Links
- Site e board do time
- Planos e preços
- Privacidade
- Suporte e segurança: hypermind.ia@gmail.com
Licença
Proprietária e gratuita para usar, inclusive comercialmente dentro da sua
empresa: sem cadastro, sem contagem de assento, sem expiração. O que não se
pode é redistribuir, modificar ou usar o código para construir um concorrente
(texto completo em LICENSE).
Até a versão 0.2.3 o pacote saiu sob MIT, e aquele direito não é revogado — vale para aquelas versões. A licença atual vale da 0.2.4 em diante.
Feito em Vicosa, MG por Pedro Henrique.
Metadata
Release files for kostria 0.2.24
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kostria-0.2.24.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kostria-0.2.24-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.2 MB
Release files / kostria-0.2.24.tar.gz
| Download URL | kostria-0.2.24.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e82ffc81452945012cee29684a4f7a7eb26fdbe37a1a1a4e85f6a1c5715421ee
|
|
BLAKE2b-256 checksum How to use checksums |
a60711f0164f21131080f4b3167b75c5b34b33a34d647b255f4d33c0c54158d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.7
|
Release files / kostria-0.2.24-py3-none-any.whl
| Download URL | kostria-0.2.24-py3-none-any.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
261df06686355c4964d923a49b43f2183768728522ac120cc27be6b87deaeb84
|
|
BLAKE2b-256 checksum How to use checksums |
c29ed006107f73bc09ba712c38fcced67ca7519a9e582e08069fa11cb968610c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.7
|