Personal configuration files and settings.
dotfiles/
├── claude/
│ └── commands/
│ └── commit.md # Smart commit slash command for Claude Code
└── README.md
Custom slash commands for Claude Code.
The commands are automatically symlinked from this repository:
~/.claude/commands/commit.md -> ~/GitHub/dotfiles/claude/commands/commit.mdIntelligent git commit command with:
- Semantic grouping: Analyzes diffs to group related changes
- Smart consolidation: Suggests merging small, related changes
- Security filtering: Automatically excludes .env files, keys, secrets
- File arguments: Can commit specific files or all changes
- Conventional commits: Generates well-formatted commit messages
Usage:
/commit # Analyze and commit all changes
/commit file1.ts file2.ts # Commit specific files onlyFeatures:
- Automatically excludes
.env*,*.key,*.pem, credential files - Groups changes by semantic purpose (feat/fix/docs/refactor)
- Suggests consolidating small groups (typos, formatting)
- Creates multiple commits when appropriate
- Follows conventional commit format
See claude/commands/commit.md for full specification.
After creating your dotfiles repository locally, push it to GitHub:
cd ~/GitHub/dotfiles
gh repo create dotfiles --private --source=. --push-
Create a new repository on GitHub:
- Repository name:
dotfiles - Visibility: Private (recommended) or Public
- Don't initialize with README, .gitignore, or license (we already have these)
- Repository name:
-
Push your local repository:
cd ~/GitHub/dotfiles git remote add origin [email protected]:YOUR_USERNAME/dotfiles.git git push -u origin main
-
Clone this repository:
git clone <your-repo-url> ~/GitHub/dotfiles
-
Run the setup script:
cd ~/GitHub/dotfiles ./setup.sh
Or manually create symlinks:
mkdir -p ~/.claude/commands
ln -sf ~/GitHub/dotfiles/claude/commands/*.md ~/.claude/commands/-
Create new command in
claude/commands/:touch claude/commands/new-command.md
-
Edit the command file following Claude Code slash command format
-
Symlink to Claude directory:
ln -sf ~/GitHub/dotfiles/claude/commands/new-command.md ~/.claude/commands/
-
Commit and push:
git add claude/commands/new-command.md git commit -m "feat(claude): add new-command slash command" git push
Commands are symlinked, so edits in ~/GitHub/dotfiles/ automatically reflect in ~/.claude/commands/.
To update:
- Edit the file in
~/GitHub/dotfiles/claude/commands/ - Test the command in Claude Code
- Commit changes:
git add -p git commit -m "feat(claude): improve commit command" git push
Personal dotfiles - feel free to use as inspiration for your own setup.