Context Bar: barra da janela de contexto do Claude Code por categoria
A janela de contexto do Claude Code como uma barra empilhada acima do prompt, uma cor por categoria, com tokens.
Permissões
- Altera a interfaceDesenha na interface do Claude Code: faixas, painéis, texto de status, notificações (ui.render / $.ui.*).
- Adiciona comandos/ferramentasRegistra novos comandos de barra ou ferramentas que você ou o Claude podem acionar ($.command.register / $.tool.register).
- Armazena dadosGuarda dados entre sessões no armazenamento privado do plugin ($.store.*).
- testado com
- v2.1.291
- último teste
- requer
- Claude Code ≥ 2.1.287
- superfícies
- acima do prompt
- código-fonte
- Hamza Zafar (hamzafer) (MIT)
Instale dentro do Claude Code:
/plugin install context-bar --marketplace hamzafer/claude-code-modsO que este mod faz?
O Context Bar é uma barra da janela de contexto do Claude Code, um mod da comunidade criado por Hamza Zafar (hamzafer), parte da coleção claude-code-mods dele. Ele responde a uma única pergunta: o que está ocupando a minha janela de contexto? Acima do prompt do Claude Code, ele desenha uma pequena faixa com borda contendo uma única barra empilhada da largura do terminal. A barra é dividida nas mesmas categorias que o /context usa, como prompt de sistema, ferramentas, ferramentas MCP, arquivos de memória, skills e mensagens, seguidas do espaço livre e do buffer de autocompactação.
A linha de cabeçalho mostra algo como 48k of 200k · compacts at 167k, com um selo de porcentagem colorido. O selo é verde, fica amarelo em 70% do ponto de compactação e vermelho em 90% (medido contra a janela inteira quando a autocompactação está desligada). Abaixo da barra, uma legenda lista cada categoria com a contagem de tokens e a fatia da janela, distribuída em quantas linhas a largura do terminal exigir. Os esquemas de ferramentas carregados sob demanda ficam de fora, assim como o /context os deixa fora da grade dele.
O Context Bar é parecido com o nosso Context Meter, mas os dois mostram coisas diferentes. O Context Meter é uma única string na barra de status com a porcentagem geral de contexto, as janelas do plano de 5 horas e de 7 dias, o custo da sessão e um aviso único em 80%. O Context Bar não mostra uso do plano nem custo; em vez disso, ele detalha o contexto por categoria, para você ver se o espaço está indo para as ferramentas MCP, para os arquivos de memória ou para a própria conversa. O README do autor exige o Claude Code 2.1.287 ou mais recente.
Demonstração
A gravação inicia o Claude Code com o mod carregado no pequeno projeto de demonstração e pede ao Claude que leia o README.md e descreva o projeto em uma frase. Quando o turno termina, a faixa acima do prompt mostra a janela de contexto dividida por categoria (prompt de sistema, ferramentas de sistema, skills, mensagens, espaço livre), o total, como 54k of 200k, o ponto em que a autocompactação entra e a porcentagem usada.
Instalação
Use qualquer um dos métodos do bloco de instalação; eles instalam direto do marketplace do próprio autor. A barra aparece no próximo início de sessão, e /context-bar esconde ou mostra a barra.
$ install context-bar
Requer Claude Code ≥ 2.1.287
Instala a partir do marketplace do autor: hamzafer/claude-code-mods
1.Uma linha, dentro do Claude Code
/plugin install context-bar --marketplace hamzafer/claude-code-modsCole 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 hamzafer/claude-code-mods claude plugin install context-bar@claude-code-modsDepois execute /reload-plugins em qualquer sessão que já esteja aberta.
3.Experimente sem instalar
git clone https://github.com/hamzafer/claude-code-mods claude --plugin-dir ./claude-code-mods/mods/context-barCarrega o mod só para uma sessão. Nada é adicionado às suas configurações.
Como funciona
O mod guarda a leitura mais recente em um átomo $.state mantido pelo host, então ela sobrevive a um hot reload, e a redesenha no ponto de renderização AbovePrompt. Esta é a função de atualização, de hooks/register.tsx:
// Asks the engine for /context's breakdown, estimated locally (no token-count calls).
async function refresh($: EngineInterface) {
if (await read($, isHidden)) return
const usage = await $.session.usage({ breakdown: 'summary' })
const b = usage.context.breakdown
if (!b || !(b.rawMaxTokens > 0)) return // no window to measure against
await update($, reading, () => toReading(b))
}refresh roda em session.start, em turn.complete quando não há agentId (os turnos de subagentes são ignorados) e em session.compact, porque um /compact esvazia a janela sem que nenhum turno termine. toReading descarta as categorias adiadas e as vazias, ordena as linhas usadas antes do espaço livre e do buffer e atribui as cores. As funções puras cells e legend transformam a leitura em trechos da barra e em linhas da legenda: toda categoria usada recebe pelo menos uma célula, e as sobras do arredondamento vão primeiro para o espaço livre. Abaixo de 20 colunas de largura interna a barra não é desenhada. Quando uma pesquisa está usando o espaço acima do prompt, a faixa sai do caminho.
Personalize
Não há opções no /config. O único interruptor é o comando /context-bar, cujo estado escondido/visível fica salvo com $.store. Para mudar a aparência, edite as constantes no início do register.tsx: PALETTE para as cores das categorias, MESSAGES para a cor das mensagens, GLYPH para os caracteres da barra e MIN_WIDTH para a largura mínima em que a barra ainda é desenhada.
Permissões e segurança
Lemos todos os arquivos que o plugin pode executar antes de rodá-lo: hooks/hooks.json, hooks/register.tsx, as declarações de tipos e os testes. Não há package.json, script de instalação nem código empacotado.
Altera a interface cobre a faixa acima do prompt. Adiciona comandos/ferramentas cobre o /context-bar. O mod lê os números de contexto via $.session.usage, guarda um único valor verdadeiro/falso com $.store e mantém a leitura em $.state. Ele não executa comandos de shell, não lê nem grava arquivos, não usa a rede, não lê variáveis de ambiente e não chama o modelo. O claude plugin validate não relatou erros nem avisos, e os 6 testes do autor passaram no Claude Code 2.1.291.
- Altera a interface
- Desenha na interface do Claude Code: faixas, painéis, texto de status, notificações (ui.render / $.ui.*).
- Adiciona comandos/ferramentas
- Registra novos comandos de barra ou ferramentas que você ou o Claude podem acionar ($.command.register / $.tool.register).
- Armazena dados
- Guarda dados entre sessões no armazenamento privado do plugin ($.store.*).
Compatibilidade e solução de problemas
Verificado com o Claude Code 2.1.291 no macOS (validate e testes). Se a barra não aparecer:
claude --versioné 2.1.287 ou mais recente.- Você não a escondeu antes: execute
/context-baruma vez e procure "Context bar on". - O terminal é largo o suficiente: a faixa precisa de pelo menos 24 colunas.
- Há uma pesquisa aberta acima da entrada; a faixa volta depois que ela fecha.
- O detalhamento só fica disponível quando o Claude Code conhece o tamanho da janela. Se a faixa estiver faltando logo no início, envie um prompt.
Perguntas frequentes
- A barra de contexto gasta tokens ou chama a API?
- Não. Ela pede ao Claude Code o mesmo detalhamento resumido que o /context desenha, que os comentários do código descrevem como estimado localmente, sem chamadas de contagem de tokens. Ela não faz nenhuma requisição de rede própria.
- Como escondo a barra?
- Execute /context-bar. O comando liga e desliga a barra, e a escolha fica salva no armazenamento do próprio plugin, então uma nova sessão começa do jeito que você deixou.
- Quando a barra é atualizada?
- No início da sessão, depois de cada turno do agente principal e depois de uma compactação. Os turnos de subagentes são ignorados porque enchem a janela deles, não a sua.
- Qual a diferença para o Context Meter (cm-context-meter)?
- O Context Meter escreve uma linha curta na barra de status com a porcentagem de contexto, o uso do plano de 5 horas e de 7 dias, o custo da sessão e um toast de aviso em 80%. O Context Bar desenha uma faixa com borda acima do prompt que divide o contexto em categorias, sem uso do plano, sem custo e sem toast.
- O que significam as cores e os símbolos?
- Cada categoria usada (prompt de sistema, ferramentas, ferramentas MCP, arquivos de memória, skills e assim por diante) recebe a sua própria cor de uma paleta fixa, e as mensagens são desenhadas em laranja. O espaço livre é uma linha cinza fina e o buffer de autocompactação aparece hachurado.
# Mods relacionados
DestaqueMedidor de contexto
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.
- status
- notificação
- Altera a interface
testado com v2.1.310
DestaqueContador 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.310
Mais em Contexto, cota e custo, Linha de status e barra do prompt.