---
name: training-evaluation-form
description: 兼容柯氏四级的教学评估包——8 道反应题、信心自评、保持/改变问句，加第 30 天回访拿第三级行为证据。
version: 2.0.0
license: CC-BY-4.0
allowed-tools: Read, Write, Bash(curl:*), Bash(unzip:*), Bash(npm:*), Bash(formlm-cli:*), Bash(python3:*)
metadata:
  category: feedback-forms
  group_size: 1
  duration_minutes: 7
  setting: hybrid
  props: [扑克评估卡, 笔, 一个用来发第 30 天追踪的邮箱]
  depth: assessment-type
  language: zh
  updated: 2026-10-11
---
# 培训评估表

多数评估停在满意度。这套包从第 1 级走到第 3 级，边界在哪如实写明，最后变成一份管理者无需翻译就能转发的单页报告。

## 什么时候用这个活动

- 企业培训项目结束，管理层要的是证据，不是掌声。
- 重复开办的课程需要保持/修改清单，而不只是趋势线。
- 品质体系（TTQS、资历架构一类的记录）需要全场层面的培训成效文档。

## 文件夹里有什么

| File | 用途 |
|---|---|
| `道具卡.pdf` | 扑克规格印刷评估卡组：说明卡、反应题卡、自信度卡、保持/修改卡 |
| `运行手册.pdf` | 印刷版：执行脚本与复盘表合订成一份 A4 PDF |
| `*-Letter.pdf` | 本文件夹印刷文档的 US Letter 纸型版——内容相同，每册均含书签与可点击目录 |
| `执行指南.md` | 使用指南：级别覆盖、第 2 级代理、第 30 天追踪、翻车点 |
| `复盘问题.md` | 读结果：逐题表、第 30 天邮件模板、管理层单页报告 |
| `测评预设.json` | 完整题目集：8 道题 + 3 道自评 + 2 道开放题 + 3 道第 30 天追踪，纯 JSON |
| `答卷.pdf` | A4 答卷——打印填写版（工作坊用） |
| `演示文稿.pdf` | 演示文稿——带场用的 11页幻灯，一页一个观点 |
| `演示文稿.html` | 演示文稿（HTML）——任意浏览器投屏，按一次出一条，内置讲者提示 |
| `学员工作簿.pdf` | 学员工作簿——通俗讲解、带引导的题目、笔记与行动页 |
| `使用许可.md` | 使用许可——平实说明你能做什么、必须保留什么 |
| `活动海报.pdf` | 一面墙讲完整场活动（A3）：速览、流程、复盘问题、注意事项。 |
| `快速上手.md` | 快速上手——按身份取用、文件地图、打印清单 |

## 怎么跑

1. 每位参与者打印一套评估卡；最后一场课程的最后几分钟发放。
2. 按 `复盘问题.md` 读结果：先看逐题均值，再看自信度，最后看保持/修改清单。
3. 办培训当天就把 30 天后的邮件排进日程（模板在解读表里）——趁你还记得屋里坐的是谁。
4. 第 30 天发出；回收率是在场表的三分之一，正常且够用。
5. 按模板填管理层单页报告——一页是上限，不是起点。

## 把这个活动交给 AI 代理运行

引导师可以把整个文件夹交给自己的 AI 代理。先装——一条命令，装出来就是任何 skills 加载器都认的目录：

```bash
# install the whole skill folder, one command
curl -LO https://workshopskill.com/zh/activities/training-evaluation-form/files/training-evaluation-form.zip
unzip training-evaluation-form.zip   # -> training-evaluation-form/SKILL.md + all files + manifest
```

zip 解压后是名为 `training-evaluation-form` 的目录，内含这份 SKILL.md、它引用的全部文件，外加 manifest。

只需要其中几个文件时，逐条取用——匿名可用，CC BY 4.0：

```bash
# 1. 拿到可打印的评估卡（扑克卡组，CC BY 4.0）
curl -O https://workshopskill.com/zh/activities/training-evaluation-form/files/道具卡.pdf

# 2. 拿到 A4 答卷（线下工作坊每人印一张）
curl -O https://workshopskill.com/zh/activities/training-evaluation-form/files/答卷.pdf

# 3. 拿到解读指南（逐题表 + 单页报告模板）
curl -O https://workshopskill.com/zh/activities/training-evaluation-form/files/复盘问题.md

# 4. 拿到使用指南（级别、第 30 天追踪）
curl -O https://workshopskill.com/zh/activities/training-evaluation-form/files/执行指南.md

# 5. 建在线评估（8 道题 + 追踪，见 测评预设.json）
```

