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

cdd-workflow

v0.2.9

Published

Commitment-Driven Development CLI tool

Readme

cdd-cli

Commitment-Driven Development (CDD) - 決断を記録しながら開発する

CDDは、決断を最小単位とし、プロジェクトにおける意思決定を残しながら開発を進めていく手法です。 ADR、SDDなどの文脈を引き継ぎつつ、CDDは人間の理解に重点を置き、人間とAIとの役割分担の可能性を探る目的で作られました。

基本的な使い方

CDDでは、cdd.mdというファイルを中心に開発を進めます。 cdd.mdには、決定事項だけでなく、そこに至るまでの文脈(なぜその決断をしたのか、何を却下したのか)を記述します。

ワークフロー:

  1. AIといつものように会話をしながらcdd.mdを完成させる
  2. 決断が固まったら実装を開始
  3. 実装後、cdd.mdに基づいてレビュー

cdd-cliは、このワークフローを支援するCLIツールです。

Installation

npm install -g cdd-cli

Getting Started

1. プロジェクトを初期化

cdd init

これにより、.cdd-manifest.json が作成され、プロジェクトがCDDに対応します。

2. 決断ドキュメントを作成

cdd new AUTH-001 "ユーザー認証の実装方針"

CDD/tasks/01-user-auth.cdd.md が作成されます。

3. AIと対話しながら決断を記録

Claude CodeまたはCodex CLIで /cdd-discuss Skillを使用します。

/cdd-discuss AUTH-001

AIが対話を通じてcdd.mdを完成させます。

4. 実装

決断が [DECIDED] になったら実装を開始します。

/cdd-implement AUTH-001

5. レビュー

実装が完了したら、cdd.mdに基づいてレビューします。

/cdd-review AUTH-001

6. 進捗確認

# ステータス一覧
cdd status

# ツリー表示
cdd tree

# レビュー待ちの実装を表示
cdd status --in-review

cdd.mdの例

---
id: FEATURE-001
title: ユーザー認証の実装方針
decisionStatus: DECIDED
implementationStatus: DONE
metadata:
  assignee: yourname
  created: '2026-01-23'
---

## Goal
ユーザー認証機能を実装し、セキュアなログイン体験を提供する

## Context
- 既存システムはセッションベース認証
- モバイルアプリ対応が必要
- セキュリティ要件: XSS/CSRF対策必須
- パフォーマンス要件: 認証処理は100ms以内

## Selection
JWT(JSON Web Token)ベースの認証を採用

**理由**:
- ステートレスでスケーラブル
- モバイルアプリとの親和性が高い
- リフレッシュトークンで安全性を確保

**実装方針**:
- アクセストークン: 15分有効期限
- リフレッシュトークン: 7日有効期限、HTTP-only Cookie
- トークン検証はミドルウェアで一元管理

**APIシグネチャ**:
```typescript
// POST /api/auth/login
interface LoginRequest {
  email: string
  password: string
}
interface LoginResponse {
  accessToken: string
  user: { id: string; email: string }
}

// POST /api/auth/refresh
interface RefreshResponse {
  accessToken: string
}

テスト戦略:

  • ユニットテスト: トークン生成・検証ロジック
  • 統合テスト: ログイン・リフレッシュフロー
  • セキュリティテスト: 無効トークン、期限切れトークンの拒否

Rejections

却下案1: セッションベース認証の継続

  • モバイルアプリで複雑になる
  • サーバー側の状態管理が必要
  • スケーリング時の課題

却下案2: OAuth 2.0のみ

  • 過剰に複雑
  • 自社システム内での認証には不要
  • 学習コストが高い

このように、cdd.mdには決断の背景、理由、却下した案、APIシグネチャ、テスト戦略などを記述します。
これにより、AIと人間が共通の文脈を持ち、効率的に開発を進めることができます。

## CLI Commands

| コマンド | 説明 |
|---------|------|
| `cdd init` | プロジェクトを初期化(.cdd-manifest.json作成) |
| `cdd new <id> <title>` | 新しい決断ドキュメントを作成 |
| `cdd status` | 全ての決断のステータスを一覧表示 |
| `cdd status --detailed` | 詳細なファイル一覧表示 |
| `cdd status --decision <status>` | Decision Statusでフィルタ |
| `cdd status --implementation <status>` | Implementation Statusでフィルタ |
| `cdd status --doc-unsynced` | DONE かつドキュメント未同期の決断を表示 |
| `cdd status --in-review` | IN_REVIEW の実装を表示 |
| `cdd tree` | 決断の親子関係をツリー表示 |
| `cdd validate` | 全てのcdd.mdをバリデーション |
| `cdd archive` | 完了した決断(DECIDED + DONE)をアーカイブ |

## Skills(AIエージェント用)

| Skill | 説明 |
|---------|------|
| `/cdd-discuss [id]` | 決断の議論・記録 |
| `/cdd-implement <id>` | 決断の実装 |
| `/cdd-review <id>` | 実装のレビュー |
| `/cdd-doc-update` | DONE決断のドキュメント同期 |

これらのSkillsは、`cdd init` 実行時に選択したプラットフォームに自動配置されます。

## 対応プラットフォーム

- **Claude Code** (`.claude/skills/`) - Anthropic
- **Codex CLI** (`.codex/skills/`) - OpenAI

## AIプラットフォームのセットアップ

`cdd init` を実行すると、`CDD/PROMPT.md` ファイルが生成されます。
このファイルには、AIがCDDワークフローを理解するための情報が含まれています。

各AIプラットフォームの設定ファイルに以下を追加してください:

### Claude Code

`.claude/CLAUDE.md` に追加:

```markdown
## CDD Workflow

Read and follow: CDD/PROMPT.md

Codex CLI

AGENTS.md に追加:

## CDD Workflow

Read and follow: CDD/PROMPT.md

これにより、AIがCDDの開発プロセスを理解し、適切にサポートできるようになります。

ドキュメント

詳細なガイドは以下を参照してください:

  • フォーマットと書き方: CDD/GUIDE.md
  • ワークフローと運用ルール: CDD/WORKFLOW.md
  • ファイル配置と粒度: CDD/STRUCTURE.md
  • : CDD/00-example.cdd.md

License

MIT

Links

  • GitHub: https://github.com/yourusername/cdd-cli
  • Issues: https://github.com/yourusername/cdd-cli/issues