Awesome-omni-skill workflow-new-plugin

Guided workflow for creating a new Volon plugin — ideation, requirements, spec, plan, tasks.

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/workflow-new-plugin" ~/.claude/skills/diegosouzapw-awesome-omni-skill-workflow-new-plugin && rm -rf "$T"
manifest: skills/tools/workflow-new-plugin/SKILL.md
source content

Workflow: New Plugin

Drive an agent through the full new-plugin definition lifecycle. Produces a spec artifact and implementation tasks including the plugin scaffold and

plugin.json
. Idempotent: skip any stage whose output artifact already exists. Stage protocols live in
stages/stage-N-*.md
.


Arguments

  • $0
    (required): plugin name — quoted string, e.g.
    "integrations"

Step 1 — Preflight

Run: !

cat volon.yaml 2>/dev/null || cat .volon/volon.yaml 2>/dev/null || echo "NO_CONFIG"

Extract and note:

  • project.name
    → used in all artifact frontmatter
  • workflows.new_plugin.enabled
    → if
    false
    : output
    workflow-new-plugin is disabled in volon.yaml.
    and stop.

If

$0
is absent: output
ERROR: plugin name is required.
and stop.

Invoke

pcc-refresh
(scope=all). Read
plugins/
directory listing to check for name collision. If
plugins/<SLUG>/
already exists: output
ERROR: plugin directory plugins/<SLUG>/ already exists.
and stop.

Run: !

date +%Y-%m-%d
Capture today's date as
TODAY
.

Derive slug: Run: !

echo "$0" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/-/g' | sed 's/-\+/-/g' | sed 's/^-\|-$//g'
Capture result as
SLUG
. Artifact ID =
plugin-<TODAY>-<SLUG>
.

Execute stages in sequence:

  • Stage 2:
    stages/stage-2-ideation.md
  • Stage 3:
    stages/stage-3-requirements.md
  • Stage 4:
    stages/stage-4-spec.md
  • Stage 5:
    stages/stage-5-plan.md
  • Stage 6:
    stages/stage-6-tasks.md

Step 7 — Finalize

Invoke

/bootstrap-update
. Ensure
.volon/bootstrap.md
and a history copy exist before completing. Output
DONE
.


Invariants

  • Never create an artifact or plugin directory that already exists — check first, skip if present.
  • All artifact frontmatter must use the schema from
    docs/03_workflow-contracts.md
    .
  • All shell commands use
    !
    prefix.
  • Output
    DONE
    only after Step 7 completes.