Production-ready Aider configuration for a Haskell backend with TypeScript frontend, featuring Gemini model, auto-testing, file watching, and comprehensive linting setup
A battle-tested Aider configuration from a real-world Haskell backend project with TypeScript frontend. This setup enables AI-assisted coding with automatic testing, linting, and intelligent file watching.
This configuration sets up Aider to work seamlessly with a polyglot codebase:
1. **Create `.aider.conf.yml` in your project root** with the following configuration:
```yaml
model: gemini
thinking-tokens: "1024"
cache-prompts: true
dark-mode: true
pretty: true
stream: true
vim: true
gitignore: false
watch-files: true
test-cmd: env -C api just lint && env -C spa yarn lint
auto-test: true
auto-lint: true
read:
- AGENTS.md
- GEMINI.md
editor: nvim
check-update: true
```
2. **Customize the test command** for your project structure:
- Replace `env -C api just lint && env -C spa yarn lint` with your test/lint commands
- Example for single directory: `test-cmd: npm test && npm run lint`
- Example for Python: `test-cmd: pytest && flake8`
3. **Add context documentation files** to the `read` section:
- Include README, architecture docs, or style guides
- These files provide context to the AI without adding them to the edit scope
- Example: `read: [README.md, ARCHITECTURE.md, STYLE_GUIDE.md]`
4. **Configure lint commands** for your languages (optional):
```yaml
lint-cmd:
- "haskell: hlint"
- "typescript: eslint"
- "python: flake8 --select=E,W"
```
5. **Set up API keys** in your `.env` file (not in YAML):
```bash
GEMINI_API_KEY=your_key_here
```
**File Watching (`watch-files: true`)**
**Automatic Testing (`auto-test: true`)**
**Prompt Caching (`cache-prompts: true`)**
**Thinking Tokens (`thinking-tokens: "1024"`)**
**Read-Only Context Files**
**Start Aider with configuration auto-loaded:**
```bash
aider
```
**Override model for specific session:**
```bash
aider --model claude-opus-4
```
**Add files to edit scope:**
```bash
aider src/main.hs src/api.ts
```
**One-shot edit and exit:**
```bash
aider --message "Add error handling to parseComment function" src/parser.hs
```
**Lint and fix all dirty files:**
```bash
aider --lint
```
**Multi-line input mode:**
```yaml
multiline: true # Submit with Meta-Enter instead of Enter
```
**Custom notification command:**
```yaml
notifications: true
notifications-command: "osascript -e 'display notification \"Aider ready\"'"
```
**Subtree-only mode for monorepos:**
```yaml
subtree-only: true # Only consider files in current directory tree
```
**Custom map tokens for large repos:**
```yaml
map-tokens: 4096 # Increase for better context in large codebases
```
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/aider-configuration-for-haskell-commenting-system/raw