Skip to content
cccskills
FreePublished on GitHub

oc-create-skill

Guides through creating a new OpenCode-compatible skill with interactive interview, best-practice enforcement, and validation. Use when user says "create opencode skill", "new opencode skill", "build skill for opencode", or wants to create an OpenCode SKILL.md file.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md6.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Create OpenCode Skill

You are initiating the OpenCode skill creation workflow. This process guides the user through an interactive interview to gather requirements, generates a properly formatted SKILL.md file, and validates the result.

Critical Rules

AskUserQuestion is MANDATORY

IMPORTANT: You MUST use the AskUserQuestion tool for ALL questions to the user. Never ask questions through regular text output.

  • Every interview question → AskUserQuestion
  • Confirmation questions → AskUserQuestion
  • Clarifying questions → AskUserQuestion

Text output should only be used for summaries, explanations, and presenting information.


Phase 1: Load References

Read the OpenCode platform overview and skill guide:

  1. Read ${CLAUDE_PLUGIN_ROOT}/references/platform-overview.md
  2. Read ${CLAUDE_PLUGIN_ROOT}/references/skill-guide.md

Store the reference content internally for use throughout the workflow.


Phase 2: Interview

Gather requirements through a structured interview using AskUserQuestion.

Round 1: Basics

Ask these questions using AskUserQuestion (max 4 per call):

Question 1 — Skill Name:

  • Header: "Skill Name"
  • Question: "What should this skill be named? Use kebab-case (e.g., code-review, deploy-check)."
  • Options:
    • "I'll type the name" — Let me provide a custom name

Question 2 — Purpose:

  • Header: "Purpose"
  • Question: "What does this skill do? Describe its main function."
  • Options:
    • "Code analysis" — Analyzes code for patterns, issues, or quality
    • "Workflow automation" — Automates a multi-step process
    • "Content generation" — Generates code, docs, or other content

Question 3 — User-Invocable:

  • Header: "Invocable"
  • Question: "Should users be able to invoke this skill directly (via /skill-name)?"
  • Options:
    • "Yes (Recommended)" — Users can invoke it from the command dialog
    • "No" — Helper skill only loaded by other skills
  • multiSelect: false

Round 2: Details

Question 1 — Target Audience:

  • Header: "Audience"
  • Question: "Who is the primary user of this skill?"
  • Options:
    • "Developers" — Software developers working on code
    • "DevOps/SRE" — Operations and reliability engineers
    • "All users" — General-purpose, no specific expertise needed

Question 2 — Variables:

  • Header: "Variables"
  • Question: "Does the skill need user input via $VARIABLE placeholders? (e.g., $FILE_PATH, $TARGET_BRANCH)"
  • Options:
    • "Yes" — I need specific input values from the user
    • "No" — The skill works without user-provided variables
    • "Just $ARGUMENTS" — A single free-text argument is enough
  • multiSelect: false

Question 3 — Complexity:

  • Header: "Complexity"
  • Question: "How complex is the workflow?"
  • Options:
    • "Simple" — Single phase, straightforward instructions
    • "Multi-phase" — 2-4 distinct phases with clear boundaries
    • "Complex" — 5+ phases or spawns subagents via task tool
  • multiSelect: false

Round 3: Content (if multi-phase or complex)

If the user selected multi-phase or complex:

Question 1 — Phases:

  • Header: "Phases"
  • Question: "Describe the main phases of the workflow (what happens in each step)."
  • Options:
    • "I'll describe them" — Let me explain the phases

Question 2 — Tools:

  • Header: "Tools"
  • Question: "Which tools should the skill primarily use?"
  • Options:
    • "Read-only" — read, glob, grep only
    • "Read + write" — read, glob, grep, write, edit
    • "Full access" — All tools including bash
    • "Custom" — I'll specify which tools
  • multiSelect: false

Round 4: Location and Metadata

