파이프라인 구조를 분석하여 절제 실험(Ablation Study) 계획서를 작성한다. 파이프라인 성능 평가, 파이프라인 검증, 파이프라인 최적화가 필요할 때 사용한다. "이 파이프라인 구조가 최적인지 검증해줘", "파이프라인 평가해줘" 같은 요청에도 트리거한다.

Pipeline Plan Evaluation

파이프라인 구조도를 읽고, 절제 실험 계획서를 작성한다.

설계 근거: general-docs/learned/2026-04-07-pipeline-validator-design.md

When to Use

  • 파이프라인이 최적 구조인지 검증하고 싶을 때
  • 파이프라인의 불필요한 단계를 식별하여 토큰 비용을 줄이고 싶을 때
  • 새로 만든 파이프라인의 각 구조 설계 결정이 정당한지 확인하고 싶을 때

Parameters

ParameterRequiredDescriptionExample
pipeline_pathYes파이프라인 구조도가 포함된 콘텐츠 파일 경로prototypes/sokind-vault-admin/src/content/pipeline-define.md
skill_pathNo파이프라인 오케스트레이터 스킬 경로 (있으면 더 정확한 분석 가능).claude/skills/product-define--run-pipeline/SKILL.md

Process

Step 1: 파이프라인 구조 파싱

pipeline_path의 파일을 Read로 읽고, mermaid 구조도에서 다음을 추출한다.

1-1. 노드 목록 추출

구조도의 각 노드를 식별하고 다음을 기록한다:

  • 노드 이름
  • 노드 유형: 스킬 (슬래시 커맨드로 호출), 에이전트 (서브에이전트), 수동 (사람이 수행)
  • 소속 Step

구조도에서 노드 유형을 판별하는 기준:

  • 노드 텍스트에 / 접두사가 있으면 → 스킬
  • 노드에 에이전트 이름이 표기되어 있으면 → 에이전트
  • 그 외 (예: "PM 수동 진행", "초안 작성") → 수동

1-2. 구조 설계 결정 식별

추출된 구조에서 8가지 구조 설계 결정 유형을 자동 식별한다.

유형식별 기준
Multi-Step서로 다른 subgraph로 분리된 순차 단계
Multi-Round동일 subgraph 내 반복 구조 (Round 1, Round 2, ...)
Role Split동일 Step 내 병렬 배치된 서로 다른 역할의 에이전트
Dedicated Agent스킬 또는 에이전트로 분리된 노드
Feedback Loop화살표가 이전 Step으로 되돌아가는 순환 구조
Context Enrichment외부 입력 소스가 중간 Step에 합류하는 구조
Human Gate사용자 승인 대기 노드
Execution Strategy동일 Step 내 병렬 배치 (Role Split과 함께 식별)

skill_path가 제공되었으면 SKILL.md도 읽어 구조도에 표현되지 않은 세부 구조(라운드 수, 조건부 실행 등)를 보완한다.

Step 2: 평가 범위 확정

2-1. 자동 제외

다음 노드를 자동으로 절제 후보에서 제외한다:

  • 수동 작업 노드
  • Human Gate 유형의 구조 설계 결정
  • Execution Strategy 유형의 구조 설계 결정

2-2. 설계자 제외 확인

자동 제외 후 남은 절제 후보 목록을 설계자에게 제시하고, 설계 의도상 제거할 수 없는 항목을 확인받는다.

AskUserQuestion으로 다음 형식으로 질문한다:

1📋 절제 후보 목록이 도출되었습니다.
2
3아래 항목 중 설계 의도상 절대 제거할 수 없는 항목이 있으면 번호로 알려주세요.
4해당 항목은 절제 실험 대상에서 제외합니다. 없으면 "없음"이라고 답해주세요.
5
61. [항목명] — [구조 설계 결정 유형]
72. [항목명] — [구조 설계 결정 유형]
8...

설계자가 지정한 제외 항목은 사유와 함께 기록한다.

Step 3: 도메인 품질 차원 도출

3-1. 산출물 및 소비자 식별

파이프라인 구조도의 마지막 노드가 생산하는 산출물과, 그 산출물을 사용하는 소비자를 식별한다.

3-2. 도메인 차원 도출

범용 4대 품질 차원(Completeness, Precision, Consistency, Faithfulness)으로 커버되지 않는, 이 산출물 고유의 품질 기준을 도출한다.

소비자 관점에서 "좋은 산출물"의 조건을 질문하여 차원을 도출한다.

3-3. 루브릭 정의

각 도메인 차원에 0~5점 루브릭을 정의한다. 최소 1, 3, 5점의 기준을 구체적으로 기술한다.

3-4. 설계자 승인

도출된 도메인 차원과 루브릭을 설계자에게 제시하고 승인받는다. AskUserQuestion으로 질문한다.

1📊 도메인 품질 차원이 도출되었습니다.
2
3산출물: [산출물명]
4소비자: [소비자]
5
6범용 4대 차원 (자동 적용):
7- Completeness, Precision, Consistency, Faithfulness
8
9도메인 특화 차원:
101. [차원명]: [정의]
11   - 5점: [기준]
12   - 3점: [기준]
13   - 1점: [기준]
142. ...
15
16추가/수정/삭제할 차원이 있으면 알려주세요. 없으면 "승인"이라고 답해주세요.

Step 4: 절제 실험 계획 수립

4-1. 영향력 추정

각 절제 후보에 다음 4가지 휴리스틱을 적용하여 해당 개수를 센다.

