安全扫描
OpenClaw
可疑
medium confidence该技能与其声明用途(从模板和 PDF 生成课程材料)基本相符,但存在几处不符之处(声称“单文件/无依赖”的 HTML 却加载远程字体,以及引用了未附带的 course_schema.md),因此运行前需检查并隔离。
评估建议
该技能确实如描述所言——可从模板和 PDF 生成 PPTX/DOCX/CPP/HTML——但使用前请注意:
1. 本地检查代码文件(assets/*.js、scripts/*.py 及 HTML),确认仅操作你提供的文件。
2. HTML 模板从 fonts.googleapis.com 导入字体,打开生成的 HTML 会触发外联请求;如需完全离线,请将远程字体替换为本地字体。
3. SKILL.md 提及的 course_schema.md 未包含,向作者索要该 schema,或查看 Python 脚本输出格式以确保兼容。
4. 若谨慎起见,在容器/VM 中运行 npm 与 pip install,并先用小样本文件夹测试脚本,再处理敏感内容。
5. 无需提供任何密钥或系统配置路径,该技能不要求这些。...详细分析 ▾
✓ 用途与能力
名称/描述承诺(从单课或批量 PDF 生成 PPTX/DOCX/CPP/HTML)与提供的资源一致:用于创建 PPT/Word 的 Node.js 脚本、Python PDF 提取脚本、游戏 HTML 模板及 C++ 示例。所含依赖(pptxgenjs、docx、pdfplumber)对所述功能合理。
⚠ 指令范围
SKILL.md 要求代理/用户运行本地 Node 和 Python 脚本,读取用户提供的 PDF 并将文件写入用户指定的输出目录——这是符合预期的。然而,SKILL.md 声称生成的网页游戏是“单文件、无依赖、双击即用”,但 references/game_template.html 中通过 @import 引用了 Google Fonts(fonts.googleapis.com),因此 HTML 并非完全离线。SKILL.md 还提到 references/course_schema.md 用于 JSON 结构,但该文件未出现在清单中(缺失依赖/文档)。
ℹ 安装机制
无正式安装规范(仅指令式)——安装面最小。package.json 与 package-lock 显示来自 npm 注册表的正常 npm 依赖(pptxgenjs、docx);extract_pdf_content.py 需要 PyPI 的 pdfplumber。安装这些依赖属预期行为,运行 npm/pip 会拉取第三方包(标准行为)。未发现任意 URL 下载或混淆安装器。
✓ 凭证需求
该 Skill 不请求任何环境变量、凭据或配置路径。脚本仅对用户提供的文件路径进行操作,未发现读取无关系统文件或环境机密的迹象。
✓ 持久化与权限
Skill 不会请求永久“always: true”的常驻权限,也不享有任何特殊特权。它不会尝试修改其他 Skill 或系统级代理设置,其运行时行为仅限所述的本地脚本执行。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.0.02026/4/22
首次发布
● 无害
安装命令
点击复制官方npx clawhub@latest install csp-course
镜像加速npx clawhub@latest install csp-course --registry https://cn.longxiaskill.com
技能文档
技能简介
为信息学/CSP/NOIP C++课程生成完整教学资料套件,支持单课手动制作与批量PDF→全套资料两种模式:| 产出物 | 格式 | 说明 |
|--------|------|------|
| 🎮 游戏化趣味课件 | .pptx | pptxgenjs生成,闯关主线 |
| 📄 详细教案 | .docx | 默认40分钟,可指定时长 |
| 📝 学生任务单 | .docx | 递进练习:填空→补代码→追踪→挑战 |
| 💻 代码示例 | .cpp | UTF-8 BOM,含注释 |
| 🎯 网页闯关游戏 | .html | 单文件,无依赖,双击即用 |
适用范围:小学高年级零基础/初中普通班/CSP-J/S竞赛班,年级参数可调难度。
---
触发场景
- “帮我做C++课件”/“做一节信息学课的课件”
- “做CSP/NOIP/信奥课件”
- “生成教案和任务单”/“做PPT三件套”
- “把这些PDF做成课件”(批量)
- “做一节排序算法的课件”/“讲STL的课件”
- “重新制作课件”/“帮我更新教案”
- 涉及C++任意知识点(变量/循环/函数/数组/指针/STL/图论/DP等)的课程制作
- 涉及竞赛算法(贪心/搜索/动态规划/图论/树结构等)的讲解课件
---
工作流程
模式A:单课制作
步骤1:收集需求
若用户未指定,询问:- 课件风格:活泼游戏化/专业简洁/科技暗色
- 适用年级:
- 知识点:函数/变量/循环/数组/字符串/STL/图论/DP等
- 课时长度(可选,默认40分钟):40/45/60分钟
⚠️ 确认输出目录(绝对路径),推荐:D:\课程资料\第XX课_知识点名\ 步骤2:生成PPT
以assets/make_ppt.js为模板:
- 修改标题、主题色、关卡数、内容文字
- 小学版用比喻(榨汁机=函数、盒子=变量、侦探=判断)
- 代码用Consolas字体+
#0D1117深色背景 - 输出文件名加
_v2防覆盖 - 运行:
node make_ppt.js
步骤3:生成教案+任务单
以assets/make_docs.js为模板:
- 教案:目标/重难点/教学过程(逐分钟)/板书/评价量规
- 任务单:圈数→填空→补代码→追踪表→挑战题
- 运行:
node make_docs.js
步骤4:生成代码示例
将课件代码片段保存为.cpp:
``javascript
fs.writeFileSync('代码示例.cpp', '\uFEFF' + content, 'utf8'); // UTF-8 BOM
` 步骤5:生成网页闯关游戏
以references/game_template.html为起点:
- 每关对应知识点,含展示+交互题
- 题型:选择/判断/填空
- 功能:自动判分、进度条、星级、通关彩纸
- 全对解锁下一关,单HTML零依赖
步骤6:整理文件夹
`powershell
$dest="D:\课程资料\$topic"
New-Item -ItemType Directory -Path $dest -Force
Move-Item -Path ".\.pptx",".\.docx",".\.cpp",".\.html" -Destination $dest
` ---
模式B:批量PDF→全套课程资料
用户提供多个PDF教材文件并要求批量生成时启用。 步骤1:安装依赖
`powershell
python -m pip install pdfplumber
npm install pptxgenjs docx
` 步骤2:创建目录结构
`powershell
$base="C:\...\C++"
$courses=@("第00课_信息学竞赛介绍","第01课_计算机中的数制",...)
foreach($c in $courses){New-Item -ItemType Directory -Path "$base\$c" -Force}
` 步骤3:批量提取PDF内容
`powershell
python scripts/extract_pdf_content.py --input_dir "E:\课程\信奥初级教程\" --output course_content.json
`
扫描版PDF需先OCR,见常见问题。
步骤4:批量生成PPT
为每课运行make_ppt.js,参数化课程数据,输出到对应子文件夹。 步骤5:批量生成教案+任务单
以assets/make_docs.js模板,参数化数据,每课输出教案+任务单。 步骤6:批量生成网页闯关游戏
以references/game_template.html为基础,每课生成独立HTML,关卡数与知识点对应(5~9关)。 ---
文件结构规范
批量生成后:
`
C++/
├── 第00课_信息学竞赛介绍/
│ ├── 信息学竞赛介绍_课件.pptx
│ ├── 信息学竞赛介绍_教案.docx
│ ├── 信息学竞赛介绍_任务单.docx
│ ├── 信息学竞赛介绍_代码示例.cpp
│ └── 信息学竞赛介绍_闯关游戏.html
├── 第01课_计算机中的数制/
│ └── ...
` ---
参考资源
references/game_template.html:网页闯关游戏模板references/course_schema.md:PDF提取JSON结构说明references/素数判断讲解.md:小学生素数讲解示例references/代码示例.cpp:素数计数完整代码assets/make_ppt.js:PPT生成脚本模板assets/make_docs.js:教案+任务单生成脚本模板scripts/extract_pdf_content.py:批量PDF文本提取脚本
---
技术栈
- PPT生成:pptxgenjs
- Word生成:docx
- PDF提取:pdfplumber
- 网页游戏:纯HTML+CSS+JS,零依赖
- 运行环境:Node.js(PPT/Word)+ Python(PDF提取)
- 文件编码:UTF-8 with BOM
---
设计规范
小学版
| 元素 | 规范 |
|------|------|
| 主色调 | 暖白#FFFBF0+深蓝黑#1E293B |
| 代码背景 | #0D1117 |
| 关键词色 | 黄#D97706、粉#DB2777、青#0891B2 |
| 字体 | 正文系统中文;代码Consolas |
| 动效 | 静态为主;HTML游戏可星星+彩纸 |
| 比喻 | 榨汁机=函数、盒子=变量、侦探=判断、闯关=进度 | CSP竞赛班
| 元素 | 规范 |
|------|------|
| 主色调 | 深灰底#111827+亮青#06B6D4` |
| 代码高亮 | VS Code暗色主题 |
| 字体 | 中文思源黑体;英文JetBrains Mono |
| 动效 | 极简,无卡通元素 |