CCA-F 练习题库· Claude Code Configuration & Workflows
某开发者想要一个 /scaffold skill,用来为新的微服务生成样板代码。该 skill 在产出结果前会运行大量探索性的文件读取和 Bash 命令来了解现有模式,产生数百行中间输出。队友抱怨这会污染他们的主对话上下文。哪个 frontmatter 设置能解决这个问题?
- A在 skill 的 frontmatter 里设 allowed-tools: [],执行期间不跑任何 Read 或 Bash,脚手架内容全部来自 skill 正文里自己写的说明。
- B在该 skill 的 frontmatter 中设置 context: fork,让该 skill 在隔离的 sub-agent 上下文中运行,不影响主会话。
- C把该 skill 文件从 .claude/skills/ 移到 .claude/commands/,让它作为 slash command 运行,其输出不会进入会话。
- D在 frontmatter 中加上 argument-hint: "service-name",这样该 skill 接收到的是干净的输入,不会继承会话上下文。
正确答案:B
解析
- B正确:已对照官方 Claude Code 文档(code.claude.com/docs/en/skills)核实,文档把
context: fork列为真实存在的 SKILL.md frontmatter 字段——它让 skill 在一个隔离的 forked subagent 中运行,该 subagent 无法访问主对话历史,在那个独立上下文中完成探索性的读取/Bash 工作,只把汇总后的结果返回主会话,正好解决题干描述的中间输出污染问题。各干扰项都不对: - A的
allowed-tools并不限制工具可用性(文档说明它只是为一轮预先批准权限,清空它只是取消预批准,而不会隔离上下文——而且屏蔽工具会让一个必须读文件的 skill 直接失效); - C错在文档指出
.claude/commands/*.md与.claude/skills/*/SKILL.md行为一致,所以换位置带不来任何隔离; - D的 argument-hint/arguments 字段只用于提供输入参数,与上下文隔离毫无关系。
延伸阅读
本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。