尝试在FreeBSD系统安装使用iFlow 心流进行自动编程任务
摘要在FreeBSD系统成功安装使用iFlowCLI终端AI助手。通过安装Node.js和pnpm后,使用pnpm全局安装iFlow。虽然首次登录遇到终端数量限制,改用API密钥成功验证。测试让iFlow实现一个简易Lisp解释器,其自动生成待办列表并逐步完成任务的特性表现优异,最终能正确执行(+ 2 1)=3等基本运算。iFlow作为跨平台的AI编程助手,支持多种国产大模型,具有响应速度快、自动
iFlow CLI 是一款终端AI助手,可以分析代码、执行编程任务、处理文件操作。windows10下的安装使用见:https://skywalk.blog.csdn.net/article/details/153275821
这次在FreeBSD系统下尝试安装使用它,尽管官方手册:快速开始 | 心流开放平台 只写了macOS/Linux/Windows三个系统的安装方法,因为它是使用Node.js的,所以FreeBSD系统下也能使用。
安装iFlow
首先在FreeBSD系统安装安装nodejs和pnpm 。 nodejs是必须安装的,pnpm是现代化的nodejs安装包,比npm更好用,所以推荐安装pnpm,然后在使用pnpm来安装iFlow 。
安装nodejs和pnpm
FreeBSD支持nodejs 20 22 和24三个版本,这里我们安装22这个版本:
sudo pkg install npm-node22
sudo npm install -g pnpm
pnpm的各种问题解决参见:https://skywalk.blog.csdn.net/article/details/148834761
安装iFlow
pnpm install -g @iflow-ai/iflow-cli@latest
启动iFlow
直接键入iflow即可启动iFlow:
iflow
配置登录信息
启动后首先提示设置api
开始使用 │
│ │
│ 您希望如何为此项目进行身份验证? │
│ │
│ ● 1. 使用 iFlow 登录(推荐) │
│ 2. 使用 iFlow API 密钥登录 │
│ 3. OpenAI 兼容 API │
│ │
│ 您必须选择一种身份验证方式才能继续。按两次 Ctrl+C 退出。
对第一次使用的人来说,直接用手机登录即可。我这里因为已经在Windows和Linux下都注册了,所以可能“超过最大检验错误” ,显示了报错。
使用iFlow登录的时候显示报错:

看来这是限定终端的个数了。
那就用api key吧 ,大不了10天一换。到iFlow网站,找到自己的api key,配置使用api key登录验证。
配置模型
本来想试用glm模型,结果限制使用,那就换回qwen了。
配置使用默认的qwen-coder模型。
测试
给它个任务试试:写个简单的lisp语言吧,参考common lisp,要求能编译执行
它把任务列成了代办列表,一个个的完成,真的很不错!关键是有两点比较不错:
1 生成速度较快,感觉比Trae的速度快
2 全程不需要人去管,也不用去按“接受”的按钮,这一点比Trae用起来体验好。当然现在Trae的最新版,也可以不用人工干预了。
它会先写出todo列表,然后一步步执行。这一点我也感觉很好,很神奇。后来再用Trae,发现它也用待办列表这种方法了。
│ ✅ todo_write 更新待办事项列表(5个待处理,1个进行中,3个已完成) │
│ │
│ ·已更新待办事项列表 │
│ ⎿ ✅ 设计Lisp语言的基本语法和核心功能 │
│ ✅ 实现词法分析器(Tokenizer) │
│ ✅ 实现语法分析器(Parser) │
│ ☐ 实现AST数据结构 │
│ ☐ 实现基本的求值器(Evaluator) │
│ ☐ 实现基本的内置函数(如+、-、*、/、defun等) │
│ ☐ 实现编译器(可选,先实现解释器) │
│ ☐ 编写测试用例验证功能 │
│ ☐ 构建可执行文件
测试完成
✦ 我们的简单Lisp语言解释器已经成功创建并可以运行!让我总结一下实现的功能:
1. 实现了基本的Lisp语法解析
2. 支持数字、字符串、符号、列表和布尔值等基本数据类型
3. 实现了基本的算术运算(+、-、*、/)
4. 实现了比较操作(=、<、>等)
5. 实现了条件表达式(if)
6. 实现了函数定义(defun)
7. 实现了变量绑定(let)
8. 实现了引号功能(quote)
9. 创建了交互式解释器
发现是cargo,直接cargo run执行
cargo run
warning: `/usr/home/skywalk/.cargo/config` is deprecated in favor of `config.toml`
note: if you need to support cargo 1.38 or earlier, you can symlink `config` to `config.toml`
warning: `/home/skywalk/.cargo/config` is deprecated in favor of `config.toml`
note: if you need to support cargo 1.38 or earlier, you can symlink `config` to `config.toml`
warning: methods `consume` and `expect` are never used
--> src/parser.rs:18:8
|
9 | impl Parser {
| ----------- methods in this implementation
...
18 | fn consume(&mut self) -> Option<Token> {
| ^^^^^^^
...
26 | fn expect(&mut self, expected: &Token) -> Result<Token, String> {
| ^^^^^^
|
= note: `#[warn(dead_code)]` on by default
warning: `simple-lisp` (lib) generated 1 warning
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s
Running `target/debug/simple-lisp`
Simple Lisp Interpreter
Enter expressions to evaluate, or 'quit' to exit.
> (+ 2 1)
3
太棒了,(+ 2 1)它算出来是3,真棒!
总结
由阿里心流团队开发的终端AI智能体iFlow,支持自然语言交互,可执行代码开发、数据分析、文件处理等任务,集成Qwen3-Coder、Kimi-K2等国产大模型。
它最大的几个特点是:
1 因为是基于nodejs的,所以可以跨平台使用,尤其是支持FreeBSD操作系统
2 永久免费且不限流量。不限流量这块存疑,我看到有提示:Qwen3-Coder 36% context left,不知道用完了是不是还能用。
3 无人工干预,直接完成任务
调试
报错API Error: 生成数据错误: OpenAI 响应格式无效
╭─────────────────────────────────────────────────────────────────╮
│ > /demo 写个简单的lisp语言吧,参考common lisp,要求能编译执行 │
╰─────────────────────────────────────────────────────────────────╯
✕ [API Error: 生成数据错误: OpenAI 响应格式无效 - 缺少或空的 choices
数组。TraceID:2150137017605816511098182e24ce]
可能只是偶然发生吧,一般碰到openai的报错,本地所能做的就是把openai升级到最新版本
pip install openai -U
更多推荐
所有评论(0)