| ▲ | Libghostty 1.0(mitchellh.com) |
| 503 points by mfiguiere 8 hours ago | 76 comments |
| |
|
| ▲ | jdorfman 4 hours ago | parent | next [-] |
| > “And a whole wave of new terminals and "agentic" coding tools, such as herdr and cmux, have been built on it rather than writing yet another emulator.” Mitchell could have easily snuck his competing product Rex in there but resisted. Respect. |
| |
| ▲ | raglof 17 minutes ago | parent | next [-] | | I like Rex and have started using it and its replacing Ghostty for me. This has made me a bit confused: is the intent for Rex to replace Ghostty? not sure when I would use one vs the other yet | |
| ▲ | ksh09 2 hours ago | parent | prev | next [-] | | I'd be happy there even if he did, maybe there's a delayed schedule for Rex to be publicly available. | |
| ▲ | howunfortunate 3 hours ago | parent | prev | next [-] | | Would be some serious 4d chess if you were his sockpuppet account. | | |
| ▲ | jdorfman an hour ago | parent | next [-] | | lol now that I read it back it might seem like that. I’m just a Mitchell Stan. | |
| ▲ | codessta 2 hours ago | parent | prev [-] | | After watching "You can see everything" I now have to stop and think rather than just laughing at your commment. |
| |
| ▲ | nsonha 2 hours ago | parent | prev [-] | | That's because he doesn't have a product yet | | |
| ▲ | aroman 43 minutes ago | parent | next [-] | | No, he does, and it's extremely good. It's completely replaced herdr for me and I run it on Linux (server), macOS, and my iPhone. I've yet to run into a bug. Access is being controlled via Discord and TestFlight - you can find the link to apply on their site. | |
| ▲ | jdorfman an hour ago | parent | prev [-] | | I’m using the beta. So far so good. I’m swapping between that and Herdr. Anyone who writes macOS apps take notes on Rex’s onboarding. It was so easy to enable/grant permissions. |
|
|
|
| ▲ | smj-edison 3 hours ago | parent | prev | next [-] |
| I'm currently working on my own Zig project (an interpreter) and right now I'm working on designing a C interface for it. Seeing things mentioned like having objects as opaque handles, or enum-keyed getters and setters, made me think about how clunky my current API is, since I leak too many details to callers. What really caught my attention was this: "So from the start, I took inspiration from C libraries I enjoyed working with and designed the API to have a strong, stable ABI that allows for future additions." What are good examples of this? I feel like I just don't have enough experience with well-designed C libraries to know what to look for. |
|
| ▲ | JuniperMesos 7 hours ago | parent | prev | next [-] |
| Libghostty is a very cool project, this is an exciting release, kudos to mitchellh for spearheading this as well as all the people who have made contributions to the project. I use ghostty as my primary terminal emulator today and a few months ago I was experimenting with using libghostty in an android project that I plan to jump back to someday when I have the time, so I personally benefit from this work. |
| |
| ▲ | shoobiedoo 7 hours ago | parent [-] | | Indeed it is. It feels like libghostty was only announced yesterday and already there are things like ghostel for emacs that are imo far above and beyond the other emacs terminal options. | | |
| ▲ | Conscat 3 hours ago | parent | next [-] | | Ghostel is the first Emacs terminal emulator I've used that really just worked. Vterm and EAT were nice at for time but it's like night and day to Ghostel. | |
| ▲ | chuckadams 6 hours ago | parent | prev | next [-] | | As of recently, the embedded terminal in Jetbrains IDEs is also based on libghostty. | | |
| ▲ | AnggaSP 6 hours ago | parent [-] | | And it has been such an upgrade. There was so many little things that bugs me with JediTerm, unsupported escape sequences, bugged visualization, truncated output, you name it. Now it just work, like it supposed to. |
| |
| ▲ | asa123 4 hours ago | parent | prev | next [-] | | ghostel makes vterm feel so sad! | |
| ▲ | iLemming 6 hours ago | parent | prev [-] | | Yesss! Finally I can run nvim +term inside the Emacs frame and then call emacs -nw in there. Matryoshkamacs is the dream. We all live in a simulation. |
|
|
|
| ▲ | spudlyo 4 hours ago | parent | prev | next [-] |
| One area where Ghostty really shines is with fancy TUI programs like the pi agent. Pi has a relatively recent tuiMode "fullscreen" feature, and it's been exceptional. Showing inline images with the Kitty graphics protocol has been a huge improvement too -- I love it when a model calls `read` on an image file and I get to see the results in my terminal. The OSC-8 hyperlink support very handy too. Viewport scrolling is super fast, and pi can hide/show the scrollbar as you need it. |
| |
|
| ▲ | ximm 4 hours ago | parent | prev | next [-] |
| > Every bug any libghostty-vt embedder reports makes everyone else in the ecosystem better. Every feature we ship in libghostty-vt becomes available to everyone quickly and safely. Terminals can move faster with less fragmentation. Can anyone give a comparison to libvte? There are many terminals that are just thin wrapper around that (gnome-terminal, xfce4-terminal, mate-terminal, lxterminal, sakura, …). It is tied to GTK, so it has a much narrower scope. But still it feels related in spirit. |
|
| ▲ | amterp 6 hours ago | parent | prev | next [-] |
| Libghostty is such an awesome project, I didn't myself understand the vision a year ago but I've since then been working on my own terminal project using Libghostty and it really does just work and save me such a tremendous amount of work. Kudos to all the contributors! |
|
| ▲ | IlikeMadison 5 hours ago | parent | prev | next [-] |
| Libghostty made the best terminal for Emacs possible (Ghostel). Thank you Mitchell. |
|
| ▲ | paradox460 4 hours ago | parent | prev | next [-] |
| I'm still on iTerm2, simply because it just seems to work and has all the features I want Occasionally I'll check out other terms people rave about. Tried kitty, wezterm, and a few others a while back, but wound up coming back to iterm. Still, really happy to see things like this gaining traction. An easy way to implement high performance terminals in any application is a boon |
| |
| ▲ | ashton314 3 hours ago | parent [-] | | Search and tmux integration are where iTerm2 really shines imo. I use Ghostty 99% of the time now though. (Search did get a lot better with the latest release.) What features specifically keep you on iTerm2? | | |
| ▲ | isomorphic 2 hours ago | parent | next [-] | | Aside from the outstanding tmux integration (and search): - Font rendering (and cell size control) is still better on iTerm2, although Ghostty has been rapidly gaining
- Compact theme with thin titlebar tabs
- Profiles
- Window arrangements
- In-terminal API (which Mitchell has acknowledged as a useful feature)
The iTerm2 settings/preferences are a mixed bag. On the one hand, discoverability and settings search. On the other hand the panel is insane. Also iTerm2 doesn't have Ghostty's straightforward prefs file. I guess I want the best of both worlds: A well-organized settings UI, with search; and a file I can easily neovim. | |
| ▲ | rkoten 3 hours ago | parent | prev [-] | | In what way did search get better for you with 1.4? The hotkeys to navigate search results (Cmd+G / Cmd+Shift+G) don't work for me even with custom keybindings as documented and the search box doesn't get prefilled with current selection - the _only_ two features that I'd ask for besides the actual search working. Were you able to solve these in your setup? No shade to ghostty btw, it's an amazing product that I use every day. I just have to accept the lack of some of this usability polish. |
|
|
|
| ▲ | veqq 2 hours ago | parent | prev | next [-] |
| Recent interview with Hashimoto: https://alexalejandre.com/interviews/interview-with-mitchell... |
|
| ▲ | lioeters 4 hours ago | parent | prev | next [-] |
| The documentation for libghostty is great, I'm reading through the guides and examples. It feel like a fun way to build your own terminal emulator GUI in C, Zig, or other languages with C bindings. https://lib.ghostty.org/vt/example-programs.html It also looks useful for testing and developing text interfaces (TUI), like file navigator, editor, dashboard, etc. |
|
| ▲ | sho_hn 2 hours ago | parent | prev | next [-] |
| Great stuff, congrats to mitchellh and the other Ghostty devs! Kwi's (a KDE embedder) CI/CD and its Flatpak builds/repo have moved to the new version. |
|
| ▲ | kyrofa 4 hours ago | parent | prev | next [-] |
| Wow. This is how you write a library. |
|
| ▲ | CrimsonCape 5 hours ago | parent | prev | next [-] |
| does anyone have a terminal setup with gorgeous colors/background/etc over ssh without a display manager? Looking for a lightweight server side environment. I keep searching for headless / framebuffer / DRM setups and there seems to be a few out there, wondering if these exist in a practical workflow. |
| |
| ▲ | JdeBP 5 hours ago | parent [-] | | This is a confusing question. If the terminal emulator is using the server's frame buffer, then it is running on the server end. If the terminal emulator is 'over SSH', then the actual terminal emulator runs on the client end. They are two very different setups, the former being covered by the likes of zhcon, jfbterm, fbpad, and my virtual terminal system; and the latter being a wide range of things depending from what one's desires are on the client. |
|
|
| ▲ | gregjw 6 hours ago | parent | prev | next [-] |
| an early christmas present, thanks mitch and team |
|
| ▲ | nektro 6 hours ago | parent | prev | next [-] |
| congrats to mitchell and team! |
|
| ▲ | hit8run 33 minutes ago | parent | prev | next [-] |
| Related, from the foot side: I've been porting foot (dnkl's Wayland
terminal) natively to macOS: AppKit, CoreText, Core Animation, CPU
rendering like upstream. On top of it I added native tabs, a
Quake-style drop-down terminal and Ghostty-style splits. What I'm working on now is close to what libghostty enables: a daemon
that runs foot's terminal core headless, so programs keep running when
the app quits or crashes, and windows come back with their scrollback.
Next I want to attach to sessions on other machines over SSH. https://github.com/gobijan/foot-macos |
|
| ▲ | Sparkle-san 6 hours ago | parent | prev | next [-] |
| In the age of perpetual 0.x software, it's nice to see a well-known project get to 1.0 |
| |
| ▲ | xiaoyu2006 6 hours ago | parent [-] | | Agreed. I feel like too much projects are too reluctant to take the responsibility to say "this is production ready". | | |
|
|
| ▲ | matrixhelix 6 hours ago | parent | prev | next [-] |
| And we still don't have Ghostty for Windows |
| |
| ▲ | gregjw 6 hours ago | parent | next [-] | | I use it on Windows all the time, just use a community solution or roll your own | |
| ▲ | fhub 6 hours ago | parent | prev | next [-] | | There are several third-party Windows ports: - Noctty (~517 stars) - GhosttyWin3 - ghostty-windows (~79 stars) | | |
| ▲ | rmunn 5 hours ago | parent [-] | | There's also https://wintty.io/ which I just learned about. MIT licensed, binary downloads restricted to project sponsors, but buildable from source, allegedly easily (I haven't tried it). Currently 120 stars on GitHub. | | |
| ▲ | bpbp-mango an hour ago | parent [-] | | charging for binaries is bold. wonder how he generated enough hype for that to work? |
|
| |
| ▲ | linhns 5 hours ago | parent | prev [-] | | Use Windows Terminal. Nearly a match for Ghostty on Windows. Well, it's Windows |
|
|
| ▲ | pmarreck 4 hours ago | parent | prev | next [-] |
| The only thing I miss from WezTerm is the super configurable cursor (because of course I need a pulsating one) |
|
| ▲ | cpendery an hour ago | parent | prev | next [-] |
| libghostty has been awesome for tui-test, excited for the stable api |
|
| ▲ | Decabytes 6 hours ago | parent | prev | next [-] |
| I’m curious why they chose to use C for this as opposed to Zig with a c like interface. |
| |
|
| ▲ | akshaysharma108 28 minutes ago | parent | prev | next [-] |
| good one! |
|
| ▲ | brcmthrowaway 6 hours ago | parent | prev | next [-] |
| What's better, iTerm2 or Ghostty? |
| |
| ▲ | turadg 5 hours ago | parent | next [-] | | I used iTerm2 until I noticed that Ghostty’s New Tab opens at the current working directory. Haven’t gone back since. | | |
| ▲ | paradox460 4 hours ago | parent | next [-] | | You can set that in iterm 2. I've had it that way for ages | | |
| ▲ | turadg 4 hours ago | parent [-] | | Oh right, it didn’t work for me because it depends on edits to my shell config files that didn’t work in my setup. I suppose my accolade is that Ghostty just does what I want without hunting through config screens and managing file edits. |
| |
| ▲ | sorahn 4 hours ago | parent | prev [-] | | You can configure iterm2 to do whatever you want in new tabs or panes. This feature has been available for over a decade. I have it reuse the same directory in a new pane. And my home directory in a new tab. |
| |
| ▲ | topaz0 5 hours ago | parent | prev | next [-] | | Foot ( https://codeberg.org/dnkl/foot ) | |
| ▲ | loeg 6 hours ago | parent | prev | next [-] | | What's better, an apple or an orange? | | | |
| ▲ | goodmythical 5 hours ago | parent | prev | next [-] | | What's better? Only works for some or works for anyone? | |
| ▲ | dmerrick 5 hours ago | parent | prev | next [-] | | iTerm2 has way more features and configuration options Ghostty is simpler and faster | |
| ▲ | sick_of_slop 5 hours ago | parent | prev [-] | | I think Ghostty is great for the most part but I keep going back to iTerm2, personally. iTerm just feel less buggy. For example I was running Claude in a container the other day and the slash command complete wasn’t rendering properly with Ghostty but worked perfectly fine with iTerm. I want to switch to Ghostty because I prefer how simple Ghostty is overall and I think the project itself is very cool and an important piece of software (libghostty) but it doesn’t quite get there for _for my use cases_. |
|
|
| ▲ | markstos 5 hours ago | parent | prev | next [-] |
| I wonder how the author makes the work financially sustainable. |
| |
| ▲ | ec109685 5 hours ago | parent | next [-] | | He's a billionaire, has sponsors and has a startup. | | | |
| ▲ | 80fj0348i 3 hours ago | parent | prev | next [-] | | "Mitchell Hashimoto is a software developer and entrepreneur best known as the co-founder of HashiCorp, which was acquired by IBM for $6.4 billion in 2025." | |
| ▲ | rvz 2 hours ago | parent | prev | next [-] | | Many common ways for the financing of an free and open source project to be sustainable (The main keyword) in the mid to long term: 1) A non-profit company that has full-time employees but supported via sponsorships: (gnu project, mastodon, omarchy, zig) 2) Multiple for-profit companies that each have full-time employees contributing to an open source project that they all use: (ocaml, linux, rust) 3) An ultra high net worth individual that has full-time contributors to open source and supported via a non-profit (signal, ghostty) 4) A for-profit company that has dedicated full-time employees that have full support and own the direction of the open source project (go, swift, java) 5) VC funded open source projects (Herdr, Bun, Deno, Burno, Atuin) All other options such as low donations like "buy me a coffee", ko-fi, are completely unsustainable, now that AI agents exist. | |
| ▲ | lifeisloving 4 hours ago | parent | prev [-] | | https://en.wikipedia.org/wiki/HashiCorp |
|
|
| ▲ | orliesaurus 4 hours ago | parent | prev | next [-] |
| is mitchell hashimoto literally one of the main tanks carrying all of open source right now? what a neat contribution!!! |
|
| ▲ | loeg 6 hours ago | parent | prev | next [-] |
| This is so fuckin' cool. |
|
| ▲ | VadimPR 4 hours ago | parent | prev | next [-] |
| Tried libghostty-vt 1.0 as Mudlet's ANSI decoder - no measurable speed gain in tests and its terminal grid doesn't suit a MUD client (UTF-8 only, scrollback can't be edited), but I reckon it'd make a great terminal pane for cursor-addressed game screens. |
|
| ▲ | hujun236 5 hours ago | parent | prev [-] |
| Curious how stable the public ABI is intended to be now that JetBrains and others are embedding it this quickly. Is the 1.0 promise closer to "API surface won't break" or more "we won't break you without a major version"? |