Jay V 6 месяцев назад
Родитель
Сommit
12f1ad521f

+ 120 - 7
packages/web/src/content/docs/docs/cli.mdx

@@ -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                                |

+ 5 - 1
packages/web/src/content/docs/docs/keybinds.mdx

@@ -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".