forgeplan activity-stats
forgeplan activity-stats сводит лог активности в таблицу: одна строка на каждый инструмент с количеством вызовов, количеством ошибок и длительностями (медиана / 95-й перцентиль / суммарно). Читает те же лог-файлы, что и forgeplan activity, но агрегирует их - так можно одним взглядом ответить на «куда ушло время сессии?» вместо пролистывания сотен отдельных вызовов.
Это CLI-вариант forgeplan_activity_stats - оба возвращают одни и те же числа.
Про перцентили: p50 - медиана (половина вызовов быстрее, половина медленнее); p95 - медленный хвост (95% вызовов укладываются в это время). Если p95 высокий, а p50 низкий - большинство вызовов быстрые, но несколько долгих портят картину.
Когда использовать
Заголовок раздела «Когда использовать»- Начало отладочной сессии - найти самый медленный или часто вызываемый инструмент за последние 24 часа.
- Пользователь жалуется «медленно» - нужна точка старта для расследования.
- Pre-release проверка - сравнить число ошибок с прошлой неделей, чтобы заметить регрессию.
- После долгой сессии - подтвердить, что число деструктивных операций совпадает с ожиданиями.
Когда НЕ использовать
Заголовок раздела «Когда НЕ использовать»- Нужно увидеть отдельные вызовы (timestamp, аргументы) - используйте
forgeplan activity, он не агрегирует. - Нужен методологический гейт (блокировать работу до выполнения условия) - статистика это наблюдаемость, не валидация.
Использование
Заголовок раздела «Использование»forgeplan activity-stats [OPTIONS] --since-hours <SINCE_HOURS> Time window in hours (1..=720, default 24) [default: 24] --json Output as JSON for machine consumption -h, --help Print help -V, --version Print versionПримеры
Заголовок раздела «Примеры»Пример 1: Сводка за 24 часа по умолчанию
Заголовок раздела «Пример 1: Сводка за 24 часа по умолчанию»forgeplan activity-statsПечатает строки, отсортированные по суммарному времени (от большего к меньшему) - самый затратный по времени инструмент первым. Быстрый ответ на вопрос «куда ушло время сессии?».
Пример 2: Месячный обзор
Заголовок раздела «Пример 2: Месячный обзор»forgeplan activity-stats --since-hours 720Используйте для месячных ретроспектив или при расследовании медленного workflow, начавшегося несколько дней назад. 720 часов (30 дней) - максимальное окно.
Пример 3: Найти медленные инструменты (p95 больше 1 секунды)
Заголовок раздела «Пример 3: Найти медленные инструменты (p95 больше 1 секунды)»forgeplan activity-stats --json | jq '.stats[] | select(.p95_ms > 1000)'Фильтрует инструменты, у которых медленный хвост (p95) превышает 1000 мс. Типичный первый срез при «агент сегодня тормозит» - это те инструменты, которые портят впечатление.
Место в рабочем процессе
Заголовок раздела «Место в рабочем процессе»Связка с forgeplan activity - двухшаговое расследование: сначала activity-stats, чтобы найти медленный или падающий инструмент, потом activity --tool <имя> для конкретных вызовов. Если проблема в ошибках - добавьте --status tool_err.
См. также
Заголовок раздела «См. также»forgeplan_activity_stats- MCP-эквивалентforgeplan activity- дрилл-даун до отдельных записейforgeplan undo-last- совмещать со статистикой для отката misfire- Обзор CLI