ClawHub Skill Packager
Use this skill when the user wants to create, repair, review, rename, repackage, or republish a ClawHub / OpenClaw skill bundle.
Product promise
This skill makes the publish-ready skill package first.
Then it provides the separate review file that explains:
- - what was provided
- what was inferred
- what was fixed
- what still deserves human review
The package is the main product.
The review file is the supporting layer.
Unified identity rule
This skill uses one unified identity across runtime, packaging, and publishing surfaces:
- - runtime name: INLINECODE0
- slug: INLINECODE1
- folder name: INLINECODE2
- metadata.openclaw.skillKey: INLINECODE3
Do not intentionally split runtime, folder, slug, and skill key identities unless the user explicitly asks for it.
Core job
This skill turns user input, existing skill files, or partial drafts into a publish-ready ClawHub/OpenClaw skill bundle.
It is designed to:
- - inspect what is present
- infer what is missing when reasonable
- repair inconsistencies
- build the package anyway when a safe best-effort package is possible
- self-audit the result
- return one pure publish bundle plus one separate plain-text review file
Operating stance
This skill is designed for low-friction handoff.
When the user provides material:
- - inspect what is there
- infer what is missing when reasonable
- choose the best safe course based on current knowledge
- avoid unnecessary clarification loops
- return a concrete package plus a review statement
Prefer statements over questions.
If something is missing but inferable:
- - infer it
- note the inference
- keep moving
If something is risky, ambiguous, or likely to affect publishing:
- - still produce the package when a safe best-effort package is possible
- highlight the issue clearly in the review file
- mark it for user review
Do not stop at “more info needed” when a reasonable package can still be built.
Default to the full release-bundle standard, not the minimal valid skill standard, unless the user explicitly asks for a minimal package.
Exact output contract
Always produce exactly two user-facing deliverables.
A. Publish bundle zip
A zip-ready skill folder containing
only files that directly belong to the skill as a release artifact.
This bundle must include:
- - INLINECODE4
- INLINECODE5
- INLINECODE6
It may also include only those additional files that are genuinely part of the skill itself or required for the skill to function correctly, such as:
- - INLINECODE7
- INLINECODE8
- INLINECODE9
- INLINECODE10
- INLINECODE11
Do not include inside the publish bundle:
- - review notes
- inference notes
- build commentary
- user/AI discussion notes
- release review records
- handoff notes that are only about packaging this build
The publish bundle should look like it was made for the skill itself, not for the conversation that created it.
B. Separate plain-text review file
A separate review file in plain text.
Preferred format:
This review file should say:
- - what inputs were provided
- what information was missing
- what assumptions were made
- what was added
- what was edited
- what was removed
- what was inferred
- what still deserves human review
- whether the package appears publish-ready
- the final publish/install handoff details
The review file must remain outside the publish bundle unless the user explicitly asks for it to be embedded.
Standard support artifacts inside this packager skill
This packager skill ships with reusable support files that are part of the skill itself.
Use them like this:
- -
REVIEW-CHECKLIST.txt = the permanent self-audit standard - INLINECODE14 = the base for the generated separate review file
Operating modes
Use one of these modes based on the user's request and the material provided.
1. Package-from-scratch
Use when the user provides a concept, rough notes, or minimal package material.
Pass 1:
- - assemble identity
- infer missing metadata
- define package surfaces
- identify major assumptions
Pass 2:
- - build files
- self-audit
- generate the separate review file
2. Repair-existing-skill
Use when the user provides an existing skill package that needs cleanup, fixes, or modernization.
Pass 1:
- - inspect existing files
- identify drift, breakage, or parser-risky structure
- determine what should be preserved
Pass 2:
- - repair and normalize
- self-audit
- generate the separate review file
3. Audit-only
Use when the user wants analysis and recommendations without generating a new package.
Pass 1:
- - inspect the provided package or concept
- identify strengths, issues, risks, and missing information
Pass 2:
- - generate the review file
- do not build a replacement package unless the user also asked for packaging
4. Republish / update
Use when the user already has a package and wants version, naming, positioning, or packaging updates for republishing.
Pass 1:
- - inspect the current package
- identify what changed since the prior release
- align versioning, naming, and publish surfaces
Pass 2:
- - update files
- self-audit
- generate the separate review file
5. Rename / rebrand
Use when identity surfaces need changing while preserving intended behavior.
Pass 1:
- - inspect current identity surfaces
- preserve intended behavior
- determine which naming surfaces change and which remain stable
Pass 2:
- - rewrite aligned identity surfaces
- self-audit
- generate the separate review file
Packaging workflow
Step 1 — Inspect
Look at all provided material:
- - text prompts
- existing INLINECODE15
- existing INLINECODE16
- existing INLINECODE17
- file names
- intended display name
- intended slug
- invocation ideas
- notes about platform behavior
- prior package artifacts if relevant
Step 2 — Determine completeness
Check whether the package has enough information for:
- - display name
- slug
- runtime identity
- version
- description
- tags
- invocation behavior
- public positioning
- file set
- frontmatter format
- compatibility with current OpenClaw parser expectations
Step 3 — Infer or repair
If something is missing or inconsistent:
- - choose the best safe default
- repair mismatched naming
- align display name, slug, runtime name, folder name, skill key, and README publish fields unless the user explicitly requests a split
- correct parser-risky frontmatter
- normalize versioning
- remove obvious contradictions
- preserve intended behavior whenever possible
Step 4 — Build the package
Create the full package folder and final file contents.
Step 5 — Self-audit
Run a second-pass review using
REVIEW-CHECKLIST.txt.
Step 6 — Deliver
Deliver exactly two user-facing artifacts:
- - the final publish bundle zip
- the separate review file built from INLINECODE19
Then provide a short summary in the response telling the user:
- - here is your publish bundle
- here is your review file
- here is what was inferred
- here is what was fixed
- here is what may still deserve review
Visibility rule
Do not bury final deliverables in an internal-only path without clearly surfacing them.
The publish zip and the separate review file must be:
- - clearly identified
- surfaced directly to the user
- returned as the final two artifacts
Do not report completion until both artifacts are available in a directly user-visible way for the current environment.
Skill type awareness
When packaging a skill, classify it before building.
Possible classes include:
- - instruction-only skill
- formatting / style skill
- workflow / orchestration skill
- code or script-backed skill
- API-dependent skill
- environment-variable-dependent skill
- binary / external-tool-dependent skill
- mixed package
Use the class to decide:
- - what files are needed
- what install notes are needed
- what security notes are needed
- what review flags matter most
Runtime and security declarations
Inspect for:
- - environment variable requirements
- secrets or credentials
- external API dependencies
- script or binary execution assumptions
- file system expectations
- privilege or escalation requirements
- background or always-on behavior
If these exist:
- - package the skill anyway when safe
- state them clearly in the review file
- highlight them for review
Frontmatter rules
For OpenClaw compatibility, prefer:
- - single-line frontmatter keys
- metadata as a single-line JSON object
- quoted version
- quoted long description strings when helpful
Preferred base frontmatter pattern:
CODEBLOCK0
Naming rules
Align these surfaces unless the user explicitly wants them different:
- - public display name
- package folder name
- slug
- runtime name
- metadata.openclaw.skillKey
- README publish fields
- changelog package identity
Use:
- - human-readable title for display name
- lowercase hyphenated form for slug
- the same lowercase hyphenated form for runtime name by default
Review checklist
A package should be checked for all of the following.
Identity alignment
- - display name matches intent
- slug is lowercase and hyphenated
- folder name matches slug
- runtime name matches slug unless intentionally split
- skill key matches slug
- README publish fields match final identity
- changelog reflects the current version and identity
Frontmatter health
- -
SKILL.md exists - frontmatter is present
- INLINECODE21 exists
- INLINECODE22 exists
- INLINECODE23 exists
- INLINECODE24 uses single-line JSON
- invocation flags are present when useful
- emoji is present if desired
- parser-risky nested metadata is repaired
Behavioral clarity
- - purpose is clear
- scope is clear
- activation behavior is clear
- explicit invocation is defined if needed
- output behavior is described
- risky ambiguity is reduced
Public positioning
- - branding is reasonable
- wording is accurate
- descriptions do not overclaim capabilities
- external affiliation wording is safe when relevant
Runtime / security awareness
- - skill type is correctly classified
- env var requirements are documented
- API dependencies are documented
- binaries / scripts are documented
- privilege assumptions are documented
- risky surfaces are highlighted
Deliverable separation
- - publish bundle contains only skill-release files
- review content is kept outside the publish bundle
- review file is plain text
- final deliverables are surfaced separately
Deliverables
- - package files were generated
- separate review file was generated
- changes are summarized
- assumptions are highlighted
- publish-readiness is stated
Severity markers
Use these markers consistently:
- -
✅ FIXED AUTOMATICALLY = safe automatic repair completed - INLINECODE26 = best-effort inferred value that should remain visible
- INLINECODE27 = likely publish-affecting issue that deserves human confirmation
- INLINECODE28 = consistency edit across identity or package surfaces
- INLINECODE29 = no major blocker detected in the final package
Final response contract
At completion, report in this order:
- 1. brief status line
- the publish bundle zip
- the separate review file
- short bullet summary of:
- what was created
- what was changed
- what assumptions were made
- what should be reviewed
- 5. publish-readiness statement
Second-pass workflow
If the user returns with edits or clarifications:
- - re-run the same inspection and package workflow
- preserve the accepted identity and structure unless the new instructions change them
- reduce the number of inferred fields
- keep the second-pass output cleaner and closer to final
- aim for a near-zero-friction publish handoff
Operating note
This skill is a packager and self-auditor for ClawHub / OpenClaw skills. Its job is to turn incomplete or inconsistent skill drafts into coherent publish-ready bundles while preserving the user's intended behavior whenever possible and minimizing decision friction for the user.
ClawHub 技能打包器
当用户想要创建、修复、审查、重命名、重新打包或重新发布 ClawHub / OpenClaw 技能包时,使用此技能。
产品承诺
此技能首先制作可发布的技能包。
然后提供独立的审查文件,说明:
- - 提供了什么
- 推断出了什么
- 修复了什么
- 哪些仍需要人工审查
技能包是主要产品。
审查文件是辅助层。
统一身份规则
此技能在运行时、打包和发布层面使用统一身份:
- - 运行时名称:clawhub-skill-packager
- 短标识:clawhub-skill-packager
- 文件夹名称:clawhub-skill-packager
- metadata.openclaw.skillKey:clawhub-skill-packager
除非用户明确要求,否则不要有意拆分运行时、文件夹、短标识和技能键身份。
核心工作
此技能将用户输入、现有技能文件或部分草稿转化为可发布的 ClawHub/OpenClaw 技能包。
其设计目标为:
- - 检查现有内容
- 在合理情况下推断缺失内容
- 修复不一致之处
- 在可安全尽力打包时构建技能包
- 自我审计结果
- 返回一个纯净的发布包加一个独立的纯文本审查文件
操作立场
此技能专为低摩擦交接而设计。
当用户提供材料时:
- - 检查现有内容
- 在合理情况下推断缺失内容
- 基于当前知识选择最佳安全方案
- 避免不必要的澄清循环
- 返回具体技能包加审查说明
优先使用陈述而非提问。
如果某些内容缺失但可推断:
如果某些内容有风险、不明确或可能影响发布:
- - 在可安全尽力打包时仍生成技能包
- 在审查文件中清晰标注问题
- 标记为需要用户审查
当仍可构建合理技能包时,不要停留在需要更多信息阶段。
除非用户明确要求最小化技能包,否则默认采用完整发布包标准,而非最小有效技能标准。
精确输出约定
始终生成恰好两个面向用户的交付物。
A. 发布包压缩文件
一个可压缩的技能文件夹,仅包含直接属于技能作为发布工件的文件。
此包必须包含:
- - SKILL.md
- README.md
- CHANGELOG.md
还可包含仅属于技能本身或技能正常运行所需的额外文件,例如:
- - references/
- examples/
- scripts/
- configs/
- assets/
不要在发布包中包含:
- - 审查笔记
- 推断笔记
- 构建注释
- 用户/AI 讨论笔记
- 发布审查记录
- 仅关于本次打包的交接笔记
发布包应看起来是为技能本身制作的,而非为创建它的对话制作的。
B. 独立的纯文本审查文件
一个纯文本格式的独立审查文件。
首选格式:
此审查文件应说明:
- - 提供了哪些输入
- 哪些信息缺失
- 做了哪些假设
- 添加了什么
- 编辑了什么
- 删除了什么
- 推断出了什么
- 哪些仍需要人工审查
- 技能包是否看起来可发布
- 最终的发布/安装交接详情
除非用户明确要求嵌入,否则审查文件必须保持在发布包之外。
此打包器技能内的标准支持工件
此打包器技能附带作为技能本身一部分的可重用支持文件。
按如下方式使用:
- - REVIEW-CHECKLIST.txt = 永久自我审计标准
- REVIEW-RECORD-TEMPLATE.txt = 生成的独立审查文件的基础模板
操作模式
根据用户的请求和提供的材料使用以下模式之一。
1. 从零开始打包
当用户提供概念、粗略笔记或最小化技能包材料时使用。
第一遍:
- - 组装身份
- 推断缺失的元数据
- 定义技能包表面
- 识别主要假设
第二遍:
2. 修复现有技能
当用户提供需要清理、修复或现代化的现有技能包时使用。
第一遍:
- - 检查现有文件
- 识别漂移、损坏或解析器风险结构
- 确定应保留的内容
第二遍:
3. 仅审计
当用户想要分析和建议而不生成新技能包时使用。
第一遍:
- - 检查提供的技能包或概念
- 识别优势、问题、风险和缺失信息
第二遍:
- - 生成审查文件
- 除非用户也要求打包,否则不构建替换技能包
4. 重新发布/更新
当用户已有技能包并希望进行版本、命名、定位或打包更新以重新发布时使用。
第一遍:
- - 检查当前技能包
- 识别自上次发布以来的变化
- 对齐版本、命名和发布表面
第二遍:
5. 重命名/重塑品牌
当需要更改身份表面同时保留预期行为时使用。
第一遍:
- - 检查当前身份表面
- 保留预期行为
- 确定哪些命名表面更改,哪些保持稳定
第二遍:
打包工作流程
步骤 1 — 检查
查看所有提供的材料:
- - 文本提示
- 现有的 SKILL.md
- 现有的 README.md
- 现有的 CHANGELOG.md
- 文件名
- 预期的显示名称
- 预期的短标识
- 调用思路
- 关于平台行为的说明
- 相关的先前技能包工件
步骤 2 — 确定完整性
检查技能包是否包含足够的信息用于:
- - 显示名称
- 短标识
- 运行时身份
- 版本
- 描述
- 标签
- 调用行为
- 公开定位
- 文件集
- 前置元数据格式
- 与当前 OpenClaw 解析器预期的兼容性
步骤 3 — 推断或修复
如果某些内容缺失或不一致:
- - 选择最佳安全默认值
- 修复不匹配的命名
- 对齐显示名称、短标识、运行时名称、文件夹名称、技能键和 README 发布字段,除非用户明确请求拆分
- 纠正有解析器风险的前置元数据
- 规范化版本
- 移除明显矛盾
- 尽可能保留预期行为
步骤 4 — 构建技能包
创建完整的技能包文件夹和最终文件内容。
步骤 5 — 自我审计
使用 REVIEW-CHECKLIST.txt 进行第二遍审查。
步骤 6 — 交付
交付恰好两个面向用户的工件:
- - 最终的发布包压缩文件
- 基于 REVIEW-RECORD-TEMPLATE.txt 构建的独立审查文件
然后在响应中提供简短摘要,告知用户:
- - 这是您的发布包
- 这是您的审查文件
- 这是推断出的内容
- 这是修复的内容
- 这是可能仍需要审查的内容
可见性规则
不要将最终交付物埋藏在仅内部路径中而不清晰呈现。
发布压缩文件和独立审查文件必须:
在两个工件都以当前环境可直接用户可见的方式可用之前,不要报告完成。
技能类型感知
在打包技能时,先进行分类再构建。
可能的类别包括:
- - 仅指令技能
- 格式化/样式技能
- 工作流/编排技能
- 代码或脚本支持技能
- API 依赖技能
- 环境变量依赖技能
- 二进制/外部工具依赖技能
- 混合包
使用类别来决定:
- - 需要哪些文件
- 需要哪些安装说明
- 需要哪些安全说明
- 哪些审查标记最重要
运行时和安全声明
检查:
- - 环境变量要求
- 密钥或凭证
- 外部 API 依赖
- 脚本或二进制执行假设
- 文件系统预期
- 权限或提权要求
- 后台或常驻行为
如果存在这些:
- - 在安全时仍打包技能
- 在审查文件中清晰说明
- 标记为需要审查
前置元数据规则
为兼容 OpenClaw,首选:
- - 单行前置元数据键
- 元数据作为单行 JSON 对象
- 带引号的版本
- 在有用时使用带引号的长描述字符串
首选基础前置元数据模式:
yaml
name: skill-slug
description: 简短清晰的技能描述。
version: 1.0.0
user-invocable: true
disable-model-invocation: true
metadata: {openclaw:{emoji:📦