工作

国庆假期是真的在放松,很少工作,最多也就是巡检下客户的服务器,预研下之后要用到的自动测试框架之类的。

学习

为了设计Tea的插件系统,我研究了很多带有插件能力的程序的实现方式,其中我比较中意的是Obsidian的设计方式。
关于插件系统,我有几个苦恼的点,第一是如何提供原生能力给插件,毕竟我不想插件也编写Rust,Obsidian是通过在前端项目中提供很多API来定义该插件的能力,并且提供了一些生命周期函数来让插件定义行为,而且好在我用的tauri本来就会开放一些基础API给前端,少了我很多工作。
第二个苦恼是,灵活性和安全性的问题。插件很难像我开发Tea的本体一样做到那么多能力,而且那样也失去了插件系统本身的意义,我希望在我提供了大模型交互能力和存储能力的基础上,再来通过界面提供大模型驱动的一些应用功能,但在我实际设计这个插件系统的时候,我自己设想的应用在我设计的框架上都举步维艰,所以很明显的是我设计的并不够灵活,这还得从前辈们的设计里取取经。安全性就更难保证了,我参考了figma的插件设计的文章,他们为了安全花费了大量的精力,并且我觉得他们牺牲了开发的便利性,和我制作Tea插件系统的初衷背道而驰,我希望以后AI能便利的按照需求来为用户创建插件,太过复杂的插件系统很难和现在的AI能力匹配,我决定用最偷懒的方法来解决安全问题,我只内置我审核过并且开源的插件(Obsidian好像也是这么做的)。
第三个苦恼的是技术方面,我希望插件打包后不要太大,如果每个插件都包含一套React相关的库,势必是会浪费很多存储空间,加载也会变慢,这个目前还是没有解决,插件只能自带UI库,不过也带来了一个好处,就算是用Vue也能加载进来了。。。
还有更多的苦恼,不过解决苦恼也是会带来爽感的,可能这就是为啥我一直喜欢编程的原因吧。

在日常用Tea的时候,又发现了一个很爽的地方:我想 给terminal设置环境变量之后自动切换到obsidian目录然后git push到github 这个操作加个别名然后一键完成(因为github时不时被墙),我不知道如何在powershell里编写这个命令,于是我用Tea来询问,并且让他编写一个命令能够运行后自动添加别名并且持久化,接下来我就只要利用Tea的代码运行能力直接点一下运行,这个别名就加好了。

生活

这个假期过得非常放松,和朋友开黑玩《三角洲行动》,想想之前开黑玩游戏,好像是几年前玩绝地求生了。
还带娃去逛了逛公园,七天中唯一一天离开电脑,结果客户那边就出问题找过来了,好在同事帮忙解决完了。


0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注