$ saku

Your team is no longer
just you

In 2026, "you" is a human-agent team.
Saku is the shared context layer between intention and execution.

Design Principles

>_

Terminal-first

The CLI is the universal interface. Humans type commands; agents call them programmatically. Both get the same tool, the same behavior, the same exit codes.

Local-first

Data lives in ~/.local/share/. Human-readable JSON. No internet required, no account, no vendor lock-in. Sync is opt-in and self-hosted.

Fast by default

Sub-10ms startup. No async overhead, no daemon. Fast enough to be called hundreds of times per day by an agent without friction.

Composable

Each tool does one thing, serves one loop. Tools reference each other but remain independently useful. The Unix philosophy for human-agent work.

Legible to both

Every output—terminal display, JSON export, exit codes—is equally readable by a human skimming and a program parsing.

Opinionated

We make choices so you don't have to. The data model, visual language, command structure—all decided. Configuration is a last resort.

The Loops

Daily Loop "What's the plan? What happened? What do we hand off?"
tdo
○ ● ✓
Shipping

Work queue for the human-agent team. Inbox is the async dialogue surface—agents surface tasks, humans prioritize and delegate. The logbook is the audit trail.

  • Inbox as human-agent dialogue surface
  • Dependencies and subtasks for structured work
  • Human-readable JSON in ~/.local/share/
$ tdo today
Today (Mar 10) 4 tasks 1 Review agent's auth refactor PR    saku / tdo 2 Spec out ctx save/restore behavior    saku / ctx 3 [agent] Run integration test suite    saku / tdo 4 [agent] Draft jrn schema migration    saku / jrn
jrn
Planned

Daily journal. Chronological log of what happened—written by human or agent, reviewed by the other. Handoffs are first-class: the async channel between shifts.

Knowledge Loop "Why did we decide this?"
dcs
Planned

Decision log. Records what was decided, why, and what alternatives were rejected. Agents read it before proposing changes—no re-litigating closed questions.

Work Loop "What am I doing right now? Where did I leave off?"
wrk
Shipping

Agent task executor. Picks up work orders from tdo, runs them through Claude, and reports results back. The bridge between task queue and execution.

ctx
Planned

Session context. Saves and restores the mental model of a work session—so whether a human resumes after a meeting or an agent resumes after being spawned, the thread is intact.

Orchestrator
saku
Planned

Cross-tool context, search, and sync coordination. The glue that connects every loop into a coherent workspace.

See It In Action

Today (Mar 10) 4 tasks
1 Review agent's auth refactor PR
saku / tdo
2 Spec out ctx save/restore behavior
saku / ctx
3 [agent] Run integration test suite
saku / tdo
4 [agent] Draft jrn schema migration
saku / jrn

Get Started

Quick Start

# Install tdo
cargo install --path crates/tdo
# Try it out
tdo today

Requires Rust 1.83+ with edition 2024 support

Build From Source

# Clone the repository
git clone https://github.com/asierzapata/saku.git
cd saku

# Build all tools
cargo build --release --workspace

Binaries will be in target/release/

View on GitHub →