400 行 Java 代码手搓 AI Agent,ReAct 循环 + Tool Call,我跑起来了
大家好,我是二哥呀。
说实话,用 Claude Code、Qoder CLI 和 Codex 进行 AI编程也有一段时间了,我一直很好奇这玩意儿到底是怎么实现的。
它们看起来就是简单的命令行界面,但背后却能理解我的需求、调用各种工具、读写文件、执行命令,甚至能自己改代码。

这到底是什么原理?
今天这篇文章,我们就从零开始,用 Java 实现一个最简单的 Agent CLI。它能配置 GLM-5.1 的 API Key,能接收你的输入,有 Agent Loop,能 Tool Call,能根据上下文编程或输出内容。
一个超级简化版的 Claude Code,大概 400 行代码就能跑起来。

01、Agent 的核心原理
在动手写代码之前,先搞清楚 Agent 到底是什么东西。
Agent 的核心就三个东西:推理(Reasoning)、行动(Acting)、观察(Observing)。这三者循环起来,就是著名的 ReAct 模式。

流程是这样的:
- 你输入一个任务
- LLM 思考:我需要做什么?要不要调用工具?
- 如果需要工具,LLM 输出工具调用请求
- Agent 执行工具,拿到结果
- 把结果喂给 LLM,继续思考
- 重复 2-5,直到 LLM 觉得任务完成
- 输出最终结果
这个循环就是 Agent 的灵魂。Claude Code、Qoder CLI、OpenClaw,本质上都是这个循环的不同实现。
02、项目结构
我们用 Java 17 + Maven 来搭建项目,不依赖任何第三方 Agent 框架,从零手写。
paicli/
├── pom.xml
├── .env
...
已加入星球,可直接知识星球授权登录
二哥编程星球目前包含:
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
真诚点赞 诚不我欺
回复