Skip to content

[Feature]: Improve /plugin-dev:start command structure and best practices compliance #144

@sjnims

Description

@sjnims

Problem or Need

The new /plugin-dev:start router command was created to serve as an entry point for plugin development. While functionally sound (pending fix for #143), it has several areas where it doesn't fully follow Claude Code command best practices and the plugin's own command-development skill guidelines.

These improvements will ensure the command matches the quality standards of other plugin-dev commands.

Proposed Solution

1. Add argument-hint to frontmatter

Current: No argument-hint specified
Issue: Command accepts $ARGUMENTS but doesn't document it
Fix: Add argument-hint: [description]

---
description: Start plugin development - choose your path
argument-hint: [description]
allowed-tools: AskUserQuestion, SlashCommand, TodoWrite
model: sonnet
disable-model-invocation: true
---

2. Specify AskUserQuestion header field

Current: No header specified for the question
Issue: Per interactive-commands.md reference, header is required (max 12 chars)
Fix: Add explicit header in the AskUserQuestion instructions

**Header**: "Create"
**Question**: "What would you like to create?"

3. Reorder steps logically

Current order:

  • Step 1: Present Options with AskUserQuestion
  • Step 2: Provide Context Before They Choose ← Says "before" but comes after!
  • Step 3: Route Based on Choice
  • Step 4: Handle Arguments

Proposed order:

  • Step 1: Handle Arguments (analyze $ARGUMENTS first)
  • Step 2: Provide Context (explain options)
  • Step 3: Ask User Question (present choice)
  • Step 4: Route Based on Choice

4. Make AskUserQuestion option structure more explicit

Current: Options written as prose

1. **A plugin** (Recommended for most users)
   - Description: "Create a single plugin..."

Proposed: More explicit tool parameter format

Option 1:
- label: "A plugin (Recommended)"
- description: "Create a single plugin with skills, commands, agents, hooks, or MCP integrations."

Option 2:
- label: "A marketplace"  
- description: "Create a collection to organize and distribute multiple plugins."

5. Add explicit multiSelect: false

Current: Not specified (relies on default)
Issue: Per best practices, mutually exclusive choices should explicitly set multiSelect
Fix: Add multiSelect: false to the AskUserQuestion instructions

Which component would this affect?

Command

Specific Component

/plugin-dev:start (plugins/plugin-dev/commands/start.md)

Alternatives Considered

  • Leave as-is: Works but doesn't match plugin quality standards
  • Separate issues for each improvement: Overkill since all changes are to one file

Additional Context

These improvements were identified during a comprehensive review against:

All changes are confined to plugins/plugin-dev/commands/start.md.

How important is this feature to you?

Medium - Would be nice to have

These are polish improvements that bring the new command in line with the plugin's established patterns and Claude Code best practices.

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions