diff --git a/ideas/250929_happybell80_multi_ai_cli_integration.md b/ideas/250929_happybell80_multi_ai_cli_integration.md index 852f965..4904277 100644 --- a/ideas/250929_happybell80_multi_ai_cli_integration.md +++ b/ideas/250929_happybell80_multi_ai_cli_integration.md @@ -22,7 +22,7 @@ status: idea ## 구현 방안 우선순위 -### 1. 즉시 구현 가능 (tmux + bash) +### 1. tmux + bash ```bash #!/bin/bash # multi-ai.sh @@ -37,13 +37,13 @@ tmux attach -t ai-panel - 장점: 구현 간단, 즉시 사용 가능 - 단점: 수동 입력 필요, 응답 통합 어려움 -### 2. Python 래퍼 (1주일) +### 2. Python 래퍼 - subprocess.Popen으로 각 CLI 프로세스 제어 - asyncio.gather로 동시 질의 및 응답 수집 - 세션 파일 경로: ~/.config/claude, ~/.config/gemini - stdin/stdout 스트림 비동기 처리 -### 3. FastAPI 웹 대시보드 (2-3주) +### 3. FastAPI 웹 대시보드 - WebSocket으로 실시간 스트리밍 응답 처리 - 3열 레이아웃으로 동시 응답 표시 - 대화 이력 SQLite/LMDB 저장 @@ -80,13 +80,13 @@ tmux attach -t ai-panel ## 구현 로드맵 -### 개발 일정 -1. **Phase 0** (1-2일): 단일 CLI PoC - Claude만으로 PTY/파싱 검증 -2. **Phase 1** (즉시): tmux 스크립트 작성 및 테스트 -3. **Phase 2** (3-5일): Python pexpect 래퍼 개발 및 확장 -4. **Phase 3** (2주): FastAPI 백엔드 구축 -5. **Phase 4** (3주): 웹 UI 및 실시간 통신 -6. **Phase 5** (1개월): 세션 공유, 응답 분석 기능 +### 개발 단계 +1. **Phase 0**: 단일 CLI PoC - Claude만으로 PTY/파싱 검증 +2. **Phase 1**: tmux 스크립트 작성 및 테스트 +3. **Phase 2**: Python pexpect 래퍼 개발 및 확장 +4. **Phase 3**: FastAPI 백엔드 구축 +5. **Phase 4**: 웹 UI 및 실시간 통신 +6. **Phase 5**: 세션 공유, 응답 분석 기능 ### 산출물 - **PoC 스크립트**: 단일 CLI 제어 검증 코드 @@ -104,7 +104,7 @@ tmux attach -t ai-panel ## PoC 개발 계획 -### Phase 0: 단일 CLI 프로토타입 (1-2일) +### Phase 0: 단일 CLI 프로토타입 - **대상**: Claude CLI만으로 시작 - **기술**: pexpect (pty 대신) - PTY 제어, 타임아웃, 패턴 매칭에 강점 - **검증 시나리오**: @@ -128,7 +128,7 @@ tmux attach -t ai-panel - **정규화**: ANSI 제거, 프롬프트 재출현, 타임아웃 규칙 내장 ### 파싱 규칙 -- **종료 판단**: 프롬프트 패턴 + 침묵 타임아웃(1-2초) + 길이 상한 +- **종료 판단**: 프롬프트 패턴 + 침묵 타임아웃 + 길이 상한 - **정규화**: 코드블록/표 정상화, fence 언어 보정 - **골든 로그**: raw/clean 출력 비교로 파서 규칙 확정 @@ -152,7 +152,7 @@ tmux attach -t ai-panel - **ANSI 코드 제거**: 색상 코드, 스피너, ASCII 아트 정규식 제거 - **응답 종료 판단**: - 프롬프트 재출현 감지 - - 1-2초 타임아웃 기반 종료 + - 타임아웃 기반 종료 - **CLI별 커스텀 파서**: 각 CLI 출력 형식에 맞춘 개별 파서 ### 유지보수 리스크 @@ -196,10 +196,10 @@ tmux attach -t ai-panel - **핵심 결론**: 51124에서 구축 + 51123 nginx 프록시로 웹 제공 ### Phase별 평가 -- **Phase 1** (tmux 스크립트): 100% 즉시 가능 -- **Phase 2** (Python 래퍼): 70% (PTY 제어, 응답 종료 판단) -- **Phase 3-4** (FastAPI+웹 UI): 65% -- **Phase 5** (세션 공유·응답 분석): 50% +- **Phase 1** (tmux 스크립트): 즉시 가능 +- **Phase 2** (Python 래퍼): PTY 제어, 응답 종료 판단 난제 +- **Phase 3-4** (FastAPI+웹 UI): 구현 가능 +- **Phase 5** (세션 공유·응답 분석): 복잡도 높음 ## 100% 실현성 달성 방안