用途
validate-space 用于校验一个项目空间(project space)是否具备全部必需的结构、样板文档,并检查其是否与 ideas/ 中的规划文档保持一致。
主要能力
该技能会执行以下校验:
- 必需文件检查:每个空间必须存在 CLAUDE.md、README.md,JS/TS 项目还需 package.json。
- 必需目录结构检查:docs/、docs/specs/、docs/adrs/ 必须存在。
- 必需概览文档检查(位于 docs/):architecture-overview.md、api-overview.md、data-model.md、deployment.md、security.md、testing-overview.md、ui-guide.md。模板位于 shared/templates/docs/。
- CLAUDE.md 章节要求:需包含 Overview(含技术栈描述)、Project Structure、Commands(dev、build、deploy)、Environment Variables(如适用),以及指向 ideas/ 规划文档的链接。
- 一致性检查:版本同步(package.json 版本与文档描述一致)、技术栈准确性(列出的技术确实存在于依赖中)、结构准确性(文档中的目录确实存在)、ideas 链接(引用的 ideas/[project]/ 存在且信息匹配)。
- 与 ideas/ 交叉引用:README.md 中列出的技术栈与 spaces/ 匹配、project-brief.md 中的技术决策与实际实现匹配、Issues 中的当前阶段/状态准确。
使用方式
命令用法:
/validate-space leaf-nextjs-convex # 校验指定空间
/validate-space coordinatr # 另一个项目
/validate-space # 提示输入项目名
执行流程:
- 定位项目:
ls spaces/[project-name]/,未找到则报错。 - 检查必需文件:读取 spaces/[project]/CLAUDE.md、README.md、package.json(如为 JS/TS)。
- 校验 CLAUDE.md 章节:检查 Overview / Stack、Project Structure、Commands、Environment Variables(如存在 .env.example)。
- 检查版本一致性:从 CLAUDE.md 技术栈描述、ideas/[project]/README.md、ideas/[project]/project-brief.md、package.json 依赖中提取版本,标记任何不匹配。
- 验证目录结构:检查 docs/、docs/specs/、docs/adrs/ 是否存在;检查概览文档是否齐全;将 CLAUDE.md 中记录的目录结构与实际结构比对。
- 交叉引用 ideas/:读取 ideas/[project]/README.md 和 project-brief.md,检查技术栈/版本一致性。
校验报告
执行后会输出一份报告,包含状态、必需文件、必需目录、概览文档、CLAUDE.md 章节、版本一致性、ideas 交叉引用、发现的问题以及建议。
修复缺失结构
如果 docs/ 结构缺失,可创建:
mkdir -p spaces/[project]/docs/specs
mkdir -p spaces/[project]/docs/adrs
cp shared/templates/docs/*.md spaces/[project]/docs/
适用场景
- 项目初始脚手架搭建之后
- 开始实现工作之前
- 升级依赖之后
- 每月维护检查
- 加入现有项目时
集成流程:/validate-space → 修复问题 → 再次 /validate-space → /implement
技术栈特定检查
- Next.js 项目:检查 next.config.js 或 next.config.ts;验证 src/app/ 的 App Router 结构;检查 public/ 目录。
- Convex 项目:检查 convex/ 目录;验证 convex/schema.ts 存在;检查 convex/_generated/。
- 通用 JS/TS:如为 TypeScript 验证 tsconfig.json;如文档记录了环境变量则检查 .env.example;验证 .gitignore 存在。
限制
资料未提供该技能的收费、价格、平台支持范围或具体效果等信息。