← ClaudeAtlas

convention-learnerlisted

Detects and enforces this project's coding conventions by analyzing existing code before generating new code. Learns naming, folder structure, test organization, and style from the codebase. Use for "conventions", "coding standards", "project patterns", "enforce style", "detect patterns", "learn conventions", "code consistency".
lamuniercosta/dotnet-agent-harness · ★ 0 · AI & Automation · score 72
Install: claude install-skill lamuniercosta/dotnet-agent-harness
# Convention Learner Adapted from [codewithmukesh/dotnet-claude-kit](https://github.com/codewithmukesh/dotnet-claude-kit) (MIT). The upstream Roslyn MCP calls are replaced with Grep/Glob/Read plus this harness's gate scripts. ## Core Principles 1. **Observe before enforcing.** Never impose a convention without first reading the existing code. Detect first, then match. 2. **Repo config always wins.** `.editorconfig`, `Directory.Build.props`, `CodeMetricsConfig.txt`, `global.json`, `harness.yml`, and the repo's rules override any generic default. 3. **Use objective signals.** Grep/Glob for structure and naming; run the gate scripts for quality signals. Tools give data; file reads confirm intent. 4. **Document findings where they live.** Recurring conventions belong in a rules file — `.cursor/rules/*.mdc` on Cursor, an `@import` from `CLAUDE.md` on Claude Code. Domain terms belong in `CONTEXT.md` via `/domain-modeling`. Undocumented conventions are lost. 5. **Consistency over theoretical purity.** Match the dominant existing pattern even if another is arguably better. ## Detection flow **Step 1 — Structure.** `Glob` `src/**` and `tests/**`, then name the organising principle out loud before reading any code. The three you will actually meet: - **Layered** — top-level projects like `Api` / `Business` / `Data` / `Common` / `Setup`, features as subfolders inside each (`Business/Commands/{Feature}`). Dependencies point one way. - **Vertical slice** — top-level `Features/{Featu