技能包打包与技能治理工具

SKILLAI 工具
AI 工具 未标注权限 许可证不明确
安装这个技能

WorkBuddy 技能包打包与技能治理工具,双重职责:① 打包——按统一口径把技能目录打成可上传的 zip,并逐项核对发布清单;② 治理——任一技能文件(描述 / references / scripts)的增删改均归其管辖,未经明确许可不得擅自改动,脚本实质性改动另有「先验证后落盘」门禁。触发:打包技能、上传前检查、生成技能 zip、核对技能包合规;以及新建 / 提炼 / 整理 / 沉淀 / 改写 / 重构任一技能——后者属前置入口,须动手前加载本技能。细节见正文与 references/。

一句话选型结论

按资料字段整理

技能包打包与技能治理工具是AI 工具类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类AI 工具 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_3d743042/yonyou-js-djw-package
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

AI 工具
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_3d743042仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791624562
正文体量38.2 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
组合多个 AI 能力

把写作、检索、总结串成一条流程。

搭工作流

把固定流程做成可重复调用的步骤。

做提示词与评测

整理提示词并对比输出效果。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在AI 工具场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
技能包打包与技能治理工具当前 未标注权限 未标注 未标注 未标注 有
执行计划 只读 GitHub 仓库 151.5 万 Codex、Claude、Cursor 有
Playwright MCP 测试 浏览器控制 ClawHub 市场 136.5 万 OpenClaw 有
完成前的验证 未标注权限 GitHub 仓库 131.9 万 Codex、Claude、Cursor 有
子 Agent 驱动开发 只读 GitHub 仓库 131.2 万 Codex、Claude、Cursor 有
前端设计 执行命令 GitHub 仓库 125.6 万 Codex、Claude、Cursor 有

SKILL.md 全文

38.2 KB
模型实际读到的说明书原文,来自技能仓库

技能包打包与治理(yonyou-js-djw-package)

本技能分两大职责:打包(把技能目录打成合规 zip + 发布前核对)与治理(管辖一切技能文件的增删改)。SKILL.md 只留路由、红线、触发与决策路径;各类细则下沉 references/ 按需检索——遇具体问题先查对应 reference,不要凭印象行事。

零、加载后必做(preflight)

本技能的全部纪律只有加载后才可见,存在「不加载就不知道要加载」的自举缺口;用户级记忆的「技能类任务·第一动作铁律」为该缺口兜底,二者互补。加载后按序执行:

  1. 动手前先确认授权范围(见 §2.2):改哪个技能、改哪一处、改成什么;指令模糊则先列拟改项请用户拍板,不直接重写大段。
  2. 改前全量定位(见 §2.3):grep 全技能目录找目标规则的所有出现(含 .md 与 .py 注释),一次性全改,避免多副本漂移。
  3. 收尾必跑检查(两道必跑 + 两类口径审计按需):先跑技能自检(结构 + 自洽,见 §2.8),再跑发布前核对(发布合规);凡改动涉及共享口径 / 共享能力 / 同类技能分组,额外必跑口径一致性审计——① 规则驱动(scripts/consistency_check.py --cross <口径词> 或发布前 --all,抓 consistency_rules.json 枚举的已知异写);② 无规则全量(scripts/literal_check.py --mode all,按归一化槽位后逐字比对抓未预料到的漂移,见 §三)。两者互补:前者防已知、后者兜未知;已拍板为合理分化的组登记 .literal_audit_whitelist.txt 后不再重复报。

确保同类技能未被带出新漂移;零 ❌FAIL、每项 🔶WARN 经人工确认后才算收尾,未跑检查不得交付或上传。
4. 交付前回报:说明「改了什么、为什么」,必要时记入工作日志(见 §2.2 可追溯)。

> 若本次是「新建 / 提炼技能」,除上述外还须:建「文件清单」章节(代码块 ASCII 树、必须沉底);写 version: "Vx.y.z",初始值须由用户指定,不得自行决定。细则见 references/writing-conventions.md 与 references/packaging.md。

隐私与安全(第一要义)

