# Send Skill Doc Formatter to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "skill-doc-formatter",
    "name": "Skill Doc Formatter",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/RuneweaverStudios/skill-doc-formatter",
    "canonicalUrl": "https://clawhub.ai/RuneweaverStudios/skill-doc-formatter",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/skill-doc-formatter",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=skill-doc-formatter",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "TEMPLATE_CLAWHUB_SKILL.md",
      "TEMPLATE_CLOWHUB_SKILL.md",
      "_meta.json",
      "scripts/format_skill_doc.py",
      "scripts/security_review.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "skill-doc-formatter",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-01T05:40:55.442Z",
      "expiresAt": "2026-05-08T05:40:55.442Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=skill-doc-formatter",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=skill-doc-formatter",
        "contentDisposition": "attachment; filename=\"skill-doc-formatter-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "skill-doc-formatter"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/skill-doc-formatter"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/skill-doc-formatter",
    "downloadUrl": "https://openagent3.xyz/downloads/skill-doc-formatter",
    "agentUrl": "https://openagent3.xyz/skills/skill-doc-formatter/agent",
    "manifestUrl": "https://openagent3.xyz/skills/skill-doc-formatter/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/skill-doc-formatter/agent.md"
  }
}
```
## Documentation

### Description

Formats SKILL.md (OpenClaw/Cursor skill docs) for optimal display on ClawHub. Produces a consistent structure—Description, Installation, Usage with benefit-focused examples, and Commands—so skill pages are clear and scannable.

### Skill Doc Formatter | ClawHub

Formats SKILL.md skill documentation for optimal display on ClawHub. Output uses a consistent structure so skill pages are easy to scan: Description, Installation, Usage (with examples that showcase benefits), and Commands.

Clear description: what the skill does and when to use it. Scannable.

### Installation

clawhub install your-skill
# or: git clone https://github.com/Org/your-skill.git workspace/skills/your-skill

### Usage

Preparing or updating a skill for publication on ClawHub
Converting an existing SKILL.md into the ClawHub-recommended layout
Generating usage examples from a skill's description when examples are missing
Standardizing multiple skills to the same doc structure

Step or scenario one.
Step or scenario two.
When to run which command (point to Commands below).

### Examples

Example 1: [benefit]
Scenario: User wants to do X.
Action: Run your-command --foo.
Outcome: Brief result that showcases the benefit.

Example 2: [benefit]
(Same pattern.)

### Commands

python3 <skill-dir>/scripts/script.py command [options]   # What it does
python3 <skill-dir>/scripts/script.py other              # What it does

command — Short description.
other — Short description.

## Target structure (ClawHub-optimized)

The formatter produces or normalizes these sections:

| Section | Purpose |
|--------|--------|
| **Description** | One clear blurb (from frontmatter \`description\` + optional short intro). What the skill does and when to use it. |
| **Installation** | How to install: \`clawhub install <skill>\`, \`git clone\`, or other steps. Copy-paste ready. |
| **Usage** | How to use the skill: steps, scenarios, or workflow. Concise. |
| **Examples** | Concrete examples that showcase benefits (e.g. before/after, sample commands with outcomes). Generated if missing. |
| **Commands** | All CLI commands in one block with brief descriptions. Absolute paths or placeholders like \`<skill-dir>\`. |


## How to run

From the skill you want to format, or from the formatter skill:

\`\`\`bash
# Format a skill by path (output to stdout)
python3 /path/to/skill-doc-formatter/scripts/format_skill_doc.py /path/to/other-skill/SKILL.md

# Write formatted result back to a new file
python3 scripts/format_skill_doc.py /path/to/skill/SKILL.md -o /path/to/skill/SKILL.clawhub.md

# Use formatter's own SKILL.md as input (demo)
python3 scripts/format_skill_doc.py SKILL.md

Options:

-o FILE — Write output to FILE instead of stdout.
--generate-examples — Generate example usage blocks from the description when Examples section is missing or thin.
--inplace — Overwrite the input SKILL.md with the formatted version (use with care; prefer -o for review).
--security-check — Run security review checks after formatting to identify ClawHub security scan issues.

### Security Review

The formatter includes a security review checker (security_review.py) that helps identify issues that may cause ClawHub security scans to flag skills as "Suspicious". Run it with:

python3 scripts/security_review.py <skill-dir>

Or use the --security-check flag when formatting:

python3 scripts/format_skill_doc.py <skill-dir>/SKILL.md --security-check

The security review checks for:

Missing Requirements: Skills that use system dependencies (CLI tools like openclaw, lsof, ps, launchctl) but don't declare them in SKILL.md
Secret Logging: Commands or values containing secrets/tokens/passwords being written to log files
Missing Files: Install scripts referencing files that don't exist in the skill package
Environment Variables: Scripts using env vars that aren't documented
Persistent Behavior: LaunchAgent/daemon installations without always: true in _meta.json
File Permissions: Log files containing sensitive data without restricted permissions
Metadata vs docs consistency: Env vars in _meta.json env (required) vs optionalEnv must match SKILL.md/README (no "optional" for required, no "required" for optional)
openclaw.json read disclosure: If scripts read openclaw.json, SKILL.md/README must disclose it and which fields are used; recommend a "Before installing" / "verify you are comfortable granting read access" note
CLI vs safe subprocess: If docs show CLI examples with user-supplied task/message in quotes (e.g. spawn --json "..."), docs must warn that programmatic use must use subprocess with a list of arguments (no shell interpolation)

Common fixes for ClawHub security reviews:

Add Requirements section listing all CLI tools and system dependencies
Mask secrets in logs - don't log full command strings with --token or --password arguments
Document environment variables in SKILL.md Requirements section
Add always: true to _meta.json if the skill runs persistently (LaunchAgent/daemon)
Set restrictive permissions on log files containing sensitive data (os.chmod(log_path, 0o600))
Align env metadata and docs - Keep requires.env / optionalEnv in _meta.json in sync with SKILL.md/README (required vs optional)
Disclose openclaw.json reads - State which fields are read (e.g. tools.exec.host / tools.exec.node only) and add "Before installing, verify you are comfortable granting read access to that file"
Warn about safe invocation - Above Commands/CLI, add that bash examples are for manual/CLI use only and that from code callers must use subprocess.run(..., [..., user_message], ...) with a list of arguments

### What the script does

Parse the existing SKILL.md (YAML frontmatter + markdown body).
Map existing ## sections to Description / Installation / Usage / Examples / Commands (by title and content).
Normalize section order and headings to the ClawHub structure.
Extract or generate:

Description: frontmatter description + first paragraph or intro.
Installation: looks for "install", "clawhub", "clone", "npm" etc.; otherwise adds a placeholder.
Usage: keeps or merges "Usage", "When to use", "How to use" content.
Examples: keeps existing examples; with --generate-examples, adds 1–2 benefit-focused examples from the description.
Commands: collects fenced bash/code blocks and list items that look like CLI commands; merges into one Commands section.


Emit a single markdown document with clean headings and optional table of contents.
Security Review (optional): Run security checks to identify issues that may affect ClawHub security scans.

### Manual template

If you prefer to edit by hand, use this structure in your SKILL.md:

---
name: your-skill
displayName: Your Skill | OpenClaw Skill
description: One-sentence description. Use when [trigger scenarios].
version: 1.0.0
---

# Your Skill Name

Short intro: what it does and why it matters (1–2 sentences).


## Requirements

- Python 3.7+
- Input: valid SKILL.md with YAML frontmatter (at least \`name\`, \`description\`).


## Files in this skill

- \`SKILL.md\` — This file (instructions for the formatter skill).
- \`scripts/format_skill_doc.py\` — Parser and formatter script.
- \`TEMPLATE_CLAWHUB_SKILL.md\` — Copy-paste template for ClawHub-optimized SKILL.md.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: RuneweaverStudios
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-01T05:40:55.442Z
- Expires at: 2026-05-08T05:40:55.442Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/skill-doc-formatter)
- [Send to Agent page](https://openagent3.xyz/skills/skill-doc-formatter/agent)
- [JSON manifest](https://openagent3.xyz/skills/skill-doc-formatter/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/skill-doc-formatter/agent.md)
- [Download page](https://openagent3.xyz/downloads/skill-doc-formatter)