피드로 돌아가기
Dev.toInfrastructure
원문 읽기
WebSocket 기반 Synapse Channel을 통한 AI Agent 간 실시간 파일 점유 및 협업 제어
Coordinating multiple AI coding agents on one repo or multiple in your own ecosystem — without git worktrees
AI 요약
Context
복수 AI Agent의 동시 파일 수정으로 인한 데이터 충돌 및 작업 상실 문제 발생. Git worktree를 통한 물리적 격리나 단일 프로세스 기반의 Orchestrator 방식은 Merge 충돌 위험이 크거나 벤더 독립적인 외부 도구 적용이 어렵다는 한계 존재.
Technical Solution
- Local-first WebSocket Hub 구조를 도입하여 분산된 Agent 간의 상태 동기화 및 통신 채널 확보
- Advisory File-scope Claim 메커니즘을 통해 특정 파일 경로에 대한 배타적 제어권을 할당하여 물리적 충돌 사전 차단
- Lease Epoch 및 Timeout 설정을 통해 Agent Crash 상황에서도 Deadlock 없이 점유권이 자동 회수되는 안정성 확보
- SQLite 기반의 Append-only Log를 적용하여 허브 재시작 시 모든 Claim 및 Task 상태를 즉시 복구하는 Crash-safe 구조 설계
- Turn-based Agent의 폴링 오버헤드를 제거하기 위해 Connection Block 기반의 Push-notification 방식으로 Agent를 깨우는 Wake-up 로직 구현
- Dual-ledger Blackboard 시스템을 통해 Task 간 의존 관계를 정의하고 Agent 간 원자적 작업 이관(Hand-off) 기능 제공
실천 포인트
1. 분산 Agent 환경에서 파일 시스템 접근 시 Lock-free 대신 Advisory Locking으로 충돌 방지 검토
2. 상태 기반 도구 설계 시 SQLite Append-only Log를 활용한 Event Sourcing 기반 복구 전략 적용
3. 리소스 소모가 큰 폴링 대신 WebSocket/Socket 기반의 Event-driven Wake-up 메커니즘 고려
4. 개별 Agent의 자율성을 보장하면서 충돌만 제어하는 중재자(Arbiter) 패턴 도입