Quy Trình Obsidian
Muted
NCKH Xuân Đỉnh
Workflows chi tiết — CXK Obsidian Skill
🎓 NCS1: Võ Trần Gia Hiếu
📹 NCS2: Đỗ Đoàn Anh Tuấn
🩺 CVYK: Lương y Vũ Thế Sỹ
🏛️ Bảo trợ: Công ty Vaga
📅 Năm: 2026
Workflows chi tiết — CXK Obsidian Skill
Workflow 1: Tạo thẻ tri thức
| Tham số |
Bắt buộc |
Ví dụ |
--category |
✅ |
oa, lbp, osteo, sarc, fall, neck, frail |
--title |
✅ |
"Định nghĩa thoái hoá khớp" |
--chapter |
✅ |
"21" (ĐHYHN Tập 2) |
Quy trình
1. Script đọc template KC_template.md
2. Tìm ID cao nhất hiện có (KC-OA-001, 002...) → tăng 1
3. Tạo file mới: knowledge-cards/{category}/KC-{CAT}-{NNN}.md
4. Điền YAML frontmatter: id, category, date, source
5. NCS điền nội dung y khoa (hoặc AI draft)
6. Validate bằng validate_schema.py
7. Cập nhật MOC tương ứng
Mapping category → thư mục
| Category |
Thư mục |
MOC |
| oa |
knee-oa/ |
MOC_THOAI_HOA_KHOP.md |
| lbp |
low-back-pain/ |
MOC_DAU_LUNG.md |
| osteo |
osteoporosis/ |
MOC_LOANG_XUONG.md |
| sarc |
sarcopenia/ |
Chưa có |
| fall |
falls-prevention/ |
Chưa có |
| neck |
neck-shoulder/ |
Chưa có |
| frail |
frailty/ |
Chưa có |
Workflow 4: Cập nhật MOC
Quy trình
1. Script quét knowledge-cards/{category}/ tìm tất cả KC-*.md
2. Đọc YAML frontmatter mỗi file (id, title, status)
3. Tạo bảng Markdown: ID | Tiêu đề | Trạng thái
4. Thay thế phần "## Thẻ tri thức" trong MOC file
5. Cập nhật đếm tổng
Workflow 7: Audit vault
Kiểm tra 8 tiêu chí
| # |
Tiêu chí |
Cách kiểm tra |
| 1 |
YAML frontmatter hợp lệ |
Parse YAML, check required fields |
| 2 |
Có id field |
Regex KC-{CAT}-{NNN} |
| 3 |
Có status field |
Enum: DRAFT, NCS_REVIEWED, CLINICAL_REVIEW, APPROVED |
| 4 |
Có red_flags field |
List, có thể rỗng |
| 5 |
Có disclaimer |
Tìm "lời khuyên an toàn" hoặc "Disclaimer" |
| 6 |
Có provenance |
Object với source, chapter |
| 7 |
File trong đúng thư mục |
KC-OA-* phải ở knee-oa/ |
| 8 |
MOC link khớp |
File trong MOC phải tồn tại |
Output
=== AUDIT VAULT REPORT ===
Total KC files: 25
Pass: 23
Fail: 2
FAILURES:
❌ KC-OA-015: Missing red_flags field
❌ KC-LBP-003: Wrong directory (should be low-back-pain/)