oc-update-command
Updates an existing OpenCode command to match current platform best practices, fixes deprecated patterns, and validates the result. Use when user says "update opencode command", "fix opencode command", "migrate command to opencode", or wants to modernize an existing OpenCode command file.
What this skill does
# Update OpenCode Command
You are initiating the OpenCode command update workflow. This process locates an existing command, researches current platform best practices, analyzes the command for issues, and applies updates with validation.
## 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: Locate Command
Find the command to update.
If `$ARGUMENTS` is provided:
1. Check if the argument is a file path — read it directly
2. If it's a command name — search for `{name}.md` in known directories
If no arguments:
1. Search for OpenCode commands in the workspace:
- `Glob` for `.opencode/commands/*.md`
- `Glob` for `~/.config/opencode/commands/*.md`
2. Present found commands using `AskUserQuestion`:
- Header: "Select Command"
- Question: "Which command would you like to update?"
- Options: List found commands (up to 4; include "Other" for custom path)
Read the selected command file and store its contents.
---
## Phase 3: Research
Spawn the researcher agent to check latest documentation:
```
Task:
subagent_type: "agent-alchemy-opencode-tools:oc-researcher"
prompt: |
Research the latest OpenCode documentation for command format compatibility.
Artifact type: command
Current artifact content:
---
{contents of the command file}
---
Specific questions:
1. Are there any new command frontmatter fields?
2. Has the $VARIABLE system changed?
3. Are there new command discovery paths?
4. Any changes to the model override behavior?
Reference guide: ${CLAUDE_PLUGIN_ROOT}/references/command-guide.md
```
---
## Phase 4: Analyze
Compare the existing command against current best practices:
### Frontmatter Issues
| Issue | Detection | Fix |
|-------|-----------|-----|
| Wrong model format | Must be `provider/model-id` if present | Convert format |
| Skill-only frontmatter | Fields like `user-invocable`, `name`, `allowed-tools` | Remove |
| Missing `description` | Should have for command listing | Add |
| Unknown `agent` value | If `agent` field present, agent must exist | Verify or remove |
| `subtask` type | Must be boolean if present | Fix type |
### Body Issues
| Issue | Detection | Fix |
|-------|-----------|-----|
| Inconsistent $VARIABLEs | Mixed case or invalid patterns | Standardize to uppercase |
| Claude Code tool names | `AskUserQuestion` instead of `question` | Convert |
| `mcp__` format | Double-underscore MCP naming | Convert to single-underscore |
| Hardcoded paths | System-specific absolute paths | Convert to relative, $VARIABLE, or `@filepath` reference |
| Very long body | Commands should be concise workflow shortcuts | Suggest splitting into a skill |
| Missing shell injection | Could use `` !`command` `` for dynamic context | Suggest where appropriate |
### Structure Issues
| Issue | Detection | Fix |
|-------|-----------|-----|
| No clear steps | Unstructured instructions | Add numbered steps |
| Missing output specification | No description of expected output | Add output section |
| Unused variables | $VARIABLEs declared but never used in body | Remove or use |
---
## Phase 5: Present Findings
Present the analysis:
```
## Update Analysis: {command-name}
### Errors (must fix)
{list}
### Warnings (should fix)
{list}
### Suggestions
{list}
### Research Notes
{findings}
```
Use `AskUserQuestion` for approval:
- Header: "Apply Updates"
- Question: "Would you like to apply these updates?"
- Options:
- "Apply all"
- "Errors and warnings only"
- "Errors only"
- "Cancel"
- multiSelect: false
---
## Phase 6: Apply Updates
Apply changes based on user selection:
1. Use `Edit` to modify the command file
2. Fix frontmatter first, then body content
3. Preserve the command's intent
---
## Phase 7: 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 updated file}
Reference guide: ${CLAUDE_PLUGIN_ROOT}/references/command-guide.md
```
Present validation results and a before/after summary.
**CRITICAL**: Complete ALL 7 phases before finishing.
Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.