HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
kovidgoyal
kitty
Python2017–2026
kovidgoyal / kitty

kitty

If you live in the terminal, kitty is made for you! Cross-platform, fast, feature-rich, GPU based.

87Distinct people
113Mentions
2Explicit recommenders
35.7KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

If you live in the terminal, kitty is made for you! Cross-platform, fast, feature-rich, GPU based.

GitHub

Where it is used

  • Graphviz — Graphviz adds a -Tkitty output to display inline graphics using the kitty Terminal graphics protocol. This implements inline graphics in terminals that support that protocol, including kitty. Source
  • mpv (media player) — mpv is documented on kitty's integrations page as using kitty's graphics/video output (vo=kitty) to play videos in the terminal. Source

What people are saying

I mostly switched to librem 14, arch linux (i3wm, gnome from time to time), still using a mac for work (mostly presentations, video conferencing). Development tends to get more…

kgarten used a recommendation phrase. 2 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 4:00:59 PM UTC.

Mentions over time

HN mentions by year113 dated mentions

Observed mentions: 2017-01-07 04:17:33 UTC to 2026-10-07 18:29:01 UTC.

051015202017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 8 mentions; 3 submissions, 5 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 14 mentions; 1 submissions, 13 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 10 mentions; 0 submissions, 10 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 13 mentions; 3 submissions, 10 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 12 mentions; 1 submissions, 11 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 14 mentions; 2 submissions, 12 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 19 mentions; 1 submissions, 18 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC835
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC14113
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC606
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC10010
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC13310
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC12111
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC14212
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC19118
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC11110
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC606

What Hacker News says

