Docs

Command reference

Forty-four top-level commands, with one hundred and fifty-eight subcommands under them. This page groups them by the job they do; torii <command> --help is authoritative for flags.

The daily four

torii save -m "msg"                          # commit what is staged
torii save -am "msg"                         # stage everything, then commit
torii save <files> -m "msg"                  # stage these paths, then commit
torii save --stage <files>                   # stage without committing
torii save --amend -m "msg"                  # amend the last commit
torii save --revert <hash> -m "msg"          # revert a commit
torii save --reset HEAD~1 --reset-mode soft  # undo the last commit, keep changes

torii sync                                   # pull, then push
torii sync --push | --pull | --fetch | --force
torii sync <branch>                          # integrate a branch, strategy chosen for you
torii sync <branch> --merge | --rebase | --preview

torii status
torii diff [--staged] [--last]

save --reset --reset-mode hard discards changes; it takes a snapshot first, so the discard is reversible.

Looking at things

torii log [-n 50] [--oneline] [--graph] [--author X] [--since D] [--grep P] [--stat] [--reflog]
torii show [<hash>|<tag>]
torii show <file> --blame [-L 10,20]
torii grep <pattern>
torii describe

Branches, tags, worktrees

torii branch                 # list
torii branch <name> -c       # create and switch
torii branch -d <name>       # delete
torii branch --rename <name>

torii tag create v1.0.0 -m "Release"
torii tag create --release             # bump from conventional commits
torii tag push [v1.0.0]

torii worktree add -b feature/auth
torii worktree list
torii worktree remove ../hotfix        # snapshot taken automatically

tag create --release reads the commits since the last tag: feat: bumps the minor, fix: and perf: the patch, a breaking change the major. --dry-run shows the verdict without creating anything.

History

torii history rebase main | HEAD~5 -i | --root
torii history rebase --continue | --abort | --skip
torii history reword <hash> -m "msg"
torii history reauthor --old "Old <a@x>" --new "New <b@y>"
torii history redate <hash> --date "2026-01-01"
torii history replace-text --redact-secrets
torii history filter-path --keep src --remove vendor
torii history exec-filter 'cargo fmt --all'
torii history remove-file <path>
torii history compact          # pack objects, expire the reflog
torii history orphans          # find unreachable objects

These have their own page — see History surgery.

Safety

torii snapshot create -n "before-refactor"
torii snapshot list | restore <id> | delete <id>
torii snapshot stash [-u] | unstash [<id>] [--keep]
torii snapshot undo

torii scan [--history]
torii ignore add 'build/'
torii ignore secret 'AKIA[0-9A-Z]{16}' --name AWS
torii ignore list

Platforms

torii clone github <user>/<repo>
torii remote create github,gitlab <name> --public --push
torii mirror add gitlab user <username> <repo> --primary
torii mirror sync
torii pr list | create | merge | close | checkout | open
torii issue list | create | close | comment
torii pipeline list | cancel | retry | delete
torii job list | log | retry | cancel | artifacts | erase
torii package list | files | delete
torii release list | show | edit | delete
torii runner register | spawn --docker | exec <job>

Many repositories at once

torii workspace add <name> ~/repos/api
torii workspace status <name>
torii workspace save <name> -m "wip" --all
torii workspace sync <name>

Everything else

torii init, torii clone, torii cherry-pick, torii sign, torii publish, torii config, torii auth, torii platforms, torii tui, torii submodule, torii subtree, torii bisect, torii archive, torii notes, torii patch, torii clean, torii remove, torii rename.