Skip to content

feat: 默认 effort 档从 max 降到 xhigh#268

Merged
lishuceo merged 1 commit into
mainfrom
feat/claude-session-f080e6
Jun 28, 2026
Merged

feat: 默认 effort 档从 max 降到 xhigh#268
lishuceo merged 1 commit into
mainfrom
feat/claude-session-f080e6

Conversation

@lishuceo

Copy link
Copy Markdown
Owner

改动

src/config.ts 中默认 effort 档从 max 改为 xhigh

  • xhigh 是 Agent SDK 合法档位(low | medium | high | xhigh | max),介于 highmax 之间,Opus 4.7+ 支持。
  • 不支持该档位时 SDK 会静默降级到 high,无运行时风险。
  • 相比 max 降低单步思考深度,目的是压缩高频小对话的 token 成本。
  • 同步在类型联合中补上 xhigh,仍可通过 CLAUDE_EFFORT 环境变量覆盖。

验证

  • npm run typecheck:改动前后错误数一致(79,均为本工作区缺失类型声明的既有问题),无 config.ts 相关新错误。

🤖 Generated with Claude Code

xhigh 是 SDK 合法档位(low|medium|high|xhigh|max),介于 high 与 max 之间,
Opus 4.7+ 支持,不支持时 SDK 静默降到 high,安全。相比 max 降低单步思考深度,
压缩高频小对话的 token 成本。同步在类型联合中补上 xhigh。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Claude finished @lishuceo's task in 52s —— View job


Code Review

  • Gather context (diff, config, SDK types)
  • Verify type correctness against Agent SDK
  • Verify default propagation & runtime behavior

✅ Approved

干净、最小化的改动,正确性已核实。

核实点:

  1. 类型联合与 SDK 完全对齐@anthropic-ai/claude-agent-sdkEffortLevel = 'low' | 'medium' | 'high' | 'xhigh' | 'max'sdk.d.ts:525)。PR 把 config.ts:91 的类型断言补成同一联合,与 SDK 一致,无新增类型错误。

  2. 运行时透传安全config.claude.effortsrc/claude/executor.ts:1040 直接传给 SDK 的 effort 选项,SDK 该字段类型即 EffortLevel,赋值类型安全。

  3. 静默降级说法准确 — SDK 文档注释(sdk.d.ts:174)确认 effort 在不支持的模型上会 "silent downgrade",因此 PR 描述的"无运行时风险"成立。默认模型 claude-opus-4-8 支持 xhigh

  4. 可覆盖性保留CLAUDE_EFFORT 环境变量覆盖路径未变。

小提示(非阻塞): docs/plans/plan-2-structured-config-hot-reload.md 中仍把 effort 联合记为 'low' | 'medium' | 'high' | 'max'(第 64、122 行)。该文件是历史计划文档,按 CLAUDE.md 文档约定 plan 完成后会蒸馏删除,无需在本 PR 处理;如愿意可顺手对齐。

本 PR 仅改默认值 + 类型注释,无新增逻辑,符合"无新逻辑无需新测试"的常理;现有测试(executor.test.ts 等)的 mock 仍用 effort: 'max',仍属合法档位,不受影响。

@lishuceo lishuceo merged commit 4cf25e7 into main Jun 28, 2026
4 checks passed
@lishuceo lishuceo deleted the feat/claude-session-f080e6 branch June 28, 2026 05:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant