---
url: https://docs.nemo12.com/architecture/sdd-043-ai-teen-program.md
description: >-
  Bản nháp chương trình AI Teen (SDD-043) ở learn.nemo12.com/ai-teen: khuôn
  course, nơi đặt nội dung và skill lấy từ CCS.
---

# SDD-043 — Chương trình AI Teen

Chỉ đạo chủ dự án 23.09.2026 (SRC-1005): dựng chương trình **AI Teen** ở
`learn.nemo12.com/ai-teen`, gồm các course AI Teen 1 tới 3. Chủ dự án đưa thông tin dần, hệ dựng
dần; tài liệu này ghi khung và những quyết định đã tự chốt để vòng sau không bàn lại.

## 1. Khuôn

| Tầng | Luật |
| --- | --- |
| Program | `ai-teen`, một trang liệt kê các course |
| Course | `ai-teen-1`, `ai-teen-2`, `ai-teen-3`; learner **ghi danh từng course** |
| Unit | 6-8 unit mỗi course; mỗi unit dạy 3-5 **key concept** |
| Lesson | vài lesson mỗi unit; mở khi đã ghi danh |
| Performance Task | đúng MỘT mỗi unit; khai **skill nào, level nào** trước, rồi mới tới **rubric** |
| Skills của course | SUY RA từ các task của course, mỗi skill lấy level cao nhất; không khai tay lần hai |

Luật khuôn được máy kiểm ở `apps/learn/src/aiTeen/program.test.ts` (số unit, số key concept,
skill có thật trong CCS, id course khớp API).

Địa chỉ: `/ai-teen`, `/ai-teen/{course}`, `/ai-teen/{course}/units/{n}`. Route nằm sau cổng đăng
nhập của `App.tsx`, nên người chưa đăng nhập gặp màn đăng nhập. Chưa ghi danh vẫn đọc được course
và unit: learner cần đọc để quyết định có ghi danh không.

## 2. Nội dung nằm ở đâu

Nội dung (course, unit, lesson, task, rubric) nằm trong code, `apps/learn/src/aiTeen/program.ts`,
chưa vào D1. Lý do: khung đang thay mỗi ngày theo thông tin chủ dự án đưa vào, và một vòng
seed-data cho mỗi lần sửa chữ là quá nặng. Khi khung đứng yên thì chuyển vào D1.
Từ SRC-1284 (07.10.2026) đường chuyển đã được thiết kế: D1 là nguồn sự thật để sửa và phát hành từ
Dolphin, repo giữ bản chụp sinh ra, xem [SDD-056](../sdd-056-ai-teen-content-editor.md).

API chỉ giữ một sự thật: ghi danh. Bảng `ai_teen_enrollments` (migration 0285), ba route
`GET /v1/ai-teen/enrollments`, `POST /v1/ai-teen/courses/{id}/enroll|unenroll`. Server chỉ nhận
id course có trong `workers/api/src/modules/aiTeen/courseIds.ts` và kiểm `canAccessLearner`
(QG-008). Không dùng `course_enrollments` (0074) vì bảng ấy là lớp có lịch, khoá ngoại tới
`courses` có giờ học và sức chứa.

## 3. Skill lấy từ CCS

Nguồn: `conan1.com/ccs`, bốn domain đầu: Customer Understanding (CU), Generative AI (GenAI), Core
Cognitive (Cognitive), Digital Product Development (DPD). Hệ bậc của CCS: Domain → Area →
Competency → Skill → năm mặt con.

✍️ **Chọn tầng Skill (153 skill), không lấy tầng năm mặt con.** Tầng thấp nhất của CCS là năm mặt
lặp lại y hệt dưới MỌI skill (Preparation & Planning, Execution & Workflow, Collaboration &
Interaction, Evaluation & Quality Assurance, Optimization & Improvement): 765 dòng nhưng chỉ có 5
tên. Gắn một task vào "Preparation & Planning" không nói được task ấy đo cái gì. Tầng Skill là tầng
thấp nhất còn có tên riêng. Chủ dự án muốn xuống tầng mặt con thì thêm trường `facet` vào
`SkillTarget`, không đổi khuôn.

