OpenTracy/OpenTracy
GitHub: OpenTracy/OpenTracy
OpenTracy是一个自我改进的AI代理工具链,通过自主循环和评估套件优化AI代理性能。
Stars: 147 | Forks: 13
# 打开OpenTracy
自我改进的AI代理工具链。您部署一个默认代理,它会从实际使用中学习,
提出自身的改进方案,并在评估和人工批准后才将其上线。
## 它为您提供什么
- 位于 `agent/` 的可训练代理层——仅需一个YAML文件和少量Python文件。
由Claude Code(由工具链驱动)根据实际追踪数据进行变更。
- 一个**自主工程循环**,基于林等人提出的AHE算法(arxiv 2604.25850)建模。
工具链会提出候选修改,对其进行评估,运行测试,并将最优方案作为文件级补丁应用,同时支持低成本回滚。
- 一个类型化运行时,可将 `agent/` 编译为可执行管道,并通过HTTP、MCP、Slack、WhatsApp和可嵌入网页组件提供服务。
- 一套评估套件,包含标准数据集、回归检测和按追踪归因,
让您能清楚看到*为何*某个提议的变更更好(或更差)。
## 快速开始
要求:Python 3.11+,Node 20+,以及一个Anthropic API密钥。
```
git clone https://github.com/OpenTracy/OpenTracy
cd OpenTracy
# 1. 运行时 (端口 8001)
uv sync # or: pip install -e .
cp .env.example .env # then fill in ANTHROPIC_API_KEY
uv run python -m runtime
# 2. 后端网关 (端口 8002) — 新终端
cd backend && npm install && npm run dev
# 3. UI (端口 5173) — 新终端
cd ui && npm install && npm run dev
```
打开 。界面将直接进入进化模式——无需登录,
无需注册。开源版在设计上仅以单租户模式在本地主机运行。
## 架构
| 目录 | 作用 |
|------------|--------------------------------------------------------------|
| `agent/` | 可训练层。YAML + Python。由工具链进行变更。 |
| `techniques/` | 层类型目录(RAG、重排序、路由)。只读。 |
| `runtime/` | 将 `agent/` 编译为管道并提供服务。 |
| `evals/` | 损失函数。包含标准数据集、套件、运行器和归因分析。 |
| `experiments/` | 候选配置 + 结果。训练工作区。 |
| `harness/` | 优化器:提出者、评估者、批准者、执行器、回滚器。 |
| `ml/` | 基于累积数据训练的模型。 |
| `ledger/` | 仅追加审计日志。 |
| `traces/` | 运行时累积器(对话、标签、标记)。 |
| `corpora/` | 知识累积器(含使用统计的RAG内容)。 |
| `policies/`| 人工为工具链设定的规则。 |
| `backend/` | 请求服务层(API、渠道)。 |
| `connectors/`| 出站集成。 |
| `ui/` | 前端(React + Vite + TS)。 |
循环流程:
```
traces/ → evals/ → harness/proposer/ → harness/critics/
↓
harness/synthesizer/ ↔ experiments/candidates/
↓ (iterate)
harness/approver/ → agent/ (live) → traces/
```
工具链会变更 `agent/`,通过API追加到 `traces/` 和 `ledger/`,并
摄取到 `corpora/` 中。其他部分均为框架。有关权威允许列表,
请参阅 `config/claude_code.yaml`。
开发语言:Python(`harness/`、`runtime/`、`evals/`、`ml/`、`techniques/`),
TypeScript(`backend/`、`ui/`)。
## 分发模式
| 模式 | 适用场景 | 特点 |
|----------------------|------------------------------|--------------------------------------------------------------------------------------------------|
| **OSS本地版** *(默认)* | 克隆后供自己或单个团队使用。 | 单租户。无需登录。所有内容位于项目根目录。 |
| **托管/多租户版** | 服务于多个组织的托管部署。通过 `OPENTRACY_MULTI_TENANT=1` 启用。 | 按租户隔离命名空间于 `tenants//…` 下,基于Firebase的登录,每个租户的Bearer令牌,KMS加密的自带密钥。需要私有的 `opentracy-infra` 兄弟仓库。 |
仅托管版代码受环境变量标志控制,未启用时不产生任何开销。
## 配置
完整配置项列表请参阅 [`.env.example`](.env.example)。最低运行要求是设置 `ANTHROPIC_API_KEY`。
## 贡献
欢迎提交PR。详见 [CONTRIBUTING.md](CONTRIBUTING.md)。
## 许可
MIT — 详见 [LICENSE](LICENSE)。
标签:AHE算法, Anthropic API, Apex, BYOK支持, Claude集成, HTTP服务, MCP协议集成, MITM代理, Node.js开发, Python开发, Slack集成, Web小部件, WhatsApp集成, YAML配置, 人工智能, 人类审批, 代理训练, 代码生成, 回归检测, 实时跟踪, 工程优化, 批准流程, 提议机制, 机器学习, 渗透测试工具, 用户模式Hook绕过, 自主代理, 自主工程循环, 自我改进系统, 评估套件, 评估机制, 评估框架, 跟踪归因, 软件工程自动化, 逆向工具, 部署流程, 黄金测试集