Skip to main content
D
Dioni.dev
Yagura icon

Yagura

A read-only watchtower for AI agents across your git worktrees.

It finds every git repo under your roots, lists all their worktrees, and shows the agent running in each, live and ranked by activity, in one console. Read-only by design, so it's safe to keep on screen all day.

Apache-2.0Go 1.25macOS · Linux
Yagura's live TUI: worktrees grouped by repo with the agent running in each.

See every agent

Every agent, at a glance

  • Live status per agent (RUNNING, EDITING, BROWSING, THINKING), inferred from the last tool each one used.
  • A full-width line under each worktree spells out the current action: running go test ./…, editing webhook_handler.go.
  • Activity-ranked: busy worktrees rise to the top, idle work fades, only live work is loud.
The worktree inspector: CHANGES, GRAPH and PR panes side by side.

A hazard you can't see elsewhere

Catches cross-worktree leaks

  • Yagura attributes each agent to its home worktree and watches where its edits land.
  • When an agent writes into a different worktree of the same repo, it flags a [ LEAK → branch ] chip.
  • Cross-worktree contamination usually goes unnoticed until something breaks; Yagura surfaces it as it happens.

Built to leave open

01

Multi-repo, zero config

Point it at one or more roots; it finds every git repo underneath. No hooks, no daemon, nothing to wire into your agents.

02

A git inspector per worktree

CHANGES, GRAPH and PR panes for the selected worktree: uncommitted files, the commit graph and PR state, without leaving the view.

03

Cross-worktree leak detection

When an agent edits a different worktree of the same repo, Yagura flags it with a [ LEAK → branch ] chip.

04

Read-only by design

It never mutates a repo. No accidental checkout, no surprise reset. Safe to keep on screen all day.

05

Never blocks

Every scan and git call runs off the UI thread with a timeout, so a hung repo or network mount can't freeze the view.

06

Light on huge repos

Agent transcripts that grow to hundreds of MB are read from the tail with an mtime cache, not re-parsed every tick.

Install

Homebrew

$ brew install zeroblack/tap/yagura

Go

$ go install github.com/zeroblack/yagura/cmd/yagura@latest

Built with

Go 1.25TUIApache-2.0macOSLinux

Built to leave open

Read-only, never blocks, light on huge repos. Point it at your roots and keep it on screen beside your agents.

Dioni

Made by Dioni, an indie dev. Tools I build because I use them every day.

Yagura | Dioni.dev