LLMock: HTTP-сервер для мокинга, обеспечивающий детерминированное тестирование LLM между процессами

LLMock — это мокинг-сервер, который перехватывает вызовы LLM API, работая как реальный HTTP-сервер на указанном порту, что позволяет проводить детерминированное тестирование в нескольких процессах без обращения к платным API.
Ключевые детали
Инструмент был обнаружен после того, как разработчик потратил $12 на запуск тестов Playwright против реальных API OpenAI. Проблема возникла при использовании MSW (Mock Service Worker), который патчит HTTP-модуль внутри процесса Node.js, вызывающего server.listen(), но оставляет отдельные процессы (например, агент на Python) полностью невидимыми для мокинга.
С LLMock вы указываете переменную окружения OPENAI_BASE_URL на мок-сервер из любого процесса, независимо от того, Node.js это, Python или любой другой язык:
const mock = new LLMock({ port: 5555 });
await mock.start();
process.env.OPENAI_BASE_URL = "http://localhost:5555/v1";Фикстуры — это простые JSON-файлы, которые сопоставляются по подстрокам пользовательских сообщений или регулярным выражениям, устраняя шаблонный код обработчиков:
{
"fixtures": [
{
"match": { "userMessage": "stock price of AAPL" },
"response": { "content": "The current stock price of Apple Inc. (AAPL) is $150.25." }
}
]
}Ключевые особенности из источника:
- Корректно использует фактический формат SSE OpenAI/Claude/Gemini (ошибки в типах событий незаметно ломают стриминг)
- Полная поддержка вызовов инструментов — фреймворки агентов выполняют их как обычно
- Предикатная маршрутизация для проверки состояния системного промпта или истории сообщений в мультиагентных потоках
- Журнал запросов для проверки того, что было фактически вызвано, а не просто прошёл ли тест
- Нет зависимостей
В итоге у разработчика получилось 9 вызовов LLM в 3 тестах Playwright, стоимостью $0 и с детерминированными результатами при каждом запуске.
👀 Смотрите также

AI Team OS: Самодвижущийся организационный слой для Claude Code
AI Team OS — это операционный слой для Claude Code, который создаёт автономные рабочие процессы, где система продолжает работать без ожидания пользовательских запросов. Он включает 22 специализированных шаблона агентов, более 40 инструментов MCP и работает полностью в рамках подписки Claude Code без внешних затрат на API.

AI Подпрограммы: Детерминированная автоматизация браузера с нулевой стоимостью токенов
AI Subroutines от rtrvr.ai позволяют записывать действия в браузере один раз в виде вызываемых инструментов, которые затем воспроизводятся в контексте веб-страницы с автоматической передачей аутентификации, исключая затраты на LLM-инференс и недетерминизм для повторяющихся задач.

Инструментарий Blackwell LLM: конфиги NVFP4, колёса и бенчмарки для TensorRT-LLM на RTX Pro 6000
Сообщество предоставляет конфиги TensorRT-LLM, предварительно собранные колеса LMCache с поддержкой sm_120 и бенчмарки для GPU Blackwell. Nemotron-3-Nano-Omni V3 достигает 270 токенов/с при контексте 8k на одном RTX Pro 6000.

Ops Dashboard OpenClaw: Локальная панель управления для соло-разработчиков с несколькими репозиториями
Один соло-разработчик создал ops-dashboard — локальное приложение, которое индексирует хранилища Obsidian, репозитории и логи в единую панель с возможностью поиска. BYOK, лицензия MIT, не требует облачных сервисов.