36 lines
1.2 KiB
Markdown
36 lines
1.2 KiB
Markdown
# Claude Guidelines for cgould/config
|
|
|
|
## Repository Structure
|
|
- Configuration files for various tools (fish, git, helix, etc.)
|
|
- Installation scripts for different environments (Linux/Nix, macOS/Homebrew)
|
|
|
|
## Commands
|
|
- Install/setup: `./install.sh` (interactive installer)
|
|
- No specific test/lint commands (configuration repo)
|
|
|
|
## Code Style
|
|
|
|
### Naming Conventions
|
|
- Files/functions: `snake_case.fish`
|
|
- Shell variables: Local `snake_case`, env vars `UPPERCASE`
|
|
- Function arguments: Use `--argument-names` in fish
|
|
|
|
### Formatting
|
|
- Indentation: 4 spaces for fish, tabs/4 spaces for shell scripts
|
|
- Line length: Keep under 100 characters
|
|
- Commands: Space after commands, spaces around operators
|
|
|
|
### Documentation
|
|
- Fish functions: Use `--description` parameter
|
|
- Major sections: Use header comments with descriptive names
|
|
- Error messages: User-friendly, sent to stderr with `>&2`
|
|
|
|
### Error Handling
|
|
- Validate arguments at beginning of functions
|
|
- Return explicit error codes (return 1) for failures
|
|
- Use conditionals to check for successful operations
|
|
|
|
### Fish-Specific
|
|
- Follow fish idioms (command substitution with parentheses)
|
|
- Use fish built-ins where possible
|
|
- Separate config into functions, completions, conf.d directories |