Problem
Several dialog keybinds are hardcoded and cannot be customized:
- Session list:
ctrl+d (delete), ctrl+r (rename)
- Stash dialog:
ctrl+d (delete)
- Model dialog:
ctrl+a (provider list), ctrl+f (favorite toggle)
Users who have conflicts with these keybinds (e.g., ctrl+d for shell EOF, ctrl+r for reverse search) cannot remap them.
Proposed Solution
Add new keybind config options:
session_delete - default ctrl+d
session_rename - default ctrl+r
stash_delete - default ctrl+d
model_provider_list - default ctrl+a
model_favorite_toggle - default ctrl+f
Usage
{
"keybinds": {
"session_delete": "super+d",
"session_rename": "super+r"
}
}
Files to Modify
packages/opencode/src/config/config.ts
packages/opencode/src/cli/cmd/tui/component/dialog-session-list.tsx
packages/opencode/src/cli/cmd/tui/component/dialog-stash.tsx
packages/opencode/src/cli/cmd/tui/component/dialog-model.tsx
packages/opencode/src/util/keybind.ts
Problem
Several dialog keybinds are hardcoded and cannot be customized:
ctrl+d(delete),ctrl+r(rename)ctrl+d(delete)ctrl+a(provider list),ctrl+f(favorite toggle)Users who have conflicts with these keybinds (e.g.,
ctrl+dfor shell EOF,ctrl+rfor reverse search) cannot remap them.Proposed Solution
Add new keybind config options:
session_delete- defaultctrl+dsession_rename- defaultctrl+rstash_delete- defaultctrl+dmodel_provider_list- defaultctrl+amodel_favorite_toggle- defaultctrl+fUsage
{ "keybinds": { "session_delete": "super+d", "session_rename": "super+r" } }Files to Modify
packages/opencode/src/config/config.tspackages/opencode/src/cli/cmd/tui/component/dialog-session-list.tsxpackages/opencode/src/cli/cmd/tui/component/dialog-stash.tsxpackages/opencode/src/cli/cmd/tui/component/dialog-model.tsxpackages/opencode/src/util/keybind.ts