> ## Documentation Index
> Fetch the complete documentation index at: https://mulerun.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Code

> Launch a coding-agent CLI wired to your MuleRun account

`mulerun code` launches an interactive coding-agent CLI under your MuleRun
identity. The CLI takes care of three things you would otherwise have to do
by hand:

1. **Credentials.** Exchanges your MuleRun OAuth token for a short-lived
   per-call key and injects it into the agent runtime — no manual API-key
   setup.
2. **Runtime.** Installs the agent's binary on first use under
   `~/.mulerun/vendor/` and keeps it up to date.
3. **Model & effort.** Translates `--model` and `--effort` flags into the
   right runtime args / env vars for the chosen agent.

## Synopsis

```bash theme={null}
mulerun code                                    # interactive, default agent
mulerun code -- "<one-shot prompt>"             # one-shot prompt
mulerun code -a <agent> [-- <agent args>...]    # pick agent explicitly
mulerun code agents                             # list agents this build ships
mulerun code models -a <agent>                  # list models for an agent
mulerun code upgrade [--check]                  # upgrade the agent runtime
mulerun code reset [-a <agent>]                 # remove the agent runtime
```

The `--` separator follows the POSIX convention: everything after it is
forwarded verbatim to the underlying agent. Use it for one-shot prompts and
for any flag intended for the agent itself.

## Flags

| Flag                 | Short | Description                                                                                                       |
| -------------------- | ----- | ----------------------------------------------------------------------------------------------------------------- |
| `--agent <name>`     | `-a`  | Coding-agent runtime. Run `mulerun code agents` to see the list.                                                  |
| `--model <id>`       | `-m`  | Model id from the agent's allow-list. Use `--model raw:<id>` to forward an unlisted id verbatim.                  |
| `--small-model <id>` | `-s`  | Model used for title generation, summaries, and sub-agent fan-out. Goes through the same allow-list as `--model`. |
| `--effort <level>`   |       | Reasoning effort: `low`, `medium`, or `high`. Per-agent allow-list applies.                                       |

Global flags (`-t`, `-b`, `--proxy`, ...) apply as usual; see
[Configuration](/cli/configuration).

## Examples

```bash theme={null}
# Interactive session, default agent + default model
mulerun code

# Pick a model from the allow-list
mulerun code -m openai/gpt-5.5 -- "Refactor this function for readability"

# Push reasoning effort to high
mulerun code --effort high -- "Plan a migration from REST to GraphQL"

# Override the small model used for summaries
mulerun code -s openai/gpt-5.4-nano -- "Summarize this codebase"

# Forward your own flags to the agent after --
mulerun code -- --verbose "Show me the call graph"
```

## Subcommands

### `mulerun code agents`

List the agents compiled into this distribution. The default agent is
marked.

```bash theme={null}
mulerun code agents
mulerun code agents -o json
```

### `mulerun code models -a <agent>`

List the model ids you can pass to `--model` for a given agent, along with
their canonical aliases.

```bash theme={null}
mulerun code models -a <agent>
mulerun code models -a <agent> -o json
```

Pin a model by its allow-list id (`--model X`) or forward an unlisted id
verbatim with `--model raw:<id>`.

### `mulerun code upgrade`

Upgrade the active agent runtime to the latest published version. Some
agents are version-pinned by the CLI itself — for those, the command prints
a notice and exits.

```bash theme={null}
mulerun code upgrade
mulerun code upgrade --check     # only show current/latest, don't install
```

### `mulerun code reset`

Remove the local install of the active agent runtime. The next
`mulerun code` invocation reinstalls it.

```bash theme={null}
mulerun code reset
mulerun code reset -a <agent>
```

## Tips

* The first `mulerun code` invocation on a clean machine downloads the
  agent runtime; expect \~10-30 seconds on a fast link.
* Use `--debug` to see the exact runtime path, env, and exec arguments.
* If a runtime install gets stuck, run `mulerun code reset` and try again.

## See also

* [`mulerun studio`](/cli/commands/studio) — multimodal generation
* [`mulerun login`](/cli/commands/login) — OAuth setup
* [Configuration](/cli/configuration) — proxies, base URL, token