变化量并不依赖 FormLM——无需任何账号就能离线算出同样的前后差（见下方「离线计分」）。在线表单只是可选项。

在线前后测用 FormLM CLI 创建，需要一个免费的 FormLM 账号；表单和数据都在你自己的工作空间里：

```bash
npm install -g @formlm/cli
formlm-cli auth login
formlm-cli smart generate --input "企业培训评估表：8 道匿名李克特反应题（1-5），覆盖相关性、内容深度、讲师、教材、练习、后勤、工作量、整体价值；3 道信心自报题（柯氏二级代理指标）；2 道开放题（下一期保持/改变）；外加 30 天后跟进邮件的 3 道题（三级行为检查）。输出一页管理层报告：题目均值、信心变化、第 30 天行为计数"
```

如果代理无法完成交互式的 `formlm-cli auth login`（无头环境、CI、无浏览器）：照常执行上面的 curl 步骤，把 `测评预设.json` 留作量表规格，登录和生成两步交给人来做；或者由人登录一次后，只重跑生成那条命令。

给代理的准备要点：
- 任意人数可用；固定数字只有三个——参与者当场 7 分钟、第 30 天 30 秒、20 人一班读结果 20 分钟。
- 第 30 天邮件的回收率约为在场表的三分之一；这正常，也足够作为行为证据。
- 不需要投影仪；当场部分靠卡片和笔，追踪靠你本来就在用的邮箱。
- 按扑克打印。一张纸刚好够一位参与者用。

**放到哪。** 把解压出的 `training-evaluation-form/` 目录放进你的代理的 skills 目录即可自动加载：Claude Code `~/.claude/skills/training-evaluation-form/`（或项目内 `.claude/skills/`）、OpenAI Codex `~/.codex/skills/training-evaluation-form/`、Qoder `~/.qoder/skills/training-evaluation-form/`。代理没有 skills 目录？把这份文件贴进对话让它照做即可。分步教程（16 篇逐代理 + 8 篇场景）见 https://workshopskill.com/zh/skill-guides/

## 引导要点

- 各级别分行汇报，永远不混在一起求平均——反应与行为之间的差距本身就是发现。
- 无基线的自评标注「自评、无基线」——一行诚实的字胜过一张花哨的图。
- 第 4 级任何表格都测不了；把这句话说出来，前三个级别才保持可信。

## 离线计分（不需要账号）

前后测的完整计分规格已经写进本文件夹的 `测评预设.json`（`scoring` 字段），没有 FormLM 也能出结果——代理可本地算：

1. 收集每人 `items` 每道题的李克特作答（pre 一轮、post 一轮）。
2. `scoring.reverse_scored_items`（或 `items[].reverse` 为 true 的题）反向计分：`新分 = 量表上界 + 下界 − 原分`。
3. 按 `scoring.method` 汇总（`sum` 即各题相加），得到 pre、post 两个总分。
4. 按 `scoring.reported` 输出：`pair_delta`（post − pre，单位见顶层 `unit`）与 `construct_deltas`（按 `items[].construct` 分组各算一遍）。
5. 守 `scoring.report_note`：只报配对变化量，绝不个人排名。

只用标准库的可抄实现：

```python
import json
m = json.load(open("测评预设.json"))
sc, items = m["scoring"], m["items"]
hi, lo = len(m["scale"]["labels"]), 1            # likert 上下界（此量表为 1..5）
rev = {it["id"] for it in items if it.get("reverse")}
def total(ans):                                   # ans: {item_id: score}
    return sum((hi + lo - v) if k in rev else v for k, v in ans.items())
# pair_delta = total(post) - total(pre)
# construct_deltas：对每个 construct 取该维度题目子集，按同样两步相减
print(sc["reported"], "| unit:", m["unit"], "|", sc["report_note"])
```

// 口径：`测评预设.json` 里的 `version` 只描述量表本身，独立于本技能 frontmatter 的 `version`。

## 二创：改成你自己的版本

## Attribution

本文件夹逐个手工归档，脚本、时长、道具尺寸与前后测彼此核对过。CC BY 4.0 免费许可——可运行、复制、改成你自己工作坊的品牌；保留署名，抽屉常开。
