aipy 智能体学习0:源码概览
aipy 智能体学习1:源码运行起来
aipy 智能体学习2:源码运行执行路径
项目的命令入口在 pyproject.toml,对应 aipyapp.main:main;总入口在 aipyapp/main.py。
参数解析
更新版本
同步配置
初始化配置
获取main get_aipy_main里,默认进入cli_task里的main

打印Logo
初始化显示效果管理器
初始化任务管理器
检查更新
检查LLM配置
获取执行命令
获取运行任务的 JSON 文件路径
从 JSON 文件加载任务 或 创建新任务
运行命令
任务完成(保存等)
运行交互式控制台

到这里只是初始化及启动交互式CMD界面。
继续到这里向后看: InteractiveConsole(tm, console, settings).run() # 运行交互式控制台
死循环
切换到主模式
获取user_input (如果不是命令(带/开头是命令),则创建新任务并进入任务模式)
执行命令 (处理带/开头是命令)
如果命令返回 TaskModeResult,则进入任务模式
如果有指令,则创建新任务
如果没有指令,则使用现有任务
进入任务模式
主模式与任务模式的区别
代码中的关键区别已经明确:主模式负责接收新的命令或用户指令,任务模式则绑定到一个具体任务,并持续处理该任务的对话。两者都由同一个命令上下文切换,而不是两个独立的程序入口。
主模式
- 入口是主命令提示符 >>
- 负责管理应用级操作,例如执行命令、查看任务、加载任务等。
- 普通输入不会直接执行,而是新建任务并进入任务模式。
- 命令返回 TaskModeResult 后,也会进入任务模式。
- 每次进入主模式时会清空当前任务。
相关代码:cli_task.py:201-229、common.py:35-62
任务模式
- 入口是 >>>
- 绑定到一个具体任务,后续输入会发送给该任务。
- 普通输入会执行 task.run(),以继续完成当前任务。
- 以斜杠开头的输入会按命令执行。
- 输入 /done 或 done,或按 Ctrl+D,都会结束任务模式。
- 结束后会调用 task.done(),完成任务状态更新。
相关代码:cli_task.py:164-199
典型流程
- 主模式输入普通指令。
- 程序创建新任务。
- 进入任务模式,提示 >>>
- 用户持续向任务发送指令。
- 输入 /done 或 Ctrl+D 后返回主模式。
可以理解为:
- 主模式:“管理整个应用、选择或创建任务”
- 任务模式:“继续执行当前任务的对话”
继续进入任务start_task_mode

如果是指令
Enter Ctrl+d or /done to end current task
运行任务
如果指令以|开头,运行子任务,否则运行任务。
否则
重新开始任务
死循环
获取用户输入
看一个 hi



task.run 执行自动处理循环,直到 LLM 不再返回代码消息

step.run (请求LLM回复,处理工具调用,生成系统反馈消息)
rounds
什么时候退出循环呢?
没有system_feedback或达到了max_rounds就退出。
AI相关服务
1.AI工具配置:安装、切换DeepSeek或千问等国内外大模型及agent|50
2.AI软件定制:本地部署DeepSeek、千问等开源大模型、智能体|1000
3.企业AI Agent:公司流程AI Agent接入、自动化、辅助评审与决策|2000
案例1:AI评审代码
案例2:公司流程AI Agent接入