Skip to content

Repository files navigation

Throughline

Learn in cycles. Move in a line.

A practice of continuous inquiry and forward flow — tlflow.cc

Most systems organize work by state: backlog, ready, doing, blocked, done, someday, version two. Several of those quietly mean not now.

Throughline organizes work by sequence instead. One ordered line runs from past, through Now, into the future. Completed work becomes history rather than piling up in a column, and future work sits ahead of the present in the order we currently believe it should happen.

It is deliberately not a project-management methodology. You never complete a practice.

The vocabulary

term meaning
Practice the whole of it; you get better by doing it and never complete it
the Line the ordered continuity of work through time
Flow movement along the Line; one direction, forward
the Window the current field of attention
Inquiry the learning that decides what comes next
Cycles repeated experiments, unrolled onto the Line
Now the moving boundary between observation and intention

Three claims make it mechanical rather than aspirational:

  • Status is position. "Done" is not a flag, it is a location — behind Now.
  • Markers are landmarks, not buckets. "After launch" is a place on the line.
  • The Window is a view. Now is stored; the window is wherever you look.

tlflow

A single Rust binary — a terminal UI and a command line at once, so a person and a coding agent can both work from the same record. One line lives in one readable Markdown file in your repository.

$ tlflow advance --result "sixteen diagrams, seven generated by tl itself"
what does that change?  tlflow move · tlflow add · tlflow drop

$ tlflow add "generate the diagrams" --after now
$ tlflow line
● sketch the practice  ^k3f
● pick the name  ^m2a
● write docs/method.md  ^q1d
│ NOW
○ generate the diagrams  ^pc4
○ build the ribbon  ^r7e
◆ v0.1
○ MCP server  ^t9a

Placement is required — there is no backlog to drop things into.

Status: the POC is complete. 155 tests, clippy clean. Throughline now manages its own construction — .throughline/line.md is this project's line, and it passes tlflow check.

The practice is written up in docs/method.md.

curl -fsSL https://raw.githubusercontent.com/DanielCarmingham/throughline/main/install.sh | sh

Or cargo install --path tlflow from a clone. Then:

tlflow init                    # start a line in any repo
tlflow                         # open the terminal UI
tlflow --help                  # refs, examples, every flag

The manual — every command, the keymap, the file format, config and themes. The practice — what any of it is for.

For agents

tlflow mcp serves the line as typed MCP tools over stdio — line, window, now, add, advance, move_item, check — so an agent works from structured data instead of parsing terminal output. The handshake carries instructions that teach the vocabulary, so a fresh agent learns the practice without being told.

{ "mcpServers": { "throughline": { "command": "tlflow", "args": ["mcp"] } } }

Every tool re-reads the file before acting: it is the source of truth, and a person may have edited it between calls.

Themes

Two ship built in — dark and light. A user theme is a TOML file naming only the tokens it changes:

# .throughline/themes/solarized.toml
base = "dark"

[tokens]
now     = "#268bd2"
marker  = "#d33682"
past    = "#586e75"
blocked = "#cb4b16"
tlflow --theme solarized      # or TL_THEME, or theme = in config.toml
tlflow doctor                 # lists what is available

Unknown token names are an error, not silence — a typo that quietly does nothing leaves a theme looking almost right with no way to tell which line is dead.

Layout

path what
tlflow/ the Rust binary
site/ tlflow.cc — Astro, deployed via uncloud
docs/ design spec and implementation plan
brand/ logo artwork and the tracer that generates every derived asset
.throughline/ this project's own line — Throughline, dogfooded

Working on this

Trunk-based: commit to main, no long-lived branches. A feature branch is a temporal bucket for code, which is the thing §7 argues against.

Version control is jj colocated with git, so both work.

License

MIT — see LICENSE.

About

Throughline — a practice of continuous inquiry and forward flow. Method, tl (Rust CLI+TUI), and website

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages