DevPulse AI

Tutorial do DevPulse AI

Da instalação a cada tela do app, com capturas. Use o índice para ir direto ao que precisa.

1. Instalação

O DevPulse AI é distribuído como instalador para Windows e pacote .deb para Linux. Baixe na página de download — basta informar seu e-mail.

Windows

  1. Baixe DevPulse AI_0.1.0_x64-setup.exe (recomendado). O .msi é para instalação gerenciada por TI.
  2. Dê dois cliques no arquivo. Se o Windows mostrar “O Windows protegeu o computador” (SmartScreen), clique em Mais informações → Executar assim mesmo. O aviso aparece porque o instalador ainda não tem assinatura digital paga; ele não indica um problema no arquivo.
  3. Siga o assistente. Ao final, o DevPulse abre sozinho e passa a iniciar com o atalho do Menu Iniciar.

Linux (Ubuntu, Debian, Mint, Pop!_OS)

No terminal, na pasta onde o arquivo foi baixado:

sudo apt install ./"DevPulse AI_0.1.0_amd64.deb"

O apt instala as dependências (WebKitGTK, GTK 3 e AppIndicator). Depois, abra DevPulse AI pelo menu de aplicativos.

Abriu o arquivo pela Central de Aplicativos? Ela mostra “Potencialmente inseguro — Este pacote é fornecido por terceiros”. O aviso aparece para qualquer .deb que não vem dos repositórios oficiais do Ubuntu (o mesmo acontece com Chrome, VS Code e Zoom) e não indica problema no arquivo. Você pode confirmar a instalação ali mesmo ou usar o comando acima, que não mostra o aviso. Para conferir que o arquivo é o original, compare o SHA-256 exibido na página de download com o resultado de sha256sum.

GNOME com Wayland: na primeira abertura, o sistema pergunta se o DevPulse pode registrar os atalhos globais Ctrl+Shift+D e Ctrl+Shift+P. Responda à janela — enquanto ela estiver aberta (às vezes atrás da mini-pill), o restante da tela não responde. Procure-a com Alt+Tab se não a vir.

Requisitos

  • Windows 10 ou 11, 64 bits (o WebView2 vem com o sistema ou é instalado pelo assistente).
  • Linux 64 bits com WebKitGTK 4.1 — Ubuntu 22.04+, Debian 12+ ou derivados.
  • Para os recursos de agente: Claude Code instalado e com login feito. Sem ele, o diff ao vivo, os gastos do proxy e as ferramentas continuam funcionando.

Desinstalar

No Windows, use Configurações → Aplicativos. No Linux, sudo apt remove dev-pulse-ai. Seus dados ficam em ~/.local/share/ai.devpulse.desktop (Linux) ou %APPDATA%\ai.devpulse.desktop (Windows) e podem ser apagados à mão — ou antes, pelo botão em Segurança.

2. Primeiro uso

Ao abrir, o DevPulse mostra a mini-pill no topo da tela e coloca o ícone na bandeja do sistema. O painel principal começa escondido: abra-o pelo botão de expandir da pill, pelo menu da bandeja ou com Ctrl+Shift+D.

Adicionar um projeto

  1. Abra o painel e vá em Código.
  2. Clique em Adicionar projeto e escolha a pasta do repositório.
  3. Pronto: a partir daí cada arquivo alterado na pasta aparece na lista, com o diff. Pastas como .git, node_modules e target são ignoradas, assim como o que estiver no seu .gitignore.

Conectar o Claude Code

Não há nada a configurar: o DevPulse lê os transcripts que o Claude Code já grava em ~/.claude/projects. Sessões, modelo, tokens, custo, contexto e a intenção declarada aparecem sozinhos em Agentes e na pill. Para importar o histórico, defina quantos dias ler em Configurações → Integrações.

Para aprovar edições antes da gravação, instale os hooks em Segurança e ligue o portão de aprovação.

