AI 기술의 발전으로 점점 더 많은 개발 작업을 AI가 보조할 수 있게 되었습니다. 하지만 단일 AI 어시스턴트는 복잡한 프로젝트의 모든 역할을 수행하기 어렵습니다. 제품 관리자(PM)는 요구사항을 이해하고, 아키텍트는 시스템을 설계하며, 개발 엔지니어는 코드를 작성하고, QA는 품질을 검증해야 합니다.
Hermes의 Profile 메커니즘을 통해 AI에 서로 다른 신원과 책임을 정의하여 완전한 AI 개발 팀을 구축할 수 있습니다. 이 글에서는 이 시스템을 구축하고 사용하는 방법을 자세히 소개합니다.
핵심 개념: Profile과 역할 격리
Hermes의 Profile은 독립적인 설정 단위로, 각 Profile은 다음을 가집니다:
SOUL.md — 역할 정체성 정의, AI의 사고방식과 작업 범위 결정
skills/ — 전용 스킬 디렉토리, 해당 역할의 워크플로우 지식 포함
memories/ — 독립된 메모리, 다른 역할과 간섭하지 않음
workspace/ — 작업 디렉토리, 산출물 문서 저장
이는 일반적인 대화와 다릅니다: PM 역할은 갑자기 코드를 작성하지 않고, 아키텍트는 권한을 넘어 요구사항을 수정하지 않으며, 각 역할은 자신의 책임 범위 내에서 엄격하게 작업합니다.
┌─────────────┐ │ PM 요구사항 분석 │ └──────┬──────┘ │ ▼ ┌──────────────────────┐ │ UI 설계 │ SA 아키텍처 설계 │ ← 병렬 단계 └──────┬───────────────┘ │ ▼ ┌─────────────┐ │ Dev 개발 구현 │ └──────┬──────┘ │ ▼ ┌─────────────┐ │ QA 테스트 검증 │ └──────┬──────┘ │ ▼ ┌─────────────┐ │ 배포 출시 │ └─────────────┘
# 단계1: PM 요구사항 분석 시작 tmux new-session -d -s pm-agent -x 120 -y 40 'hermes -p pm' tmux send-keys -t pm-agent '「사용자 로그인」 기능 요구사항 분석, 사용자 스토리와 수용 기준 출력' Enter
# 대기 후 PM 출력 획득 sleep 30 && tmux capture-pane -t pm-agent -p -S -100 > /tmp/pm-output.txt
# 단계2: UI와 SA 병렬 시작 (PM 출력 전달) tmux new-session -d -s ui-agent 'hermes -p ui' tmux new-session -d -s sa-agent 'hermes -p sa'
tmux send-keys -t ui-agent '요구사항 분석 결과 기반 로그인 인터페이스 설계...' Enter tmux send-keys -t sa-agent '요구사항 분석 결과 기반 로그인 API 아키텍처 설계...' Enter
# 단계3: Dev 구현 시작 (UI + SA 완료 대기) tmux new-session -d -s dev-agent 'hermes -p dev' tmux send-keys -t dev-agent 'UI 설계와 아키텍처 설계 기반 로그인 기능 구현' Enter
# 단계4: QA 테스트 시작 tmux new-session -d -s qa-agent 'hermes -p qa' tmux send-keys -t qa-agent '로그인 기능 테스트, 수용 기준 검증' Enter
핵심 기법: Follow-up Prompt
Agent가 하위 작업 실행 후 멈출 수 있어 후속 명령 전송 필요:
1 2 3 4 5
# Agent 상태 확인 tmux capture-pane -t dev-agent -p -S -50
# 계속 진행하도록 follow-up 전송 tmux send-keys -t dev-agent '계속해서 프론트엔드 코드를 생성하세요...' Enter