← Back to Skills Marketplace
zhangyanbo2007

Publish Skill Publisher

by Walle · GitHub ↗ · v1.1.0 · MIT-0
cross-platform ⚠ suspicious
34
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install skill-publisher-universal
Description
Generic publishing tool for Claude Code skills. Validates, packages, and publishes to ClawHub, Hermes Agent, and anthropics/skills with bilingual README supp...
README (SKILL.md)

Skill Publisher

A generic publishing workflow for any Claude Code skill. Package, validate, and publish to ClawHub (OpenClaw), Hermes Agent, and anthropics/skills (Claude Code).

When to Use

  • User wants to publish a skill they've built to one or more marketplaces
  • User needs a bilingual (EN/ZH) README for their skill
  • User wants to validate SKILL.md format before publishing
  • User needs help with clawhub publish or GitHub PR submission

Prerequisites

Before using this skill, check for the following in the environment (or ask the user):

Authentication

These tokens are pre-configured in ~/.env and shell environment. Read them automatically — do not ask the user:

Token Env Var Source
GitHub PAT GITHUB_TOKEN ~/.env or env
GitHub user GITHUB_USER ~/.env or env
ClawHub token CLAWHUB_TOKEN ~/.env or env

If a variable is missing, read ~/.env first, then ask the user.

Network Connectivity

Before any GitHub API call, test connectivity first:

curl -s -m 5 https://api.github.com/repos/NousResearch/hermes-agent > /dev/null 2>&1 && echo "direct OK" || echo "direct FAIL"

If direct access fails (common in restricted networks), load proxy from ~/.env:

source ~/.env
# ~/.env may contain (possibly commented-out):
# https_proxy=http://192.168.28.92:7897
# http_proxy=http://192.168.28.92:7897
# Export the proxy ONLY if direct access failed:
export https_proxy=http://192.168.28.92:7897
export http_proxy=http://192.168.28.92:7897
# Re-test with proxy:
https_proxy=$https_proxy curl -s -m 10 https://api.github.com/ > /dev/null 2>&1 && echo "proxy OK" || echo "proxy FAIL"

Fallback strategy (ordered by priority):

  1. Direct HTTPS access — works in unrestricted networks
  2. Proxy from ~/.env — read https_proxy/http_proxy values; if commented out, uncomment and export them for this session only
  3. SSH on port 22 — [email protected]:... works without proxy in most environments; use for git clone/push, but NOT for GitHub REST API (curl/gh api)

When proxy is also down: skip GitHub API PR creation. Push branch via SSH and instruct user to create PR manually via browser.

Workflow

Step 1: Validate Source Skill

python3 ~/.skills/skill-publisher/scripts/validate_skill.py \x3Cskill-path>

Checks: SKILL.md exists, valid YAML frontmatter, required fields (name, description), name format (lowercase, hyphens), description \x3C= 1024 chars, no hardcoded secrets, file size \x3C= 100,000 chars.

Step 2: Generate Publish Package

python3 ~/.skills/skill-publisher/scripts/generate_package.py \
  --source ~/.skills/\x3Cskill-name> \
  --output /tmp/publish-\x3Cskill-name> \
  --platforms clawhub hermes anthropics

Produces:

/tmp/publish-\x3Cskill-name>/
├── SKILL.md            # Copied from source
├── README.md           # Bilingual (EN/ZH) README with examples
├── examples/           # Copied from source skill
└── .clawhub.json       # ClawHub manifest

Step 3: Platform-Specific Publishing

ClawHub (OpenClaw)

CRITICAL: Always pass --slug \x3Cskill-name> to prevent ClawHub from using the directory name as the slug. Without --slug, a publish from /tmp/publish-my-skill/ would create a duplicate entry named publish-my-skill instead of my-skill.

clawhub publish /tmp/publish-\x3Cskill-name> --version \x3Cversion> --slug \x3Cskill-name>

If CLI unavailable: install npm i -g clawhub or upload via clawhub.ai.

Hermes Agent (GitHub PR)

Target: NousResearch/hermes-agentskills/creative/\x3Cskill-name>/SKILL.md

  1. Fork repo on GitHub
  2. Clone fork, copy SKILL.md to skills/creative/\x3Cskill-name>/
  3. Commit, push, create PR

