rewelo について
Reweloは、相対ウェイトでチケットを採点・順位付けする実験的なバックログ優先順位付けツールです。CLIとSQLiteストレージを備え、DockerベースのMCPサーバーとしても動作します。
主な機能
- 014つの観点によるチケット採点
- 02相対ウェイトによる順位付け
- 03柔軟なタグによるチケット整理
- 04改訂とタグ変更の記録
- 05チケット間の関係管理
- 06複数プロジェクトへの対応
活用シーン
- 01プロダクトバックログの優先順位付け
- 02タグで絞ったチケットの比較
- 03チケットとタグの履歴確認
- 04ブロッカーと依存関係の整理
MCP 対応
CLIはstdio経由のMCPサーバーとして動作し、AIアシスタントからプロジェクト、チケット、タグ、計算を管理できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
42掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
Rewelo
Warning: これは実験的なソフトウェアです。サポートは提供されず、本番環境での使用を想定していません。
相対ウェイト方式を使用して、さまざまな基準でストーリーやチケットに順位を付ける優先順位付けツールです。組み込みの依存関係ゼロのデータストレージとして SQLite(Node 組み込みの node:sqlite)を使用し、CLI または Docker ベースの MCP サーバーとして利用できます。
仕組み
各チケットは、アジャイルのフィボナッチ尺度(1、2、3、5、8、13、21)を使用して、4つの次元でスコア化されます。
| 次元 | 測定内容 |
|---|---|
| Benefit | ストーリーを実装することで得られる価値 |
| Penalty | ストーリーを実装しない場合のコスト |
| Estimate | 実装に必要なリソース |
| Risk | 実装における不確実性や複雑さ |
これらをもとに、ツールは実行時に優先度を計算します。
Value = Benefit + Penalty
Cost = Estimate + Risk
Priority = Value / Cost
優先度が高いほど、投資収益率が高いことを意味します。相対ウェイトは、バックログ全体、またはタグで絞り込んだ一部(例:機能)にわたってスコアを正規化します。詳細な仕様については、calculations.md を参照してください。
タグ
チケットは、prefix:value のペアを使用する柔軟なタグシステムで整理されます。タグは、状態、機能のグループ化、その他の分類に使われていた固定フィールドに代わるものです。
state:backlog、state:wip、state:donefeature:checkout、feature:authteam:platform、priority:critical
チケットへのタグの追加と削除はすべて監査ログに記録され、state: タグの遷移からリードタイムとサイクルタイムを計算できます。
改訂履歴
このツールは、次の2つのレベルで完全な改訂履歴を保持します。
- チケットの改訂 -- 変更前の内容(タイトル、説明、スコア)とタグのスナップショット
- タグの改訂 -- 名前変更や編集前のタグ定義(プレフィックス、値)のスナップショット
これにより、任意の時点におけるチケットの正確な状態を再構築できます。
データモデル
データベーススキーマは db/create.sql で定義され、db/model.dbml で DBML として文書化されています。
projects
+-- tickets (B, P, E, R scores)
| +-- ticket_revisions (content + tag snapshots)
+-- tags (prefix:value pairs)
| +-- tag_revisions
+-- ticket_tags (current assignments)
+-- ticket_tag_changes (audit log: added/removed)
+-- ticket_relations (blocks, depends-on, relates-to)
+-- ticket_deletions (deleted tickets, for project diff)
+-- weight_configs (per-project B/P/E/R weights)
技術スタック
- SQLite -- Node 組み込みの
node:sqliteを使用した組み込みデータベースで、サーバーやネイティブモジュールは不要です - TypeScript -- CLI アプリケーションとビジネスロジック
- Commander.js -- コマンドラインインターフェース
- Docker -- コンテナ化されたデプロイメントで、MCP サーバーとしても利用できます
CLI コマンド
rw project create|list|delete|history|diff
Manage projects, view history and changes
rw ticket create|list|update|upsert|delete|history
Manage tickets and view revision history
rw tag create|assign|remove|delete|list|rename|log
Manage tags and view audit log
rw relation create|remove|list|list-all
Ticket relations (blocks, depends-on, relates-to)
rw config weights View/set/reset per-project B/P/E/R weights
rw calc weights|priority Relative weights and weighted priority calculations
rw export csv|json Export project data
rw import csv|json Import project data
rw report summary|group|distribution|health|times|dashboard|event-log
Reporting, HTML dashboard and event stream
rw serve Start MCP server (stdio transport)
グローバルオプション:--db <path>、--json、--csv、--quiet(および互換性のために受け付けられる --no-color。rw は色を出力しません)
複数プロジェクトのサポート
このツールは、最上位の境界としてプロジェクトを中心に設計されています。タグ、チケット、すべての計算はプロジェクトごとに分離されるため、複数のチームや製品が同じインスタンスを独立して使用できます。
新しいバージョンのリリース
.github/workflows/ にある4つの GitHub Actions ワークフローで、ビルド、リリース、公開を行います。
| ワークフロー | 実行タイミング | 内容 |
|---|---|---|
ci.yml | main へのプッシュとプルリクエスト | 型チェック、ビルド、テスト、Docker イメージのスモークテストを実行します |
release.yml | v* タグのプッシュ | タグが package.json と一致することを確認し、テストを実行して、npm tarball、SBOM、OCI イメージ、変更履歴を含む GitHub リリースを作成します。イメージを ghcr.io/sebs/rewelo にプッシュします |
publish.yml | 手動(バージョンを指定) | 信頼された公開を利用して、指定したタグ付きバージョンを provenance とともに npm に公開し、その後 MCP Registry に io.github.sebs/rewelo として登録します |
pages.yml | main へのプッシュ | site/ とドキュメントからウェブサイトをビルドし、GitHub Pages にデプロイします |
リリース手順:
- バージョンを更新します。これにより、(MCP Registry のエントリーである
server.jsonも同じバージョンに設定して)コミットが作成され、一致するタグも作成されます。
npm version patch # 0.1.0 → 0.1.1 (or minor, major)
- コミットとタグをプッシュすると、
release.ymlがリリースをビルドします。
git push --follow-tags
- npm に公開します。新しいバージョンを指定して Publish ワークフローを実行するか(Actions → Publish → Run workflow)、
gh workflow run publish.yml -f version=0.1.1を実行します。npm にバージョンが表示されると、ワークフローは MCP Registry にも登録します(mcp-publisherはワークフローの GitHub OIDC トークンでログインするため、シークレットは不要です)。0.2.0-beta.1などのプレリリースはnextdist-tag で公開され、現在の最新バージョンより古いバックポート(0.6.1 の後の 0.5.2 など)はbackportで公開されます。これにより、npm install reweloでは常に最新の安定版が取得されます。
初回のみ必要な設定:npmjs.com で、sebs/rewelo とワークフロー publish.yml を rewelo パッケージの信頼された公開者として追加し、Settings → Pages → Source を "GitHub Actions" に設定します。
リリース済みのイメージを実行するには:
# CLI
docker run --rm -v rw-data:/data ghcr.io/sebs/rewelo:latest project list
# MCP server
docker run --rm -i -v rw-data:/data ghcr.io/sebs/rewelo:latest serve
データベースをコンテナーの再起動後も保持するには、名前付きボリューム(rw-data)またはバインドマウントを使用します。どちらも指定しない場合、データベースはコンテナー内に保存され、コンテナーを削除すると失われます(--read-only を指定すると書き込み自体ができません)。rw はこの問題を stderr に警告します。
MCP サーバー
CLI は stdio 経由の MCP サーバーとしても動作し、AI アシスタントがプロジェクト、チケット、タグ、計算を直接管理できます。クライアントの設定、利用可能なツール、トラブルシューティングについては、mcp.md を参照してください。
使用例
examples.md では、各シナリオの手順を、コピーして貼り付けられる Claude Code のプロンプト(MCP)と、出力付きの rw コマンドの両方で紹介しています。内容は、CSV のインポート、依存関係のマッピング、重みのカスタマイズ、クイックウィン、作業の追跡、スクリプトの作成、バックログの共有とバックアップです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。