
Feixes
Temas ao redor de um círculo, com as ligações agrupadas por tema. Mostra como os assuntos se relacionam sem virar novelo.
Hierarchical edge bundling, Holten 2006Omnimind versão 0.2
O Omnimind é a memória das suas IAs de código, em arquivos seus. Ele fica entre a IA e uma pasta do seu computador: entrega o que importa no início da sessão, registra o que você corrige e mostra tudo o que foi gravado, com desfazer.
Toda sessão de IA começa do zero. Você repete o gerenciador de pacotes, o formato do commit e aquela decisão de duas semanas atrás. O Omnimind guarda isso em arquivos seus e entrega o que importa quando a próxima sessão começa.
~/Omnimind/
├── brain.toml nome e regras do cofre
├── notes/ suas notas em Markdown
├── memories/
│ ├── decision/ o que foi decidido
│ ├── preference/ como você gosta de trabalhar
│ ├── procedure/ como se faz
│ ├── concept/ o que algo significa
│ └── episode/ o que aconteceu
└── .omnimind/ privado e descartável
├── journal/ diário só de anexar
└── snapshot.bin índice para abrir rápido
Dois caminhos saem da conversa. Os hooks anexam ao diário o que você disse, sem passar por modelo nenhum. O servidor MCP dá à IA quatro ferramentas para buscar, ler e gravar. Toda escrita de memória passa pelo mesmo portão.
| Ferramenta | Para quê |
|---|---|
memory_search | Buscar em notas e memórias, com origem, estado e cobertura |
memory_read | Abrir o texto inteiro. Segredos saem redigidos |
memory_write | Gravar, editar, substituir, arquivar |
memory_agenda | Listar o trabalho de consolidação pendente |
App, CLI, MCP e hooks gravam memória por um único caminho, Brain::apply. As regras são código, não um pedido ao modelo.
| Resultado | Quando |
|---|---|
| Recusada | O texto traz um segredo: formato conhecido de chave ou token, ou senha=. O conteúdo não vai nem para o diário. |
| Em revisão | Não foi você quem escreveu, e o texto traz caractere invisível, letra disfarçada ou algo que parece instrução: ignorar regras, esconder algo de você, comando de shell, envio de chaves. Também quando a origem é externa. |
| Memória da IA | A escrita passou, mas sem uma citação sua que a sustente. Entra com aviso. |
| Memória sua | Uma citação literal sua, de ao menos 20 caracteres e registrada no diário, sustenta o texto. |
A autoridade vem do transporte e do diário, nunca de um campo da requisição. Uma memória marcada à mão como sua perde esse status se o arquivo não tiver vindo de uma escrita do produto.
O portão é triagem, não garantia. Na última rodada de testes hostis, anterior ao redesenho, 5 de 108 variações passaram. Por isso a defesa principal é a origem: memória em revisão fica fora da busca, e só você pode liberar.
O app abre no Grafo. As três vistas usam os mesmos dados e as mesmas sete cores de tema, sempre com o nome do tema ao lado. Quando a IA lê algo, você vê na hora.

Temas ao redor de um círculo, com as ligações agrupadas por tema. Mostra como os assuntos se relacionam sem virar novelo.
Hierarchical edge bundling, Holten 2006
Cada tema cresce do centro. Os ramos engrossam com o uso, e a leitura da IA acende o caminho.
Space colonization, Runions 2007O cofre em três dimensões. Cada corpo é uma nota ou uma memória. Assuntos parecidos ficam perto, e as linhas de constelação são as ligações.
Quando a IA lê, uma luz viaja de um corpo ao seguinte.


Seis crates num workspace. A interface é própria: winit na janela, wgpu na GPU e cosmic-text no texto, sem framework de UI e sem WebView. Não há banco de dados nem processo em segundo plano.
As regras moram em crates que não conhecem janela nem GPU. O core concentra cofre, diário, busca e o único caminho de escrita. O graph recebe itens e ligações e devolve fitas de triângulos. O ed é o modelo do editor, feito para cada tecla ser testada contra um oráculo.
A casca liga isso ao mundo. O app cuida da janela e das telas. O cli é o binário omnimind: linha de comando, servidor MCP por stdio e hooks. Os dois usam o mesmo core, então o app e a IA seguem as mesmas regras.
A thread principal só trata eventos e desenha. Uma thread de dados é a única dona do cofre: lê o diário, grava notas e devolve instantâneos prontos para desenhar. As duas conversam por canais.
O app redesenha sob demanda. Parado, ele não gasta um quadro: nem o cursor pisca. A geometria do grafo é montada em outra thread e desenhada numa textura que só muda quando os dados mudam.
A busca usa um índice invertido em memória, com BM25F e stemming em português e inglês, sem embeddings. Cada processo tem o seu, e o arquivo de instantâneo é descartável.
| Medida | Limite | Medido |
|---|---|---|
| App instalado | 100 MB | 12 MB |
| Abrir o app, até o primeiro quadro | 2 s | 0,59 s |
| Memória do app em uso | 500 MB | 143 MB |
| Servidor da IA em repouso | 150 MB | 102,6 MB |
| Busca, p95 | 100 ms | 32,8 ms |
| Escrita de memória, p95 | 32,2 ms | |
| Janela real, 300 quadros, intervalo p99 | 60 Hz | 17,05 ms |
| Quadros em repouso, em 4 s | 0 | 0 |
| Grafo com 2.000 itens, Feixes, p99 | 16,67 ms | 7,28 ms |
| Grafo com 2.000 itens, Raízes, p99 | 16,67 ms | 5,24 ms |
Em vez de pedir aprovação antes de cada memória, o Omnimind deixa a IA gravar e mostra tudo o que mudou. O que não serve, você desfaz.
.md e valem por si. Dá para ler, editar e versionar com qualquer ferramenta. Apagar a pasta .omnimind/ perde histórico e índice, nunca conhecimento.omnimind undo.
Você precisa do Omnimind e de uma IA de código: Claude Code ou GitHub Copilot.
Os binários ficam na página de releases.
| Sistema | Estado |
|---|---|
| macOS | Plataforma de referência, em Mac com Apple Silicon. É onde o app foi medido e testado. |
| Windows | Novo. Gerado pelo GitHub Actions, ainda sem teste em máquina real. |
| Linux | Novo. Gerado pelo GitHub Actions, ainda sem teste em máquina real. |
No Mac, arraste Omnimind.app para Aplicativos antes de conectar: a conexão guarda o caminho do app. O cofre nasce em ~/Omnimind.
Em todos os projetos de uma vez:
/Applications/Omnimind.app/Contents/MacOS/omnimind connect claude-code --global --brain ~/Omnimind
Ou só no projeto da pasta atual:
/Applications/Omnimind.app/Contents/MacOS/omnimind connect claude-code --brain ~/Omnimind --project .
Na pasta do projeto:
/Applications/Omnimind.app/Contents/MacOS/omnimind connect copilot --brain ~/Omnimind --project .
Use --print para ver o que mudaria sem gravar nada. Cada arquivo alterado ganha uma cópia de segurança ao lado. No Windows e no Linux, troque o caminho pelo do binário omnimind que veio no pacote.
Sai só o que o Omnimind colocou. O cofre não muda.
/Applications/Omnimind.app/Contents/MacOS/omnimind disconnect claude-code --global