← 返回
未分类

信息科技备课助手

信息科技备课助手(Node.js版)。支持湘教版和湘科版《信息科技》教材。用户要求制作某节课的任何一份资料(教案/课件/任务单)时,自动生成全套四件套(PPT课件+教学设计+学生任务单+互动HTML工具),除非该资料之前已生成。用户首次使用时确认教材版本,一旦用户说过"湘教版"或"湘科版",永久记住不再询问。全Node.js实现,可共享到SkillHub。触发词:信息科技备课、湘教版备课、湘科版备课、xxkj、做课件、信息科技课件、信息科技教案、信息科技任务单、互动工具、做教案、备课助手、六下第几课、六下第几活动。
信息科技备课助手(Node.js版)。支持湘教版和湘科版《信息科技》教材。用户要求制作某节课的任何一份资料(教案/课件/任务单)时,自动生成全套四件套(PPT课件+教学设计+学生任务单+互动HTML工具),除非该资料之前已生成。用户首次使用时确认教材版本,一旦用户说过"湘教版"或"湘科版",永久记住不再询问。全Node.js实现,可共享到SkillHub。触发词:信息科技备课、湘教版备课、湘科版备课、xxkj、做课件、信息科技课件、信息科技教案、信息科技任务单、互动工具、做教案、备课助手、六下第几课、六下第几活动。
steam2001
未分类 community v3.4.0 3 版本 98913 Key: 无需
★ 0
Stars
📥 91
下载
💾 0
安装
3
版本
#latest

概述

信息科技备课助手 v3.4.0(Node.js 版)

概述

支持湘教版湘科版《信息科技》教材的一站式备课解决方案。结合《义务教育信息科技课程标准(2022年版)》核心素养理念,自动生成完整备课资料包(五件套)。

默认版本:湘教版。首次使用时询问用户确认;一旦用户在任意会话中说过"湘教版"或"湘科版",将选择永久记录到 USER.md,后续所有会话不再询问,直接使用已记录的版本。

✅ 全 Node.js 实现,可打包共享到 SkillHub。

> 湘教版 vs 湘科版 区别:

> | 项目 | 湘教版 | 湘科版 |

> |------|--------|--------|

> | 每册单元数 | 3个单元 | 4个单元 |

> | 每单元课数 | 4课(共12课) | 4活动(共16活动) |

> | 课程称谓 | "第X课" | "第X活动"(活动=课) |

生成内容(五件套)

文件格式说明
------------------
课件.pptxPPT图文并茂,15页标准结构,深蓝科技风格(pptxgenjs)
教学设计.docxWord含九章节完整结构(docx,v2深蓝格式,推荐)
学生任务单.docxWord含预习任务、课堂任务、课后练习(docx)
互动教学工具.htmlHTML知识学习+拖拽分类+随堂测验三模块
(可选)思维导图.htmlHTML课程知识结构可视化

教材版本选择(重要)

激活时,先检查 USER.md 中是否已记录 教材版本 偏好:

step 1: 读取 C:\Users\Administrator\.workbuddy\USER.md
step 2: 查找"教材版本"字段
step 3:
  - 已记录(如"湘教版")→ 直接使用,不询问
  - 未记录(真正首次)→ 询问用户,确认后写入 USER.md 永久保存

首次使用询问模板:

您好!我是信息科技备课助手,支持以下两个教材版本:

1. 湘教版(3单元×4课=12课/册)
2. 湘科版(4单元×4活动=16活动/册)

请问您使用的是哪个版本?
(确认后我会记住您的选择,以后不再询问)

确认后写入 USER.md:

在 USER.md 的## 教学设计偏好章节下新增一行:

- **教材版本**:湘教版(已确认,无需重复询问)

后续会话行为:

  • USER.md 中已有版本记录 → 直接使用,回复中注明"教材版本:湘教版(已记忆)"
  • 用户临时切换版本(如说"湘科版 六下第5活动")→ 按用户本次指定的版本处理,并更新 USER.md 中的记录

课次/活动自动计算规则(重要)

湘教版(默认)

