skills/infrastructure/shell-config/SKILL.md
Shell configuration: Fish and Zsh setup, PATH, completions, plugins.
npx skillsauth add notque/claude-code-toolkit shell-configInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Unified skill for Fish and Zsh shell configuration. Detect the target shell first, then load the appropriate reference.
| Shell | Signal | Load | Why |
|---|---|---|---|
| Fish | Any Fish context | fish-shell-config.md | Full Fish config patterns, syntax, file layout |
| Fish | Migrations from Bash | fish-bash-migration.md | Bash-to-Fish syntax translation |
| Fish | Variable scope, PATH, abbr, completions | fish-quick-reference.md | Variable scope guide, special variables, control flow |
| Fish | Error audit, broken config | fish-preferred-patterns.md | Failure modes with grep detection and error-fix mappings |
| Fish | Dev tool integration | fish-tool-integrations.md | Fish integration patterns for Go, Rust, Node, Python, Docker |
| Zsh | Any Zsh context | zsh-shell-config.md | Full Zsh config patterns, RC files, frameworks, hooks |
| Zsh | Migrations from Bash | zsh-bash-migration.md | Bash-to-Zsh syntax translation |
| Zsh | Variable scoping, expansion flags, special vars | zsh-quick-reference.md | Parameter expansion flags, special variables |
| Zsh | Error audit, slow startup, glob errors | zsh-preferred-patterns.md | Failure modes with grep detection and error-fix mappings |
| Zsh | Dev tool integration | zsh-tool-integrations.md | Zsh integration patterns for Go, Rust, Node, Python, Docker |
Before loading references or writing code, determine the target shell:
$SHELL contains fish, target file has .fish extension, or target directory is ~/.config/fish/$SHELL contains zsh, target file is .zshrc/.zshenv/.zprofile, or has .zsh extensionIf neither Fish nor Zsh, this skill does not apply.
Load the appropriate reference file from the table above based on the detected shell and the task signal. Start with the full config reference (fish-shell-config.md or zsh-shell-config.md), then load additional references as needed.
Each reference contains complete instructions for that shell. Follow them exactly — Fish and Zsh have incompatible syntax in many areas (variable assignment, PATH handling, conditionals, completions).
Key differences:
| Concept | Fish | Zsh |
|---------|------|-----|
| Variable assignment | set -gx VAR value | export VAR=value |
| PATH management | fish_add_path | typeset -U path; path=(...) |
| Completions | completions/ directory | compinit + fpath |
| Conditionals | test, not [[ ]] | [[ ]] preferred |
| Functions | function name ... end | function name { ... } |
| Interactive guard | status is-interactive | [[ -o interactive ]] |
tools
Kubernetes operations: debugging, security, RBAC, and infrastructure tooling.
development
Swift development: concurrency patterns, async/await, actors, testing with XCTest and Swift Testing framework.
development
PHP development: code quality, PSR standards, testing with PHPUnit.
development
Kotlin development: coroutines, Flow, Channels, testing with JUnit 5 and Kotest.