# Oc Create Command

> >-

- **Type:** Skill
- **Install:** `agentstack add skill-sequenzia-agent-alchemy-oc-create-command`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [sequenzia](https://agentstack.voostack.com/s/sequenzia)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [sequenzia](https://github.com/sequenzia)
- **Source:** https://github.com/sequenzia/agent-alchemy/tree/main/claude/opencode-tools/skills/oc-create-command
- **Website:** https://sequenzia.github.io/agent-alchemy

## Install

```sh
agentstack add skill-sequenzia-agent-alchemy-oc-create-command
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Create OpenCode Command

You are initiating the OpenCode command creation workflow. This process guides the user through an interactive interview to gather requirements, generates a properly formatted command markdown 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.

---

## Phase 1: Load References

Read the OpenCode platform overview and command guide:

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

---

## Phase 2: Interview

Gather requirements through a structured interview.

### Round 1: Basics

**Question 1 — Command Name:**
- Header: "Command Name"
- Question: "What should this command be named? It will be invoked as `/{name}`. Use kebab-case."
- Options:
  - "I'll type the name" — Let me provide a custom name

**Question 2 — Purpose:**
- Header: "Purpose"
- Question: "What does this command do?"
- Options:
  - "Workflow shortcut" — Automates a frequently used multi-step process
  - "Template task" — Structured prompt with variable inputs
  - "Scripted operation" — Executes specific tool sequences
  - "Custom" — I'll describe it

**Question 3 — Description:**
- Header: "Description"
- Question: "Briefly describe what this command does (shown in the command list)."
- Options:
  - "I'll type a description" — Let me write a custom description

### Round 2: Variables & Model

**Question 1 — Variables:**
- Header: "Variables"
- Question: "Does the command need user-provided input via $VARIABLE placeholders?"
- Options:
  - "Yes, I'll list them" — I need specific named variables
  - "Just $ARGUMENTS" — A single free-text argument
  - "No variables" — The command works without user input
- multiSelect: false

If "Yes":

**Question 2 — Variable Names:**
- Header: "Var Names"
- Question: "List the variable names (e.g., FILE_PATH, TARGET_BRANCH, OUTPUT_FORMAT). Each becomes a $VARIABLE prompt."
- Options:
  - "I'll type them" — Let me list the variable names

**Question 3 — Model Override:**
- Header: "Model"
- Question: "Should this command use a specific model? (Commands are the only extension type with per-invocation model override.)"
- Options:
  - "No override (Recommended)" — Use the session's current model
  - "Opus" — Use anthropic/claude-opus-4-6 for complex reasoning
  - "Sonnet" — Use anthropic/claude-sonnet-4-6 for balanced performance
  - "Haiku" — Use anthropic/claude-haiku-4-5 for speed
- multiSelect: false

**Question 4 — Agent Routing:**
- Header: "Agent"
- Question: "Should this command be routed to a specific agent?"
- Options:
  - "No (Recommended)" — Use the current agent context
  - "Yes" — Route to a specific named agent
- multiSelect: false

### Round 3: Location

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

### Interview Summary

Present a summary:

```
## Command Summary

- **Name**: {name} (invoked as /{name})
- **Description**: {description}
- **Variables**: {list of $VARIABLE names or "none"}
- **Model override**: {model or "none"}
- **Agent**: {agent name or "none"}
- **Location**: {path}
```

Use `AskUserQuestion` to confirm:
- Header: "Confirm"
- Question: "Does this look correct? Ready to generate the command?"
- Options:
  - "Yes, generate it"
  - "Make changes"

---

## Phase 3: Generate

Spawn the generator agent:

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

    Type: command
    Name: {name}
    Description: {description}
    Variables: {list of $VARIABLE names}
    Model override: {model or "none"}
    Agent: {agent name or "none"}
    Subtask: {true/false}
    Purpose: {detailed purpose from interview}
    Target path: {target directory}/commands/{name}.md

    NOTE: Commands support `agent` (which agent executes) and `subtask` (force subagent execution) frontmatter fields in addition to `model` and `description`.

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

    Interview notes:
    {all gathered requirements}
```

---

## Phase 4: Validate

Spawn the validator agent:

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

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

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

---

## Phase 5: Present

Present the generated command:

1. Read the generated file
2. Show the file contents
3. Explain key design decisions:
   - $VARIABLE placeholder usage
   - Model override rationale (if applicable)
   - Why command vs skill was the right choice
4. Show validation results
5. Explain how to invoke: `/{name}` in the OpenCode TUI
6. If variables are present, show what the user will be prompted for

**CRITICAL**: Complete ALL 5 phases before finishing.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [sequenzia](https://github.com/sequenzia)
- **Source:** [sequenzia/agent-alchemy](https://github.com/sequenzia/agent-alchemy)
- **License:** MIT
- **Homepage:** https://sequenzia.github.io/agent-alchemy

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-sequenzia-agent-alchemy-oc-create-command
- Seller: https://agentstack.voostack.com/s/sequenzia
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
