@duowen-ai/duowenspec
v2.1.0
Published
AI-native system for spec-driven development
Maintainers
Readme
[!IMPORTANT] This repository is now an actively maintained DuowenSpec fork with substantial second-phase development and product-level customization. Key upgrades include:
dwspcommand migration, full Chinese-first CLI experience, built-in scaffold delivery, bundled enterprise UI workflow skills, and default project bootstrap guidance.
Our philosophy:
→ fluid not rigid
→ iterative not waterfall
→ easy not complex
→ built for brownfield not just greenfield
→ scalable from personal projects to enterprises[!TIP] New workflow now available! We've rebuilt DuowenSpec with a new artifact-guided workflow.
Run
/dwsp:propose "your idea"to get started. → Learn more here
Teams
Using DuowenSpec in a team? Email here for access to our Slack channel.
See it in action
You: /dwsp:propose add-dark-mode
AI: Created duowenspec/changes/add-dark-mode/
✓ proposal.md — why we're doing this, what's changing
✓ specs/ — requirements and scenarios
✓ design.md — technical approach
✓ tasks.md — implementation checklist
Ready for implementation!
You: /dwsp:apply
AI: Implementing tasks...
✓ 1.1 Add theme context provider
✓ 1.2 Create toggle component
✓ 2.1 Add CSS variables
✓ 2.2 Wire up localStorage
All tasks complete!
You: /dwsp:archive
AI: Archived to duowenspec/changes/archive/2025-01-23-add-dark-mode/
Specs updated. Ready for the next feature.Quick Start
Requires Node.js 20.19.0 or higher.
Install DuowenSpec globally:
npm install -g @duowen-ai/duowenspec@latestThen navigate to your project directory and initialize:
cd your-project
dwsp initNow tell your AI: /dwsp:propose <what-you-want-to-build>
If you want the expanded workflow (/dwsp:new, /dwsp:continue, /dwsp:ff, /dwsp:verify, /dwsp:sync, /dwsp:bulk-archive, /dwsp:onboard), select it with dwsp config profile and apply with dwsp update.
[!NOTE] Not sure if your tool is supported? View the full list – we support 20+ tools and growing.
Also works with pnpm, yarn, bun, and nix. See installation options.
Docs
→ Getting Started: first steps → Workflows: combos and patterns → Commands: slash commands & skills → CLI: terminal reference → Supported Tools: tool integrations & install paths → Concepts: how it all fits → Multi-Language: multi-language support → Customization: make it yours
Why DuowenSpec?
AI coding assistants are powerful but unpredictable when requirements live only in chat history. DuowenSpec adds a lightweight spec layer so you agree on what to build before any code is written.
- Agree before you build — human and AI align on specs before code gets written
- Stay organized — each change gets its own folder with proposal, specs, design, and tasks
- Work fluidly — update any artifact anytime, no rigid phase gates
- Use your tools — works with 20+ AI assistants via slash commands
How we compare
vs. Spec Kit (GitHub) — Thorough but heavyweight. Rigid phase gates, lots of Markdown, Python setup. DuowenSpec is lighter and lets you iterate freely.
vs. Kiro (AWS) — Powerful but you're locked into their IDE and limited to Claude models. DuowenSpec works with the tools you already use.
vs. nothing — AI coding without specs means vague prompts and unpredictable results. DuowenSpec brings predictability without the ceremony.
Updating DuowenSpec
Upgrade the package
npm install -g @duowen-ai/duowenspec@latestRefresh agent instructions
Run this inside each project to regenerate AI guidance and ensure the latest slash commands are active:
dwsp updateUsage Notes
Model selection: DuowenSpec works best with high-reasoning models. We recommend Opus 4.5 and GPT 5.2 for both planning and implementation.
Context hygiene: DuowenSpec benefits from a clean context window. Clear your context before starting implementation and maintain good context hygiene throughout your session.
Contributing
Small fixes — Bug fixes, typo corrections, and minor improvements can be submitted directly as PRs.
Larger changes — For new features, significant refactors, or architectural changes, please submit a DuowenSpec change proposal first so we can align on intent and goals before implementation begins.
When writing proposals, keep the DuowenSpec philosophy in mind: we serve a wide variety of users across different coding agents, models, and use cases. Changes should work well for everyone.
AI-generated code is welcome — as long as it's been tested and verified. PRs containing AI-generated code should mention the coding agent and model used (e.g., "Generated with Claude Code using claude-opus-4-5-20251101").
Development
- Install dependencies:
pnpm install - Build:
pnpm run build - Test:
pnpm test - Develop CLI locally:
pnpm run devorpnpm run dev:cli - Conventional commits (one-line):
type(scope): subject
Other
DuowenSpec collects anonymous usage stats.
We collect only command names and version to understand usage patterns. No arguments, paths, content, or PII. Automatically disabled in CI.
Opt-out: export DUOWENSPEC_TELEMETRY=0 or export DO_NOT_TRACK=1
See MAINTAINERS.md for the list of core maintainers and advisors who help guide the project.
License
MIT
