B2B SaaS에서 8개월간 AI 에이전트를 운영하며 얻은 성공적인 설계 5가지와 실패한 설계 3가지
8 months running an AI agent in production for my B2B SaaS. Here are the 5 architecture decisions that held up and the 3 that didn't.
핵심 요약
8개월간의 실전 운영 경험을 바탕으로 AI 에이전트 아키텍처의 성공 사례와 실패 사례를 공유함.
- 격리 및 보안 — 에이전트별 컨테이너 격리와 최소 권한 원칙을 적용해 운영 리스크를 최소화함.
- 인간 승인 게이트 — 고객 대상 메시지 발송 전 반드시 사람이 검토하여 AI 오작동 사고를 원천 차단함.
- 추가 전용 메모리 — 에이전트가 기존 메모리를 삭제하지 못하게 하여 데이터 오염과 손상을 방지함.
- 모델 티어 라우팅 — 작업 난이도에 따라 Haiku, Sonnet, Opus를 적절히 배치해 비용을 60% 절감함.
1인 창업자로서 8개월간 지속적으로 프로덕션 에이전트를 운영했습니다. 새로운 빌드나 출시 소식이 아닙니다. 시간이 지나면서 잘 작동했던 아키텍처 결정과 그렇지 않았던 결정들에 대한 사후 분석입니다. 규칙 3에 따라 관련 링크는 댓글 답글에 남기겠습니다.
성공적이었던 결정들
1. 에이전트별 컨테이너 격리
에이전트당 전용 컨테이너를 제공하는 관리형 플랫폼을 선택했습니다. 당시에는 과하다고 생각했지만, 고객을 위해 두 번째 에이전트를 운영하기 시작했을 때 이것이 결정적이라는 것을 깨달았습니다. 인프라를 공유했다면 운영상 고통스럽고 위험했을 것입니다.
2. 모든 고객 발송 메시지에 대한 인간의 승인
첫날부터 적용한 강력한 게이트입니다. 한 번도 제거하지 않았습니다. 8개월 동안 약 8건의 잘못된 출력을 잡아냈습니다. 메시지당 약 45초의 비용이 들지만, "AI가 X를 보냈다"는 사고가 발생하지 않는 가치가 훨씬 큽니다.
3. 추가 전용 메모리 파일 (LEARNINGS.md, sessions/)
에이전트가 메모리에 쓸 수는 있지만, 이전 항목을 삭제하거나 편집할 수는 없습니다. 배포 일주일 만에 에이전트가 30개의 수정 사항을 "친절하게" 정리해버린 후 이 방식을 강제했습니다. 추가 전용 방식은 메모리가 비대해질 수는 있지만 손상되지는 않습니다.
4. 모델 티어 라우팅 (Haiku 분류기 → Sonnet 기본 → Opus 에스컬레이션)
처음에는 Sonnet에 고정했습니다. 비용이 현실화되면서 라우팅으로 전환했습니다. 작업 부하에서 측정 가능한 품질 저하 없이 비용의 약 60%를 절감했습니다.
5. 범위별 메모리 파일 분리 (USER.md, LEARNINGS.md, sessions/)
하나의 거대한 덩어리가 아닙니다. 특정 목적을 가진 특정 파일들입니다. 에이전트는 어떤 컨텍스트를 위해 어떤 파일을 참조해야 하는지 알고 있습니다. "하나의 큰 메모리 파일"보다 훨씬 깔끔합니다.
실패했던 결정들
1. 마케팅 카피 작성에 에이전트 사용
3개월 동안 시도했습니다. 결과물은 뻔했습니다. 고객들은 그것이 AI라는 것을 바로 알아챘습니다. 중단했습니다. 에이전트는 지원 초안은 잘 처리하지만, 대외용 카피는 제대로 하지 못합니다.
2. Composio OAuth 전체 범위 권한 부여
모든 것에 대한 쓰기 권한으로 시작했습니다. 이것이 과도한 권한 부여라는 것을 깨달았습니다. 이제 에이전트는 대부분 읽기 전용이며, 명시적으로 위임한 특정 작업에 대해서만 쓰기 권한을 가집니다. 표면적인 리스크가 줄어들었습니다.
3. 쓰기 게이트 없이 에이전트의 세션 간 메모리 신뢰
처음에는 에이전트가 USER.md에 자유롭게 쓸 수 있었습니다. 이는 컨텍스트 오염(관련 없는 일회성 세부 사항이 나에 대한 "사실"이 됨)을 유발했습니다. 게이트를 추가했습니다. 제안된 편집 내용은 스크래치패드로 가고, 제가 승인합니다. 더 깔끔하고 약간 더 느립니다.
1인 창업자 프로덕션 에이전트를 위해 추천하는 아키텍처
- 에이전트별 격리가 지원되는 관리형 플랫폼 (iMessage가 필요하면 RunLobster, 상관없다면 Lindy/Relevance/MyClaw, 기술적 역량이 있다면 셀프 호스팅 OpenClaw)
- 모든 고객 대상 출력에 대한 인간 승인 게이트
- USER.md에 대한 편집 제안 게이트가 포함된 추가 전용 메모리
- 모델 티어 라우팅
- 범위가 제한된 통합 (최소 권한 원칙)

