Wink Pings

Claude Code 话太多?这个开关能把回答砍掉一半

Addy Osmani 推荐了一个设置:把 Claude Code 的输出风格切到 Concise。首句给结果,去掉铺垫和总结,代码质量不变。有人试了说滚动条终于不像在读小说。

Claude Code 默认的输出风格话多。一个简单问题,它先复述你的需求,再分步骤讲思路,最后来个总结。滚动条拖半天,代码改动没几行。

Addy Osmani 在 X 上发了一条推文,说可以把输出风格切到 Concise。方式很简单:运行 /config 选 Output style,或者直接在 settings.json 里加一行:

{
  "outputStyle": "Concise"
}

Addy Osmani 推文配图

Concise 模式的行为在官方文档里写得很清楚:第一句话直接说结果或答案,去掉开场白、逐步骤叙述和结尾总结。简单问题一两句话答完。工程实现的质量和默认模式一样。需要细节的时候,你问它,它还是会展开。错误报告、测试失败输出、安全警告这些内容不会压缩,完整保留。

有网友问,Concise 会不会把每次回答前的道歉和小铺垫也砍掉。从文档描述看,开场白正是它要删的东西。另一个网友问得更具体:改文件之前的计划说明会不会变短,还是只有最后的总结变短。这个问题没人直接回答,但根据 Concise 的定义,计划阶段的叙述属于 preamble,应该会被砍。实际效果得自己试。

也有人嫌不够短。Daniel Stefan 在全局 CLAUDE.md 里加了一行:"When reporting information to me, be extremely concise and sacrifice grammar for sake of concision." 他说这比内置的 Concise 还管用。另一个网友 cj 自己写了个叫 Procedural 的风格,要求 Claude 用 ASD-STE100 简化技术英语说话,遇到状态机就画状态图。他还试过 ICAO 无线电用语,结果 Claude 变得太机器人,放弃了。

有个细节值得注意:settings.json 里的值大小写敏感。写 "outputStyle": "Concise" 是对的,写成 "concise" 会落到 Default。/output-style 命令本身不区分大小写,但配置文件里必须精确。另外 /config 保存的是当前项目的设置,要全局生效得改 ~/.claude/settings.json。项目级设置优先级更高,这能解释为什么某个仓库里怎么切都不起作用。

Mister SnowCrash 在回复里把这件事讲清楚了:/config 写入 .claude/settings.local.json,只对当前项目有效。要跨仓库默认生效,得在用户级 settings.json 里设 outputStyle。项目自己的设置会覆盖全局值。

版本方面,Concise 需要 Claude Code v2.1.237 或更高。早期版本切换风格后要 /clear 或开新会话才生效,v2.1.251 之后下一条消息就会用新风格。

有人问 token 用量会不会变少。官方文档的说法是:风格指令本身会增加输入 token,但 prompt 缓存能摊薄这部分成本。Concise 减少的是输出 token。至于能不能省钱,回复里有网友说这只是一个附带效果,核心是让输出更容易读。

还有人在意 diff 的可读性。Chalitha Widusahan 问 Concise 会不会把 diff 也压短。文档没说 diff 会变,Concise 改的是对话里的叙述,不是代码本身。Jess 的用法更直接:bug 变奇怪的时候就把风格切回去。

Mikhail Rogov 的评论点到了要害:Concise 应该做成默认。长输出让实际的代码改动更难审查。这句话有道理。默认风格写出来像教程,而多数时候你只想知道改了什么、为什么改。需要教程的时候再问。

如果你还没试过,花十秒改一下 settings.json。代价是输入 token 多一点,收益是滚动条短一截。

参考来源:

发布时间: 2026-11-07 23:29