每册教材结构:3个单元,每单元4课,共12课

当用户说"X年X下第N课"时,自动转换为单元+课次:

单元计算:unit = ceil(N / 4)  →  第unit单元
课次计算:lesson = N - (unit-1)*4  →  第unit单元第lesson课
用户说自动识别为
--------------------
六下第1课六年级下册 第一单元第1课
六下第2课六年级下册 第一单元第2课
六下第3课六年级下册 第一单元第3课
六下第4课六年级下册 第一单元第4课
六下第5课六年级下册 第二单元第1课
六下第6课六年级下册 第二单元第2课
六下第7课六年级下册 第二单元第3课
六下第8课六年级下册 第二单元第4课
六下第9课六年级下册 第三单元第1课
六下第10课六年级下册 第三单元第2课
六下第11课六年级下册 第三单元第3课
六下第12课六年级下册 第三单元第4课

同理适用于:三上/三下/四上/四下/五上/五下/六上/六下 等所有册次。


湘科版

每册教材结构:4个单元,每单元4活动,共16活动

(湘科版教材中"活动"即"课",两者含义相同)

当用户说"X年X下第N活动"时,自动转换为单元+活动次:

单元计算:unit = ceil(N / 4)  →  第unit单元
活动计算:activity = N - (unit-1)*4  →  第unit单元第activity活动
用户说自动识别为
--------------------
六下第1活动六年级下册 第一单元第1活动
六下第2活动六年级下册 第一单元第2活动
六下第3活动六年级下册 第一单元第3活动
六下第4活动六年级下册 第一单元第4活动
六下第5活动六年级下册 第二单元第1活动
六下第6活动六年级下册 第二单元第2活动
六下第7活动六年级下册 第二单元第3活动
六下第8活动六年级下册 第二单元第4活动
六下第9活动六年级下册 第三单元第1活动
六下第10活动六年级下册 第三单元第2活动
六下第11活动六年级下册 第三单元第3活动
六下第12活动六年级下册 第三单元第4活动
六下第13活动六年级下册 第四单元第1活动
六下第14活动六年级下册 第四单元第2活动
六下第15活动六年级下册 第四单元第3活动
六下第16活动六年级下册 第四单元第4活动

同理适用于:三上/三下/四上/四下/五上/五下/六上/六下 等所有册次。


确认流程(通用)

收到课次/活动简写后,必须先向用户确认识别结果,例如:

> 湘教版:"好的,我理解为:六年级下册 第二单元第1课,是这个吗?"

> 湘科版:"好的,我理解为:六年级下册 第二单元第1活动,是这个吗?"

确认后再读取对应版本的课程大纲匹配具体课题。


工具脚本(Node.js)

scripts/
├── generate_ppt.js                      # PPT生成工具(pptxgenjs,15页深蓝科技风格)
├── generate_teaching_design_v2.js       # 教案生成工具(docx,v2深蓝九章节格式)
├── generate_html.js                     # 互动HTML工具生成器(三模块)
├── generate_doc.js                      # Word文档入口(学生任务单)
├── doc_builder.js                      # 底层Word组件库(docx)
├── html_builder.js                     # 底层HTML组件库
└── templates/                         # 模板目录(预留)

依赖(已安装):

node_modules/
├── pptxgenjs/        # PPT生成(npm install pptxgenjs)
└── docx/              # Word生成(npm install docx@9)

参考资料目录:

references/
├── 湘教版信息科技教材课程大纲_含目标内容.md   # 湘教版大纲(含教学目标,优先用于湘教版)
├── 湘科版信息科技教材课程大纲.md              # 湘科版大纲(每册4单元×4活动=16活动)
├── 信息科技备课教案模板.docx                  # 空白教案模板
└── 教案示例_推荐算法.docx                     # 已生成示例(参考)

完整备课流程(五件套)

Step 1:解析用户需求(版本判断 + 课次计算 + 全套生成)

⚡ 全套默认生成规则(核心行为,v3.3.0 新增):