Onde o app fica

  • Fechar (×) no painel não encerra o app: ele volta para a bandeja e a mini-pill reaparece.
  • Com o painel aberto, a pill flutuante se esconde e a mesma barra aparece encaixada no topo do painel.
  • Para sair de verdade, use Sair do DevPulse AI no menu da bandeja.

3. Mini-pill

A mini-pill é uma barra sempre visível com os números que importam enquanto o agente trabalha. Cada bloco é clicável e abre a seção correspondente do painel.

Mini-pill completa
Mini-pill completa: orçamento, burn rate, gastos, agentes, limites do plano e atividade de código.

O que cada anel mostra

BlocoO que significa
OrçamentoQuanto do orçamento ativo (de preferência o diário) já foi gasto. Fica amarelo ao passar do alerta e vermelho ao estourar. Sem orçamento, mostra o gasto do dia e o atalho Configurar.
Burn rateGasto por hora no ritmo atual e a diferença para a sua média dos últimos 7 dias. O anel enche quando o ritmo chega ao dobro da média.
Sessão atualCusto da sessão de agente que está trabalhando agora (ou a mais recente nas últimas 24 h). O anel mostra a fatia dela no gasto de hoje.
Opus · Sonnet · HaikuUm anel por modelo com o gasto de hoje e a fatia de cada um. Versões diferentes do mesmo modelo são somadas; outros modelos ganham anel próprio.
Todos os modelosTotal de hoje, somando todos os modelos e os ajustes de custo reportado.
AgentesSessões ativas sobre conhecidas (ex.: 2/3).
Sessão · Todos · Sonnet (limites)Limites do plano Claude: a janela de 5 horas, o limite semanal de todos os modelos e o semanal por modelo, com o horário de reset (↻). Amarelo a partir de 70%, vermelho a partir de 90%. Passe o mouse para ver o detalhe; clique para atualizar.
Atividade de códigoLinhas adicionadas e removidas na sessão; pulsa enquanto o agente escreve.
Botão vermelhoKill Switch: interrompe agentes cadastrados (aparece quando há algo para interromper).

Limites do plano exigem o Claude Code com login de uma assinatura (Pro/Max). O DevPulse só lê o token que o Claude Code já guarda e consulta a Anthropic a cada minuto, no máximo.

Versão compacta

O botão de compactar (ícone de setas para dentro) troca a pill por uma versão mínima com o gasto do dia, o percentual da sessão de 5 h e a atividade de código. O de expandir volta à completa. A escolha também fica em Configurações → Aparência.

Mini-pill compacta
Versão compacta.

Mover e encaixar

Arraste a pill por qualquer área vazia. Solte-a perto de uma borda da tela e ela encaixa nela; a posição é lembrada. Ctrl+Shift+P mostra ou esconde a pill.

4. Bandeja do sistema

Clique com o botão esquerdo no ícone da bandeja para abrir o resumo: gasto de hoje comparado a ontem, agentes das últimas 2 horas e arquivos recentes. Os três botões fazem:

  • Sanitizar — procura segredos e dados pessoais no texto da área de transferência e os substitui por marcadores (ex.: [REDACTED:ANTHROPIC_KEY]), pronto para colar num chat de IA.
  • Kill Switch — mesmo botão de emergência da pill.
  • Abrir painel — abre a janela principal.
Resumo da bandeja
Resumo aberto pelo ícone da bandeja.

O botão direito abre o menu: Abrir resumo, Abrir painel, Abrir Diff Inspector, Mostrar/ocultar mini-pill, Sobre o DevPulse AI… e Sair.

5. Painel principal

O painel tem a barra de título própria (com o estado geral — Tudo funcionando —, o sino de notificações e a conta), o menu lateral com as seções e, no topo do conteúdo, a mesma barra da mini-pill.

  • Ctrl+1 … Ctrl+9 pulam direto para cada seção, na ordem do menu.
  • Ctrl+B recolhe o menu lateral para só os ícones.
  • O ponto ao lado do nome indica a saúde do app: verde, amarelo (alguma fonte degradada, como cotação desatualizada) ou vermelho. Passe o mouse para ver o motivo.

6. Visão geral

