singularity-forge/docs/zh-CN/user-docs/web-interface.md
ace-pm b29c12d5e5 refactor(native): rename gsd_parser.rs to forge_parser.rs
Final rebrand: rename remaining Rust source file to complete the gsd → forge
transition. All parser references already use forge_parser after earlier commits.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 14:58:21 +02:00

67 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Web 界面
> 新增于 v2.41.0
SF 提供了基于浏览器的 Web 界面,用于项目管理、实时进度监控以及多项目支持。
## 快速开始
```bash
sf --web
```
这会启动一个本地 Web 服务器,并在默认浏览器中打开 SF 仪表板。
### CLI 参数v2.42.0
```bash
sf --web --host 0.0.0.0 --port 8080 --allowed-origins "https://example.com"
```
| 参数 | 默认值 | 说明 |
|------|--------|------|
| `--host` | `localhost` | Web 服务器监听地址 |
| `--port` | `3000` | Web 服务器端口 |
| `--allowed-origins` | (无) | 允许的 CORS 来源列表,逗号分隔 |
## 功能
- **项目管理**:在可视化仪表板中查看 milestones、slices 和 tasks
- **实时进度**:通过 server-sent events 在自动模式执行期间推送状态更新
- **多项目支持**:通过 `?project=` URL 参数,在单个浏览器标签页中管理多个项目
- **切换项目根目录**:无需重启服务器即可在 Web UI 中切换项目目录v2.44
- **首次引导流程**:可在浏览器中完成 API key 设置和 provider 配置
- **模型选择**:直接从 Web UI 切换模型和 provider
## 架构
Web 界面基于 Next.js 构建,并通过桥接服务与 SF 后端通信。每个项目都会拥有自己的 bridge 实例,以便在并发会话中保持隔离。
关键组件:
- `ProjectBridgeService`:按项目分配的命令路由和 SSE 订阅服务
- `getProjectBridgeServiceForCwd()`:根据项目路径返回独立实例的注册表
- `resolveProjectCwd()`:从请求 URL 中读取 `?project=`,若不存在则回退到 `SF_WEB_PROJECT_CWD`
## 配置
默认情况下Web 服务器监听在 `localhost:3000`。如需覆盖,可使用 `--host``--port``--allowed-origins`(见上面的 CLI 参数)。
### 环境变量
| 变量 | 说明 |
|------|------|
| `SF_WEB_PROJECT_CWD` | 当未指定 `?project=` 时使用的默认项目路径 |
## Node v24 兼容性
Node v24 对类型剥离type stripping做了破坏性改动曾导致 Web 启动时报 `ERR_UNSUPPORTED_NODE_MODULES_TYPE_STRIPPING`。该问题已在 v2.42.0+ 中修复(#1864)。如果你仍然遇到这个错误,请升级 SF。
## 认证令牌持久化
从 v2.42.0 起Web UI 会把认证令牌持久化到 `sessionStorage`,因此页面刷新后不会丢失登录态(#1877)。在此之前,每次刷新都需要重新认证。
## 平台说明
- **Windows**:由于 Next.js webpack 在系统目录上会触发 EPERM 问题Windows 下会跳过 Web 构建。CLI 仍然可完整使用。
- **macOS / Linux**:完整支持。