Skip to content

VKirill/audit-pipelines

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Кирилл Вечкасов

Audit Pipelines

Глубокий аудит кода за один прогон Claude Code.
На выходе — приоритизированный roadmap улучшений с пруфами из кода.

Telegram Website License

Claude Code Serena MCP GitNexus MCP Evidence-based Read-only


Если ты владелец продукта, тимлид, инвестор или просто человек, у которого есть кодовая база и нет ответа на вопрос «а что там вообще происходит и куда это всё катится» — это для тебя.


Зачем это нужно

У любого живого проекта со временем накапливается технический долг. Это как захламлённая квартира: вроде жить можно, но новый шкаф уже не воткнуть, а лампочку поменять — это целое приключение, потому что выключатель завязан на стиральную машину через десять проводов.

В коде то же самое. Симптомы знакомые:

Симптом Что это значит на самом деле
«Здесь страшно трогать» Нет тестов, изменения каскадируют непредсказуемо
Простая фича делается две недели вместо двух дней Архитектурный долг съел скорость команды
Сайт тормозит, никто не знает почему Нет мониторинга и замеров производительности
Зависимости не обновлялись с динозавров Известные дыры в безопасности; supply chain-риск
«Тесты есть, но мы не уверены что они работают» Test smells, низкое покрытие критичных путей

Чтобы починить — сначала нужно увидеть. Этим и занимается аудит.

Раньше для этого нанимали консультанта на $200/час, который три недели ходил по коду и в конце выдавал PDF на 80 страниц. Сейчас — это делает Claude Code за пару часов и стоит как обед в кафе.

Эти пайплайны — готовый набор инструкций, который превращает Claude из «умного чатбота» в систематичного аудитора. Он не пропускает фазы, не придумывает находки из воздуха, и в конце выдаёт roadmap с приоритетами — что чинить сейчас, что через месяц, а что вообще не трогать.


Пять пайплайнов — выбери свой

Архитектурный аудит JS/TS с подготовкой к продакшену

13 фаз · MCP-first · single-arg autonomous mode.

PROJECT_PATH=/your/project

Это весь required input. ИИ сам:

  • Pipeline install — копирует nodejs-audit/ в проект
  • Auto-detectnpm/yarn/pnpm/bun, TS/JS, монорепо
  • MCP-first probe — gitnexus / serena / pipeline-память (fallback на grep)
  • Hot-spot матрицаchurn × fan-in (Tornhill Crime Scene)
  • DDD + Clean Architecture — anemic vs rich, ACL, aggregates
  • OWASP Top 10 + ASVS L1-L2 чек-лист
  • Trade-off matrix — Richards & Ford 10 ilities (current → target)
  • 5 артефактов на выходе: FINAL-REPORT.md + _meta.json + QUICK-WINS.md + ROADMAP.md + ADR-DRAFTS/ + REFACTORING/ (file-level таргеты с fitness functions)

Для: любого JS/TS проекта (Node-бэкенд, React/Next/Nuxt/Vue, монорепо, бот, CLI). Когда нужен не только linting, но и архитектурный взгляд + roadmap подготовки к продакшену.

Запустить → · 📋 MASTER_PROMPT · 📚 REFERENCES (15 книг)

React / Next.js сайты — глубокий аудит

7 фаз: архитектура → roadmap.

  • Архитектура и тех.долг
  • Performance + Core Web Vitals
  • Accessibility (WCAG 2.2) и SEO
  • Security: CVE, секреты, XSS
  • DX, тулинг, CI/CD
  • Roadmap Now / Next / Later

Для: маркетинговых сайтов, e-commerce, SPA, лендингов на Next.js. Когда нужен глубокий проход с навигацией по графу кода.

Запустить →

🛡️ codebase/

Универсальный аудит — любой стек

13+ фаз с hard exit gates.

  • Trust Map (потоки данных)
  • Money & State Invariants
  • Self-audit + adversary review
  • Hard exit gates через скрипты
  • Машинная сводка _meta.json для CI
  • Phase 11 deep-dive при critical

Для: бэкенда, API, ботов, монорепо. Python, Go, TypeScript, Java, Rust.

Запустить →

Безопасный CI/CD на GitHub

6 этапов аудита + 4 фазы внедрения.

  • Supply-chain hardening (SHA-пины, cooldown)
  • Least-privilege permissions
  • Harden-Runner + zizmor
  • OIDC вместо long-lived secrets
  • Готовый ci.yml под автодетект стека
  • Roadmap Phase 0 → 3

Для: любого GitHub-репо с CI или без. Учтены инциденты tj-actions, trivy-action, axios.