当用户要求制作某节课的任何一份资料(教案/课件/任务单/互动HTML)时:

  • 自动生成全套四件套:PPT课件 + 教学设计 + 学生任务单 + 互动HTML工具
  • 跳过已存在的文件:生成前检查当前目录下是否已有对应文件,只生成缺失的
  • 除非用户明确要求只生成某一份:如用户说"只需要教案",则只生成教案

检查文件存在性的方法(Node.js):

const fs = require('fs');
const topic = '课题名';   // 如 '推荐算法'
const grade = '五年级下册'; // 如 '五年级下册'
const prefix = `${grade}${topic}`; // 如 '五年级下册推荐算法'

const needed = ['课件', '教学设计', '学生任务单', '互动工具'];
const extensions = ['.pptx', '_教案.docx', '_学生任务单.docx', '_互动工具.html'];

const toGenerate = [];
for (let i = 0; i < needed.length; i++) {
  if (!fs.existsSync(prefix + extensions[i])) {
    toGenerate.push(needed[i]);
  }
}
if (toGenerate.length === 0) {
  console.log('所有文件已存在,无需重复生成!');
} else {
  console.log('需要生成:', toGenerate.join('、'));
}

版本判断 + 课次计算:

  1. 判断教材版本(首次使用已询问,后续直接使用已记录版本)
  2. 按对应规则计算单元+课次/活动次
    • 湘教版:3单元×4课=12课,公式 unit=ceil(N/4), lesson=N-(unit-1)*4
    • 湘科版:4单元×4活动=16活动,公式 unit=ceil(N/4), activity=N-(unit-1)*4
  3. 向用户确认:年级 + 单元 + 课次/活动次 + 将生成的全套资料列表
  4. 根据用户确认,读取对应版本的课程大纲文件匹配课题名、教学目标、主要内容

> 术语注意:湘科版称"活动",不称"课",但两者含义相同,计算逻辑一致。


Step 2:读取课程大纲

根据已确认的教材版本,选择对应的大纲文件:

版本大纲文件
----------------
湘教版(默认)references/湘教版信息科技教材课程大纲_含目标内容.md
湘科版references/湘科版信息科技教材课程大纲.md
const fs = require('fs');
const path = require('path');
const skillDir = 'C:\\Users\\Administrator\\.workbuddy\\skills\\信息科技备课助手';

// 根据版本选择大纲文件
const version = '湘教版'; // 或 '湘科版',根据用户输入确定
const outlineFile = version === '湘科版'
  ? '湘科版信息科技教材课程大纲.md'
  : '湘教版信息科技教材课程大纲_含目标内容.md';

const outline = fs.readFileSync(
  path.join(skillDir, 'references', outlineFile),
  'utf-8'
);
// 搜索对应课题内容(年级+单元+课次/活动次)

Step 3:生成 PPT 课件

使用 generate_ppt.js 中的 PPTGenerator 类,pptxgenjs,深蓝科技风格,15页标准结构:

const { PPTGenerator } = require('./scripts/generate_ppt.js');
const path = require('path');

const config = {
  topic: '课题名',
  grade: '六年级下册',
  unit: '第二单元第1课 课题名',
  duration: '1课时(40分钟)',
  objectives: [
    ['知识与技能', '了解xxx概念\n掌握xxx方法', 'BLUE'],
    ['过程与方法', '通过实践探究\n培养解决问题的能力', 'TEAL'],
    ['情感与素养', '体会技术价值\n培养信息科技核心素养', 'ORANGE'],
  ],
  intro: '情境导入文字(思考题/生活情境)',
  sections: [
    { title: '知识点1标题', content: '概念说明', points: ['要点1', '要点2', '要点3'] },
    { title: '知识点2标题', content: '概念说明', points: ['要点1', '要点2'] },
    // 最多5个知识点
  ],
  activity: {
    title: '实验/活动标题',
    materials: ['材料1', '材料2', '材料3'],
    steps: ['步骤1', '步骤2', '步骤3', '步骤4'],
  },
  summary: '方法总结文字',
  expand: ['拓展应用1', '拓展应用2', '拓展应用3'],
  exercises: [
    ['选择题', '1. 下列说法正确的是:\n   A. 选项1  B. 选项2  C. 选项3', 'BLUE'],
    ['判断题', '2. 判断正误:\n   (  )', 'TEAL'],
    ['应用题', '3. 请设计一个解决方案', 'ORANGE'],
  ],
  board: '板书设计文字',
  gains: [
    ['收获1', '描述1', 'BLUE'],
    ['收获2', '描述2', 'TEAL'],
    ['收获3', '描述3', 'GREEN'],
    ['收获4', '描述4', 'ORANGE'],
  ],
  homework: {
    required: ['必做任务1', '必做任务2'],
    optional: ['选做任务1', '选做任务2'],
  },
};

