← All projects
Projects 04/Desktop app · Tauri 2, Rust, React

tickytacky

A desktop app for Windows and macOS that runs several coding-agent sessions side by side, each in its own Git worktree, and shows what every agent is doing without reading its terminal.

Private repository

01What it is

You register a Git repository as a project and start a session on it. The app creates a worktree and a branch, launches an agent CLI such as Claude Code inside it, and keeps the session on a dashboard next to the others. You can attach a terminal to any session, look at the files it changed, and merge the worktree back when you are happy with it.

02What I built

The whole app: a Rust core that owns the terminal processes, the Git worktrees and a SQLite registry of projects and sessions, and a React front end with the dashboard, an embedded terminal and a code and diff viewer. Two small sidecar programs let an agent report its state and call back into the app. The interface is in English and French, and a build check fails if a French string is missing.

03The rule everything hangs on

Agent status never comes from parsing terminal output. A hook sidecar writes small state files, a watcher reads them, and the terminal only carries raw bytes to a screen for a person to read. The two channels share nothing but a session id, so a change in an agent's output format cannot break the dashboard.

04How it runs

The Rust domain logic lives in its own crate with no dependency on Tauri, so it is tested without a window. A merge waits through a short cancellable countdown before it touches Git. CI runs the Rust tests on Windows and macOS, and every push to the main branches runs semantic-release, which derives the version from the commit messages and attaches unsigned builds to a draft release.

How it is built

  1. Interface

    React in a webview

  2. Rust core

    Tauri app and domain crate

  3. Processes

    Spawned on the machine

  4. Storage

    Local files and database

  5. Sidecars

    Small programs the agent runs

  6. Delivery

    Build and release

Select a part of the diagram to see what it does. Each color is one flow through the system.

© 2026 Benoit Ardiet · Quito, Ecuador · UTC−5GitHubLinkedInNo tracking, no cookies.