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

# BlockX 是什么

> 面向区块数据、状态读取和合约调用的 EVM 原生链下计算层。

BlockX 是 EVM 原生的链下计算层。你用 Python 函数处理 EVM 状态与事件、读取合约状态并取得合约调用结果。一个 task 组织多次函数调用，并指定如何返回或持久化输出。

## EVM 原生计算

| 基本要素 | 你如何使用 |
| - | - |
| 链与区块 | 确定函数读取哪条链、哪个历史状态 |
| 状态与事件 | 选择计算的触发数据和依赖数据 |
| 合约调用 | 通过运行时的 EVM 节点访问能力取得合约返回值 |
| 派生结果 | 返回计算值，或将记录写入目标 BlockDB 表 |

函数需要链与区块上下文时，应显式传入。选择触发区块不会自动将函数内的所有节点读取或表读取绑定到该区块。

## 选择工作流程

| 流程 | 输入 | 结果 |
| - | - | - |
| 处理新区块 | 源表在该区块的行 | 将派生记录写入目标表 |
| 回填历史 | bundle 分区中的源数据行 | 经 bundle 写入路径提交结果 |
| 一次性计算 | 显式函数参数 | 返回输出或写表 |
| 同步调用 | 一个函数及其参数 | 一次响应，可包含调试输出 |

调用方决定何时提交任务、处理哪些历史范围。BlockX 执行已提交的工作。

## 职责划分

| 参与方 | 职责 |
| - | - |
| BlockX | 将输入展开为 call，执行函数，运行 Writer Plugin，并报告任务结果 |
| BlockDB | 提供表数据，处理存储侧写入完成与数据可见性 |
| EVM 节点访问能力 | 读取链上状态，执行函数请求的合约查询 |
| 调用方 | 判断输入就绪条件，提交工作，确认后续消费条件 |

## 执行术语

* **Task** 是一次提交的工作单元。
* **Call** 是一次用户函数调用，该函数内部可以发起 EVM 合约调用。
* **Call Builder** 将任务输入展开为 Call。
* **Writer Plugin** 处理调用产生的输出。
* **Python Executor** 执行用户函数代码，EVM 请求经运行时转交节点能力。

## 小结

* 从 EVM 链、区块、状态和事件语义理解计算。
* 新区块计算与历史回填沿用同一套词汇。
* 选择结果去向，并确认对应的完成条件。

继续阅读：

* [EVM 计算模型](/zh/concepts/evm-computation)
* [Task 与 Call](/zh/concepts/task-and-call)
* [快速开始](/zh/quickstart)
* [架构总览](/zh/architecture/overview)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.