webpage-to-courseware
npx skills add https://github.com/xiaoweidotnet/suifeng-skills --skill webpage-to-courseware
Agent 安装分布
Skill 文档
ç½é¡µå 容转äºå¨å±ç¤ºé¡µé¢
å°ä»»æç½é¡µè½¬å为éåèªåªä½è®²è§£/深度é 读/å¿«éå享çç²¾ç¾ HTML 页é¢ã
æ ¸å¿è®¾è®¡ç念
æå为主ï¼å¾çä¸ºè¾ ã
- â ä»å¾çä¸æåæ°æ® â 转å为è¿åº¦æ¡/æ°åå¡/æ¥éª¤æå
- â å¾ç缩为å°åèå¾ï¼é带说ææå
- â å¾çå æ»¡çé¢ï¼æ²¡ææåè§£é
ç¬¬é¶æ¥ï¼éæ©å±ç¤ºæ¨¡å¼
å¨å¼å§ä¹åï¼å ç¡®å®å±ç¤ºæ¨¡å¼ã夿ä¼å 级ï¼
- ç¨æ·æç¡®æå® â ç´æ¥ä½¿ç¨
- æ ¹æ®å ³é®è¯æ¨æï¼
| ç¨æ·è¯´äºä»ä¹ | éæ©æ¨¡å¼ |
|---|---|
| å½è§é¢ãå½å±ãOBSã课件ãå¹»ç¯ç | ð¬ è¯¾ä»¶æ¨¡å¼ |
| è®²æ¸ æ¥ã讲éãæ·±åº¦ã详ç»ãæ¥é¾å»è | ð æ·±åº¦è®²è§£æ¨¡å¼ |
| å¿«éäºè§£ãéè§ãä¸ç¼ã5åé | â¡ éè§å¡çæ¨¡å¼ |
- æ æ³å¤æ â é»è®¤ä½¿ç¨ ð¬ 课件模å¼ï¼å¹¶å¨åå¤ä¸åç¥ç¨æ·”å¦éå ¶ä»æ¨¡å¼å¯æå®”
ä¸ç§æ¨¡å¼ç®ä»
| æ¨¡å¼ | æ¨¡æ¿æä»¶ | éååºæ¯ |
|---|---|---|
| ð¬ 课件 | templates/slideshow.md |
å ¨å±å页ï¼å½è§é¢/å½å± |
| ð æ·±åº¦è®²è§£ | templates/explainer.md |
åºå®ç®å½+æç« æµï¼åäº«é¾æ¥/深度é 读 |
| â¡ éè§å¡ç | templates/quickview.md |
ç叿µå¡çï¼å¿«éæµè§/æªå¾å享 |
详ç»éæ©æåè§ courseware-template.mdã
ç¬¬ä¸æ¥ï¼æåç½é¡µå 容
ä½¿ç¨ WebFetch å·¥å
·æåç¨æ·æä¾ç URLï¼åæ¶ç¨ curl ä¿ååå§ HTMLï¼
TMPDIR=$(mktemp -d)
PAGE_HTML="$TMPDIR/page.html"
curl -sL -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36" "[URL]" -o "$PAGE_HTML"
echo "HTML 大å°: $(wc -c < "$PAGE_HTML") bytes"
仿åç»æä¸æåï¼
- ç½é¡µæ é¢ã䏻使æ¬ã段è½ç»æãæ ¸å¿è®ºç¹
- å ³é®æ°åææ ï¼ç¨äº Hero åºå大æ°åå¡ï¼
ç¬¬äºæ¥ï¼ä¸è½½å¾çå°æ¬å°
ä½¿ç¨ scripts/extract-images.py æåå¾ç URLï¼åç¨ scripts/download-images.py æ¹éä¸è½½ï¼
SKILL_DIR="/Users/xiaowei/.cursor/skills/webpage-to-courseware"
IMG_DIR="$TMPDIR/images"
python3 "$SKILL_DIR/scripts/extract-images.py" "[åå§URL]" < "$PAGE_HTML" > "$TMPDIR/image_urls.txt"
python3 "$SKILL_DIR/scripts/download-images.py" "$IMG_DIR" --from-file "$TMPDIR/image_urls.txt"
echo "â
å¾çä¿åè³: $IMG_DIR"
ls -lh "$IMG_DIR"
ç¬¬ä¸æ¥ï¼è§è§è¯å«å¾ç â æåå
对æ¯å¼ æåä¸è½½çå¾çï¼ä½¿ç¨ Read å·¥å
·è¯»åï¼éç¹æ¯æå¾çå
容转å为æååæ°æ®ï¼
Read(path="/tmp/xxx/images/00_abc12345.jpg")
æå¾çç±»åæ´çä¸ºç»æåæè¦ï¼
| å¾çç±»å | è¯å«éç¹ | å¨é¡µé¢ä¸çå¤ç |
|---|---|---|
| æ°æ®å¾è¡¨ï¼æ±/æçº¿/æ£ç¹ï¼ | æ¯ä¸ªæ°å¼ãåæ è½´ãè¶å¿ç»è®º | 转è¿åº¦æ¡+大æ°åï¼å¾ç缩为åèå¾ |
| 对æ¯è¡¨æ ¼ | è¡åæ é¢ãå ·ä½æ°å¼ãæå¼ | 转 HTML å¯¹æ¯æ¡ï¼å¾ç缩为åèå¾ |
| æµç¨/æ¶æå¾ | èç¹ãç®å¤´ãå±çº§ç»æ | 转æ¥éª¤å¡çï¼å¾ç缩为åèå¾ |
| æªå¾/产åå¾ | ç颿åãæä½æ¥éª¤ | ç´æ¥å°å¾ + æå说æ |
| çº¯è£ é¥°/åçå¾ | â | 忽ç¥ï¼ä¸æ¾å ¥é¡µé¢ |
ç¬¬åæ¥ï¼æ´çå 容大纲
æ±æ»æå + å¾çè¯å«ç»æï¼æ´çä¸ºä¸æéæ¨¡å¼å¯¹åºç大纲ï¼
课件模å¼å¤§çº²ï¼
å°é¢ï¼å¤§æ é¢ + å
³é®æ°å pillsï¼
ç®å½ï¼N 个ç¥è¯ç¹å表ï¼
ç¥è¯ç¹1ï¼[æ é¢] â å·¦æ æå + 峿 æ°å/è¿åº¦æ¡/å°åèå¾
ç¥è¯ç¹2ï¼...
æ»ç»ï¼3-5 个è¦ç¹å¡çï¼
深度讲解大纲ï¼
Heroï¼å¤§æ é¢ + 坿 é¢ + ç»è®¡æ°åè¡ï¼
§ ç« è1ï¼èæ¯ â 宿´æ®µè½ + å
èé«äº®å
§ ç« è2ï¼æ ¸å¿è½å â æ®µè½ + æ°åå¡ + ç¹æ§å表
§ ç« è3ï¼æ°æ®å¯¹æ¯ â æ®µè½è¯´æ + è¿åº¦æ¡å¡ç
§ ç« è4ï¼ææ¯åç â æ®µè½ + å¼ç¨ + æ¥éª¤æµç¨
§ æ»ç»ï¼è¦ç¹å¡ç + æ¥æºé¾æ¥
éè§å¡ç大纲ï¼
Heroï¼æ é¢ + ä¸å¥è¯ + å
³é®æ°åç»è®¡ï¼
åç»1ï¼[主é¢] â 4-6 å¼ æ··åç±»åå¡ç
åç»2ï¼[主é¢] â 3-4 å¼ å¡ç
åºé¨æ»ç»ï¼3 个è¦ç¹ + æ¥æº
ç¬¬äºæ¥ï¼çæ HTML 页é¢
é è¯»å¯¹åºæ¨¡æ¿æä»¶ï¼æè§èçæå®æ´åæä»¶ HTMLï¼
- Tailwind CSS Play CDNï¼æ éæå»ºï¼
<script src="https://cdn.tailwindcss.com"></script>ï¼ tailwind.configæ³¨å ¥åçè²ï¼æ ¹æ®ç½é¡µä¸»è²è°éæ©ï¼<style>ä¸åªä¿ç 4 ç±»æ æ³ç¨ Tailwind æ¿ä»£ç CSSï¼.anim/.fade-in/.fade-upï¼JS 驱å¨çè¿å ¥å¨ç».bar-fillï¼è¿åº¦æ¡å®½åº¦è¿æ¸¡ï¼å¨ææ°å¼ï¼@keyframesï¼æµ®å¨/弹跳çå¨ç».dot.active/.toc-link.activeï¼å¯¼èªæ¿æ´»æ
- å¾çä¼å ä½¿ç¨æ¬å°ç»å¯¹è·¯å¾ï¼æ æ³ä¸è½½çç¨åå§ URL
è¾åºæä»¶å½åï¼
- 课件模å¼ï¼
courseware_[主é¢è¯].html - 深度讲解ï¼
explainer_[主é¢è¯].html - éè§å¡çï¼
quickview_[主é¢è¯].html
è¾åºè§è
宿ååç¥ç¨æ·ï¼
- æä»¶è·¯å¾ + 使ç¨çå±ç¤ºæ¨¡å¼
- å¾çï¼å ±ä¸è½½ N å¼ ï¼å ¶ä¸ M å¼ è½¬å为å¯è§åå ç´ ï¼K å¼ ä½ä¸ºåèå¾ä¿ç
- 页é¢ç»æï¼å ± N 页/N ä¸ªç« è/N å¼ å¡ç
模æ¿åè
- 模æ¿ç´¢å¼ + éç¨è§èï¼courseware-template.md
- 课件模å¼è¯¦ç»è§èï¼templates/slideshow.md
- 深度讲解模å¼è§èï¼templates/explainer.md
- éè§å¡ç模å¼è§èï¼templates/quickview.md