# Send Remote Skill Engine 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": "remote-skill-engine",
    "name": "Remote Skill Engine",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/oki3505F/remote-skill-engine",
    "canonicalUrl": "https://clawhub.ai/oki3505F/remote-skill-engine",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/remote-skill-engine",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=remote-skill-engine",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "references/registry-urls.md",
      "scripts/batch-cache.sh",
      "scripts/cache-skill.py",
      "scripts/compare-skills.py",
      "scripts/execute-remote-skill.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "remote-skill-engine",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-08T03:42:01.480Z",
      "expiresAt": "2026-05-15T03:42:01.480Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=remote-skill-engine",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=remote-skill-engine",
        "contentDisposition": "attachment; filename=\"remote-skill-engine-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "remote-skill-engine"
      },
      "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/remote-skill-engine"
    },
    "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/remote-skill-engine",
    "downloadUrl": "https://openagent3.xyz/downloads/remote-skill-engine",
    "agentUrl": "https://openagent3.xyz/skills/remote-skill-engine/agent",
    "manifestUrl": "https://openagent3.xyz/skills/remote-skill-engine/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/remote-skill-engine/agent.md"
  }
}
```
## Documentation

### Remote Skill Engine

This skill enables you to discover, cache, and use skills directly from remote registries (ClawHub, GitHub, etc.). Skills are stored in ~/.openclaw/workspace/remote-skills-cache/ and work exactly like locally installed skills.

### 1. Skill Discovery & Search

Search across multiple registries:

# ClawHub search
clawhub search "<query>" --limit <n>

# GitHub skill search (via gh CLI)
gh search repos --language=markdown "skill openclaw" "<topic>"

When to use: User needs a skill for a specific task, wants to explore available skills, or needs to compare options.

### 2. Remote Skill Caching (KEY FEATURE)

Cache any remote skill to work EXACTLY like installed skills:

# Cache a skill from ClawHub
./scripts/cache-skill.sh clawhub://security-auditor

# Cache from GitHub
./scripts/cache-skill.sh github://owner/repo/branch

# Cache from direct URL
./scripts/cache-skill.sh https://raw.githubusercontent.com/.../SKILL.md

# List cached skills
clawhub list --cache

# Use cached skill (works like installed!)
# Just trigger it normally - it's in your skills path!

Cache Location: ~/.openclaw/workspace/remote-skills-cache/<skill-name>/

Cached skills are symlinked to skills/ folder so they work identically to installed skills.

### 3. Batch Cache Management

# Cache multiple skills at once
./scripts/cache-skills-batch.json skills-list.json

# Update all cached skills
./scripts/update-cached-skills.sh

# Remove cached skill
./scripts/uncache-skill.sh <skill-name>

# Show cache stats
./scripts/cache-stats.sh

### 4. Smart Sync & Updates

# Check for updates to cached skills
./scripts/check-updates.sh

# Sync specific skill to latest
./scripts/sync-skill.sh <skill-name>

# Auto-sync on skill trigger (configurable)
# Set in config.json: {"autoSync": true}

### 5. Offline Mode

Once cached, skills work WITHOUT internet:

All scripts available locally
References cached alongside SKILL.md
Assets downloaded and stored
No network calls needed

### NEW: Workflow 1 - Cache Remote Skill

Trigger: User says "Install/caching <skill-name>" or "Get <skill> from web"

# Step 1: Find the skill
clawhub search "<skill-name>" --limit 1

# Step 2: Cache it locally
python scripts/cache-skill.py <skill-name> <source-url>

# Step 3: Verify cache
ls ~/.openclaw/workspace/remote-skills-cache/<skill-name>/

# Step 4: Use it (works like installed!)
# Just use the skill normally - it auto-triggers from skills/

### NEW: Workflow 2 - Batch Cache Skills List

Trigger: User wants multiple skills cached

// skills-to-cache.json
{
  "skills": [
    {"name": "security-auditor", "source": "clawhub://security-auditor"},
    {"name": "coding-agent", "source": "github://user/repo/main"}
  ]
}

./scripts/batch-cache.sh skills-to-cache.json

### Workflow 3: Compare Multiple Skills (Enhanced)

Trigger: User says "Which skill is better for X?"

Fetch metadata for each skill
Check if cached, cache if not
Create comparison with SOURCE + CACHE STATUS:
| Skill | Version | Source | Cached | Last Sync |
|-------|---------|--------|--------|-----------|
| skill-a | 1.0.0 | ClawHub | ✅ | 2h ago |
| skill-b | 2.1.0 | GitHub | ❌ | - |


Recommend + offer to cache

### Workflow 4: Sync Cached Skills

Trigger: Heartbeat or user says "Update cached skills"

# Check all cached skills for updates
./scripts/check-updates.sh

# Update outdated skills
./scripts/update-cached-skills.sh --auto

# Update specific skill
./scripts/sync-skill.sh <skill-name>

### Workflow 5: Use Cached Skill (Transparent)

Trigger: User triggers any cached skill normally

Skill is already in skills/ folder (symlinked)
Works IDENTICALLY to installed skills
No special handling needed
All scripts/refs/assets available locally

### scripts/fetch-skill.py

Fetch a skill's SKILL.md and parse frontmatter without full download.

#!/usr/bin/env python3
"""Fetch remote skill metadata without full download."""
import requests
import yaml
import sys

def fetch_skill_frontmatter(skill_url):
    """Fetch only YAML frontmatter from SKILL.md"""
    resp = requests.get(skill_url, stream=True)
    content = ""
    in_frontmatter = False
    for line in resp.iter_lines():
        line = line.decode('utf-8')
        if line == '---':
            if not in_frontmatter:
                in_frontmatter = True
                continue
            else:
                break
        if in_frontmatter:
            content += line + '\\n'
    
    try:
        return yaml.safe_load(content)
    except yaml.YAMLError as e:
        print(f"Parse error: {e}", file=sys.stderr)
        return None

if __name__ == "__main__":
    if len(sys.argv) != 2:
        print("Usage: fetch-skill.py <skill-url>")
        sys.exit(1)
    
    metadata = fetch_skill_frontmatter(sys.argv[1])
    if metadata:
        print(f"Name: {metadata.get('name', 'N/A')}")
        print(f"Description: {metadata.get('description', 'N/A')}")

Usage:

python scripts/fetch-skill.py "https://raw.githubusercontent.com/repo/SKILL.md"

### scripts/compare-skills.py

Compare multiple skills side-by-side.

#!/usr/bin/env python3
"""Compare multiple remote skills."""
import json
import sys

def compare_skills(skill_data_list):
    """Generate comparison table"""
    print("| Skill | Version | Description | Requirements |")
    print("|-------|---------|-------------|--------------|")
    for skill in skill_data_list:
        name = skill.get('name', 'N/A')
        version = skill.get('version', 'N/A')
        desc = skill.get('description', '')[:80] + '...' if len(skill.get('description', '')) > 80 else skill.get('description', 'N/A')
        reqs = skill.get('requires', 'None')
        print(f"| {name} | {version} | {desc} | {reqs} |")

if __name__ == "__main__":
    # Read JSON from stdin
    skills = json.load(sys.stdin)
    compare_skills(skills)

### references/registry-urls.md

Known skill registry endpoints:

ClawHub

Search: https://clawhub.com/api/skills/search?q=<query>
Skill detail: https://clawhub.com/api/skills/<name>
Raw SKILL.md: https://raw.githubusercontent.com/<owner>/<repo>/SKILL.md

GitHub

Search API: https://api.github.com/search/code?q=SKILL.md+openclaw
Raw file: https://raw.githubusercontent.com/<owner>/<repo>/<branch>/SKILL.md

Awesome Lists

https://raw.githubusercontent.com/openclaw/awesome-openclaw/main/README.md

### references/skill-patterns.md

Common skill patterns to recognize:

Skill Types:

Tool wrappers - Provide CLI access to external tools (nmap, sqlmap, etc.)
Workflow engines - Multi-step processes (security audits, deployments)
Knowledge bases - Domain expertise + reference docs
Automation scripts - Repetitive task automation
Integration layers - MCP servers, API connectors

Metadata Patterns:

metadata:
  openclaw:
    requires:
      bins: ["tool-name"]  # Required binaries
    install:
      - kind: node  # or brew, apt, pip
        package: package-name

### Example 1: Find and Use Security Skill

User: "Find me a skill for web security scanning"

You:
1. clawhub search "web security" --limit 5
2. Present results
3. User picks "security-audit-toolkit"
4. Fetch SKILL.md, read workflows
5. Follow the skill's security audit process

### Example 2: Temporary Skill Usage

User: "Use the coding agent to review my repo, but don't install it"

You:
1. Fetch coding agent SKILL.md from ClawHub
2. Read its code review workflow
3. Execute the workflow steps manually
4. Report findings

### Example 3: Batch Discovery

User: "Show me all available skills"

You:
1. clawhub search "" --limit 100
2. Categorize by keywords
3. Present organized list:
   - Security (12 skills)
   - Coding (8 skills)
   - Automation (6 skills)
   - etc.

### Best Practices

Cache metadata locally - Store skill descriptions in memory/skills-cached.md to avoid repeated fetches
Respect rate limits - Don't hammer ClawHub/GitHub APIs
Verify skill sources - Only fetch from trusted registries
Clean up temp files - Remove /tmp/remote-skill-* after use
Track skill usage - Log which remote skills work well for future reference

### Trigger Examples

When this skill activates:

"Find a skill for X"
"What skills do Y?"
"Use <skill-name> without installing"
"Compare skills for X"
"Show me available skills"
"What does <skill> do?"
"Is there a skill for X?"

Remote Skill Engine - Stream skills, don't install them. 🌐⚡
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: oki3505F
- 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-08T03:42:01.480Z
- Expires at: 2026-05-15T03:42:01.480Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/remote-skill-engine)
- [Send to Agent page](https://openagent3.xyz/skills/remote-skill-engine/agent)
- [JSON manifest](https://openagent3.xyz/skills/remote-skill-engine/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/remote-skill-engine/agent.md)
- [Download page](https://openagent3.xyz/downloads/remote-skill-engine)