Shire 1.1 发布:更强大的交互支持,升级 AI 智能体与 IDE 的整合体验

在经过多个项目上的试用后,我们进入了持续的修修补补,以及功能的增强阶段。终于,我们发布了 Shire 1.1 版本,这个版本带来了更强大的交互支持, 多功能升级 AI 与 IDE 的整合体验。

  • 交互:丰富与大量 IDE 插件的交互,可以支持部分三方插件的 UI 入口

  • 语言:支持新的语言 ProtoBuf,以及对 JavaScript 的支持优化

  • 功能:支持更多的代码度量,以及代码质量的检查等

详细可以见 GitHub 上的 CHANGELOG。

解锁更多交互入口,全面提升自定义灵活性

基于我们在不同项目的探索试验,我们增加了更多的交互入口,以便于借助 IDE 丰富的插件生态,来提升 Shire 的自定义灵活性。

RightPanel 输出展示

在这个版本中,我们增加了新的 InteractionRightPanel,用于提供更好的输出显示。我们在设计 Shire 时,定位的是一个智能体编程语言,因此 在并不想让用户过多的关注到输出。但是在实际的使用中,右侧的输出展示是非常重要的,因此我们增加了这个功能。

尽管,我们还不打算在这个版本中添加聊天的功能,但是我们会考虑在后续的版本中增加这个功能。与 AutoDev 相似,RightPanel 也支持 Copy, Paste, Insert 三种操作(Action)。未来,我们也将提供自定义的操作能力。

更加丰富的 ActionLocation

相似的,在新的版本中,我们添加了四种新的入口(ActionLocation),以便于用户可以在不同的地方添加自定义的 Action。

  • DatabaseMenu:在 IDEA 的 Database 右键菜单列表( Ultimate 版本才支持)中添加的 Action。
  • ConsoleMenu:在 IDEA 的执行结果右键菜单列表(Menu)中添加的 Action。
  • VCSLogMenu:在 IDEA 的 VCS Log 右键菜单列表中添加的 Action。
  • ExtSonarQubeMenu:在 Sonarlint 插件的面板(Panel)中添加的 Action。

未来,我们将进一步对能力进行抽象,让你可以在任意的地方添加自定义的 Action。

外部函数交互

在 issue#146 和 issue#149 中,使用 Python 语言进行交互时,会出现一些问题。在这个版本中,我们优化了 thread 函数的逻辑,使得你现在,可以 直接调用外部的 Python UI 应用,诸如于 issue 中使用的 tk 框架。

你可以在 Shire 中直接唤起这个应用,然后通过这个应用来进行交互。这样,你就可以在 Shire 中,直接调用外部的 Python 应用,来进行交互。

新语言支持:ProtoBuf

考虑到 ProtoBuf 在微服务架构中的重要性,我们在这个版本中增加了对 ProtoBuf 的支持。

ProtoBuf 是一个高效的 IDL(Interface Description Language)工具,它可以用于定义数据结构、服务接口等。通常,我们在微服务架构中会使用 ProtoBuf 来定义服务接口,以及数据结构。

由于 ProtoBuf 的语法比较简单,只需要提供定义 Message 和 Service 两个部分的支持,所以现有的版本支持:

  • Structure 分析:基于 File 和 Class 级别的结构分析

  • 工具上下文:提供 ProtoBuf 版本信息

  • PsiVariable:提供通用的语法支持

尽管,可能还存在一些其它使用 ProtoBuf 的场景,还需要进一步的支持,但是我们会在后续的版本中按需增加。

其它更新

提示词策略影响下的代码度量

考虑到代码的复杂度、行数、变更频率等会影响 Code Review 等策略,我们加入了对代码度量的支持。

  • changeCount:Git 统计当前文件的变更次数

  • complexity:计算当前元素/文件的复杂度

  • lineCount:统计当前元素/文件的行数

语法完善

  • 支持结合登录用户的信息,来生成代码提交信息。

  • 支持 if 语句的语法。

感谢

感谢 @liuk 提供的 PR,修复了一系列的报错,以及语法问题。

其它

从 GitHub 下载最新版本:https://github.com/phodal/shire

相关推荐
zh_xuan4 小时前
Visual Studio 上传工程到github
ide·git·github·visual studio
无限进步_6 小时前
【C++】只出现一次的数字 II:位运算的三种解法深度解析
数据结构·c++·ide·windows·git·算法·leetcode
无限进步_7 小时前
【C++】多重继承中的虚表布局分析:D类对象为何有两个虚表?
开发语言·c++·ide·windows·git·算法·visual studio
徐先生 @_@|||8 小时前
基于Translation插件实现在pycharm本地翻译并阅读英文资料
ide·python·pycharm
银河系的一束光12 小时前
使用 IntelliJ IDEA 开发 Java 程序时 , 会遇到以下中文乱码问题 :
java·ide·intellij-idea
小宋加油啊13 小时前
Mac vscode安装PCL
ide·vscode·macos
xiaotao13113 小时前
阶段零:IDE选择 与 Jupyter Notebook / Lab 使用
ide·人工智能·python·jupyter
꯭爿꯭巎꯭14 小时前
visual studio code (vscode)下载
ide·vscode·编辑器
范什么特西14 小时前
MyEclipse8.5配置
java·ide·myeclipse
Thomas214314 小时前
skill分享 iterm2 jupyter jumpserver
ide·python·jupyter