Skip to content

One Repository

Configured mode is preferred when the project can adopt it. Standalone mode provides a smaller, ad hoc workflow.

Terminal window
aw init --zero-config

This creates the effective worktree directory and ensures an in-repository directory is ignored, adding a repository-local rule only when needed. The built-in location is .worktrees/; a personal ~/.arashi/config.json may supply worktreesDir and naming/create/switch defaults. Bootstrap never creates .arashi/config.json.

Terminal window
aw create feat/docs
aw list
aw switch feat/docs
aw status
aw remove feat/docs

Without a user override, worktrees use .worktrees/<branch>. Relative user paths anchor at the main repository, while absolute shared roots receive a repository-qualified directory. Commands run from the main or a linked worktree resolve the same destination root.

Choose a base for one create when needed:

Terminal window
aw create feature/docs --base main

An existing malformed or invalid workspace or user config produces an error rather than falling back or silently changing modes; fix the named file and field before retrying. Use aw config effective to inspect effective values and sources.

Standalone mode supports the single-repository lifecycle: create, list, status, switch, remove, prune, doctor, move, and handoff.

Repository filters, groups, workspace hooks, and multi-repository commands require configured mode. Personal create, switch, editor, worktree-directory, and naming defaults work in standalone mode. Standalone hooks continue to come only from applicable user-global hook locations.

Terminal window
aw init

Review the proposed paths. Configured mode may not keep the standalone .worktrees/<branch> layout.