# Run two features in parallel on one repo
> Split one repo's work into two subfeatures, run an agent in each on its own branch, and integrate both into the parent.
Source: https://ivar.run/docs/recipes/parallel-features

You need a hall with one repo and a parent feature that already has the repo promoted. A child's branch is cut from its parent's, and that branch exists only after the parent promotes.

```sh
ivar feature create app-redesign
ivar feature promote app-redesign app
ivar feature create onboarding --parent app-redesign
ivar feature promote onboarding app
ivar feature create checkout --parent app-redesign
ivar feature promote checkout app
ivar session start onboarding
ivar session start checkout
```

Run each `session start` in its own terminal. When a child's work is done, quit its harness and integrate it:

```sh
ivar feature integrate onboarding
ivar feature integrate checkout
```

## What happens

- Each child has its own branch and worktree, based on the parent's branch, so the two agents never touch the same index or `HEAD`.
- Both sessions get the same harness config and the same MCP servers.
- `ivar feature status app-redesign --recursive` shows the subtree and which children still block the parent.
- `integrate` lands a child's work on the parent's branch. It requires the child's plan gate to be approved and fails on a merge conflict, which you fix on the child's branch before you run it again.
- Delivery happens once, from the parent: one pull request for the repo.

Before the children start, commit anything two of them would both edit on the parent, such as new dependencies, the route table or theme tokens. Each child then owns its own files and integration has nothing to conflict on.

This fits one repo as well as several. The children are subfeatures, so integration runs leaves first and the parent carries every slice when you deliver. If two children both need a file, integrate the first child before you start the second one's session, and the second works on top of it.

## Read the full walkthrough

[One repo, many agents](/blog/parallel-features-single-repo) splits a Figma prototype across three subfeatures and shows the status output. The [features guide](/docs/guide/features#subfeatures) is the short reference.
