Install
$ agentstack add skill-gd452-skills-gd-multi-ai-review ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Multi-AI Review — 병렬 외부 모델 교차검증
Claude의 판단을 Gemini와 GPT(Codex)로 교차검증하여 합의·이견·추가 이슈를 도출한다. 중요한 설계 판단이나 스킬 설계 직후, 외부 관점이 품질을 크게 높일 때 사용.
언제 쓰는가
| 상황 | 사용 여부 | |---|---| | 아키텍처/스킬 설계 결정 | ✅ 강권 | | 장문 산출물(사업계획서, 리뷰 문서) 초안 | ✅ 권장 | | 복잡한 기술 판단 (모델 선택, 인프라 선택) | ✅ 권장 | | 단순 질문·코딩 작업 | ❌ 과함 | | 민감 정보(비밀키, 사내 코드, PII) 포함 | ❌ 사용 금지 |
전제 조건
geminiCLI (/opt/homebrew/bin/gemini) +GEMINI_API_KEYcodexCLI (/opt/homebrew/bin/codex) +OPENAI_API_KEY- 둘 중 하나라도 없으면 사용자에게 알리고 가능한 한쪽만 실행 or 중단
워크플로우
Phase 1: 브리프 준비
교차검증할 주제를 자체 완결된 브리프로 정리한다. 외부 모델은 현재 대화 맥락을 모르므로 다음을 포함:
- 대상: 무엇을 리뷰할지 (URL/파일/인라인 내용)
- Claude의 현재 판단: 내가 이미 도출한 결론/이슈
- 질문: 타당성 / 대안 / 놓친 부분
브리프 파일 저장 위치: {작업디렉토리}/reports/multi-ai-review-{YYYYMMDD-HHMM}-{topic-slug}/brief.md
topic-slug 규칙: 주제를 영문 소문자 + 하이픈으로 12~30자 내외 슬러그화 (예: codex-cli-integration, harness-design-review). 같은 날 여러 리뷰가 쌓일 때 폴더만 보고도 주제를 식별 가능.
> 민감 정보 포함 여부를 반드시 사용자에게 확인한다. API 키, 사내 전용 코드, PII가 브리프에 들어가면 외부로 유출된다.
Phase 2: 병렬 발송
한 메시지에서 두 Bash 호출을 run_in_background: true로 동시 발사한다. 순차 호출은 느려진다.
Gemini (stdin 파이프):
cat {brief-path} | gemini -p "{질문}" 2>&1 | tee {reports-dir}/gemini.txt
Codex (인자 전달, --sandbox read-only + --skip-git-repo-check 필수, -o 로 최종 답만 파일 캡처):
codex exec \
--sandbox read-only \
--skip-git-repo-check \
-o {reports-dir}/codex.txt \
"$(cat {brief-path})
---
{질문}"
> codex 호출 옵션 상세(샌드박스 모드, 안티패턴, 트러블슈팅, JSON 스트림 등)는 codex-cli 스킬 참고. 본 스킬은 read-only 분석 패턴만 사용한다.
호출 후 두 task-id를 기억하고 폴링하지 않고 완료 알림을 기다린다.
Phase 3: 응답 수집
두 완료 알림이 도착하면 각 output 파일을 Read로 읽는다. 실패 유형별 대응:
| 증상 | 원인 | 대응 | |---|---|---| | Not inside a trusted directory | Codex git-repo 체크 | --skip-git-repo-check 추가해 재실행 | | auth required / 401 | API 키 만료 | 사용자에게 키 갱신 요청 | | 타임아웃 (>5분) | 과도한 입력 | 브리프 축약 후 재시도 | | 한쪽만 성공 | 일시 오류 | 성공한 결과로 진행, 누락 명시 |
Phase 3.5: 멀티라운드 (선택)
단발성(1회)으로 부족하면 2-3라운드로 확장한다. 사용자가 요청하거나, 이견이 크면 자동 제안.
라운드 구조:
- Round 1: 각자 독립 답변 (Phase 2-3)
- Round 2: 상대방 답변을 포함한 프롬프트로 재호출 → 반론/보완
- Round 3 (선택): 최종 입장 정리
상대방 답변 공유 프롬프트:
# Round 2: 상대방 답변을 읽고 반론하세요.
## 상대방 핵심 주장:
{상대방 R1 답변 요약}
## 질문:
1. 동의하는 부분과 반론할 부분은?
2. 당신의 입장을 수정할 부분이 있는가?
산출물: {reports-dir}/gemini-r{N}.txt, {reports-dir}/codex-r{N}.txt
Codex stdin 주의: cat file | codex는 불안정. codex exec "$(cat file)" 방식 사용. 멀티라운드도 동일하게 --sandbox read-only --skip-git-repo-check -o {reports-dir}/codex-r{N}.txt 적용.
CLI 폴백: CLI 실패 시 API 호출로 대체 가능 (동일한 stateless 멀티라운드 구조).
Phase 4: 합성
세 관점(Claude·Gemini·Codex)을 합의·이견·추가 이슈 3섹션으로 정리한다. 멀티라운드 시 논의 과정(각 라운드에서 입장이 어떻게 변했는지)을 반드시 포함한다.
합성 표 템플릿:
## 합성 결과
### 합의된 이슈 (3자 모두 유효 판정)
| 이슈 | Claude | Gemini | Codex | 최종 우선순위 |
### 이견 (판정 갈린 이슈)
| 이슈 | Claude | Gemini | Codex | 판단 근거 |
### 외부 모델이 추가로 제기한 이슈
| 이슈 | 제기자 | 수용 여부 | 근거 |
판단 원칙:
- 2자 이상 동의면 수용 검토
- 3자 모두 동의하면 즉시 반영
- 이견이면 근거 강한 쪽 채택 (단순 모델별 선호 차이는 기록만)
- 외부 모델이 Claude가 놓친 이슈 제기 시 정직하게 인정하고 우선순위에 편입
Phase 5: 보존 및 보고
산출물 구조:
reports/multi-ai-review-{YYYYMMDD-HHMM}-{topic-slug}/
├── brief.md # Phase 1 브리프
├── gemini-r1.txt # Gemini Round 1
├── codex-r1.txt # Codex Round 1
├── gemini-r2.txt # Gemini Round 2 (멀티라운드 시)
├── codex-r2.txt # Codex Round 2 (멀티라운드 시)
└── synthesis.md # Phase 4 합성 결과 (논의 과정 포함)
사용자에게 합성 결과와 다음 액션 제안만 보고한다. 원본 응답은 파일 경로로만 안내.
호출 예시
사용자: "이 하네스 스킬 리뷰가 타당한지 Gemini/Codex한테도 물어봐줘"
- Phase 1: 기존 리뷰를 브리프로 정리 →
reports/multi-ai-review-20260419-2145-harness-skill-review/brief.md - Phase 2: Bash 한 메시지에서 gemini + codex 병렬 발사 (runinbackground)
- Phase 3: 두 완료 알림 수신, 응답 Read
- Phase 4: 합성 표 작성 →
synthesis.md - Phase 5: 사용자에게 합성 결과 보고, 원본은 파일 경로로 안내
비용 가이드
| 규모 | 입력 | 출력 | 1회 비용 (두 모델 합계) | |---|---|---|---| | 소형 브리프 | 1~2K 토큰 | 1K 토큰 | ~$0.02 | | 중형 (스킬 리뷰) | 3~5K 토큰 | 2~3K 토큰 | ~$0.05 | | 대형 (장문 문서) | 10K+ 토큰 | 5K+ 토큰 | $0.20~0.50 |
일반적인 리뷰는 회당 $0.05 내외. 하루 5회 사용해도 $1 이하.
주의사항
- 민감 정보 보호: API 키, 사내 전용 코드, 미공개 비즈니스 정보는 브리프에서 제거하거나 추상화. 확신 없으면 사용자에게 확인.
- 외부 모델의 환각: Codex는
revfactory/harness같은 잘못된 URL을 추측할 수 있다. 외부 모델 응답의 URL·파일 경로·API 이름은 Claude가 직접 검증. - 편향 인식: 외부 모델도 자기 모델 생태계 선호를 보인다 (Gemini가 Google 툴 권장, Codex가 OpenAI 모델 권장). 기술 선택 판단 시 이 편향을 고려.
- Claude의 입장: 외부 모델이 다수 의견이어도 Claude가 근거 있는 반대 의견이면 유지한다. 거수기가 아니라 검증 도구.
트러블슈팅
Codex가 git 체크로 실패: --skip-git-repo-check 추가 Codex 가 파일 쓰기 시도하다 실패: --sandbox read-only 는 의도적 — 분석만 시키는 모드. 패치가 필요하면 codex-cli 스킬의 workspace-write 패턴으로 별도 호출 Gemini가 긴 입력 거부: 브리프를 요약하거나 핵심 섹션만 발췌 두 모델 모두 타임아웃: 브리프가 너무 크거나 질문이 모호함. 분할해서 재시도 응답이 한국어/영어 섞임: 질문에 "한국어로 답해줘" 명시
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: gd452
- Source: gd452/skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.