v0.1.4
Scoped workspace names and better automation.
Workspace names are now scoped by source repository — feature-x becomes brightblur/feature-x automatically. cow list drops the SOURCE column (it's encoded in the name) and gets a cleaner layout. Adds flags for scripting and non-TTY use: --print-path on create, -y/--yes on remove, and -m/--message for jj.
Workspace naming
- new Names are automatically scoped by source repository basename:
cow create feature-x --source ~/repos/brightblurstores the workspace asbrightblur/feature-x. Supply an explicitscope/nameto override. - new Auto-generated names follow the same pattern:
brightblur/agent-1,brightblur/agent-2, etc. - feat
cow listredesigned — SOURCE column removed (source is now encoded in the scoped name). Branch column only appears when the branch differs from the workspace name suffix.
New flags
- new
cow create --print-path— suppress all output except the final workspace path, making it easy to capture in scripts:WS=$(cow create my-feature --print-path). - new
cow create -m/--message <MSG>— set the initial jj change description immediately after workspace creation. Removes the separatejj describestep (jj repos only). - new
cow remove -y/--yes— skip confirmation prompts without implying a safety override. Unlike--force(which bypasses dirty checks),--yesstill shows dirty warnings — it just doesn't wait for input. Idiomatic for scripts and non-TTY contexts.
Improvements
- feat
cow listnow shows a file count next to dirty workspaces (e.g.dirty (3)), giving a quick sense of change scope without runningcow status.