Minimal personal CLI for T3 Code thread orchestration, written in BAML.
Only the ops wiki skills need:
- list projects / threads
- get a thread (incl. recent messages)
- create a thread + first user turn
- send a follow-up turn
- rename a thread title
- BAML CLI (
baml) onPATH - A running T3 Code server
- Bearer token from
t3 auth session issue --token-only
cd /data/workspace/code/personal/t3cli
baml check
baml test
baml pack main -o bin/t3cli --output-format debugOr run without packing:
baml run main -- projects --jsonexport T3_TOKEN=$(t3 auth session issue --token-only)
# URL defaults to ~/.t3/userdata/server-runtime.json origin
# or: export T3_URL=http://127.0.0.1:3773./bin/t3cli projects --json
./bin/t3cli list --title 'wiki/' --json
./bin/t3cli get <thread-id> --json
./bin/t3cli create --project /path/to/repo --title 'wiki/demo' --message 'do the thing' --json
./bin/t3cli send <thread-id> --message 'continue' --json
./bin/t3cli rename <thread-id> --title 'wiki/demo' --jsonLong messages:
./bin/t3cli create --project wiki --title 'wiki/demo' --stdin --json <<'EOF'
Stable title: wiki/demo
Do the thing.
EOF| Skill op | Command |
|---|---|
| list / find owner | t3cli list --title … |
| read task | t3cli get <id> |
| create_thread + first prompt | t3cli create --project … --title … --message … |
| send_message_to_thread | t3cli send <id> --message … |
| set_thread_title | t3cli rename <id> --title … |
baml.toml
baml_src/
types.baml # wire + CLI types
client.baml # HTTP + pure helpers
main.baml # argv parse + commands
bin/t3cli # packed binary (local build artifact)
- Isolated worktree provisioning
- Interrupt / approvals / settle
- Waiting for turn completion
- Upstream
t3 projectreplacement