Files
skill-template/references

description
description
规范化的新技能模板说明复制后替换名称、CLI 示例与 task_service 等业务实现。

技能模板说明

这个仓库是给开发者复制的新技能模板,不是终端用户直接调用的业务 skill。

它提供什么

  • 标准目录结构
  • 最小 CLI 入口(run / logs / log-get / health / version
  • 通用任务日志表骨架(task_logs
  • service 层占位模块(task_service.py、通用 sibling_bridge.py
  • 成熟的隔离测试体系IsolatedDataRoot、FakeAdapter、6 档测试 target、profile 策略)
  • 与现有规范 skill 一致的发布脚本与 GitHub workflow

复制后你需要改什么

  • SKILL.md 中的名称、描述、slug、触发说明
  • SKILL.mdmetadata.openclaw.developer_ids(如需让非公开技能默认授权给开发者查看)
  • references/CLI.md 里的命令示例
  • scripts/util/constants.py 中的 slug / 版本 / logger 名
  • scripts/service/task_service.py 中的 cmd_run 真实业务逻辑
  • 如有特定 task_typereferences/SCHEMA.md 中补充字段映射说明

developer_ids 是做什么的

metadata.openclaw.developer_ids 是平台发布元数据,不是终端用户文案。

它用于声明:当技能发布后,如果平台侧将该技能设置为 access_scope = 0(不公开),哪些开发者用户仍应自动获得可见权限。

约定如下:

  • 字段位置:SKILL.md -> metadata.openclaw.developer_ids
  • 推荐格式:正整数数组,例如 [1032, 12428]
  • 发布效果:发布接口会把这些用户补写到 skill_user_access
  • 第一个 ID 会作为主开发者同步到 skills.developer_id

如果你的技能本来就是公开技能,或暂时不需要开发者专属可见性,这个字段可以留空数组。

不建议再保留的旧结构

  • 旧模板里的 docs/
  • 旧模板里的 optional/
  • 旧入口 scripts/skill_main.py

新模板统一使用 scripts/main.py 作为入口。