Visão geral
Visão geral: cartões do dia, gráfico de 30 dias, agentes, código, logs e ações rápidas.
  • Gasto hoje, Burn rate e Latência média (das chamadas pelo proxy), com a variação contra ontem e contra a média da semana. O ~ antes de um valor indica que ele é estimado pela tabela de preços.
  • Gastos por dia — últimos 30 dias com a linha do orçamento diário. O botão Tabela mostra os mesmos dados em linhas.
  • Agentes — sessões e seus estados (Executando, Ocioso, Aguardando aprovação, Em pausa, Erro) e o botão Parar tudo.
  • Atividade de código recente e Live logs — o que mudou e o que aconteceu, com links para as seções completas.
  • Ações rápidas — calcular tokens, sanitizar a área de transferência, gerar mensagem de commit e validar JSON contra um schema.

7. Código — Live Code Diff Inspector

O Diff Inspector mostra, em tempo real, cada arquivo que o agente (ou você) alterou desde o início da sessão.

Diff Inspector
Diff Inspector: projeto e sessão no topo, ações e arquivos à esquerda, diff à direita e o cartão do agente com o chat.

Na linha do título ficam o projeto, a sessão (● indica sessão em andamento) e o botão +, que inicia uma sessão manual — útil para começar uma “fotografia” nova antes de pedir algo ao agente. Uma sessão termina sozinha depois de alguns minutos sem alterações (configurável).

No topo da sidebar: Gerar commit, Portão de aprovação (a bolinha verde indica ligado) e Adicionar projeto. Se o agente estiver mexendo direto no branch principal, aparece um aviso amarelo.

Lista de arquivos

Cada arquivo mostra o estado — Escrevendo (alterado nos últimos segundos), Modificado, Revisado, Revertido, além de Criado e Removido —, quem alterou (o agente da sessão ou outra origem), há quanto tempo e o total de linhas +/−.

Visualizar o diff

  • Referência: compare com a baseline da sessão (como o arquivo estava quando a sessão começou) ou com o HEAD (último commit).
  • Unificado ou Lado a lado, com realce de sintaxe e numeração das duas versões.
  • Marcar como revisado (R) para controlar o que você já leu.
  • Abrir no editor leva à linha certa usando o comando configurado (ex.: code --goto {file}:{line}).

Reverter

Você pode desfazer um trecho (botão em cada bloco do diff), o arquivo inteiro ou a sessão toda (link acima da lista). O DevPulse restaura o conteúdo do início da sessão — alterações feitas antes dela são preservadas — e confere se o arquivo não mudou enquanto você decidia. Arquivos criados na sessão só são apagados se você confirmar.

Portão de aprovação

Com os hooks do Claude Code instalados e o portão ligado, cada edição proposta pelo agente para antes de ser gravada e aparece na fila Aguardando aprovação, com o diff do que vai mudar.

Edição aguardando aprovação
Uma edição aguardando aprovação, com o tempo restante para a resposta automática.
AçãoAtalhoO que acontece
Aceitar alteraçãoCtrl+EnterLibera a gravação. Com várias na fila, há também Aceitar todas da fila.
Pedir ajusteCtrl+IAbre um campo para dizer o que mudar (ex.: “use anyhow em vez de unwrap”); o agente recebe o comentário e tenta de novo.
RejeitarCtrl+⌫Descarta a edição; o agente é avisado.
Abortar sessão—Nega e interrompe o agente até você mandar uma nova mensagem.

Se você não responder em 5 minutos (300 s, configurável), o agente segue o fluxo normal dele. Se o DevPulse estiver fechado, o Claude Code também segue normalmente — os hooks nunca travam o seu trabalho.

Chat com o agente

O cartão do agente, abaixo da lista, mostra o modelo, o uso de contexto, o total de linhas e a conversa da sessão — inclusive o que você digitou no terminal. Escreva na caixa e pressione Enter para mandar uma mensagem para a mesma sessão (Shift+Enter quebra a linha).

