- 节点循环:配方开局直坐 DAG 第一步;验收后先问下一步意向,再确认开干并可钉编排参数;「按意见修改」只重跑当前节点。 - 询问分流:能力 opening 走说话面引导,可跳过追问按题干去重;追问与产物同轮挂载,避免拆成两段历史。 - 运行时:补强 revision 重跑、创作流程合并/进度指针、工具循环与 worker 执行;新增运行日志与 web:watch。 - 前端:统一等待态文案与底栏主按钮,完善询问卡/产物验收/呈现壳样式与交互。 - 同步世界模拟器模块提示、编排文档与相关测试。 Co-authored-by: Cursor <cursoragent@cursor.com>
134 lines
5.3 KiB
Markdown
134 lines
5.3 KiB
Markdown
# 游玩呈现壳 · 可微调前端模板
|
||
|
||
> **阶段**:P1 = 定类与契约;**P2** = 程序/样式适配与灌数。
|
||
> 上游:游玩管线 `auditor → gm → narrator`。
|
||
> 创作挂钩:`设计.正文组成` / `设计.监控栏`;终稿 tag 通常 `输出.用户展示`。
|
||
> **创作定位:基于固定壳做适配微调,不是从零设计前端。**
|
||
> 预览:`/shells.html`
|
||
|
||
## 1. 创作怎么做(权威口径)
|
||
|
||
```text
|
||
固定壳(本仓库预置,七种)
|
||
→ 按「要同时看见什么」选 shell_id(不是按好看)
|
||
→ 只改允许的微调轴
|
||
→ 禁止改分区骨架、禁止发明第八种布局
|
||
游玩期:往壳区域灌数;正文随 600~3000 字撑高滚动
|
||
```
|
||
|
||
选壳依据(同时可见关系):
|
||
|
||
| 同时要看见 | 壳 |
|
||
|------------|-----|
|
||
| 只要正文 | `prose` |
|
||
| 正文 + 扫状态 | `chat_monitor` |
|
||
| 大正文 + 弱状态 | `spotlight` |
|
||
| 场面 + 交互物 + 行动 | `turn_panel` |
|
||
| 正文 ‖ 线索对照 | `split_board` |
|
||
| 局面 + 选项 | `choice_dock` |
|
||
| 章正文 + 进度 | `chapter_reader` |
|
||
|
||
预览页 `/shells.html`:主工作面是壳画布;侧栏只换壳;长度/语气在顶栏。
|
||
|
||
## 2. 信息层级与长文容量
|
||
|
||
所有壳共用同一优先级——**改壳只是改谁占主面积**:
|
||
|
||
| 优先级 | 区域 | 视觉待遇 |
|
||
|--------|------|----------|
|
||
| **P0** | `body` | 阅读主轴;**随字数撑高**(单轮按 600~3000 字设计),由页面/消息区滚动 |
|
||
| **P1** | 建议行动 | 要决策时醒目;`choice_dock` 坞 **sticky 贴底** |
|
||
| **P2** | `monitor` | 芯片密排,高度固定矮 |
|
||
| **P3** | `header` / `footer` / `aside` | 辅助;双栏 **aside sticky**,长文仍可对照 |
|
||
|
||
**不要**把正文塞进固定高度小框再内部硬滚(除非外层消息流另有约束)。
|
||
选壳时问:用户 80% 时间是在「读长场面」还是「做选择」还是「对线索」?
|
||
|
||
## 3. 七种常用壳
|
||
|
||
| id | 中文 | 主面积给谁 | 主场景 |
|
||
|----|------|------------|--------|
|
||
| `prose` | 纯散文 | 正文 ≈ 全屏 | 只要沉浸、不要 HUD |
|
||
| `chat_monitor` | 对话 + 监控 | 正文(聊天气泡区) | 网恋 / 日常 / 轻 AIRP |
|
||
| `spotlight` | 场面主视 | 正文极大(追光) | 电影感一幕、少机制 |
|
||
| `turn_panel` | 回合面板 | 中栏场面 + 侧栏交互 | 资源/检定/跑团 |
|
||
| `split_board` | 双栏看板 | 左正文 · 右线索 | 调查、推理 |
|
||
| `choice_dock` | 选择坞 | 正文 + **底部大行动坞** | 选项驱动 / AVG 关口 |
|
||
| `chapter_reader` | 章节阅读 | 阅读柱 + 窄进度侧栏 | 长文 / 爽文 |
|
||
|
||
旧规格未写 `shell_id` → 运行时视为 `prose`。
|
||
|
||
### 3.1 各壳固定槽位
|
||
|
||
| 区域 id | prose | chat_monitor | spotlight | turn_panel | split_board | choice_dock | chapter_reader |
|
||
|---------|-------|--------------|-----------|------------|-------------|-------------|----------------|
|
||
| `monitor` | — | 顶栏芯片 | 顶栏芯片 | 顶栏 | — | 可选顶栏 | — |
|
||
| `header` | — | — | — | 回合号 | 场景抬头 | — | **章题** |
|
||
| `body` | **主** | **主聊** | **主舞台** | **场面** | **主读** | **局面** | **章正文** |
|
||
| `footer` | 可选弱 | 可选 | 可选 | 检定摘要 | 可选 | 可选 | 作者注 |
|
||
| `aside` | — | — | — | 交互物 | **线索栏** | — | **进度** |
|
||
| `hidden` | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 | 变量段 |
|
||
|
||
### 3.2 微调轴
|
||
|
||
| 轴 | 说明 |
|
||
|----|------|
|
||
| `monitor_fields` | 监控栏字段子集 |
|
||
| `block_labels` | 可见块显示名(如 body→「短信」) |
|
||
| `show_suggested_actions` | 是否渲染建议行动;`turn_panel` / `choice_dock` 默认开 |
|
||
| `tone_chrome` | `default` / `messenger` / `book` / `terminal` |
|
||
| `empty_states` | 空态文案 |
|
||
|
||
**禁止**创作期输出完整 CSS;**禁止**自造 `shell_id`(要新壳改仓库模板)。
|
||
|
||
## 4. 与创作产物的映射
|
||
|
||
```text
|
||
设计.正文组成
|
||
正文.呈现壳.shell_id → 七选一
|
||
正文.呈现壳.微调 → 只填允许轴
|
||
正文.可见块[] → 挂到壳已有区域
|
||
|
||
设计.监控栏 → monitor 字段表
|
||
运行.本轮.裁决 → body 事实;suggested_actions → 行动区
|
||
输出.用户展示 → present.v1 或纯 Markdown(→ body)
|
||
```
|
||
|
||
## 5. 游玩灌数契约
|
||
|
||
```json
|
||
{
|
||
"schema": "present.v1",
|
||
"shell": "spotlight",
|
||
"blocks": {
|
||
"monitor": { "地点": "天桥下", "张力": "紧" },
|
||
"body": "……用户可读正文……"
|
||
},
|
||
"meta": { "suggested_actions": ["先开口", "递伞"] }
|
||
}
|
||
```
|
||
|
||
- `monitor` 宜为 **短键值对象**(程序渲染成芯片),不要长文。
|
||
- `prose`:只需 `body` 字符串或 Markdown。
|
||
|
||
## 6. 创作期只做适配
|
||
|
||
1. **选壳**:按「主面积给谁」(§2)七选一。
|
||
2. **微调**:字段、显示名、行动开关、tone、空态。
|
||
3. **不要**:重画分区、发明区域 id、写 CSS。
|
||
|
||
## 7. P2 适配清单
|
||
|
||
| 序 | 项 | 状态 |
|
||
|----|----|------|
|
||
| 1 | `web/` 壳渲染器 + 层级样式 | **已接** `present-shells.js` + `styles.css` |
|
||
| 1b | 壳预览页 | **已接** `/shells.html` |
|
||
| 2 | 正文组成微调进 SessionView | **已接** |
|
||
| 3 | present.v1 解析 | **已接** `present-packet.ts` |
|
||
| 4 | narrator 按壳输出 | **已接** |
|
||
| 5 | 正文组成产出壳适配单 | **已接** |
|
||
|
||
---
|
||
|
||
修订:2026-08-13 · 七壳;明确信息层级与主面积。
|