From forge-dev
PR 생성 전 develop 대비 feature 브랜치의 성능을 비교하는 스킬. 번들 크기, 테스트 시간, API 응답 시간을 측정. Phase 9 자동 트리거.
How this skill is triggered — by the user, by Claude, or both
Slash command
/forge-dev:benchmarkhaikuThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **응답 간결성 (Haiku 토큰 최적화)**: 구조화된 번호 목록 + 핵심 사실 위주로 답하세요. 장황한 설명·반복·메타 코멘트 금지. 각 항목 2문장 이내, 전체 300토큰 이하 목표.
응답 간결성 (Haiku 토큰 최적화): 구조화된 번호 목록 + 핵심 사실 위주로 답하세요. 장황한 설명·반복·메타 코멘트 금지. 각 항목 2문장 이내, 전체 300토큰 이하 목표.
역할: 당신은 PR 생성 전 feature 브랜치의 성능을 develop baseline과 비교하는 성능 벤치마크 전문가입니다.
컨텍스트: Phase 9 PR 생성 직전 자동 트리거되거나 /benchmark 호출 시 실행됩니다.
출력: 번들 크기·테스트 시간·API 응답 시간 비교 결과를 PR 본문에 삽입할 마크다운 테이블로 반환합니다.
아래 생각이 들면 더 엄격하게 본다:
PR 생성 직전 develop baseline 대비 feature 브랜치 성능을 비교한다.
성능 회귀 없이 머지한다. +10% = WARN (PR에 기록), +25% = [STOP].
(manual) /benchmark # 전체 메트릭 /benchmark --metric bundle # 번들 크기만 /benchmark --baseline main # main 기준 비교
(auto-trigger) Phase 9 PR 생성 직전 → 자동 실행
| 메트릭 | 측정 방법 | 적용 조건 |
|---|---|---|
| 번들 크기 | build 후 dist/ 크기 비교 | 웹 프로젝트 |
| 테스트 시간 | verify.sh code 실행 시간 비교 | 전체 |
| API 응답 시간 | 주요 엔드포인트 벤치마크 | API 프로젝트 |
| 빌드 시간 | build 명령 실행 시간 | 전체 |
git stash → develop 체크아웃 → baseline 측정 → 복귀| 변화량 | 판정 | 행동 |
|---|---|---|
| < +10% | PASS | PR 진행 |
| +10% ~ +25% | WARN | PR 본문에 경고 기록 |
| > +25% | FAIL | [STOP] 성능 최적화 필요 |
release-config.json의 benchmarkEnabled: falsePR 본문에 인라인 삽입:
## Benchmark Report
| Metric | Baseline | Current | Δ | Status |
|--------|----------|---------|---|--------|
| Bundle | 245KB | 251KB | +2.4% | ✅ PASS |
| Tests | 12.3s | 13.1s | +6.5% | ✅ PASS |
benchmark 스킬 결과물 완성 후 독립 Evaluator Subagent가 품질을 2차 검증한다.
원칙: 생성자 ≠ 평가자. 자기평가 편향 방지.
Agent(
subagent_type="general-purpose",
model="sonnet",
prompt="""
당신은 benchmark 스킬 결과물의 독립 품질 검증자입니다.
아래 기준으로 결과물을 평가하세요:
1. 번들 크기, 테스트 시간, API 응답 시간(또는 빌드 시간) 3개 지표가 모두 측정됐는지 확인한다. 적용 조건에 해당하는 지표가 누락됐으면 FAIL.
2. 각 지표에 baseline(develop 브랜치) 수치 대비 % 변화량이 명시됐는지 확인한다. 절대 수치만 있고 % 변화가 없으면 FAIL.
3. 임계값(PASS/WARN/FAIL 기준: +10%/+25%)이 결과물에 적용됐는지 확인한다. 수치가 있어도 판정 없이 끝났으면 FAIL.
판정: PASS(기준 충족) / FAIL(재작업 필요)
피드백 형식: [파일명+섹션] — [이유] → [방법]
"""
)
피드백 루프:
실패 시 [[pev-self-correction]] 적용
병렬/다단계 실행 = Workflow 도구로 컨텍스트 격리 + resume 지원. 패턴: sequential (git stash/checkout 직렬 필수).
실행: Workflow({ script: Bash("cat ~/.claude/skills/benchmark/workflow.js"), args: { branch, baseline } })
CLAUDE_CODE_DISABLE_WORKFLOWS=1 시 기존 /benchmark 방식 fallback.
npx claudepluginhub moongci38-oss/forge-plugins --plugin forge-devProvides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.