SKILL.md
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.mdexists at the repo root - CLAUDE.md Enforcement: Check if using vigiles v2 specs (
CLAUDE.md.spec.tsexists) or v1 annotations (Enforced by:in CLAUDE.md). v2 specs = higher maturity. - Type-Safe Specs: Check for
CLAUDE.md.spec.tsor*.spec.tsfiles — 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),opentelemetryin source files - Scheduled Agent Tasks: Look for cron patterns in CI configs,
.github/workflows/withschedule: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.