Pitch: Construí uma IDE espacial com canvas infinito para coordenar múltiplos agentes de IA — Catenary
Fala pessoal!
Nos últimos meses, comecei a usar ferramentas como Claude Code e agentes autônomos de linha de comando no meu fluxo diário. O ganho de velocidade foi brutal, mas uma dor nova apareceu rápido: o caos de gerenciar dezenas de abas e janelas de terminal sobrepostas, perdendo o fio da meada e o contexto a cada mudança de tarefa.
Para resolver isso de forma visual, passei os últimos meses construindo o Catenary (https://thecatenary.app).
O que é o Catenary?
Em vez da interface clássica de abas empilhadas do VS Code, o Catenary é uma IDE espacial com zoom e pan infinito (estilo Figma/Miro, mas feita especificamente para desenvolvimento de software).
Principais recursos do app:
- Fios Visuais de Conexão: Você pode puxar um cabo do terminal de um agente para outro. Quando o primeiro termina uma etapa (ex.: planejamento arquitetural com um modelo mais pesado), ele repassa o contexto e instrui o próximo (ex.: um agente rápido para rodar testes ou linter).
- Ilhas de Tarefas ("New Task"): Com um clique, você abre uma área de trabalho visual isolada no canvas para uma nova demanda sem perder nada do que estava aberto antes.
- Workspace Completo em 2D: Terminais com node-pty nativo (aceleração WebGL no xterm.js), Monaco Editor com syntax highlighting, navegador web integrado (webview para testar frontends) e leitor de PDFs/docs lado a lado.
- 100% Local-first e Privado: Nada passa por servidores intermediários. Não exige cadastro em nuvem, não tem telemetria e suas chaves de API ficam guardadas apenas na sua máquina. A validação do app roda offline após a ativação.
Stack Técnica
- Desktop: Electron + Node.js nativo (node-pty).
- Frontend: React 18, TypeScript, Tailwind CSS e Monaco Editor.
- Empacotamento: electron-builder com instaladores nativos para Windows (winget), macOS (Apple Silicon arm64 + Intel x64 via Homebrew/DMG) e Linux (AppImage e DEB).
O download está aberto no site:
👉 https://thecatenary.app
Construí o projeto sozinho como desenvolvedor independente e adoraria receber feedbacks da comunidade sobre usabilidade, arquitetura e sugestões de funcionalidades!