内容
# 🚀 AgentWorks
**AgentWorks** 是一个用于运行许多自主工作流的 AI 操作平台,适用于组织。定义目标,构建工作流代理,定时运行,并让 Pulse、Auto-improve、Chief of Staff 和仪表盘帮助您通过异常管理,而不是监控日志。
[](https://github.com/manishiitg/coding-agent-loop/releases/latest)


[](#license--architecture-foundations)
## 目标
AgentWorks 适用于希望从少数手动检查的自动化扩展到 **100+ 目标驱动的工作流代理** 的团队。该产品是 AI 运行组织的 操作系统:
- **工作流执行工作**:可重用的代理执行研究、编码、报告、浏览器任务、后台操作和渠道对话。
- **Pulse 保持每个工作流的可靠性**:运行后,它检查工作流是否实际工作,记录 Bug/目标判决,强化操作问题,报告成本/时间,备份,发布,并在有意义的转换时通知。
- **Auto-improve 使工作流朝着目标前进**:按计划,它读取跨运行的证据,刷新过时的报告/学习/KB/db 合同,调整节奏,并在有强有力的证据支持时应用更大的更改。
- **Chief of Staff / Org Pulse 管理整个组织**:它读取工作流证据与 `pulse/goals.html`,审计模型/成本姿态,收获持久内存,并为用户或构建者编写提案建议。
- **仪表盘是操作视图**:它将工作流健康、目标进度、成本、建议和异常合并到一个地方,以便人类管理决策,而不是每个运行。
高级别循环在 [工作流自我改进和报告](docs/workflow/self_improvement_and_reporting.md) 中有详细说明。
## 产品截图
**工作流自动化:计划、运行、报告和监督**

**操作循环:Pulse、Auto Improve、Chief of Staff 和组织目标**

**多 CLI 编码代理:Claude Code、Codex CLI、Cursor CLI 和 Pi.dev**

**工作流自动化工作空间**

**Chief of Staff 和 Org Pulse**

**目标驱动的操作**

**每日操作脉搏**

## 💻 桌面应用程序(macOS)
提供了一个独立的 macOS 应用程序 - 无需 Docker,无需手动服务器设置。每个版本都发布在 [Releases](https://github.com/manishiitg/coding-agent-loop/releases/latest)。
重命名说明:公共产品是 **AgentWorks**,GitHub 仓库现在是 `coding-agent-loop`。一些发布资产和兼容性标识符仍然使用历史名称 `Runloop`,以便现有安装和更新检查保持兼容。以前的 `mcp-agent-builder-go` 仓库 URL 重定向到此仓库,但不应在新文档中使用。
### 安装(一行代码 - 推荐)
```bash
curl -fsSL https://raw.githubusercontent.com/manishiitg/coding-agent-loop/main/install.sh | bash
```
下载最新的 dmg,安装 Mac 应用程序到 `/Applications`,确保 Claude Code/Codex 工具访问使用的 MCP 桥接器安装到 `~/go/bin`,剥离 macOS 隔离标志(无“损坏”警告),并启动应用程序。如果 Go 丢失,安装程序通过 Homebrew 安装 Go;否则,它要求您安装 Go 并重新运行相同的 curl 命令。使用 `RUNLOOP_VERSION=v1.25.6 curl -fsSL … | bash` 固定特定版本。
### 手动安装
1. 从最新版本下载 macOS dmg。在重命名过渡期间,文件可能仍命名为 `Runloop-<version>-arm64.dmg`。
2. 打开 dmg,将应用程序拖到应用程序文件夹。
### 首次启动错误:*“AgentWorks 已损坏,无法打开”*
当前版本是 **未签名且未 notarized**,因此 macOS Gatekeeper 在下载时标记它。应用程序本身是好的 - 您只需要清除 macOS 自动附加到下载文件的隔离标志。
**推荐 - 终端(适用于所有 macOS 版本):**
```bash
xattr -cr /Applications/Runloop.app
```
如果已安装的应用程序已命名为 AgentWorks,请使用:
```bash
xattr -cr /Applications/AgentWorks.app
```
然后双击应用程序。如果 macOS 仍然投诉,也请剥离您下载的 dmg:
```bash
xattr -cr ~/Downloads/Runloop-*.dmg
```
`sudo` **不是**必需的 - 您拥有该应用程序,因为您已将其拖入应用程序文件夹。
**系统设置(有时有效,取决于 macOS 版本):**
对于 Sequoia/Tahoe 上的“损坏”判决,macOS 通常会完全隐藏“Open Anyway”按钮,因此此路径经常不会出现。如果出现:
1. 打开 **系统设置 → 隐私和安全**。
2. 滚动到安全部分。如果您看到 *“AgentWorks 被阻止使用…”* 并带有 **Open Anyway** 按钮,请单击它。
3. 在对话框中确认。macOS 会记住该决定。
如果按钮不存在,请退回到上面的 `xattr` 命令。
### 首次启动 UX
在首次运行时,应用程序会提示两件事情:
1. **工作空间文件夹** - 选择 `workspace-docs/` 的位置(技能、配置、计划、WhatsApp DB、加密提供者密钥)。默认为 `~/Library/Application Support/runloop-desktop/workspace-docs/`。
2. **AUTH_SECRET** - 用于加密 `provider-api-keys.json` 的密钥。如果您从以前的设置迁移,请输入您在那里使用的相同密钥。否则,请选择一个强值并记住它(您将在每台打开此工作空间的机器上需要它)。
之后,通过应用内提供者身份验证流程添加提供者 API 密钥(OpenAI、Gemini、Anthropic 等)。它们在 `<workspace-docs>/config/provider-api-keys.json` 中加密存储。
### 为什么没有签名?
代码签名 + Apple notarization 需要 Apple Developer ID($99/yr),并且在路线图中。直到那时,手动隔离步骤在首次安装时是不可避免的。
---
运行 **Claude Code、Codex、Pi 和开放模型** 在一个系统中。构建视觉工作流,启动复杂的操作器,安排循环作业,通过 **Slack、WhatsApp 和 Web** 将代理对话路由到它们,并将它们的进度汇总到组织目标。
AgentWorks 适用于希望拥有不仅仅是一个聊天框的团队:
- 构建视觉代理工作流和长期运行的操作器
- 混合和匹配最佳编码和推理模型以适应每个步骤
- 安排自动化、循环作业和后台运行
- 跟踪工作流进度以实现真正的目标,而不仅仅是任务完成
- 通过异常管理失败、成本和改进机会
- 让人类参与审批、反馈和升级路径
- 将代理连接到 Slack、WhatsApp、浏览器和 MCP 工具
## 为什么选择 AgentWorks
- **目标驱动的操作**:将工作流与可衡量的目标绑定,然后让 Pulse、Auto-improve 和 Org Pulse 保持证据和建议的最新。
- **默认多模型**:在同一平台上使用 Claude Code、Codex、Pi、OpenAI、Anthropic、Bedrock、Azure、MiniMax、OpenRouter 和开放模型。
- **视觉工作流加实时执行**:在画布上设计工作流,然后使用工具、浏览器自动化、内存和评估内置运行它们。
- **异常管理**:仪表盘显示损坏、不达标、昂贵或值得决策的工作,以便操作员不需要检查每个运行。
- **从一开始就为操作而构建**:从一开始就添加调度、可观察性、验证、审批和安全的 workspace 隔离。
- **协议无关**:支持 MCP,但 AgentWorks 比任何单一协议、提供者或模型供应商都更广泛。
## 你可以构建什么
- **编码工作流**,在 Claude Code、Codex、Pi 和开放编码模型之间委托
- **定时自动化** 用于研究、支持、报告或后台操作
- **人工介入代理**,暂停审批、2FA 代码或操作员反馈
- **Slack 和 WhatsApp 代理**,在仪表盘外继续对话
- **浏览器驱动的工作流**,登录、点击应用程序、收集数据和完成任务
## 旗舰示例
- **[深度研究代理](examples/README.md#1-deep-research-agent)**:源收集、证据审查、定价/基准分析、报告生成。
- **[AI 软件工程师工作流](examples/README.md#2-ai-software-engineer-workflow)**:计划器、编码器、审查器和测试代理,生成补丁和验证笔记。
- **[电子商务运营代理](examples/README.md#3-e-commerce-operations-agent)**:目录/支持审查,政策检查,建议操作和人工审批。
在 [示例](examples/README.md) 中查看工作流蓝图、输出工件和 README 演示 GIF 故事板。
查看 [公共路线图](ROADMAP.md),了解即将到来的 onboarding、memory-aware multi-agent 聊天、workflow notifications、Agent SDK 支持、Pi CLI 和目标/仪表盘改进。
## 适用范围
### 编码和 LLM 模型
- **Claude Code** 通过 `@anthropic-ai/claude-code` CLI 实验模式
- **Codex-style agentic 模型** 通过 OpenAI 和 Azure AI Foundry
- **Pi CLI** 用于 Gemini 和开放模型编码工作流
- **Pi CLI** 通过 `@earendil-works/pi-coding-agent` 使用 Pi 提供者/模型 ID
- **开放源代码和前沿模型** 通过 OpenRouter、Bedrock、Vertex AI 和直接提供者集成
### 渠道、工具和连接器
- **Slack**、**WhatsApp** 和自定义 webhook 基础的聊天界面
- **浏览器自动化** 通过 Vercel Agent-Browser、Playwright 和本地 CDP 桥接
- **MCP 服务器**、本地工具、工作空间文件和自定义连接器
## 为什么团队选择它
- 用坚固的工作流替换脆弱的提示链
- 为每个步骤使用合适的模型,而不是标准化为一个供应商
- 将编码代理、操作自动化和人工审批纳入一个系统
- 发布可监控、评估、改进并随时间推移与组织目标相符的代理工作流
## ⚡ 平台概述
AgentWorks 的核心是 **[工作流系统](docs/workflow/README.md)**,一个有方向的基于步骤的工作流运行时,通过视觉工作流构建器管理和由自我改进/报告层监督。
设计复杂的工作流,完善交互式构建器,运行带有步骤级配置、分层 LLM 选择、确定性预验证、评估运行、调度、成本跟踪和持久运行数据的它们,然后让 Pulse、Auto-improve、Org Pulse 和仪表盘保持系统与目标的一致。
### 🧠 学习、验证和可观察性
超越静态提示,提供内置优化、验证和运行可见性。
- **[学习架构](docs/workflow/learning_architecture.md):** 工作流学习现在以共享的全局技能加上步骤级元数据和保存的脚本为中心,用于脚本步骤。
- **[确定性预验证](docs/workflow/pre_validation_guide.md):** 一个高速、基于代码的验证层,使用 JSON 模式和一致性规则,以零令牌成本和绝对精度验证工件。
- **[评估和基准测试](docs/workflow/evaluation_system.md):** 一个专用测试套件,在隔离环境中执行工作流,以生成性能、成本和准确性指标 - 对于生产准备度至关重要。
- **[Pulse 日志和可观察性](docs/workflow/workflow_monitoring.md):** 每个工作流都保留一个代理策划的 HTML 日志 - **Pulse** - 带有两个实时判决(**Bug**:它是否正确运行;**Goal**:它是否达到其成功标准),一行状态标题,信号图块和最新的发现、决策、成本/时间报告、备份、发布和通知的时间线。
- **[自我改进工作流](docs/workflow/auto_improvement_framework.md):** Auto-improve 读取相同的 Pulse 证据跨运行,保持报告/学习/KB/db 合同新鲜,调整其节奏,并在跨运行证据强有力或备份时应用结构性重构,或在监督更谨慎时记录提案。
- **[Chief of Staff, Org Pulse 和仪表盘](docs/workflow/self_improvement_and_reporting.md):** Org Pulse 读取工作流证据与组织目标,审计模型/成本姿态,编写仅提案建议,并提供一个仪表盘,让操作员跨多个工作流进行异常管理。
- **[成本和日志测量](docs/workflow/cost_and_log_measurement.md):** 跟踪令牌使用、模型成本和执行日志跨工作流阶段、运行、步骤和模型。
- **[持久存储](docs/workflow/persistent_stores_design.md):** 工作流可以为报告、知识库更新和后续分析持久化结构化运行数据。
- **[Swarm 委托](docs/multiagent/sub_agent_delegation.md):** 授权您的主要代理动态生成独立的子代理,并行复杂的研究、编码或数据提取任务,跨分布式群。
- **[任务编排](docs/workflow/todo-task-step-type.md):** 智能子任务路由,自动管理状态、依赖关系和上下文窗口。
### 🛡️ 安全和防护
使用为严格环境设计的确定性控件部署。
- **[FolderGuard](docs/core/folder_guard_system.md):** 运行时读写验证包装工作空间工具,以便代理仅访问每个模式或步骤允许的目录。
- **[多用户身份验证和工作空间隔离](docs/core/multi_user_authentication.md):** 每用户工作空间隔离,用户范围路径和沙盒 shell 执行保护用户免受跨租户污染。
- **[机密](docs/core/secrets.md):** 安全地将凭证注入代理查询、工作流步骤和委托代理,而不在聊天历史或日志中暴露它们。
- **[受限配置模式](docs/core/env-api-key-defaults.md):** 可选锁定提供者/模型配置,以便服务器使用环境注入的 API 密钥(`LLM_CONFIG_LOCKED`)并且凭证永远不会到达浏览器。
- **[安全 MCP OAuth](docs/core/oauth.md):** 用于安全连接企业 MCP 服务器的无缝自动发现 OAuth 2.0 流。
### 👁️ 自动化、连接器和浏览器控制
将代理连接到真实系统和通信渠道。
- **[Vercel Agent-Browser](https://github.com/vercel-labs/agent-browser):** 用于复杂 Web 交互、DOM 分析和视觉定位的高级浏览器自动化引擎。
- **[浏览器系统](docs/core/browser.md):** 涵盖浏览器会话管理、运行时限制和提供者之间的浏览器集成模式。
- **[Bot 连接器](docs/core/bot_connector_system.md):** 通过 Slack、WhatsApp、Web 模拟器和自定义连接器表面公开专用代理会话。
- **[工作流调度](docs/workflow/workflow_scheduling.md):** 在循环调度上运行工作流,具有历史记录、路由和运行状态跟踪。
- **[原生工作空间模式](docs/core/native_workspace_mode.md):** 当首选原生执行而非容器化工作空间模式时,直接对本地文件夹运行工作空间操作。
### 🤝 人工介入操作
在工作流需要审批、干预或额外输入时,让操作员参与其中。
- **[人工反馈系统](docs/workflow/human_feedback_system.md):** 代理可以暂停执行,请求明确的审批、2FA 代码或战略指导,通过实时浏览器通知或视觉仪表盘。
- **[Slack 人工连接器](docs/workflow/human_feedback_system.md#slack-configuration):
- **智能延迟通知**:如果用户在 2 分钟内没有在 UI 中响应,编排器会自动 ping 配置的 Slack 频道。
- **线程对话**:用户可以直接在 Slack 线程中回复,提供所需的信息,然后实时将其反馈到代理的上下文中。
- **多用户协作**:整个团队可以监控代理进度,并在 Slack 中进行干预,而无需打开仪表盘。
### 🧩 LLM 配置和提供者
AgentWorks 是提供者无关的。用户在 UI 中配置已发布的 LLM,然后将它们分配给聊天会话、工作流阶段和工作流层。
- **[LLM 配置和弹性](docs/core/llm_configuration_and_resilience.md):** 已发布的 LLM 带有提供者、模型和模型特定的选项;提供者身份验证单独存储。
- **[分层 LLM 分配](docs/workflow/tiered_llm_allocation.md):** 工作流步骤可以使用分层模型选择,具有单独的阶段 LLM 配置,用于规划、构建者、评估和调试类型的工作。
- **[Azure AI Foundry](docs/core/azure_foundry_integration.md):** 支持 Azure OpenAI 和 Responses API 路由,用于较新的代理模型部署。
- **[基于环境的默认值](docs/core/env-api-key-defaults.md):** 为托管部署提供可选的默认值和锁定服务器端配置。
- **提供者包括 OpenAI 兼容的端点、Anthropic、Google Gemini/Vertex、AWS Bedrock、Azure AI Foundry、MiniMax、OpenRouter 和本地/CLI 支持的代理集成。
#### 🛠️ 本地 CLI 代理
通过 **[MCP Bridge Layer](docs/core/mcp_bridge_layer.md)** 将现有的基于 CLI 的编码代理引入可视化编排器:
* **Claude 代码**: 通过实验性交互会话与 `@anthropic-ai/claude-code` CLI 进行原生集成。
* **Pi CLI**: 多提供商编码代理集成,包括 Gemini 模型。
* **状态持久性**: 支持 `--resume` 功能,允许可视化编排器在 CLI 重启期间保持长时间运行的编码会话。
---
## 🚀 快速开始(本地开发)
### 1. 先决条件
- Go 1.24+
- Node.js 20+ 和 npm
- 根据启用的功能可选的本地工具:Claude 代码、Pi、Codex 兼容的 CLI、浏览器工具、AWS/GCP CLI 等。
### 2. 克隆和配置
```bash
git clone https://github.com/manishiitg/coding-agent-loop.git
cd coding-agent-loop
cp agent_go/env.example agent_go/.env
```
如有需要,请编辑 `agent_go/.env` 以进行本地应用程序/运行时设置。LLM 提供商和 API 密钥在启动后通过应用程序 UI 进行配置,而不是通过将 README 示例编辑到 `.env` 中。
安装依赖项:
```bash
cd frontend
npm ci
cd ../agent_go
go mod download
```
### 3. 在本地运行所有内容
从 `agent_go/` 使用以下命令启动后端、Workspace API、前端和 Electron:
```bash
cd agent_go
./run_server_with_logging.sh --with-workspace --with-frontend
```
默认本地端口:
| 服务 | 默认 URL |
| --- | --- |
| 代理 API | `http://localhost:18743` |
| 工作区 API | `http://localhost:18744` |
| 前端 | `http://127.0.0.1:51733` |
运行程序优先使用这些端口。如果端口已被占用,它会选择下一个可用端口并打印最终 URL。日志写入 `agent_go/logs/`。
### 4. 仅前端开发
在后端和工作区 API 已经运行时使用:
```bash
cd agent_go
./run_server_with_logging.sh --only-frontend
```
这将启动 Vite 和 Electron。当文件 `frontend/public/runtime-config.js` 存在时,它会从中读取 `AGENT_PORT` 和 `WORKSPACE_PORT`。
### 5. 前端构建模式
在不使用 Vite 热重载的情况下,像生产静态构建一样运行前端:
```bash
cd agent_go
./run_server_with_logging.sh --only-frontend --build
```
这会构建 `frontend/`,在前端端口上提供静态输出,并针对该静态服务器启动 Electron。
您可以显式覆盖端口:
```bash
AGENT_PORT=18743 WORKSPACE_PORT=18744 FRONTEND_PORT=51733 ./run_server_with_logging.sh --only-frontend --build
```
### 6. 干净地停止和重启
当运行程序在前台时,按 `Ctrl+C`。脚本停止子进程并打印已释放的端口。
如果启动时端口仍然忙碌,请检查:
```bash
lsof -nP -iTCP:51733 -sTCP:LISTEN
lsof -nP -iTCP:18743 -sTCP:LISTEN
lsof -nP -iTCP:18744 -sTCP:LISTEN
```
### 7. 调试本地 API 流量
后端请求日志写入 `agent_go/logs/`。服务器日志记录 API 启动/结束行,包括状态代码和持续时间,这在前端出现卡顿或同时发出太多请求时非常有用。
有用的检查:
```bash
curl -fsS http://localhost:18743/api/health
curl -fsS http://localhost:18744/api/health
```
### 8. 验证命令
```bash
# 后端编译检查
cd agent_go
go test ./cmd/server -run '^$'
# 前端类型检查
cd frontend
./node_modules/.bin/tsc -b
```
---
## ☁️ 生产部署拓扑
在适合您安全态势的地方部署代理基础设施。
### **1. Azure 虚拟机(最大安全隔离)**
企业部署的推荐拓扑。利用 Azure 虚拟机使用深层 Linux 内核功能(命名空间、`unshare`)实现代理运行之间的绝对文件系统隔离。
```bash
cd deploy/azure/terraform
terraform init && terraform apply
cd .. && ./deploy_vm.sh <VM_IP_ADDRESS> all
```
> **[阅读 Azure 虚拟机部署蓝图](deploy/azure/README.md)**
### **2. Kubernetes(高可用性集群)**
使用标准 Helm 类似的清单进行大规模和高韧性设计。
```bash
./deploy/k8s/scripts/deploy-k8s.sh --build
```
> **[阅读 Kubernetes 部署蓝图](deploy/k8s/README.md)**
---
## 🤝 加入革命
我们正在构建确定性 AI 编排的未来。鼓励贡献!
```bash
# 设置开发防护栏
./scripts/install-git-hooks.sh
# 运行 Go 编排测试套件
cd agent_go && go test ./...
# 扫描机密
./scripts/scan-secrets.sh
```
## Chrome CDP macOS 助手
如果您在 macOS 上使用本地 Chrome(CDP),请从公共 GitHub 脚本安装专用启动器:
```bash
curl -fsSL 'https://raw.githubusercontent.com/manishiitg/coding-agent-loop/main/scripts/install-chrome-cdp-macOS.sh' | bash
```
安装程序下载 `Chrome CDP.app`,将其安装到 `/Applications`,清除隔离属性,在可能的情况下应用本地临时签名,打开应用程序,并检查 CDP 是否在端口 `9222` 上可访问。
macOS 在首次启动时仍可能要求批准。如果它阻止应用程序,请打开 **系统设置 → 隐私和安全**,允许 `Chrome CDP`,然后运行:
```bash
open -a 'Chrome CDP'
```
## 📄 许可证和架构基础
在 MIT 许可证下许可。
**构建于:**
- **[模型上下文协议(MCP)](https://modelcontextprotocol.io/):** AI 工具集成的通用标准。
- **[LangChain Go](https://github.com/tmc/langchaingo):** 高性能 LLM 路由。
- **[React Flow](https://reactflow.dev/):** 节点式可视化编辑的行业标准。
连接信息
猜你喜欢
暂无推荐服务器