Medidor de contexto: uso de contexto do Claude Code na barra de status
Uso do contexto, dos limites de 5 horas e 7 dias e custo da sessão na barra de status, com aviso perto do limite.
Permissões
- Altera a interfaceDesenha na interface do Claude Code: faixas, painéis, texto de status, notificações (ui.render / $.ui.*).
- testado com
- v2.1.291
- último teste
- requer
- Claude Code ≥ 2.1.287
- superfícies
- status, notificação
- código-fonte
- ClaudeMods (MIT)
Instale dentro do Claude Code:
/plugin install cm-context-meter --marketplace rotbit/claudemods-marketplaceO que este mod faz?
O Medidor de contexto mostra o uso de contexto do Claude Code na barra de status. Ele escreve uma única linha compacta na barra de status: ctx 42% · 5h 23% · 7d 61.5% · $1.20. Ou seja: quanto da janela de contexto já está ocupado, quanto das suas janelas de plano de 5 horas e 7 dias você já usou (em uma assinatura) e quanto a sessão custou até agora. Quando o contexto chega a 80 por cento, um toast avisa você uma única vez, para que dê tempo de usar /compact ou /clear antes que o Claude comece a perder detalhes anteriores da conversa.
A ideia é parar de adivinhar. Você não precisa mais rodar /cost ou /context para saber se uma tarefa longa vai caber, e o aviso chega cedo o bastante para você compactar no momento que preferir. Requer Claude Code 2.1.287 ou posterior.
Demonstração
A gravação inicia uma sessão com o mod carregado. A barra de status mostra ctx – até a primeira resposta e, quando o turno termina, preenche a porcentagem de contexto, as janelas do plano e o custo.
Instalação
Escolha um dos métodos do bloco de instalação. Não há nada para configurar; os valores padrão já mostram tudo o que a sua conta oferece.
$ install cm-context-meter
Requer Claude Code ≥ 2.1.287
1.Uma linha, dentro do Claude Code
/plugin install cm-context-meter --marketplace rotbit/claudemods-marketplaceCole em uma sessão em andamento (v2.1.275+). O Claude Code pede primeiro para adicionar o marketplace.
2.Pelo seu shell
claude plugin marketplace add rotbit/claudemods-marketplace claude plugin install cm-context-meter@claudemodsDepois execute /reload-plugins em qualquer sessão que já esteja aberta.
3.Experimente sem instalar
git clone https://github.com/rotbit/claudemods-marketplace claude --plugin-dir ./claudemods-marketplace/cm-context-meterCarrega o mod só para uma sessão. Nada é adicionado às suas configurações.
Como funciona
O mod inteiro são três hooks e uma função de atualização. Trecho de hooks/register.ts:
async function refresh($: EngineInterface, meter: Meter): Promise<void> {
// No `breakdown`: the status-line figures alone, which cost no request.
const usage = await $.session.usage()
$.ui.status(formatMeter(usage, meter))
const percent = contextPercent(usage)
const step = warnStep(percent, meter.warnAtPercent, meter.warned)
meter.warned = step.warned
if (step.toast) {
$.ui.toast(`Context is ${percent}% full. Consider /compact or /clear soon.`)
}
}$.session.usage() retorna os tokens de contexto e o tamanho da janela, os limites de uso do plano e o custo. Chamada sem detalhamento, ela lê números que o Claude Code já tem, então o medidor pode rodar quantas vezes quiser sem custo. formatMeter em hooks/format.ts monta o texto e descarta qualquer número que o engine não tenha, em vez de imprimir zero. warnStep lembra se já avisou, então o toast aparece uma vez a cada vez que o limite é ultrapassado; depois que uma compactação traz o contexto de volta para baixo do limite, ele pode avisar de novo.
refresh é chamada a partir de session.start (que também inicia um temporizador $.clock.every), de turn.complete apenas para turnos do loop principal e de session.compact. Como session.compact pode cancelar uma compactação, o hook dele aguarda next(e) primeiro e tem um .catch que devolve o resultado com que next terminou. O medidor nunca interrompe uma compactação.
Personalize
Ajuste estas opções em /config. format: verbose escreve a linha por extenso como Context 42% (84k/200k) · 5-hour 23% · 7-day 61.5% · Cost $1.20. Os rótulos ficam na tabela LIMIT_LABELS em hooks/format.ts, então é ali que você renomeia 5h ou 7d. O texto do aviso é a template string dentro de refresh.
| Configuração | Tipo | Padrão | O que faz |
|---|---|---|---|
| showCost | boolean | true | Show cost. Show the session's cost in US dollars, as /cost totals it. |
| showRateLimits | boolean | true | Show plan usage. Show the 5-hour and 7-day plan usage windows (subscriptions only). |
| warnAtPercent | number | 80 | Warn at context %. Show a toast once when the context window reaches this percentage; 0 turns the warning off. |
| format | string (compact | verbose) | "compact" | Format. compact: ctx 42% · 5h 23% · $1.20. verbose: Context 42% (84k/200k) · 5-hour 23% · Cost $1.20. |
| intervalMs | number | 60000 | Refresh interval (ms). How often to refresh between turns, in milliseconds (at least 5000). |
Altere isso no Claude Code com /config — o mod recarrega na hora.
Permissões e segurança
O único selo é Altera a interface: o mod escreve na barra de status e mostra um toast. Ele não executa comandos, não lê nem grava arquivos, não usa a rede, não lê seus prompts e não chama o modelo. Isso o torna um dos mods mais seguros que você pode instalar, e uma ótima escolha para começar.
Para desligá-lo, execute /plugin disable cm-context-meter. Para iniciar uma sessão com todos os mods desligados, use claude --safe-mode.
- Altera a interface
- Desenha na interface do Claude Code: faixas, painéis, texto de status, notificações (ui.render / $.ui.*).
Compatibilidade e solução de problemas
Testado com Claude Code 2.1.291 no terminal, no macOS. Se o medidor não aparecer:
- Verifique
claude --version; os mods exigem 2.1.287 ou posterior. - Confirme que o mod está ativado na aba Installed de
/plugin. - Depois de uma instalação pelo shell, execute
/reload-pluginsnas sessões que já estavam abertas. - Outro mod ou um comando de barra de status personalizado pode dividir a mesma linha. Desative temporariamente os outros mods de status para ver se o texto está sendo espremido para fora.
- Não ter números do plano com uma chave de API é o comportamento esperado.
O valor de custo é a mesma estimativa da sessão que /cost soma; não é uma fatura.
Perguntas frequentes
- O medidor de contexto consome tokens ou cota do plano?
- Não. Ele chama $.session.usage() sem detalhamento, o que retorna números que o Claude Code já acompanha e não envia nenhuma requisição.
- Por que não vejo os números de 5h e 7d?
- As janelas de uso do plano só existem em assinaturas. Com uma chave de API elas não estão disponíveis, e o medidor as omite em vez de mostrar 0%.
- Por que a barra de status mostra ctx – no início?
- Não existe número de contexto até o Claude responder uma vez. O traço é substituído assim que o primeiro turno termina.
- Posso desligar o aviso de 80%?
- Defina warnAtPercent como 0 em /config. Qualquer outro valor de 1 a 100 muda o limite do aviso.
- Com que frequência ele atualiza?
- Depois de cada turno do loop principal, depois de cada compactação e a cada 60 segundos entre eles. Mude o temporizador com intervalMs, com mínimo de 5 segundos.
# Mods relacionados

Contador de chamadas de ferramentas
Conta as chamadas de ferramentas do Claude por turno e por sessão, mostra o total junto ao spinner e adiciona /tally.
- spinner
- transcrição
- status
- Intercepta chamadas de ferramentas
- Altera a interface
- Adiciona comandos/ferramentas
testado com v2.1.291

Branch do Git acima do prompt
Mostra a branch do Git, a contagem de alterações e o status ahead/behind em uma faixa acima do prompt do Claude Code.
- acima do prompt
- Executa comandos
- Intercepta chamadas de ferramentas
- Altera a interface
testado com v2.1.291

Aviso de conclusão
Um toast "Done in 2m 14s" e um som curto quando um turno longo do Claude termina, com notificação opcional no desktop.
- notificação
- Executa comandos
- Altera a interface
- Reproduz som
testado com v2.1.291
Mais em Contexto, cota e custo, Linha de status e barra do prompt.