特性更新
增加消息搜索功能
现在支持在会话中对聊天信息进行搜索,因为是直接在数据库中搜索,考虑到性能原因会有一个超时时间,即5s内数据库没有返回搜索结果即视为超时。
其他更新
- http请求对对象存储与公共文件增加静态缓存
- 增加环境变量
REQUEST_TIMEOUT
用于自定义rpc请求超时时间,默认10 * 1000, 单位毫秒 - AI助手增加更多提示
- 增加遥测信息收集(可以通过环境变量关闭)
- 修复 iam 插件不适合登录视图中的浅色主题的问题
- 为tianji脚本增加defer标记
现在,可以在electron上点开屏幕分享并选中想要分享的窗口了
支持打开因受到网页版限制而无法打开的网页
例如,如下是一个因为网站策略无法被嵌套显示的网页,受限于网页安全限制不会被嵌入
但是你可以打开网页原生渲染,使用内置的原生浏览器渲染替代嵌入网页
这样你就能突破对方网站的安全限制,自由嵌入任何页面,就像是在使用浏览器一样
如果切换后没有立即生效,可以按下快捷键
cmd + r
重新加载tailchat
为了更好的控制展示内容,在本次更新中新增了面板展示权限,你可以在群组级别或者面板级别的权限控制中控制用户展示方式
你可以通过权限的组合来控制面板的显示与隐藏属性。
需要注意的是,群组级别的权限与面板级别的权限合并方式是合并而不是覆盖,这意味着如果开启了群组的权限,那么不论面板权限是否开启权限该用户都是有相关权限的
在本次更新后默认的群组权限将会丢失,这是因为增加了新的权限而过去的群组是没有授予该权限的,具体的修复方式可以阅读这篇博客了解更多: 群组面板可见性权限问题
在权限注册中增加了panel字段,当这个字段被设定并匹配到某一面板类型时,权限将会在高级权限控制中显示
权限设计基于白名单形式。这意味着他会继承群组的权限。
示例一:
示例二:
Q: 为什么tailchat会采用面板权限与群组权限取并集的形式而不是权限覆盖的形式?
A: 因为相比于很多固定设计的应用来说,Tailchat需要考虑到插件的设计,插件可以注册自定义的权限,而这些权限是不受控的。只有在用户的操作中与实际使用中让用户养成白名单的权限管理习惯,才会让当新的插件加入时不会出现权限失控的情况。另外覆盖的行为是更加不可捉摸的行为,因为他会相互覆盖。
一个例子是,如果我们想要让用户在某个面板没有权限,但是其他的面板有权限,那么最方便的做法是设定群组范围有权限,而面板没有权限。面板的没有权限会覆盖群组的权限设计。但是这里有一个分歧在于我们并不知道用户期望的是默认有权限还是默认没有权限但是目前除某个面板以外都有权限,这两者的差异在于当新的面板被添加时期望是有权限还是没有权限。tailchat想要消除这两种情况的差异对用户带来的心智覆盖和理解成本,因此选择了最保守的方式设计权限系统。