Commit e9f6020
feat: Load keywords from project-local .claude/keywords.json
Replace hardcoded MirrorBot-specific keywords with project-local configuration,
making the context router usable across any codebase without script modification.
Changes:
- Add load_project_config() to load keywords, co_activation, and pinned files
- Config lookup: .claude/keywords.json > ~/.claude/keywords.json > empty defaults
- Update docs_root to prefer project-local .claude/ directory
- Remove ~220 lines of hardcoded keywords from context-router-v2.py
- Add templates/keywords.json.example template
- Add working example to examples/small-project/
- Update all documentation to reference JSON config
This change was motivated by the experience documented at:
https://hitchcock.dev/i-spent-3-hours-fixing-a-15-minute-setup/
Co-Authored-By: Claude Opus 4.5 <[email protected]>1 parent 59ed63d commit e9f6020
11 files changed
Lines changed: 347 additions & 365 deletions
File tree
- docs
- concepts
- guides
- examples/small-project
- .claude
- scripts
- templates
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
13 | 31 | | |
14 | 32 | | |
15 | 33 | | |
| |||
0 commit comments