提交智能体收藏0
工具发现

Serena:为编码智能体提供符号级 IDE 能力的 MCP 工具

Serena 是一个通过 MCP 接入各类 AI 客户端的开源工具,为编码智能体提供符号级代码检索、编辑、重构与调试能力,而非依赖行号或简单文本搜索。它支持语言服务器(默认,覆盖 40 多种语言)与付费 JetBrains 插件两种后端,不同后端支持的能力范围不同。

工具定位

Serena 自我定位为「编码智能体的 IDE」,通过模型上下文协议(MCP)为已 有的 AI 客户端补充 IDE 式能力。它本身不调用 LLM,实际工作由客户端中的模型编排工具完成。与基于行号、原始搜索模式的低层做法相比,其工具围绕符号与代码关系结构设计,用于在较大、较复杂的代码库中提升效率与可靠性。

两种后端

  • 语言服务器(LSP):默认后端,通常是开源或可免费使用的实现,覆盖 40 多种编程语言,文中列举包括 Python、Java、TypeScript、Go、Rust、C/C++ 等。
  • Serena JetBrains 插件:付费(提供免费试用),借助 JetBrains IDE 的分析能力,支持这些 IDE 所支持的语言与框架;Rider 与 CLion 不受支持。

能力范围(按后端区分)

  • 检索:查找符号、文件大纲、引用查找、查询外部项目、诊断等两端均支持;在项目依赖中搜索、类型层级仅 JetBrains 插件提供。查找声明在语言服务器后端通常不适用于外部依赖中的声明;查找实现仅部分语言可用,受语言服务器能力限制。
  • 重构:语言服务器后端仅支持符号重命名;JetBrains 插件还支持文件与目录重命名、移动、内联、删除传播。
  • 符号编辑:替换符号体、在符号前后插入、安全删除,两端均支持。
  • 交互式调试:仅 JetBrains 插件提供,可设置断点、检查变量、求值表达式并控制执行流。

其他特性

包含正则搜索、内容替换、目录与文件查找、读取文件、执行 shell 命令等基础工具;在 Claude Code、Codex 等智能体框架内使用时,这些工具通常默认关闭,因为框架自身已提供重叠能力。另有用于跨会话共享知识的记忆系统,可禁用。配置通过 YAML 分层进行,包括全局、CLI 启动、按项目、按执行上下文以及可组合的配置片段。

快速开始

前置条件是安装 uv。安装命令为 uv tool install -p 3.13 serena-agent,随后运行 serena init 初始化,默认使用语言服务器后端;如需 JetBrains 后端可加参数 -b JetBrains。README 明确提醒不要通过 MCP 或插件市场安装,因为其中的安装命令已过时。连接客户端需在客户端配置启动命令,或自行以 HTTP 模式启动服务并提供 URL。使用语言服务器后端时,部分语言可能还需额外安装依赖。

许可

按组件授权:SolidLSP(src/solidlsp)为 MIT,其余 Serena 应用部分为 GPL-3.0-or-later,两者组合分发整体受 GPL 约束;贡献需接受 CLA。

来源与核对说明

  1. oraios/serena ↗https://github.com/oraios/serena

本文经 AI 整理及独立自动校对,未做运行验证;自动校对仍可能遗漏问题,请以原始资料为准。

这篇内容对你有帮助吗?

点赞人数由服务器记录,收藏保存在当前浏览器。

继续阅读

RTK:面向 AI 编程代理的命令输出压缩工具 →

Reasonix:可在终端、桌面与编辑器中运行的本地开源编码智能体 →

Qwen Code:开源终端 AI 编码代理概览 →

Kilo Code:支持 VS Code、JetBrains 与 CLI 的开源 AI 编程智能体 →