magi-code 0.95.2

Repository-aware CLI coding agent for terminal work
Documentation
# Side agents and parallel work

Magi-code supports two kinds of additional agents:

- A side agent is a separate conversation you open and manage directly.
- Subagents are delegated tasks launched by an agent, often in parallel.

Both use the same repository by default. They are not isolated worktrees or sandboxes.

## Open a side conversation

Enter `/side` in a saved Mission Control session.

Use it for a question or task that does not need the primary conversation's history. The side conversation has separate context, usage, cancellation, and transcript.

- `Esc` hides it without stopping work.
- Enter `/side` again to reopen it.
- `Alt-C` recalls side guidance or cancels side work.
- `/reset` starts a fresh side conversation.

Primary and side agents can edit the same files concurrently. Avoid assigning overlapping changes.

### Choose a side-agent model

By default, a new side conversation inherits the current primary provider and model. To use another model:

1. Open `/settings` → **Agent settings** → **Side agent**.
2. Choose provider and model, or select **Use primary provider/model**.
3. Save. Use `/reset` to create a side conversation with the new selection.

## Ask the agent to delegate

Describe independent tasks and ask for parallel delegation:

```text
Investigate these independently with subagents: authentication flow, session storage, and update behavior. Combine findings without editing files.
```

The agent can launch up to ten tasks in a batch, with up to four running concurrently. Results return to the parent in task order.

For enforced tool-level read-only discovery, ask the agent to use subagent `inspect` mode. Saying “do not edit” in ordinary prose is not the same enforcement.

## Create subagent profiles

Save profiles under `~/.magi-code/subagents/` or `$MC_HOME/subagents/`:

```md
---
name: Documentation Reviewer
description: Reviews user documentation for clarity and missing workflows.
reasoning: high
disabled_tools: ['bash', 'write', 'hash_edit']
---

Review documentation from a user's perspective. Report concrete gaps and confusing steps.
```

Use `/subagents` to enable or disable profiles. A profile can select a model, restrict tools, or require structured JSON output.

Restrictions only narrow inherited permissions. They cannot re-enable a disabled tool, and they are not an operating-system sandbox.

## Costs and context

Each side-agent or subagent request uses provider quota. Child usage contributes to displayed session totals when the provider reports it. Long-running persisted subagents may compact their own context independently.

## Advanced reference

See [Side agent](../features/side-agent.md) and [Parallel subagents](../features/parallel-subagents.md) for lifecycle, profiles, inspection mode, retries, compaction, and limits.