Publishing on ClawHub
ClawHub publishing is owner-scoped: every publish targets a publisher, and the server decides whether the signed-in user can publish there.Owners
An owner is a ClawHub publisher handle, such as@alice or @openclaw.
Every user gets a personal owner; org owners can have multiple members with
owner, admin, or publisher roles.
When you publish, you use your personal owner or an org owner where you have
publisher access.
Skills
Skills publish from a skill folder (clawhub skill publish <path>). The
public page is:
Plugins
Plugins use npm-style package names (clawhub package publish <source>).
Scoped names include the owner in the first path segment:
@openclaw/dronzer can only be published as @openclaw. To publish as
@vintageayu, rename the package to @vintageayu/dronzer.
This stops a package from claiming an org namespace the publisher does not
control.
Release flow
- The UI, CLI, or GitHub workflow gathers package metadata and files.
- The publish request goes to ClawHub with the selected owner.
- The server validates owner permissions, package scope, package name, version, file limits, and source metadata. Validation failure means no release is created.
- ClawHub stores the release and starts automated security checks.
- The release stays hidden from normal install/download surfaces until review and verification finish.
FAQ
Package scope must match selected owner
If the package scope and selected owner do not match, ClawHub rejects the publish:@openclaw/dronzer claims the @openclaw namespace, so only publishers with
access to @openclaw can publish or transfer into it.