Initial commit: Kei Design Agent

콘텐츠를 시각적으로 구조화된 슬라이드 HTML로 변환하는 독립 에이전트.

아키텍처 (4단계 파이프라인):
  1. Kei 실장 (Opus) — 콘텐츠 유형 분류 + 블록 배치
  2. 디자인 팀장 (Sonnet) — 레이아웃 컨셉 (블록 배치 + 페이지 수)
  3. 텍스트 편집자 (Sonnet) — 슬롯 텍스트 정리 (핵심 유지)
  4. CSS Grid 렌더러 — HTML 조립

블록 템플릿 7종:
  comparison, card-grid, relationship, process,
  quote-block, conclusion-bar, comparison-table

기술 스택:
  FastAPI + Anthropic API + Jinja2 + CSS Grid
  Pretendard Variable 한국어 폰트

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-24 17:25:47 +09:00
commit c42e65fc7e
28 changed files with 3302 additions and 0 deletions

View File

@@ -0,0 +1,58 @@
<!-- 비교 테이블 블록: 다항목 비교 -->
<div class="block-table">
<table class="comparison-table">
<thead>
<tr>
{% for header in headers %}
<th{% if loop.first %} class="table-row-header"{% endif %}>{{ header }}</th>
{% endfor %}
</tr>
</thead>
<tbody>
{% for row in rows %}
<tr>
{% for cell in row %}
<td{% if loop.first %} class="table-row-header"{% endif %}>{{ cell }}</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
<style>
.block-table {
overflow: auto;
height: 100%;
display: flex;
align-items: flex-start;
}
.comparison-table {
width: 100%;
border-collapse: collapse;
font-size: var(--font-caption);
line-height: var(--line-height-ko);
}
.comparison-table th {
background: var(--color-primary);
color: white;
font-weight: var(--weight-bold);
padding: var(--spacing-small) var(--spacing-inner);
text-align: left;
font-size: var(--font-caption);
}
.comparison-table td {
padding: var(--spacing-small) var(--spacing-inner);
border-bottom: var(--border-width) solid var(--color-border);
font-size: var(--font-caption);
vertical-align: top;
}
.comparison-table tbody tr:nth-child(even) {
background: var(--color-bg-subtle);
}
.table-row-header {
font-weight: var(--weight-bold);
color: var(--color-primary);
white-space: nowrap;
}
</style>