{
  "$schema": "https://www.sophonz.io/schemas/keymap-v1.json",
  "format": "sophonz-keymap",
  "version": 1,
  "name": "Key bar: default",
  "platform": "any",
  "bindings": [],
  "keyBar": {
    "groups": [
      {
        "id": "main",
        "title": "Main",
        "layout": "fit",
        "keys": [
          {
            "toggle": "mux"
          },
          {
            "toggle": "agent"
          },
          {
            "label": "ctrl",
            "action": "mod.ctrl"
          },
          {
            "label": "alt",
            "action": "mod.alt"
          },
          {
            "label": "esc",
            "send": "esc"
          },
          {
            "label": "tab",
            "send": "tab"
          },
          {
            "label": "←",
            "send": "left",
            "repeat": true
          },
          {
            "label": "↓",
            "send": "down",
            "repeat": true
          },
          {
            "label": "↑",
            "send": "up",
            "repeat": true
          },
          {
            "label": "→",
            "send": "right",
            "repeat": true
          }
        ]
      },
      {
        "id": "claude",
        "title": "Claude Code",
        "when": "agent:claude",
        "toggle": "agent",
        "keys": [
          {
            "action": "agent.pick"
          },
          {
            "label": "esc",
            "send": "esc",
            "hint": {
              "en": "Claude Code: interrupt, or close a dialog",
              "ko": "Claude Code: 중단, 또는 대화상자 닫기"
            }
          },
          {
            "label": "esc esc",
            "text": [
              "\u001b",
              "\u001b"
            ],
            "hint": {
              "en": "Claude Code: clear the draft, or rewind",
              "ko": "Claude Code: 입력 지우기, 또는 되감기"
            }
          },
          {
            "label": "⇧tab",
            "send": "shift+tab",
            "hint": {
              "en": "Claude Code: switch permission mode",
              "ko": "Claude Code: 권한 모드 전환"
            }
          },
          {
            "label": "1",
            "text": "1",
            "hint": {
              "en": "Claude Code: pick option 1",
              "ko": "Claude Code: 1번 선택"
            }
          },
          {
            "label": "2",
            "text": "2",
            "hint": {
              "en": "Claude Code: pick option 2",
              "ko": "Claude Code: 2번 선택"
            }
          },
          {
            "label": "3",
            "text": "3",
            "hint": {
              "en": "Claude Code: pick option 3",
              "ko": "Claude Code: 3번 선택"
            }
          },
          {
            "label": "^J",
            "text": "\n",
            "hint": {
              "en": "Claude Code: new line without sending",
              "ko": "Claude Code: 보내지 않고 줄바꿈"
            }
          },
          {
            "label": "^O",
            "text": "\u000f",
            "hint": {
              "en": "Claude Code: transcript",
              "ko": "Claude Code: 전체 기록 보기"
            }
          },
          {
            "label": "^B",
            "text": "\u0002",
            "hint": {
              "en": "Claude Code: run the task in the background (twice under tmux)",
              "ko": "Claude Code: 작업을 백그라운드로 (tmux에서는 두 번)"
            }
          },
          {
            "label": "^T",
            "text": "\u0014",
            "hint": {
              "en": "Claude Code: show or hide the task list",
              "ko": "Claude Code: 할 일 목록 보이기/숨기기"
            }
          },
          {
            "label": "^G",
            "text": "\u0007",
            "hint": {
              "en": "Claude Code: edit the prompt in $EDITOR",
              "ko": "Claude Code: 외부 편집기로 입력 편집"
            }
          }
        ]
      },
      {
        "id": "codex",
        "title": "Codex",
        "when": "agent:codex",
        "toggle": "agent",
        "keys": [
          {
            "action": "agent.pick"
          },
          {
            "label": "esc",
            "send": "esc",
            "hint": {
              "en": "Codex: interrupt the turn, or decline",
              "ko": "Codex: 턴 중단, 또는 거절"
            }
          },
          {
            "label": "esc esc",
            "text": [
              "\u001b",
              "\u001b"
            ],
            "hint": {
              "en": "Codex: edit the previous message",
              "ko": "Codex: 이전 메시지 수정"
            }
          },
          {
            "label": "⇧tab",
            "send": "shift+tab",
            "hint": {
              "en": "Codex: switch collaboration mode (Plan)",
              "ko": "Codex: 협업 모드 전환 (Plan)"
            }
          },
          {
            "label": "⇧←",
            "send": "shift+left",
            "hint": {
              "en": "Codex: answer its questions (next question), or edit the last queued message",
              "ko": "Codex: 질문에 답하기 (다음 질문), 또는 대기 중인 마지막 메시지 수정"
            }
          },
          {
            "label": "⇧→",
            "send": "shift+right",
            "hint": {
              "en": "Codex: previous question, then back to the prompt",
              "ko": "Codex: 이전 질문, 그다음 입력창으로"
            }
          },
          {
            "label": "1",
            "text": "1",
            "hint": {
              "en": "Codex: pick option 1",
              "ko": "Codex: 1번 선택"
            }
          },
          {
            "label": "2",
            "text": "2",
            "hint": {
              "en": "Codex: pick option 2",
              "ko": "Codex: 2번 선택"
            }
          },
          {
            "label": "3",
            "text": "3",
            "hint": {
              "en": "Codex: pick option 3",
              "ko": "Codex: 3번 선택"
            }
          },
          {
            "label": "^J",
            "text": "\n",
            "hint": {
              "en": "Codex: new line without sending",
              "ko": "Codex: 보내지 않고 줄바꿈"
            }
          },
          {
            "label": "^T",
            "text": "\u0014",
            "hint": {
              "en": "Codex: transcript",
              "ko": "Codex: 전체 기록 보기"
            }
          },
          {
            "label": "^G",
            "text": "\u0007",
            "hint": {
              "en": "Codex: edit the prompt in $EDITOR",
              "ko": "Codex: 외부 편집기로 입력 편집"
            }
          }
        ]
      },
      {
        "id": "gemini",
        "title": "Gemini CLI",
        "when": "agent:gemini",
        "toggle": "agent",
        "keys": [
          {
            "action": "agent.pick"
          },
          {
            "label": "esc",
            "send": "esc",
            "hint": {
              "en": "Gemini CLI: cancel, or close a dialog",
              "ko": "Gemini CLI: 취소, 또는 대화상자 닫기"
            }
          },
          {
            "label": "esc esc",
            "text": [
              "\u001b",
              "\u001b"
            ],
            "hint": {
              "en": "Gemini CLI: clear the input, or browse earlier turns",
              "ko": "Gemini CLI: 입력 지우기, 또는 이전 대화 보기"
            }
          },
          {
            "label": "⇧tab",
            "send": "shift+tab",
            "hint": {
              "en": "Gemini CLI: switch approval mode",
              "ko": "Gemini CLI: 승인 모드 전환"
            }
          },
          {
            "label": "1",
            "text": "1",
            "hint": {
              "en": "Gemini CLI: pick option 1",
              "ko": "Gemini CLI: 1번 선택"
            }
          },
          {
            "label": "2",
            "text": "2",
            "hint": {
              "en": "Gemini CLI: pick option 2",
              "ko": "Gemini CLI: 2번 선택"
            }
          },
          {
            "label": "3",
            "text": "3",
            "hint": {
              "en": "Gemini CLI: pick option 3",
              "ko": "Gemini CLI: 3번 선택"
            }
          },
          {
            "label": "^J",
            "text": "\n",
            "hint": {
              "en": "Gemini CLI: new line without sending",
              "ko": "Gemini CLI: 보내지 않고 줄바꿈"
            }
          },
          {
            "label": "^Y",
            "text": "\u0019",
            "hint": {
              "en": "Gemini CLI: YOLO, approve every tool call",
              "ko": "Gemini CLI: YOLO, 모든 도구 실행 자동 승인"
            }
          },
          {
            "label": "^T",
            "text": "\u0014",
            "hint": {
              "en": "Gemini CLI: show or hide the TODO list",
              "ko": "Gemini CLI: TODO 목록 보이기/숨기기"
            }
          },
          {
            "label": "^O",
            "text": "\u000f",
            "hint": {
              "en": "Gemini CLI: expand or collapse",
              "ko": "Gemini CLI: 펼치기/접기"
            }
          }
        ]
      },
      {
        "id": "agent",
        "title": "Agent",
        "when": "agent:generic",
        "toggle": "agent",
        "keys": [
          {
            "action": "agent.pick"
          },
          {
            "label": "esc esc",
            "text": [
              "\u001b",
              "\u001b"
            ],
            "hint": {
              "en": "Most agents: rewind or clear the input",
              "ko": "대부분의 에이전트: 되감기 또는 입력 지우기"
            }
          },
          {
            "label": "⇧tab",
            "send": "shift+tab",
            "hint": {
              "en": "Most agents: switch mode",
              "ko": "대부분의 에이전트: 모드 전환"
            }
          },
          {
            "label": "⇧←",
            "send": "shift+left"
          },
          {
            "label": "⇧→",
            "send": "shift+right"
          },
          {
            "label": "1",
            "text": "1"
          },
          {
            "label": "2",
            "text": "2"
          },
          {
            "label": "3",
            "text": "3"
          },
          {
            "label": "⌥⏎",
            "send": "opt+enter",
            "hint": {
              "en": "Most agents and REPLs: new line without sending",
              "ko": "대부분의 에이전트와 REPL: 보내지 않고 줄바꿈"
            }
          }
        ]
      },
      {
        "id": "tmux",
        "title": "tmux",
        "when": "mux",
        "toggle": "mux",
        "keys": [
          {
            "label": "list",
            "action": "window.list"
          },
          {
            "label": "sess",
            "action": "session.list"
          },
          {
            "label": "◀ win",
            "action": "window.prev"
          },
          {
            "label": "win ▶",
            "action": "window.next"
          },
          {
            "label": "+win",
            "action": "window.new"
          },
          {
            "label": "go#",
            "action": "window.goto.ask"
          },
          {
            "label": "pane",
            "action": "pane.next"
          },
          {
            "label": "zoom",
            "action": "pane.zoom"
          },
          {
            "label": "split│",
            "action": "pane.split.right"
          },
          {
            "label": "split─",
            "action": "pane.split.down"
          },
          {
            "label": "detach",
            "action": "session.detach"
          },
          {
            "label": "1",
            "action": "window.goto.1"
          },
          {
            "label": "2",
            "action": "window.goto.2"
          },
          {
            "label": "3",
            "action": "window.goto.3"
          },
          {
            "label": "4",
            "action": "window.goto.4"
          },
          {
            "label": "5",
            "action": "window.goto.5"
          }
        ]
      },
      {
        "id": "extras",
        "title": "More",
        "keys": [
          {
            "action": "keyboard.onscreen"
          },
          {
            "action": "compose.mic"
          },
          {
            "action": "compose.open"
          },
          {
            "label": "⏎",
            "send": "enter",
            "wide": true
          },
          {
            "label": "paste",
            "action": "edit.paste",
            "wide": true
          },
          {
            "label": "A−",
            "action": "font.smaller",
            "repeat": true
          },
          {
            "label": "A+",
            "action": "font.bigger",
            "repeat": true
          },
          {
            "label": "⇤tab",
            "text": "\u001b[Z"
          },
          {
            "label": "^C",
            "text": "\u0003"
          },
          {
            "label": "^D",
            "text": "\u0004"
          },
          {
            "label": "^Z",
            "text": "\u001a"
          },
          {
            "label": "^R",
            "text": "\u0012"
          },
          {
            "label": "^L",
            "text": "\f"
          },
          {
            "char": "|"
          },
          {
            "char": "~"
          },
          {
            "char": "/"
          },
          {
            "char": "-"
          },
          {
            "char": "_"
          },
          {
            "char": "$"
          },
          {
            "char": "*"
          },
          {
            "char": "{"
          },
          {
            "char": "}"
          },
          {
            "char": "["
          },
          {
            "char": "]"
          },
          {
            "label": "hom",
            "send": "home"
          },
          {
            "label": "end",
            "send": "end"
          },
          {
            "label": "pgup",
            "send": "pageup"
          },
          {
            "label": "pgdn",
            "send": "pagedown"
          },
          {
            "label": "del",
            "send": "delete",
            "repeat": true
          },
          {
            "label": "F1",
            "send": "f1"
          },
          {
            "label": "F2",
            "send": "f2"
          },
          {
            "label": "F3",
            "send": "f3"
          },
          {
            "label": "F4",
            "send": "f4"
          }
        ]
      }
    ]
  }
}
