Skip to content

YuvalHir/Lattice

Repository files navigation

Lattice

πŸš€ Download Latest Release

Version Website License: MIT Tauri Rust SolidJS

Lattice is a high-performance, zero-latency multiplexed orchestration environment designed for parallel AI agent swarms. Built with a Rust-powered backend and a reactive SolidJS frontend, it provides a "Zero-Scroll" workspace where terminals are perfectly tiled and synchronized.

🌐 Live Website: https://yuvalhir.github.io/lattice-website/

Lattice Workspace


✨ Why Lattice?

Orchestrating multiple AI agents (like Claude, Gemini, or custom scripts) in traditional terminal tabs is cumbersome. Lattice transforms your workspace into a reactive grid, allowing you to monitor and interact with a "swarm" of processes simultaneously β€” without context switching or tab scrolling.


πŸš€ Key Features

🧩 Zero-Scroll Workspace Grid

A workspace that always fits your viewport. Terminals are perfectly adjacent with no gaps, auto-tiled for 1 to 12+ sessions.

πŸ”„ Workspace History & Relaunch

Launch a previous workspace from history β€” no need to reconfigure. Your recent sessions are saved and one-click away.

Workspace History

βœ‚οΈ Terminal Splitting & Add

Split any terminal session directly from the tile header, or add new agents to your existing workspace on the fly.

Terminal Splitting

🎨 6 Built-in Themes

Choose from professional color palettes: GitHub Dark, Dracula, Monokai, Nord, One Dark, and GitHub Light. Themes apply to the entire UI and all terminal sessions.

Theme Selector

Theme Switching

πŸ›‘οΈ ESC Key Everywhere

Close any modal, dialog, or panel with a single Escape press. Works across launcher, settings, server manager, and more.

πŸ›  Swarm Builder

A multi-step onboarding experience to configure mixed session layouts (Gemini, Claude, Codex, OpenCode, WSL, Browser) with a live grid preview.

Swarm Launcher

Launch Workspace

πŸ“‘ Server Management

Automatically discover background services, view clean logs (ANSI-stripped), rename processes, and manage lifecycles from a dedicated panel.

Server Manager

🌳 Git First-Class Integration

Stage changes, commit, and view file diffs directly within the IDE-like interface.

Source Control

πŸ“ Integrated File Explorer

High-fidelity file navigation with branded icons for Rust, Python, TS, Docker, and more.


🎨 Themes

Theme Vibe
GitHub Dark Professional & clean
Dracula Vibrant & bold
Monokai Warm & energetic
Nord Calm & arctic
One Dark Classic Atom editor feel
GitHub Light Bright & readable

Themes apply to the entire application β€” UI, terminals, panels, and modals β€” instantly.


⌨️ Keyboard Shortcuts

Shortcut Action
Ctrl + L / Ctrl + N Open Launcher
Ctrl + , Open Settings
Ctrl + W Close Current Workspace
Escape Close Modal / Settings / Server Manager

πŸ›  Tech Stack

Component Technology
Backend Rust (Tauri v2), portable-pty, tokio
Frontend SolidJS, TypeScript, Vite
Terminal xterm.js (WebGL enabled)
Styling Vanilla CSS + Reactive CSS Grid
IPC Tauri Command + Event Bridge (Zero-Latency)

πŸ“₯ Getting Started

For Users (Download)

Lattice is currently in early access (v0.1.7). Download the latest installers for Windows, macOS, and Linux from the Releases section.

🍏 macOS Installation & Gatekeeper

Since Lattice is an open-source project and not currently signed with an Apple Developer Certificate, macOS Gatekeeper will flag it as "unidentified" or "damaged."

To install on macOS:

  1. Download the .dmg or .app.tar.gz.
  2. Move Lattice.app to your /Applications folder.
  3. Right-click (or Control-click) on Lattice in your Applications folder and select Open.
  4. A dialog will appear saying it's from an unidentified developer. Click Open again.

If you see "Lattice is damaged and can't be opened": This is a common Gatekeeper issue for unsigned apps. You can fix it with this command:

# Remove quarantine flag
xattr -cr /Applications/Lattice.app

Alternatively, you can run our fix script directly:

curl -fsSL https://raw.githubusercontent.com/YuvalHir/Lattice/main/scripts/macos-fix.sh | bash

For Developers (Build from Source)

Prerequisites:

Installation:

# Clone the repository
git clone https://github.com/YuvalHir/Lattice.git
cd Lattice

# Install dependencies
npm install

# Run in development mode
npm run tauri dev

πŸ— Architecture Overview

Lattice uses a thread-safe, centralized Session Registry in Rust to track active terminals.

  • Global State: Managed via Arc<Mutex<SessionRegistry>>.
  • I/O Pipeline: Dedicated tokio tasks monitor process stdout/stderr and emit raw byte streams to the frontend via Tauri events.
  • OS Bridge: Seamlessly abstracts execution between Native Windows (cmd/powershell) and WSL, with robust process lifecycle management.

For a deep dive, see:


πŸ”– Versioning & Releases

We follow Semantic Versioning (SemVer).

  • Major: Breaking changes.
  • Minor: New features (e.g., themes, workspace history).
  • Patch: Bug fixes and performance tweaks.

Check our Changelog for detailed release notes.


πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Built with ❀️ for the AI Agent Community by YuvalHir

About

Lattice is a high-performance, zero-latency multiplexed orchestration environment designed for parallel AI agent swarms. Built with a Rust-powered backend and a reactive SolidJS frontend, it provides a "Zero-Scroll" workspace where terminals are perfectly tiled and synchronized.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors