Install
openclaw skills install workbuddy-skill-publishAudit and publish agent skills to ClawHub and GitHub. Scans for personal data, validates frontmatter, enforces bilingual docs, removes internal-only content, and pushes clean distributions. Trigger keywords: publish skill, audit skill, 发布skill, 检查发布, skill发布, push to clawhub.
openclaw skills install workbuddy-skill-publishAudit, clean, and publish agent skills to ClawHub and GitHub. Complements
skill-design-guide(design-time) with publish-time rules. Works with any SKILL.md-based skill in the OpenClaw ecosystem.
Local skill directories often contain personal scripts, internal notes, and ticker-specific code that should never appear in public distributions. This skill standardizes the audit → cleanup → publish → verify pipeline.
Two modes: audit (scan only, no changes) or publish (audit + clean + push).
<dir>/SKILL.md.references/publish-rules.md for detailed validation criteria.For each file in the skill directory (recursive), check:
| Scan | What To Flag |
|---|---|
| Personal data | Ticker symbols with share counts, cost basis, account values, personal names/emails |
| Ticker-specific code | Scripts or configs hardcoded to single tickers (e.g. check_tsla_entry.py) |
| Internal dev notes | "审计清理版", "next N months: no new rules", personal reminders |
| Meta-documents | Files like SKILL_PUBLISH_RULES.md that aren't part of the skill itself |
| Old version files | Q2_2026_交易策略.md — outdated strategy docs |
Read the full SKILL.md. Check:
| Check | Rule |
|---|---|
Frontmatter name | No version number embedded |
Frontmatter description | ≤3 sentences, English, no tickers/versions/keywords |
| H1 title | No version number |
## 详细参考 / ## References section | Must NOT exist |
| Version history | Only published versions, max 5 rows, no "planned" entries |
| Internal dev notes | Must be absent from body text |
| Language | Body is English (a Chinese summary paragraph at end is OK) |
README.md exists and is in EnglishREADME_zh.md exists and is in ChineseCONTRIBUTING.md exists and is in English (if present)Output format:
## Skill Publish Audit: <skill-name>
### Issues Found
| # | Severity | File | Issue |
|---|----------|------|-------|
| 1 | HIGH | SKILL.md | description 含版本号和关键词列表 |
| 2 | HIGH | SKILL.md | H1 标题带版本号 |
| 3 | MEDIUM | check_tsla_entry.py | 个股脚本,不应发布 |
| 4 | LOW | SKILL.md | 版本历史含未发布版本 |
### Clean Files (safe to publish)
- SKILL.md (after fixes above)
- README.md ✓
- README_zh.md ✓
- references/*.md (3 files) ✓
- scripts/*.py (8 files) ✓
### Action Required Before Publish
- [ ] Fix issue #1: rewrite description
- [ ] Fix issue #2: remove version from H1
- [ ] Fix issue #3: exclude check_tsla_entry.py
- [ ] Fix issue #4: trim version history
Stop here in audit mode. User reviews and decides next step.
Apply all fixes identified in the audit:
## 详细参考/References sectionWrite fixed content to SKILL.md, README.md, README_zh.md as needed.
<skill-dir>-publish/SKILL.md, README.md, README_zh.mdCONTRIBUTING.md, LICENSE (if exist)references/ (all .md files)scripts/ (all .py files — filters out personal scripts)requirements.txt, _meta.json_meta.json for current published versionclawhub publish <clean-dir> --slug <slug> --version <version> --changelog "<summary>"
For each whitelisted file:
https://api.github.com/repos/<owner>/<repo>/contents/<path> → get SHAFor files to delete (from audit list):
Use the GitHub PAT from ~/.workbuddy/connectors/<id>/tokens/github.txt.
[ ] clawhub inspect <slug> → latest version matches, English description
[ ] GitHub repo: correct files present, no personal scripts
[ ] Clean temp dir deleted
These cannot be violated.
name field and H1 title must never contain version numbers.| Scenario | Action |
|---|---|
| SKILL.md not found | Stop: "Not a skill directory" |
| Personal data found | Block publish; report exact file+line; user must manually remove |
| ClawHub auth missing | Guide: "Run clawhub login --token <token>" |
| Version already exists | Auto-bump patch version; ask user to confirm |
| GitHub PAT not found | Guide: "Ensure GitHub connector is active" |
| GitHub write fails (403) | Report: "Token lacks write permission on this repo" |
| Network timeout | Retry once; if still fails, report and stop |
| User cancels mid-publish | Clean up temp dir, report: "Publish aborted, local files untouched" |
## Skill Publish Audit: <name> v<version>
### Issues (N found)
[table: severity, file, issue, fix]
### Clean Files (M files, K KB)
[file list]
### Publish Target
- ClawHub: <owner>/<slug>
- GitHub: <owner>/<repo>
- Version: <current> → <target>
## Publish Complete: <name>@<version>
### ClawHub
- URL: https://clawhub.ai/<owner>/<slug>
- Version: <version>
- Publish ID: <id>
### GitHub
- Repo: <owner>/<repo>
- Commit: <sha>
- Files: <N> updated, <M> deleted