--- title: トゥイ description: OpenCode ターミナル ユーザー インターフェイスの使用。 --- import { Tabs, TabItem } from "@astrojs/starlight/components" OpenCode は、LLM を使用してプロジェクトを作業するための対話型ターミナル インターフェイスまたは TUI を提供します。 OpenCode を実行すると、現在のディレクトリの TUI が開始されます。 ```bash opencode ``` または、特定の作業ディレクトリに対して起動することもできます。 ```bash opencode /path/to/project ``` TUI に入ったら、メッセージを表示することができます。 ```text Give me a quick summary of the codebase. ``` --- ## ファイル参照 `@` を使用してメッセージ内のファイルを参照できます。これにより、現在の作業ディレクトリ内であいまいなファイル検索が行われます。 :::ヒント `@` を使用してメッセージ内のファイルを参照することもできます。 ::: ```text "@packages/functions/src/api/index.ts" How is auth handled in @packages/functions/src/api/index.ts? ``` ファイルの内容は会話に自動的に追加されます。 --- ## Bash コマンド メッセージを `!` で開始して、シェル コマンドを実行します。 ```bash frame="none" !ls -la ``` コマンドの出力は、ツールの結果として会話に追加されます。 --- ## コマンド OpenCode TUI を使用する場合、「`/`」に続いてコマンド名を入力すると、アクションをすばやく実行できます。例えば: ```bash frame="none" /help ``` ほとんどのコマンドには、`ctrl+x` をリーダー キーとして使用するキーバインドもあります。`ctrl+x` がデフォルトのリーダー キーです。 [詳細はこちら](/docs/keybinds)。 利用可能なすべてのスラッシュ コマンドは次のとおりです。 --- ### 接続する OpenCode にプロバイダーを追加します。利用可能なプロバイダーから選択し、その API キーを追加できます。 ```bash frame="none" /connect ``` --- ### コンパクト 現在のセッションを圧縮します。 _別名_: `/summarize` ```bash frame="none" /compact ``` **キーバインド:** `ctrl+x c` --- ### 詳細 ツール実行の詳細を切り替えます。 ```bash frame="none" /details ``` **キーバインド:** `ctrl+x c` --- ### エディタ メッセージを作成するために外部エディタを開きます。 `EDITOR` 環境変数に設定されたエディタを使用します。 [詳細はこちら](#editor-setup)。 ```bash frame="none" /editor ``` **キーバインド:** `ctrl+x c` --- ### 出口 OpenCodeを終了します。 _エイリアス_: `/quit`、`/q` ```bash frame="none" /exit ``` **キーバインド:** `ctrl+x c` --- ### 輸出 現在の会話を Markdown にエクスポートし、デフォルトのエディターで開きます。 `EDITOR` 環境変数に設定されたエディタを使用します。 [詳細はこちら](#editor-setup)。 ```bash frame="none" /export ``` **キーバインド:** `ctrl+x c` --- ### ヘルプ ヘルプダイアログを表示します。 ```bash frame="none" /help ``` **キーバインド:** `ctrl+x c` --- ### 初期化 `AGENTS.md` ファイルを作成または更新します。 [詳細はこちら](/docs/rules)。 ```bash frame="none" /init ``` **キーバインド:** `ctrl+x c` --- ### モデル 利用可能なモデルをリストします。 ```bash frame="none" /models ``` **キーバインド:** `ctrl+x c` --- ### 新しい 新しいセッションを開始します。 _別名_: `/clear` ```bash frame="none" /new ``` **キーバインド:** `ctrl+x c` --- ### やり直し 以前に取り消したメッセージをやり直します。 `/undo` を使用した後にのみ使用できます。 :::ヒント ファイルの変更も復元されます。 ::: 内部的には、Git を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは ** する必要があります Git リポジトリ** であること。 ```bash frame="none" /redo ``` **キーバインド:** `ctrl+x c` --- ### セッション セッションを一覧表示して切り替えます。 _エイリアス_: `/resume`、`/continue` ```bash frame="none" /sessions ``` **キーバインド:** `ctrl+x c` --- ### 共有 現在のセッションを共有します。 [詳細はこちら](/docs/share)。 ```bash frame="none" /share ``` **キーバインド:** `ctrl+x c` --- ### テーマ 利用可能なテーマをリストします。 ```bash frame="none" /theme ``` **キーバインド:** `ctrl+x c` --- ### 考え 会話内の思考/推論ブロックの表示を切り替えます。有効にすると、拡張思考をサポートするモデルの推論プロセスを確認できます。 :::注記 このコマンドは、思考ブロックを**表示**するかどうかのみを制御します。モデルの推論機能を有効または無効にすることはありません。実際の推論機能を切り替えるには、`ctrl+t` を使用してモデル バリアントを循環させます。 ::: ```bash frame="none" /thinking ``` --- ### 元に戻す 会話の最後のメッセージを元に戻します。最新のユーザー メッセージ、その後のすべての応答、およびファイルの変更を削除します。 :::ヒント 加えられたファイルの変更も元に戻されます。 ::: 内部的には、Git を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは ** する必要があります Git リポジトリ** であること。 ```bash frame="none" /undo ``` **キーバインド:** `ctrl+x c` --- ### 共有を解除する 現在のセッションの共有を解除します。 [詳細はこちら](/docs/share#un-sharing)。 ```bash frame="none" /unshare ``` --- ## エディターのセットアップ `/editor` および `/export` コマンドはどちらも、`EDITOR` 環境変数で指定されたエディターを使用します。 ```bash # Example for nano or vim export EDITOR=nano export EDITOR=vim # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait export EDITOR="code --wait" ``` これを永続的にするには、これをシェル プロファイルに追加します。 `~/.bashrc`、`~/.zshrc`など ```bash set EDITOR=notepad # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait set EDITOR=code --wait ``` これを永続的にするには、**システム プロパティ** > **環境を使用します。 変数**。 ```powershell $env:EDITOR = "notepad" # For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc. # include --wait $env:EDITOR = "code --wait" ``` これを永続的にするには、これを PowerShell プロファイルに追加します。 一般的なエディター オプションには次のものがあります。 - `code` - Visual Studio コード - `cursor` - カーソル - `windsurf` - ウィンドサーフィン - `nvim` - Neovim エディター - `vim` - Vim エディター - `nano` - ナノエディター - `notepad` - Windows メモ帳 - `subl` - 崇高なテキスト :::注記 VS Code などの一部のエディターは、`--wait` フラグを使用して起動する必要があります。 ::: 一部のエディターは、ブロッキング モードで実行するためにコマンドライン引数が必要です。 `--wait` フラグにより​​、エディターは閉じられるまでプロセスをブロックします。 --- ## 設定する OpenCode 構成ファイルを通じて TUI の動作をカスタマイズできます。 ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "tui": { "scroll_speed": 3, "scroll_acceleration": { "enabled": true } } } ``` ### オプション - `scroll_acceleration` - macOS スタイルのスクロール アクセラレーションを有効にして、スムーズで自然なスクロールを実現します。有効にすると、高速スクロール ジェスチャではスクロール速度が向上し、ゆっくりとした動きでは正確なままになります。 **この設定は `scroll_speed` よりも優先され、有効になっている場合は上書きされます。** - `scroll_speed` - スクロール コマンドを使用するときに TUI がスクロールする速度を制御します (最小: `1`)。デフォルトは `3` です。 **注: `scroll_acceleration.enabled` が `true` に設定されている場合、これは無視されます。** --- ## カスタマイズ コマンド パレット (`ctrl+x h` または `/help`) を使用して、TUI ビューのさまざまな側面をカスタマイズできます。これらの設定は再起動後も維持されます。 --- #### ユーザー名の表示 チャット メッセージにユーザー名を表示するかどうかを切り替えます。これには次の方法でアクセスします。 - コマンドパレット:「ユーザー名」または「ユーザー名を隠す」を検索します。 - 設定は自動的に保持され、TUI セッション全体で記憶されます。