Ctrl+M (ou o botão de expandir ao lado de enviar) abre a conversa numa caixa grande no rodapé, com texto maior. Arraste-a pela barra de título para qualquer lugar; duplo clique a recentraliza. Ctrl+M ou Esc devolve ao cartão.

Chat expandido
Conversa expandida com Ctrl+M.

Sessão aberta em outro terminal? Para não misturar dois históricos, o DevPulse não escreve numa sessão que está em uso em outro lugar e oferece abrir uma Nova conversa neste projeto. Edições pedidas pelo chat são aplicadas direto e aparecem no diff.

Gerar commit

Gera uma mensagem a partir do diff: usa o que estiver no índice (staged) ou, se não houver nada, as alterações não commitadas. A versão local segue a convenção configurada (ex.: Conventional Commits); a opção com IA envia o diff à Anthropic com a sua chave. Revise, edite e confirme para criar o commit.

Gerar commit
Mensagem de commit sugerida a partir do diff.

Atalhos do Diff Inspector

J/K (ou setas) próximo/anterior arquivo · N/P próximo/anterior trecho · R marcar como revisado.

8. Gastos

Gastos
Gastos: resumo, cotação, gráfico, gasto por modelo e orçamentos.

Os cartões mostram hoje, semana, mês e a projeção do mês, em reais com o valor em dólar embaixo. O gasto vem dos transcripts dos agentes (tokens reais, custo estimado pela tabela de preços) e das chamadas pelo proxy. Em planos de assinatura, o valor é o custo equivalente em API — útil para comparar modelos e sessões. Por modelo alterna entre hoje, semana e mês.

Orçamentos

Crie orçamentos diários, semanais ou mensais com os percentuais de alerta (ex.: 50, 80, 100). Ao cruzar cada um, chega uma notificação. O hard cap faz o proxy local recusar novas chamadas ao atingir 100%. Disparar alerta de teste mostra como o aviso aparece.

Cotação do dólar

Por padrão, a PTAX do Banco Central do dia (atualizada pelo botão ↻). Em Configurações → Moeda e câmbio dá para usar uma cotação fixa e somar IOF e spread do cartão.

Calculadora de tokens

Cole um texto ou escolha um arquivo para contar tokens localmente e estimar o custo em cada modelo, com os tokens de saída esperados. Contar via API pede a contagem exata à Anthropic (envia o texto).

Tabela de preços e conciliação

A tabela de preços por modelo vem com o app, mostra a data da versão e pode ser editada ou restaurada. A conciliação compara, por dia, a estimativa local com o custo informado pela API de custos da Anthropic — para isso, cadastre uma chave administrativa em Segurança.

9. Agentes

Agentes
Agentes: uma ficha por sessão, processos monitorados e logs.

Cada sessão do Claude Code vira uma ficha com a pasta, a intenção declarada, o custo, o uso de contexto (com alerta ao passar de 80%, configurável), a última atividade, o modelo, o branch e as linhas alteradas. O lápis permite dar um nome amigável e uma descrição — o nome passa a aparecer em todo o app.

Processos monitorados

Cadastre outros agentes ou ferramentas pelo nome do processo, pela linha de comando ou pelo PID — name:aider, cmd:python agent.py, pid:1234. Detectar agentes sugere processos conhecidos que estão rodando. Só o que está cadastrado aqui (e os subprocessos) pode ser encerrado pelo Kill Switch.

Kill Switch

O botão vermelho (na pill, na bandeja e aqui) pede confirmação e então encerra os processos cadastrados — primeiro com um pedido gentil e, após o tempo de espera configurado, à força — e interrompe as sessões com aprovação pendente. O modo de emergência dispensa a confirmação.

Live logs

Tudo o que o DevPulse registrou — edições, proxy, alertas, cotação — com filtro por texto.

10. Segurança

Segurança
Segurança: credenciais no cofre, hooks e sanitizador.

Credenciais

