> ## Documentation Index
> Fetch the complete documentation index at: https://docs.profclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Publishing to ClawHub

> Submit your plugin to the ClawHub marketplace for the profClaw community

ClawHub is the profClaw plugin marketplace. Published plugins appear in **Settings > Plugins > Browse ClawHub** and are installable with one click.

## Publishing Checklist

Before submitting, verify:

* [ ] `keywords` includes `"profclaw-plugin"` in `package.json`
* [ ] `profclaw.pluginId` is unique (check [clawhub.dev](https://clawhub.dev))
* [ ] Default export uses `definePlugin()`
* [ ] `settingsSchema` declared for all credentials and settings
* [ ] `healthCheck()` implemented and tested
* [ ] README includes setup instructions and screenshots
* [ ] Tests pass (`pnpm test`)
* [ ] Build succeeds (`pnpm build`)
* [ ] No hardcoded secrets or credentials in source

## Step 1: Publish to npm

```bash theme={null}
npm login
npm publish --access public
```

Your package name should follow the convention: `@yourname/profclaw-plugin-<name>`

## Step 2: Submit to ClawHub

### Via CLI

```bash theme={null}
profclaw plugins publish --npm-package @yourname/profclaw-plugin-myplugin
```

This submits to the ClawHub API for review.

### Via Web

1. Sign in at [clawhub.dev](https://clawhub.dev)
2. Click **Submit Plugin**
3. Enter your npm package name
4. Fill in the listing details (category, icon, screenshots)
5. Submit for review

## Review Process

ClawHub review checks:

* Plugin loads without errors in a sandboxed profClaw instance
* `healthCheck()` returns `{ healthy: boolean }`
* No malicious code (automated + manual scan)
* README quality and accuracy
* No duplicate functionality without meaningful differentiation

Review typically takes 1-3 business days. You will receive an email on approval or rejection with feedback.

## Versioning

Follow semantic versioning:

| Change                            | Version bump |
| --------------------------------- | ------------ |
| New feature, backwards compatible | `minor`      |
| Bug fix                           | `patch`      |
| Breaking API change               | `major`      |

When you publish a new npm version, ClawHub picks it up automatically within 1 hour. Users on auto-update receive the new version on their next profClaw restart.

## Listing Metadata

After approval, update your listing at [clawhub.dev/my-plugins](https://clawhub.dev/my-plugins):

* **Icon**: PNG or SVG, 128x128px minimum
* **Screenshots**: Show the plugin working in the settings UI
* **Category**: `search`, `tool`, `integration`, or `model`
* **Pricing**: Mark as free, paid, or freemium
* **Support URL**: Link to your issue tracker

## Unpublishing

To remove a plugin from ClawHub:

```bash theme={null}
profclaw plugins unpublish @yourname/profclaw-plugin-myplugin
```

This hides the listing. Users who already installed the plugin can continue using it. The npm package remains published.

## ClawHub API

For automated publishing in CI/CD:

```bash theme={null}
curl -X POST https://api.clawhub.dev/v1/plugins \
  -H "Authorization: Bearer ${CLAWHUB_TOKEN}" \
  -d '{"npmPackage": "@yourname/profclaw-plugin-myplugin"}'
```

Get a ClawHub API token at [clawhub.dev/settings/tokens](https://clawhub.dev/settings/tokens).
