下面给你一个“Claude Code 类系统”的真实工程架构。
不是大模型,而是:

AI Coding Agent Runtime 架构

类似:

  • Claude Code
  • Cursor Agent
  • Devin
  • Cline
  • OpenHands

底层都会接近这个结构。


一、整体架构(核心)

+--------------------------------------------------+
|                    User / IDE                    |
+--------------------------------------------------+
                      |
                      v
+--------------------------------------------------+
|                 Agent Controller                 |
|--------------------------------------------------|
| 任务管理 / 状态机 / Planner / Memory / Retry     |
+--------------------------------------------------+
                      |
        +-------------+-------------+
        |                           |
        v                           v
+-------------------+    +-------------------------+
| Context Engine    |    | Tool Runtime            |
|-------------------|    |-------------------------|
| 文件索引           |    | File Tool               |
| Symbol Index      |    | Search Tool             |
| Chunk Compression |    | Shell Tool              |
| Repo Graph        |    | Git Tool                |
| Dependency Graph  |    | Test Runner             |
+-------------------+    | Debug Tool              |
                         +-------------------------+
        |                           |
        +-------------+-------------+
                      |
                      v
+--------------------------------------------------+
|                LLM Orchestrator                  |
|--------------------------------------------------|
| Prompt Builder / Tool Call Parser / Token Mgmt  |
+--------------------------------------------------+
                      |
                      v
+--------------------------------------------------+
|                    LLM Model                     |
+--------------------------------------------------+

二、真正核心模块


1. Agent Controller(大脑)

这是整个系统核心。

负责:

任务拆分
状态管理
错误恢复
多轮循环
上下文管理

典型状态机

INIT
 ↓
ANALYZE_PROJECT
 ↓
PLAN
 ↓
EXECUTE
 ↓
TEST
 ↓
FIX
 ↓
DONE

伪代码

while not task.done():

    context = build_context()

    response = llm(context)

    if response.tool_call:
        result = run_tool(response.tool_call)

        memory.add(result)

    elif response.code_patch:
        apply_patch(response.patch)

    elif response.done:
        break

三、Context Engine(最重要)

Claude Code 真正最值钱的部分之一。

因为:

大模型上下文根本不够

所以必须:

动态裁剪上下文

四、Context Engine 内部


1. Workspace Scanner

扫描:

项目目录
语言类型
依赖
入口文件

例如:

package.json
.csproj
requirements.txt
pom.xml

2. Symbol Index

建立:

类
方法
变量
接口
引用关系

类似:

UserService
 ├── Login()
 ├── Logout()

3. Dependency Graph

建立:

文件依赖图
调用链
import graph

例如:

Controller
  ↓
Service
  ↓
Repository

4. Context Compression(超级核心)

因为:

100万行代码放不进上下文

所以:

要压缩:


原始代码:

class UserService:
    ...

压缩后:

UserService:
- login()
- logout()
- depends on JwtProvider

五、Tool Runtime(最关键)

Claude Code 本质:

Tool-driven Agent

不是聊天。


六、Tool Runtime 结构

+----------------------+
| Tool Registry        |
+----------------------+
| read_file            |
| write_file           |
| grep                 |
| bash                 |
| git_diff             |
| search_symbol        |
| run_tests            |
+----------------------+

七、最重要的工具


1. File Tool

read_file(path)
write_file(path)
patch_file(path)

2. Search Tool

grep
ripgrep
ast query
symbol search

3. Shell Tool(非常重要)

Claude Code 很强靠这个。

例如:

dotnet build
npm test
pytest

然后:

自动分析输出


4. Git Tool

git diff
git status
git blame

作用:

只关注变更区域


5. Test Runner

自动:

运行测试
分析失败
修复

八、LLM Orchestrator(隐藏核心)

这是:

Prompt 编排层

非常关键。


负责:

1. Prompt 构建

例如:

系统Prompt
+ 项目结构
+ 当前任务
+ 工具结果
+ 历史上下文

2. Token Budget

控制:

哪些上下文能进模型

3. Tool Call Parsing

例如模型输出:

{
  "tool": "read_file",
  "path": "src/user.py"
}

转换为真实调用。


九、Memory System(核心)

Claude Code 其实有:

短期记忆


会记录:

已经读过哪些文件
哪些文件重要
刚才改了什么
哪些测试失败

否则:

Agent 会迷失


十、Patch Engine(非常关键)

Claude 不会:

直接重写整个文件

而是:

增量 Patch


例如:

- old line
+ new line

优势:

  • 更稳定
  • 冲突更少
  • token更少

十一、Error Recovery Loop(核心能力)

Claude Code 真正强:

自动修错


流程:

修改代码
→ 编译
→ 失败
→ 读错误
→ 修复
→ 再编译

这其实是:

自动 Debugger


十二、真实内部流程(一次任务)

例如:

“修复登录bug”

Claude Code 内部:


STEP1

扫描项目:

发现:
AuthController
UserService
JwtProvider

STEP2

建立调用链:

Controller
 ↓
Service
 ↓
Repository

STEP3

搜索:

login
authenticate
jwt

STEP4

打开文件:

UserService.cs

STEP5

分析:

NullReferenceException

STEP6

修改代码


STEP7

运行:

dotnet build

STEP8

分析编译错误


STEP9

继续修复


十三、真正难点(核心)

真正难的不是:

生成代码

而是:

工程状态管理

包括:

  • 上下文选择
  • 文件优先级
  • 工具调度
  • 错误恢复
  • 长任务稳定性

十四、真正接近 Claude Code 的技术栈


IDE层

  • VSCode Extension
  • Monaco
  • LSP

代码解析

  • Tree-sitter
  • Roslyn
  • ts-morph
  • Babel Parser

搜索

  • ripgrep
  • vector db
  • embeddings

Agent Runtime

  • LangGraph
  • AutoGen
  • CrewAI
  • OpenHands runtime

执行层

  • Docker sandbox
  • Shell runtime
  • Git worktree

十五、一个最小 Claude Code 架构(简化版)

class Agent:

    def run(self, task):

        while True:

            context = self.build_context()

            response = llm(context)

            if response.tool:
                result = tool.run(response.tool)
                self.memory.add(result)

            elif response.patch:
                apply_patch(response.patch)

            elif response.done:
                break

十六、Claude Code 真正护城河

不是模型。

而是:

“长期工程任务稳定性”

包括:

  • Context Engineering
  • Tool Runtime
  • Agent Loop
  • Error Recovery
  • Workspace Understanding

这才是最难的。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