[FEATURE] Allow configurable shell for ! command prefix (Fish, Zsh, etc.)
Resolved 💬 3 comments Opened Dec 5, 2025 by RIPHeisenberg Closed Dec 9, 2025
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Currently, the ! command prefix in Claude Code only executes commands through Bash. For users who use alternative shells like Fish
or Zsh as their daily driver, this creates friction because:
- Shell-specific syntax doesn't work (e.g., Fish's set vs Bash's export)
- Custom aliases and functions from their shell config aren't available
- Path modifications and environment setup from their shell profile aren't loaded
Proposed Solution
Add a configuration option to specify the shell used by the ! prefix, for example:
{
"shell": "/usr/bin/fish"
}
Or an environment variable:
CLAUDE_CODE_SHELL=/usr/bin/fish
Alternative Solutions
Currently users must run !fish -c "command" for each command, which is cumbersome.
Environment:
- OS: Linux
- Shell: Fish
---
Want me to open the new issue page directly, or would you like to modify this first?
Priority
Medium - Would be very helpful
Feature Category
CLI commands and flags
Use Case Example
_No response_
Additional Context
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