打包工具的首要责任是不把任何敏感数据带进发布包,此条优先级高于一切打包便利:

  • 不内嵌客户 / 项目敏感数据:凭证(CLIENT_SECRET / SIGNATURE / BASE_HOST 等)、PII、密码一律不进发布包,由使用者本地配置或客户现场提供。
  • 打包前扫描敏感硬编码:对进包文件做「疑似密钥 / PII」扫描(对应核对清单「无敏感硬编码外发」项)。命中真实赋值型密钥即 🔶WARN,由人判断是否脱敏 / 排除,不直接 ❌FAIL。
  • 占位符与运行时代码不告警:引号内值被 < > 包裹的占位符、以及引号内含代码拼接痕迹的值,均自动豁免;真实硬编码密钥是纯字面量,仍会 🔶WARN。豁免判定的精确规则以脚本为准。
  • 重型数据须先脱敏:设计为「首次调用自动拉取」的扩展包若含客户信息,须先脱敏再托管分享。
  • 本地产物不外发:.package_allowlist.txt、本地缓存、临时文件均不进包。
  • 本机数据文件一律打包置空:跨技能引用白名单(scripts/.cross_ref_whitelist.txt)、客户 / 项目专名清单(scripts/.known_customers.txt)、技能展示名台账(scripts/.skill_names.txt)、同类技能专项台账(scripts/.peer_skill_groups.txt)、同名文件台账(scripts/.dupe_files.txt)、治理范围台账(scripts/.governance_scope.txt)、逐字审计豁免台账(scripts/.literal_audit_whitelist.txt)、出包落点台账(scripts/.pack_output_dir.txt)均属本机台账——不硬编码进脚本、不写进 SKILL.md,打包时一律清为占位符,避免把内部台账(跨技能耦合、客户群、技能清单、技能分组、豁免指纹、本机固定出包目录)随包外发;运行期读取安装目录下的真实文件。置空清单只维护一处:scripts/package_skill.py 的 LEDGER_MASKS 注册表(新增台账只加一行,不在打包逻辑里再枚举文件名)。两侧各有一道对应闸口,都是 ❌FAIL:磁盘上有台账而注册表没登记 → 技能自检 A7 报出;注册表登记了但包内未置空 → 发布前核对「包内本机台账须为占位符」报出。清单未配置时,相关核对如实提示「已跳过」,不静默冒充「已扫描且干净」。唯一例外是自用姿态(--pack-mode private,见 §1.1):私用包的定位就是把本机状态整体搬到使用者自己的另一台机器,故本机台账按定义要原样带入,不置空、不脱敏——该例外由「姿态」这一个开关统一控制,不在各处分散判断。
  • 机器态内容一律不进包:① 机器态目录——浏览器 profile 与运行产物目录(.playwright / .playwright-cli / _chrome_profile / dsp_out / api_out)整目录硬排除,登记在 scripts/dir_exclusions.py 的 MACHINE_STATE_DIRS(该模块是目录排除面的单一权威源,打包侧与各审计脚本共用同一份),与发布前核对「运行产物误入包」一项共用同一张表(排除侧与验收侧同源,避免两处漂移);② 散落的具体值——进包文本里的本机路径一律在打包时中性化,只留四种形态:WorkBuddy 数据目录(<盘>:/Users/<用户名>/.workbuddy)→ %USERPROFILE%/.workbuddy;本机用户名路径 → C:/Users/xxx/…;本机 home 镜像(<盘>:/workbuddy/home/<环境标记>)→ <工作空间>/home/<env-tag>-<version>;其它带盘符且含 workbuddy 的落点(含工作空间根 <盘>:/workbuddy/…)→ <工作空间>/…。已显式标注为反例 / 规则说明的行豁免不改(与 references/consistency_rules.json 的 benign_line_regex 同一口径)。兜底闸口:发布前核对「进包文本不得含本机盘符路径」读成品包实际内容,脱敏漏掉的(含不可脱敏的文件类型)一律 FAIL;该闸口的判据与脱敏规则表末条兜底规则共用同一个正则对象——「闸口判什么、脱敏就兜什么」由同一份定义保证,不靠两处人工同步。两类在收件人机器上均物理不可用、且无法提前预生成,只能由命令行与运行位置决定,故一律不进包。
  • 时间戳 / 编号类数值的 PII 误报防护:技能内若需写时间戳 / 编号等数值(如 _user_meta.json 的 installedAt),统一用规范化占位值 1700000000000,不写真实时刻 / 真实手机号形态。

> 宁可多一次人工确认,也不让一份密钥随技能包流出。

一、技能打包管理

把技能目录打成合规 zip,并执行标准口径与自动核对。本技能不参与技能内容设计、不内嵌项目数据、不决定哪些文件该进包——进包范围由被打包技能的 .package_allowlist.txt(白名单)或工具硬排除规则(排除)决定。

1.1 打包口径

打包前必须先问清姿态:同一份技能有两种出包用途——公开分享(--pack-mode public:台账置空 + 本机路径脱敏 + 客户 / 项目专名门禁,用于对外发布或上传平台)与自用移植(--pack-mode private:敏感信息原样带入,用于使用者把自己的技能整体搬到另一台机器)。两者对台账 / 本机路径 / 专名门禁 / config/ 真实配置的处置恰好相反,不得靠猜:动手前先说明两者差异、问明这一次要哪一种,再按回答走对应姿态;对方若要固定落点,用 --out-dir-set 登记进其本机台账(登记一次即长期复用;未登记时公开姿态回落当前工作目录、自用姿态拒绝出包)。缺省 public——外发口径必须落在安全侧;私用包名带 -私用 后缀且不得上传平台。

