LLMock: 프로세스 간 결정론적 LLM 테스트를 위한 HTTP 기반 모킹 서버

LLMock는 지정된 포트에서 실제 HTTP 서버로 실행되어 LLM API 호출을 가로채는 모킹 서버로, 유료 API를 호출하지 않고도 여러 프로세스에서 결정론적 테스트를 가능하게 합니다.
주요 내용
이 도구는 한 개발자가 실제 OpenAI API를 대상으로 Playwright 테스트를 실행하며 12달러를 소비한 후 발견되었습니다. 문제는 MSW(Mock Service Worker)를 사용할 때 발생했는데, MSW는 server.listen()을 호출하는 Node.js 프로세스 내부의 HTTP 모듈을 패치하지만, 별도의 프로세스(예: Python 에이전트)는 모킹을 전혀 인식하지 못했습니다.
LLMock를 사용하면 Node.js, Python 또는 기타 언어에 관계없이 모든 프로세스에서 OPENAI_BASE_URL 환경 변수를 모킹 서버로 지정합니다:
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." }
}
]
}소스에서 언급된 주요 기능:
- 실제 OpenAI/Claude/Gemini SSE 형식을 정확히 지원합니다(이벤트 유형을 잘못 설정하면 스트리밍이 미묘하게 중단됨)
- 전체 도구 호출 지원 - 에이전트 프레임워크가 정상적으로 실행함
- 다중 에이전트 흐름을 위한 시스템 프롬프트 상태 또는 메시지 기록 검사를 위한 조건부 라우팅
- 테스트 통과 여부뿐만 아니라 실제 호출 내용을 확인할 수 있는 요청 기록
- 의존성 없음
해당 개발자는 3개의 Playwright 테스트에서 9번의 LLM 호출을 수행했으며, 비용은 0달러이고 매 실행마다 결정론적 결과를 얻었습니다.
📖 전체 소스 읽기: r/LocalLLaMA
👀 See Also

클로드 코워크 vs 오픈클로: 대체 서사가 성립하는 지점과 한계
Claude Cowork는 낮은 마찰로 지속적인 데스크톱 세션을 제공하는 반면, OpenClaw는 시스템 수준 자동화, 스킬 생태계, 워크플로우 제어에서 장점을 유지합니다.

Vibeyard, 여러 Claude Code 세션 관리를 위한 칸반 보드 추가
Vibeyard라는 오픈소스 IDE에 칸반 보드가 추가되어 카드에서 직접 Claude Code 에이전트 세션을 실행할 수 있습니다. 에이전트가 작업을 완료하면 카드가 자동으로 Done 열로 이동합니다.

OpenCortex: 오픈클로를 위한 자가 개선 메모리 시스템
OpenCortex는 OpenClaw의 평면적인 MEMORY.md 파일을 프로젝트, 연락처, 워크플로우, 선호도, 실행 매뉴얼, 도구 및 인프라로 구성된 구조화된 메모리 파일로 대체합니다. 여기에는 원칙 적용 감사가 포함된 야간 정제와 패턴 감지 및 자동 실행 매뉴얼 생성이 포함된 주간 통합이 포함됩니다.

Weejur: GitHub Pages 게시를 위한 간단한 UI 프론트엔드
Weejur는 GitHub Pages를 통해 웹사이트를 게시하기 위한 간소화된 UI를 제공하는 무료 도구로, OAuth 로그인 후 HTML을 붙여넣거나 파일을 업로드할 수 있습니다.