LLMMixer 0.3 — production 배포까지 AI 워크플로우 신뢰성 설계 패턴

LLMMixer v0.3을 production-ready로 만드는 과정에서 겪은 AI 워크플로우 엔진의 신뢰성 문제와 해결 과정을 정리했다. interactive CLI, SSE deduplication, adapter 모드 최적화까지 실전에서 검증된 패턴들을 다룬다. 배경: 무엇을 만들고 있는가 LLMMixer는 여러 LLM을 동시에 활용하는 워크플...

By · · 1 min read
LLMMixer 0.3 — production 배포까지 AI 워크플로우 신뢰성 설계 패턴

Source: DEV Community

LLMMixer v0.3을 production-ready로 만드는 과정에서 겪은 AI 워크플로우 엔진의 신뢰성 문제와 해결 과정을 정리했다. interactive CLI, SSE deduplication, adapter 모드 최적화까지 실전에서 검증된 패턴들을 다룬다. 배경: 무엇을 만들고 있는가 LLMMixer는 여러 LLM을 동시에 활용하는 워크플로우 엔진이다. Claude, Codex, Gemini를 조합해서 복잡한 작업을 자동화하는 도구다. 이번 v0.3에서는 프로토타입을 벗어나 실제 production 환경에서 안정적으로 돌아가는 시스템을 목표로 했다. 핵심은 interactive CLI 지원과 adapter reliability 향상이었다. 기존 버전은 단발성 작업은 잘 했지만, 장시간 실행되는 워크플로우에서 connection drop이나 중간 실패 시 복구가 어려웠다. 7,000줄이 넘는 코드 변경으로 이 문제들을 해결했다. Interactive CLI로 AI와 대화하며 워크플로우 제어하기 node-pty를 활용한 실시간 제어 패턴 기존에는 AI에게 "이 워크플로우를 실행해"라고 한 번 던지면 끝까지 기다려야 했다. 중간에 수정하거나 방향을 바꿀 수 없었다. 이번에 node-pty를 도입해서 터미널처럼 실시간으로 AI와 소통할 수 있게 했다. // packages/core/src/adapters/base.ts - lazy loading으로 성능 최적화 let pty: typeof import('node-pty') | null = null; const getPty = async () => { if (!pty) { pty = await import('node-pty'); } return pty; }; 중요한 건 lazy loading이다. node-pty는 네이티브 바이너리를 쓰는 무거운 패키지라서 처음부터 로드하면 startup time이 느려진다. 실제로 interactive mode가 필요할 때만 로드한다. AI에게 interactive