必须用 Python zipfile 写包(禁 Compress-Archive,否则 SKILL.md 不在 zip 根、平台识别失败);进包分白名单 / 排除两种模式,技能目录自带 .package_allowlist.txt 时白名单默认自动生效(fail-closed——「本机文件不外发」是本工具的职责,不依赖操作者记得补参数);含本机文件却未声明白名单的技能直接拒绝出包。出包前先清空落点里本技能的历史技能包(口径:每次都重新出,不保留旧包)——只在本机台账登记的固定出包目录内执行,按 <技能名>-技能包- 前缀匹配、其它技能的包不动,--out 与回落工作目录时不清空,不设绕过开关,删除失败即拒绝出包。完整口径(姿态差异表、白名单防呆、输出落点与出包前清理、白名单文件写法示例)见 references/packaging.md。

1.2 发布前核对清单(脚本自动)

scripts/package_skill.py 打包后自动打印核对报告:任一项 ❌FAIL 即以非 0 退出,🔶WARN 不阻断上传、由人确认。项数、扫描规则与阈值一律以脚本为准,文档不重复声明计数,以免项数增删时多处漂移。完整清单(核对什么 + 结果等级 + 判定要点)见 references/packaging.md。

1.3 文件清单规范

每个技能 SKILL.md 必须含「文件清单」章节,固定沉底,写成 text 代码块包裹的 ASCII 目录树,须与磁盘、成品包双向一致(漏列由核对硬阻断,可用 --sync-tree 同步)。样式逐条约束见 references/writing-conventions.md。

1.4 FAQ 题库文件规范

题库一律命名 faq.md(默认 references/faq.md;已有 references/common/ 通用层时放其下),首部须有引用块承载「用法句 / 结构约定 / 定位句(引用块首句)」,条目题号两段式 ## Q<章>.<序>. 标题、五段标签齐全,自包含(不跨技能引用、须登记文件清单)。完整体例见 references/writing-conventions.md;题库结构由 self_check.py 的 A9 项检查,新建 / 改写题库或新增题号后该项必须过。

1.5 版本号管理

version 统一为带引号的带 V 三段式 "Vx.y.z"(全技能一致,上架要求三段式);严禁擅自变更——它是技能对外发布版本,须与平台已发布版本一致,改动须用户明确指令;不写本机版本变更说明。细则见 references/packaging.md。

1.6 说明写作风格

SKILL.md 只写提炼后的规范与边界、不嵌实现细节;description 必须精简(只写「能力 + 触发 + 红线本质」);描述只写结论、试错归 FAQ;红线只写一次(单源);不引用同类其它技能包的信息。各条判据与理由见 references/style-rules.md。

1.7 包内内容的分类处置(A / B / C)

技能包内的内容按「收件人拿到有没有用」分三类,处置各不相同。判据与落点如下,实现细节见 references/packaging.md:

类 是什么 判据 处置
A 内容型重复 FAQ 题库头部块 / 红线单源声明 / frontmatter metadata 块等骨架 承载运行期功能,收件人装了必须能读到 随包 + 单一权威源生成(见 §1.8)
B 本机台账 跨技能引用白名单 / 客户专名清单 / 技能展示名台账 / 同类技能分组 / 同名文件台账 / 治理范围 / 逐字审计豁免台账 / 出包落点台账 本机状态快照,收件人拿到无意义、且外泄内部关系 不随包:整份掩码置空(LEDGER_MASKS 注册表)+ 本机读取 + 按需重扫;自用姿态例外(原样带入,见 §1.1)
C 机器态配置 机器态目录(浏览器 profile、运行产物目录)与散落的本机路径 / 家目录 / 缓存名 跨机物理不可用、且无法提前预生成 不随包:目录硬排除(名单见 dir_exclusions.py)+ 本机路径脱敏,运行期探测重建

三类各有验收闸口,且排除侧与验收侧同源(同一张表两处共用),任一失守即 ❌FAIL:A → 「骨架与单一权威源一致」;B → 「包内本机台账须为占位符」+ 技能自检 A7;C → 「无重型数据 / 运行产物 / 字节码缓存 / VCS 元数据目录误入包」。

1.8 骨架单一权威源

A 类的三处骨架(FAQ 题库头部块 / 技能维护边界红线单源声明 / frontmatter metadata 块)过去是「每个技能各存一份手工副本」,改一处要手动同步 N 处、漏同步即漂移。现收敛为唯一一份放在 references/skeletons/(faq_head.txt / redline.txt / metadata.txt),其余技能由 scripts/render_skeletons.py 渲染生成。

  • 槽位:{{skill}}(FAQ 头部块内的技能包名)、{{extra}}(红线句后可选的尾接指针)、以及 metadata 的 {{display_name}} / {{version}} / {{author}} / {{category_list}} / {{tags_list}}。槽位值一律取自该技能现有内容——渲染器只统一骨架、不产生新值。
  • 无侵入定位:不往技能正文插锚点注释(A 类随包外发,锚点会污染文档),改按精确锚点行定位;定位失败 / 槽位抽取不全一律报出、不猜、不写。
  • 两条轨道同源:--check / --dry-run / --apply 三档由脚本承担,发布前核对「骨架与单一权威源一致」一项复用同一套文本级核心复核成品包,避免「生成器改了、验收照旧放行」。
  • 改骨架的唯一正确路径:只改 references/skeletons/ 里那一份 → --dry-run 看影响面 → --apply → 跑核对闭环。

