rewelo

io.github.sebs由 GitHub 账号 sebs 发布v0.7.3更新于 Oct 24, 2026

Prioritise a backlog with the relative weight method: score, rank, simulate and plan tickets

已验证STDIO仅桌面效率与工作流数据与分析

概览

AI 生成的概览

让助手用相对权重法对项目待办事项进行评分、排序、打标签并生成报告,数据保存在本地 SQLite 文件中。

可以做什么
Rewelo 通过 stdio 提供待办事项优先级工具。每张工单按收益、惩罚、估算和风险四个维度评分,优先级按(收益+惩罚)/(估算+风险)计算,并在整个待办列表或某个标签子集内归一化。助手可以管理项目、工单、标签、关系和每个项目的权重,查看修订历史与审计日志,生成报告和仪表盘,并导入导出 CSV 与 JSON。同一个命令行程序也可作为 MCP 服务器运行。
适用场景
当你希望助手协助排定产品或团队待办事项的优先级、按投资回报比较工单、用 state 或 feature 等标签归类工作,或从本地待办数据库中生成汇总与健康报告时,适合使用。
运行要求
通过 stdio 在本地运行,可用 npx 从 npm 包启动,或使用 Docker 镜像。需要一个可写的 SQLite 数据库路径,由环境变量 RW_DB_PATH 指定(默认是工作目录下的 relative-weight.db)。使用 Docker 时需挂载卷以持久保存数据库。未声明需要账号或 API 密钥。
安装前请注意
README 说明这是实验性软件,不提供支持,也不适合用于生产环境。助手可以创建、更新和删除项目、工单、标签与关系,导入操作也可能覆盖数据,因此应把 RW_DB_PATH 指向可以承受改动的数据库并做好备份。未挂载卷时,容器删除后数据会丢失。

安装

在 SourceWeft 中

  1. 打开 控制台中的 rewelo,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Rewelo

Warning: This is experimental software. It comes without support and is not intended for production use.

A prioritization tool that uses the relative weight method to rank stories and tickets by different criteria. Built on SQLite (Node's built-in node:sqlite) for embedded, zero-dependency data storage, exposed through a CLI or as a Docker-based MCP server.

How It Works

Each ticket is scored on four dimensions using the agile Fibonacci scale (1, 2, 3, 5, 8, 13, 21):

DimensionMeasures
BenefitValue gained by implementing the story
PenaltyCost of not implementing the story
EstimateResources required for implementation
RiskUncertainty or complexity in implementation

From these, the tool calculates priority at runtime:

Value    = Benefit + PenaltyCost     = Estimate + RiskPriority = Value / Cost

Higher priority means better return on investment. Relative weights normalize scores across the full backlog or within a tagged subset (e.g. a feature). See calculations.md for the full specification.

Tags

Tickets are organized through a flexible tag system using prefix:value pairs. Tags replace fixed fields for state, feature grouping, and any other classification:

  • state:backlog, state:wip, state:done
  • feature:checkout, feature:auth
  • team:platform, priority:critical

Every tag assignment and removal on a ticket is tracked in an audit log, enabling lead time and cycle time calculations from state: tag transitions.

Revision History

The tool maintains full revision history at two levels:

  • Ticket revisions -- snapshots of content (title, description, scores) and tags before each change
  • Tag revisions -- snapshots of tag definitions (prefix, value) before renames or edits

This means you can reconstruct the exact state of any ticket at any point in time.

Data Model

The database schema is defined in db/create.sql and documented as DBML in db/model.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)

Tech Stack

  • SQLite -- embedded database via Node's built-in node:sqlite, no server and no native modules required
  • TypeScript -- CLI application and business logic
  • Commander.js -- command-line interface
  • Docker -- containerized deployment, also usable as an MCP server

CLI Commands

rw project create|list|delete|history|diff                                    Manage projects, view history and changesrw ticket  create|list|update|upsert|delete|history                                    Manage tickets and view revision historyrw tag     create|assign|remove|delete|list|rename|log                                    Manage tags and view audit logrw 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 weightsrw calc    weights|priority         Relative weights and weighted priority calculationsrw export  csv|json                 Export project datarw import  csv|json                 Import project datarw report  summary|group|distribution|health|times|dashboard|event-log                                    Reporting, HTML dashboard and event streamrw serve                            Start MCP server (stdio transport)

Global options: --db <path>, --json, --csv, --quiet (and --no-color, accepted for compatibility: rw never prints colour)

Multi-Project Support

The tool is designed around projects as the top-level boundary. Tags, tickets, and all calculations are scoped to a project, so multiple teams or products can use the same instance independently.

Releasing a New Version

Four GitHub Actions workflows in .github/workflows/ cover building, releasing and publishing:

WorkflowRuns onDoes
ci.ymlpushes and pull requests to mainType check, build, test, and a smoke test of the Docker image
release.ymlpushing a v* tagChecks the tag matches package.json, tests, and creates the GitHub release with the npm tarball, SBOM, OCI image and changelog; pushes the image to ghcr.io/sebs/rewelo
publish.ymlmanual (with a version)Publishes that tagged version to npm via trusted publishing, with provenance, then lists it in the MCP Registry as io.github.sebs/rewelo
pages.ymlpushes to mainBuilds the website from site/ and the docs, and deploys it to GitHub Pages

To release:

  1. Bump the version, which commits it (with server.json, the MCP Registry entry, set to the same version) and creates the matching tag:
bash
npm version patch   # 0.1.0 → 0.1.1 (or minor, major)
  1. Push the commit and the tag; release.yml builds the release:
bash
git push --follow-tags
  1. Publish to npm: run the Publish workflow with the new version (Actions → Publish → Run workflow), or gh workflow run publish.yml -f version=0.1.1. Once npm shows the version, the workflow lists it in the MCP Registry too (mcp-publisher, logged in with the workflow's GitHub OIDC token, so without a secret). Prereleases such as 0.2.0-beta.1 are published under the next dist-tag, and a backport older than the current latest (0.5.2 after 0.6.1) under backport, so npm install rewelo keeps getting the newest stable version.

One-time setup: add sebs/rewelo with workflow publish.yml as a trusted publisher of the rewelo package on npmjs.com, and set Settings → Pages → Source to "GitHub Actions".

To run the released image:

bash
# CLIdocker run --rm -v rw-data:/data ghcr.io/sebs/rewelo:latest project list
# MCP serverdocker run --rm -i -v rw-data:/data ghcr.io/sebs/rewelo:latest serve

Use a named volume (rw-data) or a bind mount to persist the database across container restarts. Without one, the database stays inside the container and is lost when it is removed (with --read-only it can't be written at all); rw warns about this on stderr.

MCP Server

The CLI doubles as an MCP server over stdio, letting AI assistants manage projects, tickets, tags, and calculations directly. See mcp.md for client configuration, available tools, and troubleshooting.

Examples

See examples.md for step-by-step scenarios, each as a copy-pasteable Claude Code prompt (MCP) and as rw commands with their output: CSV import, dependency mapping, custom weights, quick wins, tracking work, scripting, and sharing and backing up a backlog.

来源:Readme.md,提交 260917b

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v0.7.3最新Sep 26, 2026
  2. v0.7.1Sep 25, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分