Запустить →

Глубокий аудит БД, single-command автономный

14 фаз · 30 детекторов · 11 ORM · Serena+GitNexus

PROJECT_PATH=/your/project

Это весь required input. ИИ автоматически:

  • Auto-detects mode — MCP postgres → env-файлы → config → fallback static
  • Live drift verification — invariant queries в проде (находит реальные утечки баланса)
  • Read-only safety — без verified read-only role → fallback static
  • SQLi detection через $queryRawUnsafe + ORM wrappers
  • Race conditions + Float-money + idempotency
  • FK priority by table size (live evidence cross-ref)
  • PII + endpoint-aware exposure (GitNexus route_map)
  • Auth bypass + cross-tenant leak (cypher queries)
  • Auto-fill phase 11 — trace + blast radius через gitnexus impact
  • ROADMAP time-budget — Quick wins / Sprint plan / Quarter goals
  • Verify-fix prompt — re-check applied fixes
  • Multi-project compare — severity matrix между проектами

Default live behaviour: ИИ ищет DSN, проверяет read-only роль, переключается на live mode для глубоких findings. Если опасно (production user / нет read-only роли) — fallback на static с warning.

Override: mode=static для forced static, DATABASE_URL=<dsn> для явного DSN.

Для: проектов с БД (Postgres, MySQL, Mongo, ...). 11 ORM: Prisma, Drizzle, TypeORM, Sequelize, Mongoose, SQLAlchemy, Django, GORM, ActiveRecord, Hibernate, raw SQL.

Запустить →

Какой пайплайн выбрать?

flowchart TD
    A[У тебя проект] --> Z{Что болит<br/>сильнее всего?}
    Z -- «CI красный или его нет,<br/>боюсь supply-chain» --> H[ci-hardening/]
    Z -- «Тормозит, теряет данные,<br/>боюсь миграций» --> DB[database-audit/]
    Z -- «Хочу понять что в коде» --> Q{JS/TS проект?<br/>Нужен быстрый<br/>первый проход?}
    Q -- Да, архитектурный аудит<br/>с MCP + roadmap к продакшену --> N[nodejs-audit/]
    Q -- Нужен глубокий аудит --> B{Это React или<br/>Next.js сайт?}
    B -- Да, чистый фронт --> C[frontend/]
    B -- Есть бэкенд / API --> D[codebase/]
    B -- Не уверен --> E{Есть деньги,<br/>транзакции,<br/>auth?}
    E -- Да --> D
    E -- Нет --> F{Нужны hard gates<br/>и self-audit?}
    F -- Да --> D
    F -- Нет --> C

    style N fill:#fff2a8,stroke:#b7950b,color:#000
    style C fill:#fde7c8,stroke:#d97757,color:#000
    style D fill:#d4e6f1,stroke:#2c3e50,color:#000
    style H fill:#f5d5d5,stroke:#c0392b,color:#000
    style DB fill:#d5f5e3,stroke:#27ae60,color:#000
Loading

Пайплайны не взаимоисключают друг друга. Хорошая последовательность для JS/TS: nodejs-audit (быстрый обзор) → правки по roadmap → codebase или frontend (глубокий) → database-audit если есть БД → ci-hardening чтобы зашить найденное в CI.


Что получишь на выходе

Главный артефакт всех пяти пайплайнов — ROADMAP. У nodejs-audit дополнительно — _meta.json для CI, QUICK-WINS.md с атомарными коммитами на неделю, ADR-DRAFTS/ с черновиками архитектурных решений и REFACTORING/ с file-level таргетами и fitness functions. У ci-hardening — готовый ci.yml. У database-audit — машинная сводка _meta.json и _known_unknowns.md (что осталось проверить). Это не «80 страниц красивых слов», а конкретный список:

🔴 Сейчас (Now):
  └─ [critical] SQL-инъекция в /api/search — api/search.ts:42
     → как чинить, сколько займёт, что сломается если не починить

🟡 Дальше (Next):
  └─ [high] N+1 запрос в загрузке профиля — lib/user.ts:118
     → меняет ответ с 4 секунд на 200 мс

🟢 Потом (Later):
  └─ [medium] Дублирование логики валидации — 6 мест
     → не критично, но затрудняет добавление новых полей
Что есть у каждой находки
Поле Что это
severity Насколько критично: critical / high / medium / low
evidence Точное место в коде (файл:строка) с цитатой
impact Что это значит для бизнеса
fix Как чинить — конкретные шаги, не «улучшить X»
effort Сколько времени займёт (S/M/L)
confidence Насколько аудитор уверен в находке (high/medium/low)
references Ссылки на документацию / OWASP / книги

