一键导入
requirement-collect
读取所有源代码,解构为需求文档; 没有执行文件,请按流程执行
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
读取所有源代码,解构为需求文档; 没有执行文件,请按流程执行
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
AI记忆持久化系统。使用memrec存储、检索、管理跨会话记忆。支持项目隔离、混合检索(KNN+BM25)、MMR重排、中文搜索。触发场景:(1)重要决策需记录,(2)关键知识需保存,(3)项目上下文需跨会话保持,(4)用户偏好需记忆,(5)检索历史知识辅助当前任务。
Rust 性能分析技能:通过 cargo flamegraph 生成火焰图(SVG),定位 CPU 热点函数并量化占比。适用于 Rust 项目性能瓶颈定位、热点分析、优化验证。触发场景:(1)分析 Rust 代码性能瓶颈,(2)定位 CPU 热点函数,(3)量化函数调用占比,(4)优化前后对比验证,(5)bench/unittest 性能不达预期时根因分析。
读取所有源代码,解构为设计图、设计文档、数据库设计; 没有执行文件,请按流程执行
项目问题侦测技能:综合分析设计、性能、安全问题,评分并提出重构或重建方案
局部代码修改技能:最小化修改完成功能,确保无蝴蝶效应,支持独立测试验证和全量关联检查
该skill没有执行文件,为操作指引:如何重构
| name | requirement-collect |
| description | 读取所有源代码,解构为需求文档; 没有执行文件,请按流程执行 |
违反以上约束视为执行失败,必须重新执行。
从代码逆向提炼需求,完整收集业务意图。解答为什么建立项目的问题。
使用 todowrite 记录执行进度:
- [ ] 扫描项目结构,列出模块清单
- [ ] 分析模块: {module1}
- [ ] 分析模块: {module2}
- [ ] ...
- [ ] 汇总全局需求文档
- [ ] 完整性检查
生成 docs/requirements/module_inventory.md,模板见 templates/module_inventory.md
| 分析内容 | 必须产出 | 不得省略 |
|---|---|---|
| 业务场景 | 场景列表 + 场景详情 | 否 |
| 功能需求 | 核心功能 + 辅助功能 | 否 |
| 业务规则 | 规则列表 + 规则详情(独立章节) | 否 |
| 数据需求 | 数据实体 + 数据流转 | 否 |
| 非功能需求 | 性能 + 安全 + 可用性 | 否 |
| 约束条件 | 业务约束 + 技术约束 | 否 |
| 代码特征 | 挖掘方式 | 示例 |
|---|---|---|
| 条件判断 | 提取 if/switch 中的业务约束 | if (age >= 18 && status == ACTIVE) → 用户操作权限规则 |
| 计算逻辑 | 提取计算公式和边界条件 | interest = principal * rate * days / 365 → 利息计算规则 |
| 状态转换 | 提取状态流转路径 | PENDING → PAID → SHIPPED → 订单状态转换规则 |
| 数据验证 | 提取输入校验规则 | email.matches(regex) → 邮箱格式验证规则 |
| 异常处理 | 提取业务异常场景 | InsufficientBalanceException → 转账余额验证规则 |
| 常量/配置 | 提取业务参数阈值 | MAX_RETRY = 3 → 重试次数上限规则 |
| 数据库约束 | 提取 CHECK/DEFAULT 约束 | age CHECK (0-150) → 年龄范围规则 |
| 注释/文档 | 提取业务规则线索 | VIP用户20%折扣 → VIP折扣规则 |
每条规则需记录:规则ID、规则名称、规则描述、触发条件/适用场景、代码位置
模板见 templates/business_rules.md
| 维度 | 分析内容 |
|---|---|
| 业务需求 | 业务场景、业务流程、业务规则、业务约束 |
| 功能需求 | 核心功能、辅助功能、边界条件、异常处理 |
| 非功能需求 | 性能要求、安全要求、可用性要求、兼容性要求 |
| 数据需求 | 数据实体、数据关系、数据约束、数据流转 |
| 代码特征 | 需求类型 |
|---|---|
| Controller 层 | API 接口需求 |
| Service 层 | 业务逻辑需求 |
| DAO 层 | 数据访问需求 |
| 配置文件 | 配置需求 |
| 异常处理 | 异常场景需求 |
| 日志记录 | 可观测性需求 |
| 注释/文档 | 业务规则线索 |
| 表结构/字段约束 | 数据实体/业务规则需求 |
| 索引/外键/触发器 | 性能/数据关系/自动化需求 |
| 测试场景/边界测试 | 业务场景/边界条件需求 |
Java(*.java)、Python(*.py)、C++(*.cpp/*.hpp)、ANSI C(*.c/*.h)、
JavaScript(*.js/*.mjs)、TypeScript(*.ts/*.tsx)、Rust(*.rs)、
Go(*.go)、Kotlin(*.kt)、Scala(*.scala)、Shell(*.sh)、Batch(*.bat/*.ps1)
| 来源 | 提取方法 |
|---|---|
*.sql | 直接读取 |
| MyBatis Mapper XML | 从 SQL 标签提取,合并 include 引用 |
| Hibernate/JPA 注解 | 从 @Query/@NamedQuery 提取 |
| Java/Python 字符串 | 正则匹配 SQL 关键字模式 |
(?i)(SELECT|INSERT|UPDATE|DELETE|CREATE|ALTER|DROP|TRUNCATE)\s+
(?i)(SELECT|INSERT|UPDATE|DELETE|CREATE|ALTER|DROP)\s+[\w\s\*,\.\(\)]+(FROM|INTO|TABLE|SET|VALUES|WHERE|JOIN|ORDER|GROUP|HAVING)
docs/requirements/
├── module_inventory.md # 模块清单(必须)
├── global_requirements.md # 全局需求文档
├── {package}/ # 分模块需求文档
│ └── requirements.md
| 模板文件 | 用途 |
|---|---|
templates/module_inventory.md | 模块清单 |
templates/module_requirements.md | 分模块需求文档 |
templates/business_rules.md | 业务规则章节 |
templates/global_requirements.md | 全局需求文档 |
module_inventory.md设计解构请使用技能:code-deconstruct