Codebase express
Целевой экспресс-анализ ОДНОЙ конкретной области/модуля/фичи кодовой базы с gap-анализом текущего состояния против желаемого. Используй когда пользователь просит изучить конкретную область проекта, понять как работает определённый модуль/фича, сравнить текущую реализацию с желаемой, или говорит 'разбери модуль X', 'экспресс-анализ по теме Y', 'что сейчас есть по теме X'. Для обзора ВСЕГО незнакомого проекта целиком (архитектура, стек, точки входа, бизнес-цели) — см. code-archaeologist.From its SKILL.md
npx -y skills add goldenprofile/llm-skills --skill codebase-expressAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
11.1 KB, ~2.8k tokens by cl100k_base, as published. Nobody here has run it
Codebase Express
Целевой экспресс-анализ конкретного аспекта кодовой базы.
Для обзорного анализа всего проекта (незнакомая кодовая база целиком: архитектура,
точки входа, бизнес-цели) см. навык code-archaeologist. Этот навык — про адресное
исследование одной области (subject) с опциональным gap-анализом против цели.
Роль
Ты — Senior Software Analyst. Твоя задача — быстро исследовать конкретную область кодовой базы, составить карту текущего состояния и, если указана цель, провести gap-анализ.
Окружение
Среда — Windows/PowerShell. Для поиска файлов и контента предпочитай инструменты
Glob/Grep/Read вместо find/grep/cat. Навык фреймворк-независимый: паттерны
поиска ниже даны для Django, FastAPI и aiogram — выбирай те, что подходят проекту
(определи стек по requirements.txt/pyproject.toml, прежде чем искать).
Входные данные
Пользователь передаёт:
-
subject (обязательный) — что конкретно изучаем:
- "аутентификация и авторизация"
- "как parking модуль обрабатывает SSL"
- "система уведомлений"
- "обработка платежей"
-
goal (опциональный) — желаемое состояние / что нужно проверить:
- "все SSL сертификаты через Let's Encrypt с авто-обновлением"
- "REST API соответствует OpenAPI 3.0"
- "покрытие тестами критических путей"
Если subject неясен — уточни у пользователя.
Процесс (3 фазы)
Фаза 1: Разведка subject
Цель: Найти все файлы и модули, связанные с subject.
Стратегия поиска:
Сначала — два независимых поиска параллельно (один вызов, оба инструмента):
- Glob: файлы по имени — glob-паттерны, связанные с subject
(например
**/*auth*.py,**/notifications/**). - Grep: по содержимому — ключевые термины subject в коде (output_mode "files_with_matches", при необходимости "content" с контекстом).
Затем — Read найденных ключевых файлов (зависит от результатов Glob/Grep, поэтому идёт следующим шагом), чтобы ответить «Как реализован [subject]?».
Если ни Glob, ни Grep ничего не нашли — вероятно, subject в проекте не реализован. Это валидный результат: сообщи об этом прямо (при наличии goal — все требования попадут в статус GAP).
Что искать (паттерны сгруппированы по стеку — бери релевантные проекту):
| Артефакт | Django | FastAPI | aiogram |
|---|---|---|---|
| Модели/данные | class.*Model, models.py | class.*Base (SQLAlchemy), models.py | модели БД, если есть |
| Схемы/контракты | serializers.py | Pydantic-схемы (class.*BaseModel), schemas/ | — |
| Точки входа | views.py, viewsets.py, @api_view | APIRouter, @router.(get|post), app = FastAPI() | Router(), @router.message, @dp.message |
| Роутинг | urls.py, urlpatterns | include_router, префиксы роутеров | Router, dp.include_router |
| Сервисы/логика | *_service.py, services/, *Service | services/, зависимости Depends(...) | хендлеры, services/ |
| Состояние/DI | сигналы, middleware | Depends, lifespan, pydantic-settings | FSM (StatesGroup), middlewares, фильтры |
| Фоновые задачи | tasks.py, @shared_task, @app.task | BackgroundTasks, Celery/ARQ | отдельный polling-воркер, планировщики |
| Тесты | test_*.py, tests/, conftest.py | то же + httpx/TestClient | то же + мок Bot/Dispatcher |
| Шаблоны/UI | templates/, *.html | Jinja2, если есть | клавиатуры (*Keyboard*, InlineKeyboard) |
| Конфиги | settings.py, .env | pydantic-settings, .env | .env, конфиг бота/токена |
| Миграции | migrations/ | Alembic (versions/, alembic.ini) | Alembic, если есть БД |
| CLI | management/commands/ | click/typer, if __name__ == "__main__" | if __name__ == "__main__" (запуск polling) |
Результат фазы: Список ключевых файлов с кратким описанием роли каждого.
Фаза 2: Экспресс-анализ
Цель: Понять как это работает сейчас.
Прочитай ключевые файлы из Фазы 1 и определи:
-
Структура модулей:
- Какие модули/приложения задействованы
- Как они связаны между собой (импорты, зависимости)
-
Точки входа (проследи цепочку до данных):
- HTTP endpoints: Django
URL → View → Service → Model; FastAPIrouter → Depends → service → модель - Telegram-хендлеры (aiogram):
Router → handler → FSM/service - CLI команды, management-команды
- Фоновые задачи: Celery / ARQ /
BackgroundTasks/ polling-воркер - Signals / hooks / middlewares
- HTTP endpoints: Django
-
Поток данных:
- Откуда приходят данные
- Как обрабатываются
- Куда сохраняются / отправляются
-
Внешние зависимости:
- Сторонние сервисы и API
- Библиотеки специфичные для subject
- Инфраструктурные зависимости (БД, кэш, очереди)
Правило глубины: Читай только файлы, непосредственно связанные с subject.
Фаза 3: Gap-анализ + План действий
Выполняется всегда, но формат зависит от наличия goal.
Если goal указан:
Сравни текущее состояние (Фаза 2) с желаемым (goal):
-
Декомпозируй goal на конкретные проверяемые требования
-
Для каждого требования определи статус:
- OK — реализовано, работает
- PARTIAL — частично реализовано
- GAP — отсутствует
- RISK — реализовано, но с проблемами
-
Сформируй план действий для закрытия gap-ов
Если goal не указан:
Дай карту + наблюдения по subject (не полноценный аудит — для этого есть
профильные навыки python-project-audit / django-audit / techlead-ai):
- Карта текущего состояния (что есть, как связано)
- Наблюдения: на что стоит обратить внимание, очевидные риски
- Точечные рекомендации в рамках subject
Формат вывода
## Subject: [тема анализа]
### Текущее состояние
**Ключевые файлы:**
- `path/to/file.py:42` — [роль файла, 5-10 слов]
- ...
**Архитектура:**
[Краткое описание: какие модули, как связаны, поток данных]
**Зависимости:**
- Внутренние: [какие модули проекта задействованы]
- Внешние: [библиотеки, сервисы]
### Gap-анализ
| # | Требование | Статус | Комментарий |
|---|------------|--------|-------------|
| 1 | ... | OK | ... |
| 2 | ... | GAP | ... |
| 3 | ... | PARTIAL| ... |
**Итого:** X из Y требований выполнено, Z gap-ов.
### План действий
Приоритизированный список конкретных шагов:
1. **[Критичность: HIGH/MEDIUM/LOW]** — Описание действия
- Файлы: `path/to/file.py`
- Что сделать: [конкретно]
2. ...
Ограничения
- Не перечитывай весь проект — фокусируйся только на subject
- Не запускай runtime-команды проекта (миграции,
runserver, тесты, запуск бота) — только статический анализ кода (Read, Grep, Glob) - Не создавай файлы — навык только анализирует и выдаёт отчёт
- Будь конкретен — указывай точные пути файлов, номера строк, имена классов/функций
- Не выдумывай пути — указывай только реально найденные через Glob/Grep/Read файлы и строки; не достраивай «правдоподобные» имена по памяти
- До 500 строк вывода — если subject обширный, выдели топ-10 критичных находок
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.