mcpField
V
video-to-skill

video-to-skill

github.com/lum1104Agent 工作流3983 次安装13 周前更新
代码仓库

关于 video-to-skill

将课程或播放列表中的演示内容转化为课程专属 Skill,并提供可恢复的完整处理流程。它面向希望把视频中的实践能力整理成可安装 Skill 的用户,且将采集、分析与生成分阶段管理。

主要功能

  1. 01处理课程及播放列表来源
  2. 02中断后从工作区恢复
  3. 03生成不同语言或课程版本
  4. 04记录来源缺失与覆盖情况
  5. 05验证并安装生成的 Skill

适用场景

  1. 01把一组课程视频整理成 Skill
  2. 02中断后继续未完成的转换
  3. 03从同一分析结果发布另一语言版本

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lum1104/video-to-skill --skill video-to-skill

安装后在 Claude Code 中输入/video-to-skill确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
README.md
INSTALL.md
SECURITY.md
.gitignore
CONTRIBUTING.md
.gitmodules
pyproject.toml
.github/
dependabot.yml
.github/workflows/
ci.yml
docs/
ambitious-startups-v1-v2-product-audit.md
architecture.md
workspace-centered-agent-orchestration.md
generated-skill-v2.md
security.md
providers.md
development.md
scripts/
video-to-skill
video_to_skill.py
video-to-skill.cmd
src/video_to_skill/
__init__.py
agentic.py
artifact_language.py
analysis_depth.py
__main__.py
analyze.py
authentication.py
behavior.py
author.py
cli.py

详细介绍

视频转 Skill

转换演示能力,而非转录内容摘要。从发现可访问的来源开始,到安装一个针对课程定制的 Skill,完整负责整个工作流。

用户约定

常规调用如下:

/video-to-skill <URL>     # Claude Code
$video-to-skill <URL>     # Codex

将用户提供的 URL 或本地路径视为已授权进行可逆的本地处理。默认处理所有可访问的播放列表或课程条目;中断后恢复已缓存的工作,并将私有证据工作区与可移植的 Skill 分开。

只有在无法安全推断重要边界时才提问:需要凭据、本地或私有媒体将离开本机、需要付费依赖、范围意外过大、用户必须在差异显著的课程内容之间做出选择,或安装名称与不同内容冲突。

每次新构建都应根据用户实质性请求和对话语言,推断一个规范的产物语言。严格遵循明确指定的语言或区域设置。对于普通个人构建,使用用户的语言;对于明确面向国际公众发布的内容,除非用户指定了其他受众,否则建议使用英语。只有当不同语言选择会实质性改变预期受众,且无法推断用户意图时才提问。此项与源字幕或 ASR 选择分开处理。

绝不要求用户运行内部命令、监督提取、选择帧参数、复制任务负载或调用第二个辅导 Skill。绝不索要账户密码。

在判定获取工作已完成之前,先确定完整的预期来源集合。保留播放列表顺序,并明确标记完整、部分完成、失败、跳过、无法访问或已下架的状态。只要仍有有用内容,就应继续处理个别来源的失败;绝不悄然遗漏预期条目,并报告缺失内容对生成的 Skill 有何限制。

使用引擎产品级的分析深度约定,而不是自行选择帧或任务参数。auto 根据检查到的时长、条目数量、章节、字幕覆盖率和内容信号,确定性地推荐 standard 或 deep。用户有明确要求时,使用 standard 或 deep。只有在用户明确接受其显著提高的私有存储和审查边界时,才使用 archival;绝不能将其作为隐式默认值。分析深度不能授权使用托管视觉服务、付费提供商或凭据,也不能授权媒体再分发,或绕过 visual_profile=transcript 禁用的视觉处理。

该引擎与模型无关,且绝不调用 LLM。宿主主 Agent 会分派原生工作器,负责语义、多模态、教学和批判性判断;确定性代码负责获取内容、生成有界数据包、管理任务状态、验证、编译、渲染和安装。

