Skip to content
cccskills
FreePublished on GitHub

create-plugin

Create a new native Muse plugin package with its manifest and requested capability files, then validate it using the installed muse CLI. Receive a file inventory, validation results, and an installation proposal for later use.

OriginalShow the original description

Create and validate a new native Muse plugin package in the current workspace. Use ONLY when the user explicitly asks to create a Muse plugin or invokes the create-plugin skill. Do NOT use for application/library plugin classes, third-party plugin systems, or ordinary code changes.

See how to install

Good for

  • Package skills as a new Muse plugin
  • Create a Muse plugin with command templates
  • Define hooks or MCP server connections
  • Validate a plugin package before installation

Files included (3)

  • SKILL.md7.1 KB
  • references/capability-examples.json23.2 KB
  • references/native-plugin-contract.md4.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Create Plugin

Create one new native Muse plugin in the current workspace. Use this skill only for Muse native plugin package creation, not for implementing plugin classes or plugin features inside another project. Produce the smallest complete plugin that satisfies the request, validate it with the installed muse CLI, and leave installation to the user.

Boundaries

  • Work only in one new destination inside the current workspace.
  • Never modify, merge into, delete, or replace an existing path.
  • Do not install, enable, trust, execute, or fetch the generated plugin or its dependencies.
  • Do not update an existing plugin. Explain that update behavior needs a separate workflow.
  • Do not publish or write global configuration.
  • Ask before writing when the plugin ID, destination, requested capability, or required command is unclear.
  • Reject unsupported capability families instead of inventing a schema.

The supported capability families are exactly skills, commands, hooks, mcpServers, and reminders. Reject tools, agents, outputStyles, settings, and apps. A custom model tool belongs behind an mcpServers entry, not a direct tools capability.

Optional References

This skill is complete without its references. If read_skill returned a physical SKILL.md path and more detail would help, use read_file to inspect these siblings:

  • references/native-plugin-contract.md
  • references/capability-examples.json

Treat them as read-only guidance. Do not fail merely because a reference was not read.

Clarify First

Before tools, determine:

  1. the portable plugin ID and human display name;
  2. the destination relative to the current workspace;
  3. the requested capability families and IDs;
  4. every required artifact and command;
  5. whether the request would require an unsupported family, dependency fetch, or modification of an existing path.

Ask a focused question for missing facts. Refuse before mutation when the request is outside this skill's boundaries.

Portable IDs And Paths

Plugin and capability IDs must:

  • contain 1 through 80 ASCII bytes;
  • begin with a lowercase ASCII letter or digit;
  • use only lowercase ASCII letters, digits, ., _, and - afterward;
  • not have a case-insensitive basename before the first dot equal to CON, PRN, AUX, NUL, COM1 through COM9, or LPT1 through LPT9;
  • not use a product-reserved plugin ID: loop or muse-core.

Artifact paths must be relative UTF-8 paths beneath the plugin root. Manifest paths use /. Reject absolute paths, .., backslashes in manifest values, symlink escapes, and any path whose canonical parent leaves the current workspace.

Required Manifest Base

Start from this native manifest shape and fill only requested capabilities:

{
  "schemaVersion": 1,
  "name": "<portable-id>",
  "displayName": "<human name>",
  "version": "0.1.0",
  "description": "<plain description>",
  "compat": {
    "source": "native",
    "manifestDir": ".muse-plugin"
  },
  "capabilities": {
    "skills": [],
    "commands": [],
    "hooks": [],
    "mcpServers": [],
    "reminders": []
  }
}

The manifest lives at .muse-plugin/plugin.json. Keep empty capability arrays unless the installed validator accepts their omission with zero diagnostics.

For each requested capability, create every path referenced by the manifest:

  • skills: {id, path, enabledDefault?} and a UTF-8 SKILL.md with valid frontmatter;
  • commands: {id, path, enabledDefault?} and a UTF-8 Markdown template;
  • hooks: {id, event, command, timeoutMs?, statusMessage?} and any relative command source named by its argv;
  • mcpServers: a stdio {id, transport?, command} or HTTP {id, transport:"http", url} entry and any relative command source named by its argv;
  • reminders: {id, path, tools?, blocking?, decision, defaultPriority?, maxPriority?, maxChildSteps?, maxInstallsPerRun?, reasoningEffort?, context?} and a UTF-8 duty file. Use the executable decision object, including its V1 envelope and deliveryRole, from references/capability-examples.json.

