outline-writer
npx skills add https://github.com/hoangvantuan/claude-plugin --skill outline-writer
Agent 安装分布
Skill 文档
Outline Writer â Content Analysis & Outline Generator
Tạo professional outline từ content input. Há» trợ nhiá»u output types: presentation slides, blog post, documentation. Vietnamese default.
Output Folder Structure
output/
âââ {slug}-{YYMMDD-HHmm}/
âââ outline.md
âââ content-map.md
âââ coverage-report.md
âââ research-notes.md (nếu có research)
Naming rules:
{slug}: kebab-case từ topic chÃnh (max 30 chars){YYMMDD-HHmm}: timestamp lúc tạo folder
Step 0: Detect Mode
- Kiá»m tra input từ user:
- Nếu user chá» và o folder output Äã có (chứa
outline.md) â Hưá»ng dẫn: “Outline Äã có. Dùng/slidev-builder {folder}/Äá» tạo slides, hoặc cung cấp ná»i dung má»i Äá» tạo outline má»i.” - Nếu user cung cấp ná»i dung má»i (text, file path) â Tiếp tục Step 1
Step 1: Tiếp nháºn ná»i dung & Cấu hình
- Äá»c input từ user: text trá»±c tiếp hoặc file path (.md, .txt, .pdf)
- Nếu input là file path, Äá»c ná»i dung file
- Phân tÃch sÆ¡ bá»: topic, length, complexity
- Há»i user bằng AskUserQuestion (4 câu há»i trong 1 lần):
Câu há»i 1 – Output type (header: “Output type”):
- “Presentation slides” – Outline cho slide deck (tiếp tục há»i audience & framework á» Step 1.1)
- “Blog post” – Outline cho bà i viết blog
- “Documentation/Report” – Outline cho tà i liá»u/báo cáo
Câu há»i 2 – Mức Äá» chi tiết (header: “Detail level”):
- “L1 – Tá»ng quan” – ChỠý chÃnh, bullet ngắn gá»n (5+ items)
- “L2 – Cân bằng” – à chÃnh + giải thÃch + và dụ minh há»a (10+ items)
- “L3 – Chi tiết” – Äầy Äá»§ ná»i dung, deep dive, code examples (18+ items)
Câu há»i 3 – Ngôn ngữ (header: “Language”):
- “Tiếng Viá»t” – Toà n bá» ná»i dung tiếng Viá»t (Recommended)
- “English” – Toà n bá» ná»i dung tiếng Anh
- “Song ngữ” – Title tiếng Anh, body tiếng Viá»t
Câu há»i 4 – Research bá» sung (header: “Research”):
- “Chá» dùng source” – 100% từ ná»i dung Äầu và o, không tìm thêm
- “Research thêm” – Tìm thêm data, statistics, examples từ web
- “Auto” – Tá»± Äá»ng: research nếu source Ãt thông tin, skip nếu Äá»§
Logic Recommended cho câu há»i 4: Source < 500 words HOẶC thiếu data/metrics â recommend “Research thêm”. Source >= 500 words Và Äá»§ data â recommend “Chá» dùng source”.
- Nếu output_type = “Presentation slides” â há»i thêm content type (AskUserQuestion, header: “Content type”):
- “Hưá»ng dẫn/Giáo dục” – Giải thÃch khái niá»m, tutorial (Gagné + scaffolding)
- “Business/Báo cáo” – Phân tÃch, Äá» xuất, báo cáo (Pyramid Principle)
- “Thuyết phục/Pitch” – Bán ý tưá»ng, pitch sản phẩm (PAS + Sparkline)
- “Technical/Process” – Quy trình, kiến trúc, so sánh kỹ thuáºt (SCR + step-by-step)
Step 1.1: Audience & Framework Selection (Chá» khi output_type = “Presentation slides”)
Há»i user bằng AskUserQuestion (1-2 câu há»i tùy content type):
Câu há»i 1 â Audience (header: “Audience”, luôn há»i):
- “Executive/Decision maker” – C-level, cần bottom-line upfront, metrics, ngắn gá»n
- “Technical team” – Engineers, developers â jargon OK, chi tiết kỹ thuáºt
- “Mixed/General” – Äa dạng trình Äá» â cần giải thÃch thuáºt ngữ, và dụ cụ thá»
- “Workshop/Hands-on” – Äà o tạo thá»±c hà nh â interactive, knowledge checks
Câu há»i 2 â Framework (header: “Framework”, chá» há»i khi content type = “Business/Báo cáo”):
- “Pyramid Principle” – Kết luáºn trưá»c, supporting arguments sau (Recommended khi audience = Mixed)
- “SCQA” – Situation â Complication â Question â Answer (Recommended khi audience = Executive)
Audience ảnh hưá»ng outline:
| Audience | Ảnh hưá»ng |
|---|---|
| Executive | Ưu tiên metrics, bottom-line upfront, max 12-15 slides |
| Technical | Sequential IA, jargon OK, code examples, L2-L3 phù hợp |
| Mixed | Thêm definition cho thuáºt ngữ, và dụ concrete bắt buá»c |
| Workshop | Force Gagné framework, thêm knowledge check items |
Step 1.5: Research bá» sung (Optional)
Chạy sau Step 1, trưá»c Step 2. Quyết Äá»nh dá»±a trên câu há»i Research á» Step 1.
Khi nà o chạy:
- User chá»n “Research thêm” â luôn chạy
- User chá»n “Auto” â chạy NẾU source < 500 words HOẶC thiếu data/metrics
- User chá»n “Chá» dùng source” â SKIP hoà n toà n
Process:
- Extract 3-5 topic keywords từ source
- Tạo 2-3 search queries:
"{topic}" statistics data {nÄm},"{topic}" trends insights,"{topic}" examples best practices - Chạy WebSearch cho má»i query
- Extract findings relevant: statistics, data points, examples, quotes
- Lưu kết quả và o
{output_folder}/research-notes.md - Append selected items và o Content Map vá»i prefix
[R] - Thông báo user: “Research xong: X data points, Y insights. Äã lưu tại research-notes.md”
Quy tắc: Chá» thông tin factual có nguá»n. Ưu tiên: sá» liá»u > xu hưá»ng > và dụ. KHÃNG thay thế source, chá» Bá» SUNG. Max 10 items.
Visual Patterns per Content Type (Chá» khi output_type = “Presentation slides”)
| Content Type | Visual Patterns | Recommended Slide Types |
|---|---|---|
| Hưá»ng dẫn/Giáo dục | Numbered steps, before/after comparison | content, comparison, statement, quote |
| Business/Báo cáo | Accent bars, data callout | content, metric, comparison, table, summary |
| Thuyết phục/Pitch | Bold statements, high contrast, CTA | statement (30%+), metric, quote, cta |
| Technical/Process | Code blocks, process flow, Mermaid | content, comparison, code, diagram, table |
Step 2: Phân tÃch ná»i dung & Tạo outline
- Tạo output folder:
output/{slug}-{YYMMDD-HHmm}/ - Äá»c
references/outline-rules.md(relative to this skill folder) Äá» nắm quy tắc outline - Framework selection:
- Presentation: áp dụng framework tương ứng content type (xem Content Type â Framework Mapping trong outline-rules.md). Nếu audience = “Workshop”, override sang Gagné
- Blog/Doc: sắp xếp logic â Introduction â Body sections (clustered) â Conclusion
- Content Map: Parse source â silent clustering â extract topics â assign priority (
must/should/nice) theo detail level. Nếu Step 1.5 Äã chạy â append items[R]. Lưu{output_folder}/content-map.md - Phân tÃch ná»i dung theo detail level + audience-aware adjustments (nếu presentation). Xem Detail Level Mapping + Audience-Aware Adjustments trong outline-rules.md
- Tạo outline: Opening > Body > Closing (presentation) hoặc Introduction > Body > Conclusion (blog/doc). Ãp dụng Cognitive Sequencing + Narrative Arc (xem outline-rules.md). Cross-check Content Map: má»i
musttopics phải xuất hiá»n - Lưu outline ra
{output_folder}/outline.mdvá»i YAML frontmatter:
---
title: "Tên outline"
slug: "ten-outline"
output_type: "presentation" | "blog" | "doc"
content_type: "..." # chá» khi presentation
framework: "..." # chá» khi presentation
audience: "..." # chá» khi presentation
detail_level: "L1" | "L2" | "L3"
language: "vi" | "en" | "bilingual"
source: "mô tả source input"
created: "YYYY-MM-DD HH:mm"
total_slides: N # hoặc total_sections cho blog/doc
---
- Hiá»n thá» outline cho user review
- Coverage Report: Generate
{output_folder}/coverage-report.md(xem Coverage Report Rules trong outline-rules.md) - Feedback loop: Há»i “Outline OK?” (AskUserQuestion, header: “Outline review”):
- “OK, tiếp tục” – Chấp nháºn outline
- “Chá»nh sá»a” – User mô tả thay Äá»i â cáºp nháºt â há»i lại
- Khi approved, thông báo tùy output_type:
- Presentation: “Outline xong. Chạy
/slidev-builder {output_folder}/Äá» tạo slides.”- Blog/Doc: “Outline xong tại
{output_folder}/outline.md.”
- Blog/Doc: “Outline xong tại
Important Notes
- Chi tiết quy tắc outline: xem
references/outline-rules.md - Outline rules áp dụng chủ yếu cho presentation. Blog/doc dùng subset rules phù hợp (Content Map, Coverage Report, Cognitive Sequencing)
- Content Map và Coverage Report bắt buá»c cho má»i output type