关于 competency-builder
competency-builder 是用于构建和运营能力框架的技能,通过诊断框架所处阶段,帮助团队把培训转化为可观察、可验证的能力。适用于设计培训、评估和持续改进流程。
主要功能
- 01诊断能力框架成熟阶段
- 02将知识目标改写为可观察行为
- 03设计真实情境评估
- 04规划受众分层与能力进阶
- 05建立反馈和维护机制
适用场景
- 01梳理培训内容与岗位决策的联系
- 02为能力定义编写情境考核
- 03按角色规划学习路径
- 04根据培训后的问题更新框架
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jwynia/ agent-skills --skill competency-builder安装后在 Claude Code 中输入/competency-builder确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
scripts/scaffold.tstemplates/competency-definition.mdprogression-model.mdscenario.md详细介绍
能力框架构建技能
构建并运用能力框架,培养真正具备能力的人,而不只是完成培训。诊断能力培养卡在哪个环节,并引导下一步行动。
核心原则
能力是可观察到的本领,而不是知识状态。如果无法观察某人展示这种本领,那它就不是一项能力。
诊断状态
CF0:没有框架
症状: 有培训内容,却没有能力结构。人们完成了培训,却无法应用所学。相同的问题反复出现。
测试:
- 人们需要运用这些知识做出哪些决策?
- 哪些错误表明某人缺乏相应能力?
- 你能描述胜任者能够做什么吗?
干预: 从失败模式入手。列出你见过的错误、不该反复提出的问题,以及耗时过长的事情。每种失败模式都意味着有一项能力可以避免它。
CF1:内容优先陷阱
症状: 从列出人们需要了解的所有信息开始。培训内容面面俱到,能力却依然不足。“我们培训过这个”,但错误仍在继续。
测试:
- 你能描述具备这项能力的人能够做什么吗?
- 你会观察对方做什么来验证其能力?
- 每项内容是否都对应一项具体能力?
干预: 将每部分内容重新表述为“这能支持什么决策或行动?”。剔除无法支持任何能力的孤立内容。从行动出发,反推所需知识。
CF2:能力定义模糊
症状: 能力被定义为知识状态(“了解 X”),而非本领(“能够依据 Y 评估 X”)。无法判断某人是否具备这项能力。
测试:
- 两个人是否可能对某人是否具备这项能力持不同意见?
- 能否观察到这项能力?
- 是否以“能够”加动作动词开头?
干预: 将每项能力改写为可观察的行为。转换示例:
- “了解数据政策” → “能够按照政策类别对数据进行分类”
- “了解审批流程” → “能够针对具体案例确定所需的审批级别”
- “熟悉该工具” → “能够配置该工具以完成[具体任务]”
CF3:没有情景
症状: 能力已经定义,但没有测试方法。评估只考查知识回忆(测验、选择题)。人们通过了考试,却无法应对真实情境。
测试:
- 什么样的真实情境需要运用这项能力?
- 评估是否要求判断,还是查阅文档就能作答?
- 薄弱回答与优秀回答有什么区别?
干预: 为每项核心能力设计一个情景,使其:
- 呈现真实情境
- 包含不完整信息
- 要求进行判断(而非单纯回忆)
- 允许出现好坏不同的回答(而非简单判定对错)
设计不同版本:面试版(通用)、评估版(针对组织)、持续评估版(真实情境)。
CF4:情景过于简单
症状: 虽然有情景,但设置得过于明确。提供了所有所需信息,也有显而易见的“正确答案”。人们通过了考试,却无法应对复杂的真实情境。
测试:
- 情景是否体现了真实情境中的模糊性?
- 是否能通过查阅文档回答情景问题?
- 情景是否要求权衡取舍?
干预: 增加模糊性,去除人为设置的明确信息。加入看似相关、实则无关的信息,同时省略那些会让答案显而易见的信息。让真实的人参与测试——如果所有人都能立即给出相同答案,情景就太简单了。
CF5:单一受众
症状: 所有人接受相同的培训。专家觉得基础内容很无聊。通才被细节淹没。结果就是无法满足任何人的需求。
测试:
- 你的实际受众有哪些?
- 每类受众需要掌握到什么深度?
- 普通员工需要具备与专家相同的能力吗?
干预措施: 定义受众层级(通常为通用 / 从业者 / 专家)。将能力映射到相应受众。按深度分层设计内容:
- L1:规则,不作过多解释(该做什么)
- L2:规则背后的原则(如何处理边缘情况)
- L3:完整的技术细节(如何验证、审计、配置)
CF6:缺少进阶路径
症状: 已定义能力,但没有明确的顺序。先修条件不清晰。没有跳过逻辑。无论先前掌握程度如何,所有人都沿着相同的路径学习。
测试:
- 哪些能力需要以其他能力为基础?
- 每个角色的最短可行路径是什么?
- 已具备相关知识的人能跳过部分内容吗?
干预措施: 梳理依赖关系。构建进阶树:
Foundation (everyone)
├── Prerequisite competencies
├─► Intermediate (builds on foundation)
└─► Role-specific branches (parallel tracks)
定义跳过逻辑:哪些证据允许跳过哪些模块?
CF7:缺少验证后果
症状: 虽然有评估,但不会影响任何决策。人们会跳过评估或设法应付。能否证明具备能力并无实际后果。
测试:
- 验证结果会影响什么决策?
- 如果有人未通过评估,会发生什么?
- “未证明具备能力”会带来实际后果吗?
干预措施: 将每项验证与一项决策关联起来:
- 招聘:候选人能否进入下一轮?
- 入职:是否已准备好独立工作?
- 权限:是否具备获得更高权限的资格?
- 晋升:是否已培养出所需能力?
如果验证结果与任何决策都无关,就应考虑是否值得进行验证。
CF8:缺少反馈闭环
症状: 框架只构建了一次,之后从未更新。不断出现未预料到的问题。无法了解哪些方面不起作用。
测试:
- 你如何知道哪些方面不起作用?
- 有什么机制能发现培训、框架或流程中的缺口?
- 上次根据反馈更新这个框架是什么时候?
干预措施: 建立反馈闭环:
- Agent / 支持系统记录问题及其背景
- 按能力 / 内容领域为问题添加标签(或标记为“未映射”)
- 定期检查,发现规律
- 将修复事项分派给负责人(培训团队、政策负责人、工具负责人)
- 追踪这些规律何时促成了变更
CF9:静态框架
症状: 框架是在数月或数年前构建的。实际情况已经变化,但框架没有更新。问题表明,框架与当前情况不符。
测试:
- 上次审查是什么时候?
- 什么情况会触发更新?
- 谁负责维护?
干预措施: 明确以下事项:
- 审查触发条件(政策变更、事件、新工具、反馈规律)
- 责任归属(谁负责更新哪些内容)
- 版本追踪(分别记录接受过 V1 和 V2 培训的人员)
- 周期(即使没有触发条件,也要规定最低审查频率)
CF10:框架已投入运行
症状: 能力可观察、场景经过测试、进阶路径已梳理、验证有实际意义、反馈闭环有效运行、维护责任明确。
指标:
- 能对所有前述状态诊断问题作出肯定回答
- 新员工更快达到胜任水平
- 重复问题减少
- 框架根据反馈数据不断演进
- 跳过逻辑会根据已证明的能力,为个人定制学习路径
诊断流程
当有人提出能力培养需求时:
- 确定当前状态 —— 已经有哪些内容?培训材料?能力清单?场景?评估?
- 进行状态诊断 —— 将症状与上述状态对应
- 提出澄清问题 —— 人们要做出哪些决策?你见过哪些失败情况?
- 说明诊断结果 —— 指明当前状态及缺失内容
- 建议下一步 —— 指向具体模板或干预措施
- 验证进展 —— 检查干预措施是否解决了当前问题
各阶段的关键问题
用于能力识别
- 人们需要运用这些知识做出哪些决策?
- 哪些错误表明某人缺乏这项能力?
- 你会观察某人做什么来验证其能力?
- 这项能力可以预防哪种失败模式?
用于场景设计
- 哪种真实情境需要运用这种判断力?
- 哪些信息可能不完整或模糊?
- 能力较弱的回答会遗漏什么?
- 胜任与出色之间的区别是什么?
用于受众映射
- 谁需要掌握全部深度?谁只需要了解规则?
- 相同内容能否按不同深度满足多个受众的需求?
- 每个角色的最低可行能力是什么?
用于验证设计
- 这项验证为哪项决策提供依据?
- 哪些证据类型合适(场景回答、产出物、观察到的行为)?
- 如何区分“部分掌握”“胜任”和“出色”?
用于反馈循环
- 培训后人们会问哪些问题?
- 哪些问题表明培训存在缺口,哪些表明框架存在缺口,哪些表明流程存在缺口?
- 谁会接收这些信号?谁来决定如何修复?
反模式
| 模式 | 问题 | 修复方法 |
|---|---|---|
| 文档倾倒 | 将现有文档转成“培训”材料,却不重新组织 | 找出文档支持哪些决策。从决策出发,反向构建内容。 |
| 测验谬误 | 用考查知识回忆的问题来评估能力 | 改用需要判断力的场景。不能靠 ctrl+F 找到答案。 |
| 通用培训 | 所有受众都参加同一种培训 | 分层组织内容。明确每个角色的最低可行能力。 |
| 孤立场景 | 场景未对应任何已定义的能力 | 要么补充它所测试的能力,要么删掉该场景。 |
| 孤立内容 | 内容不支持任何能力 | 要么明确它服务于哪项能力,要么删掉该内容。 |
| 勾选即完成 | 未展示能力就认定“完成培训” | 将完成与能力展示挂钩,而非与投入时间挂钩。 |
| 纸上完美 | 框架已经建立,却无人使用;培训照旧进行 | 找真实人员试点。收集反馈并迭代。 |
| 一次性构建 | 框架创建后从未更新 | 明确维护的触发条件、负责人和周期。 |
模板
能力定义模板
## [Cluster Name] Competencies
| ID | Competency | Description |
|----|------------|-------------|
| [PREFIX]-1 | [Action verb phrase] | [Observable capability starting with "Can..."] |
场景模板
### Scenario: [Name]
**Core decision structure:** [What judgment is being tested]
**Interview variant:**
> [Generic situation]
**Assessment variant:**
> [Organization-specific situation]
**Competencies assessed:** [IDs]
**What good looks like:**
- [Consideration]
**Red flags:**
- [Weak response indicator]
进阶模板
Foundation (Role: Everyone)
├── [COMP-1]: [Name]
└── [COMP-2]: [Name]
├─► Intermediate (Role: [Role])
│ ├── [COMP-3]: [Name] (requires: COMP-1)
│ └── [COMP-4]: [Name] (requires: COMP-2)
└─► Specialist (Role: [Role])
└── [COMP-5]: [Name] (requires: COMP-3, COMP-4)
反馈循环模板
## Feedback Loop Design
**Observation mechanism:**
- How questions are logged
- What context is captured
- How they're tagged to competencies
**Analysis cadence:** [frequency]
**Pattern categories:**
- Training gap: [who handles]
- Framework gap: [who handles]
- Process gap: [who handles]
- Tooling gap: [who handles]
**Change tracking:**
- How changes are documented
- How effectiveness is measured
最低可行框架
如果从小规模开始:
- 3-5 项核心能力 —— 最重要的能力
- 2-3 个场景 —— 涵盖核心能力的面试和评估变体
- 一层内容 —— 可能是 L2(实践者深度)
- 基本评分标准 —— 未展示 / 部分掌握 / 胜任 / 出色
- 一个反馈信号 —— 培训后人们会问哪些问题?
根据使用过程中学到的经验扩展。
输出持久化
此技能会将主要输出写入文件,以便在不同会话之间保留工作成果。
输出位置发现
开始任何其他工作之前:
- 检查项目中是否存在
context/output-config.md - 如果存在,查找此技能对应的条目
- 如果文件不存在,或没有此技能对应的条目,先询问用户:
- “此能力构建会话的输出应保存到哪里?”
- 建议:
explorations/competency/,或项目中合适的位置
- 保存用户的偏好:
- 如果存在 context network,保存到
context/output-config.md - 否则保存到项目根目录下的
.competency-builder-output.md
- 如果存在 context network,保存到
主要输出
对此技能,持久化保存:
- 诊断状态 —— 适用的能力框架状态
- 能力定义 —— 根据失败模式推导
- 场景设计 —— 针对每项能力设计的测试场景
- 框架结构 —— 进阶模型和依赖关系
- 反馈循环设计 —— 如何识别能力缺口
对话与文件
| 写入文件 | 留在对话中 |
|---|---|
| 状态诊断 | 澄清问题 |
| 能力定义 | 讨论失败模式 |
| 场景模板 | 迭代结构 |
| 框架架构 | 实时反馈 |
文件命名
格式:{domain}-competency-{date}.md
示例:ai-literacy-competency-2025-01-15.md
此技能不做什么
- 编写培训内容 — 你负责梳理结构,他们负责编写内容
- 指定具体能力 — 你帮助他们从失败模式中发现自身所需的能力
- 评估现有培训是否“优秀” — 你诊断缺失之处
- 取代主题领域专业知识 — 你提供方法论,他们提供领域知识
健康检查问题
在制定能力框架期间,询问:
- 所有能力描述的都是可观察到的能力(而非知识状态)吗?
- 每个场景都需要无法通过查找获得的判断力吗?
- 内容是否针对不同受众进行了适当分层?
- 验证是否与实际决策相关?
- 是否有机制来了解哪些方面不起作用?
- 框架是否根据反馈进行了调整?
- 具备相关知识的人能否跳过部分内容?
- 每个人是否遵循相同的路径,还是会进行个性化调整?
集成点
| 技能 | 关联 |
|---|---|
| research | 构建需要领域专业知识的 L3 内容时使用 |
| framework-development | 相关但不同:框架整理知识;能力框架培养能力 |
| framework-to-mastra | 能力框架 + 反馈闭环 = 可部署的 Agent |
交互示例
用户:“我们有一份 40 页的安全策略。每个人都‘完成’了培训,却仍然不断犯错。”
**诊断:**CF1(内容优先陷阱)
要问的问题:
- 人们“完成”培训后最常犯的 3 个错误是什么?
- 人们会做出哪些需要运用这些知识的决策?
- 有人犯错时,他们未能识别什么或采取什么行动?
指导: “每个错误都表明存在能力缺口。让我们倒推:如果有人错误处理敏感数据,缺失的能力可能是‘能够根据组织分类对数据进行分类’。从失败模式中确定 3–5 项能力后,我们就可以设计场景,测试某人是否真的能运用知识,而不只是回忆知识。”
来源框架
源自:references/competency-framework-development.md