Reserve The Destination

No artifact write may occur before all reservation steps succeed:

  1. Resolve the current workspace and requested parent to canonical paths.
  2. Require the parent and proposed destination to remain inside the workspace.
  3. Reject a symlinked destination or a parent whose canonical identity escapes.
  4. Confirm the destination does not exist.
  5. Through the managed shell tool advertised by this session, use one platform-native atomic no-replace directory creation operation. Do not use a check-then-overwrite command.
  6. If creation reports occupied or fails, stop. Never delete or reuse the path.
  7. Canonicalize the new directory and its parent again. Require the same expected identity and workspace containment before the first write_file call.

Use write_file and edit_file for UTF-8 artifacts. Do not use shell redirection to bypass file-tool containment. After reservation, mutate only the new directory.

Validate And Correct

Validate every generated skill directory first. Invoke the installed program with the equivalent structured argv. This is the muse skills validate operation; keep its arguments structured:

["muse", "skills", "validate", "<skill-directory>", "--json"]

Then run the muse plugins validate operation with structured arguments:

["muse", "plugins", "validate", "<plugin-directory>", "--json"]

A validation result is clean only when the process starts, exits zero, stdout is parseable JSON, top-level valid is true, and diagnostics is present and empty. Warnings are not clean. A missing command, malformed JSON, timeout, denial, cancellation, non-zero exit, valid:false, or any diagnostic leaves the draft incomplete.

For each validation layer, make at most three correction rounds after its first failed result. Edit only the new draft and rerun the same layer. The fourth failed result is terminal for that layer. Never continue to whole-plugin validation while a nested skill is invalid.

Report

On success, report:

  • the canonical artifact path;
  • the capability and file inventory;
  • the number and outcome of nested skill validations;
  • the whole-plugin validation outcome;
  • an unexecuted install proposal as structured program and argv values:
{
  "program": "muse",
  "argv": ["plugins", "install", "<canonical-plugin-path>"],
  "executed": false
}

Explicitly state that installation was not run.

On failure or denial after reservation, report the draft path, exact failed operation, remaining diagnostics, and checks not completed. Do not claim the draft is created, valid, complete, or ready to install. Cancellation ends the run without a later report; preserve all pre-existing bytes and let runtime cancellation remain authoritative.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

3d-object

FreeSummary

Create a 3D object with three.js, inspect it from every angle in an interactive viewer, and download it as OBJ + MTL or GLB for use in other 3D applications.

  • Create a 3D object and inspect it from every angle
  • Export a model for further editing in Blender
  • Review an object's silhouette and materials
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

action-items

FreeSummary

Maintain a private task list with deadlines, next steps, waiting parties, and blockers. Update progress and dependencies, merge duplicate items, and archive closed tasks so ongoing commitments stay clear and easy to follow.

  • Record tasks and commitments with deadlines
  • Track pending replies and reasons work cannot proceed
  • Update task dependencies when prerequisites are completed
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

agents

FreeSummary

Coordinate a task from a verifiable goal through completion. Handle work directly or split independent tasks across separate agent sessions, track progress, verify results, and arrange pull request merging when included in the goal.

  • Split independent tasks across agents
  • Check progress across ongoing tasks
  • Resume a previously started project
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

animated-video

FreeSummary

Create animated HTML pages with smooth scene transitions and playback controls. An editable timeline lets users adjust scene lengths and speeds, with fixed landscape or portrait layouts prepared for video export.

  • Create an animated product walkthrough
  • Explain a message through moving text and graphics
  • Build a portrait animation for video export
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

apple_healthkit

FreeSummary

Review synced Apple Health records, including steps, heart rate, sleep, and workouts. Retrieve daily summaries or detailed samples for a chosen period, and check sync status and missing data before interpreting the results.

  • Review daily steps and heart rate over time
  • Check sleep stages, duration, and awakenings
  • Review workout duration, distance, and calories
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

Create and edit Word documents and templates, reorganize text, replace images, and work with tracked changes or comments. Apply proper headings and lists, then render every page to check its appearance before delivery.

  • Create a structured Word document
  • Reorganize content in an existing document
  • Replace images or text in a document
asgeirtj/system_prompts_leaks69.9KUpdated Oct 16, 2026

See all skills by asgeirtj

Report a problem with this skill