강의 슬라이드 자동화 도구 (LectureBuilder) 개발 2026
Outcome (완료 조건)
강의 슬라이드 자동화 도구(LectureBuilder) 완성 및 데이터분석 180장 + 생성형 AI 120장 = 300장 슬라이드 자동 생성으로 SKALA 3기 강의 준비 완료 (2026-06-30)
Why This Project
SKALA 3기 강의 운영(2026-07-01)을 위한 lecture-planning-2026 Phase 1의 마지막 단계.
현재 강의안(179장 개요) 완성 상태에서, 이를 기반으로 300장의 실제 강의 슬라이드를 자동으로 생성할 수 있는 에이전트 도구 구축이 핵심.
- 시간 절약: 수동 슬라이드 작성 → AI 자동화 (개발 시간 = 슬라이드 생성 시간보다 단기간 효율)
- 일관성 보장: 모든 모듈이 동일한 템플릿·스타일로 생성 → 강의 경험 균일화
- 재사용성: agentic-automation-portfolio > LectureBuilder 에이전트화로 차후 강의 반복 시 재사용 가능
Context
강의 준비 타임라인:
- ✅ Phase 0 (4월 25-26일): 강의안 초안 완성 (179장) + 데이터셋 35개 선정
- ✅ Phase 1 (4월 27일): 학습목표 구조화 완료 (ABCD 12개 모듈 × sources 링크)
- 🔴 Phase 2 (5월 1주~3주): 강의 슬라이드 자동화 도구 + 300장 생성 ← 현재 (본 프로젝트)
- 🟡 Phase 3 (5월 4주~6월 2주): Jupyter 템플릿 32개 + 실습 가이드
- 🟢 Phase 4 (6월 3주~4주): 평가 기준 최종화 (루브릭, 예시답안)
도구 요구사항:
- 입력: lecture-plan-teaching-guide-2026 (강의안 179장 + 모듈별 Objective)
- 처리: Claude API + Prompt Engineering으로 각 Objective → 2-3장 슬라이드 자동 생성
- 출력: PowerPoint (.pptx) — 데이터분석 180장 + 생성형 AI 120장
- 검증: 각 슬라이드가 Outcome 기준 충족 (학습목표-내용-예제 일관성)
확정 기술 스택 (2026-04-27 재검토 반영):
| 레이어 | 도구 | 역할 | 상태 |
|---|---|---|---|
| ① 콘텐츠 생성 | Claude API (Sonnet) | 학습목표 → 슬라이드 텍스트 Markdown | ✅ 확정 |
| ② PPTX 생성 | Skills API (skill_id: "pptx") | Markdown → .pptx 직접 생성 (메인) | ✅ GA (2025-10) |
| ③ 이미지 생성 | GPT Image 2 (선택) | 슬라이드 삽화·다이어그램 자동 생성 | 🔵 선택 |
| ④ 병합·폴백 | python-pptx | 모듈별 PPTX 병합 + 세부 커스터마이징 | ✅ 폴백 |
⚠️ 기존 계획 수정: python-pptx 메인 → Skills API 메인 (Skills API GA 2025-10 확인)
검토 근거: lecture-slides-automation-review-2026-04-27
검토 결과 (2026-04-27 기준):
| 검토 대상 | 결론 |
|---|---|
| Claude API + Skills API | ✅ 최적 — Native PPTX, 학습목표 100% 매핑, GA |
| OpenAI GPT-4o + python-pptx | ⚠️ 가능하나 Native Skills API 없음, Claude와 품질 동등 |
| Gemini 2.5 Flash + python-pptx | 🔵 비용 대안 ($0.15/M) — 품질 미검증, 학습목표 매핑 불확실 |
| GPT Image 2 | 🔵 이미지 삽화 보조로 선택적 추가 가능 |
| SaaS (Gamma, Canva 등) | ❌ 학습목표 매핑 불가 — 제외 |
관련 배경:
- agentic-ai-curriculum — Agentic AI 4단계 커리큘럼 설계 원칙
- instructional-design — ADDIE 기반 수업설계 방법론
- harness-engineering — Claude Code 자동화 아키텍처 (Phase 4 Orchestration)
Knowledge Pulls
이 프로젝트가 소환하는 위키 지식
Project → Zettel 단방향. 아래 페이지는 이 프로젝트를 모름 (역링크 추가 금지).
Concepts
agentic-ai-curriculum
- 소환 이유: 강의 커리큘럼 4단계 구조 이해 + 모듈별 학습목표 확인
- 활용 지점: LectureBuilder가 생성할 슬라이드의 학습 경로 일관성 검증
instructional-design
- 소환 이유: ADDIE 5단계 교육설계 방법론 + Objective 기반 슬라이드 설계 원칙
- 활용 지점: 각 슬라이드 구성 (이론 → 사례 → 실습 → 평가) 자동 적용
harness-engineering
- 소환 이유: Claude Code 자동화 아키텍처 + Phase 4 Orchestration 패턴
- 활용 지점: LectureBuilder를 Skill/Hook으로 하네스화 → 차후 대규모 배치 지원
Insights
lecture-slides-automation-review-2026-04-27 ⭐ 최신
- 소환 이유: Skills API GA 발견 + GPT Image 2 / Gemini 2.5 경쟁 서비스 전체 재검토
- 활용 지점: 확정 스택(Claude API + Skills API + GPT Image 2 선택 + python-pptx 폴백) 기반
lecture-slides-automation-analysis-2026-04-27
- 소환 이유: 슬라이드 자동화 5가지 솔루션 비교 (SaaS vs Claude API vs 오픈소스)
- 활용 지점: 초기 비교 분석 — 재검토 결과 lecture-slides-automation-review-2026-04-27로 업데이트됨
lecture-datasets-recommendation-2026-04-26
- 소환 이유: 모듈별 실습 데이터셋 35개 확정 + 강의안과의 매핑 완료
- 활용 지점: 슬라이드의 “실습 사례” 섹션에 데이터셋 명시
Plan
gantt title LectureBuilder 개발 타임라인 (Skills API 반영) dateFormat YYYY-MM-DD axisFormat %m/%d section Design Phase (1-2일) Objective→Slide 매핑 규칙 + 템플릿 2개 :d1, 2026-04-28, 2d section Implementation Phase (1-2일) Skills API 연동 + 파일럿 15장 검증 :i1, after d1, 2d section Prompt Engineering (1-2일) 학습목표→Markdown 프롬프트 최적화 :p0, after i1, 2d section Production Phase Module 1-7 배치 생성 (180장) :p1, after p0, 7d Gen-1~6 배치 생성 (120장) :p2, after p1, 5d section Finalization python-pptx 병합 + 최종 검수 :f1, after p2, 3d Skill화 & 배포 :f2, after f1, 2d
총 개발 기간: 3-5일 (기존 5-7일 → 단축, Skills API 활용으로 PPTX 코딩 최소화)
Progress
2026-04-27 — Design Phase + Implementation Phase 완료 (조기) ^2026-04-27
오전: 프로젝트 생성 + 기술 스택 확정
- 강의 슬라이드 자동화 도구 프로젝트 생성
- lecture-planning-2026의 child project로 등록
- 슬라이드 자동화 기술 리서치 완료 (SaaS 6개 + Claude API + Pandoc + Skills API + GPT Image 2 + Gemini 2.5)
- Skills API GA (2025-10) 확인 → python-pptx 메인에서 폴백으로 재포지션
- 확정 스택: Claude API + Skills API (메인) + GPT Image 2 (선택) + python-pptx (폴백)
- 개발 기간 단축: 5-7일 → 3-5일
- 근거 문서:
- lecture-slides-automation-review-2026-04-27 — 전체 재검토
- claude-api-powerpoint-automation-2025-2026 — ⚠️ Contradiction 기록
이후: Design Phase 완료 (4/29 예정 → 4/27 조기 완료)
- lecture-builder-slide-mapping 생성 — TCELS 5유형·슬라이드 수 공식·입력 스키마
- lecture-builder-pptx-template 생성 — 데이터분석(파랑)/생성형AI(보라) 컬러시스템·레이아웃·Skills API Markdown 포맷
이후: Implementation Phase 클라이언트 구현 완료 (5/1 예정 → 4/27 조기 완료)
system/scripts/lecture-builder/5개 파일 작성:config.py— 테마·API·모듈 메타·슬라이드 수 공식objectives_parser.py— 강의안 Objective 자동 파서markdown_builder.py— TCELS Markdown 생성기skills_api_client.py— Skills API 호출·PPTX 추출·재시도lecture_builder.py— CLI (--pilot/--module/--all/--dry-run)
- 다음 세션(4/28)에서:
pip install→ dry-run 검증 → 파일럿 15장 실제 생성
Next Actions
Actions (2026-04-27 기술 스택 확정 기준)
✅ Design Phase (4/28~4/29) — 완료 (4/27 조기 완료)
- Objective → Slide 매핑 규칙 정의 → lecture-builder-slide-mapping
- PPTX 템플릿 2개 설계 (파랑·보라) → lecture-builder-pptx-template
✅ Implementation Phase — 클라이언트 구현 완료 (4/27)
- Skills API 연동 Python 클라이언트 작성 →
system/scripts/lecture-builder/(5개 파일)🔴 Pilot 검증 (4/28 다음 세션 시작점)
- 의존성 설치:
cd system/scripts/lecture-builder && pip install -r requirements.txt- Dry-run 검증 (API 없음):
python lecture_builder.py --pilot --dry-run- 파서 출력 확인:
python objectives_parser.py(강의안 파싱 요약)- 파일럿 실제 생성:
export ANTHROPIC_API_KEY=... && python lecture_builder.py --pilot- 품질 검증: 생성된 15장 슬라이드 강의안 일관성·학습목표 충족 확인
🟠 Prompt Engineering (5/2~5/3)
- 학습목표 → Markdown 슬라이드 Prompt v1 작성 (3-4장 구조: 목표/개념/실습/요약)
- GPT Image 2 연동 여부 결정 (슬라이드 삽화 자동 생성 — 선택사항)
🟡 Production (5/4~5/16)
- Module 1-7 배치 생성 (데이터분석 180장) — 모듈별 PPTX 7개
- Gen-1~6 배치 생성 (생성형AI 120장) — 모듈별 PPTX 6개
🟢 Finalization (5/17~5/20)
- python-pptx로 모듈별 PPTX 병합 → 최종 2개 덱 (데이터분석 180장 + 생성형AI 120장)
- 전체 300장 통합 검수 + 스타일 일관성 확인
- agentic-automation-portfolio > LectureBuilder로 Skill화 (재사용 배포) 🟠 Prompt Engineering (5/2~5/3)
- 학습목표 → Markdown 슬라이드 Prompt v1 작성 (3-4장 구조: 목표/개념/실습/요약)
- GPT Image 2 연동 여부 결정 (슬라이드 삽화 자동 생성 — 선택사항)
🟡 Production (5/4~5/16)
- Module 1-7 배치 생성 (데이터분석 180장) — 모듈별 PPTX 7개
- Gen-1~6 배치 생성 (생성형AI 120장) — 모듈별 PPTX 6개
🟢 Finalization (5/17~5/20)
- python-pptx로 모듈별 PPTX 병합 → 최종 2개 덱 (데이터분석 180장 + 생성형AI 120장)
- 전체 300장 통합 검수 + 스타일 일관성 확인
- agentic-automation-portfolio > LectureBuilder로 Skill화 (재사용 배포)
Risks
식별된 리스크
- R1 (Major): Prompt 품질 변동 — 강의안과 생성 슬라이드 간 의미 이탈 → 대응: 3회 iteration 검증 루프 (Outcome ← Objective ← 생성물)
- R2 (Major): 대규모 배치 처리 (300장) 시 비용/시간 → 대응: 모듈별 분리 생성(각 15-30장) + Batch API 검토
- R3 (Medium): Skills API 파일 크기 제한 (30MB/파일) — 모듈당 30장+ 시 초과 가능 → 대응: 모듈별 분리 생성 후 python-pptx로 병합
- R4 (Medium): 강의 시작 후 슬라이드 수정 필요 → 대응: 최종 검수 2주전(6월 15일)까지 완료하고 버퍼 확보
- R5 (Minor): Gemini 2.5 Flash가 비용 대안으로 부상 — Claude API 비용 증가 시 전환 검토 → 대응: 모니터링, 필요 시 콘텐츠 생성 엔진 교체 (Skills API는 유지)
- R6 (Minor): GPT Image 2 통합 추가 시 API 비용 증가 → 대응: 이미지 생성은 선택적, 초기 버전은 텍스트만으로 출시 후 Phase 2에서 추가
Artifacts
산출물
wiki/projects/lecture-plan-teaching-guide-2026.md— 강의안 (input, 현재 179장)lecture-slides-data-analytics-180.pptx(또는 .md) — 데이터분석 슬라이드 완성본lecture-slides-generative-ai-120.pptx(또는 .md) — 생성형 AI 슬라이드 완성본.claude/skills/lecture-builder/SKILL.md— LectureBuilder 스킬 문서 (배포)wiki/projects/lecture-slides-2026.md— 본 프로젝트 페이지 (retrospective 완료)
Related Projects
- lecture-planning-2026 — 부모 프로젝트 (전체 강의 준비)
- agentic-automation-portfolio — LectureBuilder 에이전트 (차후 재사용/고도화)
- lecture-plan-teaching-guide-2026 — 강의안 상세 (input 문서)
Retrospective
Close 시 필수 채움 (비어있으면 close 차단)
- 무엇이 잘 됐나: TBD
- 무엇이 예상과 달랐나: TBD
- 다음 프로젝트에 이어갈 것: TBD
- 새로 생긴 concepts/sources/insights:
- TBD
- Phase 8 판단: (에이전트 오케스트레이션 패턴 재사용성 평가)