此以工作区为中心的版本支持新转换和确定性恢复。尚未实现将新证据更新或合并到现有生成的 Skill 中。绝不将重新生成说成安全更新,不覆盖内容不同的现有 Skill,也不丢弃人工编辑;应保留新的工作区或暂存输出,并说明目前仍不支持更新。

启动引擎

将包含此 SKILL.md 的目录解析为绝对路径 SKILL_DIR。不要根据对话的工作目录推断该路径。

video-to-skill/
├── SKILL.md
├── scripts/
│   ├── video-to-skill
│   └── video-to-skill.cmd
├── pyproject.toml + src/ + scripts/video_to_skill.py
└── runtime.json + scripts/engine.py

在 POSIX 系统上,绑定并验证绝对路径的启动器:

V2S_ENGINE="$SKILL_DIR/scripts/video-to-skill"
"$V2S_ENGINE" --help

在 Windows 上,使用 scripts\video-to-skill.cmd。启动器负责首次使用时的引导、专用 Python 运行时、有限修复以及可选功能的安装。不要激活环境、调用包管理器或使用 eval。

如果启动器缺失,请报告已安装的生成器 Skill 不完整。如果引导报告缺少受支持的 Python、网络故障,或精简包记录的运行时已不存在,请准确报告该情况,并请求修复或重新安装。不要擅自创建替代环境,也不要声称已完成解压。

选择一个位于生成输出和已安装 Skill 之外的持久工作区。主机环境已知时,直接使用当前主机,不要询问。

运行持久工作流

开始一次新的转换:

"$V2S_ENGINE" run SOURCES... --workspace WORKSPACE --host codex --output-language LANGUAGE --analysis-depth auto
"$V2S_ENGINE" run SOURCES... --workspace WORKSPACE --host claude --output-language LANGUAGE --analysis-depth auto

新运行时始终传入推断得出或明确指定的产物 LANGUAGE。只有当用户明确要求以源语言生成产物时,才使用 source。--language 是用于源字幕和 ASR 的独立可选偏好,不会控制生成的文本。如果已知源语言证据一致,引擎会以确定性方式解析语言;如果源语言证据混杂或不完整,则需要有限课程 Agent 根据持久化约定声明一种规范语言。

仅在用户要求安装到项目本地时添加 --project。仅在用户提供可移植的输出路径时添加 --output。恢复时无需重新传输源文件或配置:

"$V2S_ENGINE" run --workspace WORKSPACE

恢复时,省略 --output-language 并复用持久化的值。切勿静默更改该值;如果显式指定的恢复选项与之冲突,系统将拒绝执行。

从同一 Analyze 地图发布另一个版本

当用户需要单独命名的本地化版本,或已规划的另一条学习路径时,请创建或恢复一个已命名版本,而不是开始新的转换:

"$V2S_ENGINE" edition WORKSPACE EDITION-NAME --host codex --output-language LANGUAGE --curriculum PATH-ID --skill-name SKILL-NAME
"$V2S_ENGINE" edition WORKSPACE EDITION-NAME --host claude --output-language LANGUAGE --from-edition SOURCE-EDITION --curriculum PATH-ID --skill-name SKILL-NAME
"$V2S_ENGINE" edition WORKSPACE EDITION-NAME --host codex --output-language LANGUAGE --plan-curriculum --skill-name SKILL-NAME

使用 --curriculum 绑定现有路径,无需再启动课程规划工作器。只有当路径和逻辑产物/声明身份应来自另一个已命名版本时,才使用 --from-edition;否则,来源是旧版单版本检查点。只有在确实需要新的学习设计时,才使用 --plan-curriculum。这些选择必须在产物编写之前确定。

只需这样恢复:

"$V2S_ENGINE" edition WORKSPACE EDITION-NAME

已命名版本绝不会检查、获取、转录、提取视觉内容或重新运行 Analyze。它会固定已完成的集成 Analyze 任务、源快照、语义记录摘要和分析深度契约,然后仅运行必要的课程检查点,接着进行完整编写、隔离行为试验、独立审查、编译、验证和防覆盖安装。如果源/深度刷新或新的 Analyze 修订改变了这一沿袭关系,请创建新的版本名称,而不是悄悄复用原版本。

