内容
# FLUX API 控制面板
用于探索 FLUX API 工作流程的本地工作台,包含提示库、参考图像、FLUX 图像工具、输出溯源、本地资产恢复和代理友好路由。
此仓库是本地优先的。它可以安全地作为开发工具运行,但不是托管的公共图像生成器。通过环境变量或 macOS Keychain 在您的机器上保留付费 FLUX 执行,并仅将可选的 Cloudflare Worker 用作生成输出的令牌保护存档。
## 快速入门
```bash
cd ui
npm install
npm run dev -- --port 3017
```
打开 `http://localhost:3017`。
运行检查:
```bash
cd ui
npm test
npm run lint
npm run build
```
## 功能描述
- 通过本地 Next.js API 路由生成 FLUX.2 图像。
- 从保存的画廊资产运行 FLUX Erase、Virtual Try-On、Outpaint 和 Deblur。
- 管理提示、提示组合、参考角色、成本、积分和运行日志。
- 将输出保存为图像、提示文本、JSON 元数据和 PNG 元数据。
- 恢复本地文件系统输出和可选的 Cloudflare R2/D1 存档记录。
- 将保存的图像矢量化为 SVG/PNG 字形资产。
- 准备参考集合、字幕作业、LoRA 数据集和微调运行。
- 为代理公开本地 HTTP/MCP 兼容路由。
## 密钥处理
UI 永远不会从状态或 MCP 路由返回原始提供商密钥。
付费本地 API 调用解析顺序:
1. 按请求 `apiKey` 覆盖。
2. `BFL_API_KEY`。
3. `FLUX_API_KEY`。
4. 由顶部栏锁定按钮保存的 macOS Keychain 项目。
仅将 `.env.example` 或 `ui/.env.local.example` 用作占位符。不要提交真正的 `.env`、`.env.local`、Worker 令牌、包含帐户详细信息的输出元数据或生成的媒体,除非故意策划为公共示例。
## MCP 和代理
有两个互补的界面:
- **官方 FLUX MCP**,位于 `https://mcp.bfl.ai`,用于 BFL 托管的 OAuth、直接生成、编辑、历史记录和帐户操作。
- **本地仪表板路由/MCP 包装器**,用于提示、运行计划、输出恢复、字形矢量化、参考存档和应出现在此仓库画廊中的工件。
托管 FLUX MCP 设置:
```bash
codex mcp add FLUX --url https://mcp.bfl.ai
codex mcp login FLUX
```
本地仪表板 MCP 包装器:
```bash
cd ui
BFL_DASHBOARD_URL=http://localhost:3017 npm run mcp
```
参见 [MCP 和代理指南](./docs/mcp-agent-guide.md)。
## 可选存档
Cloudflare Worker 将生成的图像、提示和元数据存储在 R2 和可搜索的 D1 行中。仅当您想要持久的远程存档时才配置它:
- [Cloudflare Worker README](./cloudflare/README.md)
- `BFL_ASSET_WORKER_URL`
- `BFL_ASSET_WORKER_TOKEN`
如果没有这些环境变量,UI 将仅限于文件系统/localStorage/IndexedDB。
## 文档
- [控制面板指南](./docs/control-surface-guide.md):扩展设置、功能、本地路由、安全性和发布说明。
- [MCP 和代理指南](./docs/mcp-agent-guide.md):官方 FLUX MCP 加本地仪表板 API 使用。
- [资产工作台准备](./docs/asset-workbench-readiness.md):BFL 资产工作流方向。
- [公共发布检查清单](./docs/public-release-checklist.md):在标记或发布之前需要验证的内容。
- [UI README](./ui/README.md):详细的 Next.js 应用程序说明。
## 仓库地图
- `ui/`:Next.js 仪表板、路由处理程序、本地 MCP 包装器、测试。
- `cloudflare/`:可选的令牌保护 R2/D1 存档 Worker。
- `pipeline/`:Python 提示和生成助手。
- `configs/`:公共安全的示例提示计划,作为教程和烟雾测试固定装置,不作为私有提示库。
- `docs/`:公共实施和发布说明。
- `experiments/` 和 `notes/`:保留的分析/参考资料;在链接到公共发布页面之前请查看。