feat: support claude.local.md for local-only documentation

Add support for claude.local.md and .claude/claude.local.md as local-only
alternatives to CLAUDE.md. These files are intended to be gitignored for
personal customizations that should not be committed to the repo.

Changes:
- Update CheckAgentDocumentation to detect claude.local.md files
- Update CheckLegacyBeadsSlashCommands to check claude.local.md files
- Update CheckDocumentationBdPrimeReference to check claude.local.md files
- Add fix message mentioning claude.local.md as an option
- Add test cases for claude.local.md support

Closes #488

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-12-14 17:20:59 -08:00
parent 1b5efd5d47
commit 03e7d7c650
4 changed files with 59 additions and 0 deletions
+28
View File
@@ -39,6 +39,18 @@ func TestCheckAgentDocumentation(t *testing.T) {
expectedStatus: "ok",
expectFix: false,
},
{
name: "claude.local.md exists (local-only)",
files: []string{"claude.local.md"},
expectedStatus: "ok",
expectFix: false,
},
{
name: ".claude/claude.local.md exists (local-only)",
files: []string{".claude/claude.local.md"},
expectedStatus: "ok",
expectFix: false,
},
{
name: "multiple docs",
files: []string{"AGENTS.md", "CLAUDE.md"},
@@ -127,6 +139,22 @@ func TestCheckLegacyBeadsSlashCommands(t *testing.T) {
expectedStatus: "warning",
expectWarning: true,
},
{
name: "legacy slash command in claude.local.md",
fileContent: map[string]string{
"claude.local.md": "Use /beads:show to see an issue.",
},
expectedStatus: "warning",
expectWarning: true,
},
{
name: "legacy slash command in .claude/claude.local.md",
fileContent: map[string]string{
".claude/claude.local.md": "Use /beads:ready to see ready issues.",
},
expectedStatus: "warning",
expectWarning: true,
},
{
name: "multiple files with legacy commands",
fileContent: map[string]string{