每个版本都有不可变的语言、课程来源、输出、名称、主机和安装范围配置。多个版本可以共存,无需切换活动版本。使用常规的 submit WORKSPACE TASK_ID RESULT_FILE 提交返回的任务;任务范围会解析其所属版本。请保留语义 ID;对于同一课程的本地化版本,还需保留逻辑产物 ID、声明 ID、证据链接和时间戳。只有在确有结构性例外时,才提供 --identity-drift-reason。它用于记录理由,不代表更新沿袭关系,且 parent_build_id 保持未设置状态。

此外,恢复时省略 --analysis-depth,并复用已持久化的请求/有效深度和带版本的预算配置文件。冲突的请求或配置文件漂移会被拒绝。--refresh 会重新检查清单;当时长、条目、章节、字幕或密度信号发生变化时,引擎会确定性地刷新契约,并仅使受影响阶段/任务的快照失效。

run 会执行所有可用的确定性转换,并输出一个 JSON 封套。

actions-required

当主机支持工作器时,派发返回的并行组中的每个独立操作。

对于 dispatch-agent 操作,请使用其确切的 persona_hint、绝对 task_path、role 和任务 ID。不要通过主 Agent 对话读取或复制其数据包。

仅向工作器提供:

Use the assigned expert persona.
Open TASK_PATH/task.json, packet.json, result-schema.json, and lease.json.
Perform the bounded task from workspace evidence.
Write the strict result to TASK_PATH/output/result.json.
Run ENGINE submit WORKSPACE TASK_ID TASK_PATH/output/result.json yourself.
Return only task state, result digest, material blockers, and unresolved material gaps.

当任务数据包允许时,工作器可以使用有界的 context、contact-sheet、frames、query 和 gaps 命令。它绝不能直接写入 SQLite、检查无关的工作区材料、返回私有思维链,或通过主 Agent 发送大型语义结果和草稿。

对于 ask-user 操作,请使用其提供的提示词及选项提问。将所选选项写入任务的严格决策结果,提交该结果,并且不要重新讨论已确定的实现细节。

所有已派发的工作器完成后,再次调用 run --workspace WORKSPACE。重复此步骤,直到状态为 complete 或发生常规命令失败。

complete

报告已安装的 Skill 名称和路径、调用方式、工作区路径和保留情况、已处理和失败的来源数量、来源覆盖率和语义覆盖率、指导性辅助覆盖率、评论者修复次数、构建 ID,以及验证结果。

还要报告请求的输出语言意图、解析后的规范产物语言、解析状态,以及该语言是确定性解析得出的还是由 Agent 声明的。

对于指定版本,还要报告其确定性版本 ID 和配置摘要、固定的 Analyze/来源/深度沿袭信息、课程来源和选定路径(如有身份偏移,报告其理由),以及版本本地的完成状态。

报告请求的、建议的和生效的分析深度、建议理由,以及完成信封中版本化的非敏感预算摘要。

在完成摘要中明确列出部分可用、无法访问、已跳过、已退役和失败的来源。区分来源获取覆盖率与语义覆盖率,并说明证据缺失造成的能力限制。

最后,使用已安装的名称给出一到两个具体的后续操作:

/<course-skill> start                         # Claude Code
$<course-skill> help me apply this to my work # Codex

不要根据工作器消息声称已完成。只有引擎的 complete 信封能证明规范状态已编译、验证并安装。

失败与恢复

成功或失败后都要保留工作区。切勿仅为从来源、工作器、审查、验证、渲染或安装阶段的中断中恢复而删除工作区。

中断后应在同一工作区中恢复。重用其不可变配置、来源快照、任务目录、已接受的规范记录和已完成的工作。不要重新传输来源、选择新的输出路径,或创建替代工作区来绕过遭拒的任务或冲突。

