一天介绍一个项目|从零手搓一个AGENT

今天介绍一个最近在 GitHub Trending 上爆火的开源项目——learn-claude-code,目前已经快 3 万星了。

项目地址:https://github.com/shareAI-lab/learn-claude-code

这个项目是干嘛的?

一句话概括:从零开始,手把手教你搓一个类似 Claude Code 的 AI Agent。

用过 Claude Code 的朋友应该都好奇过:它到底是怎么做到"你说一句话,它就能帮你改代码、跑命令、操作文件"的?这个项目就是来揭秘的。

作者的核心观点很直接——"Bash is all you need"。意思是,Agent 没有你想的那么复杂,本质就是一个循环:调 LLM → 拿到工具调用 → 执行 → 把结果喂回去 → 再调 LLM……如此反复。

用项目原话说:代理就是模型,代码只是支撑框架(harness)。

12 节课,从入门到能打

这个项目最牛的地方是它把学习路径拆成了 12 节循序渐进的课,每节课对应一个 Python 文件,跑起来就能看到效果。

第一阶段:搞懂基本循环(s01-s02)

这是最核心的部分。s01 教你写一个最简单的 Agent 循环——就是一个 while True,不断调 LLM,如果返回的是工具调用就执行,如果是普通文本就输出给用户。

s02 加入工具分发机制,把不同工具的处理函数注册到一个字典里,循环只管查字典调函数,加新工具完全不用改核心逻辑。

一句话总结:一个 while True 循环就是 Agent 的心脏。

第二阶段:让 Agent 不再瞎跑(s03-s06)

光有循环还不够,Agent 容易"跑偏"。这个阶段加了四个关键能力:

  • s03 规划系统:让 Agent 先想好怎么做,再动手,不会东一榔头西一棒槌
  • s04 子 Agent:复杂任务拆成小任务,每个子任务有独立的对话上下文,互不干扰
  • s05 技能系统:把常用操作封装成"技能文件",Agent 可以按需加载
  • s06 上下文压缩:聊久了上下文会爆,这节课教你用三层压缩策略(摘要层 + 核心记忆层 + 实时工作层)解决这个问题

第三阶段:跨会话记忆(s07-s08)

  • s07 任务持久化:把任务存到文件系统里,关掉程序再打开,之前的任务还在
  • s08 后台任务:用多线程让 Agent 可以同时干好几件事

第四阶段:团队作战(s09-s12)

这是进阶内容,教你搞多 Agent 协作:

  • s09-s10:多个 Agent 之间怎么通信(用 JSONL 邮箱协议),怎么自动认领任务
  • s11-s12:工作树隔离,每个 Agent 在独立目录里干活,互不干扰,最后合并

核心代码长啥样?

说了这么多,Agent 的核心骨架到底多简单?看这段代码就够了:

def agent_loop(messages):
    while True:
        response = client.messages.create(
            model=MODEL, system=SYSTEM,
            messages=messages, tools=TOOLS,
        )
        messages.append({"role": "assistant", "content": response.content})
        if response.stop_reason != "tool_use":
            return
        results = []
        for block in response.content:
            if block.type == "tool_use":
                output = TOOL_HANDLERS[block.name](**block.input)
                results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": output,
                })
        messages.append({"role": "user", "content": results})

就这么几行。调 LLM,拿到工具调用就执行,拿到文本就返回。这就是 Agent 的全部骨架。

怎么开始学?

动手只需要 5 步:

git clone https://github.com/shareAI-lab/learn-claude-code
cd learn-claude-code
pip install -r requirements.txt
cp .env.example .env  # 填入你的 ANTHROPIC_API_KEY
python agents/s01_agent_loop.py  # 从第一课开始跑

从 s01 开始,一节一节往后学,每节课都是一个独立可运行的 Python 文件。

另外项目还提供了一个 Next.js 做的可视化学习平台,可以在浏览器里看架构图和步进调试:

cd web && npm install && npm run dev
# 打开 http://localhost:3000

适合谁?

  • 想搞明白 Agent 到底是怎么回事的开发者
  • 用过 Claude Code 但好奇它内部原理的人
  • 想自己从零搓一个 Agent 的实践派
  • 刚入门 AI 应用开发,想找个靠谱教程的同学

最后

别光收藏,clone 下来跑一遍 s01,你会发现 Agent 真没那么神秘。

#AI项目实战##AI求职实录#
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务