iii-hq/iii
GitHub: iii-hq/iii
iii 是一个后端统一执行引擎,通过 Function、Trigger 和 Worker 三大原语,将 API 框架、任务队列、状态存储和可观测性流水线整合为单一进程。
Stars: 15297 | Forks: 1022

[](engine/LICENSE)
[](sdk/LICENSE)
[](https://hub.docker.com/r/iiidev/iii)
[](https://www.npmjs.com/package/iii-sdk)
[](https://pypi.org/project/iii-sdk/)
[](https://crates.io/crates/iii-sdk)
## 什么是 iii
当你开始构建后端时,立刻就需要六种不同的工具:API 框架、任务队列、cron 调度器、pub/sub、状态存储和可观测性流水线。每种工具都有自己的配置、自己的部署方式、自己的故障模式。一个简单的“先处理这个,再通知那个”的工作流,在你编写任何业务逻辑之前就已经涉及了三个服务。
iii 用单个引擎和三个基本要素取代了所有这些:**Function**、**Trigger** 和 **Worker**。
Function 是任何执行工作的单元。Trigger 是导致它运行的原因——一个 HTTP 请求、一个 cron 计划、一条队列消息、一次状态变化。Worker 将你的函数连接到引擎。你编写函数,声明触发它的条件,连接一个 worker,引擎就会处理路由、重试和可观测性。
一个配置文件。一个进程。一切皆可发现。这就像 React 为前端提供了统一的 UI 模型——iii 为你的后端提供了统一的执行模型。
这些基本要素产生了一种执行模型和系统特性,使得 iii 在创建后端软件方面表现出色:
**Execution model(执行模型)** — 跨 Workers 和 Triggers 的持久化编排。跨语言的互操作性执行,就像在同一个 runtime 中一样。简单的原语将分布式后端设计折叠为人类和 agent 都可以推理的范式。
**Live system traits(实时系统特性)** — 一个 Worker 暴露的 Functions 和 Triggers 会在整个系统中实时可见并可用(Live discovery)。在无需重新设计架构的情况下,向运行中的 iii 系统添加新的 Workers 和能力(Live extensibility)。在整个连接的技术栈中实时观测操作、追踪和系统行为(Live observability)。
## 三个核心概念
| 概念 | 作用 |
| ------------- | ------------ |
| **Function** | 工作单元。它接收输入并可选地返回输出。它可以存在于任何地方:本地、云端、Serverless,或者作为第三方 HTTP 端点。 |
| **Trigger** | 导致 Function 运行的原因——从代码显式触发,或从事件源自动触发。例如:HTTP 路由、cron 计划、队列主题、状态变化、流事件。 |
| **Worker** | 将你的 Functions 和 Triggers 连接到引擎的 Runtime。Workers 无需配置即可注册和注销。一旦连接,它们的 Functions 就可以在整个后端中使用。 |
## 快速开始
按照 [快速入门指南](https://iii.dev/docs/quickstart) 开始使用 iii。
## SDK
| 语言 | 包 | 安装 |
| -------- | -------------------------------------------------- | --------------------- |
| Node.js | [`iii-sdk`](https://www.npmjs.com/package/iii-sdk) | `npm install iii-sdk` |
| Python | [`iii-sdk`](https://pypi.org/project/iii-sdk/) | `pip install iii-sdk` |
| Rust | [`iii-sdk`](https://crates.io/crates/iii-sdk) | 添加到 `Cargo.toml` |
## Agent Skills
为你的 AI 编程 agent 提供关于 iii 的完整上下文:
```
npx skills add iii-hq/iii
```
涵盖每个 iii 原语的 Skills——HTTP 端点、队列、cron、状态、流、自定义 Triggers 等。适用于 Claude Code、Cursor、Gemini CLI、Codex 和 [30 多种其他 agent](https://agentskills.io)。完整列表请参阅 [skills/](skills/)。
## 控制台
[iii-console](console/) 是一个用于检查 Functions、Triggers、追踪和实时状态的开发者和运维仪表板。有关设置和用法,请参阅 [Console 文档](https://iii.dev/docs/console)。
## 仓库结构
| 目录 | 说明 | README |
| -------------- | ------------------------------------------------------- | --------------------------------------- |
| `engine/` | iii Engine (Rust) - 核心 runtime、模块和协议 | [engine/README.md](engine/README.md) |
| `sdk/` | Node.js、Python 和 Rust 的 SDK | [sdk/README.md](sdk/README.md) |
| `console/` | 开发者仪表板 (React + Rust) | [console/README.md](console/README.md) |
| `frameworks/` | 基于 SDK 构建的高级框架 | [frameworks/motia/](frameworks/motia/) |
| `skills/` | AI 编程 agent 的 Agent skills | [skills/README.md](skills/README.md) |
| `website/` | iii 网站 | [website/](website/) |
| `docs/` | 文档站点 (Mintlify/MDX) | [docs/README.md](docs/README.md) |
完整的 monorepo 布局、依赖链和 CI/CD 详情,请参阅 [STRUCTURE.md](STRUCTURE.md)。
## 示例
有关分步教程,请参阅 [快速入门指南](https://iii.dev/docs/quickstart)。
## 资源
- [文档](https://iii.dev/docs)
- [CLI & Engine](https://github.com/iii-hq/iii)
- [Console](console/)
- [示例](https://github.com/iii-hq/iii-examples)
- [贡献指南](CONTRIBUTING.md)
## 许可证
iii 项目采用双重许可模式:
| 目录 | 许可证 |
| ---------------- | -------------------- |
| `engine/` | [Elastic License 2.0](engine/LICENSE) |
| `sdk/` | [Apache License 2.0](sdk/LICENSE) |
| `cli/` | [Apache License 2.0](cli/LICENSE) |
| `console/` | [Apache License 2.0](console/LICENSE) |
| `frameworks/` | [Apache License 2.0](frameworks/motia/LICENSE) |
| `docs/` | [Apache License 2.0](docs/LICENSE) |
| `website/` | [Apache License 2.0](website/LICENSE) |
Engine runtime 采用 Elastic License 2.0 (ELv2) 许可。所有 SDK、框架、CLI、Console、文档和网站均采用 Apache License 2.0 许可。
详情请参阅 [NOTICE.md](NOTICE.md)。
标签:API框架, API集成, DNS解析, Docker, MITM代理, Python, Rust, Serverless, SOC Prime, TypeScript, 事件驱动, 任务队列, 函数计算, 分布式系统, 发布/订阅, 可观测性, 可视化界面, 后端开发, 后端架构, 响应大小分析, 多语言支持, 安全插件, 安全测试框架, 安全防御评估, 工作流引擎, 应用程序框架, 开发工具, 开源项目, 无后门, 状态存储, 统一引擎, 编排, 网络流量审计, 请求拦截, 调度器, 跨语言, 路由, 逆向工具, 重试机制