mcpField
I
init-config

init-config

github.com/fradserAgent 工作流596104 次安装5 周前更新
代码仓库

关于 init-config

init-config 是用于生成 CLAUDE.md 配置的初始化技能,面向需要设置项目开发约定的开发者。它按阶段收集环境、测试方式和技术栈选项,再交由渲染脚本组装文件。

主要功能

  1. 01检测已安装语言与包管理器
  2. 02收集开发者身份信息
  3. 03选择测试方式与记忆规则
  4. 04配置技术栈和包管理器
  5. 05通过渲染脚本生成 CLAUDE.md

适用场景

  1. 01为新开发环境生成 CLAUDE.md
  2. 02按项目技术栈配置开发规则

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/fradser/dotclaude --skill init-config

安装后在 Claude Code 中输入/init-config确认已加载。

详细介绍

初始化

请按顺序运行各阶段,因为后续阶段依赖前面阶段保存的选择。

阶段 1:环境探测

目标:检测已安装的语言、工具和包管理器。

操作:

  1. 检测已安装的语言(Node.js、Python、Rust、Go、Java、Docker 等)。
  2. 检测所选生态系统可用的包管理器。
  3. 保存检测结果,供阶段 4 生成选项时使用。

阶段 2:开发者资料

目标:检测或收集开发者身份信息,以便进行个性化设置。

操作:

  1. 运行 git config user.name 和 git config user.email 来检测开发者信息。
  2. 如果检测到了两项信息,则将其保存为 developer_name 和 developer_email,供渲染器参数使用,然后进入阶段 3。
  3. 如果缺少任意一项,则直接通过对话询问用户:
    • 如果缺少姓名:"I couldn't detect your name from git config. What name would you like to use? (or reply 'skip' to omit)"
    • 如果缺少邮箱:"I couldn't detect your email from git config. What email would you like to use? (or reply 'skip' to omit)"
  4. 将用户的回复(如果跳过,则为空值)保存为 developer_name 和 developer_email,供渲染器参数使用。

阶段 3:测试方法

目标:选择测试方式。

操作: 使用标题 Testing Methodology 进行提问:

  • BDD first, then TDD (Recommended) → 以 BDD 驱动的 TDD,采用 Red-Green-Refactor
  • BDD only → 使用 Gherkin 场景,不进行 TDD 循环
  • TDD only → 采用测试驱动开发,不使用 BDD 场景
  • None → 不指定测试方法 将选择保存为 testing_mode(bdd-tdd | bdd | tdd | none),供阶段 7 的渲染器参数使用。

阶段 3.5:记忆管理(可选)

目标:决定是否添加 CLAUDE.md 记忆说明。

操作: 使用标题 Memory 进行提问:

  • Skip (Recommended)
  • Include memory rules 将布尔值 include_memory 保存为渲染器参数。不要手动追加记忆文本。

阶段 4:技术栈与包管理器选择

目标:选择语言和包管理器。

操作:

  1. 使用 AskUserQuestion(multiSelect: true)选择技术栈。
  2. 根据检测到的技术生成选项,并将已检测到的选项标记为推荐项。
  3. 对于有多个包管理器可选的语言,询问用户偏好:
  • Node.js:npm、pnpm(推荐)、yarn、bun。
  • Python:pip、uv(推荐)、poetry。
  • 仅显示机器上已检测到的包管理器。
  1. 将按顺序排列的技术栈选择保存为 language:::package_manager,供渲染器参数使用。

阶段 5:准备渲染器输入

目标:根据用户的选择,准备确定性的渲染器输入。

操作:

  1. 将每个选定的技术栈规范化为有序的渲染器输入格式 language:::package_manager。
  • 保持选择顺序不变。
  1. 对于未明确选择包管理器的语言,使用 language:::(包管理器为空)。
  2. 在可用时保留准确的语言键(Node.js、Python、Rust、Swift、Go、Java);不要创建别名。
  3. 此阶段绝不调用在线搜索。

阶段 6:风格偏好

目标:选择生成的 CLAUDE.md 中的表情符号使用策略。

操作: 使用标题 Style 进行提问:

  • No Emojis (Recommended)
  • Use Emojis 将布尔值 use_emojis 保存为渲染器参数,用于控制输出中的表情符号策略文本。

阶段 7:组装与生成

目标:通过一个渲染脚本生成最终内容。

操作:

  1. 运行 ${CLAUDE_PLUGIN_ROOT}/scripts/render-claude-config.sh,并传入:
  • --target-file $HOME/.claude/CLAUDE.md
  • --testing-mode <bdd-tdd|bdd|tdd|none>(来自阶段 3)
  • --include-memory <true|false>
  • --use-emojis <true|false>
  • 可选的 --developer-name 和 --developer-email
  • 来自阶段 5 的重复 --stack "language:::package_manager" 条目
  1. 让渲染器处理所有组装工作:片段组装、测试内容注入、开发者档案、技术栈部分、可选的记忆部分,以及最终写入。
  2. 不要手动编辑渲染器的输出;如果输出格式不正确,请修正输入或渲染器行为。

阶段 8:写入 CLAUDE.md

目标:报告渲染器的写入和备份结果。

操作:

  1. 根据渲染器输出确认:
  • 已写入目标路径。
  • 如果目标文件已存在,已创建备份路径。
  1. 报告:
  • 文件和备份位置。
  • 开发者信息和测试模式。
  • 所选技术栈及包管理器。
  • 渲染器规则应用摘要:哪些技术栈应用了本地规则行,哪些没有。

最佳实践

  • 保持工作流循序渐进且确定。
  • 技术栈指导优先采用本地参考,而非生成的文本。
  • 保持生成的约束简洁且可执行。
  • 覆盖现有文件前,务必先备份。

评论

支持 Markdown