强大免费的 AI 智能体 iFlow CLI
功能介绍
iFlow CLI 是阿里开源的一款终端 AI 助手,可以分析代码、执行编程任务、调试代码、CodeReview、处理文件等操作,支持智能使用 mcp 能力,支持智能使用 subAgents 的能力。其所支持的完整能力如下:

安装
系统要求
- Node.js 20+
- 4GB+ 内存
安装
全局安装:安装后可以直接在终端内命令行使用
npm install -g @iflow-ai/iflow-cli@latestIDEA 插件安装: 在 idea 中搜索 iflow 插件,进行安装。(仅支持 2024.1 及以后版本) 
验证
iflow -v启动
iflow选择登录方式
推荐选择 Login with iFlow(recommend),拥有最全功能,且会自动续期令牌
选择默认模型
以下模型四选一。
- Qwen3-Coder-Plus(recommend)
- DeepSeek-V3.2
- GLM-4.6
- Kimi-K2-0905
注意:实测下来,在编码方面,GLM-4.6 是最强的。DeepSeek-V3.2 的上下文太短,处理复杂需求的时候可能会受限。具体介绍可以看 官方模型库
基础用法
通用命令
/wenwen:可以帮助您更好地使用 iFlow CLI
/wenwen 如何安装MCP!前缀:执行 shell 命令
!ls -la优势:
- 命令输出直接集成到 AI 对话中
- AI 可以分析命令结果并提供建议
- 保持 shell 环境和工作目录上下文
文本多行输入
> 测试一下多行输入
1. 你好
2. 你是谁在每一行的行尾输入 \,之后点击回车键,开始输入下一行内容
文件/目录引用
单文件引用:@文件;文件目录引用 @目录;多文件引用:@文件1 @文件2
> 帮我优化 @src/components/UserProfile.tsx 这个组件
> 分析 @src/utils 目录下的工具函数
> 比较 @src/old-component.tsx 和 @src/new-component.tsx 的区别内容导入
允许通过 @file.md 语法从其他文件导入内容。这个功能让您能够将大型的配置文件拆分为更小、更易管理的组件,实现内容的模块化组织和重复使用。
iflow 自身会进行循环导入的检测。支持绝对和相对路径。
# 同目录
@./file.md
# 上级目录
@../file.md
# 绝对路径
@/absolute/path/to/file.md规则文件(记忆)
iflow 的规则文件用于定义固定的提示语规范,会与用户提示语一起发送给大模型。
规则分层
iflow 具有三层规则文件:优先级从低到高分别是 全局规则 > 项目规则 > 指定文件夹规则,iFlow CLI 会从当前工作目录开始,向上搜索到项目根目录和用户主目录,加载所有找到的 IFLOW.md 文件。内容会按照优先级顺序合并,高优先级的内容会覆盖低优先级的内容。
全局规则:
~/.iflow/IFLOW.md- 作用范围:所有 iFlow CLI 会话
- 用途:存储个人偏好、通用编码规范、全局记忆
- 示例内容:个人编程习惯、常用库偏好、个人信息
项目规则:
/path/to/your/project/IFLOW.md- 作用范围:特定项目
- 用途:项目架构、技术栈、团队规范
- 示例内容:项目概述、API 文档、部署说明
指定文件夹规则:
/path/to/your/project/src/IFLOW.md- 作用范围:特定目录及其子目录
- 用途:模块特定的指令和约定
- 示例内容:模块说明、特殊测试要求
新建规则文件
/init自动分析您的代码库并生成项目文档
功能:
- 自动识别项目类型和技术栈
- 生成详细的项目结构文档
- 分析依赖关系和配置文件
为后续 AI 交互提供上下文
注意:因为模型上下文有限,通常需要精炼的编写上下文,对通过该命令自动生成的规则文件,需要进行再次处理。同时为了保障规则的精准性(对于编码的指导至关重要),要善于运用指定文件夹规则能力(前提是系统架构设计良好,逻辑内聚的较好,模块化能力较好)
模块化与环境变量导入
规则文件支持模块化文件能力:
# 环境相关配置(模块化导入)
@./config/development.md
@./config/production.md
## 当前环境(环境变量)
当前运行在 ${NODE_ENV} 环境。上下文管理
更新运行时记忆
# 查看当前使用的记忆内容
/memory show
# 刷新记忆内容(如果新建的 iflow.md 没有被加载到记忆中,可以执行该命令强制加载)
/memory refresh
# 手动添加记忆
/memory add 记忆内容清除上下文
/clear:命令可以清空对话历史,可用于优化性能,减少 token 使用
思考模式
思考模式具有五个思考深度等级:超级思考(Ultra) > 强力思考(Mega) > 中级思考(Hard)> 基础思考(Normal)> 无思考(None)
思考模式触发机制:提示词中含有特定词语,则直接触发。
中文触发词
超级思考(Ultra):
- 超级思考、极限思考、深度思考
- 全力思考、超强思考
- 认真仔细思考
强力思考(Mega):
- 强力思考、大力思考、用力思考
- 努力思考、好好思考、仔细思考
中级思考(Hard):
- 再想想、多想想
- 想清楚、想明白、考虑清楚
基础思考(Normal):
- 想想、思考、考虑
英文触发词
超级思考(Ultra):
- ultrathink
- think really super hard
- think intensely
强力思考(Mega):
- megathink
- think really hard
- think a lot
中级思考(Hard):
- think about it
- think more
- think harder
基础思考(Normal):
- think
键盘快捷键
常用的如下,完整的见 官方文档
ctrl+c:按两次退出 iflowesc:推出当前的推理流程Ctrl+L:清屏Ctrl+S:显示完整响应内容,禁用截断Tab:自动补全Ctrl+O:查看调试信息Enter:提交命令
注意:esc 在 IDEA 中会被用于以下功能,进而造成键冲突,故需要勾选掉。 
MCP
查看 mcp 所有命令:
iflow mcp --help注意:以 iflow 开头的命令请在终端中运行,不要在 iflow CLI 中运行
安装 mcp
方式一:访问 iflow 官方市场 或者 mcp 官方市场 选择 mcp mac/linux 可以使用:
# 安装在项目中
iflow mcp add-json 'server-name' '{JSON配置}'
# 安装在全局
iflow mcp add-json --scope user 'server-name' '{JSON配置}'示例:
iflow mcp add-json --scope user 'playwright' "{\"command\":\"npx\",\"args\":[\"-y\",\"@iflow-mcp/playwright-mcp@0.0.32\"]}"windows 下需要处理 JSON 转移字符,所以更推荐直接使用:
# 安装在项目范围+stdio
iflow mcp add <name> <command> [args...]
# 安装在全局范围+stdio
iflow mcp add --scope user <name> <command> [args...]
# 安装在全局范围+sse
iflow mcp add --transport sse --scope user <name> <url>
# 安装在全局范围+http
iflow mcp add --transport http --scope user <name> <url>示例:
iflow mcp add --scope user playwright npx -y @iflow-mcp/playwright-mcp@0.0.32方式二:执行 /mcp online,按照安装导向,选择 mcp 进行安装
方式三:在配置文件中手动添加 全局配置文件:~/.iflow/mcp/config.json 项目配置文件:{project}/.iflow/mcp.json
类似如下:
{
"mcpServers": {
"xhs-toolkit": {
"description": "强大的小红书自动化工具包,支持内容发布、数据分析、创作者数据采集等功能",
"command": "uvx",
"args": [
"--from",
"iflow-mcp_xhs-toolkit",
"xhs-toolkit",
"--stdio"
],
"env": {
"DATA_STORAGE_PATH": "D:\\data\\xhs",
"ENABLE_AUTO_COLLECTION": "D:\\data\\xhs"
}
},
"playwright": {
"command": "npx",
"args": [
"-y",
"@iflow-mcp/playwright-mcp@0.0.32"
],
"timeout": 20000
}
}
}每一个 mcp 的配置项属性:
<SERVER_NAME>(对象):命名服务器的服务器参数command(字符串,必填):启动 MCP 服务器要执行的命令args(字符串数组,可选):传递给命令的参数env(对象,可选):为服务器进程设置的环境变量cwd(字符串,可选):启动服务器的工作目录timeout(数字,可选):对此 MCP 服务器请求的超时时间(毫秒)trust(布尔值,可选):信任此服务器并绕过所有工具调用确认includeTools(字符串数组,可选):指定时,只有这里列出的工具才可从此服务器使用(白名单行为)。如果未指定,默认启用服务器的所有工具excludeTools(字符串数组,可选):这里列出的工具将不可用。注意: excludeTools 优先于 includeTools - 如果工具在两个列表中,它将被排除。
使用 mcp
智能体会自主的决定何时使用 mcp,无需额外指定。
刷新 mcp 列表
/mcp refresh查询已安装的 mcp 列表
/mcp list查询指定名字的 mcp 详细描述
iflow mcp get <server-name>删除指定名字的 mcp
iflow mcp remove <server-name>SubAgent
Sub Agent 是 iFlow CLI 中的智能分工系统,类似于拥有一个专业团队,每个成员都有自己的专长领域。系统能够根据不同的任务类型自动选择最合适的专业 Agent 来处理您的请求,确保每个任务都能得到最专业的处理。
特点:
- 每个 SubAgent 针对特定领域优化,可用于提高任务处理质量
- 控制不同 SubAgent 访问不同的工具集合,兼顾安全性和效率
- 根据任务描述自动选择 SubAgent,用户无需手动选择
- 支持自定义和第三方 SubAgent
查看 SubAgent 所有命令:
iflow agent --help安装 SubAgent
方式一:访问 iflow 官方市场,选择安装:
# 添加项目级别的Agent
iflow agent add <agent-name-or-id> --scope project
# 添加用户级别的Agent(全局作用域)
iflow agent add <agent-name-or-id> --scope global添加的全局 agent 在 ~/.iflow/agents/ 会形成一个文件 <agent-name-or-id>.md
示例:
iflow agent add "prompt-engineer" --scope global方式二:执行 /agents online,按照安装向导,选择 agent 进行安装
方式三:执行 /agents install,按照创建向导,手动创建 agent
方式四:手动在 ~/.iflow/agents/ 创建 <name>.md,仿照已有的 agent 文件编写即可,语法如下:
---
agentType: "agent唯一标识"
description: "简短描述"
systemPrompt: "系统提示语"
whenToUse: "描述什么时候应该被使用"
model: "偏爱的模型ID"
allowedTools: ["Read", "Grep", "Bash"] // 允许使用的工具
allowedMcps: ["security-scanner", "vulnerability-db"] // 允许使用的mcp
isInheritTools: false // 是否继承父 agent 的工具,如果 true,则可使用的工具包含父 agent 的工具+allowedTools
isInheritMcps: false // 是否继承父 agent 的 mcp,如果 true,则可使用的工具包含父 agent 的 mcp+allowedTools
---
这是一个自定义专家 Agent 的详细说明...自主使用 SubAgent
智能体会自主的决定何时使用 SubAgent,无需额外指定。
手动使用 AubAgent
$<agent-type> <任务描述>示例:
$code-reviewer 对当前项目进行代码审查刷新 SubAgent 列表
/agents refresh查询已安装的 SubAgent 列表
/agents list查询指定名字的 SubAgent 详细描述
iflow agent get <agent-name-or-id>删除指定名字的 SubAgent
iflow agent remove <agent-name-or-id>SubCommand
Sub Command 是 iFlow CLI 中的命令系统,允许您从在线市场安装专业化的斜杠命令来扩展 CLI 功能。
查看 command 所有命令:
iflow commands --help安装 command
方式一:访问 iflow 官方市场,选择安装:
# 项目范围
iflow commands add <command-id> --scope project
# 全局范围
iflow commands add <command-id> --scope global添加的全局 agent 在 ~/.iflow/commands/ 会形成一个文件 <command-id>.toml
示例:
iflow commands add "make-it-pretty" --scope global方式二:执行 /commands online,按照安装向导,选择 command 进行安装
方式三:手动在 ~/.iflow/commands/ 创建 <command-id>.toml,仿照已有的 command 文件编写即可,语法如下:
# Command: <command-id>
# Description: 描述
# Category: 分类,见 https://platform.iflow.cn/cli/examples/subcommand?spm=54878a4d.9dc04ed.0.0.348834b4yIHsdw#%E5%91%BD%E4%BB%A4%E5%88%86%E7%B1%BB%E4%B8%8E%E6%8E%A8%E8%8D%90
# Version: 1
# Author: 作者名
description = "描述"
prompt = """
提示语
{{args}}
!{git status}
"""说明:
:用于参数占位符,如果不使用占位参数,则用户的输入会自动添加到提示语结尾!{command}:在提示词中执行Shell命令
使用 command
本身就是一个斜杠命令
/<command-id>示例:
/code-reviewer查询已安装的 command 列表
/commands list查询指定名字的 command 详细描述
iflow commands get <command-id>删除指定名字的 command
# 删除项目范围 command
iflow commands remove <command-id>
# 删除全局范围 command
iflow commands remove <command-id> --scope globalWorkflow
工作流将不同的AI能力(agents、commands、MCP工具)组合成完整的工作流程。通过workflow,您可以创建复杂的自动化任务链,实现从代码分析、开发、测试到部署的全流程自动化。
心流开放平台已经预置了大量优秀的工作流,例如小红书发文、深度研究、ppt制作、画流程图等,你可以在心流开放市场中下载安装到本地,再基于您个人独特的需求对工作流进行调整。
对于开发者,心流开放平台预置了github spec、bmad、NioPD、ai-dev-task等开发者工作流。
查看 workflow 所有命令:
iflow workflow --help安装 workflow
方式一:访问 iflow 官方市场,选择安装:
# 项目范围
iflow workflow add <name-or-id>示例:
iflow workflow add "ppt-generator-v3-OzctqA"workflow 安装后会形成如下的目录结构(我们在自定义 workflow 的时候,可以参考该目录结构)
项目根目录/
├── .iflow/ # iFlow CLI配置和资源目录
│ ├── agents/ # 智能体配置文件夹
│ │ ├── agent1.md # 具体的agent配置文件
│ │ └── agent2.md # 更多agent配置
│ ├── commands/ # 自定义命令文件夹
│ │ ├── command1.md # 具体的command实现
│ │ └── command2.md # 更多command实现
│ ├── IFLOW.md # 详细的工作流文档和配置
│ └── settings.json # mcp相关配置
└── [项目文件夹]/ # 您的项目文件和代码方式二:访问 iflow 官方市场,选择 workflow 后,进入到其 github 地址,按照其安装步骤进行安装,例如:NioPD
使用 workflow
工作流安装之后,在项目的 .iflow/commands/ 文件夹下可以看到添加的执行命令,例如 ppt-generator.md,其是一个斜杠命令
/<command-id>示例:
/ppt-generator执行模式
默认情况下,iflow 使用 Yolo 模式,该模式下,iflow 会自己制定计划,之后自动执行计划,全程无人参与。
使用 alt+m 可以进行计划的切换,该模式下,iflow 会自己制定计划,之后由人来确定是否执行。
Hooks
Hooks 允许您在特定的生命周期事件发生时自动执行自定义命令。
类型
iflow 提供了 9 个钩子。如下:
PreToolUse Hook:在工具执行之前执行PostToolUse Hook:在工具执行之后执行SetUpEnvironment Hook:会话开始时,环境信息设置阶段执行Stop Hook:在主会话结束时执行SubagentStop Hook:在子 Agent 执行结束执行SessionStart Hook:在会话开始时执行SessionEnd Hook:在会话结束后执行UserPromptSubmit Hook:在用户提交提示语之后 iflow 执行该提示语之前执行Notification Hook:在当 iFlow 向用户发送通知时执行
配置
- 用户配置:
~/.iflow/settings.json - 项目配置:
project/.iflow/settings.json
二者会在项目使用中进行合并使用。
配置语法如下:
{
"hooks": {
"PreToolUse": [
{
"matcher": "tool_pattern",
"hooks": [
{
"type": "command",
"command": "your_command",
"timeout": 30
}
]
}
]
}
}每个 Hook 类型包含一个配置数组,每个配置项包含:
- hooks (必需):Hook 命令数组,每个命令包含:
- type:命令类型,目前仅支持 "command"
- command:要执行的命令字符串,可以执行脚本文件,例如
python3 git_status.py,脚本中可以使用 iflow 预置的一些环境变量,例如,IFLOW_SESSION_ID表示会话ID,在 python 脚本中可以这样使用session_id = os.environ.get('IFLOW_SESSION_ID', '') - timeout:超时时间(秒),可选,默认无超时
- matcher:部分 Hook 有这个字段,用于条件匹配,例如 PreToolUse 可以使用该工具来指定哪些工具需要执行这个 Hook(当然选择逻辑也可以直接做在 command 的脚本中)
关于 Hook 更多的信息见 Hooks 配置
更新
iFlow CLI在启动时会检测是否有最新版本,会自动更新。 若失败,可手动更新
# 更新命令
npm i -g @iflow-ai/iflow-cli to update
# 查看最新版本
iflow -v卸载
# 卸载
npm uninstall -g @iflow-ai/iflow-cli
# 检查iflow命令是否存在
iflow -v使用
使用案例一
帮我创建一个java工程,Java使用21版本,服务端使用springboot最新版本,前端使用vue3最新版本,并且提供一个最基础的欢迎页,当访问 http://localhost:8080/ 的时候自动打开欢迎页我们使用 iflow 的 YOLO 模式,iflow 会自动规划,自动执行命令(比如,安装依赖,创建文件夹等)/自动编码。可以使用 ctrl+y 切换模式,使得每一个操作都需要用户确认。
iflow 首先会创建计划 
之后会按照计划一步一步执行。例如,第一步如下: 
之后依次执行,最后还会启动项目,如果失败,还会不断重试,自我修复代码,直到成功为止。最后输出总结如下:

最后效果如下:
