Usage¶
Getting help¶
Append --help or -h to any command to see its usage:
trv --help
trv add -h
trv env --help
Project vs global mode¶
By default trv runs in project mode:
- Skills are installed to
.agents/skills/ - Metadata is stored in
skills.lockat the project root - The project root is the nearest Git ancestor (or the current directory)
Use --global / -g to operate on the machine-wide installation at
~/.agents/skills/.
Choosing an agent directory¶
Skills land in .agents/ by default. Use --dir / -d to target the layout
your runtime expects instead - .claude, .cursor, .copilot, or any other
single directory name:
trv add <url> --all --dir .claude
In project mode the choice is recorded in skills.lock as agent_dir, so
list, info, update, remove, and every env command reuse it without the
flag. Set TRIVIUM_AGENT_DIR to change the default for new installs:
export TRIVIUM_AGENT_DIR=.claude
The directory is resolved in this order:
| Order | Project mode | Global mode |
|---|---|---|
| 1 | agent_dir in skills.lock |
--dir |
| 2 | --dir on add or move (migrates) |
- |
| 3 | $TRIVIUM_AGENT_DIR |
$TRIVIUM_AGENT_DIR |
| 4 | .agents |
.agents |
Because the project lockfile sits at the project root and names its own
directory, --dir is accepted in project mode only by add and move, which
migrate the install. On list, info, update, and remove it is rejected
unless combined with --global - otherwise those commands would act on a tree
the lockfile does not describe.
A project targets one directory at a time. Global installs are self-contained -
~/.claude/skills/ and ~/.agents/skills/ each keep their own skills.lock,
so several can coexist.
move - Change the agent directory¶
Move an existing project install into another agent directory. The skill tree
moves, every install_path in skills.lock is rewritten, and saved environment
manifests follow along:
trv move .claude
Passing --dir to add performs the same migration before installing.
Deactivate any active environment first (trv env deactivate), and commit or
stash a dirty skill tree - the move is refused when the runtime does not match
its lockfile hashes.
add - Install skills¶
Options can be placed before or after the URL. Both of these work:
trv add https://example.com/repo.git --all
trv add --all https://example.com/repo.git
trv add <url> --all
trv add <url> --skills name1 name2
trv add <url> -a -p skills/
trv add <url> -a --dry-run
trv add <url> -a --ignore-validation
trv add <url> -a --yes
trv add <url> -a --global
trv add <url> -a --dir .claude
list - List installed skills¶
trv list
trv list --json
trv list --global
trv list --global --dir .claude
info - Show skill details¶
trv info skill-name
trv info skill-name --global
update - Update installed skills¶
trv update
trv update skill1 skill2
trv update --dry-run
trv update --global
remove - Remove skills¶
trv remove skill1 skill2
trv remove -a
trv remove -a --yes
trv remove skill1 --global
env - Manage environments¶
trv env list
trv env create office
trv env activate office
trv env info
trv env deactivate
trv env remove office
Environment commands that manage a manifest (list, create, activate,
remove, and info) accept --global to operate on the global installation.
env deactivate always restores the active project runtime.