FD api-logger
Запись, анализ и визуализация журналов вызовов LLM API. Прозрачный прокси-сервер перехватывает все вызовы LLM API, записывает полный prompt/generation/использование токенов, с веб-просмотрщиком журналов без зависимостей (поддерживает многомерную фильтрацию, отображение полных диалогов, статистику затрат на токены). Сценарии использования: анализ затрат на вызовы API, отладка prompt, просмотр истории диалогов, устранение медленных/неудачных запросов. Включает: proxy.py (сервис прокси), log_viewer.py (просмотрщик в терминале), log-viewer.html (веб-просмотрщик).
машинный переводПоказать оригиналСкрыть оригинал«LLM API 调用日志记录、分析与可视化。透明代理拦截所有 LLM API 调用,记录完整 prompt/generation/token…»
LLM API 调用日志记录、分析与可视化。透明代理拦截所有 LLM API 调用,记录完整 prompt/generation/token 用量, 附带零依赖网页日志查看器(支持多维过滤、完整对话展示、token 成本统计)。 适用场景:分析 API 调用成本、调试 prompt、查看历史对话记录、排查慢请求/失败请求。 包含:proxy.py(代理服务)、log_viewer.py(终端查看器)、log-viewer.html(网页查看器)。
Запись, анализ и визуализация журналов вызовов LLM API.
Как процесс D 48/100 · Процесс не доведён — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 6
-
высокая Опасные команды
cmd-persistenceinstall.sh:89Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)launchctl load "$PLIST_PATH"
-
высокая Опасные команды
cmd-persistenceREADME.md:103Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)launchctl unload ~/Library/LaunchAgents/com.lobster.api-proxy.plist
-
высокая Опасные команды
cmd-persistenceREADME.md:104Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)launchctl load ~/Library/LaunchAgents/com.lobster.api-proxy.plist
-
высокая Опасные команды
cmd-persistenceREADME.md:248Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)~/Library/LaunchAgents/
Средние и низкие: 2
-
средняя Опасные команды
cmd-persistenceinstall.sh:10Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строковый литерал в коде, не выполняется)PLIST_PATH="$HOME/Library/LaunchAgents/com.lobster.api-proxy.plist"
строка в коде -
средняя Опасные команды
cmd-persistenceREADME.md:71Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (в кавычках — упоминание, а не команда)- 写入 LaunchAgent plist(`~/Library/LaunchAgents/com.lobster.api-proxy.plist`)
в кавычках
Просканировано файлов: 7. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда")
Процессный рейтинг: все десять параметров 48/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 60Инструменты и файлы. Используются инструменты (python), но во frontmatter они не объявлены
- 100Шаги. Шагов: 26
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 609 токенов
- 100Повторный запуск. Изменяющих операций нет
- 100Отчётность по ходу. Скилл сообщает о ходе работы
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -2Ссылки на localhost: у другого пользователя не заработает
- +2Инструкции на одном языке
- +3Длина description 225 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 10 заголовков
- +3Пошаговые инструкции: 26 пунктов
- +4Есть примеры (4 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 71.