GhosttyEXTREME
Health Gecti
- License — License: AGPL-3.0
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 34 GitHub stars
Code Gecti
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
Ghostty for macOS, rebuilt to watch AI coding agents work live. Claude Code, Codex and more in a vertical sidebar, a code editor that types in their edits as they happen, a live code map, a backend view (Cloudflare, Supabase, Vercel), Visual Fix, agent races and change review.
Download · Live agents · Features · Install · Shortcuts · Security
One window, one live agent: the sidebar, the agent in the terminal, the editor typing in its edit as it happens, and the code map tracing every file it has read and changed.
GhosttyEXTREME is Ghostty, the fast native macOS terminal, rebuilt
for working with AI coding agents like Claude Code and Codex. You see every agent
work, live: what it's doing in each tab, the code it's writing as it writes it, where it is
in your project and what part of your backend it touches. When it finishes, its changes wait
for you in a review inbox.
Everything Ghostty does still works. This fork tracks official Ghostty releases and adds
its features on top.
[!NOTE]
Unofficial fork. Not affiliated with or endorsed by the Ghostty project.
Watch your agents work, live
Run Claude Code, Codex, Gemini CLI or another agent in a tab, the way you already do.
GhosttyEXTREME follows each one as it works, with nothing to set up beyond its hooks.
| As the agent… | …you see |
|---|---|
| starts a task | Its card in the sidebar shows the task, a working spinner and a timer. Its sprite starts typing and the terminal's frame lights up cyan. |
| reads a file | The editor opens that file at the lines it read; the file lights up cyan on the code map, and a comet flies there. |
| edits a file | The change types itself into the editor with the lines highlighted, the file turns orange on the map, and the turn's diff count goes up. |
| thinks or replies | The agent panel shows its thinking, messages and every tool call as a timeline, sub-agents included. |
| touches your backend | The Worker, database or bucket that code belongs to lights up in the Backend view. |
| needs you | Its card turns amber and jumps to the top of the command palette and Mission Control; you get a notification and a Dock badge. |
| finishes | Its sprite sparkles, the sigil flares gold, and its changes land in Review with the full diff. |
Several agents at once? Each tab follows its own, tabs in the same repository are grouped,
and you're warned when two agents edit the same file.
Features
| Agent sidebar Live status for every agent in every tab |
Code editor Opens what the agent reads and animates its edits |
Code map Your project as a star map of what the agent touched |
| Backend view Cloudflare, Supabase, Vercel and more, with live status |
Database view Tables, columns and relations from your schema |
Visual Fix Click an element in your app, say what to change |
| Review changes An inbox for each agent's diff, with line comments |
Agent races Several agents, one task, keep the best result |
Localhost sessions Dev servers that outlive the agent that started them |
| Background processes Find and close what's been left running |
Command history Every command as a block, with one-click fixes |
Agent activity Time, prompts, changes and tokens per day and project |
| Mission Control Every agent in every window on one screen |
Sessions Agents, Docker sandboxes, Hermes and cloud sessions |
Handoff Pass a pane's work to Claude or Codex |
Every agent, at a glance
A Warp-style vertical sidebar (⌃⌘S) lists every tab with its folder, git branch and
uncommitted changes. Tabs can be pinned, colored and renamed, and hovering one shows a card
with more detail.
- It recognizes the agent in each tab: Claude Code, Codex, Gemini CLI, Copilot, Cursor,
Amp, opencode, Goose, Droid and Hermes, each with its own logo. - Live status: working, waiting for permission, waiting for input, done or failed. Each
card shows the task, how long the agent has been at it and its last action. - Agents act out their mood. Their sprite reads, types, runs commands and thinks, hops
when it needs you and sparkles when it's done. - The sigil comes alive. One cyan pixel orbits the sidebar's sigil per working agent;
it glows amber while one waits and flares gold when one finishes. - The terminal's frame lights up too. A cyan light travels around the edge while the
tab's agent works, and the corners blink amber when it needs you. - Project groups: tabs whose agents share a repository are bracketed together, with a
live summary ("2 working · 1 waiting") and a warning when two agents edit the same file. - Alerts: when an agent waits on you in a pane you aren't looking at, you get a
notification (click it to jump there) and a count on the Dock icon. - Usage meters for your Claude and ChatGPT plans (5-hour and weekly windows), with
graphs.
Mission Control
⌃⌘M shows every agent (or every pane) in every window as a live card: status, task, last
action, time in that state and the last lines of its terminal. Agents waiting on you come
first. Click a card to jump to it.
The command palette (⌘P) puts waiting agents at the top too, so you can answer one in
two keystrokes. It also starts new sessions and opens every tool.
A code editor that follows the agent
Each tab has its own VS Code–style editor (Monaco, ⌃⌘E) on that tab's folder, in your
terminal theme.
- Follow mode: the editor opens each file the agent reads and animates its edits in as
they happen. It follows even while closed, so opening it mid-task shows where the agent
is right away. - Agent panel: a timeline of the session: prompts, thinking, messages, tool calls and
results, sub-agents included. With several sub-agents, the editor splits into a pane for
each. - AI POV: replay a session as if you were at the agent's keyboard: files opening, code
being typed, commands running.
Code map
Your project as a star map. Folders are tinted by what they are: frontend, API, database,
tests, config. Files light up as the agent reads (cyan) and edits (orange) them, and the
agent flies between them as a comet.
- Zoom levels: Overview shows the project's areas and how much the agent did in
each. Files shows every file. Symbols shows the functions and classes inside, with
the ones changed this turn lit. - Details for anything you click: what the agent did there, this turn's diff, the
file's symbols, what imports it, and the backend pieces it uses. - Blast radius: what imports the file is drawn on the map, with a warning when no
test covers the change.
See your backend
The Backend tab shows what your project runs on, worked out from its own files
(package.json, wrangler.jsonc, supabase/, .vercel/, Prisma, env variable names).
It works offline and without logins.
- Architecture: frontend → compute → data → services, with a line only where your
code really connects two pieces.- Cloudflare Workers show their environments, domains, cron schedules and every
binding: D1, Hyperdrive, KV, R2, Queues, Durable Objects, service bindings, Workers AI
and more. - Supabase, Vercel, Prisma, Firebase, and services like Stripe, OpenAI and Resend,
show up too.
- Cloudflare Workers show their environments, domains, cron schedules and every
- Live status comes from each provider's own CLI (
wrangler,supabase,vercel),
using the logins you already have and only read-only commands. It shows deploys per
environment, project health, migrations not applied yet, and commits newer than the
last deploy. - Code links: click any piece to see every file that uses it, and open the provider's
dashboard or your live site. - Agent awareness: when the agent edits something that belongs to a piece of your
backend, that piece lights up.
Database
The Database view draws your schema: tables, columns and relations for Supabase,
Cloudflare D1, Postgres behind Hyperdrive (read from your migrations) and Prisma.
- Click a table to see its columns, what references it and where your code queries it.
- Row-level security is checked on every Postgres table.
- Large schemas can be searched, and unrelated tables fade back.
Visual Fix
⌃⌘V previews your running dev server beside the terminal, at desktop, tablet or phone size.
- Pick an element: hover any element and click it, then say what should change.
- What the agent gets: the element's HTML and CSS selector, the component and source
file that render it (React, Vue and Svelte), its computed styles, and a screenshot. - Where it goes: the request goes to the agent working in that project, pinned to the
element. When the change lands, the preview reloads where you were.
Review changes
When an agent finishes working in a git repository, its changes land in an inbox (⌃⌘I).
- Read the diff file by file.
- Comment on lines and send the comments back as the agent's next prompt.
- Finish up: approve or undo files, commit, or open a pull request.
Agent races
⌃⌘R gives the same task to several agents at once (Claude Code and Codex, or several of
one), each in its own git worktree so they can't touch each other's work or yours. Compare
their diffs side by side and apply the one you want.
Handoff
Pass a pane's work to a fresh Claude Code or Codex session in a split beside it. Its first
prompt has the task, the last agent's final message and what's changed in git. Continue
with picks up where the last agent stopped; Review with checks the work without
editing anything.
Localhost sessions
When an agent starts a dev server (npm run dev, vite, rails s,python -m http.server, …), it opens in its own tab instead, so it keeps running after
the agent is done. The agent is told the URL and how to read the logs.
- Sidebar cards: each server gets a card with live status, its
localhostURL,
framework, uptime, restart and stop. - The Localhost manager (⌃⌘L) groups servers by project and shows their CPU and memory.
It previews pages in a built-in browser and finds dev servers running elsewhere on your
Mac, with Keep alive to move one into its own tab. - Start one yourself from New → Localhost Server…, which offers your
package.jsonscripts.
Background processes
⌃⌘K finds everything left running: dev servers, Colima VMs and containers, agent sessions,
browser automation, databases, watchers, log followers and login services.
- Last really used: the last typing or output in its terminal, its agent transcript
being written, a live connection to its port, or a busy container. - A staleness rating (Active, Idle, Stale or Ready to close), with the reasons.
- Cleanup in one click, always with a confirmation first. Login services are never
marked ready to close.
Command history
Every command becomes a block with its output, exit code and duration (⌃⌘B). When one
fails, a chip offers Fix with Claude or Fix with Codex, which opens the agent in a
split with the command and its output.
Agent activity
⌃⌘A shows active time, prompts, files and lines changed, commands, test runs and tokens,
per day, hour, agent and project. It reads the session history Claude Code and Codex
already keep.
- Resume any recent session in a new tab.
- API value shows what your usage would cost at API prices.
Sessions
+ New in the sidebar opens a terminal, Claude Code, Codex, a Claude Code cloud
session, Hermes, or a localhost server.
- Isolated sessions run Ubuntu, Python, Node, or sandboxed Claude Code or Codex in a
throwaway Docker container. Only the project folder is shared (never your home
folder), and the container is deleted when you exit. - Hermes tabs open Hermes's own app (chat, sessions, skills, models and cron) right in
the tab.
Everything Ghostty already does
GPU-accelerated rendering, native tabs and splits, the quick terminal, hundreds of themes,
ligatures, shell integration, AppleScript and Shortcuts. Your Ghostty config works as-is.
Light on your Mac
All of the sidebar's animations run in Core Animation, so the app does almost no work per
frame. Anything you can't see pauses: background tabs, hidden and minimized windows. With six
agents working at once, GhosttyEXTREME uses about 1–3% CPU.
Security and privacy
- Nothing leaves your Mac. There's no account, telemetry or server. Agent tracking
reads the session files Claude Code and Codex already write. - Only your own hooks can talk to it. Agent status arrives as terminal escape
sequences, which any printed text could imitate. Each launch creates a secret that only
its own terminals and hooks know, and events without it are ignored. - The Backend view never stores credentials. It runs your providers' own CLIs with
their existing logins, read-only commands only. It reads only the names of your env
variables, never their values. - The editor stays local. It can only show its own pages, and Visual Fix only talks
to your local dev server.
Install
Apple silicon Macs, macOS 13 or newer.
- Download
GhosttyEXTREME-<version>-macos-arm64.zipfrom the
latest release, unzip
it, and move GhosttyEXTREME.app to/Applications. - The app isn't notarized, so clear the download quarantine once:
xattr -dr com.apple.quarantine /Applications/GhosttyEXTREME.app - For agent status and everything built on it, install the hooks from
GhosttyEXTREME-<version>-agent-hooks.zip:
Then connect Claude Code as described in Agent status setup../GhosttyEXTREME-agent-hooks/install.sh python3 ./GhosttyEXTREME-agent-hooks/install-codex.py # if you use Codex
Your existing Ghostty configuration (~/.config/ghostty/config) works as-is.
Keyboard shortcuts
| Shortcut | |
|---|---|
| ⌘P | Command palette: agents waiting on you, new sessions, every tool |
| ⌃⌘S | Show or hide the sidebar |
| ⌃⌘E | Code editor |
| ⌃⌘V | Visual Fix |
| ⌃⌘M | Mission Control |
| ⌃⌘K | Background |
| ⌃⌘L | Localhost sessions |
| ⌃⌘I | Review changes |
| ⌃⌘R | Race agents |
| ⌃⌘B | Command history |
| ⌃⌘A | Agent activity |
Agent status setup
Connect Claude Code, Codex and your shellGhosttyEXTREME sets GHOSTTY_EXTREME_AGENT_EVENTS=1 in its terminals. The hook
scripts in agent-hooks/ do nothing anywhere else.
First install them outside the repo:
./agent-hooks/install.sh
This copies the hooks to ~/.ghostty-extreme/agent-hooks/ and the localhost command
to ~/.ghostty-extreme/bin/. Point your agents there rather than at the repo: macOS
privacy protection can block terminal processes from reading ~/Desktop or~/Documents, which silently breaks the hooks. Rerun it after updating.
Shell detection (shows the agent's logo as soon as you start it). Add to ~/.zshrc:
[[ -n "$GHOSTTY_EXTREME_AGENT_EVENTS" ]] && source ~/.ghostty-extreme/agent-hooks/ghostty-extreme.zsh
Claude Code status. In ~/.claude/settings.json, run~/.ghostty-extreme/agent-hooks/agent-hook.sh claude <event> for these hooks:
| Hook | Event |
|---|---|
SessionStart |
session_start |
UserPromptSubmit |
prompt_submit |
PostToolUse |
tool_complete |
PermissionRequest |
permission_request |
Notification |
notification |
Stop |
stop |
StopFailure |
stop_failure |
SessionEnd |
session_end |
PreToolUse (matcher Bash) |
pre_tool_use (moves dev servers into localhost sessions) |
{ "type": "command", "command": "~/.ghostty-extreme/agent-hooks/agent-hook.sh claude stop" }
Codex status. Run python3 agent-hooks/install-codex.py to install Codex tracking
and register its hooks without changing Claude's settings or any saved hook approvals.
It keeps existing hook handlers, backs up the config when adding registrations, and
retains the legacy command path when already configured. Restart Codex afterwards and
approve the new registrations through its normal hook review.
Open a new terminal pane after installation. The GhosttyEXTREME zsh integration
launches interactive Codex with --no-daemon and this pane's TTY, so local hooks reach
the correct pane. Codex tracking uses session IDs, live tool hooks and native rollout
records for reads, commands, multi-file patches, failures, messages and reasoning
summaries; child agents appear in their own editor lanes. Private tracking journals
live in ~/.ghostty-extreme/codex-tracking/.
Claude usage meter (optional). Have your Claude Code status line script saverate_limits to ~/.claude/ghostty-extreme/claude-usage.json as{"updated": <unix time>, "rate_limits": <rate_limits>}.
Build from source
Requirements and build steps- macOS 13 or newer (developed and tested on macOS 26, Apple silicon)
- Xcode 26 or newer
- Zig 0.15 from Homebrew:
brew install [email protected](the ziglang.org build fails to link
against the macOS 26.4+ SDKs) jqfor the agent hooks:brew install jq
git clone https://github.com/steventsvik/GhosttyEXTREME.git
cd GhosttyEXTREME
/opt/homebrew/opt/[email protected]/bin/zig build -Doptimize=ReleaseFast -Dxcframework-target=native
ditto macos/build/ReleaseLocal/Ghostty.app /Applications/GhosttyEXTREME.app
If the repo is in an iCloud-synced folder (like Desktop or Documents), codesign fails on
iCloud's extended attributes. Point macos/build at a folder outside iCloud first;update-ghostty.sh does this for you.
Staying up to date: ./update-ghostty.sh rebases this fork onto the newest official
Ghostty release, rebuilds and installs it. ./update-ghostty.sh --check only reports
whether a new release exists. It needs an upstream remote pointing atghostty-org/ghostty.
License
AGPL-3.0, see LICENSE. Ghostty's own code is MIT
(LICENSE-GHOSTTY). Parts of the sidebar are derived from
Warp (AGPL-3.0). Full credits and trademark notes
are in NOTICE.md.
For Ghostty itself (configuration, themes, keybindings), see the
Ghostty documentation.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi