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

# The step command

Use `step` to start sessions or manage installation, resource packages, and MCP servers.

```text theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
step [options] [--] [@files...] [task...]
```

Inspect available options and the installed version:

```bash theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
step --help
step --version
```

## Model options

| Option | Description |
| - | - |
| `--provider <name>` | Provider such as `step`, `anthropic`, or `openai` |
| `--model <model>` | Model ID or pattern; supports `provider/id` and a thinking-level suffix |
| `--api-key <key>` | Override other credentials; beware of shell history and process-argument exposure |
| `--thinking <level>` | `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`, subject to model support |
| `--models <list>` | Comma-separated models for Ctrl+P cycling |
| `--list-models [search]` | List available models |

```bash theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
step --provider step --model step-3.7-flash
step --list-models flash
```

See [Keyboard shortcuts](https://platform.stepfun.ai/docs/en/step-code/reference/keyboard-shortcuts.md) for model-switching shortcuts.

## Session options

| Option | Description |
| - | - |
| `-c`, `--continue` | Continue the most recent session |
| `-r`, `--resume` | Browse sessions; optionally supply a path or ID |
| `--session <path-or-ID>` | Select a session, including by partial ID |
| `--fork <path-or-ID>` | Fork a session |
| `--session-dir <directory>` | Override the session directory |
| `--no-session` | Do not save this session |
| `--name <name>`, `-n <name>` | Name the session |
| `-p`, `--print` | Run once and exit; accepts stdin and `@files` |
| `-C <directory>`, `--cwd <directory>` | Set the working directory; session storage and settings discovery follow it, and an invalid path fails at startup |

```bash theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
step --name "Interface review" @README.md "Summarize the interface contracts"
step -p @screenshot.png "Explain the error in this screenshot"
step --no-session -p "Explain semantic versioning"
```

See [Slash commands](https://platform.stepfun.ai/docs/en/step-code/reference/slash-commands.md) for interactive session commands.

## Tool options

| Option | Description |
| - | - |
| `--tools <list>`, `-t <list>` | Comma-separated allowlist for built-in and extension tools |
| `--exclude-tools <list>`, `-xt <list>` | Exclude tools |
| `--no-builtin-tools`, `-nbt` | Disable built-in tools, keeping extensions |
| `--no-tools`, `-nt` | Disable all tools |

For example, supply an existing README without enabling tools:

```bash theme={"theme":{"light":"light-plus","dark":"dark-plus"}}
step --no-tools -p @README.md "Summarize the project described in this README"
```

See [Permissions and safety](https://platform.stepfun.ai/docs/en/step-code/guides/permissions.md) for permissions and dangerous operations.

## Resource options

| Option | Description |
| - | - |
| `-e <source>`, `--extension <source>` | Load an extension temporarily; repeatable |
| `--skill <path>` | Explicitly load a Skill; repeatable |
| `--prompt-template <path>` | Load a prompt template; repeatable |
| `--theme <path>` | Load a theme resource; repeatable |
| `--no-extensions`, `--no-skills`, `--no-prompt-templates`, `--no-themes` | Disable corresponding automatic discovery |
| `--no-context-files`, `-nc` | Disable automatic project-instruction loading |

Explicit resources can be combined with options disabling discovery. They must still come from trusted sources.

See [Configuration files](https://platform.stepfun.ai/docs/en/step-code/configuration/files.md) for persistent resource configuration.

## Automation and context

| Option | Description |
| - | - |
| `--mode <mode>` | Output or integration mode: `text`, `json`, or `rpc`; `rpc` is for integration and is not ordinary text output |
| `--context-projection <mode>` | Context mode for this run: `clm-v1` (default), `lightweight-v1`, or `off` |
| `--completion-check git-committed` | print/JSON modes only; checks commits, working-tree status, and the final response |
| `--completion-check-attempts <1..3>` | Maximum follow-up rounds; default 2; requires completion checks |
| `--completion-review` | Requests self-review; requires completion checks and shares their follow-up rounds |
| `--non-interactive-approval <mode>` | Policy without a human approval UI: `allow` or `deny` |
| `--non-interactive-denial <mode>` | Handling after a blocked call: `terminate` (default) ends the run, or `continue` returns the reason to the model |
| `--tool-override <tool=mode>` | Per-tool policy; repeatable; mode is `allow`, `confirm`, or `deny` |

Completion checks do not mean tests pass or guarantee code quality; `continue` does not bypass permissions.

## Other options

| Option | Description |
| - | - |
| `--plan` | Start in Plan mode |
| `--tui-mode <mode>` | `regular` or experimental `fullscreen` |
| `--approval-mode <mode>` | Tool approval mode: `confirm` or `auto`; applies to interactive and non-interactive runs |
| `--version` | Show version |
| `--use-theme <name>` | Theme for this launch |
| `--export <session-file> [output-file]` | Export a session to HTML |
| `--` | End option parsing; remaining arguments are messages or file references |

## Subcommands

| Command | Description |
| - | - |
| `step login --no-browser` | Get an authorization link in an SSH, server, or container terminal and complete sign-in in a browser on this or another device; still requires an interactive terminal and does not depend on a local callback port |
| `step update` | Update to the latest stable version; alias `step upgrade` |
| `step update <version>` | Install a specific available release |
| `step install <source>` | Install a resource package |
| `step remove <source>` | Remove a resource package |
| `step list` | List packages |
| `step config` | Manage resources interactively; Tab switches global and project scope |
| `step mcp` | MCP `list`, `get`, `add`, `remove`, `login`, `logout` |
| `step session-index status / reindex / clear` | Inspect, rebuild, or clear the session full-text search index |
| `step mcp prepare` | Prepare or retry built-in optional resources, then restart to check; not a fix for arbitrary third-party MCP services |
| `step login`, `step logout` | Sign in to or out of Step |
| `step login status` | Show Step login method and status |

For updates and removal, see [Updates](https://platform.stepfun.ai/docs/en/step-code/installation.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.