[BUG] CLAUDE.md files not loaded from additionalDirectories configured in settings.json
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
CLAUDE.md files from additional directories configured via additionalDirectories in settings.json are not loaded into the session context. The directories are correctly registered (visible in the Environment section of the system prompt), but CLAUDE.md discovery does not run for them. Using --add-dir CLI flag with the same directories works correctly.
What Should Happen?
additionalDirectories in settings.json should behave identically to --add-dir CLI flag for CLAUDE.md discovery when CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 is set (or without it, since --add-dir loads CLAUDE.md even without the env var).
Steps to Reproduce
- Create test directories:
mkdir -p /tmp/claude-md-test/main/.claude
mkdir -p /tmp/claude-md-test/library
- Create a CLAUDE.md with unique content:
echo '# CANARY_TEST_12345
This is a test.' > /tmp/claude-md-test/library/CLAUDE.md
- Configure additionalDirectories in settings.json:
echo '{"permissions":{"additionalDirectories":["/tmp/claude-md-test/library"]}}' > /tmp/claude-md-test/main/.claude/settings.json
- Test 1 — additionalDirectories (FAILS):
cd /tmp/claude-md-test/main
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 claude -p "Do you see CANARY_TEST_12345 in your context? Answer YES or NO."
Result: NO — CLAUDE.md not loaded.
- Test 2 — --add-dir flag (WORKS):
cd /tmp/claude-md-test/main
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 claude --add-dir /tmp/claude-md-test/library -p "Do you see CANARY_TEST_12345 in your context? Answer YES or NO."
Result: YES — CLAUDE.md loaded.
- Test 3 — --add-dir without env var (also WORKS):
cd /tmp/claude-md-test/main
claude --add-dir /tmp/claude-md-test/library -p "Do you see CANARY_TEST_12345 in your context? Answer YES or NO."
Result: YES — CLAUDE.md loaded even without the env var.
Claude Model
Opus
Is this a regression?
I don't know
Claude Code Version
2.1.81 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
iTerm2
Additional Information
Note: Test 3 suggests that CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD may no longer be required for --add-dir to load CLAUDE.md files, which contradicts the documentation. This may be a separate documentation issue.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