Skip to main content

Cyberstrike is now open source! AI-powered penetration testing for security professionals. Star on GitHub

キーバインド設定

ワークフローに合わせてキーボードショートカットをカスタマイズします。キーバインドは設定ファイルの keybinds オブジェクトで定義します。

📸 SCREENSHOT: keybindings-config.png

キーバインド設定オプション

設定の場所

キーバインドはグローバルまたはプロジェクトの設定ファイルで設定します:

~/.config/cyberstrike/cyberstrike.json
{
"keybinds": {
"leader": "ctrl+x",
"session_new": "<leader>n"
}
}

このページに記載されているキーのみ有効です — keybinds オブジェクトは厳密にバリデーションされるため、不明なキーは拒否されます。

Leaderキー

Leaderキーは多くのショートカットのプレフィックスです(デフォルト ctrl+x):

{
"keybinds": {
"leader": "ctrl+a"
}
}

キー構文

修飾キー

修飾キー構文
Controlctrl
Alt/Optionalt
Shiftshift
Super/Commandsuper

特殊キー

キー構文
Enterreturn
Escapeescape
Tabtab
Backspacebackspace
Deletedelete
矢印キーup down left right
Page Up / Downpageup pagedown
Home / Endhome end
ファンクションキーf2、shift+f2

組み合わせ、代替、Leader

ctrl+alt+d # Ctrl + Alt + D
<leader>n # Leaderの後にN
pageup,ctrl+alt+b # 1つのアクションに対する2つの代替バインド(カンマ区切り)

カンマは同じアクションに対する代替バインドを区切ります。値を none に設定するとアクションを無効にできます。

利用可能なアクション

以下のすべてのアクションにデフォルトのバインドが表示されています。keybinds オブジェクトで任意のサブセットを上書きできます。

セッション

アクションデフォルト説明
session_new<leader>n新しいセッションを作成
session_list<leader>lすべてのセッションを一覧表示
session_compact<leader>cセッションをコンパクト化
session_timeline<leader>gセッションタイムラインを表示
session_renamectrl+rセッション名を変更
session_deletectrl+dセッションを削除
session_export<leader>xセッションをエディタにエクスポート
session_interruptescape現在のセッションを中断
session_forknoneメッセージからセッションをフォーク
session_sharenone現在のセッションを共有
session_child_cycle<leader>right次の子セッション
session_parent<leader>up親セッションに移動

メッセージとナビゲーション

アクションデフォルト説明
messages_page_uppageup,ctrl+alt+b1ページ上にスクロール
messages_page_downpagedown,ctrl+alt+f1ページ下にスクロール
messages_half_page_upctrl+alt+u半ページ上にスクロール
messages_half_page_downctrl+alt+d半ページ下にスクロール
messages_firstctrl+g,home最初のメッセージにジャンプ
messages_lastctrl+alt+g,end最後のメッセージにジャンプ
messages_copy<leader>yメッセージをコピー
messages_undo<leader>uメッセージを元に戻す
messages_redo<leader>rメッセージをやり直す
messages_toggle_conceal<leader>hコードブロックの表示/非表示を切り替え

リストとダイアログ

アクションデフォルト説明
model_list<leader>m利用可能なモデルを一覧表示
agent_list<leader>aエージェントを一覧表示
agent_cycletab次のエージェント
agent_cycle_reverseshift+tab前のエージェント
theme_list<leader>t利用可能なテーマを一覧表示
command_listctrl+p利用可能なコマンドを一覧表示

インターフェース

アクションデフォルト説明
sidebar_toggle<leader>bサイドバーの表示/非表示
status_view<leader>sステータスを表示
editor_open<leader>e外部エディタを開く
tips_toggle<leader>hホーム画面のヒントを切り替え

アプリケーションと入力

アクションデフォルト説明
app_exitctrl+c,ctrl+d,<leader>qアプリケーションを終了
terminal_suspendctrl+zターミナルをサスペンド
input_submitreturn入力を送信
input_newlineshift+return,ctrl+return,alt+return,ctrl+j改行を挿入
input_clearctrl+c入力フィールドをクリア
input_pastectrl+vクリップボードから貼り付け

Info

入力フィールドにはカーソル移動や編集のバインド(input_move_*、input_word_*、input_delete_* など)も多数あります。同じ keybinds の命名規則に従い、同様に上書きできます。

完全な設定例

~/.config/cyberstrike/cyberstrike.json
{
"keybinds": {
"leader": "ctrl+x",
"session_new": "<leader>n",
"session_list": "<leader>l",
"session_compact": "<leader>c",
"session_timeline": "<leader>g",
"session_rename": "ctrl+r",
"session_export": "<leader>x",
"model_list": "<leader>m",
"agent_list": "<leader>a",
"theme_list": "<leader>t",
"command_list": "ctrl+p",
"sidebar_toggle": "<leader>b",
"status_view": "<leader>s",
"editor_open": "<leader>e",
"messages_half_page_up": "ctrl+alt+u",
"messages_half_page_down": "ctrl+alt+d",
"messages_undo": "<leader>u",
"app_exit": "ctrl+c,ctrl+d,<leader>q"
}
}

複数バインド

カンマで1つのアクションに複数のショートカットを割り当てます:

{
"keybinds": {
"app_exit": "ctrl+c,ctrl+d,<leader>q",
"model_list": "<leader>m,ctrl+shift+m"
}
}

カンマは代替バインドを区切ります — コードシーケンスではありません。

キーバインドのリセット

リセットコマンドはありません。デフォルトに戻すには、keybinds オブジェクトからキーを削除してください(すべてのデフォルトを復元するにはオブジェクト全体を削除します)。

トラブルシューティング

  1. ターミナルエミュレーターとの競合を確認
  2. 設定が有効なJSONであり、キー名がこのページと正確に一致していることを確認(不明なキーはバリデーションエラー)
  3. TUIで command_list(ctrl+p)を使用して登録済みコマンドを閲覧

Tip

Cyberstrike内で /help を使用すると、アクティブなキーバインドのクイックリファレンスが表示されます。

関連ドキュメント