二、技能治理中枢

任何对技能文件(SKILL.md 的 frontmatter description / 章节正文 / 规则清单,以及 references/、scripts/ 及其注释)的增 / 删 / 改,均归治理中枢管辖,不得以「顺手优化」名义绕过。完整工作流纪律、验证门禁、自检与范围约束见 references/governance-ops.md。

2.1 管辖范围

凡涉及技能文件(SKILL.md 的 frontmatter description、章节正文、规则清单,以及 references/、scripts/ 及其注释等)的增 / 删 / 改,均须过治理中枢,不得以「顺手优化」名义绕过。

2.2 治理红线(最高优先)

  • 未经明确许可,不得擅自修改:没有用户的明确、具体许可,一律不改动任意技能的描述 / 正文;即便认为「应该优化 / 精简 / 修正」,也须先说明意图与拟改动范围,等用户确认后再执行。
  • 例外(标准授权):同类技能同步修正=默认动作,不必逐次征询(用户 2026-09-23 拍板:「这是最基本的工作步骤,后续涉及到同类问题修改的,你不用单独问,直接保持一致就行」)。凡同一根因 / 同一共享口径的修复,一旦在某个成员上确认(实测复现或用户拍板),直接同步到该组全部成员、一次写完,不再单独提问「要不要改兄弟技能」。授权边界四条:① 只覆盖同步既有修复——不含给兄弟技能新增功能、改写其独有内容、变更版本号;② 组内关系以 .peer_skill_groups.txt / .dupe_files.txt 为准,跨组、或某文件是否同源尚不明确时仍须先问;③ 同步文本一律按「自包含」口径写(不指名兄弟技能、不引用其专属文件——把对方的专属引用换成本技能自有的等价表述);④ 涉及删除技能文件仍按 §2.5 逐文件确认、不适用本条。同步完按 §2.3 走核对闭环。
  • 许可须具体:用户说「改一下」不等于许可改任意内容——要确认改的是哪一处、改成什么;模糊指令下先列出拟改项请用户拍板,不要直接重写大段。
  • 版本号属对外承诺,变更须用户明确指令:version 的修改不在「顺手优化」之列;未获用户明确说「改版本 / 升版本」绝不自行 bump。
  • 版本号写法须统一为带 V 的三段式:全技能统一带 V、带双引号、必须三段式。发现写法不一致(缺 V 前缀 / 缺三段 / 未加引号)须修正——属格式统一、不改版本值,允许直接做。
  • 改了实现必须同步描述:修改 scripts/ / references/ 后,描述 / 清单 / 项数声明须同步更新,不得遗留「实现已变、描述滞后」。
  • 技能描述独立·不得互相引用:可分享技能之间完全独立部署,描述(SKILL.md 正文 / 脚本注释 / references 文档)不得指名其它技能,亦不得写「机制与 X 相同」等需读者持有其它技能才能理解的表述;每个技能须自给自足。发现一处越界即全类扫描清零(见 references/governance-ops.md §2.3)。白名单机制见 references/style-rules.md。
  • 可追溯:每次对技能文件的实质修改,应在会话中明确回报「改了什么、为什么」,必要时记入项目工作日志。

2.3 修改工作流纪律(收尾必做)

适用于一切技能描述 / 说明的增删改。核心是五条:改前全量定位(grep 全目录,一次性全改)→ 变更前影响面预扫(涉共享口径先列同组成员)→ 同类技能同步修正(发现一处即全类清零、统一按自包含口径写;属标准授权、默认直接做完、不逐次征询,边界见 §2.2)→ 收尾 grep 验证旧表述零残留 + 关键处 Read 二次确认 → 新增 / 重大改写收尾必须跑核对闭环(零 ❌FAIL、WARN 全确认)。批量改写须「单试点 + 逐技能复核」;新增内容按逻辑优先级编排、不无脑末尾追加。完整纪律(含执行口径、统一口径取严细则、编号顺序)见 references/governance-ops.md。

2.4 技能内文件彻底删除标准做法

