Asset Types
Commands
Slash commands are Markdown files with prompts that AI editors (like Claude Code) can execute via/command-name.
.dwf/assets/commands/ and deployed to .claude/commands/ with frontmatter stripped.
Available commands:
| Command | Description |
|---|---|
command/spec | Generate a feature spec through guided questions |
command/plan | Create an implementation plan from a spec |
command/build | Execute a plan step by step with verification |
command/learn | Capture a lesson learned as a project rule |
Templates
Templates are Markdown files that provide structure for documents like feature specs..dwf/assets/templates/ and deployed to the path specified in their output_path frontmatter field (defaults to docs/specs/).
Available templates:
| Template | Description |
|---|---|
template/feature-spec | Markdown template for feature specifications |
Hooks
Hooks are JSON files that configure editor behavior (e.g., auto-formatting after edits)..dwf/assets/hooks/ and their settings object is deep-merged into .claude/settings.local.json. Arrays are concatenated, objects are recursively merged.
Available hooks:
| Hook | Description |
|---|---|
hook/auto-format | Auto-format files after AI edits (PostToolUse) |
Presets
Presets are YAML manifests that bundle multiple rules and assets into a single install.| Preset | Includes |
|---|---|
preset/spec-driven | workflow/spec-driven rule, 4 commands (spec, plan, build, learn), feature-spec template, auto-format hook |
Asset Lifecycle
- Install:
devw add command/specdownloads the file to.dwf/assets/commands/spec.mdand records it inconfig.yml - Deploy:
devw compilecopies the file (stripping frontmatter) to the output location - Remove:
devw remove command/specdeletes the source file and removes the config entry - Verify:
devw doctorchecks that all registered assets have corresponding files on disk
Config Format
Assets are tracked in.dwf/config.yml:
assets field is optional and backwards-compatible. Configs without it default to an empty array.
