아키텍처
Bom Agent는 모바일 · 서버 · PC · CLI 네 노드가 SignalR로 실시간 연결되어 작동합니다.
4-노드 구조
- 모바일(Bom Mobile) — 화면 스트리밍, 음성 명령, 푸시 수신
- 서버(Bom.Server) — 메모리·스케줄·Pack dispatch·Atlas 영속
- 데스크톱(Bom.Ag) — CLI 호출, 파일 시스템, 데스크톱 자동화
- CLI — Claude Code · Codex
SignalR /agent 허브
데스크톱과 PWA monitor는 /agent 허브로 서버와 통신합니다. AgentHubProtocol.cs가 메서드 이름·역할·그룹 식별자 SSOT입니다.
- desktop-agent role — Bom.Ag가 등록
- monitor role — PWA가 /agent?role=monitor로 구독
- (userId, deviceId) 라우팅 — AgentConnectionManager가 SSOT
데이터 영속
- MongoDB Atlas Flex (ap-northeast-2, db=bom_db)
- Atlas Vector Search — memory_vector_idx (1536d cosine)
- Azure Blob — 첨부 파일 (최대 50 MB)
- Azure OpenAI Korea Central — text-embedding-3-small (서버 전용)
로컬 옵션
개발 환경에서는 Azurite로 Blob을 에뮬레이션할 수 있습니다.