fix(discover): exclude common tooling dirs (.claude, .opencode, etc.) by default#43
Merged
Merged
Conversation
….vscode/ by default Surfaced by the agent-brain real-repo eval: designdoc indexed 4 .claude/skills/.../sample-cli/*.py files (Rick's local Claude skill samples) and 3 .opencode/ files, paying full doer/checker treatment on each (~$0.85 of $14.99 budget on tooling samples that have nothing to do with the codebase under documentation). Modern dev workflows commonly commit local-tooling configs: - .claude — Claude Code skills, agents, commands - .opencode — sst.dev OpenCode configuration - .devcontainer — VS Code dev container definitions - .idea — JetBrains project files - .vscode — VS Code settings These are never the user's product code. Adding them to DEFAULT_EXCLUDES mirrors the .gitignore patterns most users already have for these dirs. Users who genuinely want to document one of these can pass --exclude-paths with an empty/different list, or rely on the existing exclude_paths config hook (which still composes additively with DEFAULT_EXCLUDES). The .gitignore change in this commit is the eval-output gitignore I added earlier when running designdoc against agent-brain — pulled along to keep the repo clean. Closes #42. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This was referenced Apr 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add `.claude`, `.opencode`, `.devcontainer`, `.idea`, `.vscode` to `DEFAULT_EXCLUDES` so designdoc stops paying for LLM analysis on committed-but-not-product-code tooling dirs.
Why
Real-repo eval (designdoc 1.2.0 against agent-brain — see #41 for that run) indexed and paid for 7 file summaries on tooling artifacts: 4 under `.claude/skills/.../sample-cli/` (Claude Code skill samples), 3 under `.opencode/`. ~$0.85 of $14.99 budget wasted before the run halted mid-Stage-2.
Modern dev workflows commit these configs all the time. Treating them as documentation targets is never what the user wants.
Changes
Invariants
Pure discover-stage change. No `loop.py`, no `verdict.py`, no `mermaid/loop.py` touched. Gen-3 invariants (MAX_ATTEMPTS=3, checker isolation, schema-validated verdicts, mermaid two-checker, HIL fallback) not in scope.
Verification
Related
🤖 Generated with Claude Code