npx claudepluginhub kriscard/kriscard-claude-plugins --plugin dotfiles-optimizerThis skill uses the workspace's default tool permissions.
Reference knowledge for modern dotfiles configuration, organization, and tooling. Serves as the knowledge base for the dotfiles-optimizer orchestrator.
Sets Claude Code permissions for dev-shell-tools including git, ripgrep, fzf, zoxide, docker, package managers (npm/pnpm/yarn/bun/python/uv), and AI CLIs (gemini/claude). Creates .claude/settings.local.json and rules/cli-tools.md. Triggers on setperms or permission setup queries.
Recommends modern CLI tools like rg (ripgrep), fd, bat, eza, sd, dust, procs over grep, find, cat, ls, sed, du, ps for faster bash scripting, file searches, directory listing, and workflow optimization.
Enforces modern best practices for shell scripts: portable shebangs, strict mode, quoted variables, error traps, exit codes, and secure coding. Use when writing Bash or POSIX sh scripts.
Share bugs, ideas, or general feedback.
Reference knowledge for modern dotfiles configuration, organization, and tooling. Serves as the knowledge base for the dotfiles-optimizer orchestrator.
Theme: Catppuccin Macchiato across all tools (set via $THEME_FLAVOUR=macchiato)
Shell structure: Modular zsh.d/ with numeric prefix load ordering:
zsh/zsh.d/
├── 00-env.zsh # Environment variables, PATH
├── 10-options.zsh # Shell options (setopt)
├── 20-completions.zsh # Completion system
├── 30-plugins.zsh # Plugin loading
├── 40-lazy.zsh # Lazy loading functions
├── 50-keybindings.zsh # Key bindings
├── 60-aliases.zsh # Command aliases
├── 70-functions.zsh # Custom functions
├── 80-integrations.zsh # External tool integrations
└── 99-local.zsh # Local overrides (NOT committed)
Main .zshrc sources all modules:
export ZSH="$HOME/.dotfiles/zsh"
for config_file in "$ZSH/zsh.d"/*.zsh(N); do
source "$config_file"
done
| File | Contents |
|---|---|
| modern-cli-tools.md | eza, bat, fd, rg, zoxide, starship, delta, lazygit |
| shell-performance.md | Startup optimization, lazy loading pattern, profiling |
| security-patterns.md | Credentials, file permissions, history security, .gitignore |
| git-config.md | Multi-identity includeIf, aliases |
| terminal-config.md | Kitty, Ghostty, tmux, neovim, Catppuccin theming |
command -v99-local.zsh pattern means local overrides are NOT committed -- don't suggest editing them as shared config.env and git config files must be 600, not 644Performance: Shell startup <500ms, lazy load version managers, cache completions
Security: Never commit secrets, use .env + .env.example pattern, sensitive files chmod 600
Organization: Modular numeric-prefix structure, separate concerns, local overrides in 99-local.zsh
Modern Tools: eza (ls), bat (cat), fd (find), rg (grep), z (cd) -- check existence before aliasing
Git: Multi-config with includeIf, separate personal/work identities, commit signing recommended
Themes: Consistent Catppuccin Macchiato across all tools, single $THEME_FLAVOUR variable