看妈妈,单手操作!
目标
我计划创建一个最小化的无头DBOS(https://www.dbos.dev/)应用程序作为入门示例,以便开始使用Codeium(https://codeium.com/)提供的AI IDE Windsurf(https://codeium.com/windsurf)。
以下准备工作已经完成:
minimal-dbos
的目录请参见下方我与Windsurf的所有操作和互动记录——虽然内容较长,但其中充满了有趣的细节,我保证,绝对值得一读。
这里是我一路上的一些发现
pip
版本是否可用mypy
为了达到这个更复杂的初始提示的要求,我不得不提供一些特定的信息,这些是Windsurf无法自行推断的,例如,需要在应用启动时调用DBOS.launch()
和DBOS.destroy()
。我必须在提示中提供这些关键信息,因为Windsurf自己无法确定这些内容。
提供包的请注意,尽量提供更多的文档,以便学习能掌握尽可能多的细节。
而且这里就是挑战或风险:我不得不帮助Windsurf处理提示中的具体需求。这需要我知道这些细节,而这些细节是我几周前通过手动搭建一个DBOS应用程序才学到的。我想知道如果没有之前的了解,我怎么才能完成一个运行的应用程序。
以下是我在使用Windsurf时的第一个完整日志。真是太有趣了,我愉快地承认。正如你可能想到的,你可以不停地要求更多的改进和新功能,等等,这既好玩又有动力。
一个小观察:Windsurf 使用 “我”,“你”,“我们”,“我们的” 进行交流,它想加入明星团队。
我的图标,红色指南针(真北,就像笑脸符号一样 :-)),显示我输入的提示内容,其余内容都是 Windsurf 的输出。
改进:在代码中尽可能地添加 Python 类型注解
注意:下面的改动不仅改变了步骤名,还修改了日志信息和返回字符串,显示了巧妙的改动。
注意:为了创建一个有效的测试用例,我在提供具体输入后发现这个问题。Windsurf 没有识别到仍然存在的错误,DBOS()
是 main.py
文件的一部分,并且需要实际调用 DBOS.launch()
。
首先给出的命令是升级整个系统的 pip
,而不是虚拟环境中的。所以我拒绝了这个升级——结果很好,因为它自己判断出我只想更新虚拟环境。
这是我第一次使用AI IDE编辑器,但从方法论的角度来看,最好还是明确后续内容。
这听起来不算什么了不起的见解,然而,他们说:经常小步前进,这似乎是一个不错的开始,从细微处做起。
第一次使用 Windsurf 的感觉真棒。我喜欢这种实时互动的方式,以及通过展示代码差异来观察提议的修改的方法。
还有很多可以尝试的,比如与 Git 的集成,或者 IntelliJ 插件的支持。看看能有什么限制。