Argos β AI μ€μκ° μμ
λΆμ νλ«νΌ
"100κ°μ λμΌλ‘ κ΅μ€μ λ³Έλ€" β ν mythos
κ°μ¬λ μ€λμ λ³Έλ€. μμ₯μ μ΄μ λ₯Ό λ³Έλ€. λ©ν λ λ΄μΌμ λ§λλ€.
Argosλ μκ° μ β μμ
μ€ β μμ
ν β μ΄μ μ 체 λ₯Ό κ΄ν΅νλ AI λΆμ νλ«νΌμ
λλ€.
μκ° μ μ² λ¨κ³μμ AIκ° μ§μμμ μλμ μ¬μ μ§λ¨νκ³ , μμ
μ€μλ μ€μκ° μ΄ν΄λλ₯Ό λΆμνλ©°, μμ
νμλ κ°μΈλ³ νμ΅ λ¦¬ν¬νΈλ₯Ό μμ±νκ³ , μ΄μ μ°¨μμμλ μ΄ν μνμ μ‘°κΈ°μ κ°μ§ν©λλ€.
μ¬μ¬μμμ μν ν΅μ¬ κΈ°μ Deep-Dive λ°λ‘κ°κΈ°
νλͺ©
λ΄μ©
λ°λ‘κ°κΈ°
π
μμ©ν μμ€μ νμ§ λ³΄μ¦
97건μ νλ©΄λ³ μμΈ μλλ¦¬μ€ λ° 1,146건μ E2E μλν ν
μ€νΈ ν΅κ³Ό
ν
μ€νΈμΌμ΄μ€ νμΈ
π‘οΈ
보μ λ° λ°μ΄ν° 무결μ±
νμ κ° μλ²½ν λ°μ΄ν° 격리 λ° RLS 보μ μν€ν
μ²
Wiki μ½κΈ°
π§
AI λΆμ μμ§ μμΈ λ‘μ§
3-Signal λ³΅ν© λ°μ΄ν°λ₯Ό νμ©ν μ‘°κΈ° μ΄ν κ°μ§ μκ³ λ¦¬μ¦ λͺ
μΈμ
μμΈ λΆμ
π
λ°λͺ¨ μλ리μ€
μ¬μ¬μμμ© 10λΆ μμ° μ€ν¬λ¦½νΈ (4κ° μν νλ¦)
λ°λͺ¨ κ°μ΄λ
ν
μ€νΈ κ³μ (λΉλ°λ²νΈ: test1234)
μ΄λ©μΌ
μν
μ΄λ¦
νΉμ±
owner@kit.ac.kr
μμ₯
λ°μμ₯
νμ μ 체 λμ보λ
teacher@kit.ac.kr
κ°μ¬
κΉκ°μ¬
μΈμ
3κ°, ν΄μ¦ 15κ°
mentor@kit.ac.kr
λ©ν
μ΄λ©ν
μκ°μ μλ΄ κ΄λ¦¬
student1@kit.ac.kr
μκ°μ
κΉλ―Όμ€
μ΄ν μν, μ λ΅λ₯ κΈλ½
student2@kit.ac.kr
μκ°μ
μ΄μ§μ
μ£Όμ, μ 체 ν¨ν΄
student3@kit.ac.kr
μκ°μ
λ°μμ°
μνΈ, ν₯μ ν¨ν΄
λ‘κ·ΈμΈ νμ΄μ§μμ "ν
μ€νΈ κ³μ μΌλ‘ 체ννκΈ°" λ²νΌμ ν΄λ¦νλ©΄ μν΄λ¦ λ‘κ·ΈμΈμ΄ κ°λ₯ν©λλ€.
Argosλ μκ° μ β μμ
μ€ β μμ
ν β μ΄μ μ 체 μ£ΌκΈ°λ₯Ό AIλ‘ μ»€λ²ν©λλ€.
μκ° μ β μμ€ λ―Έμ€λ§€μΉ μλ°©
ID
κΈ°λ₯
μ€λͺ
μν
F0
μκ°μ μ¬μ μ€λ ₯ μ κ²
μκ° μ μ² λ¨κ³μμ AIκ° μ½λ© κΈ°μ΄Β·λ
Όλ¦¬μ μ¬κ³ λ ₯Β·IT μ©μ΄ μ΄ν΄λλ₯Ό μ§λ¨. μλ΄μ¬κ° λ¬Έκ³Ό μΆμ μ΄λΌ λνλ§μΌλ‘ μ€λ ₯ νλ³μ΄ μ΄λ €μ΄ λ¬Έμ λ₯Ό ν΄κ²°. κ²°κ³Όλ₯Ό λ°νμΌλ‘ λ©ν κ° μ ν©ν κ³Όμ μ μΆμ²νκ³ , κ°μ¬κ° λ° λ°°μ μ μμ€ λΆν¬λ₯Ό μ¬μ νμ
β
μλ£
μμ
μ€ β μ€μκ° μ΄ν΄λ νμ
ID
κΈ°λ₯
μ€λͺ
μν
F1
μμ
μΈμ
κ΄λ¦¬
κ°μ¬κ° μΈμ
μμ± β μ°Έμ¬ μ½λ λ°κΈ β μκ°μ λͺ¨λ°μΌ μ μ
β
μλ£
F2
AI μ½λ μ€λν« ν΄μ¦ μλμμ±
μμ
μ£Όμ μ
λ ₯ β AI(Gemini 3 Flash)κ° μΆλ ₯ μμΈ‘, λ²κ·Έ μ°ΎκΈ°, λΉμΉΈ μ±μ°κΈ° λ± μ½λ© νΉν ν΄μ¦ μμ± (3~15λ¬Έμ , 5κ° λμ΄λ ν리μ
)
β
μλ£
F3
μκ°μ μ€μκ° ν΄μ¦ μλ΅
μκ°μμ΄ λͺ¨λ°μΌμμ κ°κ΄μ + μ£Όκ΄μ ν΄μ¦μ μ€μκ° μλ΅
β
μλ£
F4
μ€μκ° μ΄ν΄λ ννΈλ§΅
μλ΅μ΄ λ€μ΄μ¬ λλ§λ€ κ°λ
λ³ μ΄ν΄λλ₯Ό λ
Ήμ(μ΄ν΄)/λΉ¨κ°(λ―Έμ΄ν΄) ννΈλ§΅μΌλ‘ μ€μκ° μκ°ν
β
μλ£
F5
AI κ°μ¬ μ½μΉ
μ΄ν΄λ λ°μ΄ν° λΆμ β "μ΄ κ°λ
μμ 60%κ° μ½ν©λλ€" κ°μ μ€μκ° μ½μΉ + λΉμ 곡μ/κ²½λ ₯μ μμ€λ³ κ΅μλ² μ μ
β
μλ£
F6
μλ°©ν₯ νΌλλ°± 루ν
보좩 μ€λͺ
ν μ¬ν΄μ¦ β μ΄ν΄λ λ³ν(λΈν) μκ°νλ‘ κ΅μ κ°μ
ν¨κ³Ό νμΈ
β
μλ£
μμ
ν β κ°μΈλ³ νμ΅ κ²½λ‘
ID
κΈ°λ₯
μ€λͺ
μν
F7
μκ°μ νμ΅ λ¦¬ν¬νΈ
μμ
ν κ°μΈλ³ μ΄ν΄λ μΆμ΄, μ½μ κ°λ
, μΆμ² νμ΅ κ²½λ‘ μλ μμ±
β
μλ£
F10
AI μλ μ§λ¨
κ³Όλͺ©λ³(Spring/React/Python λ±) μ κΈ° μμ€ μΈ‘μ + λ μ΄λ μ°¨νΈ + μΆμ
β
μλ£
μ΄μ β μ΄ν λ°©μ§ & κ²½μ λΆμ
ID
κΈ°λ₯
μ€λͺ
μν
F8
μμ₯ κ²½μ λμ보λ
νμ μ 체 μμ
νμ§ + λ°λ³ νκ· μ΄ν΄λ + μ΄ν μν μκ°μ μλ κ°μ§ + κ³Όλͺ©λ³ μμ€ λΆν¬
β
μλ£
F9
λ©ν μ΄ν λ°©μ§ λ·°
AI μ΄ν μν λ μ΄λ(3-Signal) + μλ΄ λΈλ¦¬ν μλ μμ± + λ΄λΆ κ°μ μΆμ²μΌλ‘ λ©ν μ μ μ μ μλ΄ μ§μ
β
μλ£
μμ
κΈ°μ
νλ μμν¬
Next.js 16 (App Router, Server Components)
DB / Auth / Realtime
Supabase (PostgreSQL + RLS + Realtime + Auth)
AI
Vercel AI SDK + Google Gemini 3 Flash ($0 λ¬΄λ£ ν°μ΄)
κ²μ¦
Zod v4 (μΈλΆ μ
λ ₯ + AI μλ΅ μ μ κ²μ¦)
νλ‘ νΈμλ
Tailwind CSS v4 + Radix UI + Recharts
ν
μ€νΈ
Vitest + Playwright (E2E 1,146건)
λ°°ν¬
Vercel (Edge)
λ°μ΄λΈμ½λ©
Claude Code (Opus 4.6, 1M context)
src/
βββ app/
β βββ api/
β β βββ ai/{quiz,analysis,coaching,report,mentor-briefing,assessment}/
β β βββ auth/register/
β β βββ sessions/, sessions/[id]/, sessions/join/
β β βββ quizzes/, responses/
β β βββ dashboard/
β β βββ mentor/{students,students/[id],consultations}/
β βββ landing/ # λλ© νμ΄μ§
β βββ instructor/ # κ°μ¬ λ·° (μΈμ
λͺ©λ‘, λΌμ΄λΈ λμ보λ, 리ν¬νΈ)
β βββ student/ # μκ°μ λ·° (λμ보λ, ν΄μ¦, κ²°κ³Ό, 리ν¬νΈ, μλ μ§λ¨)
β βββ owner/ # μμ₯ λ·° (κ²½μ λμ보λ 5ν)
β βββ mentor/ # λ©ν λ·° (μ΄ν λ μ΄λ, μκ°μ μμΈ)
βββ components/ui/ # shadcn/ui μ€νμΌ μ»΄ν¬λνΈ (16κ°)
βββ hooks/ # use-realtime, use-auth
βββ lib/
β βββ ai/{model,prompts/,schemas/}
β βββ supabase/{client,server,rsc,admin,middleware}
β βββ constants.ts
βββ types/database.ts
supabase/migrations/ # 8κ° λ§μ΄κ·Έλ μ΄μ
scripts/seed-demo.ts # λ°λͺ¨ μλ λ°μ΄ν°
docs/
βββ wiki/ # 73νμ΄μ§ Karpathy Wiki
βββ tc/ # 15νλ©΄ 97건 ν
μ€νΈμΌμ΄μ€
βββ PLANNING.md # κΈ°νμ
βββ STORYBOARD.md # UI μ€ν 리보λ
βββ DEMO_SCRIPT.md # μ¬μ¬μμμ© λ°λͺ¨ μλ리μ€
βββ CHANGELOG.md # μμ μ΄λ ₯
βββ SETUP_GUIDE.md # νκ²½ κ΅¬μΆ κ°μ΄λ
βββ MEETING_LOG.md # νμλ‘
.env.local νμΌμ μμ±νμΈμ:
# Supabase
NEXT_PUBLIC_SUPABASE_URL = your_supabase_url
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY = sb_publishable_...
SUPABASE_SECRET_KEY = sb_secret_...
# AI (Gemini 3 Flash κΈ°λ³Έ β 무λ£)
GOOGLE_GENERATIVE_AI_API_KEY = your_gemini_key
# μ ν: Claude Sonnet (νμ§ μ΅μ°μ μ)
# ANTHROPIC_API_KEY=your_anthropic_key
# AI_MODEL=claude-sonnet
pnpm seed # ν
μ€νΈ κ³μ 8κ° + μμ
/ν΄μ¦/μλ΅/λΆμ λ°μ΄ν° μμ±
pnpm test # Vitest λ¨μ ν
μ€νΈ
pnpm test:e2e # Playwright E2E (1,146건)
Method
Path
μ€λͺ
GET
/api/sessions
μΈμ
λͺ©λ‘ μ‘°ν (μν κΈ°λ° νν°λ§)
POST
/api/sessions
μΈμ
μμ±
GET/PATCH/DELETE
/api/sessions/[id]
μΈμ
μμΈ/μμ /μμ
POST
/api/sessions/join
μκ°μ μΈμ
μ°Έμ¬ (μ°Έμ¬ μ½λ)
AI κΈ°λ₯ (F2, F4, F5, F7, F9, F10)
Method
Path
μ€λͺ
POST
/api/ai/quiz
AI ν΄μ¦ μμ± (3~15λ¬Έμ , λμ΄λλ³)
GET/POST
/api/ai/analysis
μ΄ν΄λ λΆμ (λΌμ΄λλ³/μ 체)
POST
/api/ai/coaching
AI κ°μ¬ μ½μΉ (ꡬ쑰ν 6νλͺ©)
GET/POST
/api/ai/report
μκ°μ νμ΅ λ¦¬ν¬νΈ
POST
/api/ai/mentor-briefing
λ©ν μλ΄ λΈλ¦¬ν
GET/POST
/api/ai/assessment
κ³Όλͺ©λ³ AI μλ μ§λ¨
Method
Path
μ€λͺ
GET
/api/quizzes
ν΄μ¦ μ‘°ν (μκ°μ: μ λ΅ λ§μ€νΉ)
GET/POST
/api/responses
μλ΅ μ μΆ/μ‘°ν
λμ보λ/λ©ν (F8, F9)
Method
Path
μ€λͺ
GET
/api/dashboard
μμ₯ κ²½μ λμ보λ
GET
/api/mentor/students
μκ°μ μ΄ν μν λͺ©λ‘ (3-Signal)
GET
/api/mentor/students/[id]
μκ°μ μμΈ (μΆμ΄, μ½μ , μλ΄κΈ°λ‘)
GET/POST
/api/mentor/consultations
μλ΄ κΈ°λ‘ CRUD
μν
μκ°μΆ
ν΅μ¬ νλ©΄
νλ©΄ μ
κ°μ¬
μ§κΈ μ΄ μκ°
λΌμ΄λΈ λμ보λ (ννΈλ§΅ + AI μ½μΉ + ν΄μ¦ ν리μ
) + μκ°μ μμ€ νμΈ
4
μκ°μ
μκ° μ ~ μμ
ν
μ¬μ μ€λ ₯ μ κ² + ν΄μ¦ μλ΅ + κ²°κ³Ό + 리ν¬νΈ + μλ μ§λ¨
7
μμ₯
μ΄μ κΉμ§
κ²½μ λμ보λ 5ν (κ°μ/μΈμ
/μκ°μ/μμ€λΆν¬/μ΄ν)
1 (5ν)
λ©ν
λ΄μΌμ λ§λλ€
μ΄ν λ μ΄λ + AI μλ΄ λΈλ¦¬ν + κ³Όμ μΆμ² + μλ΄ κΈ°λ‘
2
μν
λꡬ
κΈ°ν Β· λ°±μλ Β· AI Β· DB
Claude Code (Opus 4.6)
νλ‘ νΈμλ Β· λμμΈ
νμ λ΄λΉ
λν : 2026 KIT λ°μ΄λΈμ½λ© 곡λͺ¨μ
μ£Όμ : AIνμ© μ°¨μΈλ κ΅μ‘ μ루μ
νλͺ
: mythos
νλ‘μ νΈλͺ
: Argos (κ·Έλ¦¬μ€ μ ν 100κ°μ λμ κ°μ§ κ±°μΈ)