Dữ liệu chụp ở `apps/learn/src/aiTeen/data/ccs-skills.json` (id dạng `dpd-3.2-4` = domain,
competency 3.2, skill thứ 4).

✍️ **Thang level tạm 1-4.** CCS chưa có mô tả level (`competency_skill_levels` rỗng ở cả API lẫn
dữ liệu nguồn), nên dùng thang tạm: Nhận biết · Làm có hướng dẫn · Tự làm được · Vận dụng linh
hoạt. Chờ chủ dự án chốt.

## 4. Performance Task lấy từ sutucon

Sáu product của khoá AI Teen trên sutucon.com (Personal Website, Family Website, Learning Website,
Apple Podcast, Web Game, Second Brain) được nhấc sang làm Performance Task, chụp ở
`apps/learn/src/aiTeen/data/products.json`. Bốn product đầu có rubric (5 hoặc 9 tiêu chí, 5 mức)
và rubric ấy hiện nguyên văn; hai product sau chưa có rubric ở nguồn nên trang ghi "đang soạn".
Các unit còn lại lấy tên task từ 12 unit của sutucon (Passion Hub, Prompt Cookbook, Custom Domain,
Smart Study Hub, Exam Prep Portal, Showcase Portfolio, Pedagogical Chatbot, Gamified Quiz, AI
Utility Hub) và từ bản CVA (My First Model).

✍️ **Chia ba course, mỗi course 6 unit**, là bản nháp để chủ dự án sửa: AI Teen 1 làm web đầu tiên
cùng AI, AI Teen 2 học giỏi hơn bằng sản phẩm tự làm, AI Teen 3 làm sản phẩm cho người khác dùng.
Key concept và tên lesson là khung do Claude đề xuất, mọi course mang `status: "draft"`.

## 5. Còn mở

* Mô tả level cho từng skill (hoặc chốt thang chung).
* Rubric cho các task chưa có product nguồn.
* Nội dung lesson thật; khi có thì lesson thành trang riêng.
* Chuyển nội dung vào D1 khi khung đứng yên.

## Các trang

Trước SRC-1322 (10.10.2026) toàn bộ tài liệu này nằm trong một file. Nay phần trên là đặc tả chung; các trang dưới đây đọc độc lập được, mỗi trang gom các vòng quyết định theo chủ đề, vòng duyệt cũ ở cuối dưới mục **Lịch sử quyết định**. Nội dung giữ nguyên chữ, chỉ đổi chỗ.

| Trang | Nội dung |
| --- | --- |
| [SDD-043 · Unit, lesson, nội dung học thật và lưu kết quả bài tập](./units-and-exercises.md) | AI Teen (SDD-043): unit và lesson hai kiểu hiển thị, nội dung học thật và bài tập, cách lưu kết quả bài tập (SRC-1113, 1117, 1118). |
| [SDD-043 · Journey-first: hai tầng hành trình](./journey-first.md) | AI Teen (SDD-043) §9: hành trình hai tầng của course và unit, journey-first thay cho danh sách bài (SRC-1251). |
| [SDD-043 · Cổng đọc ba câu, Evidence Registry và Learner Model](./reading-gate-and-evidence.md) | AI Teen (SDD-043) §10-11: lesson chia nhiều phần với ba câu kiểm sau mỗi phần; kết quả vào Evidence Registry và Learner Model. |
| [SDD-043 · Overview, Learning Activities và Learning Cycle](./learning-cycle.md) | AI Teen (SDD-043) §12: Overview, Learning Activities, Learning Cycle, Make Meaning, khuôn lesson theo course (SRC-1269 và các vòng sau). |
| [SDD-043 · Lát cắt ở admin và Dolphin, skill và level, bố cục trang lesson](./admin-skills-layout.md) | AI Teen (SDD-043): lát cắt AI Teen ở admin và Dolphin, skill-level-chỉ báo ở màn Mục tiêu, bố cục trang lesson card Activity bên trái. |
| [SDD-043 · Tick từng bước và vòng duyệt nội dung 08.10.2026](./step-ticks.md) | AI Teen (SDD-043) §15-16: learner tick từng bước của lesson, lưu theo learner, quyền xem; vòng duyệt nội dung 08.10.2026. |
