
2026/03/18 3:14
**Show HN: Horizon – GPUで高速化した無限キャンバスターミナル(Rust実装)**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Horizonは、GPUで高速化されたターミナルボードであり、すべてのターミナルセッションを無限に広がる2‑Dキャンバス上の移動可能・リサイズ可能なパネルへ変換します。
- 自動配置レイアウトモード:行(rows)、列(columns)、グリッド(grid)、スタック(stack)、カスケード(cascade)の5種類を提供し、カラーコード付きのワークスペースでパネルをグループ化できます。
- 各パネル内で Alacritty ターミナルエミュレーション(24‑bit カラー、マウスレポート、スクロールバック、Alt‑screen、Kitty キーボードプロトコル)が完全に動作します。
- ビルトインの AI エージェントパネルは Claude Code と Codex を統合し、自動的にセッションを再開し、リアルタイムのトークン使用ダッシュボードを表示します。
- Git ステータスペインがリポジトリ変更、インライン差分、およびハンクレベルの詳細をターミナル内で直接表示します。
- スマート Ctrl+クリックは出力中の URL やファイルパスを検知し、即座に開きます。
- **ライブ YAML 設定エディター(Ctrl+,)**は構文ハイライト付きでキャンバス設定をリアルタイムに調整でき、変更はすぐに適用されます。
- セッション永続化により、ワークスペース、パネル位置、スクロールバック、および履歴が再起動間でも復元されます。
Horizon は Linux x64、macOS arm64/x64、Windows x64 用の事前ビルドバイナリとして提供されるほか、ソースから構築(Rust 1.85+)も可能です。
- Rust 2024 エディションで書かれ、UI は eframe/egui、クロスプラットフォーム GPU レンダリングは wgpu(Vulkan, Metal, DX12, OpenGL)、エミュレーションには alacritty_terminal を使用し、デフォルトテーマとして Catppuccin Mocha ダークパレットを採用しています。
キーボードショートカット
- Ctrl+N:新しいパネル
- Ctrl+K:ワークスペースナビゲーション
- Ctrl+B:サイドバー切替
- Ctrl+M:ミニマップ切替
- Ctrl+0:ビューリセット
- F11:フルスクリーンアクティブパネル
- Ctrl+クリック/ダブルクリック:キャンバス上のリンクや新しいワークスペースを開く
貢献ガイドラインは AGENTS.md に記載され、
cargo fmt で linting、cargo test --workspace でテスト実行、Clippy で警告チェックが推奨されています。
将来のリリースでは AI 統合をさらに深め、レイアウトオプションやプラグインを増やし、セッション永続化を洗練させ、プラットフォームサポートを拡大することを目指しています。これにより Horizon は GPU‑アクセラレーションされたターミナル UI の新たな標準となる完全統合開発環境として位置づけられます。
本文
ホライズン
GPU アクセラレーションを備えたターミナルボードで、すべてのセッションを無限に広がるキャンバス上に配置します。
整理・パン・ズームを行い、もうターミナルを失うことはありません。
なぜホライズンなのか?
- タブ付きターミナル では作業内容が隠れてしまう。
- タイル付きターミナル では画面領域に縛られる。
- ホライズンは「キャンバス」を提供します。
無限の 2D 表面上で、各ターミナルをパネルとして自由に配置・リサイズ・グループ化できます。
まるでターミナルセッション用のホワイトボードです。フロントエンド、バックエンド、ログ、AI エージェントをすべて色分けされたワークスペースで一度に表示し、ミニマップで簡単に移動できます。
特徴
| Feature | Description |
|---|---|
| Infinite Canvas | 任意の場所へパネル配置。パン&ズーム自由自在。角にあるミニマップで位置確認・ジャンプ可。 |
| Workspaces | 関連するパネルを色分けワークスペースにまとめる。行、列、グリッド、スタック、カスケードの5つレイアウトモードで自動配置、または自由ドラッグ。 |
| Full Terminal Emulation | 24‑bit カラー、マウス報告、スクロールバック、alt‑screen、Kitty キーボードプロトコル対応。Alacritty エンジンを採用し、最速ターミナルと同じ技術を使用。 |
| AI Agent Panels | Claude Code と Codex をフルサポート。セッションは永続化・自動再開。ライブダッシュボードでトークン消費を可視化。 |
| Git Integration | ビルトイン git ステータスパネルがバックグラウンドでリポジトリ監視。変更ファイル、インライン差分、ハンクレベル詳細をコンテキスト切替なしで表示。 |
| Smart Detection | URL を Ctrl+クリックで開く。ファイルパスにカーソル合わせてクリックするとジャンプ。ターミナル出力を解析し、対話型リンクへ変換。 |
| Live Settings Editor | で設定エディタ(YAML)を起動。構文ハイライトとライブプレビュー付き。変更は即座にキャンバスに反映。 |
| Session Persistence | ホライズン終了後も、ワークスペース・パネル位置・スクロール位置・ターミナル履歴がそのまま復元されます。 |
インストール
ダウンロード(最速)
Releases から最新バイナリを取得し、依存なしで実行。
| Platform | Asset |
|---|---|
| Linux x64 | 解凍 → → 実行 |
| macOS arm64 | 解凍 → → 実行 |
| macOS x64 | 解凍 → → 実行 |
| Windows x64 | ダウンロードして実行 |
ソースからビルド
git clone https://github.com/peters/horizon.git cd horizon cargo run --release
Rust 1.85+ が必要です。Linux では GPU レンダリング用のシステムヘッダーが必要になる場合があります。ディストリビューション別手順は
AGENTS.md を参照。
クイックツアー
ショートカット
| Shortcut | 作用 |
|---|---|
| 新しいターミナルパネルを作成 |
| 任意のワークスペースへクイック移動 |
| 設定エディタを開く |
| サイドバー表示切替 |
| ミニマップ表示切替 |
| キャンバスビューをリセット |
| アクティブパネルをフルスクリーン |
| カーソル下の URL またはファイルパスを開く |
| 新しいワークスペース作成 |
macOS では Cmd を Ctrl の代わりに使用。
設定
ホライズンは
~/.horizon/config.yaml を読み込みます。ワークスペース、パネルプリセット、機能フラグを定義できます。
workspaces: - name: Backend cwd: ~/projects/api panels: - kind: shell - kind: claude - kind: git_changes - name: Frontend cwd: ~/projects/web panels: - kind: shell - kind: shell presets: - name: Shell alias: sh kind: shell - name: Claude Code alias: cc kind: claude - name: Git Changes alias: gc kind: git_changes features: attention_feed: true
使用技術
- Rust – Edition 2024、セーフで高速
- eframe / egui – 即時モード UI フレームワーク
- wgpu – GPU レンダリング(Vulkan, Metal, DX12, OpenGL)
- alacritty_terminal – 実績のあるターミナルエミュレーション
- Catppuccin Mocha – ダークカラー パレット
コントリビューション
開発環境、アーキテクチャ、コーディング規約、CI 要件は
AGENTS.md を参照してください。
cargo fmt --all -- --check cargo test --workspace cargo clippy --all-targets --all-features -- -D warnings
MIT ライセンス下で配布。