Короткая шпаргалка для повседневной работы
Основные команды¶
| Команда | Пример | Описание |
|---|---|---|
/help |
/help review |
Показать справку |
/scenarios |
/scenarios security |
Список сценариев |
/select |
/select 02 |
Сменить сценарий |
/stat |
/stat |
Показать статистику БД |
/query |
/query SELECT * FROM nodes_method LIMIT 5 |
Выполнить SQL |
/review |
/review git |
Проверка кода |
/config |
/config llm temperature 0.5 |
Изменить настройки |
/project |
/project list |
Управление проектами |
/cpg |
/cpg callers heap_insert |
Запросы к GoCPG |
/explain |
/explain heap_insert |
Глубокий анализ метода |
/watch |
/watch start |
Панель мониторинга |
/exit |
/exit |
Сохранить и выйти |
Сценарии по ролям¶
Разработка¶
/select 01 → Онбординг "Где определена функция X?"
/select 04 → Разработка функций "Куда добавить хук?"
/select 05 → Рефакторинг "Найти мёртвый код"
/select 06 → Производительность "Найти медленные функции"
/select 15 → Отладка "Проследить путь выполнения"
QA и тестирование¶
/select 07 → Покрытие тестами "Что не покрыто тестами?"
/select 09 → Проверка кода "Проверить эти изменения"
/select 12 → Технический долг "Оценить объём долга"
/select 13 → Массовый рефакторинг "Найти все использования X"
Безопасность¶
/select 02 → Аудит безопасности "Найти SQL-инъекции"
/select 08 → Соответствие "Проверить по OWASP Top 10"
/select 14 → Инцидент "Проследить вектор атаки"
/select 16 → Точки входа "Список конечных точек API"
Архитектор¶
/select 03 → Документирование "Описать функцию X"
/select 10 → Межрепозиторный анализ "Влияние изменения Y?"
/select 11 → Архитектура "Найти нарушения слоёв"
Сценарии S17–S21 (редактирование файлов, оптимизация кода, проверка стандартов, анализ зависимостей, синхронизация документации интерфейсов) доступны через принудительный выбор сценария, но не отображаются в панели CLI
/scenarios.
Частые запросы¶
Поиск функций¶
> Где определена palloc?
> Показать вызывающие heap_insert
> Что вызывает ExecProcNode?
Анализ безопасности¶
> Найти уязвимости к SQL-инъекциям
> Проследить путь данных от пользовательского ввода до запроса
> Показать функции без валидации входных данных
Понимание кода¶
> Объясните подсистему исполнителя
> Как работает выделение памяти?
> Показать зависимости модуля X
Команды структурного поиска¶
# CLI-команды для работы с шаблонами
python -m src.cli patterns scan # Сканирование по всем правилам
python -m src.cli patterns search "malloc($x)" --lang c # Ad-hoc поиск
python -m src.cli patterns list # Список загруженных правил
python -m src.cli patterns stats # Статистика шаблонов
python -m src.cli patterns fix --dry-run # Предпросмотр автоисправлений
python -m src.cli patterns generate "описание" --lang c # LLM-генерация правил
Проверка кода¶
OpenCode¶
/review git # Локальные изменения
/review github 123 # GitHub PR
/review gitlab 456 # GitLab MR
/review file patch.diff # Файл изменений
/review diff # Вставить diff интерактивно
# С опциями
/review git --format json --inline
CLI¶
python -m src.cli review --base-ref HEAD~3
python -m src.cli review --staged
python -m src.cli review --files src/api/main.py src/auth.py
python -m src.cli review --format sarif --sarif-file out.sarif
python -m src.cli review --no-security
Коды возврата: 0 = чисто или только medium/low, 1 = обнаружены critical или high.
SQL-запросы¶
-- Подсчёт функций
/query SELECT COUNT(*) FROM nodes_method
-- Поиск функций по имени
/query SELECT name, filename FROM nodes_method
WHERE name LIKE 'heap%' LIMIT 10
-- Поиск вызывающих функций
/query SELECT caller.name FROM edges_call e
JOIN nodes_method caller ON e.src = caller.id
WHERE e.dst = (SELECT id FROM nodes_method WHERE name='palloc')
LIMIT 5
Конфигурация¶
# Просмотр всех настроек
/config
# Изменение параметров LLM
/config llm provider gigachat
/config llm temperature 0.7
# Переменные окружения
export GIGACHAT_AUTH_KEY="..."
export OPENAI_API_KEY="..."
Быстрые рабочие процессы¶
Утренняя проверка безопасности¶
/select 02
> Найти уязвимости в последних коммитах
/review git
Начало работы нового разработчика¶
/select 01
> Какова основная архитектура?
> С какого места начать читать код?
Аудит перед релизом¶
/select 08
> Сгенерировать отчёт по соответствию OWASP
python -m src.cli review --base-ref origin/main --format json --output-file audit.json
Устранение неполадок¶
| Проблема | Решение |
|---|---|
| «Нет результатов» | Проверьте /stat и убедитесь, что CPG загружена |
| Медленный отклик | Уменьшите n_ctx в настройках |
| Подключение отклонено | Проверьте GoCPG и DuckDB |
| Время ожидания API | Увеличьте timeout в настройках |
Полная документация: Руководство CLI