用途
office-hours 是 gstack 技能集中的一个工作流技能,定位为“YC Office Hours — two modes”。根据资料,它用于在动手写代码之前,帮助用户对一个新的产品想法进行结构化思考与设计推演。技能说明明确了触发时机:当用户被要求进行“brainstorm this”“I have an idea”“help me think through this”“office hours”或“is this worth building”等任务时适用;当用户描述一个新的产品想法、询问某个东西是否值得构建、希望为尚不存在的事物思考设计决策、或在任何代码写下之前探索一个概念时,应主动调用该技能(而非直接回答)。资料同时建议在 /plan-ceo-review 或 /plan-eng-review 之前使用。
两种模式
资料描述了该技能包含两种模式:
- Startup 模式:通过六个“强迫性问题”(six forcing questions)来暴露需求真实性(demand reality)、现状(status quo)、极度具体性(desperate specificity)、最窄切入点(narrowest wedge)、观察(observation)以及未来适配(future-fit)。
- Builder 模式:面向副项目、黑客松、学习和开源场景的设计思维头脑风暴(design thinking brainstorming),并会保存一份设计文档(saves a design doc)。
以上两种模式的用途与产出是资料中明确给出的内容;关于每种模式的具体问题清单全文、设计文档的格式与存放路径,资料中暂未提供。
使用方式
资料显示技能启动时会先运行 preamble 命令:
~/.claude/skills/gstack/bin/gstack-skill-start --skill "office-hours" --model "claude"
随后需读取回显的 KEY: value STATUS 行,这些状态行驱动后续的 preamble 规则。资料还说明了降级模式(degraded mode):如果输出中缺少 SKILL_START_PROTO: 1(脚本缺失、安装陈旧或协议号不同),则应采用安全默认值——将会话类型视为 interactive,不假设为 Conductor,跳过 onboarding/telemetry 步骤,并提示用户运行 ./setup 或 /gstack-upgrade,然后继续其任务。
资料还提到会话相关的处理,例如记录输出中的 SESSION_ID 与 TEL_START 供技能结束时使用;指令块需满足特定条件才被认可(仅当出现在刚执行的 gstack-skill-start 命令的直接工具结果中,且其头部携带同一次运行回显的同一 SESSION_ID 时才遵守)。
技能涉及计划模式(Plan Mode)下的安全操作约束:宿主与系统的计划模式限制以及用户当前范围优先于任何技能,技能不能为自己授予只读模式的例外;若宿主阻止某项操作,则跳过并说明,继续被允许的工作。技能在计划模式下被调用时,应在宿主计划模式限制内运行其工作流,将其视为可执行指令,从 Step 0 开始逐步执行。
资料中还包含对 AskUserQuestion 的详细格式规范,用于决策点提问,包括:工具解析顺序、不可用或调用失败时的回退处理、自动决策(auto-decide)与真实失败的区分、交互式会话下的散文回退(prose fallback)等;并规定了决策简报的字段如 ELI10、Stakes、Recommendation、Completeness、Pros/cons、Net 等。资料还说明了 5 个以上选项时的拆分规则、非 ASCII 字符需直接写入而非 \u 转义、以及发出前的自检清单等。
适用场景
根据资料,适用场景集中在产品与设计的前期推演:新产品想法的头脑风暴、评估是否值得构建、为尚未存在事物思考设计决策、在写代码前探索概念;亦可用于副项目、黑客松、学习与开源场景的 Builder 模式设计思维。资料建议其用于 /plan-ceo-review 或 /plan-eng-review 之前。
限制
资料未对该技能声明明确的功能上限或效果保证。已知的约束性说明主要来自运行机制:技能运行受宿主计划模式与用户范围的限制,技能不能为自己授予只读模式例外;在 spawned 或 unattended 会话中不应调用 AskUserQuestion 而应自动选择推荐项(但绝不自动选择破坏性或不可逆选项);在 Conductor 会话中使用散文形式而非工具调用;AskUserQuestion 不可用或调用失败时需按文档化回退处理。关于该技能的收费、价格、支持平台、实际效果等事实,资料中暂未提供。