npm package: @sung-yeop/orchestra
Description: Claude + Codex multi-agent code review orchestrator
Author: yeop
Latest version: 0.1.1

# Orchestra

Claude + Codex multi-agent code review orchestrator.

Claude Code로 개발하면서 OpenAI Codex로 코드 리뷰를 받는 듀엣 워크플로우를 자동화합니다.

## Features

- **Codex Review**: 커밋 후 자동으로 Codex 코드 리뷰 실행
- **Watch Mode**: 커밋 감지하여 자동 리뷰
- **Configurable**: 프로젝트별 설정 파일 지원

## Requirements

- Node.js 18+
- [OpenAI Codex CLI](https://github.com/openai/codex) 설치 및 설정
- (선택) Claude Code CLI

## Installation

```bash
npm install -g @sung-yeop/orchestra
```

## Quick Start

### 1. Codex 설정

먼저 OpenAI Codex CLI가 설치되어 있어야 합니다:

```bash
# Codex 설치 (아직 없다면)
npm install -g @openai/codex

# OpenAI API 키 설정
export OPENAI_API_KEY=your-api-key
```

### 2. 프로젝트 초기화

```bash
cd your-project
orchestra init
```

이 명령어는 두 파일을 생성합니다:
- `.orchestrarc` - CLI 설정 파일
- `AGENTS.md` - Codex 리뷰 가이드라인

### 3. 리뷰 실행

```bash
# 직전 커밋 대비 리뷰
orchestra review --base HEAD~1

# 특정 커밋 기준
orchestra review --base abc1234

# 브랜치 기준
orchestra review --base main
```

## Commands

### `orchestra review`

현재 변경사항을 Codex로 리뷰합니다.

```bash
orchestra review [options]

Options:
  -b, --base <commit>    비교 기준 커밋 (default: HEAD~1)
  -c, --context <text>   추가 컨텍스트 제공
```

### `orchestra watch`

커밋을 감지하여 자동으로 리뷰합니다.

```bash
orchestra watch [options]

Options:
  -b, --base <commit>    추적 시작 커밋
```

### `orchestra status`

현재 Git 상태와 설정을 표시합니다.

```bash
orchestra status
```

### `orchestra init`

설정 파일을 생성합니다.

```bash
orchestra init

Options:
  --skip-agents    AGENTS.md 생성 건너뛰기
```

## Configuration

프로젝트 루트에 `.orchestrarc` 파일을 생성하여 설정을 커스터마이즈할 수 있습니다:

```yaml
mode: auto
maxIterations: 5

claude:
  command: claude
  flags:
    - --print
    - --dangerously-skip-permissions

codex:
  command: codex
  flags: []

review:
  passKeywords:
    - LGTM
    - approved
    - no issues
    - looks good
  failKeywords:
    - issue
    - problem
    - should
    - must
    - fix
    - error
    - bug
```

## Workflow Example

### Claude Code + Orchestra 듀엣

```bash
# 터미널 1: Claude Code로 개발
claude

# 터미널 2: 변경사항 커밋 후 리뷰
git add . && git commit -m "feat: add new feature"
orchestra review --base HEAD~1
```

### CI/CD 통합

```yaml
# .github/workflows/codex-review.yml
name: Codex Review

on:
  pull_request:

jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - uses: actions/setup-node@v4
        with:
          node-version: '20'

      - name: Install Orchestra
        run: npm install -g @sung-yeop/orchestra

      - name: Run Codex Review
        env:
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
        run: orchestra review --base ${{ github.event.pull_request.base.sha }}
```

## Output Example

```
🟢 Codex Review

  Base: HEAD~1
  Head: abc1234

  Codex reviewing...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✅ Review Passed
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
```

이슈 발견 시:

```
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ⚠️  Issues Found
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  Issues:
    • [P1] Missing null check in handleSubmit
    • [P2] Unused import 'useState'
```

## License

MIT