npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@boringreliability/wdd

v0.4.0

Published

Ward-Driven Development — a control system for AI-assisted software construction

Readme

wdd — Ward-Driven Development

A control system for AI-assisted software construction. WDD enforces a test-first, file-based workflow where every unit of work — a Ward — moves through explicit Red → Gold → Complete states with human approval at each transition.

It is designed for pair-coding with LLMs (Claude, Cursor, Copilot): the filesystem is the contract, the CLI is the referee.

Install

npm install -g @boringreliability/wdd

The binary is wdd:

wdd --help

Or run without global install:

npx @boringreliability/wdd init --name "my-project"

⚠️ Do NOT use npx wdd — there is an unrelated package called wdd on npm (a test package that squatted the name). Always use the scoped form npx @boringreliability/wdd. The binary name wdd only resolves to this package after global install.

Quick start

mkdir my-project && cd my-project
wdd init --name "my-project"
wdd epic create "Core" --slug core
wdd ward create "First feature" --epic core --tests 3
wdd ward status core-001 red
wdd ward status core-001 red_approved
wdd ward status core-001 gold
wdd ward status core-001 gold_approved
wdd complete core-001

State lives in .wdd/. Every transition writes a markdown file you can read, diff, and grep.

Ward IDs are scoped by epic slug. The first Ward in core is core-001, and the first Ward in another epic can also be 001 without conflicting on a parallel branch.

Commands

| Command | Purpose | |---------|---------| | wdd init | Initialize WDD in a project | | wdd ward create <name> | Create a new Ward (test-first spec) | | wdd ward status <id> <state> | Move Ward through state machine | | wdd ward reopen <id> | Reopen a completed Ward as revision | | wdd complete <id> | Step-by-step Ward completion | | wdd epic create <name> | Create a new Epic (group of Wards) | | wdd session | Assemble context bundle for AI consumption | | wdd status | Progress dashboard | | wdd progress | Regenerate PROGRESS.md | | wdd validate | Check structure and invariants | | wdd graph | Print dependency tree of all Wards | | wdd ready | List Wards whose dependencies are complete | | wdd search <query> | Search project memory (CONTEXT, BACKLOG, Wards) | | wdd bootstrap claude\|cursor\|copilot | Install AI adapter skills/rules/prompts | | wdd api | List exports from src/ to prevent reinvention | | wdd upgrade | Migrate older .wdd/ schema to current version | | wdd configure | Detect scan paths/extensions for wdd api | | wdd eval | Validate skill evals |

Run any command with --help for full usage.

AI adapters

After wdd init, install the adapter for your AI of choice:

wdd bootstrap claude    # Adds .claude/skills/wdd/, /ward, /ward-new
wdd bootstrap cursor    # Adds .cursor/rules/wdd.mdc
wdd bootstrap copilot   # Adds .github/copilot-instructions.md + prompts + agent

The adapters teach the AI the Red/Gold workflow, the file conventions, and the manual-smoke-test discipline. Same methodology, three different ways to embed it in the AI:

| Adapter | Activation | Files written | |---------|------------|---------------| | Claude Code | /wdd, /ward, /ward-new skills | .claude/skills/{wdd,ward,ward-new}/SKILL.md + evals | | Cursor | Always-on rule (alwaysApply: true) | .cursor/rules/wdd.mdc | | GitHub Copilot | Auto-loaded instructions + /wdd, /ward, /ward-new prompts + wdd agent | .github/copilot-instructions.md, .github/prompts/*.prompt.md, .github/agents/wdd.agent.md |

Principles

  • File-based — all state in markdown and JSON; no database
  • Zero runtime dependencies — Node.js built-ins only
  • Human-readable protocol, machine-checkable invariantswdd validate
  • Git-native — every state change is a file change
  • Convention over configuration

Requirements

  • Node.js >= 18

Methodology

For the full WDD specification, see WDD-FRAMEWORK-SPEC.md in the repository.

License

MIT — see LICENSE.