JetBrains Context:代码库智能层让 Agent 理解复杂项目
JetBrains 发布代码库智能层(早期访问),帮助编码 Agent 更深入理解复杂代码库结构,显著提升 Agent 质量和效率。这是 AI 编程工具的重要基础设施升级。
完整中文译文
借助 AI 驱动的功能,为众多 JetBrains 产品中的工具注入更强能力。
今天,我们正式推出 JetBrains Context。这是一个全新的代码仓库智能层,可以帮助 coding agent 更高效地工作,并在复杂代码库中产出更高质量的结果。作为 JetBrains AI for Teams and Organizations 推出计划的一部分,JetBrains Context 现已开放抢先体验;只要订阅了 JetBrains AI,即可免费使用。它支持与 Claude Code、Codex CLI 和 Junie CLI 集成,并可在 JetBrains IDE、Air、VS Code 以及其他受支持的编辑器中使用。
JetBrains 始终致力于提升开发者的效率,即使他们面对的是最复杂的代码库。过去,这意味着提供自动补全、代码分析和导航等智能功能。如今,我们将同样的生产力提升延伸到 AI agent:为它们提供所需的代码仓库智能,使其能够高效地编写、验证和审查代码。
“几十年来,我们一直在帮助开发者快速上手复杂的代码库。事实证明,当 AI agent 面对一个陌生项目时,它们也需要许多类似的帮助。”
在企业级代码库中,context 至关重要。它决定了 agent 给出的是平庸结果——需要投入大量精力审查和返工,还是能够真正理解你的代码库、API、依赖关系、实现模式和工程规范,从而实现高效的 agentic coding。
与开发者一样,在小规模的概念验证项目中,agent 并不需要太多手把手的指导;但面对大型代码库时,它们需要额外的 context,也就是那些没有写进文档的组织经验和洞察。正是这些知识,让它们能够高效地开展工作。
Agent 面临的新现实
我们对 context 的投入,回应了开发者日益增长的一项需求:提升 agent 的能力。过去,开发者可能对几乎任何 AI 驱动的输出都感到满意;但如今,“蜜月期”正在结束,事情也变得越来越复杂。开发者承受的期望不断提高,而为了满足新的要求,AI 的应用范围也在持续扩大。对 AI ROI 的追求,正在转化为团队更短的交付周期,以及逐渐出现的 AI 配额限制。这意味着,我们已经不能再无限制地消耗 token,依靠顶级 model 的强大算力暴力解决问题。现实需求正在迅速追上 agent 刚刚获得的“超能力”。
曾经只是略有不便的问题,如今正逐渐演变成瓶颈。大多数问题解决和功能开发任务,都要求 agent 对代码进行广泛探索,以理解当前状态,或为计划中的改动寻找参考。在实践中,这意味着执行搜索、启动探索型 agent,以及读取文件——这些活动往往会消耗大量时间和 token。即使使用当今能力最强的 model,有限的 context 和代码仓库可见性,仍可能导致 agent 找不到正确的代码、无法定位优秀的实现示例,或识别不出值得复用的现有模式。道理很简单:agent 花在探索代码仓库上的时间越少,就越能专注于眼前的任务。而这正是 JetBrains Context 要解决的问题。
JetBrains Context 是什么
JetBrains Context 是面向 Claude Agent、OpenAI Codex 和 JetBrains Junie 等 coding agent 的代码仓库智能层。它会以增量方式为代码仓库构建语义索引,并提供语义检索能力,使 agent 能够直接获取相关的代码仓库知识,而不必反复搜索和读取文件。除了仅依赖关键词搜索和重复探索文件之外,agent 还可以直接提出任何问题,或者查找相关术语和概念。为了实现这一点,我们依赖两个主要组件:一个以增量方式为代码仓库建立索引的 backend,以及一组允许 agent 查询这些数据的语义搜索工具。
我们非常期待推出的一项重要能力是多代码仓库搜索。agent 不再局限于当前代码仓库,而是可以在整个组织的代码库中发现相关代码,包括那些尚未 checkout 到本地的代码仓库。这有助于 agent 验证 API 和依赖关系、理解变更带来的影响,或者在远程项目中找到可复用的代码。最终效果是维持更高的代码质量标准、避免不必要的重复工作,并提高整个代码库在架构上的一致性。
实践是检验真理的唯一标准(或者,我们应该说,测试才是)
我们使用 205 个开源 SWE-bench 任务、175 个生产环境 monorepo 任务,以及 1,953 个代码定位任务,对 JetBrains Context 进行了验证。在这些 benchmark 中,JetBrains Context 最多可将 agent 的交互轮次减少 68%、延迟降低 59%,并将执行成本降低 48%。
要以一致的方式衡量 AI 系统并不容易。现代 coding agent 天生具有概率性,因此,我们围绕成熟的行业 benchmark 和生产级代码仓库设计了评估体系。通过这些评估,我们不断改进这项技术,如今已经可以充满信心地说:对于大型代码库而言,它能够在时间、成本和代码质量方面带来显著改善。
JetBrains Context 抢先体验已包含在你的订阅中!
按照我们落地页上的说明即可开始使用:
使用一个简单的 GET request 安装 CLI。
使用 CLI 命令 jbcontext login 完成身份验证。你现有的凭据可以直接使用。使用时需要 JetBrains AI license,但 JetBrains Context 不会消耗任何配额。
进入项目文件夹,使用 jbcontext setup-agent 命令,为你偏好的 coding agent 配置 JetBrains Context。你也可以在用户作用域中进行全局配置。
JetBrains Context 会通过 agent hook 自动为代码建立预索引,你也可以调用 jbcontext index 命令显式执行索引。你的源代码不会存储在 JetBrains Context 服务器上。
从现在开始,在日常编码过程中,你会发现 agent 已经具备了新的代码仓库智能能力,生产力也将得到显著提升。
试用 JetBrains Context 后,如果你还不确定它是否真的带来了帮助,可以查看我们全新的内置 analytics!只需执行 jbcontext analyze,即可根据你的实时数据查看节省的成本和时间。
我们非常希望听到你的想法。欢迎在下方评论区分享反馈、提出问题,或者告诉我们你的使用体验。你也可以直接在 CLI 中使用 jbcontext send-feedback 命令。
感谢反馈,我们已经收到!
这是一个系列的第 3 篇。在这个系列中,我们会选取公开发布、号称能为 coding agent“节省 token”的 add-on,并对每一个进行相同的配对 A/B benchmark。第 1 篇测试的是 caveman skill(宣称减少 65%,实测减少 8.5%)。第 2 篇测试的是 rtk(宣称减少 60%–90%,实测反而增加 7.6%)。我们运行了 80 组配对任务来测试 pony……
“rtk”能减少 Claude Code 的 token 使用量吗?这是该系列的第 2 篇。在这个系列中,我们会选取公开发布、号称能为 coding agent“节省 token”的 add-on,并对每一个进行相同的配对 A/B benchmark。第 1 篇测试的是 caveman skill(宣称减少 65%,实测减少 8.5%)。简而言之:rtk 宣称可节省 60%–90%,实测……
我们在 SkillsBench 上,对 Claude Code 的 token 压缩 skill Caveman 进行了配对 A/B benchmark:它真的能节省 token 吗?它是否会降低 AI agent 的输出质量?宣称节省 65%,实测节省 8.5%。在真实的 agentic task 中强制启用该 skill 后,输出 token 的节省情况……
我们在 JVM、.NET 和 Python 生态中评估了多款 coding agent,最终 Codex 成为胜出的 agent。