治理中枢对技能文件执行「删」动作时,普通删除不可信——os.remove / rm / del 作用于普通工作区路径会被沙箱安全层重定向进 $Recycle.Bin,命令返回 success 但文件只进了回收站。绝不以命令返回值当作删除成功的证据;判定「已彻底删除」的唯一标准是回收站条目归零。可靠通道是直接对 $Recycle.Bin\<SID>\$Rxxxx 调 os.remove。完整流程(按扩展名 + 体积定位、禁止依赖 $I 解析、五步标准流程)见 references/governance-ops.md。

2.5 技能目录审查与孤儿文件清理(安全准则)

  • 权威清单 = SKILL.md「文件清单」+ .package_allowlist.txt:某文件是否该常驻技能,唯一判据是它在权威清单(或白名单)中、或被技能文本广泛引用;禁止用命名特征猜垃圾。
  • 删除前强制引用回扫(必做):拟清理任一文件前,先 grep 全技能目录该文件名;凡被引用即排除出清理名单并提示用户。
  • 审查即只读、逐文件显式确认(仅限技能正式文件):审查只产出候选清单,绝不顺手删除;技能正式文件的删除须用户对每个具体路径明确确认——用户说「清理掉这些」而未点名具体文件,视为未授权。运行时副产物与自创临时产物例外:__pycache__/、*.pyc、*.tmp 等工具运行产物(.gitignore 已兜底、删后自动重建),以及本次自创的中间脚本 / 中间 .txt,属可直接清理项、不必询问——判据三条同时满足即可:不在「文件清单 / 白名单」内、不被任何技能文本引用、删除后不影响技能可用性。

> 完整准则(两个方向的完整性校验、描述层 / 数据层分层、示例文件名的人工过滤、配套 --audit 只读工具)见 references/governance-ops.md。

2.6 临时文件 / 临时目录清理纪律

任何「审查 / 诊断 / 验证 / 解包比对」动作都会产出临时文件或目录,须与 §2.4「可靠删除」、§2.5「审查即只读」配合:隔离存放不污染(放 ~/.workbuddy/tmp_<任务名>/ 或系统临时目录,不混入技能目录、不混入用户个人目录)→ 只读分析、结束清理 → 清理前必扫确认(确为本次自创产物,绝不通配删)→ 自创的临时产物与运行时副产物直接清理、不必询问(含技能树内的 __pycache__/、*.pyc、中间脚本与中间 .txt;每日定时清理任务的白名单明确排除 skills/,这类产物不在其覆盖内,故由执行方自行清掉并继续推进)。仅三类对象仍需用户拍板:① 技能正式文件(按 §2.5)、② 用户个人目录下的任何文件、③ 已交付的成果物。完整纪律见 references/governance-ops.md。

