关于 skill-open-sourcer
skill-open-sourcer 是用于将 Skill 发布到 zjp1997720/zhijian-skills 的 Agent 技能。它规定了受控发布流程,涵盖验证、安全检查、注册表更新和发布核验。
主要功能
- 01发布到规范仓库
- 02打包 Skill 内容与文档
- 03规划并验证版本发布
- 04防范秘密信息与隐私泄露
- 05核验安装和远程发布
适用场景
- 01将 Skill 发布到规范作品集
- 02准备带版本号的 Skill 发布
- 03检查隔离环境中的 Skill 安装
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ zjp1997720/ zhijian-skills --skill skill-open-sourcer安装后在 Claude Code 中输入/skill-open-sourcer确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEagents/interface.yamlopenai.yamlreferences/portfolio-mode.mdreadme-design.mdregistry-contract.mdrelease-contract.mdrelease-package.mdsecurity-contract.mdthird-party-notices.mdversion-contract.mdworkbuddy-marketplace.mdscripts/audit_release_readme.pycheck_release_env.pygit_sync_guard.pymanage_local_links.pyportfolio.pyrelease_portfolio.pyscan_skill_release.pyverify_isolated_install.pytests/test_audit_release_readme.pytest_release_selection.pytest_scan_skill_release.pytest_skill_contract.pytest_verify_isolated_install.py详细介绍
Skill Open Sourcer
从唯一的权威仓库发布所有公开 Skill:https://github.com/zjp1997720/zhijian-skills。
严格的发布边界
SKILL.md路径或 Skill 目录只是导入候选项,并不表示要创建仓库。- 将完整的 Agent 载荷放入
skills/<name>/,将面向用户的文档放入docs/skills/<name>/,并将发布说明放入docs/changelogs/<name>.md。 - 在
registry/skills.json中注册 Skill。绝不添加mirror、mirror_tag、独立仓库、重定向工作流或镜像导出元数据。 - 仅从
zjp1997720/zhijian-skills发布提交、各 Skill 的 Tag 和安装说明。 - 如果发现密钥、私有路径、客户端数据、未发布的专有材料、资产所有权不明确,或无法验证权威远程仓库,请立即停止。
开始编写前,请阅读 Portfolio mode、Registry contract、Release package 和 README design。
WorkBuddy 市场分支
对于 WorkBuddy 自定义源适配、市场维护,或“安装成功但冷启动时缺失”的故障,编辑前请阅读 WorkBuddy marketplace。对于仅涉及适配器的任务,请遵循其完成约定;如果 Skill 载荷也有变更,则使用下方的完整发布工作流。
当 Skill 发布会更改 Registry 清单或版本,或现有 WorkBuddy 目录使用的描述时,请在冻结发布计划前刷新并验证生成的市场。此分支仍须遵守上述发布、源所有权和授权边界。
工作流
- 将输入解析为真实的 Skill 目录。接受
SKILL.md、其所在目录,或来自本地 Skill 根目录的符号链接。 - 从当前仓库、
ZHIJIAN_SKILLS_REPO或~/Documents/GitHub/zhijian-skills解析权威检出目录。验证origin指向zjp1997720/zhijian-skills;绝不猜测其他目标位置。 - 遵循权威仓库的 Git 同步规则。从现有检出目录更改或发布之前,运行
git_sync_guard.py check --repo <zhijian-skills>;存在needs-sync标记时必须停止。然后运行:
SKILL_OPEN_SOURCER_DIR="<zhijian-skills>/skills/skill-open-sourcer"
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/check_release_env.py" \
--repo-dir <zhijian-skills> --check-npx-skills
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/scan_skill_release.py" \
/path/to/skill-or-SKILL.md
- 检查
SKILL.md以及其中直接引用的agents/、references/、scripts/和assets/。仅将完整且经过清理的安装载荷复制到skills/<name>/;保留必需的许可证和第三方声明。 - 按照 README design 撰写包含八个字段的发布说明,选择
clean-doc或proof-led,然后创建或更新双语文档、Changelog、Registry 记录、Portfolio 目录和项目原生视觉素材。采用 proof-led 方式时,Hero 必须使用源自 Skill 实际机制或输出的构图;仅在共享布局中更改标题和主题图案无法通过审核。绝不在根目录公开SKILL.md,也绝不在 Skill 载荷中添加面向用户的 README 文件。 - 按照 version-contract.md 选择版本。只能使用权威 Tag
<skill>/v<version>。 - 使用范围最小的选择器冻结发布计划。对于受管控的 Skill,其
manifest.json必须声明trust_report和output_quality_scorecard为安装载荷内的文件;这两个文件都必须存在,并且在HEAD中已受 Git 跟踪。如果任一基线未声明、缺失、未受跟踪或位于载荷之外,计划将在创建候选引用前失败。单个 Skill 使用--skill <name>;只有在有意进行多 Skill 发布时,才使用--all和可选的--exclude:
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/release_portfolio.py" plan \
--repo <zhijian-skills> --source-checkout <original-checkout> \
--skill <name> --dry-run \
--plan-out /tmp/<name>-release-plan.json
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/release_portfolio.py" verify \
--plan /tmp/<name>-release-plan.json
--skill 和 --all 不能同时使用。仅当用户明确授权小规模多 Skill 发布时,才重复使用 --skill。不要将 --skill 与 --exclude 结合使用。
该计划使用 git ls-remote 记录实时的 origin/main SHA。verify 会再次查询该 SHA;如果它已变化,验证就会失败。当 --repo 是临时的干净克隆时,--source-checkout 必须指向原始检出目录;计划会将该检出目录标记为 release-in-progress,并安装 pre-commit 防护,防止它基于过期基线创建新提交。
- 验证 Skill、声明的测试、完整的 Portfolio、文档和仓库约束:
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/portfolio.py" \
validate-skill <zhijian-skills>/skills/<name>
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/portfolio.py" \
audit --repo <zhijian-skills> --strict
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/audit_release_readme.py" \
--repository-root <zhijian-skills> \
<zhijian-skills>/docs/skills/<name>/README.md \
<zhijian-skills>/docs/skills/<name>/README.zh-CN.md --strict
python3 -m unittest discover -s <zhijian-skills>/tests -v
如果 README 资源由 Portfolio 生成,请重新生成这些资源并在接受差异前运行资源测试。将每个有更改的 Hero 分别渲染为 900px 和 360px;确定性检查不能替代视觉检查。
- 验证本地
npx skills发现结果,然后从规范仓库运行一次快速失败的隔离副本安装:
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/verify_isolated_install.py" \
--repo <zhijian-skills> --skill <name>
验证器会隔离 HOME、使用复制模式,并逐字节比较 SHA-256 清单。如果预检、安装、文件生成、文件缺失或多余,或内容比较失败,它会立即返回非零状态;不要追加可能掩盖其退出码的成功提示命令。仅列表成功并不足够。只使用顶层帮助:npx --no-install skills --help。绝不要运行 npx skills add <source> --help;skills CLI 1.5.x 可能会执行实际安装,因为 <source> 已经是有效的 add 请求。
10. 仅在基于记录的远程 SHA 创建的短期分支上提交。远程操作开始前立即再次运行 verify,推送分支,并通过 PR 将其合并到受保护的 main;Agent 绝不直接推送到 main。合并后,读取实时远程 SHA 并记录已验证的变更:
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/release_portfolio.py" record-step \
--plan /tmp/<name>-release-plan.json --skill <name> \
--step canonical-pushed --remote-sha <merged-origin-main-sha>
此步骤会验证远程 main 包含计划中的源,并将临时克隆的源标记升级为 needs-sync。绝不要调用 gh repo create,也不要发布到 <owner>/<skill-name>。
11. 验证远程 Portfolio 列表和隔离安装,然后创建规范 Tag 并启动推广。只有在源检出目录干净且其本地 HEAD 与已验证的远程 SHA 完全一致后,才能清除该检出目录标记。
输出约定
返回:
zjp1997720/zhijian-skills下的规范 Skill URL- 规范提交、版本和
<skill>/v<version>Tag - 使用
npx skills add zjp1997720/zhijian-skills的安装命令 - Skill 验证、Portfolio 审核、远程列表和隔离安装结果
- README 展示层级及刻意选用的视觉资源
- 八字段发布故事、独特的构图选择,以及桌面端和移动端的渲染检查结果
- 安全摘要和剩余假设
- 至少一条 X/Twitter 发布帖,并附面向中文用户的中文版
如果遇到阻碍,请返回文件路径、原因、清理步骤和最安全的下一步操作。
安全规则
遇到以下情况时必须立即停止:
- API 密钥、令牌、私钥、Cookie、凭据、
.env或身份验证配置 - 个人绝对路径、本地保险库路径或仅限本机使用的缓存
- 客户数据、私有 URL、未发布的提示词,或没有再分发权的资源
- 越界符号链接、数据库、日志、浏览器配置文件、
.DS_Store、依赖缓存或无法解释的二进制文件 - 无法安全协调的脏状态或未经验证的规范仓库
release-in-progress或needs-sync检出目录标记- 发布计划冻结后远程
main发生变化 - 受治理的
trust_report或output_quality_scorecard未声明、缺失、位于载荷之外,或未在HEAD跟踪
字面形式的凭据赋值属于阻碍项。对令牌变量进行 URL 编码等运行时转换不属于字面秘密,不得被通用赋值检测器拦截;高置信度的提供商密钥模式仍必须拦截。
绝不要强制推送、重写已发布的 Tag、创建独立仓库,也不要将缺失的证据视为通过。
打包规则
- 每个 Skill 都位于
skills/<skill-name>/,包括单文件 Skill。 - 保持
SKILL.md简洁;仅在需要时将详细的 Agent 指引放入references/。 - 保留
agents/openai.yaml;如果文件不存在,则创建该文件,并设置$<skill-name>默认提示词。 - 仅包含确定性脚本和已获许可、面向 Agent 的素材。
- 将面向用户的文档放在
docs/skills/<skill-name>/,将 README 视觉素材放在其assets/readme/目录中。 - 同步更新
registry/skills.json、根目录 README 中的目录清单和确定性素材生成器。每个具有生成证明的 Hero 都必须有唯一且稳定的data-composition值,以及与之匹配的项目专用生成器分支;Portfolio 测试必须拒绝重复的 composition ID。
发布验证
npx --no-install skills --help
npx --no-install skills add zjp1997720/zhijian-skills --list
python3 scripts/verify_isolated_install.py \
--repo <zhijian-skills> --skill <skill-name> \
--install-source zjp1997720/zhijian-skills
验证器使用 Portfolio 固定版本的 skills CLI,并在任何阶段失败时返回非零状态。对于尚未安装固定版本软件包的冷启动检查,请先在规范检出目录中安装依赖,再运行验证器;切勿临时拼凑可能导致最后一条命令掩盖前序失败的 Shell 命令链。
切勿使用 npx skills add <source> --help 来查看帮助。它可能会实际安装软件,并在当前目录中创建 .agents/ 和 skills-lock.json。
发布文案
通过所有关卡后,请说明反复出现的问题、此 Skill 自动化的内容、规范安装命令、一个具体的示例请求,以及任何相关的安全边界。切勿链接到独立的 Skill 仓库。