Cadastre as chaves de API usadas pelas ações de IA, pelo proxy e pela conciliação (Anthropic, OpenAI, Qdrant…). Elas ficam no cofre do sistema operacional (Gerenciador de Credenciais do Windows, Secret Service/GNOME Keyring no Linux); o banco do app guarda só o rótulo e o final da chave.

Hooks do Claude Code (aprovação prévia)

Instalar hooks adiciona hooks HTTP ao ~/.claude/settings.json — o que será adicionado aparece antes, e uma cópia do arquivo original é guardada. A partir daí, novas sessões do Claude Code consultam o DevPulse antes de cada edição (ver portão de aprovação). Desinstalar hooks remove só o que o DevPulse adicionou.

Sanitizador de segredos e detector de injeção

O sanitizador encontra chaves privadas, chaves e tokens (Anthropic, OpenAI, AWS, GitHub, Slack, Google, Stripe, JWT, Bearer), senhas em connection strings e dados pessoais (CPF, CNPJ, e-mail, cartão de crédito, telefone) e os troca por marcadores como [REDACTED:CPF] antes de você colar o texto num LLM. O detector de prompt injection dá uma nota de risco a um texto (ex.: uma página ou issue que o agente vai ler) e aponta os trechos suspeitos — é um alerta, não uma garantia. Tudo roda localmente.

Dados locais

Limpar histórico, snapshots e registros apaga sessões, alterações, uso, notificações e logs. Credenciais e configurações são mantidas.

11. Proxy

Proxy
Proxy: requisições nas últimas 24 h, rotas, VCR e registro de chamadas.

O proxy é um gateway local para as APIs de LLM. Tudo o que passa por ele entra nos gastos com o custo exato da resposta, e você ganha latência, tempo até o primeiro token (TTFT) e o registro de cada chamada.

Ativar e apontar o agente

  1. Clique em Ativar proxy (porta padrão 47822).
  2. Em Rotas, clique no ícone de copiar ao lado da rota: ele copia a variável de ambiente pronta, por exemplo
    export ANTHROPIC_BASE_URL=http://127.0.0.1:47822/anthropic
  3. Cole no terminal antes de iniciar o agente (ou no seu .bashrc/.zshrc). Para OpenAI, a variável é OPENAI_BASE_URL.

Registrar corpos guarda requisição e resposta para inspeção (clique numa linha); Mascarar segredos passa o sanitizador neles antes de gravar. Com um orçamento com hard cap, o proxy recusa chamadas ao estourar.

VCR e falhas simuladas

Gravar salva respostas reais; Reproduzir devolve a gravação para a mesma requisição, sem gastar tokens (replays não entram no gasto e aparecem marcados como VCR). Ótimo para testes e demonstrações. Falhas simuladas injetam latência extra, rate limit (429), erro de servidor (5xx) ou timeout numa porcentagem das chamadas — para ver como o seu agente se comporta quando a API falha.

12. Prompts

