Skip to content

Horizon

GPU-accelerated terminal board that puts all your sessions on an infinite canvas

Install

$brew install peters/horizon/horizon

Install command taken from the project's README or registry entry. Always review code before running it.

Horizon is a GPU-accelerated terminal board that puts all your sessions on an infinite canvas. Workspaces group related panels. Presets launch them. The command palette jumps you there. Close the app — the board is still there tomorrow.

The model · Five minutes · Highlights · Install · Shortcuts · Config · Browse · VNC · Browser reference · Speech


Why Horizon?

Tabbed terminals hide your work. Tiled terminals box you in. Horizon gives you a canvas — an infinite 2D surface where every terminal, agent, browser, VNC desktop, and editor lives as a panel you can place, resize, and group.

Think of it as a whiteboard for live sessions, with a structured workflow on top: color-coded workspaces, preset panels, a command palette, and fit-to-workspace whenever you want a clean overview.


The model

Horizon has five nouns. Everything else is a shortcut, a preset, or a panel kind.

Noun What it is How you use it
Canvas The infinite 2D surface Drag empty canvas or swipe with two fingers to pan. Pinch or Ctrl+scroll to zoom. Minimap to jump.
Workspace A color-coded cluster with a shared working directory Ctrl+double-click the canvas and pick a preset, or click New in the sidebar. Arrange with Default (free), Rows, Cols, or Grid. Detach it to its own window.
Panel One live surface inside a workspace Shell, SSH, coding agent, browser, markdown, git, or usage.
Preset A named template for a new panel Command palette, Ctrl+double-click, or Ctrl+Shift+N (first preset).
Session A saved board Close Horizon and come back. Ctrl+Shift+J switches between saved boards.

A typical board looks like this:

Session
└── Canvas
    ├── Workspace "Backend"     cwd: ~/projects/api
    │     ├── Shell
    │     ├── Grok
    │     ├── Browser  →  http://127.0.0.1:3000
    │     └── Git Changes
    └── Workspace "Frontend"    cwd: ~/projects/web
          ├── Shell
          └── Claude

Workspaces stay visible. There are no hidden tabs. If something is off-screen, pan, zoom, fit, or search — do not hunt through a tab strip.

Panel kinds

Kind What you get
shell Login shell in the workspace directory
ssh Remote shell — usually from the Remote Hosts overlay
grok · claude · codex · open_code · gemini · kilo_code · pi First-class coding-agent TUIs, with session resume where the CLI supports it
browser Live Chromium, Firefox, or Safari on the canvas, shared with agents
editor Markdown split view (syntax + preview)
git_changes Changed files, diffs, and hunks for the workspace repo
usage Token spend across agent panels
upkeep Read-only board of an Upkeep agent: next run, the last 24 hours of runs, and its dependency pull requests by state. A row opens its pull request in a browser panel. command names the status file; see Upkeep
command Run an arbitrary command as a panel
device Native VNC view of a loopback desktop, or of a remote desktop reached through an SSH tunnel (the host's key must already be trusted, for example by opening it over SSH once). Read-only until you turn Interact on, which sends your mouse and keyboard to that desktop

Five minutes on the canvas

You do not need a config file to start. Launch Horizon, then:

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

Explore related