内容
Loopr 是一个用于实时仪表盘。你可以将“优秀”的标准写成评估表,由制作者构建一个尝试,检查者根据你的评估表对尝试进行评分,然后两者不断交换,直到所有标准都达到你设定的要求。整个过程在屏幕上实时显示。
这里的部分。在默认模式下,后端从不调用大型语言模型(LLM)。你自己的连接的Claude使用其自己的工具和订阅,通过`loopr` MCP服务器将结果推送到仪表盘上。因此,任何观看的人都可以看到循环实时运行:协调器的输出,它产生的每个子代理,分数趋势,开放的评分后的工件本身。
如果你不想手动驱动它,可以使用自主`LOOPR_MODE=api`),后端使用Anthropic API密钥运行制造者和检查者代理。

## 使用感受
1. 打开仪表盘并编写你的**循环目标**:你想要构建或研究的内容。
2. 添加一个**评估表**。输入几个标准,或导入整个评估表文件。设置目标分数和安全上限,限制迭代次数。
3. 按下**提交**。这将完成的规范交给循环作为运行的任务。
4. 你连接的Claude接收到它,诚实地根据评估表进行工作和评分,并迭代直到达到目标或达到上限。你可以看着它一步步收敛。
## 快速开始
你需要Python 3.11或更新版本,以及Node 18或更新版本。
```bash
git clone https://github.com/homayounsrp/loopr.git && cd loopr
bash scripts/setup.sh # 后端虚拟环境 + 依赖, 前端依赖, 写入.env
bash scripts/start.sh # 后端运行在:8000,前端运行在:3000
```
然后打开 http://localhost:3000 (它会跳转到仪表盘)。
## 连接Claude以驱动仪表盘
仓库自带一个项目范围的`.mcp.json`,所以Claude Code可以自动找到`loopr`服务器。 在Claude Code中打开项目文件夹并批准它( `/mcp` 会列出它)。 它指向后端 http://localhost:8000。
更喜欢手动注册它,还是在不同的机器或端口上运行?
```bash
claude mcp add loopr \
-e LOOPR_URL=http://localhost:8000 \
-- ./backend/.venv/bin/python ./backend/app/mcp_server.py
```
在Windows上,解释器位于 `backend\.venv\Scripts\python.exe`,因此请编辑 `.mcp.json` 中的 `command` 以匹配。
一旦连接成功,只需告诉Claude你想要什么,比如“研究过去3天的AI代理新闻并将其放到仪表盘上。” Claude使用 `get_workspace` 读取作业,完成工作,并使用下面列出的工具将结果推送回去。
### 自动启动(可选)
按下提交按钮也会在后端创建一个持久的作业。它在重启和重新连接后仍然存在,并等待协调器认领,因此提交按钮永远不会丢失。 如果你想让连接的Claude自动认领每个提交的作业,请指向它到轮询器:
```bash
python3 scripts/await_job.py # 阻塞直到你提交,然后认领作业
```
它打印目标、评估表、目标和上限,你的Claude从那里接管。
### MCP服务器暴露的内容
读取作业:`get_workspace`,`get_dashboard_state`,`get_section_html`。
生成和评分:`save_build`,`save_scores`,`save_critique`,`save_findings`。
实时输出:`emit_output`,为协调器提供一个面板,为每个子代理提供其自己的面板。
规划和控制:`set_plan`,`set_gate`(一个人工检查点),`set_schedule`,``。
配置:`setric`,`set,`set_loop_cap`,`send_brief`(。
内存和生命周期:`export_state`,`resume_state`clear_outputs`,`reset`,`stop`。
除非后端正在运行,否则这些都不,因为MCP服务器是对后端的薄封装代理。
## 组件结构
所有智能逻辑都后端。前端是一个薄视图层,通过WebSocket流式传输绘制它。
```
backend domain/models.py P 模型(Snapshot、、Finding等)
state FactoryState:共享状态表、构建、历史、门控、作业队列 engine.py Loopr每个推送、派生状态、广播快照
main.py FastAPI 应用,/ws/factory WebSocket 和 / REST 控制平面
mcp_server.py loopr MCP),为 Claude 客户端api/*
agents/模式下的制造者和检查者步骤,以及 LLM 客户端
.py 从推送的 HTML 中删除 <script>
frontend/src lib/types.ts 的线路类型
lib.ts 一个自动重新 WebSocket 钩子
app/loopr/page.tsx 仪表盘本身
scripts/
setup.sh, start.sh 设置和运行
.py 同样适用于 REST API 的 shell 驱动程序,当连接时
await 等待提交并认(自动启动轮询器)
```
## 配置
`. 由 `.env.example` 在首次设置时创建。 每个值都有一个合理的默认值,因此空文件在客户端模式下运行。
| | 默认值 | 功能---|---|---|
| `LOOPR | `client` | `client` 表示后端不进行,由用户驱动。 `api后端自行运行代理。 `LOOPR_MODEL`-sonnet-4-6` | api 模式下的默认模型 |
| `ANTHROPIC_API_KEY` | 未设置 | 仅在 api 模式下需要。 `ANTHROPIC_AUTH_TOKEN` 中的 OAuth 令牌也适用。 |
前端默认与 `ws://localhost:8000/ws/factory` 通信。 可以使用 `frontend/.env.local` 中的 `_WS_URL` (和 `NEXT_PUBLIC_API 调用)覆盖 MCP 服务器和 `dashctl.py` 读取 `LOOPR,默认为 `http://8000`。