9 releases
Uses new Rust 2024
| new 0.1.9 | Feb 26, 2026 |
|---|---|
| 0.1.8 | Feb 21, 2026 |
| 0.1.5 | Jan 23, 2026 |
#91 in Build Utils
675KB
2.5K
SLoC
rt is a CLI to run tasks interactively across different task runners.
Inspired by antfu/ni.
What it does
rt looks for files below, and provide a way to execute them selectively
- make:
Makefile - just:
justfile/Justfile - task:
Taskfile.yml/Taskfile.yaml... - cargo-make:
Makefile.toml - mise:
mise.toml - mask:
maskfile.md
rt is useful if you
- don’t want to care whether a repo uses make, just, and others
- want to select and run tasks with an interactive UI
Install
brew install unvalley/tap/rt
cargo install rt-cli
cargo binstall rt-cli
Planned: nix, homebrew(core, after requirements met), others
rt: run tasks selectively
rt
rt --args
If a task runner is found, rt shows an interactive task selector:
> rt
? Select task
> build - build main
test-all - test everything
test - run a specific test
[↑↓ to move, enter to select, type to filter]
After selecting a task, rt prompts required parameters when defined (for example, in justfile recipes).
Add --args if you also want to enter optional arguments interactively.
rt <task>: run specific task
rt [--args] <task> [-- args...]
rt --history: rerun from rt-specific history
rt --history
Shows recent history as command, then re-runs the selected command.
History file (JSONL) path priority:
XDG_STATE_HOME/rt/history.jsonl(ifXDG_STATE_HOMEis set)- Windows:
%LOCALAPPDATA%/rt/history.jsonl(fallback:%USERPROFILE%/AppData/Local/rt/history.jsonl) - Unix-like:
~/.local/state/rt/history.jsonl - Fallback:
~/.rt/history.jsonl - Last fallback:
./.rt/history.jsonl
Why?
There are many task runners available, and different projects use different ones. And, I don't like shell script.
Dependencies
~7–12MB
~250K SLoC