> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zerone.run/llms.txt
> Use this file to discover all available pages before exploring further.

# 架构

> 理解 Agent、QueryEngine、Provider 与 Tool 执行链。

# 架构

Agent 保存会话状态、Tool pool、MCP 连接与 hook；QueryEngine 为每次请求执行 Agent loop；Provider 把统一消息转换为模型 API；ToolExecutor 校验并执行模型请求的能力。

```mermaid theme={null}
flowchart LR
  App[应用] --> Agent
  Agent --> Engine[QueryEngine]
  Engine --> Provider
  Provider --> Model[模型服务]
  Model -->|tool call| Engine
  Engine --> Tools[Tools / MCP / Skills]
  Tools --> Engine
  Engine --> Session[Session storage]
```

## 关键内部组件

| 组件                | 说明                                       |
| ----------------- | ---------------------------------------- |
| **Provider 层**    | 屏蔽 Anthropic / OpenAI API 差异             |
| **QueryEngine**   | 核心 Agent loop，内置自动压缩、重试与 Tool 编排         |
| **Skill 系统**      | 可复用的提示词模板，从文件系统加载或程序化注册                  |
| **Hook 系统**       | 集成进 engine 的 24 个生命周期事件                  |
| **Auto-compact**  | 上下文窗口填满时总结对话                             |
| **Micro-compact** | 截断超大 Tool result                         |
| **重试**            | 针对限流与瞬时错误的指数退避                           |
| **Token 估算**      | 粗略 token 计数，附带 Claude、GPT、DeepSeek 模型的定价 |
| **文件缓存**          | 文件读取的 LRU 缓存（100 条，25 MB）                |
| **Session 存储**    | 在磁盘上持久化 / 恢复 / 分叉 Session                |
| **上下文注入**         | Git 状态与 AGENTS.md 自动注入系统提示词              |

这个分层使 Runtime 可以复用 SDK 的 Agent loop，同时把 HTTP、认证和断连语义留在服务层。自定义集成应优先扩展 Provider、Tool 与 hook，而不是复制 QueryEngine。逐组件的 API 见 [API Reference](/zh/sdk/api-reference)。
