Files
2026-05-11 11:29:41 +09:00

4.9 KiB

그누보드7 Multi-Agent System

AI Agent SDK 기반 그누보드7 전용 멀티에이전트 협업 시스템입니다.

개요

5명의 전문 에이전트가 협업하여 그누보드7 프로젝트의 개발 작업을 수행합니다:

에이전트 역할 담당 영역
Coordinator 작업 분배 및 조율 전체 오케스트레이션
Backend 백엔드 개발 Service, Repository, Controller, Migration
Frontend 프론트엔드 개발 TSX 컴포넌트, 상태 관리, G7Core API
Layout 레이아웃 개발 JSON 스키마, 데이터 바인딩, 반응형
Template 템플릿 개발 빌드, 컴포넌트 등록, 다국어
Reviewer 코드 검수 규정 준수, 테스트, 문서화

설치

cd docs/ai-tools/agents
npm install

환경 설정

.env.example을 .env로 복사하고 API 키를 설정하세요:

cp .env.example .env
# AI API Key (Required)
ANTHROPIC_API_KEY=your_api_key_here

# 그누보드7 Project Root Path
G7_PROJECT_ROOT=/path/to/your/g7/project

# Log Level
LOG_LEVEL=info

사용법

인터랙티브 모드

npm run interactive

대화형으로 작업을 요청합니다:

🤖 > /feature 상품 할인 기능 추가
🤖 > /bugfix Form 저장 시 데이터 사라짐
🤖 > /review #123
🤖 > ProductService의 할인 로직 설명해줘

단일 명령어 모드

# 기능 개발
npm run agent -- feature "상품 할인 기능 추가"

# 버그 수정
npm run agent -- bugfix "Form 저장 시 데이터 사라짐"

# PR 검수
npm run agent -- pr-review "#123"

# 자유 형식
npm run agent -- "ProductService에 할인 로직 추가해줘"

워크플로우

1. 기능 개발 (Feature)

새로운 기능을 개발할 때 사용합니다:

Backend → Layout → Frontend → Template → Reviewer
  1. Backend: 마이그레이션, Model, Repository, Service, Controller
  2. Layout: 레이아웃 JSON, 데이터 소스, 컴포넌트 구조
  3. Frontend: 필요한 TSX 컴포넌트 개발
  4. Template: 컴포넌트 등록, 빌드
  5. Reviewer: 전체 검수

2. 버그 수정 (Bugfix)

TDD 기반으로 버그를 수정합니다:

  1. 트러블슈팅 가이드 확인
  2. 버그 분석
  3. RED: 버그 재현 테스트 작성
  4. GREEN: 버그 수정
  5. REFACTOR: 테스트 통과 확인
  6. 검수

3. PR 검수 (PR Review)

변경된 파일 유형에 따라 적절한 에이전트가 검수합니다:

  • *.php → Backend 에이전트
  • *.tsx → Frontend 에이전트
  • *.json (레이아웃) → Layout 에이전트
  • 최종 → Reviewer 에이전트

MCP 도구

그누보드7 프로젝트 전용 검증 도구를 제공합니다:

도구 설명
validate-backend 백엔드 코드 규정 검증
validate-frontend 프론트엔드/레이아웃 규정 검증
run-tests 테스트 실행 (PHPUnit, Vitest)
search-docs 규정 문서 검색
read-doc 규정 문서 읽기
list-docs 규정 문서 목록

그누보드7 규정 준수

모든 에이전트는 docs/의 규정을 준수합니다:

백엔드

  • Service-Repository 패턴 (RepositoryInterface 주입)
  • FormRequest 검증 (Service 검증 금지)
  • HookManager 훅 실행 (before_/after_)
  • ResponseHelper 응답 처리
  • 다국어 처리 (__() 함수)

프론트엔드

  • HTML 태그 직접 사용 금지 (Div, Button 등 사용)
  • 다크 모드 클래스 쌍 필수 (bg-white dark:bg-gray-800)
  • G7Core.t() 다국어 처리
  • Font Awesome 아이콘

레이아웃

  • text 속성 사용 (props.children 금지)
  • 데이터 바인딩 문법 ({{path}}, $t:key)
  • 기본 컴포넌트만 사용

프로젝트 구조

docs/ai-tools/agents/
├── src/
│   ├── index.ts           # 메인 엔트리포인트
│   ├── cli.ts             # CLI 인터페이스
│   ├── coordinator/
│   │   └── Coordinator.ts # 코디네이터
│   ├── agents/
│   │   ├── definitions.ts # 에이전트 정의
│   │   └── index.ts
│   ├── prompts/           # 시스템 프롬프트
│   │   ├── coordinator.ts
│   │   ├── backend.ts
│   │   ├── frontend.ts
│   │   ├── layout.ts
│   │   ├── template.ts
│   │   └── reviewer.ts
│   ├── mcp/               # MCP 도구
│   │   ├── g7-tools-server.ts
│   │   └── tools/
│   ├── workflows/         # 워크플로우
│   │   ├── feature.ts
│   │   ├── bugfix.ts
│   │   └── pr-review.ts
│   ├── types/
│   │   └── index.ts
│   └── utils/
│       ├── logger.ts
│       └── context.ts
├── package.json
├── tsconfig.json
├── .env.example
└── README.md

라이선스

MIT License