Skip to main content

mspec-cli - 成员规范驱动开发工作流 CLI 工具

Project description

mspec-cli

PyPI version Python version License

mspec-cli - 成员规范驱动开发工作流 CLI 工具

通过交互式命令行澄清机制,实现结构化问题发现与澄清,提升需求明确度和开发效率。

特性

  • 🚀 一键安装 - pip install mspec-cli 即可使用
  • 🔄 交互式澄清 - 一问一答的引导式交互界面
  • 💾 断点续传 - 支持随时中断,下次自动恢复
  • 📚 结构化问题分类 - 6个需求维度 + 7个设计维度
  • 🎨 美观界面 - 使用 Rich 库提供彩色终端输出

文档

📚 完整文档 →

新手入门

完整指南

实战教程

参考手册

其他

快速开始

安装

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个维度)

  1. 功能完整性 - 功能边界、流程、依赖
  2. 数据相关 - 数据定义、量级、一致性
  3. 用户体验 - 用户场景、交互、性能
  4. 边界与异常 - 边界条件、异常场景、权限
  5. 集成与依赖 - 外部系统、内部模块、环境
  6. 优先级与范围 - 必需vs可选、时间、资源

设计问题 (7个维度)

  1. 架构决策 - 架构方案、服务边界、扩展性
  2. 技术选型 - 框架、数据库、中间件
  3. 接口设计 - API契约、数据流、异步处理
  4. 数据与状态 - 数据模型、状态机、迁移
  5. 安全与合规 - 认证授权、数据安全、审计
  6. 性能与可靠性 - 性能瓶颈、缓存、降级熔断
  7. 部署与运维 - 部署方案、监控告警、配置管理

交互式澄清

=================================================================
📋 问题 [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/

许可证

MIT

贡献

欢迎提交 Issue 和 PR!

相关链接

Project details


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.11.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mspec_cli-4.0.11-py3-none-any.whl (32.6 kB view details)

Uploaded Python 3

File details

Details for the file mspec_cli-4.0.11.tar.gz.

File metadata

  • Download URL: mspec_cli-4.0.11.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for mspec_cli-4.0.11.tar.gz
Algorithm Hash digest
SHA256 adbefe0e74efd5ee4b9792c68a3db6593d260e88099a1f1ec084a8ad4f446af0
MD5 c61f05f53c123428b241815730fdc826
BLAKE2b-256 3a7da1e8396fbeeee9fb8cefb27189f875585e748b56e636eb7a297c9f85b1fa

See more details on using hashes here.

File details

Details for the file mspec_cli-4.0.11-py3-none-any.whl.

File metadata

  • Download URL: mspec_cli-4.0.11-py3-none-any.whl
  • Upload date:
  • Size: 32.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for mspec_cli-4.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 720b153848f68f045f62a278756db2ad912c82481574aec6918f688056e1ccb7
MD5 2d1996e7bab60e5d1b21b0d759d1f1ee
BLAKE2b-256 c15ecd0535a7f458cfe93c7bd58ad61bcedfa524dc7ed78dfc9f056ec42f2214

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page