explaingit

s0xdk/ghostty-blackhole

Analysis updated 2026-07-03 · repo last pushed 2026-06-11

1,341GLSLAudience · developerComplexity · 3/5ActiveSetup · moderate

TLDR

A terminal visual that renders a physics-accurate black hole inside Ghostty, growing as your Claude Code context fills up so you always know when a session is about to run out of room.

Mindmap

mindmap
  root((repo))
    What it does
      Ray-traced black hole
      Grows with AI context
      Lensing and accretion disk
    Tech stack
      GLSL shaders
      Shell helper script
      Ghostty terminal
    Use cases
      Visual context budget
      Pomodoro work timer
      Physics demo
    Audience
      Developers using Claude Code
      Ghostty terminal users
    Key trick
      Cursor color encodes fill
      Shader decodes each frame
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

See your Claude Code context fill up as a growing black hole so you know when to compact.

USE CASE 2

Use pomodoro mode to grow the hole during work and shrink it during breaks.

USE CASE 3

Enjoy a striking, physics-accurate black hole rendered live inside your terminal.

What is it built with?

GLSLShellGhostty

How does it compare?

s0xdk/ghostty-blackholeelisaliman/ghostty-shaderspatriciogonzalezvivo/thebookofshaders
Stars1,341156,886
LanguageGLSLGLSLGLSL
Last pushed2026-06-11
MaintenanceActive
Setup difficultymoderateeasyeasy
Complexity3/51/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires the Ghostty terminal app and running the helper script alongside Claude Code sessions.

In plain English

Ghostty Blackhole puts a real, ray-traced black hole inside your terminal window, one that grows as your AI coding session fills up. If you use Claude Code, the hole starts small in the corner when your context is empty and swallows more of your screen as the context window fills. The visual cue tells you when a /compact command is coming, so you're never surprised by a session running out of room. If no session is running, the hole disappears entirely and you just get a normal terminal. The black hole is rendered using real physics. Every pixel near the hole traces the path a photon would take around a black hole, bending light exactly as gravity would. Your terminal text becomes the background sky that gets lensed and distorted, text near the hole stretches into a ring, and text behind it genuinely disappears. There's also an accretion disk with relativistic coloring, where the side moving toward you glows blue-hot and the receding side dims to red. None of this is painted on, it all emerges from the ray-tracing math. The clever part is how the hole knows how full your context is. The terminal shader can't receive custom data directly, but it can read cursor color. A small helper script encodes your context fill percentage into the cursor's color, and the shader decodes it back every frame. When you start a new session or run /compact, the hole snaps back to its tiny corner seed. When you exit, it vanishes. There's also a pomodoro mode that grows the hole over a work period and shrinks it during breaks, though the README notes a current limitation: the wall-clock feature in Ghostty doesn't work yet, so only the idle detector functions. Token mode, the default, is unaffected. This is for developers using the Ghostty terminal who work with Claude Code and want a visual, ambient sense of their context budget, or just want a striking, physics-accurate black hole on their screen.

Copy-paste prompts

Prompt 1
Using ghostty-blackhole, how do I install the shader and helper script so the black hole grows as my Claude Code session fills up?
Prompt 2
In ghostty-blackhole, how does the cursor color trick work to pass the context fill percentage into the GLSL shader each frame?
Prompt 3
How do I configure ghostty-blackhole to use pomodoro mode instead of token mode, and what limitations does the README mention about it?

Frequently asked questions

What is ghostty-blackhole?

A terminal visual that renders a physics-accurate black hole inside Ghostty, growing as your Claude Code context fills up so you always know when a session is about to run out of room.

What language is ghostty-blackhole written in?

Mainly GLSL. The stack also includes GLSL, Shell, Ghostty.

Is ghostty-blackhole actively maintained?

Active — commit in last 30 days (last push 2026-06-11).

How hard is ghostty-blackhole to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is ghostty-blackhole for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub s0xdk on gitmyhub

Verify against the repo before relying on details.