Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

deploy-to-marketplace

verified

Use when user wants to deploy/publish a skill to saurun-marketplace, says "deploy [skill] to marketplace", or asks to publish a skill to the plugin marketplace.

View on GitHub

Marketplace

saurun-marketplace

fiatkongen/saurun-marketplace

Plugin

saurun

Repository

fiatkongen/saurun-marketplace

plugins/saurun/skills/deploy-to-marketplace/SKILL.md

Last Verified

February 5, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/fiatkongen/saurun-marketplace/blob/main/plugins/saurun/skills/deploy-to-marketplace/SKILL.md -a claude-code --skill deploy-to-marketplace

Installation paths:

Claude
.claude/skills/deploy-to-marketplace/
Powered by add-skill CLI

Instructions

# Deploy to Marketplace

Deploy skills from `~/.claude/skills/` to the saurun-marketplace plugin repository.

## Workflow

```dot
digraph deploy_flow {
    "User request" [shape=doublecircle];
    "Validate skill structure" [shape=box];
    "Check marketplace state" [shape=box];
    "Conflict?" [shape=diamond];
    "Show diff + warn" [shape=box];
    "User confirms?" [shape=diamond];
    "Copy skill files" [shape=box];
    "Call /publish-plugin bump" [shape=box];
    "Complete" [shape=doublecircle];
    "Abort" [shape=doublecircle];

    "User request" -> "Validate skill structure";
    "Validate skill structure" -> "Check marketplace state";
    "Check marketplace state" -> "Conflict?";
    "Conflict?" -> "Show diff + warn" [label="yes"];
    "Conflict?" -> "Copy skill files" [label="no"];
    "Show diff + warn" -> "User confirms?";
    "User confirms?" -> "Copy skill files" [label="yes"];
    "User confirms?" -> "Abort" [label="no"];
    "Copy skill files" -> "Call /publish-plugin bump";
    "Call /publish-plugin bump" -> "Complete";
}
```

## Steps

### 1. Validate Skill Structure

Check source skill:
```bash
SKILL_NAME="skill-name"
SOURCE="$HOME/.claude/skills/$SKILL_NAME"

# Verify exists
test -f "$SOURCE/SKILL.md" || { echo "Error: SKILL.md not found"; exit 1; }

# Verify frontmatter
grep -q "^name:" "$SOURCE/SKILL.md" || { echo "Error: Missing 'name' in frontmatter"; exit 1; }
grep -q "^description:" "$SOURCE/SKILL.md" || { echo "Error: Missing 'description' in frontmatter"; exit 1; }
```

### 2. Check Marketplace State

```bash
MARKETPLACE="$HOME/repos/saurun-marketplace"
TARGET="$MARKETPLACE/plugins/saurun/skills/$SKILL_NAME"

# Check if skill exists
if [ -d "$TARGET" ]; then
    # Compare modification times
    LOCAL_TIME=$(stat -f %m "$SOURCE/SKILL.md" 2>/dev/null || stat -c %Y "$SOURCE/SKILL.md")
    MARKET_TIME=$(stat -f %m "$TARGET/SKILL.md" 2>/dev/null || stat -c %Y "$TARGET/SKILL.md")

    if [ "$MARKET_TIME" -gt "$LOCAL_TIME" ]; then
        echo "⚠

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
4377 chars