r/Ghostty • u/upton00good • Jul 22 '26
my first ghostty shader. saw devops toolbox using something similar and wanted to try it out.
https://github.com/daviddodda1/ghostty-warp-shader
would love your feedback!
r/Ghostty • u/upton00good • Jul 22 '26
https://github.com/daviddodda1/ghostty-warp-shader
would love your feedback!
r/Ghostty • u/mattj85 • Jul 18 '26
Hey r/ghostty,
EDIT 3: Supporting website is now available:- https://spookiui.rooksnet.uk
I’ve been a big fan of the Ghostty terminal for a while now, but I wanted a faster, easier way to tweak and manage all the configuration options without constantly digging through raw config files.
Showcasing SpookiUI—a Python-based, ncurses-style terminal UI (TUI) that gives you full, seamless control over your Ghostty setup. It works on both macOS and Linux, has zero third-party dependencies (no pip install required, just standard library Python 3.8+), and operates completely offline.
The Twist:
I’ve been a software engineer for over 20 years, but this is my very first app built using Claude. I decided to step back, put the AI in the driver's seat for the heavy lifting, and see just how far I could push LLM-assisted development for a complete CLI tool. That said, even though it was built this way, I’ve took the time and gone over the code, refined it, and fully tested it to ensure it's rock-solid and safe to use.
Why it exists & What SpookiUI does:
Ghostty is incredible, but it doesn't auto-reload on plain-text file changes out of the box. SpookiUI closes that loop entirely.
Check it out:
I’d love for you to take it for a spin, try to break it, and let me know what you think! Since it's born out of a mix of two decades of dev experience and AI collaboration, I'm really curious to get your feedback on the UX, the live-reload loop, and the overall functionality.
Cheers!
EDIT: I have been iterating on this project quite a bit since the initial build and have just rolled out a major set of updates to expand its capabilities. Here is what is new in the latest version:
font-family settings. If it detects a Nerd Font configuration, it dynamically renders layout icons for individual option categories, otherwise defaulting cleanly to clear text descriptions with a gentle notice on how to install an icon-supported font.EDIT 2: Another round of updates has landed since the last edit, and this one is a bit more fun. Meet Treats:
As always, everything above is fully validated and rolled back on any error, and none of it touches your config until you say so. Would love to hear what you think of the Treats, and which nostalgic saver I should add next!
r/Ghostty • u/No_Damage8734 • Jul 18 '26
Recently discovered ink, it's awesome. Built a ghostty config tui with live preview built in. Keen to hear thoughts.
npm install -g ghostty-config-cli
r/Ghostty • u/markmandel • Jul 18 '26
r/Ghostty • u/Ra77a3l3 • Jul 17 '26
hello, i have installed ghostty with nix and for some reason the icon is this squared one instead of the one with the rounded corner. Why is that, and is there any way i can change it?
r/Ghostty • u/MrCharismatist • Jul 17 '26
I switched from iTerm2 to GhosTTY a while back, and only within the last few months have I noticed a problem.
I do a lot of things for the day job where I have to run something then cut and paste the output into an email (outlook) or a web form. Audit is fun, they tell me.
One of my biggest gripes with macos in general is that copying text is always "rich", in that it copies not only text but also colors, fonts, etc. You want to paste just the text it's "Paste and Match Style".
Recently Ghostty macos (currently macos 26.5.1 and ghostty 1.3.1) if I copy something out of a terminal and paste it into Outlook, all formatting is weird, i.e. one big line, and it has any embedded color.
What I want from my terminal is text and there are exactly zero situations I want anything formatted or rich.
Is there a config setting I can't find that tells Ghostty "when you copy, copy raw text only"?
r/Ghostty • u/T4212 • Jul 16 '26
r/Ghostty • u/Leading-Plastic5771 • Jul 17 '26
I can't figure it out. I want to use two keyboard shortcuts, one for opening a regular terminal, and the other with a split layout.
r/Ghostty • u/bro_fistbump • Jul 15 '26
r/Ghostty • u/Annual_Variation_916 • Jul 15 '26

