Scan the current repository and score its feedback loop maturity for AI-assisted development.
Instructions
Analyze this repository and score its feedback loop maturity using the levels below. Check for each signal, then output a summary report.
Maturity Levels
Level 0 — Vibes
No CI config, no linter rules, no CLAUDE.md. The AI agent is flying blind.
Level 1 — Guardrails
Has CI + standard linters, but no custom rules. The agent gets basic feedback but can't learn project-specific conventions.
Level 2 — Architecture as Code
Has custom lint rules, CLAUDE.md rules have enforcement annotations. The agent gets rich, project-specific feedback.
Level 3 — The Organism
Has CI + custom rules + screenshot/visual tests + observability + scheduled agent tasks. The entire development loop is instrumented.
Signals to Check
Scan the repository for the following and note which exist:
- CI Configuration: Look for
.github/workflows/, .circleci/, Jenkinsfile, .gitlab-ci.yml, bitbucket-pipelines.yml, .travis.yml, etc.
- Linter Config (language-aware):
- JS/TS:
eslint.config.*, .eslintrc*, biome.json, .prettierrc*, deno.json
- Python:
pyproject.toml (look for [tool.ruff], [tool.pylint], [tool.flake8]), setup.cfg, .flake8, ruff.toml
- Rust:
clippy.toml, .clippy.toml, rustfmt.toml
- Go:
.golangci.yml, .golangci.yaml
- Ruby:
.rubocop.yml
- Java/Kotlin:
checkstyle.xml, pmd.xml, detekt.yml
- Custom Lint Rules: Look for custom plugins, rule directories, or inline rule definitions in linter configs
- JS/TS:
eslint-plugin-*, eslint-rules/ directories
- Python: custom Ruff/Pylint plugins, AST-based checks
- Rust: custom Clippy lints
- Go: custom analyzers
- CLAUDE.md: Check if
CLAUDE.md exists at the repo root
- CLAUDE.md Enforcement: Check if using vigiles v2 specs (
CLAUDE.md.spec.ts exists) or v1 annotations (**Enforced by:** in CLAUDE.md). v2 specs = higher maturity.
- Type-Safe Specs: Check for
CLAUDE.md.spec.ts or *.spec.ts files — indicates typed spec compilation via vigiles v2
- Generated Types: Check for
.vigiles/generated.d.ts — indicates linter rules are type-checked at authoring time
- Screenshot/Visual Tests: Look for Playwright (
playwright.config.*), Cypress (cypress.config.*), Chromatic, Percy, BackstopJS configs
- Observability: Search for imports/usage of
@sentry/, dd-trace, @datadog/, newrelic, @opentelemetry/, sentry_sdk, structlog, tracing (Rust), opentelemetry in source files
- Scheduled Agent Tasks: Look for cron patterns in CI configs,
.github/workflows/ with schedule: triggers, or references to scheduled Claude Code tasks
Output Format
## Feedback Loop Audit
**Repository:** <repo name>
**Primary language(s):** <detected languages>
**Score: Level X — <Name>**
### Signals Found
- [x] CI Configuration: <details>
- [ ] Custom Lint Rules: not found
- [x] CLAUDE.md: found, 5 enforced / 2 guidance / 1 missing
...
### Recommendations
1. <Most impactful next step to level up>
2. <Second recommendation>
3. <Third recommendation>
### How to Level Up
<Specific, actionable advice for reaching the next maturity level>
Be specific about file paths and what you found. Give actionable recommendations tailored to the project's language and toolchain.
1---2name: audit-feedback-loop3description: Scan the current repo and score its feedback loop maturity for AI-assisted development4---5
6Scan the current repository and score its feedback loop maturity for AI-assisted development.
7
8## Instructions
9
10Analyze this repository and score its **feedback loop maturity** using the levels below. Check for each signal, then output a summary report.
11
12### Maturity Levels
13
14**Level 0 — Vibes**
15No CI config, no linter rules, no CLAUDE.md. The AI agent is flying blind.
16
17**Level 1 — Guardrails**
18Has CI + standard linters, but no custom rules. The agent gets basic feedback but can't learn project-specific conventions.
19
20**Level 2 — Architecture as Code**
21Has custom lint rules, CLAUDE.md rules have enforcement annotations. The agent gets rich, project-specific feedback.
22
23**Level 3 — The Organism**
24Has CI + custom rules + screenshot/visual tests + observability + scheduled agent tasks. The entire development loop is instrumented.
25
26### Signals to Check
27
28Scan the repository for the following and note which exist:
29
301. **CI Configuration**: Look for `.github/workflows/`, `.circleci/`, `Jenkinsfile`, `.gitlab-ci.yml`, `bitbucket-pipelines.yml`, `.travis.yml`, etc.
312. **Linter Config** (language-aware):
32 - **JS/TS**: `eslint.config.*`, `.eslintrc*`, `biome.json`, `.prettierrc*`, `deno.json`
33 - **Python**: `pyproject.toml` (look for `[tool.ruff]`, `[tool.pylint]`, `[tool.flake8]`), `setup.cfg`, `.flake8`, `ruff.toml`
34 - **Rust**: `clippy.toml`, `.clippy.toml`, `rustfmt.toml`
35 - **Go**: `.golangci.yml`, `.golangci.yaml`
36 - **Ruby**: `.rubocop.yml`
37 - **Java/Kotlin**: `checkstyle.xml`, `pmd.xml`, `detekt.yml`
383. **Custom Lint Rules**: Look for custom plugins, rule directories, or inline rule definitions in linter configs
39 - JS/TS: `eslint-plugin-*`, `eslint-rules/` directories
40 - Python: custom Ruff/Pylint plugins, AST-based checks
41 - Rust: custom Clippy lints
42 - Go: custom analyzers
434. **CLAUDE.md**: Check if `CLAUDE.md` exists at the repo root
445. **CLAUDE.md Enforcement**: Check if using vigiles v2 specs (`CLAUDE.md.spec.ts` exists) or v1 annotations (`**Enforced by:**` in CLAUDE.md). v2 specs = higher maturity.
456. **Type-Safe Specs**: Check for `CLAUDE.md.spec.ts` or `*.spec.ts` files — indicates typed spec compilation via vigiles v2
467. **Generated Types**: Check for `.vigiles/generated.d.ts` — indicates linter rules are type-checked at authoring time
478. **Screenshot/Visual Tests**: Look for Playwright (`playwright.config.*`), Cypress (`cypress.config.*`), Chromatic, Percy, BackstopJS configs
489. **Observability**: Search for imports/usage of `@sentry/`, `dd-trace`, `@datadog/`, `newrelic`, `@opentelemetry/`, `sentry_sdk`, `structlog`, `tracing` (Rust), `opentelemetry` in source files
4910. **Scheduled Agent Tasks**: Look for cron patterns in CI configs, `.github/workflows/` with `schedule:` triggers, or references to scheduled Claude Code tasks
50
51### Output Format
52
53```
54## Feedback Loop Audit
55
56**Repository:** <repo name>
57**Primary language(s):** <detected languages>
58**Score: Level X — <Name>**
59
60### Signals Found
61- [x] CI Configuration: <details>
62- [ ] Custom Lint Rules: not found
63- [x] CLAUDE.md: found, 5 enforced / 2 guidance / 1 missing
64...
65
66### Recommendations
671. <Most impactful next step to level up>
682. <Second recommendation>
693. <Third recommendation>
70
71### How to Level Up
72<Specific, actionable advice for reaching the next maturity level>
73```
74
75Be specific about file paths and what you found. Give actionable recommendations tailored to the project's language and toolchain.