-
Notifications
You must be signed in to change notification settings - Fork 126
Comparing changes
Open a pull request
base repository: lessweb/deepcode-cli
base: main
head repository: al4xdev/deepcode-cli
compare: main
- 20 commits
- 15 files changed
- 1 contributor
Commits on Jul 1, 2026
-
feat(core): add KeybindMap type and keybinds to settings resolution
- Add KeybindMap type (Record<string, string>) for configurable keybinds - Add keybinds field to DeepcodingSettings and ResolvedDeepcodingSettings - Add normalizeKeybinds() to validate keybind entries - Add mergeKeybinds() with project-over-user precedence - Export KeybindMap from core public API
Configuration menu - View commit details
-
Copy full SHA for 3614dbc - Browse repository at this point
Copy the full SHA 3614dbcView commit details -
feat(cli): add keybind parser module
- Add matchKeybind() to match shortcut strings (e.g. "ctrl+shift+g") against raw input and InputKey with exact modifier matching - Add buildKeybindMatchers() to pre-compile a KeybindMap into an array of matchers for fast per-keystroke lookup
Configuration menu - View commit details
-
Copy full SHA for 40b96ac - Browse repository at this point
Copy the full SHA 40b96acView commit details -
feat(cli): add /keybind command and integrate keybinds into input han…
…dling - Add "keybind" to SlashCommandKind and BUILTIN_SLASH_COMMANDS with args hint (add <shortcut> <action>, remove <shortcut>, list) - Implement /keybind handler with add/remove/list subcommands that read/write settings.json (project-level if present, user-level fallback) - Integrate keybind checking in useTerminalInput callback: custom keybinds are matched before hardcoded shortcuts, only when no dropdown/menu is open to avoid conflicts - Resolve keybind action to SlashCommandItem and dispatch via handleSlashSelection (supports all built-in commands and skills) - Pass resolved settings keybinds from App to PromptInput - Export matchKeybind, buildKeybindMatchers, and KeybindMatcher from the UI barrel
Configuration menu - View commit details
-
Copy full SHA for b0c662b - Browse repository at this point
Copy the full SHA b0c662bView commit details -
test: add keybind tests and update existing test suites
- Add 19 unit tests for matchKeybind covering ctrl, shift, meta modifiers, exact matching, case insensitivity, digit/non-alpha keys, and edge cases - Add 4 integration tests for keybinds settings resolution: default empty, user-only, project-over-user merge, and invalid entry filtering - Update slash-commands test to include "keybind" in built-in names
Configuration menu - View commit details
-
Copy full SHA for 9e878ad - Browse repository at this point
Copy the full SHA 9e878adView commit details -
docs: add keybinds configuration reference (zh + en)
Document the keybinds settings field following the same format as enabledSkills and mcpServers: - Shortcut format: ctrl+key, ctrl+shift+key, meta+key - Project-over-user merge precedence - Runtime management via /keybind add|remove|list
Configuration menu - View commit details
-
Copy full SHA for f2cd225 - Browse repository at this point
Copy the full SHA f2cd225View commit details -
fix(cli): refresh resolved settings after /keybind add or remove
Add onKeybindsChanged callback so that keybinds added or removed via the /keybind slash command take effect immediately without requiring a session restart. The callback re-resolves settings from disk, matching the pattern used by handleModelConfigChange.
Configuration menu - View commit details
-
Copy full SHA for e0cc9e2 - Browse repository at this point
Copy the full SHA e0cc9e2View commit details -
feat(cli): add /usage slash command for DeepSeek API balance
- Add 'usage' to SlashCommandKind type and BUILTIN_SLASH_COMMANDS - Handle /usage in PromptInput (command type + handleSlashSelection) - Create handleUsage callback in App: detects DeepSeek via baseURL, fetches GET /user/balance, displays result as system message - Detect slash commands in -p/--prompt startup path - Show provider mismatch error when baseURL is not api.deepseek.com
Configuration menu - View commit details
-
Copy full SHA for 9af2be3 - Browse repository at this point
Copy the full SHA 9af2be3View commit details -
refactor(cli): show /usage balance in dedicated view instead of syste…
…m message Replace inline system message with a UsageView component (bordered box, Esc to close), matching the MCP status pattern. This avoids render issues with addSessionSystemMessage and provides a cleaner UX.
Configuration menu - View commit details
-
Copy full SHA for b5338dc - Browse repository at this point
Copy the full SHA b5338dcView commit details -
feat(keybinds): add custom keybind management with --global flag
- Add /keybind slash command with add, remove, list subcommands - Auto-complete partial matches (/key -> /keybind) - Show usage hint on bare /keybind instead of opening view - /keybind list opens KeybindsView showing all configured keybinds - --global flag forces operations on user-level settings - Cross-level duplicate detection (merged keybind lookup) - KeybindsView shows [global]/[local] origin indicator - Custom keybind matchers trigger slash actions on shortcut press - Status message timeout increased to 8s for readability
Configuration menu - View commit details
-
Copy full SHA for fb745d6 - Browse repository at this point
Copy the full SHA fb745d6View commit details -
# Conflicts: # packages/cli/src/ui/views/App.tsx # packages/cli/src/ui/views/PromptInput.tsx
Configuration menu - View commit details
-
Copy full SHA for af33b2a - Browse repository at this point
Copy the full SHA af33b2aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e89320 - Browse repository at this point
Copy the full SHA 8e89320View commit details -
Configuration menu - View commit details
-
Copy full SHA for 351daf5 - Browse repository at this point
Copy the full SHA 351daf5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7ac9d36 - Browse repository at this point
Copy the full SHA 7ac9d36View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f1911c - Browse repository at this point
Copy the full SHA 1f1911cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 608ee9b - Browse repository at this point
Copy the full SHA 608ee9bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 824201f - Browse repository at this point
Copy the full SHA 824201fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 246b695 - Browse repository at this point
Copy the full SHA 246b695View commit details -
Configuration menu - View commit details
-
Copy full SHA for 17d464f - Browse repository at this point
Copy the full SHA 17d464fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 98a164a - Browse repository at this point
Copy the full SHA 98a164aView commit details -
Configuration menu - View commit details
-
Copy full SHA for fed2a1f - Browse repository at this point
Copy the full SHA fed2a1fView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...main