针对 Claude Code 的一些想法

date
Jul 2, 2025
slug
thoughts-on-claude-code
status
Published
tags
Thoughts
summary
关于 SWE agent 的可能形态。
type
Post
上周实际地用 Claude Code 做了一个小任务,完成得很一般,留下了一大堆 Bug 需要我慢慢修;体验也很一般,写完一个文件啪的一下给我吐出了好几页的代码问我要不要继续,每次 Continue 都像个大款一样五秒钟花我好几千的 token,也不知道这么多 token 都拿来干嘛了。感觉不如 Cursor。
想起以前看过一篇尬吹 Claude Code 的推文,说什么 language intelligence + IDE 只会拖累 LLM 的发挥,全面拥抱 unstructured text + CLI 才是未来。说实话我觉得这话纯属放屁。虽然 Claude Sonnet 4 很好用,但 SWE agent 的性能可能已经走近了只靠 unstructured text 无法突破的瓶颈了。
上面这篇推文就是个很好的例证:LLM 如果能有效利用 language intelligence 来作为 evaluator 和复杂重构操作的 executor,它的性能就能很轻易地更进一步。JetBrains 他们自己估计就是这样的思路,可惜仅靠他们自己根本炼不出可靠的基座模型。但如果 Anthropic 会跟 JetBrains 合作,我丝毫不会感到惊讶。要我说,JetBrains 现在最需要做的事就是学习 Meta 拿钱把人砸晕的精神,从 Anysphere 狠狠挖几个老大过来,不然他们公司可能真要倒闭了。
当前的 CLI-based SWE agent 还有个很大的痛点是 code review:九成以上的人类程序员不可能只靠打印出来的静态代码文本来有效地进行 code review,尤其是当它在一个庞大的代码库中工作的时候。依托现有的 IDE + language intelligence 当然是简单有效的解法,但我觉得可以更进一步:将 language intelligence 和 LLM 融合在一起,创造全新的 codebase readability + autofix 体验。下面是我暂时想到的一些简单想法,目前还想不出什么太 mind-blowing 的东西(因为我完全不了解 language server 和 LSP 的实现),但我有种有搞头的直觉:
  1. code readability:
    1. blame with LLM: 为什么这个人要这么改代码?LLM 可以为以前的代码变更提供解释,甚至画出 mermaid 图表。
    2. auto-doc:
      1. 为每个函数生成一个短小精悍、对人类易读的函数功能简介,并直接显示在函数名上方(而不是直接写在代码文件里)。用户可以点击一个 elaborate 按钮让 AI 详细解释。
      2. 给每个 symbol 生成一个短小精悍、对人类易读的功能简介,鼠标移过 symbol 的时候 popover 显示。用户可以点击一个 elaborate 按钮让 AI 详细解释。
    3. symbol 的调用/被调用关系:代码库中对某个 symbol 的调用是否遵循当前代码库中约定俗成的规范,是否合理?
  1. auto fix:
    1. 用类似 Cursor Tab 的形式自动建议(跨文件)删除没有被使用的代码片段。
    2. 虽然 Cursor Tab 初步支持了 auto-import,但它时常会导入错误的库。language intelligence 无疑会大大提高这一功能的准确性。
    3. 给 symbol 更名不再需要一个单独的文本框 UI,直接在 editor 上改完名字之后,用类似 Cursor Tab 的形式一键跨文件更新这个 symbol 先前的所有 reference。
姑且把这些想法放在这里等待未来被打脸。

© Henry Johnson 2021 - 2025

Licensed under CC BY-SA 4.0.

Any and all opinions listed here are my own and not representative of my employers.