右クリックメニュー、ゴミ箱、スラッシュコマンドなどのユーティリティ機能。
- 右クリックメニュー: ファイルツリーのファイル・フォルダに対する操作メニュー
- ゴミ箱: ソフトデリート方式のファイル削除と復元
- スラッシュコマンド: チャットで使えるカスタムコマンドの定義と管理
ファイルツリー上でファイルまたはフォルダを右クリック(モバイルでは ⋯ ボタンをタップ)するとコンテキストメニューが表示される。
| メニュー | 説明 |
|---|---|
| 暗号化 / 復号 | ファイルを暗号化(.encrypted 付加)または復号する |
| 編集履歴 | ローカルの編集履歴を表示し、任意のバージョンに復元可能 |
| ダウンロード | ファイルをローカルにダウンロード(キャッシュ優先、なければ API 経由) |
| PDF に変換 | Markdown/HTML ファイルを PDF に変換し temporaries/ に保存 |
| HTML に変換 | Markdown ファイルを HTML に変換し temporaries/ に保存 |
| 公開 | ファイルを公開リンクで共有可能にする(公開 URL を自動コピー) |
| リンクをコピー | 公開済みファイルの公開 URL をクリップボードにコピー |
| 非公開にする | 公開済みファイルの共有を解除する |
| キャッシュクリア | IndexedDB のキャッシュを削除する(未保存の変更がある場合は警告) |
| 複製 | ファイルを 名前 (copy).拡張子 として複製する |
| 名前変更 | ファイル名を変更する |
| ゴミ箱 | ファイルを Drive の trash/ フォルダに移動(ソフトデリート) |
| メニュー | 説明 |
|---|---|
| フォルダをキャッシュ (N) | フォルダ配下の uncached ファイルを一括でダウンロード・キャッシュする(ローカル専用の new: プレースホルダは除外)。(N) は取得予定件数。対象がある場合のみ表示。詳細は Sync → Lazy-Fetch |
| ZIP ダウンロード | フォルダ内の全ファイルを ZIP にまとめてダウンロードする |
| キャッシュクリア | フォルダ内の全ファイルのキャッシュを一括削除(未保存ファイルがある場合は警告) |
| 名前変更 | フォルダ名を変更する |
| ゴミ箱 | フォルダ内の全ファイルを trash/ に移動する |
FILES サイドバーヘッダーの右端に並ぶアイコン:
| アイコン | 動作 |
|---|---|
| 🗑 ゴミ箱 | 選択中のファイルを一括削除(選択時のみ表示) |
| 🔍 検索 | Quick Open / Drive 検索パネルを開く |
| + ファイル | 現在位置に新規ファイルを作成 |
| + フォルダ | 現在位置に新規フォルダを作成 |
| ⬆ アップロード | ローカルファイルを Drive にアップロード |
| 🗄 すべてキャッシュ | ワークスペース全体の uncached ファイルを一括ダウンロード。全ファイルがキャッシュ済みか実行中は disabled。ツールチップに未キャッシュ件数または進捗が表示される |
- 暗号化 / 復号:
.encrypted拡張子の有無で切り替え - PDF/HTML 変換: 対象ファイルが Markdown または HTML の場合のみ表示
- 公開 / 非公開 / リンクコピー: 暗号化ファイル以外で、現在の公開状態に応じて表示
- キャッシュクリア(ファイル): キャッシュが存在するファイルのみ表示
ファイル削除はソフトデリート方式を採用。削除したファイルは Google Drive 上の gemihub/trash/ フォルダに移動され、_sync-meta.json からはエントリが除去される。
- 右クリックメニューから「ゴミ箱」を選択
- 確認ダイアログが表示される
- ファイルが
trash/フォルダに移動 _sync-meta.jsonからエントリを削除- ローカルキャッシュ(IndexedDB)とローカル同期メタからも削除
- RAG トラッキングがある場合はベストエフォートで削除
ローカルで新規作成してまだ Push していないファイル(new: プレフィックス付き ID)は、Drive へのリクエストなしにローカルキャッシュのみ削除される。
Settings 画面からゴミ箱ダイアログを開くことで、削除済みファイルの一覧を確認できる。
| 操作 | 説明 |
|---|---|
| 復元 | 選択したファイルを trash/ からルートフォルダに戻し、_sync-meta.json に再追加する |
| 完全削除 | 選択したファイルを Google Drive から完全に削除する(復元不可) |
| 全選択 | すべてのファイルを一括で選択する |
| アクション | エンドポイント | 説明 |
|---|---|---|
delete |
/api/drive/files |
ファイルを trash/ に移動し _sync-meta.json を更新 |
listTrash |
/api/sync |
trash/ フォルダ内のファイル一覧を取得 |
restoreTrash |
/api/sync |
ファイルをルートフォルダに戻し _sync-meta.json に再追加(リネーム可) |
deleteUntracked |
/api/sync |
ファイルを Google Drive から完全削除 |
チャット入力欄で / を入力するとオートコンプリートが表示され、登録済みのコマンドを選択して実行できる。
| フィールド | 説明 |
|---|---|
| 名前 | コマンド名(/ の後に続く文字列、例: summarize) |
| 説明 | コマンドの説明文 |
| プロンプトテンプレート | 送信されるメッセージのテンプレート |
| モデルオーバーライド | このコマンド専用のモデル指定(省略時はデフォルトモデル) |
| 検索設定オーバーライド | Web Search または特定の RAG ストアを指定 |
| Drive ツールモードオーバーライド | all / noSearch / none のいずれかを指定 |
| MCP サーバーオーバーライド | 使用する MCP サーバーを個別に指定 |
| 変数 | 説明 |
|---|---|
{content} |
現在アクティブなファイルの全内容 |
{selection} |
エディタで選択中のテキスト |
@filename |
Drive ファイルの内容を参照(Drive ツール有効時はファイル参照、無効時はインライン展開) |
Settings > Commands タブから追加・編集・削除が可能。コマンドは settings.json の slashCommands 配列に保存される。
明示的なコンテキスト({content}, {selection}, @file)が含まれない場合、現在開いているファイルの名前と ID が自動的にメッセージに付加される。
| File | Description |
|---|---|
app/components/ide/ContextMenu.tsx |
汎用コンテキストメニューコンポーネント |
app/components/ide/DriveFileTree.tsx |
ファイルツリー(右クリックメニューのメニュー項目定義と各ハンドラ) |
app/components/settings/TrashDialog.tsx |
ゴミ箱ダイアログ(復元・完全削除 UI) |
app/components/settings/CommandsTab.tsx |
コマンド管理タブ(Settings 画面) |
app/routes/api.drive.files.tsx |
ファイル CRUD API(delete アクション含む) |
app/routes/api.sync.tsx |
同期 API(listTrash / restoreTrash / deleteUntracked) |
app/types/settings.ts |
SlashCommand 型定義 |
app/hooks/useAutocomplete.ts |
オートコンプリートロジック(スラッシュコマンド、ファイル参照) |