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.
doraval claude newContext detection and flow
Section titled “Context detection and flow”The wizard inspects the current directory for:
- Existing loose
SKILL.mdfiles .claude/directory.claude-plugin/plugin.json
It then asks (or accepts via flags) an intent framed from the official Claude Code packaging table:
- Mainly for myself / this project right now → standalone
- For myself now, but I might want to share or publish later → plugin (default for most cases)
- Planning to share with teammates or distribute more widely → plugin
A smart default is proposed. You confirm or override, then the scaffold runs.
Outcomes
Section titled “Outcomes”Standalone path
Section titled “Standalone path”Creates a lightweight local setup:
.claude/ skills/ my-skill/ SKILL.mdCommand appears as /my-skill (or the name you chose).
Use for quick personal skills or experiments.
Plugin path
Section titled “Plugin path”Creates a distributable package:
my-plugin/ .claude-plugin/ plugin.json marketplace.json skills/ doraval/ SKILL.md README.mdplugin.jsondeclares the plugin.marketplace.jsonsupports 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.
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.
Options
Section titled “Options”| Flag | Description |
|---|---|
--yes | Skip interactive prompts (use defaults and flags) (Default: false) |
--intent | Intent: “self” | “self-later” | “distribute” |
Non-interactive example
Section titled “Non-interactive example”doraval claude new --yes --intent self-later my-helperOutput:
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-helperValidate after scaffolding
Section titled “Validate after scaffolding”Always run:
doraval validate .doraval validate ./my-helper # or the target dirSee the validate command for details.
Next steps after scaffolding
Section titled “Next steps after scaffolding”- Edit the generated
SKILL.md(add your real content, triggers, guardrails). - For plugins: update
plugin.jsondescription, author, version, keywords. - Test in your agent.
- Run
doraval validatebefore 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.