e2845508fa
Build and Push Images / build-and-push (push) Has been cancelled
진짜 멀티 에이전트 오케스트레이션 — 라우터 + 워커 + 합성 3단계
Engine (multiAgentExecutionEngine.ts)
- execution_mode 'coordinator' 신규 추가
- executeCoordinator() 3 라운드 구현:
Round 1: coordinator 가 사용자 요청 분해 → JSON delegations 출력
system prompt 에 sub-agent 카탈로그(role/desc/connectors) 자동 inject
Round 2: delegated sub-agent 들 각자 짧은 task 만 받아 병렬 실행
Round 3: coordinator 가 모든 sub-agent 응답을 받아 사용자 친화적 최종 답변 합성
- coordinator 식별: member.config.is_coordinator === true 우선,
없으면 execution_order 가 가장 작은 멤버
- JSON 파싱 실패 시 모든 worker 에 원문 fallback
Service (aiAgentGroupService.ts)
- updateMember 에 config / is_coordinator 옵션 추가
is_coordinator 단축키는 기존 config jsonb 와 || 머지
UI (workspace/page.tsx)
- EXEC_MODES 에 'coordinator' (Compass 아이콘) 추가
- MemberCardContent 에 코디네이터 토글 버튼 (왕관 아이콘) — 클릭 즉시
updateGroupMember(is_coordinator) 호출
- 활성 시 분홍 배지 "코디네이터" 표시
검증 결과 (PLM 그룹 / 환율전문가=coordinator)
- 사용자: "환율과 화성시 날씨 알려줘"
Round 1: 기상전문가 ← "화성시의 날씨 정보를 알려줘"
Round 2: 기상전문가 → API 호출 → HTML 응답 → 정직하게 "데이터 못받음"
Round 3: coordinator 가 환율/날씨 모두 정리한 단일 답변 합성
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>