提交被拒时,保留任务输出,并准确报告架构、租约、摘要、证据范围或快照错误。仅修正或重新分派受影响的持久化任务。不要通过主 Agent 对话传递其大型数据包或结果。

来源失败时,继续处理其余可访问的来源,并让覆盖率台账记录缺失情况。所有有用来源都无法访问时,在持久化获取状态后停止,并说明需要什么授权或来源变更。

验证或编译失败时,保留工作区和任何安全的暂存产物,报告失败的关卡,并在修复后恢复。生成内容或已安装内容与请求的名称冲突时,使用协调器持久化的 ask-user 命名决定。绝不要覆盖不同的内容。

工作器角色

逻辑工作流为 Analyze → Author → Review。这些是推理边界,不是公开命令或面向用户的模式。

分析

使用资深证据与语义分析专家的角色。在一个范围明确的角色中,结合高召回率提取、术语规范化、关系关联、重要性审查、处置核算、冲突记录和能力上限分析。

保留问题、主张、理由、示例、类比、定义、区别、限定条件、反方观点、预测、建议、警告、价值判断和未决问题。保留能够回答、支持、解释、举例说明、限定、对比、依赖、更新、反驳、引出或使另一单元仍未解决的关系。

访谈和出镜讲话优先采用语音数据包。仅当视觉证据具有实质意义时,才检查幻灯片、代码、UI、图表或物理状态。对于长课程,接受按章节分组的任务,然后执行依赖于这些任务的集成分析任务,且不得删除源内容特有的语义单元。

引擎提供视觉证据索引:首帧、场景切换帧、定期备用帧、感知哈希去重、OCR 和类型提示,以及调查期间请求的有限密集窗口。分析负责语义判断:最多提出 24 个不重复的教学候选项,每项为单帧、规范化裁剪图,或按顺序排列的两到四帧序列,且仅当其能实质性地提升教学效果或验证能力时才提出。分析绝不编辑像素,也不提供任意图像路径;引擎会验证证据 ID,并以确定性方式生成经过清理的 PNG 候选项。

每个语义单元都需要稳定 ID、来源和时间范围、类型、简明摘要、重要性、处置方式、模态、证据 ID、观察与推断状态、置信度及不确定性。合并、仅作背景和省略的内容都必须注明明确理由。

Author

Author 在同一内部角色下有两种边界明确的任务形式。首先,使用首席课程架构师读取规范语义记录,推荐主题路径,并提出最多两个有充分理由的备选学习体验。此课程规划任务只编写课程选项、按顺序排列的语义单元序列和简洁的决策元数据——绝不编写制品计划、主张、素材或 Markdown 草稿。

课程包包含不可变的制品语言约定。它必须复述明确指定或来源统一的语言,或者针对来源证据混杂或未知的情况,作出唯一允许的受限声明。该声明具有规范效力。完整 Author 和所有修复都必须原样保留该声明;Review 会审核实际文案的一致性,因为确定性代码并不能可靠识别任意 Markdown 的语言。

如果备选方案会实质性改变学习体验,则停在持久化的 ask-user 操作。否则,协调器按规范选择推荐方案。只有在该选择确定后,才使用已选课程路径和摘要分派完整的 Agent Skill Author。完整 Author 必须保留所选路径和计划的语义顺序,同时将其对应到有充分依据的制品,并在其任务输出目录中编写 Markdown 草稿。编写或修复期间不得重新开启课程选择。

将 Learn、Practice、Apply 和 Reference 视为受证据约束的能力等级,而不是制品配额。绝不可超出 Analyze 能力上限。

独立于语义覆盖范围,完整填写教学功能分类账。逐项核对学习目标、常见误解、检索与迁移提示、针对性练习、成功标准、评分量规、渐进式提示、重试、综合项目、操作手册、预期状态、验证、恢复、快速参考和决策规则。

