A desktop overlay for Claude Code

Every session
gets aan crab.

The crawlers stand on a shelf at the bottom of your display. They stay on top of all windows, fullscreen apps too. A crawler walks while its session works, waves when the session needs you, and sleeps when the turn ends. Look down to see which terminal needs you, or answer from the crawler. Its bubble shows the buttons for each permission request and question.

Free for macOS · Windows · Linux. Pro adds settings per setup and per project.

A live shelf with the app's own sprites. Answer a crawler that asks, or click one to shoo it.

Crawlers

One glance, whole picture

A crawler's mood shows its session's state. You have no notifications to dismiss and no window to keep open.

Walks while it works

Its bubble shows what the session does now: the file it edits, the command it runs, the skill it loaded, and the count of lines it changed.

Waves when it needs you

A permission request or a question makes it wave. Its bubble shows the request and the buttons to answer it. Destructive commands get a red bubble.

Curls up when it's done

When the turn ends, the crawler goes to sleep. The quiet crawlers are the finished sessions.

Subagents on a leash

Each subagent is a small crawler on a leash, held by its parent. Its size shows the model it runs on. While the parent waits for its subagents, it tells you, and rarely politely.

Not only crabs

Pick the character for your sessions: the crab or one of the others. Each mood looks the same on each character. Pick one here to redraw the page.

Answering

Answer from the shelf

When a session asks you something, its crawler's bubble shows the prompt. Press a button and Claude Code continues. You do not have to find the terminal.

Allow or deny

A permission request shows the command or file that the session wants to use, with Allow and Deny below it. It appears as soon as Claude Code asks, not seconds later.

Pick an answer

When Claude asks a question, each option is a button. Many questions come one at a time. If a question takes more than one answer, tick your answers and send.

The terminal still asks

The crawler is a shortcut, not a replacement. Answer in the terminal or close the app, and Claude Code works as usual.

Speech · MCP connector

Let a session talk

Connect speech adds an MCP connector named crawlers to that setup's Claude Code with claude mcp add, and allows its one tool. A session can then show a short line in its crawler's bubble. Disconnect removes both.

One tool, called say

The line uses the hooks that the app installed. It stays for six seconds, so you can read it.

Effects, sparingly

A word can wave, bounce, shake or show in bold. Only lines from say get effects. All other session text shows exactly as sent.

Nearly free, and free when off

It costs about 270 tokens per request while on, from cache after the first request. Disable it for all sessions, or with Pro for one setup or project. The session then gets no tool.

Your screens

Always in view, on the screen you choose

The shelf stays on top of all windows. A crawler that needs you is never behind your work.

Over fullscreen apps

The shelf stays on every desktop and Space. Put your editor or a video in fullscreen and the crawlers stay at the bottom.

Pick the display

Put the shelf on any connected display, not only the primary one. With Pro, send the crawlers of one project or setup to their own display. The other crawlers stay where they are.

Remembers where they go

Disconnect a monitor and its crawlers move to the next display. Connect it again and they walk back, even with two identical monitors side by side.

How it works

Nothing polls Claude Code

The app installs hooks, and the hooks drive the crawlers. Each hook runs the app's binary in hook mode. It sends one line through a local socket and exits. Only the permission hook stays connected, to wait for your answer. For speech, the same binary runs as a stdio MCP server (crawwwlers mcp). Its one tool only replies ok, and the line goes to the crawler through the hooks.

  1. Claude Codehook
  2. crawwwlers --hooksocket
  3. the appstate machinesnapshot
  4. the overlaySvelte

Leaves your settings alone

Connect adds eleven hook entries to a config directory's settings.json and keeps a backup. It never changes your own hooks. Disconnect removes exactly those eleven.

Never fails a session

Hook mode catches panics and always exits 0. It prints only the answer you gave a crawler. If no answer comes, because the app is closed or you answered in the terminal, it prints nothing. Claude Code then asks as usual.

Knows its model

The app reads the model and the context use from the session transcript, because no hook reports them. The bubble shows both. The context value changes from green to yellow, red and purple as the window fills, and shakes from 80%.

Per setup & project Pro

A crawler per setup, and per project

A Pro feature: $4.49 per computer, less from three computers, paid once. All other features on this page are free.

The free app gives all sessions the same crawler: any character, one colour, one size, one behaviour, one display. Pro gives each Claude setup its own crawler. Pro also reads a .crawlers.json in each repository, so each project can set its own character, colour, size, behaviour and display. You can then tell your sessions apart from across the room.

Project files come with a clone, so the app does not trust them. Colours must be #rrggbb, timings have limits, and the app refuses symlinks. A setup can disable project overrides. The app watches both files and applies a manual edit within a second.

Pro

.crawlers.json

Pricing

Free to run. Pro to tell them apart.

All crawlers, moods and bubbles are free. Pro is one payment, not a subscription.

Free

$0

  • A crawler for each session, on macOS, Windows and Linux
  • Subagents on a leash, bubbles, alerts and nudges
  • Answer permission requests and questions from the crawler
  • Speech: sessions talk through their crawler, with word effects (an optional MCP connector)
  • Always on top, on the display you choose
  • One look for all sessions: any character, colour, size and behaviour
Download

Download

Get it running

Pick your system

macOSDownload WindowsDownload LinuxDownload

On Windows, SmartScreen says “Windows protected your PC” and names an unknown publisher, because the installer is not signed yet. Select More info, then Run anyway. We add Azure Trusted Signing when Pro pays for it.

  1. Install and open the app. The overlay appears at the bottom of your screen.
  2. Open Settings… from the tray icon and select a Claude Code config directory.
  3. Press Connect. Each new session gets its crawler.