Kibann Logo

The Agent-First Terminal

A fast terminal built on libghostty, made for working beside coding agents. See which agent is working, waiting or done. See every pane's branch and diff. Let agents open panes and run commands where you can watch, and take over any time.

For Macs with Apple silicon · Free and open source (MIT)
01 / Features

CAPABILITIES

Feature 01

Agent Status

A dot on every pane running Claude Code, Codex or OpenCode: green while it works, amber when it waits for you, blue when it finished. Rolled up on tabs, the sidebar and the Dock.

Feature 02

Agents Drive Panes

Every shell gets a kibann command. Agents open splits, run commands, read output and wait on each other, right where you can watch and take over.

Feature 03

Git at a Glance

Each pane shows its repo, worktree, branch, changed files and ahead/behind, updated from filesystem events. Click the count to see the diff.

Feature 04

Shells Outlive the Window

A background daemon keeps shells running when you quit. Reopen and they're back. After a reboot, tabs and splits return in the same directories.

Feature 05

A Sidebar of Every Pane

Every pane of every tab, grouped by repository, waiting agents first. Hover for a live preview. Folds to a narrow rail.

Feature 06

900 Themes

A live, searchable picker over the iTerm2-Color-Schemes collection. The whole window follows the theme, not just the terminal.

Feature 07

Lives in the Menu Bar

Closing the window or Cmd+Q hides it to the menu bar, so agents can still reach you. The icon shows a dot while one waits.

Feature 08

Updates Itself

Checks hourly, downloads in the background and offers to restart. Your shells keep running through the update.

Feature 09

Speaks Ghostty

Ghostty's shortcuts, config syntax, keybind actions and theme format. Most of a Ghostty config works as it is. Or use Settings (Cmd+,), which writes the same file.

02 / Workspace

EVERY AGENT IN VIEW

1 api · auth-fix
2 web · main
api›auth-fix●5
~/src/api on auth-fix
❯ claude
> the refresh token expires early, fix it
● Read src/auth/session.ts
● Edit src/auth/refresh.ts +14 -6
● Bash kibann pane split --direction right
✻ Refactoring token refresh… (esc to interrupt)
api›auth-fix●5
❯ npm test
PASS src/auth/refresh.test.ts
PASS src/auth/session.test.ts
Tests: 42 passed, 42 total
Working Waiting for you Finished while you were away●5 Files changed (click for the diff)
03 / Agent CLI

AGENTS DRIVE PANES

Every shell in Kibann can run kibann. Claude Code, Codex, OpenCode, or any script running in a pane uses it to open splits and tabs, type into them, read them and wait on them, working beside you where you can see it.

claude · KIBANN_PANE=p3
# open a pane beside you, run the tests in it
❯ p=$(kibann pane split --direction right | jq -r .pane.id)
❯ kibann pane run "$p" "npm test" --wait
{"exit_code":0}
# read what it printed
❯ kibann pane read "$p" --source recent --lines 40
# wait for a dev server, or for another agent
❯ kibann pane wait "$p" --regex '^ready' --timeout 30000
❯ kibann pane wait p7 --until done,blocked
# teach Claude Code, Codex and OpenCode the CLI
❯ kibann skill install
❯
01

Panes that persist

Panes an agent opens are real panes. They don't steal your focus, and they stay like your own.

02

JSON in, JSON out

Every command prints JSON. Errors are JSON on stderr. Scripts and agents parse it without guessing.

03

Take over any time

Click into any pane an agent opened and type. It's your terminal; the agent is just another user of it.

04

Only you can drive it

The socket is readable by your user alone, so nothing else on the machine can type into your panes.

04 / Principles

HOW IT WORKS

01 / AGENT

AGENT FIRST

Built for Claude Code, Codex and OpenCode. Status is read from the agent's title and screen, not hooks, so an Esc mid-turn or a cancelled prompt never leaves a stale dot.

02 / ZERO

ZERO POLLING

Git status runs on filesystem events, once per checkout, ignoring ignored files. An idle workspace costs nothing, and it never takes the lock an agent's commit needs.

03 / BUILT

BUILT ON GHOSTTY

libghostty-vt does the terminal emulation: true color, wide characters and emoji, box drawing drawn as lines, selection and links that just work.

04 / NOTHING

NOTHING LOST

Quit or update and your shells keep running. Reboot and your tabs, splits, sizes and focus come back, each in the directory it was in.

05 / Thanks

THANK YOU, GHOSTTY

We're huge fans of Ghostty. Kibann's terminal emulation is libghostty-vt, the same core that makes Ghostty fast and correct, and we borrowed its shortcuts, its config syntax, its keybind actions and its theme format, because they're right.

Kibann adds the parts we wanted for working beside coding agents. If you don't need those, use Ghostty. Either way, go say thanks to Mitchell and the Ghostty contributors.

Also standing on the shoulders of

06 / Tech Stack

BUILT WITH

Terminal

Backend

  • Rust
  • Tauri 2
  • PTY daemon

Renderer

  • TypeScript
  • Canvas
  • Vite

Agents

  • kibann CLI
  • Claude Code, Codex, OpenCode
  • JSON over socket

Config

  • Ghostty syntax
  • ~900 themes
  • Settings (Cmd+,)

Platform

  • macOS
  • Apple silicon
  • Signed & notarized
  • Linux from source

Kibann Terminal — MIT licensed

Built on Ghostty, with love. Work beside your agents. Watch them. Take over.