A descrição abaixo segue a matriz de capacidades do próprio projeto. Onde existe limitação declarada, ela aparece junto com o recurso — não depois da instalação.
Editor e explorador de arquivos
O editor usa o Monaco Editor, projeto open source da Microsoft derivado das fontes do VS Code, com realce de sintaxe para dezenas de linguagens, ligaduras da Fira Code e configuração de quebra de linha, tabulação e rolagem.
O explorador funciona igual em pastas do seu computador e em servidores por SFTP: criar, renomear, excluir, enviar e baixar arquivos, com ícones por tipo de arquivo.
Diagnósticos de sintaxe e de servidores de linguagem aparecem no texto, na margem e no minimapa. Alterações Git válidas continuam verdes; erros reais são vermelhos.
Na prática
Dois grupos de edição lado a lado e visualização de diff
Autoria Git por linha (blame) direto no editor
Ação Corrigir com o Codex nos diagnósticos, inclusive sobre buffers ainda não salvos
Visualização de PDF, listagem de .zip e edição de planilhas Excel
Salvamento atômico, detecção de alteração externa e recuperação de rascunhos
Limitações declaradas: Planilhas não participam do salvamento transacional de múltiplos arquivos.
Terminal integrado
O terminal é baseado em xterm.js e o ciclo de vida das sessões fica no backend Rust, não no frontend. Você pode abrir até quatro terminais por contexto, dividir a tela na horizontal ou na vertical e redimensionar cada painel.
Comandos usados com frequência podem ser salvos por perfil de conexão e disparados por atalho.
Na prática
Terminais locais e sobre SSH na mesma interface
Divisão horizontal e vertical com redimensionamento
Comandos salvos por perfil de conexão
Digitação sem atraso artificial de agrupamento de saída
Limitações declaradas: Limite de quatro terminais simultâneos por contexto.
Git Explorer
O controle de código-fonte usa o Git real instalado, com o mesmo executor para o workspace local e para repositórios acessados por SSH. Não existe um segundo motor de status nem download do repositório para a máquina local.
As decorações de status aparecem na árvore de arquivos e no editor, com cache para manter a navegação rápida em repositórios grandes.
Na prática
Preparar, revisar e commitar arquivo por arquivo ou em bloco
Branches, histórico e blame por linha
Sincronizar, guardar (stash) e restaurar
Funciona igual em repositório local e em servidor remoto
Resolução de conflitos
As entradas em conflito vêm de `git ls-files -u`, e as versões base, atual e de entrada são carregadas sob demanda direto dos objetos do Git. Nada é adivinhado a partir do texto do arquivo.
O parser reconhece os formatos merge, diff3 e zdiff3, blocos adjacentes, LF e CRLF, BOM UTF-8 e ausência de quebra de linha final.
Na prática
Ações Atual, Entrada, Ambos e Base por bloco de conflito
Navegação entre conflitos e ação global com confirmação
Alterações entram no histórico de undo/redo do editor
Cache dos blobs por cinco minutos para reabrir sem custo
SSH, SFTP e servidores
SSH e SFTP são implementados em Rust puro e rodam exclusivamente no backend. O frontend nunca fala diretamente com o servidor — apenas troca comandos e eventos.
A identidade de cada servidor é confirmada por você no primeiro acesso e re-confirmada com alerta forte caso mude. Nenhum host é aceito automaticamente.
Na prática
Agente OpenSSH, ProxyJump e encaminhamento de portas em loopback
Sincronização de pastas com prévia revalidada antes de aplicar
Buckets S3 pelo SDK oficial da AWS, no mesmo lugar
Quedas de rede se recuperam sozinhas em vez de travar a sessão
Limitações declaradas: Sem suporte a Pageant, `ProxyCommand`, watcher remoto ou sincronização bidirecional.
Cliente de banco de dados
O cliente de banco é nativo, sem instalar nada externo. A árvore de esquema navega de bancos a colunas, carregando metadados sob demanda e mantendo cache.
O editor SQL é o Monaco, com múltiplas abas por conexão, autocomplete ciente do esquema (tabelas, colunas, alias, CTE e subquery), Ctrl+Enter para executar e cancelamento de consulta em andamento.
Toda consulta é limitada e transmitida em stream: uma tabela inteira nunca é carregada na memória.
Na prática
Abas de Dados, Estrutura e DDL por tabela
Edição de célula com chave primária obrigatória e concorrência otimista
Exportação em CSV, JSON, SQL INSERT e SQL UPDATE
Tempo decorrido visível enquanto a consulta está em execução
Modo somente-leitura por conexão e confirmação antes de SQL destrutivo
Limitações declaradas: Drivers fora de PostgreSQL, MySQL/MariaDB e SQLite e operações administrativas específicas não são suportados.
Cliente de APIs
As requisições são executadas pelo backend Rust. O frontend edita contratos tipados e projeta resultados; ele nunca recebe client secrets nem cria transporte de rede próprio.
OAuth 2.0 Client Credentials é suportado, com o client secret guardado no Gerenciador de Credenciais do Windows e o token mantido apenas em memória pelo tempo da chamada.
Na prática
HTTP e GraphQL sobre HTTP, com histórico e ambientes
Assertions declarativas sobre a resposta
Sessões WebSocket em texto
Importação do Postman e Insomnia em JSON, YAML ou YML
Exceção TLS explícita e isolada por requisição
Limitações declaradas: Sem gRPC, SSE como protocolo dedicado, scripts arbitrários, mocks ou geração de clientes.
Inteligência artificial (Codex)
O Codex roda com o runtime oficial isolado dentro do DiguinCode e usa a sua conta, em sessão separada da do VS Code. O contexto é o perfil Local, SSH ou S3 que estiver selecionado.
As conversas têm histórico por conta, fila de mensagens, medidor de consumo de tokens em tempo real e checkpoints retomáveis.
O navegador seguro pode ser anexado à conversa para fornecer um snapshot ou, com autorização explícita e revogável, permitir inspeção e interação ao vivo no site aberto.
Na prática
Modos de aprovação configuráveis para ações sensíveis
Revisão das alterações locais dentro da conversa
Correções do editor aparecem no buffer durante o turno, sem salvar automaticamente
Controle opcional do navegador isolado, sem expor campos de senha
Inventário somente-leitura de AGENTS.md, skills, hooks e MCP carregados
Ferramentas com limite de tamanho de resposta para não gastar tokens à toa
Limitações declaradas: Sem revisão de código remoto, sincronização de conversas entre máquinas ou rollback de arquivos pelo agente.
Navegador seguro integrado
Sites abrem em uma janela nativa separada, sem a ponte IPC nem as capabilities Tauri do aplicativo. A página não recebe acesso às conexões, credenciais, arquivos ou bancos do workspace.
A barra mostra o endereço atual, voltar, avançar, recarregar e DevTools. Durante uma navegação, o indicador de carregamento conta os segundos decorridos para deixar claro quando a rede ou o ambiente de desenvolvimento está demorando.
Com autorização explícita e revogável para a conversa atual, o Codex pode inspecionar e interagir ao vivo com a página aberta para reproduzir e validar fluxos.
Na prática
Navegação HTTP/HTTPS em perfil isolado do aplicativo
Barra de endereço, histórico, recarregar e DevTools do Edge
Loading com tempo decorrido em cada navegação
Snapshot imutável ou controle ao vivo pelo Codex
Console, rede, DOM acessível e performance sob escopos escolhidos
Campos de senha, cookies, storage, headers e bodies ficam fora do contexto
Limitações declaradas: Downloads e protocolos fora de HTTP/HTTPS são bloqueados. O controle ao vivo exige autorização explícita para cada conversa.
Busca avançada
São quatro fluxos distintos: busca no arquivo atual, Quick Open por caminho, busca e substituição textual em todo o workspace e inteligência de símbolos.
Em conexões remotas, a busca usa `find` e `grep`, presentes em qualquer servidor Unix, e traz apenas o resultado — sem baixar a árvore de arquivos e sem instalar nada no servidor.
Na prática
Ctrl+Shift+F e Ctrl+Shift+H com regex, globs e streaming de resultados
Quick Open (Ctrl+P) sobre índice de caminhos do workspace
Buffers não salvos prevalecem sobre o conteúdo em disco
Cancelamento real da busca em andamento
Workbench e múltiplas janelas
Cada janela mantém seu próprio workspace, conexão, terminais e conversa do Codex. É possível trabalhar em projetos locais e SSH ao mesmo tempo sem misturar o estado entre eles.
A Paleta de Comandos centraliza as ações disponíveis no contexto atual, enquanto o comando de terminal do DiguinCode abre arquivos, pastas e posições de linha a partir do shell.
Na prática
Dois grupos de edição lado a lado
Terminal, Problemas, Saída, Testes e Depuração em painéis acopláveis
Janelas independentes para workspaces diferentes
Paleta de Comandos e atalhos configuráveis
Comando de terminal para abrir caminho, linha e coluna
Limitações declaradas: O layout persistente acima de dois grupos de edição ainda não é suportado.
Documentos, planilhas e visualizadores
Arquivos DOCX abrem em um editor visual com páginas, estilos e imagens. Planilhas XLSX, XLS, CSV e TSV ganham grade editável com fórmulas e múltiplas abas.
PDFs, imagens, arquivos Markdown e pacotes ZIP usam visualizadores próprios. O arquivo continua no workspace local ou remoto e não é enviado a um serviço externo para ser exibido.
Na prática
Editor visual de DOCX com renderização por páginas
Planilhas com fórmulas, múltiplas abas e exportação
Leitor de PDF e prévia de imagens e Markdown
Listagem segura do conteúdo de arquivos ZIP
Funciona com arquivos locais e por SFTP
Limitações declaradas: Planilhas não participam do salvamento transacional de múltiplos arquivos; formatos complexos podem exigir conferência visual após a edição.
Central de Operações
A Central registra somente ações significativas do próprio DiguinCode, com horário, duração, resultado, domínio e o nome exibido do contexto. Operações em andamento que forem interrompidas pelo fechamento do app ficam identificadas como tal.
Argumentos, SQL, comandos de terminal, caminhos, conteúdo de arquivos, respostas e credenciais não entram no histórico. Nada é transmitido automaticamente.
Na prática
Filtros por estado e domínio
Duração e resultado das operações relevantes
Resumo seguro para copiar ou anexar voluntariamente a um relato
Histórico local, limitado e versionado
Limpeza das operações concluídas
Limitações declaradas: Não é telemetria nem auditoria remota e não registra o conteúdo executado.
Acessibilidade e uso por teclado
Diálogos podem ser fechados com Esc e devolvem o foco ao controle que os abriu. A interface também verifica nomes acessíveis, semântica e contraste nos temas padrão.
O projeto mantém uma auditoria automatizada com axe-core para regras WCAG A/AA nas superfícies já cobertas e uma lista de homologação manual para zoom, escalas do Windows e leitores de tela.
Na prática
Fluxos principais navegáveis por teclado
Foco visível e restaurado após fechar diálogos
Tema claro, escuro e do sistema com contraste verificado
Auditoria automatizada do shell e das Configurações
Checklist manual para zoom e tecnologias assistivas
Limitações declaradas: Monaco, xterm e leitores de tela ainda exigem homologação manual; a auditoria automática não garante compatibilidade integral com tecnologia assistiva.
Temas e personalização
Um perfil de cores é um conjunto de valores para tokens semânticos predefinidos — nunca CSS ou layout arbitrário. Isso mantém o layout, a tipografia e o espaçamento intactos em qualquer perfil.
O perfil nativo `DiguinCode Padrão` é somente leitura e serve de base e fallback para todos os outros.
Na prática
Tema claro, escuro ou seguindo o Windows
Perfis de cores personalizados com verificação de contraste
Temas do Monaco sincronizados com o perfil ativo
Interface em português (padrão) ou inglês
Limitações declaradas: A migração de todos os fluxos históricos para i18n ainda está em andamento.
Atualização automática
A atualização usa o updater do Tauri: cada artefato é assinado com uma chave Ed25519 e a chave pública correspondente está compilada dentro do aplicativo instalado. Um pacote sem assinatura válida é recusado.
As versões são publicadas no repositório oficial de releases no GitHub. Nenhum outro canal é usado.
Na prática
Verificação periódica de novas versões
Instalação em modo passivo, sem reconfigurar nada
Conexões, credenciais e preferências preservadas ao atualizar
Origem única e pública: GitHub Releases
Buckets S3
Buckets S3 aparecem como mais um tipo de perfil, ao lado de SSH e banco de dados, e usam o SDK oficial da AWS no backend Rust.
Na prática
Navegação de buckets e objetos
Credenciais no Gerenciador de Credenciais do Windows
Mesma organização em pastas dos demais perfis
Limitações declaradas: Capacidades além do navegador de objetos não são oferecidas.
Workspace Trust
Cada workspace tem um estado — desconhecido, restrito ou confiável. Ferramentas que executam processos exigem um workspace confiável, e revogar a confiança encerra os processos em andamento.
Na prática
Falha fechada: sem decisão, não executa
Revogação encerra o que estiver rodando
Decisão por workspace, não global
Limitações declaradas: É um controle do aplicativo, não um sandbox do sistema operacional.
Tarefas, testes e depuração
As tarefas ficam versionadas junto do projeto e rodam no workspace local ou por SSH, com painel de saída e cancelamento. O Test Explorer descobre e executa testes, e a depuração usa o protocolo DAP.
Na prática
Tarefas Local e SSH com saída e cancelamento
Test Explorer com adapters Vitest e Cargo
Depuração com CodeLLDB e debugpy: pilha, variáveis e breakpoints
Servidores de linguagem (LSP) com diagnósticos no painel Problemas
Limitações declaradas: Sem inputs, watchers ou problem matchers customizados nas tarefas. Jest, Playwright, PHPUnit, pytest e Go test não são suportados no Test Explorer. A depuração não suporta `attach` nem outros adapters.
Backup criptografado
O backup leva conexões SSH, S3 e banco, pastas, comandos salvos, o Cliente de API inteiro, temas, workspaces e preferências. O arquivo é protegido com AES-256-GCM e senha.
As senhas das conexões são restauradas direto no Gerenciador de Credenciais do Windows, sem passar em texto aberto pela interface.
Na prática
Arquivo único, portátil e criptografado
Restauração direta no cofre do Windows
Backups de versões anteriores continuam sendo importados
O que o DiguinCode não faz
A matriz de capacidades e limitações mantida no projeto foi usada como fonte desta página. Não existe versão para macOS ou Linux, não existe telemetria de produção, não existe editor visual de merge em três vias e não existem funcionalidades de interface que simulem recursos ainda não implementados.