> 跑检查脚本须禁写字节码:执行本技能任一 scripts/*.py(打包 / 核对 / 自检 / 一致性审计)时,一律前缀 PYTHONDONTWRITEBYTECODE=1,避免在技能树里留下 __pycache__/ 副产物——它属运行时生成物,混入技能目录会被误当正式文件(触发漏列 / 孤儿审查噪音),本不该产生。此为执行纪律,与各技能 .gitignore 的 __pycache__/ 兜底互为双保险:前者从源头不产生,后者兜住偶发漏网。

2.7 脚本修改验证门禁(py 与非 py 脚本)

涉及技能 scripts/ 下脚本文件的实质性修改,须经「先临时文件验证、后落盘技能包」门禁:在技能目录外生成 _tmp_ 前缀的同扩展名临时件并实际运行核对,验证无误后才写回正式脚本。适用范围按「是否直接影响产物」判定、不按扩展名(生成类 / 取数类 / 核对类脚本,含 .js / .mjs / .sh 及其加载的流程体);纯说明文件(.md)不适用。检查器脚本须加缺陷探针(注入已知缺陷确认逐类报出 + 全量重跑无新增误报);生成类 / 取数类须实际重跑并读回产物量化核对。完整门禁(适用范围、探针要求、配套项、门禁强度)见 references/governance-ops.md。

2.8 技能自检(结构 + 自洽全量体检)

发布前核对覆盖的是发布合规(这个包能不能上传);scripts/self_check.py 补的是另一面内容自洽与演进一致性(内容对不对、有没有随演进漂移)。二者互补,改完技能后两道都跑。自检分 A 组(机器判定:章节层级 / 编号体系 / 悬空引用 / 硬编码计数 / 复盘叙述与验证状态自述 / 描述精简度 / 台账外发 / 软跨技能指称 / FAQ 题库结构 / 常驻段配比 / 引用政策自述 / references 检索关键词节 / 行尾一致性)与 B 组(机器报、人工判:红线重复声明、声明与实现一致),退出码非 0 表示存在 ❌FAIL。项数与判定细则以脚本为准,本节不重复声明计数。

> 行尾约定:技能正式文本文件一律 LF(.bat / .cmd 例外),不得文件内混用、不得余留 CR。行尾不是内容、却是假差异的头号来源——落盘丢了行尾,治理 diff 会假成「整文件重写」;改写脚本时须保持既有行尾,写回后跑一次自检的行尾项。细则见 references/governance-ops.md。

> 「常驻段配比」量的是 SKILL.md 的常驻成本——SKILL.md 加载即常驻、每次工具往返都要重付,应只留路由 / 红线 / 触发 / 决策路径,重内容下沉 references/。它量两个独立维度:① 常驻段体量;② 与 references/ 的原样重复(重复即「分层未删源文」,同一内容付两遍)。体量维度按「是否已做 references 路由」分档——正文有 references/*.md 指针=已分层、体量属该技能不可再切的净承载(不报);无指针且超 WARN 阈值=尚未分层(报 WARN)。此分档是为让 WARN 收敛成「还没动手的」待办信号,避免已做完分层的技能被反复报回、进而把仍有用的执行规则也误切走。超硬上限仍一律 FAIL。完整说明与各检查项精确规则见 references/governance-ops.md 与 self_check.py 源码。

2.9 治理范围(scope)|跨技能审计的范围约束

跨技能审计(--all / --cross / --grep、同名文件巡检)默认扫全部技能;本机用 scripts/.governance_scope.txt 限定只治理部分系列(如 yonyou-js-djw-*)。范围未配置(占位态)时工具警告后仍按全量跑;首次运行纪律:跑任何跨技能审计前先检查该台账是否已配置,未配置须先向用户确认范围、写回后再跑,禁止静默全量扫。该台账打包时清为占位符。完整约束见 references/governance-ops.md。

三、口径一致性审计(同技能 / 跨技能)

把「某能力在不同技能里描述不一、或单技能内同类表述漂移」做成可复用、可重扫的审计能力,避免每次靠人工逐篇比对。两个互补引擎:

引擎 驱动方式 抓什么 适用
scripts/consistency_check.py 规则驱动(references/consistency_rules.json 枚举「已知异写」变体) 「预先想到过的写法漂移」,可按 note 给出权威源与校正指引 防已知漂移
scripts/literal_check.py 无规则全量(归一化槽位后逐字比对) 「未预料到的改写 / 删词 / 增词」——变体枚举的天然盲区 兜未知漂移

> 二者分工原因:规则枚举只能发现「枚举表里列过的异写」;逐字比对要检的是「同一句口径句在 N 个技能里是否字节级相同」——故新增第二引擎兜底,避免「规则没写就检不出」。

  • 扫描面:SKILL.md + references/**/*.md + scripts/**/*.py + scripts/**/*.sh,仅依赖 Python 标准库。
  • 何时用:怀疑某共享能力多技能写法不一;单技能内出现互斥写法;发布前做全量口径重扫;跨技能同名文件疑似「改一处忘一处」;改动涉及共享描述后收尾必跑 literal_check.py。
  • literal_check 两种模式:--mode line(行级:归一化槽位后按行精确比对,产出「逐字一致 / 槽位差异」双档,槽位差异属正常);--mode para(段落级:连续非空行组成段落,字符 3-gram + Jaccard 模糊聚类,MinHash 分桶 + 并查集归并提速;标题行作切分边界天然不参与比对);--mode all 跑全量。
  • literal_check 的目录级排除(决定成本的头号变量):只比对技能口径文本——默认排除两类目录:① 自动拉取 / 生成型数据目录;② 机器态目录(两类名单与判定取自 scripts/dir_exclusions.py,详见「隐私与安全(第一要义)」;审计侧额外启用生成型后缀兜底,本文不复述名单)。二者不是口径文本,却会把大量超长段落灌进聚类、成为耗时的主要来源。排除项在报告中如实列明(目录名 + 文件数 + 字节数),绝不静默缩小扫描面;--no-exclude 关闭排除(恢复全量扫)、--exclude-dir 追加。
  • literal_check 另有两项提速且不改变判定口径:单遍读盘(行级与段落由同一次遍历产出);内容寻址解析缓存(按文件内容命中即跳过解析,缓存落本机临时目录、不进技能包,--no-cache 关闭)。
  • 合理分化豁免:已拍板为合理分化的组,按「组指纹」登记 scripts/.literal_audit_whitelist.txt(格式 <mode> | <指纹> | <备注>),命中即从「真差异」降为「已豁免」,不再重复报。
  • 方法论五步:全量定位 → 建一致性矩阵(行=技能、列=能力各维度)→ 分级(🔴必修 / 🟡建议 / 🟢已一致)→ 条件一致性双透镜(姿态:分享 / 自用分组;语境:同一术语不同语境合法并存不算漂移)→ 共享口径固化 + 登记权威源。修订口径顺序固定:先改权威源技能与规则 note,再按台账同组技能逐处同步。
  • 规则字段:benign_line_regex(反例引用豁免,只作用于非优选变体)、member_file / member_regex / member_scope(缺失检测)。
  • 逐字一致口径:除章节标题外,描述文本须逐字一致;技能特有变量(URL / 章节号 / 技能名 / 配置文件名 / 本机路径 / 产出物名)保留为槽位,骨架文本必须逐字一致。

