SuperAPI AI 工具集

fmway-init

部署与运维

查看项目

更新于 10-25 18:18

技能介绍

用途:fmway-init 是 fmway 的引导(bootstrap)流程,而非工作项流程,用于首次将 fmway 接入一个仓库,为开发、缺陷与漏洞等后续流程准备前提条件:完整的 CLAUDE.md、PRD.md、docs/ 树、develop/main 分支模型以及 .ways/ 目录。

主要能力:

  1. 只读探测与模式判定:检查是否存在应用代码、依赖或构建清单、git 历史、已有 fmway 结构(引用 fmway 的 CLAUDE.md、.ways/、docs/architecture/)以及 main/develop 分支,从而把仓库归类为全新(greenfield)、存量(brownfield)或已初始化(进入刷新模式),并识别技术栈、分支与缺失部件。资料明确要求不得猜测技术栈或产品意图,含糊之处应记为待确认问题。
  2. 门控确认:Gate 1 让用户确认初始化模式与文档深度(仅结构、架构、架构+功能),并确认分支策略;随后询问初始化工作的隔离方式(当前检出上的新分支,或单独的 git worktree,worktree 仅创建在 .worktrees/ 下)。若当前检出有未提交改动,需先停下询问。
  3. 脚手架搭建:将技能自带的 claude.template.md 复制为 CLAUDE.md 并据探测结果填写;创建根目录 PRD.md(全新仓库记录产品愿景,存量仓库重建现状概览);创建 docs/prds、docs/bugs、docs/security、docs/architecture 目录及带 .gitkeep 的 .ways/;按需维护 .gitignore(忽略 .worktrees/ 与 .ways/cache/,但绝不忽略整个 .ways/)。
  4. 文档:存量仓库在约定的深度下交由 fmway-docs 在当前初始化分支或 worktree 中产出架构文档、领域/功能文档与经校验的 Mermaid 图;全新仓库则在 docs/architecture/overview.md 记录计划架构与关键技术决策(ADR 风格)。
  5. 集成:Gate 2 汇总创建/更新内容与遗留 TODO、待确认问题;之后建议通过 fmway-pr 提交并开 PR(标题 chore: inicializar fmway),自身不直接提交、推送或合并。

使用方式:需在具备 git 的仓库环境中以技能形式调用;资料给出的探测命令包括 git rev-parse --is-inside-work-tree、git log --oneline -1、git branch -a、ls -A;分支相关命令包括 git init && git checkout -b main && git commit --allow-empty -m "chore: commit inicial" && git checkout -b develop && git checkout -b chore/fmway-init、git checkout main && git checkout -b develop && git push -u origin develop、git switch develop && git pull --ff-only && git switch -c chore/fmway-init、git fetch origin develop && mkdir -p .worktrees && git worktree add .worktrees/fmway-init -b chore/fmway-init origin/develop。

适用场景:新仓库首次引入 fmway;既有代码库首次接入并需要重建架构/功能理解;已初始化仓库的补全与刷新。

限制:不创建 .ways/state.json(属工作项流程);不在 develop/main 上直接写;不自行提交、推送或开 PR,均须经用户确认并走 fmway-pr;无 git 的全新仓库需先询问是否创建初始空提交;验证命令须来自项目真实配置,缺失时应询问而非编造。