19 sources
I have been waiting to try this out for sometime now. I recently tried various terminal emulator tools and I settled on wave terminal. This is a list of these tools for reference. I would list tools that are on both MacOS and Linux which is comparable to this new emulator. But also because I did not try any on windows. - Alacritty (https://github.com/jwilm/alacritty) - waveterminal (https://github.com/wavetermdev/waveterm) - Hyber (https://github.com/zeit/hyper) - Kitty (https://github.com/kovidgoyal/kitty) - Rio (https://github.com/raphamorim/rio) - Tabby (https://github.com/Eugeny/tabby) - Wezterm(https://github.com/wez/wezterm) - Contour (https://contour-terminal.org) - Extraterm (https://github.com/sedwards2009/extraterm) - Warp (https://www.warp.dev/) I didn't like that Warp is VC product as I don't like essential tool like a termina
Read the rest
l in my workflow to be dependent on proprietary VC product.
In Ghostty 1.0
For those that have to bounce between Mac and Linux for work/personal reasons, I cannot recommend Kitty terminal enough. The main thing that's a big of a pain is you'll probably want to set up a scrollback pager (I use neovim as mine but vim works too) so you easily search the terminal output and copy/paste from it. I use # https://github.com/kovidgoyal/kitty/issues/719#issuecomment-... scrollback_pager nvim -u ~/.config/kitty/kitty-scrollback-pager.vimrc -c "silent write! /tmp/kitty_scrollback_buffer | te cat /tmp/kitty_scrollback_buffer -" and the scrollback pager vimrc: ``` set nonumber nolist showtabline=0 foldcolumn=0" set clipboard+=unnamedplus autocmd TermOpen * normal G map # ^ map q :qa!<CR> "silent write! /tmp/kitty_scrollback_buffer | te cat /tmp/kitty_scrollback_buffer - ```
In Warp terminal – no more login required
> the exact same types of comments from the maintainer. Kovid really bugs me and is a reason I turned away from kitty too. I saw his character when looking up tmux issues. He's brash like Linus, but at least while Linus is calling you an idiot he'll tell you a better way to solve your problem. Kovid seems to think tmux is really about splitting panes and peoples' main draw to it isn't about persistence... Oh, and kitty phones home If you want drama: tmux: - https://github.com/kovidgoyal/kitty/issues/391 Phone Home: - https://github.com/kovidgoyal/kitty/pull/3544 - https://github.com/kovidgoyal/kitty/issues/2481 On a side note: I really don't trust devs who reply to issues and close them. I get wanting to remove the issue from the task list, but just set up an action for stale issues (which has an added advantage of pinging the us
Read the rest
er who may have just lost the message). Otherwise let the user close because they might have follow-up questions. It's just disrespectful and always a red flag. I know lots of users are dumb (I literally just got an issue on a research project with someone asking how they fine tune our model...), but noobs are wizards in training. You don't have to be nice, but don't be mean either. Plus, you'll just piss off people who could end up helping you. And if you don't want help, I expect your project to decay when you get bored. Definitely not what I want from a terminal
In Okay, I Like WezTerm
Look: my issue is that the kitty developer clearly thinks of himself as "God's gift to terminals". I pointed at one specific issue that I think is "telling" of an attitude of "I know better than everyone else", but I am not at all relying on that issue. I just went through and started looking at recently closed issues on GitHub. I got through four before I found an example of what I think is the problem, and while this is a fairly benign one it is also clearly awkward enough that it shouldn't happen this often and is more than sufficient to clarify the complaint. In this one, someone carefully points out an issue with a common script for emacs designed to implement the kitty-specific protocol (the one that kovid insisted everyone get on board with, as opposed to the prior art that already had traction, so now we have two competing ones; b
Read the rest
ut that's my complaint, not the poster's). https://github.com/kovidgoyal/kitty/issues/7711 Kovid then decides to pick a fight by being abrupt and a bit snarky in his response. Again: the issue was just technical and is good enough that I can probably debug the issue... I dream of getting bug reports like this, so this isn't the kind of response I would expect. > I'm afraid I have zero interest in debugging emacs and kkp.el. This is just downright mean-spirited. You can say something similar in a way that isn't grating in the same way, but Kovid prefers being grating, and clearly the person in the issue also took it this way and they get snarky back: > If you aren't interested that's okay, of course. > OTOH, I have zero interest in debugging Kitty. I'll just use Alacritty or iTerm :-) Given Kovid's comment, I think this is in some sense a leveled response: Kovid is demonstrating he has little interest in being collaborative or helpful, even in an ecosystem that he created. I certainly don't act like that, even when people would use tools I actively disagreed with, I still would always help them debug it. Kovid, of course, escalates this one further and leaves the thread in a pretty demoralizing place. > Excellent! Don't let the door hit you on the way out. Damn :/. That is what I am talking about. He isn't just grating in the way Linus was grating -- though Linus, to be clear, was also an asshole who, at some point, started to realize just how much of a problem he was being and is a lot better today -- and I also don't think he is just grating in the way that people who moralize (I am guilty of this one) do... he's just kind of mean, even when it makes no sense, and the result is that many issue threads with him get this "edge" about them where everyone is slowly escalating the burn until they just drop out of the thread entirely for their mental health. (Part of me actually wants to now debug this specific issue, but I'd be doing it out of spite, and I do not want to be dragged into that. I only commented on this at all as I didn't want the person further upthread of me to feel alone in commenting on the problem with Kovid, and so I think it is reasonable that I get some of the flak here as I'm willing to bring the receipts.) So, no: I simply don't think it is fair to say I am being dishonest, and the specific thing you quoted from me about him not liking settings is obviously not the point and wasn't something I delved into, as it didn't matter why: the issue was how... FWIW, in a thread where a bunch of people are all agreeing that Kovid turned them away from using kitty, maybe at least some of us have a point?
In Okay, I Like WezTerm
The first two top results: https://sw.kovidgoyal.net/kitty/faq/#i-get-errors-about-the-... https://github.com/kovidgoyal/kitty/discussions/3873 Basically it is how it presents itself as xterm-kitty and then how to make others recognize that. Installing terminfo on the remote is an option, lying and claim it to be xterm-256color is another (with caveats.) As in other issues with kitty, the author is probably right. But for many people that they have many different kinds of remotes to log into where they don’t have control over, getting around with these issues is tedious. Making kitty works is possible, and I learnt how to deal with these issues one by one, but hearing comments here on HN points me to wezterm and once I migrated I never looked back. For the simple stuffs wezterm gets out of the way. And there’s some interesting advanced st
Read the rest
uffs to pick up, such as multiplexing with ssh: https://wezfurlong.org/wezterm/multiplexing.html?h=ssh#ssh-d...
In Okay, I Like WezTerm
It's not like Goyal doesn't accept any patches [1]. I don't use kitty myself, but many people who do seem to love it. I've come around to feel that this is truly a maintainer's judgment call. After all, they are almost always stuck maintaining the code no matter who wrote it initially, and they know better than anyone else what code they're personally comfortable maintaining. More generally, if you like a piece of software enough, you're implicitly trusting the maintainers' judgment. You're certainly not reviewing every single line of code they write to see if you agree with it. If they betray your trust enough then you move on, but if you keep using the program then the maintainers' judgment was right enough. The miserable survival rate of hostile forks also demonstrates that even if people care enough to fork over one issue, they rarely
Read the rest
care enough to maintain the overall project long-term, despite implicitly asking the original maintainers to do the exact same thing. [1] https://github.com/kovidgoyal/kitty/graphs/contributors
In Tmux is worse-is-better
My understanding is that kitty has an automatic (opt-out) update feature [0][1]. I don't really like the idea of a terminal doing that. However I like the fact that kitty developer(s) actively improved the state of the terminal emulation with their new keyboard and graphic protocols [2]. [0] https://github.com/kovidgoyal/kitty/issues/2481 [1] https://github.com/kovidgoyal/kitty/pull/3544 [2] https://news.ycombinator.com/item?id=40378357
In Alacritty – A fast, cross-platform, OpenGL terminal emulator
Kitty is fine, but there is a big issue with tmux and the dev seems to think it is about tiling and not about using remote machines.[0] Sure, I tile because it is there and I don't have control of the terminal I'll use on the other end, but the main draw is I gotta work on machines I'm connecting to with ssh. I think there's a lot of us still needing tools like this (and mosh) but little support. Looks like people were trying to help the dev but there was communication breakdown. I'm all for making sure things are done right and not just accepting hacky solutions, but there has to end up being a solution. I'd honestly just love to have a minimal terminal like foot[1], but that's wayland only and wayland support is still very mixed. And who knows when ghostty will come out[2]. But I also need linux + mac support and I think a lot of people
Read the rest
do (and no wayland to mac port?). Too many terminals are far too bloated. And boy... do I not need this bullshit[3] [0] https://github.com/kovidgoyal/kitty/issues/391 [1] https://codeberg.org/dnkl/foot [2] https://mitchellh.com/ghostty [3] https://github.com/warpdotdev/Warp/issues/900
In Show HN: a Rust based CLI tool 'imgcatr' for displaying images
Strangely this doesn't work inside tmux... It really seems like there are a lot of issues with rendering images in the cli. I know kitty has a python version too but kitty doesn't play nice with tmux and the dev isn't a fan of tmux[0]. To be fair, I'd love to move away from tmux but I use remote machines all day and I haven't found a good alternative. I don't care about tiling (I can do that in vim, even the terminal), though it is useful (mostly switching sessions for managing workflow context). I'd also love to see someone pick back up mosh (ssh). A critical problem is that if you work on remote machines a lot you probably gotta be able to build some things from source and build into your local bin because you don't have sudo access on the machine. Preferably installs without network access. [0] https://github.com/kovidgoyal/kitty/issue
Read the rest
In Show HN: a Rust based CLI tool 'imgcatr' for displaying images

Showing the 15 most recent of 19 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.