Back to devlog

Designing the tiled session grid

Running one agent at a time is simple, but it leaves a lot of attention unused. The grid is Blackcrab's attempt to make parallel agent work legible without turning it into a control room.

Each tile is a work unit

The grid works because each tile has a clear owner: one session, one transcript, one composer, and one working directory. That keeps parallel work from collapsing into one long feed.

A tile should answer the practical questions immediately. What is this session doing? Which repo is it in? Is it still streaming? How much context is left? What changed since I last looked?

Density without dashboard noise

Developer tools can become decorative dashboards quickly. The grid tries to stay closer to a terminal multiplexer: dense, predictable, and built around repeated actions instead of one-off presentation.

That means stable tile sizes, keyboard focus, compact status, and enough visual contrast to scan six sessions without needing a legend.

  • Command palette for cross-session navigation.
  • Numbered shortcuts for direct tile focus.
  • Per-session state instead of global mode switches.
  • Compact status text that does not resize the layout.

The open question

The hard part is deciding how much automation belongs in the grid itself. Blackcrab should help notice stuck sessions and expensive runs, but it should not pretend to know which thread deserves your attention.

For now, the product favors explicit control. The app makes many sessions visible, but the developer still chooses when to split work, when to merge it, and when to stop an agent before it wanders.

More devlog

Release notes

What changed in Blackcrab 0.1.1 and 0.1.2

The first two updates after the initial preview focused on making Blackcrab more reliable as a daily Claude Code workspace: better attention signals, safer handoffs, usage dashboards, project reporting, faster search, and signed update artifacts.

Design note

Why Blackcrab is a desktop app

The product is not trying to hide Claude Code. It gives the CLI a native workspace for parallel sessions, local context, and the parts of agent work that are easier to manage visually.

Engineering

What local-first means for Blackcrab

Local-first is not a vibe for this product. It is a practical constraint around where transcripts live, how Claude Code runs, and what kind of trust the app should ask for.