Skip to main content

Write once, run everywhere

A single source of truth for your development rules, slash commands, templates, and hooks. Compile to any AI editor.

The Problem

If you use Claude Code, Cursor, and Gemini CLI, you maintain the same rules in three different files with three slightly different formats. They always drift apart.

The Solution

npx dev-workflows init                    # create .dwf/ with config
npx dev-workflows add typescript/strict   # install a rule from the registry
npx dev-workflows compile                 # generate CLAUDE.md, .cursor/rules, GEMINI.md
Or bootstrap a complete spec-driven workflow:
npx dev-workflows init --preset spec-driven -y
Define rules once in YAML, compile to each editor’s native format. Install slash commands, spec templates, and editor hooks from the registry.

CLAUDE.md

Claude Code

.cursor/rules

Cursor

GEMINI.md

Gemini CLI

Rules Registry

Start with battle-tested rules instead of writing from scratch. Browse with devw add --list or run devw add for interactive selection.

typescript/strict

No any, explicit returns, union types over enums

javascript/react

Hooks rules, component patterns, naming

javascript/nextjs

App Router, RSC, server actions

css/tailwind

Utility-first, no custom CSS, design tokens

testing/vitest

Test naming, coverage, mocks

security/supabase-rls

RLS enforcement, auth patterns

Assets

Beyond rules, install slash commands, spec templates, and editor hooks that power AI-assisted workflows.

Commands

/spec, /plan, /build, /learn

Templates

Feature spec template

Presets

Bundle rules + assets in one install
Open source · MIT license · 4 dependencies Get Started →