Command reference
Every command takes --help for its own examples. Every command that works on more than one repo takes -g <group> and -r <repo> — both repeatable — to narrow the run, and exits non-zero if any repo failed. For sync, clone, status, list and tree a bare name is the same as -r — talea sync eklavya syncs one repo. adopt refuses a bare name, because -r there lifts the name-only guard. A command that takes no names stops on a stray word rather than ignoring it.
An unknown group or repo name exits non-zero rather than quietly doing nothing. A bulk command that silently does nothing is worse than one that stops.
talea init
talea init # set up ~/Workspacetalea init ~/code # use that folder as the root insteadtalea init --no-clone # write the config, clone laterCreates the workspace, records this machine’s preferences, asks what this machine should keep, and fills it. If the catalogue is empty, talea discover runs first — so on a first machine this one command goes from nothing to a folder tree.
--protocol <ssh|https> · --no-clone · --pick · -g · -j
talea discover
talea discover # every repo you can see — a dry runtalea discover --apply # write the cataloguetalea discover --since 6mo # older repos kept, marked archivedtalea discover --user someone # public repos of an account, no token neededLists your own repos and every org you belong to, then writes each one’s owner, default branch and last push into ~/.talea/talea.repos.json. A repo already in the catalogue keeps its default, group, dir and ignore — discovery refreshes facts, never choices.
--since takes 6mo, 90d, 2y or an ISO date. Older repos are marked, never dropped.
talea sync
talea sync # clone what is missing, fast-forward the resttalea sync --pick # change what this machine keeps, then synctalea sync --no-clone # fast-forward only-g · -r · --pick · --no-clone · --no-adopt · --protocol · -j
talea clone
talea clone # clone every repo this machine keepstalea clone -r eklavya # a single repo, selected or nottalea clone --pick # re-open the checklist firstClone only — never fetches or merges. Already-cloned repos are left completely alone, so re-running is safe. A repo the server will not hand over is reported and skipped, not failed.
-g · -r · --pick · --protocol · --from · --no-adopt · -j
talea adopt
talea adopt # show what would movetalea adopt --apply # actually move ittalea adopt --from ~/Desktop # also look there-g · -r · --from (repeatable, remembered) · --apply · --loose · --fix-paths · -j
Adopting what you have is this command in full.
talea status
talea status # every repo this machine keepstalea status --drift # only repos not on their default branchtalea status --missing # only repos not cloned yettalea status --all # the whole cataloguetalea select
talea select # reopen the checklist, then clone what is newtalea select --no-clone # change the list onlytalea pick PiDom # keep that repo; no such name opens the checklistA name that matches exactly one repo is talea add. A name that matches none — or two owners’ repos — opens the checklist instead.
Space toggles, Enter saves, Esc cancels and changes nothing. Needs a terminal; in a non-interactive session it prints a summary instead of hanging.
talea add / talea rm
talea add eklavya # add it to the list and clone it nowtalea add nonstopio/json-viewer # when two owners share a repo nametalea rm eklavya # take it off the list — the folder staystalea where
talea where eklavya # the absolute path, one line, nothing elsecd $(talea where eklavya)talea where # the workspace rootExits non-zero on an unknown name, with every diagnostic on stderr.
talea list
talea list # every repo, grouped by foldertalea list --groups # just the group summarytalea list --all # include archived and quiet repostalea list --json # machine-readableThe KEEP column is this machine. The DEFAULT column is the catalogue’s opinion — what a brand new machine would start with.
talea tree
talea tree # the whole workspacetalea tree --all # the whole catalogue, not just what is keptEvery folder from the workspace root down to each repo, with a marker saying whether a CLAUDE.md sits in it.
talea exec
talea exec -- git log --oneline -1talea exec -g nonstopio -- npm installtalea exec --all -- git branch --show-currentEverything after -- is the command. One repo at a time, so the output stays attributable.
talea manifest
talea manifest push # publish to a private gisttalea manifest pull # fetch the one this machine is linked totalea manifest pull <gist-id> # link this machine to a gist and fetch ittalea manifest where # which file is in use, and which gist--gist <id> uses a gist for one command without remembering it.
talea doctor
talea doctorNode, git, SSH to GitHub, the API token, and the workspace it found. Run this first when a clone fails.
talea skill
talea skill # is it installed, and wheretalea skill install # copy it into ~/.claude/skills/talea/talea skill uninstalltalea upgrade
talea upgrade # reinstall from npm at the latest versiontalea upgrade --check # report onlytalea upgrade --on / --off # the daily update noticeAliases
Muscle memory from git and from every other tool that does one of these jobs.
| Alias | Runs |
|---|---|
setup, bootstrap | init |
pull | sync |
refresh | discover |
pick, choose | select |
ls | list |
st | status |
cd, path | where |
run | exec |
remove | rm |
skills | skill |
update, self-update | upgrade |