The office

Coding tasks & worktrees

Every coding task gets its own git worktree and branch, so agents never step on each other. Review the diff, commit and open a PR from the task.

A worktree per task

When a task attached to a repository moves to In Progress, Reigh creates a git worktree for it:

  • Branch: reigh/<task-key>-<title>, for example reigh/nl-12-add-dark-mode
  • Folder: ~/Reigh/<workspace>/worktrees/<repo>/<task-key>-<title>
  • Base: the latest origin/<default branch>

The assignee then works in that folder in a dedicated conversation for the task. Several people can work on the same repository at once without touching each other’s files, and nobody commits to your default branch.

Your .env comes along

Ignored files your project needs to run, like .env, aren’t in git, so a fresh worktree wouldn’t have them. Reigh copies them in using copy-on-write clones, which are instant and take no extra disk space until changed.

By default it copies .env, .env.* and .envrc. Change the list per repository in Settings → Repositories → Preserve files. Only files git confirms are ignored are copied, and existing files are never overwritten.

You can also set a setup script per repository, such as npm install, to run in every new worktree.

Review the changes

Coding tasks have a Changes tab with the full diff against the base branch, including new files.

  • Commit all… commits everything with a message (NL-12: Add dark mode by default).
  • Open PR… commits anything outstanding, pushes the branch and runs gh pr create. You can write the title and description and open it as a draft.
  • Remove worktree… removes the folder. Uncommitted work is saved as a patch first, and the branch is kept unless it’s merged.

Agents and pull requests

Agents can open pull requests themselves when a task is done. By default they need your approval first: the request lands in your Inbox, and they open the PR once you approve. Turn this off per repository with Pull requests need my approval in Settings → Repositories.

Force-pushes are always blocked. See Permissions & guardrails.

Requirements: opening pull requests needs the GitHub CLI (gh), signed in with gh auth login. Everything else works with plain git.