ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

GSD 命名空间路由与 ideation 捕获命令族:get-shit-done 的 `/gsd-ideate` 二级路由机制深入解析

GSD 命名空间路由与 ideation 捕获命令族:get-shit-done 的 `/gsd-ideate` 二级路由机制深入解析 GSD 命名空间路由与 ideation 捕获命令族get-shit-done 的/gsd-ideate二级路由机制深入解析【免费下载链接】get-shit-doneA light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code by TÂCHES.项目地址: https://gitcode.com/GitHub_Trending/getshi/get-shit-done本篇技术指南围绕 get-shit-doneGSD系统中面向“探索与捕获”的命名空间路由器commands/gsd/ns-ideate.md展开。GSD 是一套构建于 Claude Code 之上的轻量级 meta-prompting 与 spec 驱动开发系统当用户想要“把一个想法往前推进一步”时/gsd-ideate会根据意图把请求分发到 explore、sketch、spike、spec-phase、capture 五条命令之一。读完本文你将理解 GSD v1.40 引入的两级分层路由namespace router → 具体技能的定位与调用契约、各目标命令的适用场景与工作流落点以及仓库如何用测试锁定这一路由契约不被后续重构破坏。/gsd-ideate是什么一个极简的“意图路由”入口在命令文件层面/gsd-ideate是commands/gsd/目录下以ns-前缀命名的一组命名空间namespace技能之一。它的完整 frontmatter 如下来自 ns-ideate.mdname: gsd-ideate description: exploration capture | explore sketch spike spec capture argument-hint: allowed-tools: - Read - Skill requires: [capture, explore, sketch, spike, spec-phase]这组字段本身就是一套被运行时强制执行的系统提示system-prompt契约name: gsd-ideate采用连字符形式hyphen form。按 issue #2858 的要求命名空间技能在文件里虽然叫ns-ideate.md但可调用的名字一律是裸连字符形态gsd-ideate。description使用|分隔的关键词标签keyword tags长度被限制在 60 字符以内。这是依据 Tool Attention 研究得出的结论——关键词密集的标签比散文式描述路由效果更好且 token 成本只有散文描述的约 40%。allowed-tools只声明了Read与Skill说明该技能自身不做具体实现只负责“读意图、用 Skill 工具调起真正的目标技能”。requires声明了它可能路由到的全部子技能capture、explore、sketch、spike、spec-phase。文件正文则是一段简短的路由指令与一张映射表Route to the appropriate exploration / capture skill based on the users intent. Invoke the matched skill directly using the Skill tool.| User wants | Invoke | |-------------------------------------|-----------------| | Explore an idea or opportunity | gsd-explore | | Sketch out a rough design or plan | gsd-sketch | | Time-boxed technical spike | gsd-spike | | Write a spec for a phase | gsd-spec-phase | | Capture a thought (todo/note/backlog/seed) | gsd-capture |在真实的 CLI 调用中这一入口也以斜杠命令形式暴露为/gsd-ideate例如在 docs/USER-GUIDE.md 的命令族速查表中它代表的是 “Exploration captureexplore、sketch、spike、spec、capture”。为什么需要“命名空间路由”两级分层路由与 token 预算/gsd-ideate不是孤立设计它与gsd-workflow、gsd-project、gsd-quality、gsd-context、gsd-manage一起构成了6 个命名空间 meta-skills。这一架构由 v1.40 引入对应 issue #2792其动机在 docs/ARCHITECTURE.md 中有明确交代为了让急切的技能清单eager skill-listingtoken 成本保持低位v1.40 引入了六个命名空间 meta-skills置于具体子技能之上。模型看到的是 6 个命名空间路由器约 120 token而不是扁平排列的 86 条技能清单约 2150 token模型先选中一个命名空间再通过命名空间路由器内嵌的路由表分发到具体子技能。也就是说两级分层路由的核心收益是把“每次对话都要把 86 条技能塞进上下文”的 ~2150 token 成本压缩到“只需看到 6 个路由描述”的 ~120 token。所有具体命令仍然可以被直接调用namespace skills 是 addtive/叠加式的命名空间只是提供一个更省 token 的浏览与选择面。/gsd-ideate所属的“能力面”还被归入research_ideate技能簇。在 get-shit-done/bin/lib/clusters.cjs 中research_ideate: Object.freeze([ sketch, spike, forensics, explore, graphify, ns-ideate, ]),该簇与ns_meta簇一样被/gsd:surface用来在不重装的前提下整体启用/停用一组技能ns-ideate同时出现在research_ideate与ns_meta两个簇中说明“同簇成员可以重叠”是设计允许的该约定在测试surface-clusters.test.cjs中统一校验。逐条拆解路由目标五种“探索 / 捕获”语义gsd-explore先想清楚再动手规划当用户想“探索一个想法或机会”/gsd-ideate会把控制权交给 commands/gsd/explore.md。它的 description 点明本质苏格拉底式 ideation 与想法路由——通过追问把开发者引导着把一个想法想透再决定是否孵化研究最终把输出路由到 GSD 各类工件notes、todos、seeds、research questions、requirements甚至新 phase。它支持可选话题参数例如/gsd:explore authentication strategy端到端执行逻辑在get-shit-done/workflows/explore.md。值得注意allowed-tools中有AskUserQuestion说明 explore 采用交互式追问而不是一次性把想法固化。gsd-sketch用一次性 HTML 原型探索设计方向当用户想“勾画粗略的设计/方案”时路由到 commands/gsd/sketch.md。sketch 的机制是先做可丢弃throwawayHTML mockup 再决定是否进入实现每次产出 2–3 个变体供比较产物落在.planning/sketches/。它声明了两个模式Idea mode默认给出一段设计想法开始勾画Frontier mode无参数或frontier分析已有 sketch 景观提出“一致性 / 前沿”的下一批 sketch。它提供--quick跳过情绪/方向摄入方向已明确时用与--wrap-up把 sketch 设计发现固化为项目级 skill走get-shit-done/workflows/sketch-wrap-up.md。注意requires: [spike]——sketch 会先加载 spike 结论让 mockup 建立在真实数据结构与已验证的交互模式之上。相关参考包括 get-shit-done/references/ 目录下的ui-brand.md、sketch-theme-system.md、sketch-interactivity.md、sketch-tooling.md、sketch-variant-patterns.md。gsd-spike限时技术验证产出可验证知识当用户想做“时间盒限定的技术 spike验证性实验”时路由到 commands/gsd/spike.md。spike 通过“体验式探索”experiential exploration构建聚焦实验去感受未来应用的各个零件、验证可行性为真实构建产出已验证的知识产物落在.planning/spikes/。与 sketch 对称spike 也有 Idea mode 与 Frontier mode并提供--quick、--text用纯文本编号列表替代 AskUserQuestion用于非 Claude 运行时、--wrap-up走get-shit-done/workflows/spike-wrap-up.md。执行入口在get-shit-done/workflows/spike.md。gsd-spec-phase为一个 phase 产出 SPEC.md当用户想“为一个 phase 编写 spec”时路由到 commands/gsd/spec-phase.md。这条命令在 GSD 主循环中处于关键位置spec-phase → discuss-phase → plan-phase → execute-phase → verify它通过带定量歧义评分的结构化苏格拉底提问来澄清 phase 需求最终输出{phase_dir}/{padded_phase}-SPEC.md——即在 discuss-phase 处理“怎么做”之前先用可证伪的需求锁死“做什么 / 为什么”。其流程要点完整步骤在get-shit-done/workflows/spec-phase.md加载 phase 上下文PROJECT.md、REQUIREMENTS.md、ROADMAP.md、STATE.md先“侦察代码库”scout the codebase了解当前状态再提问运行苏格拉底访谈循环最多 6 轮轮换视角每轮后对4 个加权维度做歧义评分门禁歧义度 ≤ 0.20 且各维度均达到最低分→ 才写 SPEC.md原子提交 SPEC.md下次运行/gsd:discuss-phase时会被自动读取。可用 flag--auto跳过交互模型取推荐默认值直接写 SPEC.md、--text用纯文本编号列表替代 TUI 菜单/rc远程会话必需。门禁口径被 commands/gsd/spec-phase.md 的success_criteria显式列出先侦察、逐轮给 4 维打分、通过 ≤0.20 门禁、写出带边界与验收标准的可证伪需求并原子提交。gsd-capture把“一闪而过的念头”放进正确的位置当用户想“记录一个想法todo/note/backlog/seed”时路由到 commands/gsd/capture.md。capture 由 #2790 合入了原先独立的gsd-note、gsd-add-todo、gsd-add-backlog、gsd-plant-seed统一成一个带多模式参数的命令可借--list列出待办 todo。它的路由规则argument-hint:[--note | --backlog | --seed | --list] [text]Flag目标底层工作流无.planning/todos/下的结构化 todoadd-todo--note带时间戳的笔记文件、清单或提升note--backlogROADMAP.md backlog 段999.x 编号add-backlog--seed.planning/seeds/SEED-NNN-slug.mdplant-seed--list交互式 todo 浏览器 动作路由check-todos对应工作流文件全部存在于仓库中get-shit-done/workflows/add-todo.md、get-shit-done/workflows/note.md、get-shit-done/workflows/add-backlog.md、get-shit-done/workflows/plant-seed.md、get-shit-done/workflows/check-todos.md。capture 的实现要点是“先解析首 token再按路由表加载对应工作流端到端执行并保留目标工作流自身的全部门禁目录结构、去重检测、提交等”。路由契约如何被测试锁定命名空间技能的 frontmatter 与正文并非松散文本——tests/enh-2792-namespace-skills.test.cjs 把它们当成“部署出去的系统提示契约”直接做断言。针对全部 6 个ns-*.md含ns-ideate.md测试覆盖四层契约frontmatter 契约文件存在、name为连字符形态gsd-ideatedescription≤ 60 字符、必须含|分隔符、不得以 “Use / This skill” 式散文开头allowed-tools 契约正文既然通过 Skill tool 调起子技能allowed-tools就必须包含Skill否则运行时无权执行正文路由表契约正文必须包含以| User wants开头的路由表且至少引用一个gsd-*目标跨引用可达性契约回归守卫从每个路由表的右列抽出全部gsd-*token逐条核对它们是否解析到commands/gsd/中仍然存活的命令文件或在FLAG_FORM_PARENTS白名单中由父命令吸收如gsd-code-review --fix吸收原gsd-code-review-fix。第 4 点是关键的防退化设计如测试注释所言原 PR 缺失了这一守卫才导致 #2790 之后的技能合并可能悄悄让路由目标失效。现在ns-ideate表中五个目标gsd-explore、gsd-sketch、gsd-spike、gsd-spec-phase、gsd-capture每一条都必须真实存在否则测试直接失败。使用路径总览与命名约定从使用者视角可以把/gsd-ideate的整条链路归纳为一条“想法 → 工件”的漏斗用户意图 │ ▼ /gsd-ideate命名空间路由约 120 token 常驻 ├─ 探索机会 ──────────────► gsd-explore苏格拉底追问可选孵化研究 ├─ 粗略设计/方案 ──────────► gsd-sketch.planning/sketches/一次性 HTML 原型 ├─ 限时技术验证 ───────────► gsd-spike.planning/spikes/产出已验证知识 ├─ 为 phase 写 spec ──────► gsd-spec-phaseSPEC.md歧义 ≤0.20 门禁 └─ 记录想法 ──────────────► gsd-capture--note/--backlog/--seed/--list关于命名与调用仓库在 docs/ARCHITECTURE.md 汇总了各运行时的形态差异Claude Code / OpenCode / Kilo / Copilot 下为连字符斜杠命令/gsd-ideateGemini CLI 因所有自定义命令都带插件 id 前缀而改写为冒号形态/gsd:ideateCodex 与 Antigravity 则以技能skill方式暴露。无论哪种形态用户请求都会落回本文描述的路由逻辑。若想完整了解 6 个命名空间路由器的全貌与其在能力面预算中的占比可进一步查看 docs/ARCHITECTURE.md、docs/USER-GUIDE.md、docs/FEATURES.md 与命令总览 docs/COMMANDS.md路由入口文件则统一收编在 docs/INVENTORY.md 的/gsd-ideate词条下。小结/gsd-ideate是理解 GSD 命令系统“低成本、可路由、不失控”设计的绝佳切片它以不到 60 字符的关键词描述 一张路由表 两行指令把 explore、sketch、spike、spec-phase、capture 五条语义各异的探索/捕获能力收拢为单一入口运行时只付 6 个命名空间路由的 token 成本却能覆盖 86 条具体技能的语义空间。与此同时仓库用enh-2792-namespace-skills测试把“name 连字符化、description 关键词格式、allowed-tools 含 Skill、路由表存在、路由目标可达”写成了不可回退的契约。对于希望在 Claude Code 中实践“先想清楚再动手”工作流的开发者把/gsd-ideate作为所有“点子类输入”的默认入口是让想法自然进入 GSD 工件体系的低成本起点。【免费下载链接】get-shit-doneA light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code by TÂCHES.项目地址: https://gitcode.com/GitHub_Trending/getshi/get-shit-done创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表