
Hi,这里是Aitrainee,欢迎阅读本期新文章。
我想大多数人还记得 Claude Engineer 和 Ollama Engineer,对吧?
现在又有一个新工具,叫做 Omni Engineer。

它来自开发 Claude Engineer 和 Ollama Engineer 的同一个开发者,而这是一个新项目。
Omni Engineer 是 Claude Engineer 的一种继任者,它现在可以通过 Open Router 使用任何模型。除此之外,它基本上与 Claude Engineer 类似。
我们可以在他们的 GitHub 页面上看到,它说 Omni Engineer 是 Claude Engineer 的精神继任者,它是从广泛使用手工制作的 AI 工具、反复试验以及收到的反馈中构建的。

与 Claude Engineer 相比,这个新脚本通过简化提供了更多控制,同时省略了一些其他功能,比如完全自动化流程或同时运行代码的能力。
它还带来了一些很酷的新功能,比如多文件编辑和聊天的保存与恢复。
这个框架更适合那些希望有一个更好助手来进行编码,而不是完全自动化的用户。
所以基本上,它就是 Claude Engineer,只是没有自动化模式和其他一些功能,但这对我来说没问题。
它可以进行文件管理、网页搜索、图像处理,还具有撤销功能。它还可以保存和加载对话,这相当不错。
它还有多个命令,就像 aider 的功能一样。可以说它非常受 aider 的启发。它仅使用 Open Router,但我也会告诉你如何使用它与 OpenAI 或 Ollama 配合使用。
无论如何,现在我们来看看它是如何工作的。所以首先将这个仓库克隆到你的电脑上。

克隆完成后,进入文件夹。现在我们需要安装依赖项。要做到这一点,只需运行这个 pip install 命令。

这将安装依赖项。完成后,将 EnV 示例文件重命名为 EnV。

现在,用 VS Code 或你选择的其他编辑器打开它。完成后,你需要在这里输入 Open Router 的 API 密钥。
如果你不想使用 Open Router,而更喜欢使用 OpenAI 或 Olama,你也可以这样做。
为此,只需打开主 Python 文件并将基础 URL 更改为 OpenAI 或 Olama。对于 Ollama,它将是这样的,

而对于 OpenAI,它将是类似的。
现在我们还需要在这里输入我们想使用的模型。如果你使用 OpenAI 或 Olama,你只需在这里输入模型名称。

但如果你使用 Open Router,那么你需要输入带有提供商名称的模型名称。

除此以外,它预配置了 Claude 3.5 Sonet 作为主要代理和 Gemini 作为编辑器。
现在一切都完成后,只需回到终端,在这里运行主 Python 文件。

现在你可以看到这里的 UI。

我打算用它做一个扫雷游戏,所以我们来做吧。让我们让它创建一个新文件。现在它在询问我们是否要编辑它,我们在这里选择“是”。

它在询问我们要对它做什么。让我们让它使用 HTML、CSS 和 JS 来制作一个扫雷游戏。
它正在这样做,现在等待一会儿。所以看起来它已经完成了,现在让我们打开它看看。

好吧,这里没有棋盘或其他东西。我认为它没能正确地放入代码,或者代码有些问题。比如在代码中它需要 script.js 文件,但它并没有创建。
所以我猜在提示中我们需要让它把所有代码都放在一个文件中,因为它无法制作或编辑其他文件。现在我们使用编辑选项。
让我们让它做同样的事情,但这次让它把所有内容放在同一个文件中。
好吧,它在这样做,现在等待一会儿。现在它已经完成了,让我们看看。

好吧,这看起来相当不错,而且它也运行得很好。
所以它可以做到,但你需要确保它不会生成其他文件的代码,并且将所有内容保持在同一个文件中,也许稍微更改系统提示可以解决这个问题。
无论如何,现在我们也尝试一下它的其他命令。添加、编辑和新建我们已经尝试过了,现在试试搜索,让我们在这里使用它。
我问它如何用它安装 Llama 3.1。它不会直接给出结果,而是将结果添加到其上下文中,

你不需要任何 API 密钥进行搜索,这相当酷。我认为它使用 DuckDuckGo,因为这是免费的。
所以我们需要问它关于这件事。现在让我们问它。

好吧,它回答得很好,所以搜索功能也运行正常。
接下来是图像功能,所以让我们给它这张图像。这是一个 ChatGPT 的截图。

现在我们需要将图像添加到上下文中。

接着,让我们让它先创建一个新文件。

好吧,现在它已经完成了。让我们让它编辑它,然后让它使用我给的截图创建一个 UI。

它现在正在做这个,所以再等一会儿。好吧,现在它已经完成了,让我们看看。所以这看起来相当不错,

所以这是一个非常酷的功能,如果你想使用视觉图表或用户界面来制作东西,这非常酷。
除此之外,还有清除选项,显然它会清除你可能添加的图像或搜索之类的上下文。

还有重置选项,它会清除之前的消息。然后还有差异选项,它会关闭你看到的差异显示。

还有历史选项,它会将你的历史记录保存到一个文件中,你也可以通过加载命令稍后加载它。还有撤销命令,它会撤销文件中的最后更改,这也非常酷。
总体而言,我认为这是一个非常方便的工具。
它几乎可以做你期望的所有事情,尽管有一些问题,比如它生成了其他文件的代码,尽管它无法放入或创建这些文件。
但这是可以解决的问题,总体来说这是一个很棒的工具,我对它没什么抱怨,总体来说,非常酷。
🌟希望这篇文章对你有帮助,感谢阅读!
参考链接:
[1] github:https://github.com/Doriandarko/omni-engineer