对每项功能标记为 provided、unsupported 或 not-applicable,并说明理由。强能力主张必须具备对应的完整内容;较弱或不支持的主张必须如实表述。多个功能可以包含在同一份独立有用的制品中。

为每份制品提供稳定 ID、用户任务、支持的行为、常规或尝试后的披露方式、独立加载理由、语义单元链接、功能链接、目标路径、草稿路径和摘要。将解决方案和包含答案的量规分开,并在尝试后提供。

只能从 Author 包中已验证的视觉素材候选项中选择。仅当某份特定制品确实需要视觉素材时才保留;从每份 used_by 制品链接 PNG,并将其关联到保留相同视觉或时间证据的主张。装饰性、冗余、难以辨认、私密或可从文本还原的候选项一律不使用。

评审

使用一位全新的资深 Agent Skill 评论者;此人应独立于课程规划和产物编写者。评审实际的规范草稿和记录,而不是作者提供的摘要。

分别审查源含义保留和教学辅助功能保留,然后审查依据、准确性边界、披露、空调用、运行时行为、安全性、范围、源材料故障和可分享性。检查每个入选的教学视觉材料是否必要、清晰易读、语境充分、顺序合理、保护隐私、有证据支撑且按需加载。

在最终评论者开始评审前,先让引擎将规范的 Author 状态渲染到私有的不可变行为目标中。引擎负责维护带版本的场景目录:空调用、开始/信息收集、有限范围教学、练习时不提供解答、收集应用场景背景、精确且有依据的参考、对超出范围内容保持诚实,以及针对以下内容的确定性语义压力测试:开篇论点、中间示例、限定说明、可能的误解、预测、未解问题,以及存在时的视觉或时间证据。仅依据规范的语义状态,将内容场景标记为不适用。

将每个适用场景分别作为一个 behavior-trial Review 任务派发,以便宿主提供真正独立的新上下文。引擎为每个任务租约签发不同的 execution_context_id,并拒绝未回传该绑定标识的结果;但此标识不能证明操作系统、进程、文件系统或模型上下文已隔离。宿主必须在真正分离的上下文中派发每项试验和最终评审,并落实任何所需的沙箱或只读边界。每项试验只能接收不可变目标和一条提示词,记录精确且有界的用户/助手交互、生成的 Skill 文件访问和副作用,不作通过/失败判定。所有试验恰好完成一次后,再派发给另一位独立的 Review 编写者,检查实际渲染的目标、规范证据、代码定义的预期和原始试验文件。原始试验和结构化报告必须保留在私有工作区中,绝不能进入已安装的 Skill。

只有当前行为目录版本、完整的场景核算、经过验证的试验与目标摘要、通过的评论者以及通过的适用检查全部齐备,才能进行编译。旧版仅含布尔值的行为报告仍作为历史记录保留,但绝不能满足当前门槛;恢复此类工作区时,必须创建新的目录试验和新的 Review 修订。

Review 失败时,其执行任务仍标记为完成,但必须基于相同的已选课程创建新的不可变 Author 修订,并重新进行独立 Review。最多允许三个修复周期。绝不能仅为掩盖证据支持且产品所需的功能,而弱化能力声明。

证据规则

  • 语音只能证明表达过的意图或解释。
  • 关于可见状态的声明必须有视觉证据。
  • 动作或状态转换通常需要按顺序排列的前后证据。
  • 要证明流程成功,必须同时有动作及可观察的结果。
  • 代码、命令、标签或数值若无法辨读,其精确内容仍属不确定。
  • 两次探查若没有增加证据,就表示应当停止,而不是允许猜测。
  • 低置信度的精确细节绝不能成为权威指示。
  • 源材料获取覆盖度和语义覆盖度必须分开处理。
  • 每个重要语义单元都必须有处理结论。
  • 每个纳入的核心或辅助单元都必须出现在有依据的产物中。

优先使用宿主原生的多模态检查能力,然后才使用托管视觉服务提供商。除非原生查看不可用,或用户已授权相应的隐私与成本边界,否则应禁用托管视觉服务。

身份验证和密钥

