마지막 업데이트 2026-07-29
Hermes ppi-bug-tracer — PPI 버그 재현 경로 분석 에이전트의 핵심을 활용 가이드식으로 먼저 안내합니다. 기술적 결론과 원문 근거는 아래 본문에 보존되어 있습니다.
PPI 버그·이슈를 입력받아 코드를 직접 탐색하고 재현 경로를 단계별로 파악하는 로컬 LLM 에이전트. Claude Code와 별개로 운영되며 오프라인 환경에서 PPI 프로젝트를 이해하는 전용 에이전트입니다.
| 에이전트 | Hermes Agent (로컬 LLM 실행환경) |
| 모델 | qwen3.6:latest via Ollama (http://127.0.0.1:11434/v1) |
| 설정 파일 | ~/.hermes/config.yaml |
| 역할 정의 | ~/.hermes/SOUL.md |
| 스킬 | ~/.hermes/skills/ppi-bug-tracer/SKILL.md |
| 작업 디렉토리 | /Users/maru/git-projects/ppi |
| 작성일 | 2026-06-22 |
PPI 프로젝트에서 발생한 버그·이슈 내용을 전달하면 코드를 직접 열고 흐름을 추적하여 재현 경로를 파악해주는 에이전트입니다. 추측 대신 실제 파일을 읽고 근거를 제시합니다.
Hermes가 매 메시지마다 로드하는 시스템 프롬프트. 재시작 없이 즉시 반영됩니다.
/ppi-bug-tracer 명령으로 호출하는 구조화된 4단계 분석 스킬입니다.
apps/web/app/guest/ 또는 apps/web/app/main/meet/[roomId]/부터
hook → manager → socket 이벤트 순으로 파일을 직접 열고 추적
| model.default | qwen3.6:latest |
| model.provider | custom |
| model.base_url | http://127.0.0.1:11434/v1 |
| model.api_mode | chat_completions |
| terminal.cwd | /Users/maru/git-projects/ppi |
SOUL.md가 항상 로드되므로 버그 내용만 전달해도 분석을 시작합니다.
[버그 내용 / VOC / 로그 붙여넣기]
/ppi-bug-tracer를 먼저 입력하고 Enter → 스킬 로드 확인 후 버그 내용을 전달합니다.
스킬 호출과 버그 내용을 한 줄에 붙이면 "File name too long" 에러가 발생합니다.
# 1단계: 스킬 호출
/ppi-bug-tracer
# 2단계: (스킬 로드 확인 후) 버그 내용 붙여넣기
제목: [버그 제목]
증상: [어떤 화면에서, 어떤 역할이, 무엇을 봄]
재현 조건: [항상 / 특정 상황]
로그/에러: [콘솔 에러, 세션 ID, LogRocket 링크]
| 게스트(아동) 화면 | apps/web/app/guest/ → 관련 hook → use-session-manager → socket 이벤트 |
| 호스트(치료사) 화면 | apps/web/app/main/meet/[roomId]/ → 관련 section → socket 이벤트 |
| WebRTC / 미디어 | use-media-manager → /api/ice-servers/ → WebRTC 연결 흐름 |
| Socket 이벤트 | apps/socket/server.js → 이벤트 핸들러 → web 클라이언트 |
| 핑퐁이 / OpenAI | use-session-manager → apps/web/lib/openai.ts → Realtime API |
# gateway 재시작 (config.yaml 변경 반영)
hermes gateway restart
# Hermes CLI 실행
hermes
config.yaml 변경(모델·cwd 등)은 hermes gateway restart가 필요합니다.
제목: 체크아웃 단계에서 아바타 전환 시 이전 아바타가 잠깐 렌더됨
증상: 태양(taeyang_v2) 아바타가 talking으로 전환될 때 지우(jiwoo_v2) talking 영상이
약 1~2초 나타났다 사라짐. 게스트(아동) 측에서만 발생, 호스트는 정상.
재현 조건: 한 회기 안에서 지우↔태양 두 아바타를 번갈아 사용한 경우.
아바타 단일 사용 회기는 미발생.
로그: [CHILD] MEET_VIDEO loadstart avatar_jiwoo_v2_talking_0.mp4
(avatarId=taeyang_v2 상태에서)
세션 ID: 6-019eda46-...-119c8629e417 (LogRocket, ppi-prod, 2026-06-18)
아바타가 이상해요
제목: 게스트 입장 후 WebRTC 연결이 안 됨
증상: 호스트가 입장 승인 후 게스트 화면이 계속 "연결 중..." 상태로 멈춤.
호스트는 게스트 영상이 보이지 않음.
에러 (게스트 콘솔):
RTCPeerConnection failed
ICEConnectionState: failed
Error: 0 candidate pairs
재현 조건: 사내 Wi-Fi에서는 정상, 특정 학교 네트워크에서 발생.
환경: Linux x86_64 / Chrome 124
제목: 핑퐁이가 대답 중에 다음 activity 스텝으로 넘어가면 응답이 잘림
증상: 핑퐁이가 말하는 도중 호스트가 다음 스텝으로 넘기면
핑퐁이 음성이 즉시 끊기고 게스트 화면에 빈 영상이 잠깐 표시됨.
이후 새 스텝은 정상 동작.
재현 조건: 핑퐁이 응답 시작 후 2초 이내에 스텝 전환 시 높은 확률로 발생.
환경: 게스트 Chrome / 호스트 Chrome (재현율 ~70%)
로그나 에러 메시지 없이 VOC만 있는 경우, 아래처럼 전달하면 Hermes가 Phase 1 질문을 통해 필요한 정보를 요청합니다.
/ppi-bug-tracer
(다음 메시지에서 VOC 내용만 붙여넣기)
"수업 중에 핑퐁이 목소리가 안 들려요" — 강OO 학부모 피드백, 2026-06-20
qwen3.6:latest + Ollama /v1 엔드포인트, SOUL.md·ppi-bug-tracer 스킬 생성, cwd를 PPI 프로젝트로 변경gemma4:e4b, base_url에 /v1 미포함으로 404 오류 발생