First workspace and task
You need a local Git repository with at least one commit, and one harness: OpenCode, Codex, or Claude Code. The setup wizard calls harnesses coding agents.
Run the setup wizard


Turn on your harnesses


- Turn on Enabled for each harness that you want to use.
- Check that each harness shows Available. If it does not, select Browse and choose its executable.
If no harness shows Available, sessions cannot start. See Harnesses in Troubleshooting.
Choose notifications


Turn on system notifications for your platform. See System permission. To choose the events that notify you, see Notifications.
Open your repository


- On Open your first workspace, go to the folder of your repository, then select Choose This Folder.
- Choose No provider, GitHub, GitLab, or Azure DevOps, then select Continue. To connect a provider later, select Skip Git provider setup. See Connect a Git provider.
- Check the Workspace name and the Default target branch. If the branch field is empty, choose the branch.
Choose the default model


A role without a model in Role defaults uses the Default model. You can change both later. See Models. Then select Open repository.
Create your first task
Start with a small, clear change, such as a typo fix. The Builder can start a Task or a Bug immediately. A Feature first gets a spec and a plan. See Issue types.


- In the sidebar, select New task, then Task.
- Type a Title and a Description of the change, then select Create task.
Start the Builder


- On the task card in Backlog, select Start Builder.
- Check the Target branch, the branch that the change merges into, then select Start session.
OpenDucktor opens the session page of the Builder. The Builder works in a separate worktree, so your checkout stays the same. If it asks a question, answer it. When it finishes, the task moves to AI Review.
Review and merge


- Open the Diffs tab and read the Branch changes.
- Optional: select Request QA Review, then Start session. When QA approves the change, the task moves to Human Review.
- At the top right, select Approve Task. If the main button shows another action, open the menu next to it, then select Approve Task.
- Select Direct merge, then Merge locally.


If the target branch has no remote, the task moves to Done. If it has a remote, select Push main and mark done. The button shows the name of your target branch.
To open a pull request instead, or to handle uncommitted changes and conflicts, see Approve a task. If QA rejects the change, see Fix a QA rejection.