当来源需要登录时,为整个运行过程协商一次身份验证。提供一个命名的浏览器/配置文件、本地 Netscape cookies.txt,或仅使用公开内容。仅在引擎调用期间设置 VIDEO_TO_SKILL_COOKIES_FROM_BROWSER,绝不索要账户密码。

获得浏览器身份验证授权后,让引擎解密浏览器 Cookie 一次,创建私有临时快照,并为来源检查和并发工作进程复用隔离副本。提供的 Cookie 文件会被快照,而不会被原地修改。身份验证会话退出时,引擎会删除其临时快照。

在 macOS 上,可能会出现一次浏览器钥匙串提示。同一次引擎调用期间反复出现提示,表明身份验证会话失败;请停止操作并报告失败,而不是反复请求用户批准访问。

将 Cookie、标头、令牌、会过期的 URL 和浏览器快照视为运行时密钥。绝不将它们原样引用、放入任务数据包或日志、持久化到工作区,或包含在生成的 Skill 中。

让引擎直接在其子进程和提供方边界记录工具溯源信息。它会在 SQLite 中存储稳定的逻辑运行记录、尝试、失败、缓存复用、规范化后的非机密参数、输入摘要,以及相对于工作区的输出摘要;不要要求工作进程或主 Agent 重建或转述这些数据。仅在维护者需要获取 WORKSPACE/logs/ 下规范的脱敏 JSONL 时使用 tool-runs WORKSPACE。原始 stdout、stderr、环境变量、凭据、签名 URL、私有绝对路径以及工具记录本身,绝不会进入可移植的生成 Skill。

导出证据包

仅当用户要求提供可复现性或保存用产物时才导出证据。引擎直接从规范的工作区状态组装并验证证据包;不会有 LLM 读取、改写或传递其内容。

"$V2S_ENGINE" evidence-bundle WORKSPACE --mode compact --output /path/to/course-evidence.v2sbundle
"$V2S_ENGINE" verify-evidence-bundle /path/to/course-evidence.v2sbundle

精简证据包是确定性的、可分享的证据衍生产物,而不是生成的 Skill。它包含脱敏的来源元数据、存在时的规范语义/设计/评审记录、观察结果和缺口、选定的教学视觉素材和联系表、脱敏的工具运行记录,以及内容寻址清单。它绝不包含原始视频或音频、工作区数据库、缓存、凭据、主机路径或渲染后的生成 Skill。除非用户明确授权重新分发,否则不包含转录和字幕文本;只有在获得授权后,才添加 --authorize-transcript-redistribution。导出某个命名版本的下游溯源信息时,添加 --edition EDITION-NAME。

归档证据包是私有且敏感的。仅在用户明确接受该边界后,才使用 --mode archival --confirm-private-archival。它可能包含原始媒体、音频、帧、转录文本、规范中间产物以及一致的证据数据库快照,但仍不包含 Cookie、凭据、身份验证文件、缓存、锁、任务租约和渲染后的生成 Skill。将其权限设为 0600,并存放在工作区、已安装 Skill 和常规 Git 历史记录之外。证据包模式与 --analysis-depth archival 相互独立;两者互不蕴含。

生成的 Skill 契约

可移植包和原始工作区必须是彼此独立的目录树。每个生成的课程 Skill 都包含五个固定的根记录,以及至少一个编写的 Markdown 文档。一个有充分证据支撑的代表性包可以包含:

<course-skill>/
├── SKILL.md
├── source-map.md
├── sources.md
├── provenance.json
├── build-manifest.json
├── chapters/
│   └── <topic>.md
├── exercises/
│   └── <exercise>.md
├── solutions/
│   └── <exercise>.md
├── playbooks/
│   └── <workflow>.md
├── reference/
│   └── <decision-aid>.md
├── learning-path.md
├── glossary.md
├── patterns.md
├── cheatsheet.md
└── assets/
    └── <indispensable-image>.png

