Ai-agent-skills brownfield-chat
Natural-language Q&A across the full codebase. Use for multi-module questions, "what breaks if", git history, cross-cutting queries, and anything spanning more than one file. For a single-file lookup use brownfield-query instead.
install
source · Clone the upstream repo
git clone https://github.com/wednesday-solutions/ai-agent-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/wednesday-solutions/ai-agent-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/brownfield-chat" ~/.claude/skills/wednesday-solutions-ai-agent-skills-brownfield-chat && rm -rf "$T"
manifest:
skills/brownfield-chat/SKILL.mdsource content
When to use
- "What breaks if I change X?" (multi-file blast radius)
- "Who last touched auth.ts?" (git history)
- "What changed in the last 30 days?" (git diff summary)
- "Which files have no tests and high risk?" (graph filter)
- "What does tokenService do?" (summary lookup)
- "What does X import / who imports X?" (structural lookup)
- Any question spanning multiple modules or layers
When NOT to use
- Architecture rules / boundary enforcement → use brownfield-drift
- About to edit a file → use brownfield-fix first
How to answer — by question type
Answer ALL questions by reading pre-built files with the Read tool.
Do NOT call
via Bash — read the files directly to avoid opening a terminal.wednesday-skills chat
Summary / "what does X do?"
→ find the file entryRead .wednesday/codebase/summaries.json- If not in summaries,
→ search for the file sectionRead .wednesday/codebase/MASTER.md - Report the summary + risk score + blast radius count
Structural / "what does X import / who imports X?"
→Read .wednesday/codebase/dep-graph.jsonnodes["<file>"]- Report
,imports[]
,importedBy[]
,exports[]
,riskScoreisEntryPoint
Blast radius / "what breaks if I change X?"
Read .wednesday/codebase/dep-graph.json- BFS over
starting from the target file (depth ≤ 5)importedBy - Report: direct dependents, transitive count, any cross-language hits
Graph filter / "which files have risk > 80?"
→ iterateRead .wednesday/codebase/dep-graph.jsonnodes- Filter by the requested criteria (riskScore, lang, isEntryPoint, etc.)
- Return ranked list
Git history / "who wrote X / what changed recently?"
for file historyBash(git log --follow --oneline -20 -- <file>)
for recent changesBash(git log --since="30 days ago" --oneline)- Git history is the only case that needs a Bash call
Path traversal / "how does a request reach X from Y?"
Read .wednesday/codebase/dep-graph.json- BFS through
edges from source to target (depth ≤ 6)imports - Report the shortest path found
Architecture overview
— entry points, primary flows, danger zonesRead .wednesday/codebase/MASTER.md
— god files, circular depsRead .wednesday/codebase/analysis/legacy-report.json
Source citation
Always end your answer with the source used:
— structural answerdep-graph.json
— cached summarysummaries.json
— architecture / danger zoneMASTER.md
— history / authorshipgit log
— data missing, tell dev to runnot-mappedwednesday-skills fill-gaps --file <file>
Never
- Call
via Bash — read the files directly insteadwednesday-skills chat - Send the full dep-graph.json to any LLM — read only the relevant nodes
- Answer from Claude training knowledge about this specific codebase
- Guess when graph data is missing — "Not mapped" is the correct answer
- Load more than 20 nodes into any LLM call
- Read raw source files (*.ts, *.go, etc.) to answer structural questions