Question 1 — Location:

  • Header: "Location"
  • Question: "Where should the skill be created?"
  • Options:
    • "Project (.opencode/skills/)" — Available only in this project
    • "Global (~/.config/opencode/skills/)" — Available in all projects
    • "Custom path" — I'll specify the directory
  • multiSelect: false

Question 2 — Additional metadata:

  • Header: "Metadata"
  • Question: "Any additional metadata to include?"
  • Options:
    • "Add license (MIT)" — Include MIT license field
    • "Add compatibility range" — Specify OpenCode version range
    • "Skip metadata" — No additional metadata needed
  • multiSelect: true

Interview Summary

After completing the interview rounds, present a summary of the gathered requirements:

## Skill Summary

- **Name**: {name}
- **Description**: {generated from purpose + details}
- **User-invocable**: {yes/no}
- **Variables**: {list or "none"}
- **Phases**: {count and brief description}
- **Tools**: {tool set}
- **Location**: {path}

Use AskUserQuestion to confirm:

  • Header: "Confirm"
  • Question: "Does this look correct? Ready to generate the skill?"
  • Options:
    • "Yes, generate it" — Proceed with generation
    • "Make changes" — I want to adjust something

If "Make changes", ask what to change and update accordingly.


Phase 3: Generate

Spawn the generator agent to create the skill file:

Task:
  subagent_type: "agent-alchemy-opencode-tools:oc-generator"
  prompt: |
    Generate an OpenCode skill with these specifications:

    Type: skill
    Name: {name}
    Description: {description}
    User-invocable: {true/false}
    Variables: {list of $VARIABLE placeholders}
    Phases: {phase descriptions}
    Tool guidance: {which tools to use/avoid}
    Target path: {target directory}/skills/{name}/SKILL.md

    IMPORTANT: The `name` field is REQUIRED in frontmatter. Set it to "{name}" (must match the directory name).

    Reference guide: ${CLAUDE_PLUGIN_ROOT}/references/skill-guide.md
    Template: ${CLAUDE_PLUGIN_ROOT}/references/templates/skill-template.md

    Interview notes:
    {all gathered requirements}

Phase 4: Validate

Spawn the validator agent to check the generated file:

Task:
  subagent_type: "agent-alchemy-opencode-tools:oc-validator"
  prompt: |
    Validate the following OpenCode artifact:

    Type: skill
    Path: {path to generated file}
    Reference guide: ${CLAUDE_PLUGIN_ROOT}/references/skill-guide.md

If validation fails with errors, fix the issues and re-validate.


Phase 5: Present

Present the generated skill to the user:

  1. Read the generated file
  2. Show the file contents with syntax highlighting
  3. Explain key design decisions:
    • Why certain frontmatter fields were included/excluded
    • How phases were structured
    • How $VARIABLE placeholders work
  4. Show the validation results (pass/warnings)
  5. Explain how to invoke the skill: /{name} in the OpenCode TUI

CRITICAL: Complete ALL 5 phases before finishing.

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

Analyze test coverage and identify gaps with actionable recommendations

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

Analyze an existing spec for inconsistencies, missing information, ambiguities, and structure issues. Use when user says "analyze spec", "review spec", "spec quality check", "validate requirements", "audit spec", or "check spec quality".

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

Provides architectural pattern knowledge for designing feature implementations including MVC, event-driven, microservices, and CQRS patterns. Use when designing system architecture or choosing implementation patterns.

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

Executes diagnostic investigation tasks to test debugging hypotheses. Runs tests, traces execution, checks git history, and reports evidence. (converted from agent)

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

Systematic, hypothesis-driven debugging workflow with triage-based track routing. Use when asked to "fix this bug", "debug this", "why is this failing", "this is broken", "investigate this error", "track down this issue", or any debugging situation. Supports --deep flag to force full investigation.

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

Systematic, hypothesis-driven debugging workflow with triage-based track routing. Use for debugging, fixing bugs, and investigating errors.

The English summary is being prepared. Showing the original description.

sequenzia/agent-alchemy45Updated Jun 1, 2026

See all skills by sequenzia

Report a problem with this skill