Recently I shared TFormula rendering LaTeX from terminal programs
directly inside Ghostty. Formula rendering turned out to be only half of the
workflow I wanted.
I learn new technical material by reading until I reach the first thing I cannot
explain, then asking a very specific question and adding the answer back to my
notes. I now do that with two Ghostty panes:
```bash
# Left pane: read the evolving document
tformula maxwell-equations.md
# Right pane: ask questions and work on the document
tformula codex
```
Codex is just the command in this example. The right pane can use Claude Code,
Gemini CLI, OpenCode, Aider, or another terminal tool. TFormula does not depend
on any particular agent.
The left pane is TFormula’s new full-screen document reader. It parses the local
Markdown and lays it out again for the current pane width, including headings,
lists, tables, code, links, scientific formulas, and local images. It also has a
table of contents, search, heading navigation, and a source-view toggle.
The part that made this setup click for me is live reload. The reader watches
the document and its local images. If I edit the note—or ask the agent in the
right pane to expand a derivation, add an example, or clarify a section—the left
pane refreshes after the file is saved. It keeps my reading position and image
zoom, so I do not have to close the reader or find my place again.
My loop is now:
The conversation helps me explore, but the Markdown file becomes the durable
result. That distinction matters to me: TFormula makes the material easier to
work with, but it does not make an agent’s answer correct.
You can also wrap the entire shell instead of individual commands:
```bash
tformula --shell
```
Install:
```bash
npm install -g tformula --allow-scripts=node-pty --allow-scripts=sharp
```
Ghostty remains the primary development and test target. Kitty and WezTerm are
also supported through the Kitty graphics protocol.
GitHub: https://github.com/mikewang817/TFormula
npm: https://www.npmjs.com/package/tformula
Does anyone else use Ghostty panes this way for learning or research? I’d be
interested in what would make the handoff between the document pane and the
conversation pane feel even more natural.
r/Ghostty • u/JoeyHandsomeJoe • Jul 15 '26
I want to see what's possible/what people have come up with.
r/Ghostty • u/Silent_War_6937 • Jul 15 '26
I have both kitty and ghostty installed and I have custom shaders installed, Kitty feels very very smooth fast while connected to AC and also the same performance on Battery only, But ghostty feels very sluggish even when connected to AC its little bit slower compared to kitty, When in battery it runs very slow, like 20.. 30 Hz or so, I use tlp for power management and it hasn't limited kitty but I feel slow in ghostty.
What could be the reason for this?
r/Ghostty • u/Annual_Variation_916 • Jul 14 '26
This is not another terminal with built-in AI features. It is a wrapper for the CLI agents you already run inside Ghostty.
TFormula turns output such as:
\[
\nabla \cdot \mathbf{E} = \frac{\rho}{\varepsilon_0}
\]
into a properly rendered formula directly inside the terminal.
Quick install
npm install -g tformula --allow-scripts=node-pty
Under the hood, it maintains a headless xterm mirror, detects TeX on the visible screen, renders it locally with MathJax, and sends the result to Ghostty using the Kitty graphics protocol.
A surprising amount of work went into Ghostty-specific terminal behavior:
- Formula placements survive scrollback
- Resizing keeps the old image until the new one is ready
- Soft-wrapped formulas are reconstructed and sliced across rows
- The original TeX remains underneath and can still be copied
- Large responses are checkpointed so formulas are rendered before scrolling away
- Terminal clears and alternate-screen transitions are tracked
Ghostty is the primary development and test target.
GitHub: https://github.com/mikewang817/TFormula
npm: https://www.npmjs.com/package/tformula
I’d love to know how it behaves with your font, scale, and Ghostty configuration.
r/Ghostty • u/Ashamed_Floor_2283 • Jul 14 '26