anthropics/skills (GitHub PR)

Target: anthropics/skillsskills/\x3Cskill-name>/SKILL.md

Same process as Hermes, different repo.

Step 4: Verify

# ClawHub
curl -s "https://clawhub.ai/api/v1/skills?slug=\x3Cskill-name>"
# Hermes / anthropics — check raw GitHub URLs

Helper Scripts

Script Purpose
scripts/validate_skill.py Validate SKILL.md format
scripts/generate_package.py Generate publish package with bilingual README
scripts/gen_clawhub_manifest.py Generate .clawhub.json
scripts/create_pr.py Create GitHub PR via API

Common Pitfalls

  1. SKILL.md first bytes must be --- — no BOM, no blank line
  2. ClawHub rejects hardcoded secrets — scan scripts/ before publishing
  3. Hermes requires metadatametadata.hermes.tags and related_skills
  4. Network issues — always test connectivity first. If direct HTTPS fails, load proxy from ~/.env and re-test. If proxy also fails, use SSH ([email protected]:...) for git operations and tell user to create PR manually via browser
  5. ClawHub slug mismatch — always pass --slug \x3Cskill-name> when publishing; otherwise the directory name becomes the slug, creating a wrong/duplicate entry (e.g. publish-my-skill instead of my-skill)
Usage Guidance
Install only if you are comfortable with the agent reading GitHub/ClawHub tokens from your environment. Before use, review ~/.env, avoid sourcing it directly, use least-privilege tokens, approve any proxy, and require a final confirmation before publishing or creating PRs.
Capability Analysis
Type: OpenClaw Skill Name: skill-publisher-universal Version: 1.1.0 The skill automates the publishing of AgentSkills and includes explicit instructions in SKILL.md for the agent to automatically read sensitive credentials (GITHUB_TOKEN, CLAWHUB_TOKEN) from ~/.env without user confirmation. It also contains logic to manipulate shell environment variables and proxy settings. While these capabilities are functional for a publishing tool and the package includes a security-oriented script (validate_skill.py) to scan for hardcoded secrets, the automated access to authentication tokens and environment modification constitutes high-risk behavior.
Capability Assessment
Purpose & Capability
The validation, packaging, and marketplace publishing workflow matches the stated purpose, but publishing to ClawHub/GitHub is a high-impact public/account action.
Instruction Scope
The instructions tell the agent to read credentials automatically without asking and do not clearly require a final user confirmation before using publishing authority.
Install Mechanism
There is no install spec, but the skill relies on external local commands and suggests an unpinned global npm install for the ClawHub CLI.
Credentials
Registry metadata declares no env vars or primary credential, while SKILL.md instructs use of GitHub and ClawHub tokens from ~/.env or the shell environment.
Persistence & Privilege
There is no background daemon, but the skill can use account tokens to create durable external effects such as published packages, branches, commits, and PRs.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install skill-publisher-universal
  3. After installation, invoke the skill by name or use /skill-publisher-universal
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.1.0
- Adds bilingual (EN/ZH) README generation during publish packaging. - Implements robust network connectivity checks with fallback proxy and SSH strategies for GitHub API operations. - Enforces critical SKILL.md validation, including required fields, slug formatting, and content limits. - Streamlines platform-specific publishing, with key instructions for ClawHub, Hermes Agent, and anthropics/skills, including workflow automation and slug handling. - Documents helper scripts and clarifies common pitfalls, especially for network and publishing errors.
Metadata
Slug skill-publisher-universal
Version 1.1.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Publish Skill Publisher?

Generic publishing tool for Claude Code skills. Validates, packages, and publishes to ClawHub, Hermes Agent, and anthropics/skills with bilingual README supp... It is an AI Agent Skill for Claude Code / OpenClaw, with 34 downloads so far.

How do I install Publish Skill Publisher?

Run "/install skill-publisher-universal" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Publish Skill Publisher free?

Yes, Publish Skill Publisher is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Publish Skill Publisher support?

Publish Skill Publisher is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Publish Skill Publisher?

It is built and maintained by Walle (@zhangyanbo2007); the current version is v1.1.0.

💬 Comments