docs: slash commands

This commit is contained in:
Jay V
2025-08-07 16:16:12 -04:00
parent 723a37ea9a
commit 12f1ad521f
2 changed files with 125 additions and 8 deletions

View File

@@ -3,6 +3,8 @@ title: CLI
description: The opencode CLI options and commands.
---
import { Tabs, TabItem } from "@astrojs/starlight/components"
Running the opencode CLI starts it for the current directory.
```bash
@@ -17,6 +19,117 @@ opencode /path/to/project
---
## Slash commands
When using the opencode CLI, you can type `/` followed by a command name to quickly execute actions. For example:
:::tip
You can also use `@` to reference files in your messages.
:::
```bash frame="none"
/help
```
Here are all available slash commands:
- **`/help`**
Show the help dialog.
- **`/editor`**
Open external editor for composing messages. Uses the editor set in your `EDITOR` environment variable. [Learn more](#editor-setup).
- **`/export`**
Export current conversation to Markdown and open in your default editor. Uses the editor set in your `EDITOR` environment variable. [Learn more](#editor-setup).
- **`/new`**
Start a new session. _Alias_: `/clear`
- **`/sessions`**
List and switch between sessions. _Aliases_: `/resume`, `/continue`
- **`/share`**
Share current session. [Learn more](/docs/share).
- **`/unshare`**
Unshare current session. [Learn more](/docs/share#un-sharing).
- **`/compact`**
Compact the current session. _Alias_: `/summarize`
- **`/details`**
Toggle tool execution details.
- **`/models`**
List available models.
- **`/themes`**
List available themes.
- **`/init`**
Create or update `AGENTS.md` file. [Learn more](/docs/rules).
- **`/undo`**
Undo last message.
- **`/redo`**
Redo message.
- **`/exit`**
Exit opencode. _Aliases_: `/quit`, `/q`
---
### Editor setup
Both the `/editor` and `/export` commands use the editor specified in your `EDITOR` environment variable.
<Tabs>
<TabItem label="Linux/macOS">
```bash
export EDITOR=nano # or vim, code, etc.
```
To make it permanent, add this to your shell profile; `~/.bashrc`, `~/.zshrc`, etc.
</TabItem>
<TabItem label="Windows (CMD)">
```bash
set EDITOR=notepad # or code, vim, etc.
```
To make it permanent, use **System Properties** > **Environment Variables**.
</TabItem>
<TabItem label="Windows (PowerShell)">
```bash
$env:EDITOR = "notepad" # or "code", "vim", etc.
```
To make it permanent, add this to your PowerShell profile.
</TabItem>
</Tabs>
Popular editor options include:
- `code` - Visual Studio Code
- `vim` - Vim editor
- `nano` - Nano editor
- `notepad` - Windows Notepad
- `subl` - Sublime Text
---
## Commands
The opencode CLI also has the following commands.
@@ -122,11 +235,11 @@ opencode upgrade v0.1.48
The opencode CLI takes the following flags.
| Flag | Short | Description |
| -------------- | ----- | -------------------- |
| `--help` | `-h` | Display help |
| `--version` | | Print version number |
| `--print-logs` | | Print logs to stderr |
| `--prompt` | `-p` | Prompt to use |
| Flag | Short | Description |
| -------------- | ----- | ------------------------------------------ |
| `--help` | `-h` | Display help |
| `--version` | | Print version number |
| `--print-logs` | | Print logs to stderr |
| `--prompt` | `-p` | Prompt to use |
| `--model` | `-m` | Model to use in the form of provider/model |
| `--mode` | | Mode to use |
| `--mode` | | Mode to use |

View File

@@ -45,6 +45,8 @@ opencode has a list of keybinds that you can customize through the opencode conf
}
```
---
## Leader key
opencode uses a `leader` key for most keybinds. This avoids conflicts in your terminal.
@@ -53,7 +55,9 @@ By default, `ctrl+x` is the leader key and most actions require you to first pre
You don't need to use a leader key for your keybinds but we recommend doing so.
## Disable a keybind
---
## Disable keybind
You can disable a keybind by adding the key to your config with a value of "none".