macOS & Linux · desarrollo temprano · motor orcad

Tus agentes en paralelo, en un grafo que podés recorrer.

Cubito es un entorno de desarrollo 3D para agentes de código. Cada worktree es un nodo, cada fan-out es una camada de ramas que crecen en el espacio, y cada agente vive en la escena con su terminal real.

Corre sobre un daemon local · pairing E2EE desde el navegador
Todo es un nodo
worktree agente terminal fan-out diff run de orquestación

Features

grafo.linaje

Tu proyecto es un grafo

Cada worktree es un nodo en una escena 3D navegable. Qué rama engendró a cuál deja de ser metadata escondida y se vuelve una arista que podés seguir con la cámara.

agentes.vivos

Los agentes viven en la escena

Cada nodo carga su terminal: PTYs reales, streameados por RPC y renderizados dentro del mundo. Un cubo ámbar que pulsa es un agente esperando tu respuesta, imposible de ignorar.

fan-out.camada

Una camada, un prompt

Desde cualquier nodo, fan-out: N worktrees hijos nacen en paralelo, cada uno con su agente, comparables entre sí. Mirás la camada, elegís el ganador y lo mergeás.

cómo.funciona

Un daemon, un RPC, una escena.

Cubito · frontend 3DThree.js · WebGPU · escena navegableWebSocket RPC · envelope versionadoworktree.*terminal.*git.*orchestration.*orcad · daemon headlessgitworktrees +linajePTYnode-pty,sobrevivereiniciosorquestaciónDAG en SQLite
  1. orcad corre de fondo

    Es un runtime headless, sin Electron. Registra repos, crea worktrees con linaje padre → hijo, mantiene terminales PTY que sobreviven reinicios y coordina runs multi-agente en SQLite.

  2. Cubito le habla por WebSocket

    Un RPC versionado con envelope {id, ok, result | error} y keepalives, en cuatro namespaces: worktree.*, terminal.*, git.* y orchestration.*. El runtime es la fuente de verdad: la escena se resincroniza al reconectar.

  3. La escena lo hace espacial

    Three.js dibuja cada worktree como un cubo y cada linaje como una arista. El estado del agente vive en el color: azul trabajando, ámbar esperando input, gris idle. El pairing con el daemon es E2EE desde el navegador.

runtime.orcad

Reiniciá el daemon. El grafo sigue ahí.

Cubito corre orcad, un runtime headless, como daemon de fondo y le habla por su RPC versionado. Repos, worktrees con linaje, PTYs que sobreviven reinicios y runs multi-agente ya viven ahí. Cubito los hace espaciales.

worktree.*terminal.*git.*orchestration.*
$ node out/orcad/orcad.js --bind 127.0.0.1 --json
● orcad escuchando · runtime 4f2a9c
$ orca worktree create --name auth-retry --agent claude
… checkout · setup · agente lanzado
$ kill -HUP orcad && node out/orcad/orcad.js
● restaurando 6 nodos…
linaje main → auth-retry — intacto
pty claude — reattached
qué.hace

Todo el ciclo, dentro de la escena.

Fan-out gráfico

Un prompt, N agentes: desde cualquier nodo nacen N worktrees hijos en paralelo, cada uno con su agente. Comparás los resultados lado a lado y mergeás el ganador.

Linaje visible

Qué rama salió de cuál deja de ser metadata: cada worktree es un cubo y cada relación padre → hijo, una arista que la cámara puede seguir.

Estado a simple vista

El color es el estado: azul trabajando, ámbar esperando tu input, gris idle, wireframe archivado. Sin abrir nada sabés dónde te necesitan.

Terminales reales en la escena

Cada nodo lleva su PTY: la terminal del agente, streameada por RPC, renderizada dentro del mundo y persistente entre reinicios.

Navegación de teclado

Es una CLI 3D: hjkl para moverte entre nodos, f para enfocar, v para ver todo, s para spawn y ⌘K para la paleta de comandos.

Conexión E2EE

Pairing cifrado de punta a punta desde el navegador contra tu daemon, local o remoto. Tu código no pasa por terceros.

tecnologías
Three.js WebGPU TypeScript Vite WebSocket RPC node-pty SQLite git worktrees