mspec-cli - 成员规范驱动开发工作流 CLI 工具
Project description
mspec-cli
mspec-cli - 成员规范驱动开发工作流 CLI 工具
通过交互式命令行澄清机制,实现结构化问题发现与澄清,提升需求明确度和开发效率。
特性
- 🚀 一键安装 -
pip install mspec-cli即可使用 - 🔄 交互式澄清 - 一问一答的引导式交互界面
- 💾 断点续传 - 支持随时中断,下次自动恢复
- 📚 结构化问题分类 - 6个需求维度 + 7个设计维度
- 🎨 美观界面 - 使用 Rich 库提供彩色终端输出
文档
📚 完整文档 →
新手入门
完整指南
- 💡 核心概念 - Change、Capability、问题分类学
- 🔧 CLI 命令详解 - init、update、doctor
- 📋 工作流详解 - 探索 → 澄清 → 提案 → 设计 → 实施 → 归档
实战教程
- 🛠️ Todo 应用开发 - 从零开发完整项目
参考手册
其他
快速开始
安装
pip install mspec-cli
初始化项目
# 进入项目目录
cd my-project
# 初始化 mspec 配置
mspec init
检查环境
mspec doctor
更新模板
mspec update
命令说明
mspec init [path]
初始化 mspec 项目配置
选项:
--template, -t <url>- 使用自定义模板仓库--force, -f- 强制覆盖已有配置--dry-run- 模拟运行,不实际创建文件--yes, -y- 跳过确认,使用默认配置
示例:
mspec init # 初始化当前目录
mspec init ./my-project # 初始化指定目录
mspec init --force # 强制覆盖已有配置
mspec init --template https://github.com/your-org/mspec-template
mspec update
更新模板到最新版本
选项:
--check- 仅检查更新,不执行更新
示例:
mspec update # 更新到最新版本
mspec update --check # 仅检查是否有更新
mspec doctor
诊断环境配置
示例:
mspec doctor
工作流
需求输入
│
▼
┌─────────────────────────────────────┐
│ 阶段 1: 需求澄清 (交互式) │
│ - 生成 requirement-issues.md │
│ - 交互式澄清 High/Medium 问题 │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ 阶段 2: 提案创建 │
│ - 创建 proposal.md │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ 阶段 3: 规格定义 │
│ - 创建 specs/*.md │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ 阶段 4: 技术方案 │
│ - 创建 design.md │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ 阶段 5: 设计澄清 (交互式) │
│ - 生成 design-issues.md │
│ - 交互式澄清 High/Medium 问题 │
└─────────────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ 阶段 6: 任务创建 │
│ - 创建 tasks.md │
└─────────────────────────────────────┘
│
▼
实施 (apply)
问题分类学
需求问题 (6个维度)
- 功能完整性 - 功能边界、流程、依赖
- 数据相关 - 数据定义、量级、一致性
- 用户体验 - 用户场景、交互、性能
- 边界与异常 - 边界条件、异常场景、权限
- 集成与依赖 - 外部系统、内部模块、环境
- 优先级与范围 - 必需vs可选、时间、资源
设计问题 (7个维度)
- 架构决策 - 架构方案、服务边界、扩展性
- 技术选型 - 框架、数据库、中间件
- 接口设计 - API契约、数据流、异步处理
- 数据与状态 - 数据模型、状态机、迁移
- 安全与合规 - 认证授权、数据安全、审计
- 性能与可靠性 - 性能瓶颈、缓存、降级熔断
- 部署与运维 - 部署方案、监控告警、配置管理
交互式澄清
=================================================================
📋 问题 [3/8] - 功能点: 用户管理
=================================================================
❓ 问题:用户资料需要包含哪些字段?
💡 说明:
当前需求中"用户资料"范围不明确,需要明确包含哪些
必填字段和选填字段,这将影响数据库设计和前端表单开发。
🔘 备选选项:
A) 基础版:用户名、邮箱、手机号
B) 标准版:用户名、邮箱、手机号、头像、昵称
C) 完整版:用户名、邮箱、手机号、头像、昵称、
部门、职位、入职日期
D) 自定义...
✏️ 你的选择:
=================================================================
操作指令:
A,B,C,D... - 选择对应选项E或最后一个选项 - 选择自定义输入模式q- 退出保存,下次自动恢复s- 跳过当前问题(仅 Low 优先级)
配置
mspec 配置文件位于 openspec/config.yaml,包含:
- 问题分类学引用
- 交互式澄清配置
- 各阶段规则定义
开发
# 克隆仓库
git clone https://github.com/mspec-dev/mspec.git
cd mspec
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Linux/Mac
# 或
venv\Scripts\activate # Windows
# 安装依赖
pip install -e ".[dev]"
# 运行测试
pytest
# 格式化代码
black src/
isort src/
# 类型检查
mypy src/
许可证
贡献
欢迎提交 Issue 和 PR!
相关链接
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mspec_cli-4.0.5.tar.gz
(28.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
mspec_cli-4.0.5-py3-none-any.whl
(31.9 kB
view details)
File details
Details for the file mspec_cli-4.0.5.tar.gz.
File metadata
- Download URL: mspec_cli-4.0.5.tar.gz
- Upload date:
- Size: 28.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ceeb4353a8479fa9c536b544f7adfe4f70d4dc38e4ad1811b953b8f9f5fc30a9
|
|
| MD5 |
03da138d83288797d4cb72bc7857c4eb
|
|
| BLAKE2b-256 |
8180024e61a2420356d200c4d5c9dbc0de117eff45e16a1407d9d95ff8bf1abc
|
File details
Details for the file mspec_cli-4.0.5-py3-none-any.whl.
File metadata
- Download URL: mspec_cli-4.0.5-py3-none-any.whl
- Upload date:
- Size: 31.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb49be59c19208e7da639d77cafd77a7524169ff95bfdec919fa53d353c55987
|
|
| MD5 |
1623827237d622133388d29e6a8c5c91
|
|
| BLAKE2b-256 |
f0b702a32b8fbea7484ed8f10c04204e44480aeecc75b962b8db48a6a3d4ece9
|