python-project-audit
Skill3 starsChanged 3 months agoMITView on GitHub
Проект выглядит законченным — проверить, так ли это, и выставить оценку: незавершённый код и заглушки, критические проблемы, мёртвые куски, слабые места перед выкаткой. Статанализ (pylint, bandit, mypy, radon, vulture) плюс ручной обход чек-листа; на выходе отчёт с баллами по разделам и вердиктом. FastAPI, Django, Flask. Используй когда пользователь просит «проверить готовность проекта к деплою», «отчёт о готовности к запуску в режиме MVP», «найти незавершённый код и критические проблемы», оценить законченность и целостность кодовой базы, или готовится к релизу. Уровень проекта, не диффа: одно изменение — change-review; Django-специфика по линзам — django-audit; понять устройство без оценки — codebase-recon.
- Reads credentials
- Installs packages
In this repository25 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- advanced-seo-optimizerSkill
- agent-workflowSkill
- aiogram-bot-auditorSkill
- change-reviewSkill
- codebase-reconSkill
- dependency-auditorSkill
- django-auditSkill
- docs-generatorSkill
- fastapi-architectSkill
- git-commit-plannerSkill
- goal-pipelineSkill
- harness-engineeringSkill
- migration-safety-auditorSkill
- obsidianSkill
- postgres-performanceSkill
- ratchet-loopSkill
- release-managerSkill
- sageSkill
- session-catchupSkill
- spec-writerSkill
- test-coverage-auditorSkill
- ui-dnaSkill
- vps-opsSkill
The file
Files
Python Project Audit
Проверка заявленной готовности против фактической: проект выглядит законченным — разобраться, так ли это. Полный pipeline: статический анализ → ручной review → отчёт с баллами и вердиктом.
Это статический аудит: код только читается и анализируется инструментами.
НЕ запускай тесты, python manage.py или приложение — не нужно для аудита.
Шаг 0. Разведка
Собери контекст перед анализом. Используй инструменты Grep/Glob/Read вместо POSIX-утилит — они не зависят от оболочки на машине пользователя:
- Структура и размер:
Globпо**/*.py— посчитай количество файлов. - Фреймворк:
Grepпоfastapi|FastAPI,django|Django,flask|Flask(output_mode: files_with_matches). - Зависимости:
Readдляrequirements.txt,pyproject.tomlилиPipfile. - Инфраструктура:
GlobпоDockerfile,docker-compose.yml,.github/workflows/*,.gitlab-ci.yml,Jenkinsfile. - Тесты:
Globпо**/test_*.py,**/conftest.py. - Конфиги/ENV:
Globпо.env*,*.ini,*.cfg,alembic.ini.
Определи: фреймворк (FastAPI / Django / Flask), размер (файлы, строки),
зрелость (тесты, CI, Docker, миграции). Затем прочитай ключевые файлы:
точка входа (main.py / app.py / manage.py), конфигурация, роутинг, модели.
Шаг 1. Автоматический статический анализ
Первичный стек — ruff (lint + format + security-правила S), pip-audit
(уязвимости зависимостей) и типизатор по проекту (ty, mypy или pyright —
что реально настроено; ничего — зафиксируй как находку). Каждый инструмент —
отдельное «испытание».
Опциональная глубина — только если проект её уже ведёт или пользователь
согласился: pylint (семантика поверх ruff), bandit (глубокий security-скан
в дополнение к ruff check --select S), radon (сложность), vulture
(мёртвый код). Не тащи эти инструменты в проект насильно.
Установка — только с согласия пользователя. Никогда не используй
pip install --break-system-packages (ломает системный Python). Первый ряд —
запуск без установки:
uvx <tool> ...(uvx ruff check .,uvx pip-audit) — если естьuv;- или
pipx run <tool>; - или установку в venv проекта (
.venv), если он есть.
Подробные команды и разбор вывода каждого испытания — в references/static-analysis.md.
Если инструмент не установился или упал — не останавливайся, отметь в отчёте и двигайся дальше.
Шаг 2. Ручной review — 8 испытаний
Прочитай код и оцени каждую категорию по шкале 0-10. Для каждой находки указывай: файл, строку, что не так, как исправить.
Категории: Архитектура, Обработка ошибок, Безопасность, Производительность/Highload, Тестирование, Инфраструктура/деплой, Качество кода и стиль, Документация/DX.
Полный чек-лист по каждому испытанию с антипаттернами — в references/manual-review-checklist.md.
Для оценки тестового покрытия (Испытание 5) полезен связанный навык test-coverage-auditor.
Шаг 3. Подсчёт баллов
| Испытание | Вес | Баллы (0-10) | Взвешенный |
| Архитектура | 15% | ? | ? |
| Обработка ошибок | 10% | ? | ? |
| Безопасность | 20% | ? | ? |
| Производительность | 15% | ? | ? |
| Тестирование | 15% | ? | ? |
| Инфраструктура | 10% | ? | ? |
| Качество кода | 10% | ? | ? |
| Документация | 5% | ? | ? |
| ИТОГО | 100% | ?/10 |
Градации
- 9-10 — Production-ready, можно деплоить под нагрузку
- 7-8 — Хороший проект, нужны точечные улучшения
- 5-6 — MVP-уровень, серьёзная доработка перед продом
- 3-4 — Прототип, много работы впереди
- 0-2 — Нужен рефакторинг с нуля
Шаг 4. Генерация отчёта
Сохрани в docs/audit-YYYY-MM-DD.md. Шаблон отчёта — в
references/report-template.md.
Шаг 5. Презентация результатов
После генерации отчёта:
- Покажи итоговый балл и таблицу прямо в чате.
- Выдели топ-3 критичных проблемы с конкретными решениями.
- Предложи: «Хочешь, чтобы я исправил критичные проблемы прямо сейчас?»
Адаптация под фреймворки
Дополнительные проверки для FastAPI / Django / Flask — в references/framework-specifics.md.
Важные принципы
- Конкретика: «В файле X, строка Y, вот проблема, вот решение» — не «улучшите безопасность».
- Приоритизация: критичное → важное → nice-to-have.
- Контекст: учитывай стадию проекта (MVP vs зрелый прод).
- Баланс: обязательно отмечай сильные стороны, не только проблемы.
- Actionable: каждая находка = конкретное действие, которое можно выполнить.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

