Skip to content

Keybinding Profiles

S4 · Deterministic 🔬 Research

Pre-configured keybinding profiles for different workflows. These are optional but recommended for a smooth experience with AI coding agents.


Terminal window
# From this repo's root:
./profiles/install.sh opencode-zellij

Or manually copy configs (see each profile’s README).


ProfileUse CaseMultiplexerBest For
opencode-zellijOpenCode + cross-device SSHZellijOpenCode users
tmux-claudeClaude Code + traditional tmuxtmuxClaude Code users

Each profile includes configs for multiple layers:

Profile: opencode-zellij
├── zellij/config.kdl → ~/.config/zellij/config.kdl
├── vscode/settings.json → Merge into VS Code settings
├── vscode/keybindings.json → Merge into VS Code keybindings
└── bashrc-snippet.sh → Append to ~/.bashrc

Terminal window
# Required for smart session matching
sudo apt install jq
# Optional: prettier fuzzy picker UI
sudo apt install fzf

Shared shell helpers that work across profiles:

SnippetPurposeRequires
zellij-helpers.shz, zk, zl, zr, zd, zfix commands with autocompletezellij
tmux-helpers.sht, tk, tl commands with autocompletetmux
opencode-helpers.sho (smart session picker), oc, onjq
claude-code-helpers.shcc, ccy, ccr, ccp, ccs shortcutsclaude
flow-control.shDisables Ctrl+S/Ctrl+Q flow control-

These are in bashrc-snippets/ and can be sourced individually:

Terminal window
source /path/to/profiles/bashrc-snippets/zellij-helpers.sh

These extensions enhance keybinding management:

ExtensionPurpose
Dynamic KeybindingsSwitch keybinding sets with Ctrl+Shift+1-9
Vim/Neovim keymapsIf you want vim-style editing

PluginPurposeInstall
zellij-autolockAuto-lock when running vim/OpenCodeSee profile README

  1. Copy an existing profile directory
  2. Modify configs for your needs
  3. Update the profile’s README
  4. Run install script or manually symlink