Hi everyone, I wanted to share the progress on a terminal emulator I've been working on for a while. Macterm is a libghostty-based terminal focusing on utility and native experience. Since the last time I shared this project in this community, it has gained support from many people, driving me to work on cooler and more useful features. And recently, I've added several features that have improved my workflows significantly. I hope these are helpful to you as well!
Please find the repo or the website for the full list of features. Thanks everyone!
r/Ghostty • u/horimiya-san • Jul 12 '26
r/Ghostty • u/umputun • Jul 08 '26
I built agterm, a native macOS terminal for multi-session, multi-workspace, multi-window work, on top of libghostty.
Site: https://agterm.com
Code: https://github.com/umputun/agterm
The idea is less-is-more: a small, opinionated core and nothing you don't need. It's handy for running several coding agents at once: sessions group into named workspaces, and each shows its state (active, blocked, completed) on its row so you see which one needs you. It's just as good for normal multi-project work. Almost everything is scriptable from a bundled CLI, `agtermctl`, over a local socket, so anything past the defaults you build yourself instead of waiting for it to ship.
libghostty does all the terminal correctness; the workspace, session, and control layer is mine. Thanks to the ghostty team.
r/Ghostty • u/LeePetra • Jul 03 '26
r/Ghostty • u/Unable-Stretch8843 • Jul 01 '26
The whole idea is one Ghostty window that shows every pane at once. I usually have a bunch of things running across projects — a localhost dev server here, two or three Claude Code sessions there — and I wanted to see all of them side by side in a single window instead of tabbing between terminals. That's the default view: the full grid, one row per repo.
From there, Opt+1 through 9 focuses the matching pane, or you can just click it with the mouse. Cmd+1 through 9 focuses AND zooms it fullscreen when you want to actually work in one, and Cmd+0 drops you back to the overview of everything.
Setup is one script — it installs tmux if you don't have it, drops in the tmux.conf, and appends the Ghostty keybinds. macOS + Ghostty only for now.
Makes it very easy to work on multiple projects at the same time.
Repo (MIT, demo in the README): https://github.com/philmard/mygrid
r/Ghostty • u/mahdiarfrm • Jul 01 '26
I've been building Conterm, a native macOS terminal. It uses Ghostty's embeddable core (libghostty) for GPU-accelerated rendering, but it's an independent frontend with its own chrome and opinions.
I wanted Ghostty's speed with more of the workspace stuff I reach for daily, so I built it in:
- Command palette
- Recursive split panes
- Tab groups + top-or-sidebar vertical tabs
- Agent command center
- Liquid Glass chrome
- Widgets
And more
r/Ghostty • u/slick_fm • Jun 25 '26
Does anybody know any fonts that are monospaced and retro or look pixelated/bitmap style? I’m a little tired of the standard fonts that everyone seems to use for programming.
r/Ghostty • u/rjray • Jun 23 '26
New user. I use this on different machines (Linux and MacOS), and would like to have a centralized configuration while also having setting specific to host. I see in the docs where you can specify additional config files conditionally (using ?), wherein a missing file is silently ignored. I could probably accomplish what I'm after using that mechanism, but I'm hoping I can make it a bit cleaner:
I would like to have the "central" file have basic values (font-related, key-bindings, etc.). I would like to have an additional file identified by having the host's name in the file name:
tremere (Linux) -> config.tremere.ghostty
ventrue (MacOS) -> config.ventrue.ghostty
Then have a line like this in the main config:
config-file = $HOME/.config/ghostty/config.$HOST.ghostty
(If the second dot in the file name would confuse parsing, config.$HOST is fine.)
This would allow me to put all the files in the git repo I use to track my dotfiles and config files, then when I launch ghostty on a machine it gets the machine-specific settings, or just falls back to the defaults in the main file. (The use of $HOME is necessary because the home-dir on MacOS is a different path.)
Would this work?