内容
# 修订我的
**为您的代理标记反馈。**
修订我的是一款开源的人机协作设计审查工具。您的代理通过截图、URL、PDF 或 HTML 在 [Laravel MCP](https://laravel.com/docs/mcp) 上捕获 **UI、网站、幻灯片或电子邮件**。您打开审查链接,**标记** 重要的部分,如设计评论,然后批准或请求更改。代理读取结构化的工作包并继续进行。
使用 Laravel、Livewire、 [Flux](https://fluxui.dev/) 、Sanctum 和 Laravel MCP 构建 - 准备好用于 [Laravel Cloud](https://cloud.laravel.com)。
## 功能
- **标记,而不是固定** - 产品 UI 通过标记(玫瑰红色矩形 + M1/M2 徽章)说话。人类标记是权威的;API 密钥保持 `固定` 以保持兼容性。
- **矩形优先审查** - 拖动以勾勒出一个区域或单击以添加一个点注释;使用 +/- 缩放并使用空格 + 拖动(或鼠标中键)平移。
- **第二意见(仅提示)** - 云队列,基于类型的设计检查清单应用于每个截图;可选 Claude(Anthropic)或 OpenAI 兼容视觉,当键入(或指向本地 Ollama)时。天空 S 标记永远不会覆盖您的标记。
- **审查类型** - `ui`、`website`、`presentation`(幻灯片在 UI 中)或 `email`:每个都有自己的检查清单和视觉镜头(电子邮件获取 CTA/暗黑模式/客户端检查,幻灯片获取幻灯片密度检查,网站获取折页/响应式检查)。
- **前后证据** - 代理可以在解决标记时附加 `after_image`;审查页面和板块在解决注释旁边显示前后剪辑。
- **服务器端捕获(可选)** - `create_review` 可以渲染 `page_url`(移动设备 + 台式机)、PDF 幻灯片(每页一次)或原始电子邮件 HTML - 不需要代理截图。
- **代理子代理路径** - `add_findings` 在您查看之前将建议 / a11y / polish 注释放入同一个审查中。
- **工作包 + `next_action`** - 代理知道是等待、应用标记、打开下一个传递还是停止。
- **多传递检查** - 使用 `parent_id` 创建 `create_review` 以传递 2+ 后,您请求更改。
- **尝试令牌,无需帐户** - 主页上的单击令牌;粘贴 MCP 配置以获取 ChatGPT、Claude 或 Cursor。
- **秘密审查链接** - 人类打开 `/r/{token}` 无需注册。
## 在任何项目上尝试(~2 分钟)
1. 打开托管应用(部署后您的 `*.laravel.cloud` URL)。
2. 点击 **获取尝试令牌**。
3. 复制您的客户端的 MCP 配置(ChatGPT、Claude 或 Cursor)。
4. 请求您的代理捕获工作(截图、URL、PDF 幻灯片或电子邮件 HTML)并调用 `create_review`。
5. 打开审查链接,标记反馈,批准或请求更改。
6. 请求代理调用 `get_review` 并遵循 `next_action`。
人类审查者无需帐户。
## MCP 工具
| 工具 | 目的 |
|------|---------|
| `create_review` | 标题 + 一个来源 - `images`、`capture_url`(渲染 `page_url`)、`pdf` 或 `html` - (+ 可选 `type`、`page_url`、`parent_id`)→ 审查 URL;队列第二意见 |
| `get_review` | 工作包 + `next_action`(`wait_for_human` / `apply_pins_then_next_pass` / `done`)|
| `list_reviews` | 此尝试令牌的近期审查 |
| `add_screenshot` | 将截图附加到开放审查 |
| `add_findings` | 代理子代理 - 将建议 / a11y / polish 推入审查 |
| `resolve_marks` | 代理在人类标记上的进度:`in_progress` → `resolved`(+ 注释,可选 `after_image`);从不 `verified` |
| `request_second_opinion` | 重新队列云检查清单(+ 视觉如果键入) |
提示:`design_checkup_loop` - 完整的代理 ↔ 人类检查循环。
截图接受 **https URL**、**data URL** 或 **base64**。
**术语:** UI 副本使用 *标记*;JSON 仍然使用 `work_packets.pins`、`related_pin` 和 `apply_pins_then_next_pass`。第二意见仅是建议 - 请参阅 [docs/SECOND-OPINION.md](docs/SECOND-OPINION.md)。
### MCP 配置(Cursor 示例)
在您从主页获取尝试令牌后:
```json
{
"mcpServers": {
"revisemy": {
"url": "https://YOUR-APP.laravel.cloud/mcp/revisemy",
"headers": {
"Authorization": "Bearer YOUR_TOKEN"
}
}
}
}
```
主页还复制了 Claude Code 和 ChatGPT 的配置。相同的 URL + Bearer 头适用于任何 MCP 主机 - 请参阅 [docs/CONNECTORS.md](docs/CONNECTORS.md)。
### REST API(相同身份验证)
- `POST /api/try-token` - 创建尝试工作区 + 令牌
- `POST /api/reviews` - `{ "title", "context?", "type?", "page_url?", "parent_id?", "images"|"capture_url"|"pdf"|"html" }`
- `GET /api/reviews/{id}`
- `GET /api/reviews`
- `POST /api/reviews/{id}/screenshots` - `{ "image" }`
- `POST /api/reviews/{id}/findings` - `{ "findings": [...] }`
- `POST /api/reviews/{id}/marks/resolve` - 与 `resolve_marks` 相同的有效载荷
- `POST /api/reviews/{id}/second-opinion` - 可选 `{ "screenshot_index" }`
## 本地开发
```bash
composer install
cp .env.example .env
php artisan key:generate
touch database/database.sqlite
php artisan migrate
php artisan storage:link
npm install && npm run build
php artisan serve
```
访问 `http://127.0.0.1:8000`,获取尝试令牌并创建审查。
## 在 Laravel Cloud 上部署
1. 将此仓库推送到 GitHub。
2. 在 [Laravel Cloud](https://cloud.laravel.com) 中:**新建应用程序** → 导入仓库。
3. 附加 **Postgres** 和 **对象存储**。
4. 设置环境变量:
- `APP_NAME=ReviseMy`
- `FILESYSTEM_DISK` / `REVISEMY_DISK` 到云对象存储磁盘
- `APP_URL` 到您的 `https://….laravel.cloud` URL
- 启用队列工作者(`QUEUE_CONNECTION`)
- 可选 `ANTHROPIC_API_KEY`(或 `OPENAI_API_KEY`)用于视觉第二意见 - `REVISEMY_VISION_PROVIDER=auto` 在设置两者时优先使用 Claude
- 可选免费本地视觉:运行 Ollama,设置 `REVISEMY_VISION_PROVIDER=openai`,`REVISEMY_OPENAI_BASE_URL=http://localhost:11434/v1`,和 `REVISEMY_OPENAI_MODEL=llama3.2-vision`(空白密钥即可)。本地/开源模型提供有用的提示,而不是 Claude/GPT-4o 质量。
- 可选 `REVISEMY_CAPTURE_DRIVER=hosted` + `REVISEMY_CAPTURE_ENDPOINT`/`REVISEMY_CAPTURE_KEY`(Browserless 兼容 API)用于服务器端 URL/电子邮件/PDF 捕获 - 云容器没有 Chrome,因此在那里使用托管驱动程序
- 可选 Reverb(`BROADCAST_CONNECTION=reverb` + `REVERB_*`/`VITE_REVERB_*`)用于实时更新 - 没有它,UI 会轮询
5. 部署。 从云命令运行迁移:`php artisan migrate --force`
6. 用您的 `https://….laravel.cloud` 首页 URL 回复比赛。
## 自托管
将 MCP 指向您自己的源。 在生产中为截图使用 S3 兼容存储。内置速率限制和 7 天审查过期。
对于免费的像素视觉,无需云 API 密钥,请将 `REVISEMY_OPENAI_BASE_URL` 指向 Ollama(或另一个 OpenAI 兼容的 `/v1` 主机)如 `.env.example` 中所示。
## 技术栈
- Laravel 13
- Livewire 4 + Flux UI
- Laravel MCP(Web 端点)
- Laravel Sanctum 尝试令牌
- SQLite + 对象存储
## 文档
- [CONNECTORS.md](docs/CONNECTORS.md) - ChatGPT / Claude / Cursor 打包和 MCP 应用内联审查
- [SECOND-OPINION.md](docs/SECOND-OPINION.md) - 第二意见,代理子代理发现,工作包
- [DEPLOY.md](docs/DEPLOY.md) - Laravel Cloud 部署
- `/llms.txt` - 代理站点索引(在您的部署源上)
- `/sitemap.xml` - 搜索引擎的公共页面
## 许可证
MIT