Files
AI/README.md

124 lines
4.8 KiB
Markdown

# AI Preferences
A personal repository of markdown files that define how AI systems should work with me. Instead of re-explaining preferences every session, these files act as a persistent "operating manual" that can be loaded into any AI tool.
---
## What's in This Repo
```
AI/
├── CLAUDE.md # Main entry point — loaded automatically by Claude Code
└── preferences/
├── communication.md # How I like responses structured and how to interact
├── powershell-wpf.md # Standards for PowerShell and WPF applications
├── python-web.md # Standards for FastAPI, SQLAlchemy, Docker Compose
└── project-structure.md # Standard folder layouts per project type
```
**`CLAUDE.md`** is the top-level summary. It references the `preferences/` files for detail. This is the file you point AI tools to — or it gets picked up automatically.
**`preferences/`** contains the detail files. Each covers a specific domain. You generally don't point tools directly at these; `CLAUDE.md` references them for context.
---
## How to Use These Files
### Claude Code (Automatic)
Claude Code automatically reads `CLAUDE.md` from the root of any project it's working in.
**Option A — Per project:** Copy `CLAUDE.md` into the root of any project repo. Claude Code will pick it up automatically every session.
**Option B — Global (recommended):** Place `CLAUDE.md` in your Claude global config folder so it applies to *every* project without copying:
```
# Windows
Copy-Item "CLAUDE.md" "$env:USERPROFILE\.claude\CLAUDE.md"
```
> Note: If a project also has its own `CLAUDE.md`, Claude Code merges both — global preferences apply everywhere, project-specific ones add on top.
---
### Cursor
Cursor reads a `.cursorrules` file in the project root.
1. Copy the content of `CLAUDE.md` (and any relevant `preferences/` files) into a file named `.cursorrules` in your project root
2. Cursor will load it automatically as context for all AI interactions in that project
---
### GitHub Copilot (VS Code)
Copilot reads custom instructions from VS Code settings or a `.github/copilot-instructions.md` file.
1. In your project, create `.github/copilot-instructions.md`
2. Paste the content from `CLAUDE.md` into that file
3. Copilot will use it as persistent context for that workspace
---
### ChatGPT / Claude.ai (Manual)
These tools don't auto-load files, so you paste preferences at the start of a conversation.
1. Open `CLAUDE.md`
2. Copy the full contents
3. Paste it as the first message in a new conversation with the instruction: *"These are my preferences. Follow them for this session."*
---
### Other AI Tools
Most AI tools support some form of system prompt or custom instructions. The general approach:
1. Use `CLAUDE.md` as your base — it's written to be tool-agnostic
2. Look for the tool's "system prompt", "custom instructions", or "rules" setting
3. Paste the contents of `CLAUDE.md` there
---
## Keeping Preferences Up to Date
Preferences should evolve as your stack and habits change. Treat this repo like any other project — update it when something no longer matches how you work.
### When to Update
- You adopt a new tool or framework and want it recognized as your standard
- You find yourself correcting an AI on the same thing repeatedly — that's a sign it should be in the docs
- A project convention changes (e.g., switching from one library to another)
- You want to add a new project type template to `project-structure.md`
### How to Update
**Small change (tweak a preference):**
1. Open the relevant `preferences/` file
2. Edit the specific rule
3. Commit: `git commit -m "Update [topic] preference"`
**New topic area (e.g., you start working with a new stack):**
1. Create a new file in `preferences/` — e.g., `preferences/hugo-blog.md`
2. Add a link to it in the `CLAUDE.md` Detailed References section
3. Commit both files together
**Removing something outdated:**
1. Delete or edit the relevant section
2. If a whole `preferences/` file is no longer relevant, delete it and remove its link from `CLAUDE.md`
### After Updating
- If you're using the **global Claude Code** setup, the update applies automatically next session
- If you've **copied** `CLAUDE.md` into other project repos, re-copy the updated version to those projects
- If you're using **ChatGPT/Claude.ai** manually, you'll be pasting the updated file next time
---
## Tips
- **`CLAUDE.md` should stay concise** — it's the quick-reference. Put detail in `preferences/` files
- **Be specific, not general** — "use SQLAlchemy 2.0 async" is more useful than "use good database practices"
- **Version your preferences** — git history lets you see what changed and roll back if needed
- **One preference file per domain** — don't cram everything into one file; keep it organized so it's easy to find and update