Prismantis: mod de tema markdown para Claude Code com respostas coloridas
Respostas do Claude Code com temas: tabelas em caixas, código destacado, diagramas mermaid e ferramentas compactas.
Permissões
- Lê seus promptsPode ver o que você digita e a transcrição da conversa (prompt.* / session.append / session.messages).
- 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).
- testado com
- v2.1.291
- último teste
- requer
- Claude Code ≥ 2.1.287
- superfícies
- transcrição, notificação
- código-fonte
- Nahum Litvin (MIT)
Instale dentro do Claude Code:
/plugin install prismantis --marketplace NahumLitvin/prismantisO que este mod faz?
O Prismantis é um mod de tema markdown para Claude Code, da comunidade, criado por Nahum Litvin (NahumLitvin) que redesenha as respostas do Claude na transcrição com cor e estrutura. Tabelas markdown ganham cabeçalhos coloridos, células em caixas e uma linha dupla sob o cabeçalho, e encolhem para caber no terminal. Blocos de código ganham um cabeçalho com a linguagem, um botão de copiar e destaque do Prism para 24 linguagens, e blocos de shell colorem o comando, as flags, as strings e os comentários. Blocos de código marcados como mermaid são desenhados como arte em texto colorida: fluxogramas, diagramas de sequência, de estados, de classes e ER, além de gráficos de barras e de linhas do xychart-beta.
Ele também muda o estilo do resto da transcrição. Os seus próprios prompts aparecem em um balão arredondado (ou com uma barra de destaque ou um chevron). As chamadas de ferramentas viram uma linha só, como Ran gh pr view 12 ou Read ~/src/app.ts, com um ponto de status. O rodapé do turno colore a duração. A saída dos comandos de barra recebe a mesma renderização markdown. Números, versões, durações e caminhos têm cores próprias, alertas do GitHub como > [!WARNING] são desenhados como caixas coloridas, e textos em hebraico e árabe são diagramados da direita para a esquerda com tratamento específico para cada terminal. São 15 temas mais o mono. O README diz que ele precisa do Claude Code 2.1.287 ou mais recente.
Demonstração
A gravação pede ao Claude uma tabela markdown dos quatro planetas internos e do número de luas de cada um, mais um bloco bash de uma linha. Com o prismantis carregado, o prompt aparece em um balão, a tabela fica em caixas com cabeçalhos coloridos, o bloco bash ganha o seu próprio rótulo e um botão copy, e a resposta tem os botões copy, art e copy reply.
Instalação
Use qualquer um dos métodos do bloco de instalação; eles instalam direto do marketplace do próprio autor. A próxima resposta em uma sessão com o mod carregado já é desenhada pelo prismantis. Execute /reload-plugins nas sessões que já estavam abertas.
$ install prismantis
Requer Claude Code ≥ 2.1.287
Instala a partir do marketplace do autor: NahumLitvin/prismantis
1.Uma linha, dentro do Claude Code
/plugin install prismantis --marketplace NahumLitvin/prismantisCole 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 NahumLitvin/prismantis claude plugin install prismantis@prismantisDepois execute /reload-plugins em qualquer sessão que já esteja aberta.
3.Experimente sem instalar
git clone https://github.com/NahumLitvin/prismantis claude --plugin-dir ./prismantisCarrega o mod só para uma sessão. Nada é adicionado às suas configurações.
Como funciona
hooks/register.tsx registra hooks de renderização nos componentes da transcrição (AssistantMessage, UserMessage, CommandOutput, ToolGroup, ToolUse e TurnDuration). Cada um analisa o texto com o parser de markdown do próprio plugin, em hooks/markdown.ts, e desenha o resultado com hooks/render.tsx. Este é o hook das respostas do assistente, de hooks/register.tsx:
on('ui.render', { component: 'AssistantMessage' }, ($, e, next) => {
const blocks = parseCached(e.props.text)
if (blocks.length === 0) return next(e)
const el = $.ui.resolve(e)
const { Box, Text } = el
const columns = Math.max(20, (e.viewport?.columns ?? 100) - 4)
// ...
return (
<Box flexDirection="row">
<Box width={2} flexShrink={0}>
<Text color={style.theme.accent}>{e.props.isFirstOfReply ? '●' : ' '}</Text>
</Box>
<Box flexDirection="column" rowGap={1} flexGrow={1}>
{drawMarkdown($, el, style, blocks, columns, /* ... */)}
</Box>
</Box>
)
})Quando não há nada para analisar, ele recorre a next(e) e o Claude Code desenha a mensagem por conta própria. Os blocos analisados ficam em cache pelo texto, então um redesenho não analisa de novo. Os blocos mermaid passam por uma cópia empacotada do renderizador ASCII do beautiful-mermaid, e um diagrama mais largo que a janela continua como código. Um hook prompt.submit adiciona a dica sobre diagramas aos prompts digitados no compositor ou via Remote Control. O mod também acrescenta um substantivo ao engine, $.prismantis.markdown, para que outros mods possam desenhar markdown no tema do prismantis do usuário.
Personalize
Todas as opções ficam no /config em prismantis, ou em pluginConfigs no ~/.claude/settings.json. As principais:
theme: uma das 15 paletas oumono./prismantis theme <name>troca na hora.tableStyle:box,rules,gridouminimal.headingStyle:banner,bold,underlineouuppercase.promptStyle:bubble,bar,chevronouoff.toolStyle:chat,tree-dim,tree-boldouclassic.taskStyle:checks,ticks,boxouprogress.toolRows,mermaid,mermaidAscii,copyButtons,diagramHints,highlightNumbersehighlightPathsligam ou desligam recursos específicos.- Cerca de 20 espaços de cor (
headingColor,tableHeaderColor,numberColor,pathColore assim por diante) aceitam hex,rgb(),ansi256()ou um nome de cor.
/prismantis copy copia a última resposta, e /prismantis copy code copia o último bloco de código dela, sem mouse. /prismantis demo imprime uma vitrine de todos os elementos.
Permissões e segurança
Lemos todos os arquivos que o plugin carrega antes de rodá-lo, incluindo os dois pacotes de terceiros embutidos. O plugin não faz chamadas de rede, não executa comandos e não lê arquivos. Vale saber duas coisas:
- Lê seus prompts se aplica porque um hook
prompt.submitanexa a cada prompt que você digita uma nota curta só para o modelo (cerca de 190 tokens), descrevendo o que é renderizado neste terminal. Ele não muda o seu texto. DesliguediagramHints(oumermaid) para evitar isso. $.session.messagessó é chamado pelo/prismantis copy, para encontrar a última resposta.$.config.setsó é chamado pelo/prismantis theme, para salvar a opçãotheme.$.env.getlê variáveis do terminal comoTERM_PROGRAMeTERMpara escolher o tratamento da direita para a esquerda.
Altera a interface cobre a transcrição redesenhada e os toasts "Copied". Adiciona comandos/ferramentas cobre o /prismantis. hooks/vendor/prism.js e hooks/vendor/mermaid-text.js são builds do Prism e do beautiful-mermaid minificados só nos espaços em branco, gerados pelo scripts/build-vendor.mjs do repositório. O plugin não executa esses scripts nem instala pacotes. O claude plugin validate não relatou avisos.
- Lê seus prompts
- Pode ver o que você digita e a transcrição da conversa (prompt.* / session.append / session.messages).
- 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).
Compatibilidade e solução de problemas
Validamos com o Claude Code 2.1.291 no macOS, e o claude plugin test passou em todos os 138 testes do autor. O autor testou no terminal do macOS; o app desktop e o VS Code devem funcionar pela mesma API de mods, mas não foram verificados manualmente.
- As respostas parecem iguais: confira se
claude --versioné 2.1.287 ou mais recente, se o plugin está ativado em/plugine seenabledestá ligado no/config. Execute/reload-pluginsdepois de instalar em uma sessão aberta. - Quadrados ou linhas quebradas nos diagramas: ligue
mermaidAscii, que desenha com+ - |em vez de caracteres de desenho de caixas. - Os botões de copiar não fazem nada ao clicar: talvez o seu terminal não repasse os cliques. Use
/prismantis copyno lugar. - As cores ficam estranhas em fundo claro: escolha um tema claro, como
github-lightoucatppuccin-latte.
Perguntas frequentes
- O prismantis muda o que o Claude escreve?
- Ele redesenha respostas que já estão na tela. Com diagramHints ligado (o padrão), ele também anexa uma nota oculta curta, de cerca de 190 tokens, a cada prompt que você digita, dizendo ao modelo que tabelas, código e diagramas mermaid são renderizados aqui. Desligue diagramHints em /config para evitar isso.
- Quais temas estão incluídos?
- Quinze paletas: catppuccin-mocha (padrão), catppuccin-latte, dracula, nord, tokyo-night, gruvbox-dark, gruvbox-light, rose-pine, rose-pine-dawn, everforest, github-dark, github-light, one-dark, solarized-dark e solarized-light, além de mono, que usa só negrito e esmaecido.
- Como troco de tema?
- Execute /prismantis theme nord, ou escolha um em prismantis no /config. O comando salva a escolha como a configuração theme do plugin.
- Posso ver a resposta original?
- Sim. O README do autor diz para apertar ctrl+o em uma resposta para ver o original, ou desativar o mod em /plugin para voltar ao renderizador do próprio Claude Code.
- Ele usa a rede?
- Não. Ele traz o Prism e o beautiful-mermaid empacotados, não faz chamadas de rede, não executa comandos e não lê arquivos.
# Mods relacionados
DestaqueHuman in the loop
O Claude atribui a você as tarefas que só você pode fazer. Elas esperam em My tasks, contadas sob o prompt.
- painel
- status
- notificação
- transcrição
- Intercepta chamadas de ferramentas
- Lê seus prompts
- Altera a interface
- Adiciona comandos/ferramentas
- Armazena dados
testado com v2.1.310
DestaqueProject Sentinel
Faixa de status, handoff de contexto, cache de prompt e regras de permissão para execuções longas do Claude Code.
- acima do prompt
- painel
- spinner
- status
- notificação
- Lê arquivos
- Executa comandos
- Chama o modelo (usa sua cota)
- Intercepta chamadas de ferramentas
- Lê seus prompts
- Altera a interface
- Adiciona comandos/ferramentas
- Armazena dados
testado com v2.1.296
DestaqueAfter
Fila de prompts para o Claude Code: /after roda a próxima tarefa quando a atual termina, sem desviá-la.
- acima do prompt
- painel
- notificação
- status
- Chama o modelo (usa sua cota)
- Lê seus prompts
- Altera a interface
- Adiciona comandos/ferramentas
- Armazena dados
testado com v2.1.303
Destaquectx-handoff
Mantém o cache aquecido, transforma suas instruções em notas do projeto e passa adiante um contexto cheio.
- acima do prompt
- status
- notificação
- Lê arquivos
- Grava arquivos
- Chama o modelo (usa sua cota)
- Intercepta chamadas de ferramentas
- Lê seus prompts
- Altera a interface
- Adiciona comandos/ferramentas
- Armazena dados
testado com v2.1.303
Mais em Timers, tarefas e standups.