#휴리스틱해당 조건
1수확 체감 법칙Multi-Round의 후반 라운드이거나, Feedback Loop의 2회차 이후
2Optional 표시구조도 또는 SKILL.md에서 조건부/Optional로 표시됨
3중복 신호다른 절제 후보와 검사 범위가 겹침
4하류 의존성 부재이 노드의 산출물을 이후 노드가 참조하지 않음

해당 개수로 영향력을 추정한다:

  • 0~1개: 높음
  • 2~3개: 중간
  • 4개: 낮음

4-2. 토큰 비용 추정

각 절제 후보의 토큰 비용을 추정한다:

  • 높음: Opus 에이전트 호출 포함, 또는 라운드 2회 이상
  • 낮음: Sonnet/Haiku 단일 호출, 또는 인라인 프롬프트

4-3. 2x2 매트릭스 배치 및 제거 우선순위 결정

영향력 추정(높/중/낮)과 토큰 비용(높/낮)으로 우선순위를 결정한다:

  • 1순위: 영향력 낮음 + 토큰 비용 높음
  • 2순위: 영향력 낮음 + 토큰 비용 낮음
  • 3순위: 영향력 중간 + 토큰 비용 높음
  • 4순위: 영향력 중간 + 토큰 비용 낮음
  • 5순위: 영향력 높음 + 토큰 비용 높음
  • 제거 불필요: 영향력 높음 + 토큰 비용 낮음

4-4. 순차적 누적 제거 순서 결정

우선순위에 따라 누적 제거 테스트 순서를 결정한다:

  • Test 1: 1순위 항목 제거
  • Test 2: 1순위 + 2순위 항목 동시 제거
  • Test 3: 1순위 + 2순위 + 3순위 항목 동시 제거
  • ...

4-5. 절제 변형 축소 프롬프트 설계

각 누적 테스트에 대해, 원본 파이프라인에서 해당 구조 요소를 제거한 축소 프롬프트를 작성한다.

축소 프롬프트 작성 규칙:

  • 원본 SKILL.md의 지시사항을 기반으로 한다
  • 절제 대상 부분만 제거하고, 나머지는 원본의 표현을 최대한 유지한다
  • 입력/출력 형식은 원본과 동일하게 유지한다
  • 프롬프트 하나로 ablation-runner(Sonnet)가 실행할 수 있는 자기완결적 지시문이어야 한다

4-6. Baseline 소스 확인

파이프라인이 이미 실행된 적 있는지 확인한다. Glob으로 산출물 디렉토리를 검색하여 기존 산출물이 있으면 경로를 기록하고, 설계자에게 재사용 가능 여부를 확인한다.

Step 5: 실험 계획서 저장

최종 계획을 설계자에게 제시하고 승인받은 후, knowledges/pipeline/pipeline-evaluation/evaluation-plan-{파이프라인명}-{날짜}.md에 저장한다.

산출물 기본 경로: knowledges/pipeline/pipeline-evaluation/

Output Format

1# 절제 실험 계획서: {파이프라인명}
2
3> 작성일: YYYY-MM-DD
4> 대상 파이프라인: {pipeline_path}
5> 대상 스킬: {skill_path 또는 "없음"}
6
7## 1. 파이프라인 구조 요약
8
9### 노드 목록
10
11| # | 노드명 | 유형 | 소속 Step |
12|---|--------|------|-----------|
13| 1 | ... | 스킬/에이전트/수동 | Step N |
14
15### 식별된 구조 설계 결정
16
17| # | 유형 | 대상 | 절제 대상 여부 |
18|---|------|------|---------------|
19| 1 | ... | ... | O / X (사유) |
20
21## 2. 평가 범위
22
23### 자동 제외
24- [항목]: [사유]
25
26### 설계자 지정 제외
27- [항목]: [사유]
28
29### 최종 절제 후보
30| # | 항목 | 구조 설계 결정 유형 |
31|---|------|-------------------|
32| 1 | ... | ... |
33
34## 3. 품질 평가 차원
35
36### 범용 4대 차원 (자동 적용)
37- Completeness (0~5)
38- Precision (0~5)
39- Consistency (0~5)
40- Faithfulness (0~5)
41
42### 도메인 특화 차원
43| 차원 | 정의 | 5점 | 3점 | 1점 |
44|------|------|-----|-----|-----|
45| ... | ... | ... | ... | ... |
46
47## 4. 제거 우선순위
48
49| # | 절제 항목 | 휴리스틱 해당 | 영향력 | 토큰 비용 | 우선순위 |
50|---|-----------|-------------|--------|-----------|---------|
51| 1 | ... | 수확체감, Optional | 낮음 | 높음 | 1순위 |
52
53## 5. 누적 테스트 순서
54
55| Test | 누적 제거 항목 | 축소 프롬프트 |
56|------|---------------|-------------|
57| Baseline | (없음) | {기존 산출물 경로 또는 "전체 파이프라인 실행"} |
58| Test 1 | A | [축소 프롬프트 전문] |
59| Test 2 | A + B | [축소 프롬프트 전문] |
60| ... | ... | ... |
61
62## 6. 실행 정보
63
64- Baseline 소스: {기존 산출물 경로 또는 "새로 실행 필요"}
65- 테스트 입력: {사용할 입력 데이터 경로}
66- ablation-runner 모델: Sonnet
67- evaluation-judge 모델: Opus

Notes

  • 이 스킬은 계획서만 작성한다. 실험 실행은 pipeline--run-evaluation에서 수행한다.
  • 설계자와의 대화가 3회 이상 필요하다 (제외 확인, 도메인 차원 승인, 최종 계획 승인).
  • 축소 프롬프트는 원본 SKILL.md를 기반으로 작성하므로, skill_path가 제공되면 더 정확한 프롬프트를 설계할 수 있다.