your backlog is plain text
A markdown task tracker with a terminal UI for humans and a CLI for agents. Tasks live in your repo as readable files. Position is priority. Git is your history.
$ cargo install frame
copy
Requires Rust. Or download a pre-built binary. View on GitHub →
Each track is a .md file with checkboxes, metadata, notes, and code blocks. Edit them in Frame or any text editor.
No priority fields or labels. The task at the top of the list is the most important. Use m in the TUI or fr mv to reprioritize.
The terminal UI is for navigating and editing. The fr CLI is for coding agents — fr ready --cc to pick up work, fr state EFF-014 done to report progress.
No database. No sync service. Your tasks are files in your repo. git log is your audit trail. git diff shows what changed.
That's it. Checkboxes for state, backtick IDs, hash tags, indented metadata. Subtasks are just nested tasks. Notes can include code blocks. The file is readable without Frame and editable in any editor.
The project.toml is self-documenting — see the
template
for the full configuration reference.
Space to cycle, b to block, ~ to park.
fr ready shows only unblocked tasks. D opens the dep graph.
/pattern with n/N navigation.
Enter to pick a track and position.
v to select, V for range. Bulk state changes, tag edits, moves, and cross-track moves.
fr ready --cc for agent work. --json on every command. See the agent skill reference.
hjkl, /, u for undo, ? for contextual help.