Install
openclaw skills install skillfactoryTurn any idea into a polished, versioned, publishable OpenClaw skill — no scaffolding, no guesswork. Just say "新 skill" or "build a skill" and Skill Factory handles the rest: captures the spec, collects sources, distills knowledge, and packages it into a GitHub-ready repo. Also supports upgrading existing skills with "升级 skill" or "upgrade skill". Built for makers who want quality without reinventing the process. Triggers: "新 skill", "做一个skill", "build a skill", "create skill", "skill制作", "把这个做成skill", "帮我把...打包成skill", "skill升级", "skill发行", "skill factory", "制造skill", "skill工厂", "skill from scratch", "我有个skill想法", "skill迭代", "skill打磨", "做一个关于...的skill", "skill版本管理", "skill如何发行", "skill如何升级", "skill生产", "skill自动化", "更新skill", "升级skill", "维护skill", "升级已有skill", "upgrade skill", "update skill", "维护现有skill", "skill版本升级", "skill生命周期".
openclaw skills install skillfactory"The first industrial revolution was marked by using machines to make machines. Skill Factory is the machine that makes skills."
Skill Factory provides a repeatable, human-AI collaborative SOP for going from a raw idea to a polished, publishable OpenClaw skill. It handles:
The key insight: this is not about capability, it's about workflow. Any Claw instance with this skill loaded can build production-quality skills — the process is the product.
Just say something like:
New skill: [name], [1-2 sentences], [source URL (optional)]Upgrade skill: [skill name/path], [change request], [new source URL (optional)]
New skill: prompt-engineering, best practices from Anthropic and OpenAINew skill: git-workflow, standardize my branching and PR flow, https://...新 skill:简历筛选,用关键词匹配和语义分析筛选简历Upgrade skill: nova-reader, add Semantic Scholar data sourceUpgrade skill: harness, strengthen governance rules from Phase 3.5 lessons升级 skill:skill-factory,增加显式升级模式Claw will enter Phase 0 for new skills or the Upgrade Workflow for existing skills — no more information needed to start.
中文用户: 新 skill:[名字],[1-2句说明],[来源URL(可选)] for new; 升级 skill:[skill名字/路径],[变更要求],[新来源URL(可选)] for upgrades.
Goal: Lock down the spec before any work begins.
inbox/<skill-name>.md (防止遗失)wip/<skill-name>/BRIEF.mdKey principle: Phase 0 prevents over-engineering (LRN-003). Don't start building until the 3 questions are answered.
Goal: Gather raw material without processing.
web_fetch each source → save to wip/<skill-name>/raw/web_search for 2–3 high-quality referencesRule: At least 1 first-party source (official docs / original author's post). Raw content is saved as-is — no processing yet.
Goal: Extract signal, discard noise.
raw/ filesSKILL.md — triggers + workflow (≤200 lines)references/ — detailed knowledge, split by topicscripts/ — reusable code, only if neededQuality checklist:
references/, not bloating SKILL.mdGoal: Clean, versioned, standalone repo ready for GitHub/ClawHub.
<skill-name>/
├── SKILL.md # Entry point (triggers + workflow)
├── README.md # Human-facing intro — bilingual (EN + ZH)
├── CHANGELOG.md # Version history
├── LICENSE # MIT recommended
├── .gitignore
└── references/ # Knowledge base
└── *.md
For script-heavy skills, add:
└── scripts/
└── *.py
A skill README must answer 3 questions in ≤60 seconds of reading:
Bilingual (EN + ZH): Use two separate files for maximum clarity.
README.md # English only — no Chinese text anywhere
README_zh.md # Chinese only — full detail, selling points, usage
Each file includes a badge linking to the other version. This allows GitHub to render clean language-specific views and enables future ClawHub to surface the right version per locale.
When the user wants to publish to ClawHub:
SKILL.md frontmatter has: name, version, descriptiondescription must contain broad trigger phrases covering multiple phrasingsLICENSE file present (MIT recommended)git tag v1.0.0 && git push --tagsWhen the skill is already published and needs a version update on ClawHub, use the clawhub CLI:
Prerequisites:
npm install clawhub
clawhub login --device
# Visit the provided URL, enter the code, authorize in browser
# Note: login process must stay running in background while user authorizes
Publish update workflow:
# 1. Push latest commit to GitHub first
git push origin main
# 2. Tag the release
git tag v<new-version>
git push --tags
# 3. Publish to ClawHub
clawhub skill publish <repo-path> --slug <slug> --version <new-version> --changelog "<summary>"
# 4. Verify
clawhub inspect <slug>
# 5. Sync to local workspace
Copy-Item -Recurse -Force "D:\Agent\WorkBuddy\skills\<skill-name>\*" "$env:USERPROFILE\.workbuddy\skills\<skill-name>\"
Protocol: GitHub first, ClawHub second. Always push to GitHub before publishing to ClawHub. This ensures the source code is available for moderation review and users can link back to the repo.
Windows + Proxy note: Use HTTPS remote (not SSH) on Windows environments with proxy/VPN. SSH port 22 may be intercepted by proxy tools (Clash/V2Ray). Configure:
git remote set-url origin https://github.com/<owner>/<repo>.git
Limitation: ClawHub Summary is derived from SKILL.md frontmatter description field. To update the summary, edit description in SKILL.md and republish.
A local workbuddy automation can periodically check and sync all skills:
# One-time manual: for each repo, push + publish + sync
# Or set a weekly cron via workbuddy automation
See automation system in WorkBuddy for setting up recurring sync tasks.
After publishing, sync to ~/.workbuddy/skills/<skill-name>/ so Claw can use it immediately:
Copy-Item -Recurse -Force "D:\Agent\WorkBuddy\skills\<skill-name>\*" "$env:USERPROFILE\.workbuddy\skills\<skill-name>\"
Goal: Update an existing skill without starting from scratch.
This is a first-class workflow, distinct from creating a new skill. When the user invokes Upgrade skill:, follow these steps:
SKILL.md — current version, triggers, workflowCHANGELOG.md — version history (especially recent entries)README.md — public descriptionreferences/ — existing knowledge baseSKILL.md frontmatter or git tag)Compare the requested change against the skill's public API — its documented behavior:
| Public API element | Examples |
|---|---|
| Use cases | What scenarios the skill serves |
| Input format | What the user says to trigger the skill |
| Output format | What files/code the skill produces |
| Workflow phases | The SOP structure |
| Safety boundaries | What the agent must not do |
| File structure | Repo layout conventions |
| Publishing behavior | How the skill is distributed |
Determine the version bump:
| Bump | When | Examples |
|---|---|---|
PATCH x.x.1 | Fixes that don't change behavior | Typo fix, clarification, trigger word tweak |
MINOR x.1.0 | Backward-compatible additions | New workflow mode, new reference source, optional publishing path |
MAJOR x.0.0 | Breaking changes | Changed triggering format, restructured SOP, removed phase, changed safety assumptions |
Before making any changes, produce an upgrade plan:
## Upgrade Plan
Current version: <version from SKILL.md>
Proposed version: <computed bump>
Change type: PATCH / MINOR / MAJOR
Reason:
<why this change belongs in this category>
Files to modify:
<list of files that need changes>
Risk level: low / medium / high
Backward compatibility: yes / no
Proposed changelog entry:
### Added
- <new features>
### Changed
- <behavior changes>
### Fixed
- <bug fixes>
Suggested commit message:
<semantic commit message>
Suggested tag:
v<new version>
Present this plan to the user. Do not apply changes until the user confirms.
After user confirmation:
CHANGELOG.md with proper format (see below)git tag v<new-version> && git push --tagsAfter applying, produce a summary:
## Upgrade Complete
<old version> → <new version>
Files changed: <list>
Changelog: <link or excerpt>
Next steps: <optional>
Version semantics follow Semantic Versioning adapted for skills:
MAJOR.MINOR.PATCH
| Version bump | When | Example trigger |
|---|---|---|
PATCH x.x.1 | Typo fix, trigger word tweak, minor clarification | "修复了一个例子描述不准" |
MINOR x.1.0 | New reference source, new phase step, extended trigger coverage | "加入 Anthropic 最新文档" |
MAJOR 2.0.0 | Scope change, structural refactor, paradigm shift | "从单文档改为多 reference 结构" |
A MAJOR version (e.g. 1.x → 2.0) signals a breaking change in the skill's mental model:
MAJOR ≠ more content. A skill that doubles its references but keeps the same structure is still a MINOR bump.
A MINOR version (e.g. 1.0 → 1.1 → 1.2) signals additive improvements that don't break the existing pattern:
references/feat: add [source] to references → MINOR
fix: correct [description] → PATCH
refactor: restructure [component] → could be MAJOR
release: v2.0.0 - [summary] → tag release commits
Format: Keep a Changelog
Every release must update CHANGELOG.md with:
[Unreleased] section at the top (collects next-version changes)[X.Y.Z] — YYYY-MM-DDThe [Unreleased] section captures changes that will go into the next release. Before cutting a new version, review [Unreleased], classify entries, and move them into the version section.
Distinction: git history = developer log; CHANGELOG = user-facing narrative. Do not substitute one for the other.
The legacy iteration path is preserved for quick edits. For structured upgrades, use the Upgrade Workflow (produces planned changes and version bump).
When doing a quick upgrade:
D:/Agent/WorkBuddy/skills/<skill-name>/references/ with dated filename (source-YYYYMMDD.md)SKILL.md version field and trigger words if neededCHANGELOG.mdUpgrade triggers: User sends new URL, user says "skill has a gap", Claw detects missing knowledge during a task execution.
D:/WorkBuddy/
└── .workspace-index.md # Master skill status board
D:/Agent/WorkBuddy/skills/
├── skill-factory/ # This meta-skill repo
│ ├── SKILL.md # This file
│ ├── README.md
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── .gitignore
│ ├── CLAWHUB.md
│ ├── inbox/ # Raw ideas drop zone
│ └── wip/ # Active work-in-progress
│ └── <skill-name>/
│ ├── BRIEF.md
│ ├── raw/
│ └── draft/
│
├── harness/ # ✅ v1.2.0 — ready for GitHub
├── nova-reader/ # ✅ v1.1.0 — ready for GitHub
└── <future-skills>/
| ID | Lesson | Fix in SOP |
|---|---|---|
| LRN-001 | Missed content after distillation without re-reading source | Phase 2 mandatory re-fetch |
| LRN-002 | Skill evolved in workspace, hard to publish as standalone | Phase 3 independent repo |
| LRN-003 | Over-engineered before confirming real need | Phase 0 three-question lock |
| LRN-004 | Research notes mixed with skill docs | raw/ vs references/ separation |
| LRN-005 | ClawHub login needs background process to wait for user auth | Device Flow requires staying alive |
| LRN-006 | Git push blocked by proxy/VPN (SSH 22) on Windows | Use HTTPS + PAT, configure remote |
| LRN-007 | Requirement creep during simple tasks | Core first, periphery later |