gastownhall/gascity
GitHub: gastownhall/gascity
Gas City 是一个面向多智能体编码工作流的编排构建器 SDK,通过声明式配置和控制器循环协调多个 AI 编程智能体的任务分配、状态收敛和运行时管理。
Stars: 389 | Forks: 106
# Gas City
Gas City 是一个用于多智能体系统的编排构建器 SDK。它将 Gas Town 中的可复用基础设施提取为一个可配置的工具包,包含运行时提供者、工作路由、公式、指令、健康巡检以及声明式城市配置。
## 来自 Gas Town?
请从 [来自 Gas Town?](docs/getting-started/coming-from-gastown.md) 开始阅读。
它将 Town 角色、命令、插件、协同车队和目录习惯映射到 Gas City 的原语优先模型上,这样有经验的 Gas Town 用户就可以平滑过渡,而无需尝试原样移植整个 Town 架构。
## 您将获得什么
- 在 `city.toml` 中进行声明式城市配置
- 多种运行时提供者:tmux、subprocess、exec、ACP 和 Kubernetes
- 基于 Beads 的工作跟踪、公式、分子、等待和邮件
- 一个将期望状态与运行状态进行协调的控制器/监督者循环
- 针对多项目设置的包、覆盖和设备范围的编排
## 快速入门
请参阅 [docs/getting-started/installation.md](docs/getting-started/installation.md) 上的完整安装指南。
### 前置条件
Gas City 需要您的系统具备以下工具。`gc init` 和 `gc start` 会自动检查这些工具并报告任何缺失项。
| 依赖 | 要求 | 最低版本 | 安装 | 安装 |
|------------|----------|-------------|-----------------|-----------------|
| tmux | 始终 | — | `brew install tmux` | `apt install tmux` |
| git | 始终 | — | `brew install git` | `apt install git` |
| jq | 始终 | — | `brew install jq` | `apt install jq` |
| pgrep | 始终 | — | (macOS 已包含) | `apt install procps` |
| lsof | 始终 | — | (macOS 已包含) | `apt install lsof` |
| dolt | Beads 提供者 `bd` | 1.86.1 | `brew install dolt` | [releases](https://github.com/dolthub/dolt/releases) |
| bd | Beads 提供者 `bd` | 1.0.0 | [releases](https://github.com/gastownhall/beads/releases) | [releases](https://github.com/gastownhall/beads/releases) |
| flock | Beads 提供者 `bd` | — | `brew install flock` | `apt install util-linux` |
| claude / codex / gemini | 按提供者要求 | — | 参见提供者文档 | 参见提供者文档 |
`bd` (beads) 提供者是默认选项。如果要改用基于文件的存储(不需要 dolt/bd/flock),请设置 `GC_BEADS=file` 或在 `city.toml` 中添加 `[beads] provider = "file"`。
通过 Homebrew 安装:
```
brew install gastownhall/gascity/gascity
gc version
```
或者从源码构建(需要 `make` 和 Go 1.25+):
```
make install
gc init ~/bright-lights
cd ~/bright-lights
gc start
mkdir hello-world
cd hello-world
git init
gc rig add .
bd create "Create a script that prints hello world"
gc session attach mayor
```
有关更详细的演练,请从 [教程 01](docs/tutorials/01-cities-and-rigs.md) 开始。
## 文档
该文档目前使用植根于 [`docs/`](docs/README.md) 的 Mintlify 结构。
- [文档首页](docs/index.mdx)
- [安装](docs/getting-started/installation.md)
- [快速入门](docs/getting-started/quickstart.md)
- [仓库结构图](docs/getting-started/repository-map.md)
- [贡献者](engdocs/contributors/index.md)
- [参考](docs/reference/index.md)
- [架构](engdocs/architecture/index.md)
- [设计文档](engdocs/design/index.md)
- [归档](engdocs/archive/index.md)
在本地预览文档:
```
make docs-dev
# 或直接从 repo root
./mint.sh dev
```
## 仓库结构图
- `cmd/gc/`:CLI 命令、控制器连接和监督者集成
- `internal/runtime/`:运行时提供者抽象及实现
- `internal/config/`:`city.toml` schema、包组合和验证
- `internal/beads/`:存储抽象及提供者实现
- `internal/session/`:会话 bead 元数据和等待辅助工具
- `internal/orders/`:定期公式和执行分派
- `internal/convergence/`:有界迭代优化循环
- `examples/`:示例城市、包、公式和配置
- `contrib/`:辅助脚本和部署资产
- `test/`:集成和支持测试包
## 贡献
在提交 PR 之前,请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 和 [engdocs/contributors/index.md](engdocs/contributors/index.md)。
常用命令:
- `make setup`
- `make check`
- `make check-docs`
- `make test-integration`
## 许可证
MIT
标签:AI编程, EVTX分析, PyRIT, TOML, 任务调度, 分布式系统, 响应大小分析, 声明式配置, 多智能体系统, 子域名突变, 容器编排, 工作流自动化, 数字取证, 日志审计, 系统状态协调, 编排引擎, 自动化脚本