const outputPath = path.join(process.cwd(), '课题名_课件.pptx');
const gen = new PPTGenerator();
gen.generate(config, outputPath);

PPT结构(15页):

  1. 封面 - 深蓝背景,课题+单元+年级
  2. 学习目标 - 三栏卡片(知识技能/过程方法/情感素养)
  3. 情境导入 - 思考题/生活情境

4-8. 新知讲解 - 每页一个知识点(最多5页)

  1. 实验活动 - 左侧材料准备+右侧步骤
  2. 方法总结 - 知识框架
  3. 拓展应用 - 生活中的信息科技
  4. 课堂练习 - 选择题/判断题/应用题
  5. 板书设计 - 核心概念框架
  6. 课堂小结 - 四格收获卡
  7. 作业布置 - 必做+选做

Step 4:生成教案(Word)

使用 generate_teaching_design_v2.js,docx 库,深蓝主题(#1F6BB7),九章节完整结构:

const { generateTeachingDesign, makeConfig } = require('./scripts/generate_teaching_design_v2.js');
const path = require('path');

const cfg = makeConfig({
  title: '课题名',
  grade: '六年级下册',
  unit: '第二单元第1课 课题名',
  period: '1课时(40分钟)',
  class_type: '新授课',
  curriculum_points: '课标要点说明...',
  student_analysis: {
    knowledge: '已有知识技能基础...',
    habits: '学生学习习惯与认知特点...',
    experience: '相关生活经验...',
    difficulty: '预期学习难点...',
  },
  objectives: {
    knowledge: ['知识技能目标1', '知识技能目标2'],
    process:   ['过程方法目标1', '过程方法目标2'],
    emotion:   ['情感素养目标1', '情感素养目标2'],
  },
  key_points: ['重点1', '重点2'],
  difficult_points: ['难点1', '难点2'],
  preparation: {
    teacher: ['教师准备1', '教师准备2', '教师准备3'],
    student: ['学生准备1', '学生准备2'],
  },
  process_summary: [
    { 环节: '情境导入', 时长: '约3′', 教师活动: '...', 学生活动: '...', 设计意图: '...' },
    { 环节: '新知讲解', 时长: '约15′', 教师活动: '...', 学生活动: '...', 设计意图: '...' },
    { 环节: '实践探究', 时长: '约15′', 教师活动: '...', 学生活动: '...', 设计意图: '...' },
    { 环节: '总结评价', 时长: '约7′', 教师活动: '...', 学生活动: '...', 设计意图: '...' },
  ],
  process_details: {
    '环节1  情境导入(3分钟)': [
      { type: 'text', text: '【教师活动】教师播放...' },
      { type: 'text', text: '【教师提问】同学们,...' },
      { type: 'text', text: '【预设回答】学生回答...' },
      { type: 'text', text: '【教师小结】...' },
    ],
  },
  assignments: {
    basic:    ['基础任务1', '基础任务2'],
    advanced: ['提升任务1', '提升任务2'],
  },
  board_design: [
    ['课题名', '副标题'],
    ['一、核心概念:', true],
    ['具体内容...', false],
  ],
  reflection: [
    ['目标达成情况', '评价问题...'],
    ['课堂亮点', '描述...'],
    ['待改进之处', '描述...'],
    ['下次改进计划', '描述...'],
  ],
});

const outputPath = path.join(process.cwd(), '课题名_教案.docx');
await generateTeachingDesign(cfg, outputPath);

九章节教案结构:

章节内容要求
----------------
一、基本信息教材版本、年级学期、单元课题、课时、课型、课标要点
二、学情分析已有知识技能、学习习惯认知特点、生活经验、预期学习难点
三、三维教学目标知识与技能、过程与方法、情感态度与核心素养
四、教学重点与难点重点3条左右、难点2条左右
五、教学准备教师准备4条左右、学生准备3条左右
六、教学过程简表(五列)+ 详案(分环节详述)
七、分层作业基础任务(全体)+ 提升任务(学有余力)
八、板书设计核心概念框架图
九、教学反思四维度反思框架

Step 5:生成学生任务单(Word)

使用 doc_builder.js 中的 generateTaskSheet() 函数,docx,A4竖版,标准五段结构:

const { generateTaskSheet } = require('./scripts/doc_builder.js');
const path = require('path');

const taskInfo = {
  title: '课题名',
  grade: '六年级下册',
  objectives: [
    '能说出xxx的概念和特点',
    '能使用xxx方法完成实践活动',
    '体验信息技术的价值与趣味',
  ],
  preview: [
    ['思考探索', '生活中哪些地方用到了xxx技术?请举3个例子'],
    ['预习填空', '___是指___,它的主要特点是___'],
  ],
  explore: [
    ['活动一:认识xxx', '参考教材第xx页,完成以下步骤:\n1. ...\n2. ...\n3. ...',
     ['编号', '现象/结果', '原因分析'], 4],
  ],
  knowledge: [
    'xxx的定义:___是指___',
    'xxx的特点:① ___ ② ___ ③ ___',
  ],
  exercises: [
    ['选择题', '下列关于xxx说法正确的是(  )', ['A. 说法1', 'B. 说法2']],
    ['判断题', '(  )xxx一定比yyy更好', null],
  ],
  extension: '和家长讨论后写下你的想法',
};

const outputPath = path.join(process.cwd(), '课题名_学生任务单.docx');
await generateTaskSheet(taskInfo, outputPath);

任务单结构(五段):

  • 顶部:蓝色标题栏(课题名)+ 副标题(年级)+ 班级/姓名/日期填写行
  • 学习目标:深蓝横幅 + 勾选框目标列表(最多4条)
  • 课前预习:青色横幅 + 每项预习任务 + 填写横线
  • 课堂探究:蓝色横幅 + 活动步骤说明 + 记录表格(可选)
  • 知识整理:绿色横幅 + 填空式概念整理
  • 巩固练习:灰色横幅 + 选择/判断/应用题
  • 课后拓展:淡紫色横幅 + 延伸任务

Step 6:生成互动教学工具(HTML)

使用 generate_html.js 中的 HTMLGenerator 类,三模块互动工具:

const { HTMLGenerator } = require('./scripts/generate_html.js');
const path = require('path');

const htmlConfig = {
  topic: '课题名',
  knowledge_title: '本节核心知识',
  knowledge_content: '知识点介绍文字(支持换行)',
  quiz: [
    { q: '问题1?', options: ['A. 选项1', 'B. 选项2', 'C. 选项3', 'D. 选项4'], answer: 0 },
    { q: '问题2?', options: ['A. 选项1', 'B. 选项2', 'C. 选项3'], answer: 2 },
  ],
  drag_items: [
    { text: '概念A', category: '类别1' },
    { text: '概念B', category: '类别2' },
    { text: '概念C', category: '类别1' },
  ],
  categories: ['类别1名称', '类别2名称'],
};

const outputPath = path.join(process.cwd(), '课题名_互动工具.html');
const gen = new HTMLGenerator(htmlConfig);
gen.generate(outputPath);

HTML工具三模块:

  • 模块1:知识学习 — 核心知识点展示,配图说明
  • 模块2:拖拽分类 — 概念/案例拖拽分类互动练习,自动评分
  • 模块3:随堂测验 — 单选题测验,即时反馈正确答案

模糊匹配规则

当用户提到模糊关键词(如"小夜灯"、"系统组成"):

  1. 搜索课程大纲找到所有相关条目
  2. 列出所有匹配结果请用户确认
  3. 用户确认后再生成

配色规范

教案(Word)

  • 主色:#1F6BB7(深蓝,用于章节标题横幅)
  • 表头底:#D6E4F7(浅蓝,用于表格标签列)
  • 章节底:#EEF4FB(极浅蓝,用于内容区分)
  • 边框:#A0BFE0(淡蓝边框)

PPT

  • 背景:#1A233A(深蓝背景,封面)
  • 主蓝:#1A73E8(标题栏)
  • 青色:#00BFD8(副标题/强调)
  • 橙色:#FF6D00(实验活动)
  • 绿色:#00C853(拓展应用)

HTML

  • 主色:#00796b(深绿青)
  • 辅色:#004d40(深色标题)
  • 强调:#ef6c00(橙色按钮)

核心素养要求

素养维度说明
---------------
信息意识感受信息重要性,能识别有用信息
计算思维抽象、分解、建模、算法思维
数字化学习用数字工具解决问题
信息社会责任安全、隐私、伦理、版权意识

教学原则

  • 问题驱动:真实情境导入,激发探究欲望
  • 项目式学习:以任务/项目为载体,做中学
  • 跨学科融合:与数学、科学、艺术等结合
  • 螺旋递进:衔接已学概念,逐步深化

每次完成后必须告知用户的使用方法

每次完成备课资料生成后,在回复末尾附上以下提示:


> 💡 信息科技备课助手使用方法(v3.4.0 Node.js版)

>

> ⚡ 全套默认生成:

> - 用户要求制作某节课的任何一份资料时,自动生成全套四件套

> - 已存在的文件自动跳过,不重复生成

> - 如只需某一份,请明确说明"只需要教案"

>

> 教材版本(已记忆,不再重复询问):

> - 首次使用时确认版本,确认后永久记录在 USER.md

> - 后续所有会话直接使用已记录版本,不再询问

> - 如需切换版本,请主动说明,如:湘科版 六下第5活动

> - 湘教版:3单元×4课=12课/册;湘科版:4单元×4活动=16活动/册

> - 湘科版称"活动"不称"课",两者含义相同

>

> 触发方式(任选一种):

> - 湘教版说课次:六下第5课五下第3课(自动识别单元)

> - 湘科版说活动:六下第5活动(自动识别单元)

> - 说课题名:帮我做推荐算法的课件

> - 选择功能:做六下第7课的教案生成五下第2课的任务单

>

> 支持生成的内容:

> | 内容 | 触发关键词 |

> |------|-----------|

> | PPT课件 | 课件、PPT、幻灯片 |

> | 教学设计/教案 | 教案、教学设计、备课 |

> | 学生任务单 | 任务单、导学案 |

> | 互动HTML工具 | 互动工具、HTML、互动页面 |

> | 全套四件套 | 全套、四件套、完整备课 |

>

> 课次/活动速查规则:

>

> 湘教版(3单元×4课=12课):

> - 第1-4课 → 第一单元第1-4课

> - 第5-8课 → 第二单元第1-4课

> - 第9-12课 → 第三单元第1-4课

>

> 湘科版(4单元×4活动=16活动):

> - 第1-4活动 → 第一单元第1-4活动

> - 第5-8活动 → 第二单元第1-4活动

> - 第9-12活动 → 第三单元第1-4活动

> - 第13-16活动 → 第四单元第1-4活动

>

> ✅ Node.js 全量实现,可共享到 SkillHub


版本历史

共 3 个版本

  • v3.4.0 Initial release 当前
    2026-05-03 09:36 安全 安全
  • v3.2.0 Initial release
    2026-05-02 13:47 安全 安全
  • v1.0.0 Initial release
    2026-05-02 13:30 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

ontology

oswalpalash
类型化知识图谱,用于结构化智能体记忆与可组合技能。支持创建/查询实体(人员、项目、任务、事件、文档)及关联...
★ 712 📥 243,848
security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,215 📥 266,552
ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,358 📥 318,404