Prompts
Prompts: templates com variáveis e as demais abas de ferramentas.
AbaPara que serve
TemplatesPrompts reutilizáveis com variáveis {{nome}}. Ao salvar, cada variável vira um campo; Preencher monta o texto final.
ComparadorDiff entre duas versões de um prompt, com similaridade e tokens de cada uma.
RedundânciaEncontra instruções repetidas e estima quantos tokens são desperdiçados.
JSON SchemaValida a saída de um modelo contra um schema. Pode colar como veio: cercas ```json e texto em volta são removidos.
Few-shotMonta exemplos de entrada/saída — ou importa as últimas interações do proxy — e gera o bloco no formato de texto ou de mensagens JSON.
EvalsConjuntos de casos com expectativas (contains, notContains, regex, equals, jsonSchema, maxChars). Avalie saídas já informadas (offline) ou rode no modelo (gasta tokens), com histórico.
UtilitáriosÁrvore de diretórios do projeto, seletor de contexto (junta arquivos com segredos mascarados), JSON para tipos (TypeScript, Rust e Python) e ações de IA: explicar erro, gerar regex e documentar código.

13. RAG

RAG
RAG: testador de busca vetorial e similaridade entre textos.

O testador de busca consulta um Qdrant (o embedding da pergunta é gerado com a sua chave OpenAI) ou qualquer endpoint HTTP com um corpo de requisição usando {{query}} e {{k}}, e mostra os trechos retornados com a pontuação. A similaridade entre textos compara dois trechos de forma lexical (local) ou por embeddings (cosseno).

14. Configurações

Configurações
Configurações completas.
GrupoOpções
Aparência e idiomaPortuguês ou inglês, tema escuro ou claro, mini-pill completa ou compacta, cores de diff para daltonismo (azul/laranja).
Projetos observadosAdicionar e parar de observar pastas (o histórico fica até a retenção).
Sessões e retençãoMinutos sem alterações para encerrar a sessão, dias de histórico, padrões extras a ignorar (sintaxe .gitignore) e o comando do editor com {file} e {line}.
IntegraçõesLeitura dos transcripts do Claude Code, pasta e dias a importar, alerta de contexto, tempo de espera da aprovação, o que fazer sem resposta e o modelo das ações de IA.
Moeda e câmbioPTAX ou cotação fixa, IOF e spread do cartão, e a consulta online da PTAX.
Kill SwitchEspera antes de forçar o encerramento e modo de emergência.
PrivacidadeMétricas anônimas (opt-in, desligado por padrão) e modo demonstração com dados fictícios.
SobreVersão, plataforma, pasta de dados e estatísticas do observador de arquivos.

15. Notificações, conta e Sobre

O sino abre a central de notificações — orçamentos, aprovações pendentes, contexto alto — com Marcar todas como lidas. As mais importantes também aparecem como notificação do sistema.

Central de notificações
Central de notificações.

O ícone de conta mostra o plano e ativa uma licença Pro com a chave recebida. O app funciona inteiro sem login. Sobre… (no rodapé do menu, na bandeja ou nas Configurações) mostra versão, pasta de dados e copyright.

Sobre o DevPulse AI
Janela Sobre.

16. Atalhos de teclado

AtalhoOndeAção
Ctrl+Shift+DGlobalAbrir ou esconder o painel
Ctrl+Shift+PGlobalMostrar ou esconder a mini-pill
Ctrl+1…9PainelIr para a seção
Ctrl+BPainelRecolher o menu lateral
J K / N P / RCódigoArquivos / trechos / marcar revisado
Ctrl+Enter · Ctrl+I · Ctrl+⌫AprovaçãoAceitar · pedir ajuste · rejeitar
Ctrl+M · EscCódigoExpandir/recolher o chat
Enter · Shift+EnterChatEnviar · quebrar linha

No macOS, use ⌘ no lugar de Ctrl.

17. Solução de problemas

A pill não mexe e o painel não abre logo após instalar (Linux/Wayland).

Provavelmente há uma janela do sistema pedindo permissão para os atalhos globais, escondida atrás da pill. Use Alt+Tab para encontrá-la e responda.

Os atalhos globais não funcionam.

No Wayland eles dependem do portal do ambiente (GNOME 48+, KDE). Em versões sem suporte, use o menu da bandeja. No X11 e no Windows funcionam direto.

Não aparecem sessões em Agentes.

Confira em Configurações → Integrações se a leitura do Claude Code está ligada e se a pasta é a certa (padrão ~/.claude/projects). Use o Claude Code num projeto: a sessão aparece em segundos.

Os limites do plano mostram “—”.

Passe o mouse para ver o motivo. Em geral, o login do Claude Code expirou: abra o Claude Code para renovar. Contas só com chave de API não têm limites de plano.

Os valores aparecem com “~”.

São estimativas pela tabela de preços (tokens reais × preço). Passe pelo proxy ou use a conciliação para ter o custo informado pelo provedor.

Uma edição não passou pelo portão de aprovação.

Os hooks valem para sessões do Claude Code iniciadas depois da instalação, e o portão precisa estar ligado no projeto. Edições feitas fora do agente aparecem só no diff.

Não encontrou? Veja o FAQ ou escreva para suporte@devpulseai.app.br.