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.
Quick Setup
Section titled “Quick Setup”# From this repo's root:./profiles/install.sh opencode-zellijOr manually copy configs (see each profile’s README).
Available Profiles
Section titled “Available Profiles”| Profile | Use Case | Multiplexer | Best For |
|---|---|---|---|
opencode-zellij | OpenCode + cross-device SSH | Zellij | OpenCode users |
tmux-claude | Claude Code + traditional tmux | tmux | Claude Code users |
What Gets Configured
Section titled “What Gets Configured”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 ~/.bashrcDependencies
Section titled “Dependencies”# Required for smart session matchingsudo apt install jq
# Optional: prettier fuzzy picker UIsudo apt install fzfBashrc Snippets
Section titled “Bashrc Snippets”Shared shell helpers that work across profiles:
| Snippet | Purpose | Requires |
|---|---|---|
zellij-helpers.sh | z, zk, zl, zr, zd, zfix commands with autocomplete | zellij |
tmux-helpers.sh | t, tk, tl commands with autocomplete | tmux |
opencode-helpers.sh | o (smart session picker), oc, on | jq |
claude-code-helpers.sh | cc, ccy, ccr, ccp, ccs shortcuts | claude |
flow-control.sh | Disables Ctrl+S/Ctrl+Q flow control | - |
These are in bashrc-snippets/ and can be sourced individually:
source /path/to/profiles/bashrc-snippets/zellij-helpers.shVS Code Extensions (Optional)
Section titled “VS Code Extensions (Optional)”These extensions enhance keybinding management:
| Extension | Purpose |
|---|---|
| Dynamic Keybindings | Switch keybinding sets with Ctrl+Shift+1-9 |
| Vim/Neovim keymaps | If you want vim-style editing |
Zellij Plugins (Optional)
Section titled “Zellij Plugins (Optional)”| Plugin | Purpose | Install |
|---|---|---|
| zellij-autolock | Auto-lock when running vim/OpenCode | See profile README |
Creating Custom Profiles
Section titled “Creating Custom Profiles”- Copy an existing profile directory
- Modify configs for your needs
- Update the profile’s README
- Run install script or manually symlink
See Also
Section titled “See Also”- docs/keybinding-layers.md — Understanding keybinding conflicts
- docs/terminal-setup.md — Terminal configuration guide