您现在的位置是:首页 > 文章详情

国内首个 MCP Client!OpenSumi 3.8 版本发布!

日期:2025-03-25点击:21

OpenSumi 是一个开源的、高性能和高度可定制的 IDE 研发框架,它为开发者提供了一套工具和组件,用以构建双端(Web 和 Electron)的集成开发环境,着重于降低定制难度,使开发者能够轻松组合功能模块,以满足特定的业务需求。OpenSumi 的定位是让 IDE 定制化研发变得简单丝滑。

重点进展

MCP(Model Context Protocol)

近期,OpenSumi 在 3.8 版本中新增支持 MCP 协议,是国内在 MCP 官网(https://modelcontextprotocol.io/clients)首个实现 MCP 协议的 Client。

MPC 官网截图

OpenSumi 目前通过 MCP 作为 Agent 的基础协议,包含如下能力:

  • 内置 OpenSumi MCP Server,实现 IDE 中基本操作的各种 tools:

    • 文件操作

      • readFile:读取文件内容,支持行范围

      • editFile:改写文件,可对接 fast-apply 模型

      • listDir:列出目录内容

      • createNewFileWithText:创建带有指定内容的新文件

      • findFilesByNameSubstring:按名称搜索文件

      • getFileTextByPath:通过路径获取文件内容

      • replaceOpenEditorFile:替换当前编辑器中的内容

      • replaceOpenEditorFileByDiffPreviewer:使用差异预览替换内容

    • 编辑器

      • getCurrentFilePath:获取当前打开文件的路径

      • getSelectedText:获取当前选中的文本

      • getOpenEditorFileText:获取打开编辑器中的文本

    • 诊断

      • getDiagnosticsByPath:获取特定文件的诊断信息

      • getOpenEditorFileDiagnostics:获取打开编辑器的诊断信息

    • 终端

      • runTerminalCmd:执行命令

  • 支持自定义 tools 接入,包含前端 UI 的扩展

  • 支持三方 MCP Server 接入,支持 command / sse 类型的 MCP Server

  • 支持自动获取 IDE 操作的上下文

  • 支持任意兼容 OpenAI 模型、DeepSeek、claude 3.5 sonnet 等模型接入

架构设计

OpenSumi MCP 架构图

功能演示

Fast Apply 演示

运行终端命令

支持接入三方 MCP Server,如接入 Github MCP Server 添加缺陷

NES (Next Edit Suggestion)

OpenSumi 在 3.8 版本中实现了 vscode.languages.registerInlineEditProvider接口能力,依托于强大的 NES 交互,用户可以基于该 API 实现智能代码及光标预测等功能。

功能演示

多行智能改写

智能代码改写 + 光标预测

 

更新日志

新特性

  • terminal adds drag-and-drop

  • improve terminal local link parser

  • show inline input after cmd+K is triggered

  • support search path on file dialog

  • support property ThemeColor id

  • support typing code edits source

  • support diff & git uri preview of notebook file

  • line-change of code edits adds change parameter

  • add word link provider by

  • support polling watcher by

  • enhance file search service to handle absolute paths and update

  • add styles for dialog content and update file dialog logic

  • support inline input restore

  • improve file delete confirmation message and styling

  • support code edits keybinding

  • support fetching preference file after editor is saved

  • support file dialog renderCustomMsg

  • improve code edits source data

  • inline chat handler api adds selection parameter

  • make terminal draggable

  • support copy relative path from link files

  • improve line change code edits trigger rule

  • refactor: upgrade monaco to 0.54.0 and support

  • vscode.languages.registerInlineEditProvider API

  • terminal search optimization

  • support MCP server and client

  • tabbar supports React.ReactNode for description

  • send data by chunk in websocke

  • support trigger source code edits

  • upgrade monaco core to 0.54.0-patch.2

  • support edit_file tool

  • add search file & content tool

  • support chat sessions management & recover from storage

  • add terminal command execution tool with user approval

  • support maxInputTokens for agent

  • support NES render in code edits

重构

  • refactor: inline chat & input and support config

  • refactor: inline diff data layer & render layer

样式变更

  • video preview style and static server

  • style: improve search panel popover content style

  • style: improve inline input decoration

  • style: improve hover widget style

其他变更

  • fix(ai-native): use path.join for wasm file paths in WasmModuleManager

  • remove all unexpected errors

  • chore: revert incorrect prop name in Modal component

  • debug toolbar is disappeared or session paused after debug session started

  • chore: outout channel append line type

  • Revert "chore: enable local worker file in development mode"

  • debug breakpoint paused and updated current session handling

  • docs: add codefuse ide to getting started

  • chore: update default vscode engine version to 1.96.2

  • retore files by order

  • add method to check if doc is ignored

  • display debug hover view with correct size config

  • interactive input handle api adds selection parameter

  • always dispose debug unexpected widget in the end

  • watcher dispose logic

  • adjust default sizes for top slot and menubar height

  • add default file name handling for save dialog

  • getDefaultPath add model param

  • normalize content type by converting file extension to lowercase

  • chore: update to the latest diff package

  • notebook diff monaco upgrade issue

  • chore(release): release v3.7.1

  • tabbar supports React.ReactNode for description

  • chore: add missing InlineEdit export by

  • chore: improve llm context

  • add default context prompt provider

  • add delay for disposing inline edit adapter to prevent rejection

  • reduce font size in chat components and update MCP tools localization


点击查看项目更新👇
https://github.com/opensumi/core

原文链接:https://www.oschina.net/news/340912/opensumi-3-8-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章