Skip to content

Create a new skill or plugin following Claude Code packaging rules.

doraval claude new is a context-aware wizard that detects your current directory, asks about your intent using the official standalone vs. plugin table, picks a smart default, and scaffolds the minimal correct structure.

The same surface exists as doraval codex new for Codex users.

Terminal window
doraval claude new

The wizard inspects the current directory for:

  • Existing loose SKILL.md files
  • .claude/ directory
  • .claude-plugin/plugin.json

It then asks (or accepts via flags) an intent framed from the official Claude Code packaging table:

  1. Mainly for myself / this project right now → standalone
  2. For myself now, but I might want to share or publish later → plugin (default for most cases)
  3. Planning to share with teammates or distribute more widely → plugin

A smart default is proposed. You confirm or override, then the scaffold runs.

Creates a lightweight local setup:

.claude/
skills/
my-skill/
SKILL.md

Command appears as /my-skill (or the name you chose).

Use for quick personal skills or experiments.

Creates a distributable package:

my-plugin/
.claude-plugin/
plugin.json
marketplace.json
skills/
doraval/
SKILL.md
README.md
  • plugin.json declares the plugin.
  • marketplace.json supports unified / cross-provider listings.
  • The demo skill is self-referential (uses doraval itself) so you can validate immediately.
  • Command names are namespaced: /my-plugin:doraval

Use when you intend to share, version, or publish.

Terminal window
doraval claude new [name] [options]
doraval codex new [name] [options]

name is optional. When omitted (or . or the current dir basename), it scaffolds in place or as a sibling depending on intent and detection.

FlagDescription
--yesSkip interactive prompts (use defaults and flags) (Default: false)
--intentIntent: “self” | “self-later” | “distribute”
Terminal window
doraval claude new --yes --intent self-later my-helper

Output:

doraval claude new — Context-aware scaffolding
Decision: path=plugin, target=/path/to/my-helper
✓ Created plugin at /path/to/my-helper
Command: /my-helper:doraval
Claude: .claude-plugin/plugin.json
Marketplace: marketplace.json (unified / cross-provider listings)
Test: claude --plugin-dir /path/to/my-helper (or use normally for standalone)
Validate: doraval validate /path/to/my-helper

Always run:

Terminal window
doraval validate .
doraval validate ./my-helper # or the target dir

See the validate command for details.

  • Edit the generated SKILL.md (add your real content, triggers, guardrails).
  • For plugins: update plugin.json description, author, version, keywords.
  • Test in your agent.
  • Run doraval validate before sharing.
  • Later convert a standalone skill to a plugin if needed (future claude plugin convert).

The wizard leaves existing files untouched unless you confirm migration of a loose SKILL.md.