Audit codebases or Git changes for engineering risks and repository health using concrete evidence, coverage limits, and prioritized fixes. Use for comprehensive audits, focused quality or security reviews, and incremental PR audits. Ordinary feature implementation and quick code explanations do not need this skill.
90%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Produce a calm, evidence-based audit that identifies realistic risks, explains their impact, and proposes the smallest practical fixes.
Use the user's existing choices and authorization. Do not ask again for supplied information.
full. If the request leaves a material scope ambiguity, inventory the project with scripts/project_inventory.py <project-root> --format json and offer a few localized choices, then ask only about that ambiguity.stdout. Accept md, html, json, or both (Markdown + HTML) when requested. Write complete files to the requested location. Otherwise use audit-report-<project>-<date>.<ext> in the project root; use a time suffix if that name exists. Do not overwrite an earlier report accidentally.
html or both is requested, check if an HTML theme was specified (classic/legacy, obsidian, swiss, aurora, or random).classic — templates/audit-report.html)obsidian — templates/audit-report-obsidian.html,Raycast/Linear 暗黑硬核风格)swiss — templates/audit-report-swiss.html,Stripe Press 典雅纸质风,打印/汇报首选)aurora — templates/audit-report-aurora.html,现代交互控制台,支持日夜模式切换与即时搜索)random — 由 AI 从 3 款新版中随机选择一款)random is selected, pick one among obsidian, swiss, or aurora. Load the corresponding template from templates/..audit-reports/history/. Record timestamp, resolved commit(s), dirty worktree state, modes, scope, assessed scores, finding counts, and report path. stdout alone creates no files.prompts/*-audit.md. These filenames are the mode registry: omit full and incremental when listing focused dimensions. full covers all focused dimensions. incremental changes the Git scope; alone it covers all dimensions, or combine it with focused modes to narrow the review. full takes precedence over focused modes. Deduplicate overlapping findings by root cause.references/report-format.md, rubrics/severity.md, rubrics/confidence.md, rubrics/evidence.md, rubrics/coverage.md, and rubrics/scoring.md. Read rubrics/principles.md when design or maintainability analysis needs it.full or unrestricted incremental, use prompts/full-audit.md as the coverage checklist and read relevant focused prompts as each dimension is inspected. Do not preload every reference. Read references/tooling.md when configured checks could improve evidence; use examples only for calibration, never as findings to copy.templates/issue-card.md. Focused prompts add evidence or optional fields; they never replace the common contract. Include a concrete trigger, impact, minimal fix, regression verification, and effort estimate. A manual check or documentation check is appropriate when an automated regression test would add no confidence.templates/: audit-report.html for classic, or audit-report-obsidian.html, audit-report-swiss.html, audit-report-aurora.html for new designs). Include all selected dimensions, with evidence and explanations for those marked Not assessed. The shared reference defines format-specific markers, statistics, and empty-report behavior.python3 <skill-dir>/scripts/report_lint.py --modes <selected-modes> <report-file> for each generated file. Repair failures and rerun the relevant check. For stdout, apply the same checks manually. If tooling is unavailable, report the validation limit and perform the feasible manual checks; do not claim lint passed. If a validator defect prevents validation, preserve the report and explain the unresolved check instead of looping indefinitely.templates/remediation-plan.md only when a separate remediation plan is requested. If the user also requested implementation, finish the audit first, then fix the authorized scope.Auditing authorizes inspection and the requested report artifacts. Change application source, tests, configuration, or dependencies only when implementation is requested. Inspect configured commands before executing them; record expensive, destructive, externally mutating, or unavailable checks as limits when they cannot be run within the authorized scope.
.git, and build outputs by default. Inspect lockfiles when dependency, supply-chain, or release evidence requires them. Respect first-party vendored code and document overrides.rubrics/coverage.md. Report inspected evidence, excluded areas, commands and outcomes, and time/access limits.rubrics/severity.md. Principle heuristics and scanner severities cannot override this rubric.Redact secrets before including code or command excerpts in terminal output, reports, diagnostics, or conversation. Identify the file, location, key name, type, and exposure; use <redacted> for the value. Never print matched secret content to explain a lint failure. Recommend rotation when exposure is plausible. The report linter is a heuristic guard, not a complete secret scanner.
| Mode | Prompt | Focus |
|---|---|---|
full | prompts/full-audit.md | All dimensions + principles |
incremental | prompts/incremental-audit.md | Diff-based audit of changed files since git reference |
architecture | prompts/architecture-audit.md | Module boundaries, dependency direction, state ownership |
security | prompts/security-audit.md | Security risks |
stability | prompts/stability-audit.md | Reliability & errors |
performance | prompts/performance-audit.md | Realistic bottlenecks |
testing | prompts/testing-audit.md | Test quality & gaps |
maintainability | prompts/maintainability-audit.md | Complexity, coupling, principles |
design | prompts/design-audit.md | Engineering principles and design risk |
release | prompts/release-audit.md | Release readiness |
documentation | prompts/documentation-audit.md | Docs accuracy, setup, operator/developer guidance |
observability | prompts/observability-audit.md | Logging, metrics, tracing, health checks, alerting |
configuration | prompts/configuration-audit.md | Config validation, defaults, feature flags, env separation |
data-integrity | prompts/data-integrity-audit.md | Transactions, idempotency, migrations, invariants |
privacy | prompts/privacy-audit.md | PII, minimization, retention, deletion, data governance |
accessibility | prompts/accessibility-audit.md | Keyboard, focus, semantics, responsive and UX states |
supply-chain | prompts/supply-chain-audit.md | Provenance, reproducibility, CI integrity, signing |
cost | prompts/cost-audit.md | Resource economics, budgets, external API and LLM costs |
ai-safety | prompts/ai-safety-audit.md | Prompt injection, tool auth, RAG leakage, evals, cost abuse |
fallback | prompts/fallback-audit.md | Silent fallback, catch, defensive guessing |
testing-authenticity | prompts/testing-authenticity-audit.md | Real confidence vs green checkmarks |
type-safety | prompts/type-safety-audit.md | Unsafe blocks, assertions, boundary types |
frontend-state | prompts/frontend-state-audit.md | Component size, state, effects, coupling |
backend-api | prompts/backend-api-audit.md | API design, validation, data access patterns |
dependency-weight | prompts/dependency-weight-audit.md | Overweight deps, build toolchain |
code-consistency | prompts/code-consistency-audit.md | Naming, imports, patterns, style uniformity |
comment-coverage | prompts/comment-coverage-audit.md | Doc quality, stale comments, missing docs |
concurrency | prompts/concurrency-audit.md | Race conditions, deadlocks, atomicity, shared state, locking |
Use the seven score dimensions and mode mappings in rubrics/scoring.md; audit dimensions and score dimensions are different. Higher scores mean better quality. Assign evidence-based scores with a justification and coverage confidence. Default overall to the mean of assessed scores; exclude Not assessed dimensions. Use weights only when requested and document the policy. Scores summarize evidence, not release certification.
Before delivery, confirm scope and resolved Git references, required sections, selected-dimension coverage, complete findings, consistent counts and references, score direction/aggregation, redaction, and requested language/format. Zero findings and zero assessed scores are valid when explained. Remove placeholders and example data. For both, both files must describe the same findings and scores.
XiNian-dada/Fuck_My_Shit_Mountain
6d3d6ef
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.