发送一条消息,agent做了哪些事情?
接下来会以hermes-agent、openclaw源码为例,逐步剖析其流程和实现原理,不会讲太多细节
源码阅读技巧
hermes-agent
源码版本:
hermes --version
Hermes Agent v0.14.0 (2026.5.16)
入口
文件: hermes_cli/main.py — main() 函数
交互模式: hermes → HermesCLI.run()
单次查询: hermes chat -q "..." → HermesCLI.chat(query)
2. CLI 层 — HermesCLI
文件: cli.py (~13,500 行)
交互模式入口: run() (line 11027)
- prompt_toolkit 构建 TUI:底部固定输入区 + 上部可滚动输出区
- 循环: 用户输入 →
_process_input_loop() → chat(message)
openclaw
发送一条消息,agent做了哪些事情?
接下来会以hermes-agent、openclaw源码为例,逐步剖析其流程和实现原理,不会讲太多细节
源码阅读技巧
hermes-agent
入口
文件:
hermes_cli/main.py—main()函数2. CLI 层 — HermesCLI
文件:
cli.py(~13,500 行)交互模式入口:
run()(line 11027)_process_input_loop()→chat(message)openclaw