> 完整方法论、规则字段说明、同名文件巡检分档口径(含「异名同源」档位)见 references/consistency-audit.md。

四、用法

> 下列命令一律以 PYTHONDONTWRITEBYTECODE=1 前缀执行(见 §2.6:不在技能树留下 __pycache__/ 副产物),示例中为简洁省略。
> 路径一律写中性占位:<技能目录> = 本机技能根下的 yonyou-js-djw-<技能名>(Windows %USERPROFILE%/.workbuddy/skills/...、macOS / Linux ~/.workbuddy/skills/...),<输出目录> = 由你决定,<固定出包目录> = 使用者在本机台账里自行登记的落点;路径参数支持 ~ 展开,也接受 Git Bash 的 POSIX 形式(/c/...)——各脚本经 scripts/path_util.py 自动转成 C:/...(不转的话会被 Windows 版 Python 当成「当前盘根下的相对路径」→ 报告落到错位目录 / 扫描目录找不到)。不写具体盘符或本机目录名——那些在收件人机器上不存在(属 §1.7 的 C 类机器态),照抄只会落空。

# 打包(落点优先级:--out > 本机台账登记的固定出包目录 > 当前工作目录[仅公开姿态])
# 公开分享:先问清姿态再执行,缺省 public(本机台账置空 + 本机路径脱敏 + 专名门禁)
python scripts/package_skill.py --skill-dir "<技能目录>" --pack-mode public
# 自用移植:敏感信息原样带入,包名带 -私用 后缀,落点必须已在台账登记(未登记即拒绝出包)
python scripts/package_skill.py --skill-dir "<技能目录>" --pack-mode private
# 登记 / 查看固定出包目录(本机运维约定,只写本机台账,不碰技能内容)
python scripts/package_skill.py --pack-mode public  --out-dir-set "<公开分享出包目录>"
python scripts/package_skill.py --pack-mode private --out-dir-set "<自用移植出包目录>"
python scripts/package_skill.py --out-dir-show
# 指定输出路径(覆盖台账落点)
python scripts/package_skill.py --skill-dir "<技能目录>" --out "<输出目录>/<技能名>-技能包-<version>.zip"
# 白名单模式(技能目录含 .package_allowlist.txt 时**默认自动生效**,无需传参;本行仅为显式写法)
python scripts/package_skill.py --skill-dir "<技能目录>" --allow-only .package_allowlist.txt

# 发布前核对:仅检查已存在的包 / 检查技能目录源码(收尾闭环推荐,零 FAIL、WARN 全确认才完成)
python scripts/package_skill.py --check-only "<包路径>"
python scripts/package_skill.py --check-only "<技能目录>"
python scripts/package_skill.py --check-only "<技能目录>" --allow-only .package_allowlist.txt

# 技能自检(结构 + 自洽体检,改完技能先跑,与发布前核对互补)
python scripts/self_check.py --skill-dir "<技能目录>"
python scripts/self_check.py --skill-dir "<技能目录>" --json

# 口径一致性审计(全部技能 / 单技能 / 自由文本跨技能检索)
python scripts/consistency_check.py --all
python scripts/consistency_check.py --skill "<技能目录>"
python scripts/consistency_check.py --cross playwright

# 逐字一致性审计(无规则全量:归一化槽位后逐字比对,抓规则枚举外的未知漂移)
python scripts/literal_check.py --mode all --out literal_report.txt
python scripts/literal_check.py --mode para --json
python scripts/literal_check.py --mode line
# 扫描面默认已排除生成型数据目录与机器态目录(见 §三),报告首部会列明排除项与缓存命中
python scripts/literal_check.py --mode all --exclude-dir "<目录名通配>"   # 追加排除
python scripts/literal_check.py --mode all --no-exclude                  # 关闭排除(恢复全量扫)
python scripts/literal_check.py --mode all --no-cache                    # 关闭解析缓存

# 同名文件巡检(按台账分档比对跨技能同名脚本 / 数据文件,含「异名同源」档)
python scripts/shared_scripts_check.py

# 只读审计技能目录:孤儿候选 + 反向完整性校验(不删任何文件)
python scripts/package_skill.py --audit "<技能目录>"
# 以磁盘为权威源同步文件清单树(保留注释、补入漏列文件,重渲染 ASCII 树)
python scripts/package_skill.py --sync-tree "<技能目录>"
# 统一补全技能 frontmatter 的 metadata 展示信息(上架平台市场必检;支持 --dry-run 预览)
python scripts/ensure_metadata.py --skill-dir "<技能目录>" --dry-run

