HA

heretek-ai/agency-control-plane

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

0 stars 质量 47 趋势 20

舰队控制平面在孤立的 Git / JJ 工作树中运行编码工人(OpenCode v2 服务器),允许人工通过聊天侧边栏引导一个长寿命的 Director 会话,并对每个工人进行门禁......

概览

舰队控制平面在独立的 Git / jj 工作树中运行编码工人(OpenCode v2 服务器),允许人工从聊天侧边栏引导一个长寿命的 Director 会话,并将每个工人差异通过固定的人类密钥绑定为 Ed25519 签名。一个暗色模式的 WebUI 通过五个用户体验支柱显示整个舰队。 需求:Bun 1.4.2、Git 和 Opencode CLI(v2,opencode serve)在 PATH 上配置了提供者。可选:搭载 JetStream 的 NATS 服务器。 调度员标志(也在调度员/src/main.ts的头部中记录): 1. 消息发送到一个长期存在的OpenCode会话(agent director),该会话在仓库中启动,拥有自己的独立OpenCode数据库。回复会在聊天中显示。卡片仅由Director发出的围栏区块创建,并通过zod验证(严格;未知字段、错误的DEP或无效JSON不生成任何东西,并在聊天中报告): 任务 [{“key”:“api”,“title”:“Query API”,“objective”:“...”,“paths”:[“src/api/”],“acceptance”:[“...

概述(AI 翻译)

舰队控制平面运行编码工人(OpenCode v2服务器) 孤立的Git / jj 工作树,允许人类引导一位长寿命的Director 会话来自聊天侧边栏,每个工作人员都被关在一个后面。 Ed25519 签名,来自固定的人类密钥。一个暗模式 WebUI 显示 整个车队通过五大用户体验支柱。

跑它

需求:Bun 1.4.2、Git 以及 opencode CLI (v2, [opencode serve) 在PATH上,配置了提供者。可选:一个NATS服务器,且 捷流。

调度员标志(也在dispatcher/src/main.ts的头部中说明):

旗帜 / 环境 默认 含义
--repo / FLEET_REPO cwd 舰队使用的仓库
--state-dir / FLEET_STATE_DIR ~/.local/state/agency-control-plane SQLite board + 工作树寄存器 ([dispatcher.db, WAL, busy_timeout=15000), worktrees/, audit.jsonl, human.pub
--port / FLEET_PORT 7600 环回端口(仅绑定127.0.0.1)
--human-pub /human.pub 置顶的人类公钥。缺少或无效的→批准被禁用,批准路径回答为503(失败关闭)

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

Agency Control Plane — Fleet Dispatcher Daemon + High-Fidelity WebUI

The Fleet Control Plane runs coding workers (OpenCode v2 servers) in isolated Git / jj worktrees, lets a human steer a long-lived Director session from a chat sidebar, and gates every worker diff behind an Ed25519 signature from a pinned human key. One dark-mode WebUI shows the whole fleet through five UX pillars.

Run it

Requirements: Bun 1.4.2, Git, and the opencode CLI (v2, opencode serve) on PATH with a provider configured. Optional: a NATS server with JetStream.

bun install --frozen-lockfile --ignore-scripts

# 1. The human approval key (once). Same format as epistemic-factory es-core:
#    human.key.enc (scrypt + AES-256-GCM sealed Ed25519 key, 0600) + human.pub.
bun run keygen -- --out ~/.local/state/agency-control-plane
#    Already have an es-core key? Point the dispatcher at it instead:
#    --human-pub /path/to/human.pub (or put human.pub in the state dir).

# 2. Build the WebUI and start the dispatcher on the repository to work on.
bun run build:web
bun run dispatcher -- --repo /path/to/repo --port 7600
#    (or `bun run serve -- --repo ...` to build and start in one go)

# 3. Open http://127.0.0.1:7600 — the UI and /api share one loopback origin.

Dispatcher flags (also documented in the header of dispatcher/src/main.ts):

Flag / env Default Meaning
--repo / FLEET_REPO cwd Repository the fleet works on
--state-dir / FLEET_STATE_DIR ~/.local/state/agency-control-plane SQLite board + worktree register (dispatcher.db, WAL, busy_timeout=15000), worktrees/, audit.jsonl, human.pub
--port / FLEET_PORT 7600 Loopback port (never binds anything but 127.0.0.1)
--human-pub /human.pub Pinned human public key. Missing or invalid → approvals are disabled and the approval routes answer 503 (fail closed)
--worker-cmd / FLEET_WORKER_CMD opencode serve --port 0 --hostname 127.0.0.1 Worker server command (JSON array or words)
--director-cmd / FLEET_DIRECTOR_CMD worker command Director server command
--director-agent director OpenCode agent of the Director session (define it in your OpenCode config)
--task-agent server default OpenCode agent for task sessions
--fleet-cap 4 Max concurrent workers (scheduler cap)
--per-expert-cap fleet cap Max concurrent workers per expert when its role pack sets no maxConcurrent
--roles-dir / FLEET_ROLES_DIR unset Role packs for expert tasks (see Role packs below)
--tier-models / FLEET_TIER_MODELS unset JSON {"tier-1-opencode": "provider/model", "tier-2-commercial": …, "tier-3-local": …}. New worker sessions run on the active tier’s model; unset tiers use the worker’s default model
--task-timeout-ms 30 min Per-task worker timeout
在 GitHub 查看完整 README

推荐工具

换一个关键词,或者移除筛选条件。

安装

npx skillfish add heretek-ai/agency-control-plane
新手?先看 mcpskill.org 教程 →