五个固定的根记录必须始终存在;其余条目展示的是受支持的文档形态,而非目录配额。使用 chapters/ 存放可独立加载的教学单元,使用 exercises/ 存放练习,使用 solutions/ 存放尝试后查看的答案和包含答案的评分标准,使用 playbooks/ 存放操作应用指南,使用 reference/ 和允许放在根目录的参考文件以便快速查阅;仅在不可或缺且有证据支撑的情况下,使用 assets/ 存放 PNG 图片。生成的 Skill 指令必须告知运行时 Agent:仅打开当前相关文档所链接的视觉素材,绝不预加载素材目录。对于其确实支持的行为,能力较强的源通常应产出多个内容充实的文档;而精简的源产出的文档可以较少。

不得为了目录对称而凭空创建目录,不得拆分总是一起加载的文件,也不得仅为了缩小包体积而省略有用内容。每个纳入的文档都需要证据链接、涵盖的功能,以及独立加载的理由。绝不纳入原始视频、音频、完整字幕、转录文本、数据库、Cookie、缓存或装饰性帧集合。

内容质量底线

生成可复用的能力产品,而不是对话记录摘要或一组内容单薄的索引文件。当证据中包含具名框架、可执行原则、演示过的技巧、来源推理、示例、限定条件、反方观点、警告、失败模式、决策规则和重要未决问题时,应予以保留。

让每个独立加载的教学材料都能单独发挥作用。明确说明其面向用户的任务,提供必要且以来源为依据的解释,并在有依据时给出具体示例和恰当的检索或迁移提示。不要在 SKILL.md、章节、参考文件和操作指南中反复提供同样浅显的摘要。

对于实践能力,应根据来源所支持的深度,加入聚焦任务、成功标准、逐步提示、重试机制和评分标准。答案及包含答案的评分标准应分开提供,并在尝试之后才展示。

对于应用能力,在来源支持的范围内,应包含假设、决策点、操作步骤、预期状态、可观察的验证方式和恢复指导。应将生成器创建的改编内容、练习和概念性工作流标注为推断,不要假称这些内容在来源中有演示。

对于参考能力,应优先提供简明的决策规则、权衡、阈值、默认值、判断依据、问题征兆和来源指针,而不是只罗列术语。术语表用于定义概念;参考辅助材料则用于帮助用户做出判断或采取行动。

有力的能力声明必须具备完整的教学辅助要素。中等或较弱的能力声明可以更精简,但仍须实用。应如实标注不受来源支持或不适用的辅助要素,不要为了掩盖产品内容的缺失而降低能力声明。

为生成的技能标记:

保持驻留的 SKILL.md 简洁且便于操作。在空调用时,它应以不超过两个简短句子的课程专属欢迎语开场,提供 start,不加载任何辅助文件,不检查项目,不运行命令,不创建文件,然后等待用户。

用户开始后,只询问尚缺的课程专属背景;每轮最多提出三个开场问题,此后每轮最多提出一个后续问题。如果用户已提供足够背景或提出了明确的问题,则跳过信息收集。

使用过程中,应自然地在学习、实践、应用和参考之间切换,不要展示模式菜单。一次只讲解一个有用的认知方法;除非用户提出要求,否则不要倾倒整章内容;在用户尝试或明确请求之前,不提供解答;只加载所需的最小材料。

优先使用以来源为依据的材料;将生成器创建的练习或改编内容标注为推断;区分外部知识或时效性知识;使用用户的语言作答,并如实说明不确定性。

学习者进度应保留在当前对话或宿主记忆中,绝不写入可移植的软件包。应在 sources.md 中保留失败和不完整的来源;在 provenance.json 中确保重要声明可追溯;所有可分享文件中都不得包含私有本地路径。

编译器应根据规范工作区状态推导严格蓝图,按经过验证的相对路径和摘要读取材料正文,在工作区之外进行渲染,验证结构和行为,并在安装时避免覆盖内容不同但名称相同的文件。

默认保留工作区。clean 必须由用户明确执行。

评论

支持 Markdown