/package
Package a product for distribution across 33+ platforms. Strips WHY comments, generates triple manifests (vault.yaml + plugin.json + agentskills.yaml), stages .publish/. Use when: 'package', 'prepare for publish', or 'bundle it'.
Claude Code
$ npx -y skills add myclaude-sh/myclaude-creator-engine --skill package --agent claude-code
Codex
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a codex -y
Cursor
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a cursor -y
Gemini CLI
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a gemini-cli -y
GitHub Copilot
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a github-copilot -y
OpenCode
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a opencode -y
Windsurf
$ npx skills add myclaude-sh/myclaude-creator-engine --skill package -a windsurf -y
SKILL.md
package.SKILL.mdname: package
description: >-
Package a product for distribution across 33+ platforms. Strips WHY comments, generates
triple manifests (vault.yaml + plugin.json + agentskills.yaml), stages .publish/. Use
when: 'package', 'prepare for publish', or 'bundle it'.
argument-hint: "[product-slug] [--express]"
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
Packager
Stage a product for distribution with triple manifests (MyClaude + Anthropic Plugin + Agent Skills universal).
**When to use:** After /validate passes. Before /publish.
**When NOT to use:** If the product hasn't been validated yet (run /validate first).
---
Activation Protocol
0. **Shared preamble:** Load `references/quality/activation-preamble.md` — context assembly, persona adaptation, deterministic routing rules. 1. Identify product: `$ARGUMENTS` as slug → `workspace/{slug}/` 1b. **Mode selection (Express vs Guided).** Read `creator.yaml → preferences.workflow_style`. Resolve the flow mode:
- `--express` flag OR `workflow_style == "autonomous"` → **Express mode**. Skip the "confirm before stage" prompt, skip the manifest preview step, and produce a single post-stage summary. The safety invariants below still hold — only the conversational confirmations are trimmed.
- `workflow_style == "guided"` or missing → **Guided mode** (default). Confirm before staging, show manifest preview, and walk the creator through the pipeline with full voice.
2. Read `.meta.yaml` → verify state is "validated" and MCS score >= 75% 3. Read `creator.yaml` → load author metadata for manifests. If missing → "Creator profile not found. Run `/onboard` first." and stop. 4. **Maintain creator persona**: Adapt language, depth, and examples to `profile.type` and `technical_level` throughout this skill's execution. A developer gets code examples; a domain expert gets plain language. 5. Load `product-dna/{type}.yaml` → get install_target 6. Load `config.yaml` → vault_defaults for missing fields 6b. **Load proactives:** Load `references/engine-proactive.md` — wire #1 (pipeline guidance: after package, guide to /publish), #20 (test mandate: if MCS-2+ and `.meta.yaml.test_result != "pass"`, block packaging with message "Run /test first"). 7. **Load voice identity:** Load `references/quality/engine-voice-core.md`. Every user-facing line in this skill honors the ✦ signature, three tones, and six anti-patterns. 8. **CLI contract:** Load `references/cli-contract.md` for unified error handling. This skill has conditional severity based on pricing model. Severity map:
- **Blocking (paid products only):** `stripe status` — if product price > 0 and Stripe not connected, halt packaging
- **Silent-skip (free products):** `stripe status` — irrelevant for free products, skip without warning
- **Silent-skip:** `search --category {type} --sort price-desc` — competitive pricing scan, skip without warning on failure
- **All queries:** append `2>/dev/null`, 15s timeout, treat invalid JSON as CLI absent
---
Core Instructions
PACKAGING PIPELINE
**SAFETY INVARIANTS — see end of file (positioned per D19 attention-aware authoring for maximum model compliance).**
**Step 1 — Verify Validation**
Read `.meta.yaml` for validation state:
- If state != "validated" AND state != "packaged": "Product not validated. Run /validate first."
- If MCS score < 75%: "Product below MCS-1 threshold. Run /validate --fix."
- If mcs_target is "MCS-2" or "MCS-3" AND (test_result is null OR test_result != "pass"): "MCS-2+ products require behavioral testing before packaging. Run /test first." — BLOCKING. This gate ensures structural validation (/validate) AND behavioral validation (/test) both pass before distribution.
**Step 1.5 — Package Rename** (if applicable)
Check `product-dna/{type}.yaml` for `package_rename` field. If present, rename the primary file to the specified pattern during copy to `.publish/`.
Currently applies to:
- **minds:** `AGENT.md` → `{slug}.md` (flat file convention for `.claude/agents/`)
This rename ensures the installed filename matches Claude Code's native discovery pattern.
**Step 2 — Strip WHY Comments + Inject Attribution** (SE-D17)
Create a clean copy of all product files.
**REMOVE:**
- `<!-- WHY: ... -->` (HTML comment blocks — may span multiple lines)
- Lines matching `# WHY:` pattern (markdown comment format)
- `# WHY:` pattern in shell scripts (`.sh` files)
- JSON keys prefixed with `_` (e.g., `_comment`, `_why`, `_events_reference`) from `.json`
files. These are documentation keys used in workspace but must not pollute the user's settings.json when hooks are installed. Strip by parsing JSON, removing `_`-prefixed top-level keys, and re-serializing.
**INJECT TWO THINGS** into the `.publish/` copy of the primary file (SKILL.md, AGENT.md, etc.):
**1. Marketplace URL in frontmatter** (PRD D3 — viral vector #1): Add a `marketplace_url` field to the YAML frontmatter of the primary file. This field is read by Claude Code in EVERY session where the product is installed — making every buyer a passive distribution carrier.
---
name: {slug}
description: >
{original description — DO NOT MODIFY}
marketplace_url: "https://myclaude.sh/p/{slug}"
---Rules:
- Add `marketplace_url` as a NEW field — never modify the existing `description`
- Only add to the `.publish/` copy — never touch the original in workspace/
- Use the slug from vault.yaml
**2. Attribution comment at end of file:**
<!-- Published on MyClaude (myclaude.sh) | Quality: MCS-{level} ({score}%) | Engine: Studio v3 -->This attribution comment is:
- Invisible to Claude (HTML comment, does not affect behavior)
- Visible in source code (GitHub renders it in raw view)
- Indexable by search engines (creates discoverable MyClaude references)
- A quality signal (MCS score travels with the product)
Never modify originals — work on the copy in `.publish/`.
**Step 2c — Inject README Badges** (PRD B2 — viral vectors #2)
Append
Read more
name: package description: >- Package a product for distribution across 33+ platforms. Strips WHY comments, generates triple manifests (vault.yaml + plugin.json + agentskills.yaml), stages .publish/. Use when: 'package', 'prepare for publish', or 'bundle it'. argument-hint: "[product-slug] [--express]" allowed-tools: - Read - Write - Edit - Glob - Grep
Packager
Stage a product for distribution with triple manifests (MyClaude + Anthropic Plugin + Agent Skills universal).
**When to use:** After /validate passes. Before /publish.
**When NOT to use:** If the product hasn't been validated yet (run /validate first).
---
Activation Protocol
0. **Shared preamble:** Load `references/quality/activation-preamble.md` — context assembly, persona adaptation, deterministic routing rules. 1. Identify product: `$ARGUMENTS` as slug → `workspace/{slug}/` 1b. **Mode selection (Express vs Guided).** Read `creator.yaml → preferences.workflow_style`. Resolve the flow mode:
- `--express` flag OR `workflow_style == "autonomous"` → **Express mode**. Skip the "confirm before stage" prompt, skip the manifest preview step, and produce a single post-stage summary. The safety invariants below still hold — only the conversational confirmations are trimmed.
- `workflow_style == "guided"` or missing → **Guided mode** (default). Confirm before staging, show manifest preview, and walk the creator through the pipeline with full voice.
2. Read `.meta.yaml` → verify state is "validated" and MCS score >= 75% 3. Read `creator.yaml` → load author metadata for manifests. If missing → "Creator profile not found. Run `/onboard` first." and stop. 4. **Maintain creator persona**: Adapt language, depth, and examples to `profile.type` and `technical_level` throughout this skill's execution. A developer gets code examples; a domain expert gets plain language. 5. Load `product-dna/{type}.yaml` → get install_target 6. Load `config.yaml` → vault_defaults for missing fields 6b. **Load proactives:** Load `references/engine-proactive.md` — wire #1 (pipeline guidance: after package, guide to /publish), #20 (test mandate: if MCS-2+ and `.meta.yaml.test_result != "pass"`, block packaging with message "Run /test first"). 7. **Load voice identity:** Load `references/quality/engine-voice-core.md`. Every user-facing line in this skill honors the ✦ signature, three tones, and six anti-patterns. 8. **CLI contract:** Load `references/cli-contract.md` for unified error handling. This skill has conditional severity based on pricing model. Severity map:
- **Blocking (paid products only):** `stripe status` — if product price > 0 and Stripe not connected, halt packaging
- **Silent-skip (free products):** `stripe status` — irrelevant for free products, skip without warning
- **Silent-skip:** `search --category {type} --sort price-desc` — competitive pricing scan, skip without warning on failure
- **All queries:** append `2>/dev/null`, 15s timeout, treat invalid JSON as CLI absent
---
Core Instructions
PACKAGING PIPELINE
**SAFETY INVARIANTS — see end of file (positioned per D19 attention-aware authoring for maximum model compliance).**
**Step 1 — Verify Validation**
Read `.meta.yaml` for validation state:
- If state != "validated" AND state != "packaged": "Product not validated. Run /validate first."
- If MCS score < 75%: "Product below MCS-1 threshold. Run /validate --fix."
- If mcs_target is "MCS-2" or "MCS-3" AND (test_result is null OR test_result != "pass"): "MCS-2+ products require behavioral testing before packaging. Run /test first." — BLOCKING. This gate ensures structural validation (/validate) AND behavioral validation (/test) both pass before distribution.
**Step 1.5 — Package Rename** (if applicable)
Check `product-dna/{type}.yaml` for `package_rename` field. If present, rename the primary file to the specified pattern during copy to `.publish/`.
Currently applies to:
- **minds:** `AGENT.md` → `{slug}.md` (flat file convention for `.claude/agents/`)
This rename ensures the installed filename matches Claude Code's native discovery pattern.
**Step 2 — Strip WHY Comments + Inject Attribution** (SE-D17)
Create a clean copy of all product files.
**REMOVE:**
- `<!-- WHY: ... -->` (HTML comment blocks — may span multiple lines)
- Lines matching `# WHY:` pattern (markdown comment format)
- `# WHY:` pattern in shell scripts (`.sh` files)
- JSON keys prefixed with `_` (e.g., `_comment`, `_why`, `_events_reference`) from `.json`
files. These are documentation keys used in workspace but must not pollute the user's settings.json when hooks are installed. Strip by parsing JSON, removing `_`-prefixed top-level keys, and re-serializing.
**INJECT TWO THINGS** into the `.publish/` copy of the primary file (SKILL.md, AGENT.md, etc.):
**1. Marketplace URL in frontmatter** (PRD D3 — viral vector #1): Add a `marketplace_url` field to the YAML frontmatter of the primary file. This field is read by Claude Code in EVERY session where the product is installed — making every buyer a passive distribution carrier.
---
name: {slug}
description: >
{original description — DO NOT MODIFY}
marketplace_url: "https://myclaude.sh/p/{slug}"
---Rules:
- Add `marketplace_url` as a NEW field — never modify the existing `description`
- Only add to the `.publish/` copy — never touch the original in workspace/
- Use the slug from vault.yaml
**2. Attribution comment at end of file:**
<!-- Published on MyClaude (myclaude.sh) | Quality: MCS-{level} ({score}%) | Engine: Studio v3 -->This attribution comment is:
- Invisible to Claude (HTML comment, does not affect behavior)
- Visible in source code (GitHub renders it in raw view)
- Indexable by search engines (creates discoverable MyClaude references)
- A quality signal (MCS score travels with the product)
Never modify originals — work on the copy in `.publish/`.
**Step 2c — Inject README Badges** (PRD B2 — viral vectors #2)
Append
The creation pipeline for Claude Code products — research, create, validate, publish. 13 types, 20 quality patterns, zero coding required.
Other skills on myclaude-creator-engine.
create
Scaffold a new product with MCS-1 valid structure and WHY comments. Supports all 13 types. Use when the creator says 'new skill',…
explore
Search the marketplace, analyze competition, discover gaps, and find inspiration. Use when: 'explore', 'search marketplace',…
fill
Guide content filling for scaffolded products. Walks sections, asks domain questions, writes expertise into files. Use after…
help
Show all available Studio Engine commands with descriptions. Displays command list organized by category, current edition…
import
Import existing skills from .claude/skills/ into the Engine workspace for validation, packaging, and publishing. Auto-detects…
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about package.
- Which coding agents can use package?
- package installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