Никаких «возможно», «вероятно», «было бы неплохо». Только факты с пруфами.


Как этим пользоваться (для не-программистов)

1️⃣ Дай ссылку на этот репозиторий своему разработчику (или нанятому подрядчику) и попроси прогнать аудит. Это ~2-3 часа его времени.
2️⃣ Получи ROADMAP.md — читать его можно прямо в GitHub или в любом текстовом редакторе. На русском, человекочитаемый.
3️⃣ Обсуди приоритеты с командой. Roadmap уже отсортирован по формуле (impact × confidence) / effort, но решение что брать в работу — за тобой.
4️⃣ Раз в квартал — повтори. Сравнишь динамику: что починили, что новое появилось, движется ли проект в правильном направлении.

Если разработчика нет — можно прогнать самостоятельно. Нужен только установленный Claude Code и ~30 минут на установку зависимостей. Дальше — копипаст команды в чат.


Что нужно установить (один раз)

Claude Code

claude.com/claude-code
основной оркестратор

Serena

oraios/serena
семантика кода (LSP)

GitNexus

npmjs.com/gitnexus
граф кода + история

Команды установки — в README конкретного пайплайна. Для ci-hardening хватает только Claude Code. Для database-audit опционально — psql/mysql/mongosh для live-mode.


Принципы, которые зашиты во все четыре пайплайна

📂 Read-onlyПайплайн ничего не меняет в коде. Только смотрит и пишет отчёт.
🔬 Факты, не мненияКаждая находка с измерением или цитатой. Никаких «мне кажется».
🔥 Hot spots firstЧиним там, где часто ломается (методология Adam Tornhill).
🧪 Тесты до рефакторингаСначала характеризационные тесты, потом изменения (Michael Feathers).
🎯 Точечные fix'ыНикаких переписываний с нуля.
⚖️ Severity по импактуНикто не получает critical за «непривычное именование».

На какой методике это построено

Не «придумано в гараже». В основе — классика индустрии:

Архитектура и тех.долг

  • Robert C. Martin — Clean Architecture
  • Martin Fowler — Refactoring
  • Michael Feathers — Working Effectively with Legacy Code
  • John Ousterhout — A Philosophy of Software Design
  • Adam Tornhill — Your Code as a Crime Scene

Resilience и распределённые системы

  • Michael Nygard — Release It!
  • Martin Kleppmann — Designing Data-Intensive Applications
  • Pat Helland — Life Beyond Distributed Transactions
  • Google — SRE Book

Базы данных и схемы

  • C.J. Date — Database Design and Relational Theory
  • Bill Karwin — SQL Antipatterns
  • Markus Winand — Use the Index, Luke / SQL Performance Explained
  • Joe Celko — SQL for Smarties / SQL Programming Style
  • Schwartz et al. — High Performance MySQL; Greg Smith — PostgreSQL High Performance
  • Sadalage & Ambler — Refactoring Databases
  • Vlad Mihalcea — High Performance Java Persistence
  • Bernstein & Newcomer — Principles of Transaction Processing

Performance, A11y, SEO

  • Ilya Grigorik — High Performance Browser Networking
  • Jeremy Wagner — Web Performance in Action
  • Heydon Pickering — Inclusive Components
  • W3C WCAG 2.2 · WAI-ARIA APG
  • Web.dev (Core Web Vitals)

Security и supply-chain

  • OWASP Top 10 + Cheat Sheets
  • Saltzer & Schroeder — Protection of Information
  • GitHub Docs — Security hardening for Actions
  • GitHub Actions 2026 Security Roadmap
  • StepSecurity Harden-Runner · zizmor · OpenSSF Scorecard
  • Incident reports: tj-actions, trivy-action, axios, bitwarden/cli

Когнитивные ошибки в анализе

  • Daniel Kahneman — Thinking, Fast and Slow
  • Forsgren / Humble / Kim — Accelerate

Лицензия

MIT. Бери, форкай, адаптируй под себя — добавляй фазы, меняй пороги, расширяй чек-листы. Это набор markdown-инструкций + bash/python скриптов, не закрытый продукт.


Автор

Кирилл Вечкасов

Кирилл Вечкасов AI Development Agency

Telegram Website

Если нужна помощь с прогоном аудита на твоём проекте
или хочешь адаптировать пайплайн под специфические требования — пиши, обсудим.

About

Two ready-to-run audit pipelines for Claude Code: deep frontend (React/Next.js) and universal codebase audit with built-in self-audit and evidence validation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors