diff --git a/plugins/222a-seo-audit/commands/222a-audit.md b/plugins/222a-seo-audit/commands/222a-audit.md new file mode 100644 index 0000000..55cb8f7 --- /dev/null +++ b/plugins/222a-seo-audit/commands/222a-audit.md @@ -0,0 +1,40 @@ +--- +description: Запустить SEO-аудит сайта и показать executive summary +argument-hint: +--- + +Пользователь хочет провести полный SEO-аудит. Аргумент: `$ARGUMENTS` + +## Шаги + +1. **Определить project_id:** + - Если аргумент похож на URL — вызови `list_projects` и найди проект, у которого `url` или `domain` совпадает с аргументом. + - Если нашёл — используй его `project_id`. + - Если не нашёл — спроси пользователя подтверждение и вызови `create_project` с этим URL. + - Если аргумент — число/uuid — используй как `project_id` напрямую. + - Если аргумент пустой — вызови `list_projects` и попроси пользователя выбрать проект. + +2. **Запустить аудит:** + - Вызови `start_audit` с найденным `project_id`. + - Сохрани `audit_run_id` из ответа — он понадобится для следующих шагов и должен оставаться видимым пользователю. + +3. **Polling статуса:** + - Вызывай `get_audit_status` с возрастающим интервалом: 10s → 30s → 60s → 60s... + - Не делай tight loop. На каждой итерации показывай пользователю короткий статус (прогресс/этап). + - Останавливайся когда `status` = `completed` (успех) или `failed`/`cancelled` (показать причину). + +4. **Executive summary:** + - При успехе вызови `get_executive_summary` для этого `audit_run_id`. + - Покажи пользователю результат: краткое резюме, топ-проблемы, ключевые метрики. + +5. **Сохранить артефакт:** + - Если есть `mcp.write` (если scope позволяет) — вызови `save_audit_artifact` с типом `executive_summary`, `source="claude-code"`, телом полученного summary. + - Если `mcp.write` нет — пропусти этот шаг молча. + +6. **Финальный вывод:** + - Покажи `audit_run_id` и подскажи следующие команды: `/222a-issue ` для разбора проблемы, `/222a-report` для client report, `/222a-progress` для сравнения с предыдущим аудитом. + +## Замечания + +- При ошибках `mcp.write` (scope error) — сообщи пользователю «токен без `mcp.write` — артефакт не сохранён», но не прерывай вывод executive summary. +- Если `start_audit` падает с «project not in current team» — попроси пользователя проверить, что токен от того же аккаунта, в котором создан проект.