# 骨架单一权威源渲染(A 类骨架:FAQ 头部块 / 红线单源声明 / metadata 块;改骨架只改 references/skeletons/)
python scripts/render_skeletons.py --check                    # 只比对(有待统一项时退出码非 0)
python scripts/render_skeletons.py --dry-run                  # 打印将变更的 diff,不写盘
python scripts/render_skeletons.py --apply                    # 渲染写入
python scripts/render_skeletons.py --check --skill-dir <技能目录>   # 只查单个技能

仅依赖 Python 标准库(zipfile / argparse / re),无需 pip 安装任何包。

文件清单

yonyou-js-djw-package/
├── SKILL.md                          本技能说明:职责定位、preflight、隐私安全、打包与治理路由、口径审计路由、用法
├── references/
│   ├── faq.md                         技能问题题库:治理踩坑结构化沉淀为可检索问答(试错归此,正文不重述)
│   ├── packaging.md                  打包管理细则:打包口径 + 出包姿态(公开分享 / 自用移植)+ 发布前核对清单 + 版本号管理(见 §1.1 / 1.2 / 1.5)
│   ├── style-rules.md                说明写作风格规范:不写实现细节 / 描述精简 / 单源红线 / 跨技能隔离等(见 §1.3)
│   ├── consistency-audit.md          口径一致性审计细则:方法论五步 + 规则字段 + 同名文件巡检分工(见 §3)
│   ├── writing-conventions.md        写作与结构规范:文件清单样式细则 + FAQ 题库体例细则 + references 检索关键词节体例(见 §1)
│   ├── governance-ops.md             治理细则:管辖范围 + 修改工作流纪律 + 可靠删除 / 目录审查 / 临时文件 + 验证门禁 + 自检 + 范围(见 §2)
│   ├── consistency_rules.json        口径一致性审计规则(数据驱动、可扩展;一致性审计脚本读取)
│   └── skeletons/                    A 类骨架单一权威源:由 render_skeletons.py 渲染进各技能(见 §1.8)
│       ├── faq_head.txt              FAQ 题库头部块骨架(槽位 {{skill}})
│       ├── redline.txt               技能维护边界红线单源声明骨架(槽位 {{extra}} 可选尾接指针)
│       └── metadata.txt              frontmatter metadata 块骨架(字段顺序统一 + 5 个槽位)
└── scripts/
    ├── dir_exclusions.py            目录排除面单一权威源(机器态目录 / 生成型数据目录的名单与判定,打包侧与各审计脚本共用)
    ├── path_util.py                 路径参数规范化(把 Git Bash 的 `/c/...` 转成 `C:/...`,供各脚本统一调用;见 §四)
    ├── package_skill.py              打包与发布前核对脚本,仅依赖 Python 标准库
    ├── render_skeletons.py           骨架渲染器(单一权威源 → 各技能;--check / --dry-run / --apply)
    ├── ensure_metadata.py           统一补全技能 frontmatter 的 metadata 展示信息(上架市场必检)
    ├── consistency_check.py         同技能/跨技能口径一致性审计(规则驱动)+ 逐文件定位检索 --grep(仅依赖 Python 标准库)
    ├── literal_check.py             逐字一致性审计(无规则全量:行级 + 段落级,归一化槽位后逐字比对;含目录级排除与解析缓存;仅依赖 Python 标准库)
    ├── shared_scripts_check.py      同名文件巡检:按台账分档比对跨技能同名文件,报出漂移
    ├── self_check.py                技能自检:结构 + 自洽体检(A 组机器判定 / B 组人工判;明细项以脚本为准)
    ├── .cross_ref_whitelist.txt     跨技能引用校验白名单(来源技能跳过清单);本机治理产物,随包时清为占位符
    ├── .known_customers.txt         已知客户 / 项目专名清单;本机数据文件,打包时置空(客户群不随包外发)
    ├── .skill_names.txt             技能展示名台账(后缀 → 展示名 + 分类);本机数据文件,打包时置空
    ├── .peer_skill_groups.txt       同类技能专项台账(分组 + 组内技能清单);本机数据文件,打包时置空
    ├── .governance_scope.txt        治理范围台账(每行一个技能名 glob);本机数据文件,打包时置空
    ├── .literal_audit_whitelist.txt 逐字一致性审计豁免台账(已拍板合理分化的组指纹);本机数据文件,打包时置空
    ├── .dupe_files.txt              同名文件台账(档位 + 文件名 + 成员技能);本机数据文件,打包时置空
    └── .pack_output_dir.txt         出包落点台账(每行「<姿态> = <固定出包目录>」);本机数据文件,打包时置空

常见问题

5 问
答案由本站依据条目字段整理
技能包打包与技能治理工具怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_3d743042/yonyou-js-djw-package。安装方式为未标注。装完刷新技能列表或重开客户端。

技能包打包与技能治理工具支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

技能包打包与技能治理工具权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

技能包打包与技能治理工具收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

技能包打包与技能治理工具用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。