引入游玩呈现壳与旁观维护槽,完善结算合并、十分制自评与技能产物 UI。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-12 02:03:29 +08:00
parent 94f67fa744
commit 120d67ee82
46 changed files with 2513 additions and 236 deletions

View File

@@ -1,8 +1,8 @@
# 正文组成
> 技能文档。程序只切割下方 **fence 块**`##` 标题仅供人读。
> **创作定位:基于固定呈现壳做适配微调**`docs/play-presentation-shells.md`)。
> 产物外壳:`docs/context-fragment-design.md`。
> **不是**程序 API/JSON schema 格式;钉的是用户最后看见的「一封信怎么拼起来」。
> 旧称:设计回复格式。
## meta
@@ -12,37 +12,37 @@ name: 正文组成
id: reply-format
artifact: 设计.正文组成
declaration: >
钉用户可见的一轮回复由哪些块、何顺序组成(抬头/日期/正文/监控栏/文末吐槽等)
含对 LLM 隐藏的变量维护段与前端拆分/美化提示;不等于程序报文格式
基于四大固定呈现壳做适配微调(选 shell_id + 填字段/显示名/开关等)
产出壳适配单;禁止从零发明布局或完整 UI
when: |
用户看见的不该只是「一整段散文」,需要版式块(抬头、监控栏、文末小块等)
或需要约定隐藏变量段供模型维护表格;或需要前端分区渲染时。
需要为本局选定呈现壳,或微调监控字段/块显示名/建议行动开关时
或需要约定隐藏变量段时。
when_not: |
纯单段叙事、明确不要分块版式 → 可不排(转述直接出一段即可)。
只谈文风遣词 → 「叙事指南与故事推进」。
只钉监控字段清单、版式已定 → 「设计监控栏」。
块结构未定时不要先空谈 CSS 细节
明确只要纯散文 → 可不排(运行时默认 prose)。
只谈文风 → 「叙事指南与故事推进」。
壳已定、只筛监控字段明细 → 「设计监控栏」。
不要在本步设计新布局或写 CSS。
boundary: |
本技能:用户可见组成(块清单、顺序、可见/隐藏、前端拆分意图);产出 context-fragment.v1
不是 OpenAI/函数调用报文,也不是结算包 schema
设计监控栏:监控栏内有哪些可变字段——可本步给骨架,细则可交监控栏技能
叙事指南与故事推进:怎么写正文——本步定「正文」块在版式里的位置与职责,不重写文风。
变量设计:真值如何变——本步只约定隐藏段如何承载变更声明,不写 side_effects。
本技能:壳适配单shell_id + 微调轴 + 块挂到壳已有区域)
布局骨架只读docs/play-presentation-shells.md
设计监控栏:字段表细则。叙事指南:文风。变量设计:真值规则
feeds: narrator
```
## opening
```opening
用户每一轮「看见的东西」希望像什么?(想到什么写什么)
本局在固定呈现壳上做适配(不是设计新界面)。
1. 由哪些部分组成?什么顺序?
例:抬头 + 日期/地点 + 正文;或正文 + 监控栏;或文末再加小吐槽/模拟书评……
0. 四选一壳:
· prose — 纯散文
· chat_monitor — 对话 + 顶栏监控
· turn_panel — 回合面板
· chapter_reader — 章节阅读
2. 有没有要「藏起来给模型/程序看、用户界面默认不展示」的段?
例:用特殊标记包住的变量变更,方便拆解维护表格。
3. 前端要不要拆成多个区域美化?(监控栏固定顶栏、正文滚动、文末折叠……)没有就说没有。
1. 要微调什么监控字段、块称呼、要不要建议行动、tone_chrome…
2. 有没有隐藏段给模型/程序维护变量?
3. 不要谈「再发明一种全新布局」。
```
## task
@@ -50,42 +50,38 @@ feeds: narrator
```task
你正在执行「正文组成」。产物必须是 **context-fragment.v1** JSON写入「设计.正文组成」。
本步设计的是**用户最后看见的内容版式**——像一封信由收信人、正文、日期、发信人组成;
也可以是抬头、日期、地点、正文、监控栏、文末吐槽、小故事、模拟书评等
**不是**程序接口格式
本步 = **壳适配单**:四大壳里选一个,只改允许的微调轴。
权威:`docs/play-presentation-shells.md`
禁止从零设计分区、禁止自造 shell_id、禁止完整 CSS
执行顺序:
1. 读美学呈现与叙事指南:继承人称/终稿由谁写;不重开文风问卷。
2. 列出「可见块」:每块职责、顺序、是否可空、由谁填充(转述/程序拼装/监控栏技能)
3. 若有监控栏:写清它在版式中的位置与职责;字段级细则可引用或留给「设计监控栏」(只留会变、要盯的信息)。
4. 若有隐藏段:写清标记约定(如正则/定界符)、内容用途(变量变更声明)、用户侧默认隐藏、模型须输出以便拆表
5. 写「前端拆分与美化」意图(区域、可否折叠、是否 HTML 片段);无则说明纯 Markdown/纯文本
6. 自评 + 追问;输出 JSON。禁止写最终 context `order`
1. 读美学/叙事:继承人称终稿归属;不重开文风问卷。
2. **选 shell_id**;说明为何是这个壳而不是另三个
3. 可见块:只挂到该壳已有区域;写显示名与职责(适配文案,不是新分区)。
4. 监控栏:字段意图(细则可交「设计监控栏」);无 monitor 的壳写「不启用」
5. 隐藏段(若有):定界与用途
6. 填「呈现壳.微调」;前端拆分区域必须与壳一致
7. 自评 + 追问;禁止写 context `order`。
summary`正文组成 · …`(点题主要块序)
summary`正文组成 · 适配 {shell_id} · …`
```
## principles
```principles
1. 用户看见的版式,不是程序报文
用「信/报纸/游戏 HUD」类比思考块禁止把本步写成 API 字段说明书
1. 创作 = 选壳 + 适配微调
不是 UI 创意;布局骨架只读
2. 块要少、每块有职责
宁缺毋滥;装饰块必须服务体验(吐槽/书评若只是玩梗也要写清触发与长度)
2. 只改微调轴
字段、显示名、开关、tone_chrome、空态不改分区、不增区域、不自造壳
3. 监控栏 ≠ 名片卡
监控的是会变、影响决策或沉浸的信息(好感、体力、场景可交互对象、攻略目标状态…)
主角「姓名」「性别」等几乎不变的内容默认不要进监控栏(绝大多数局)。
只盯会变、影响决策或沉浸的信息。
4. 隐藏段服务维护,不污染阅读
变量变更等可用定界符包住,供 LLM 输出、程序/旁路拆解入表;用户 UI 默认不渲染或折叠。
5. 前端意图只写「拆哪里、干什么」
可提:顶栏监控 / 正文区 / 文末折叠 / 简易 HTML 片段。不写完整 CSS 工程
6. 与转述、变量分工
正文块文风归叙事指南;真值规则归变量设计;本步定拼装契约。
5. 与转述、变量分工
文风归叙事指南;真值归变量设计;本步只交壳适配契约
```
## probe
@@ -93,8 +89,8 @@ summary`正文组成 · …`(点题主要块序)。
```probe
每轮 12 点。
优先:必须有哪些可见块;监控栏要不要、盯什么类型信息;隐藏变量段要不要及标记长什么样;前端要不要分区
不追问:完整 CSS、事件池 schema、文风遣词细节(除非块职责不清)
优先:选哪个壳;微调哪些字段/显示名;隐藏段要不要。
不追问:新布局、完整 CSS、事件池 schema、文风遣词。
```
## output
@@ -103,30 +99,41 @@ summary`正文组成 · …`(点题主要块序)。
{
"schema": "context-fragment.v1",
"技能": "正文组成",
"brief": "一句话:用户看见的主要块序",
"brief": "一句话:壳 + 主要块序",
"mount": ["narrator"],
"稳变": "stable",
"正文": {
"依据的体验与呈现": [
"从美学/叙事继承的呈现要点"
],
"版式隐喻": "例:一封信 / 网文章节页 / 游戏回合面板 / 无(纯散文)",
"呈现壳": {
"shell_id": "prose|chat_monitor|turn_panel|chapter_reader",
"为何选它": "一句话",
"微调": {
"tone_chrome": "messenger|terminal|book|default",
"show_suggested_actions": true,
"block_labels": {},
"empty_states": {}
}
},
"版式隐喻": "给人读的比喻;程序以 shell_id 为准",
"可见块": [
{
"块id": "英文 kebab 或中文短名,同局稳定",
"区域": "monitor|header|body|footer|aside",
"显示名": "用户可理解的标题;可无标题则空",
"职责": "这块给用户什么信息",
"顺序": 1,
"可空": true,
"填充方": "叙事转述|程序拼装|监控栏|其它",
"内容形态": "散文|短列表|键值行|HTML片段|其它",
"内容形态": "散文|短列表|键值行|其它",
"示例": "可选一句/三行示意"
}
],
"监控栏锚点": {
"本局是否启用": "是|否",
"在可见块中的块id": "若启用则指向可见块之一",
"职责摘要": "盯哪些类信息(详表见设计.监控栏或本步字段草稿)",
"职责摘要": "盯哪些类信息",
"字段草稿": [
{
"名": "会变且值得盯的字段",
@@ -138,8 +145,8 @@ summary`正文组成 · …`(点题主要块序)。
"隐藏段": [
{
"段id": "variable-delta",
"用途": "变量维护语句(与「变量设计.维护语句约定」同构),供程序拆进变量.当前",
"定界或正则约定": "例:<<<VARS>>>...<<<END>>>;形状细节以变量设计为准",
"用途": "变量维护语句,供程序拆进变量.当前",
"定界或正则约定": "例:<<<VARS>>>...<<<END>>>",
"用户界面": "默认隐藏|折叠可见|调试可见",
"模型必须输出": true,
"内容形状": "短键值/JSON行非 chance toolcall",
@@ -150,17 +157,18 @@ summary`正文组成 · …`(点题主要块序)。
"需要前端分区": "是|否",
"区域": [
{
"区域id": "monitor|body|footer|",
"区域id": "monitor|header|body|footer|aside",
"对应块id": ["…"],
"意图": "固定顶栏|主滚动|折叠文末|…",
"渲染提示": "纯文本|Markdown|受限HTML;勿写完整工程"
"渲染提示": "纯文本|Markdown勿写完整工程"
}
],
"说明": "无分区则写「单流渲染」"
"说明": "无分区则写「单流渲染」(通常 prose"
},
"拼装与终稿": {
"终稿tag": "通常 输出.用户展示",
"拼装方": "叙事转述一次写出各块|程序按块拼接|混合",
"推荐灌数": "分块壳优先 present.v1prose 可为纯 Markdown",
"与裁决包关系": "转述读 settlement 再填各块;隐藏段可含 variable_changes 镜像"
}
},
@@ -168,18 +176,18 @@ summary`正文组成 · …`(点题主要块序)。
"维度": [
{
"名": "可见完备",
"分数": 0,
"分数": 8,
"说明": "用户该看见的块是否齐、顺序是否服务体验"
},
{
"名": "监控克制",
"分数": 0,
"说明": "监控栏是否只盯会变信息;无姓名性别等死字段堆砌(若无监控栏可 N/A"
"分数": 8,
"说明": "监控栏是否只盯会变信息(若无监控栏可 N/A"
},
{
"名": "可实现",
"分数": 0,
"说明": "隐藏段约定与前端拆分是否清楚到可交给转述/程序/前端"
"分数": 8,
"说明": "shell_id 是否在四大壳内;分区与隐藏段是否可交给转述/程序"
}
],
"薄弱点": "一句话"
@@ -200,32 +208,32 @@ summary`正文组成 · …`(点题主要块序)。
硬规则:
1. 合法 JSON含公共三段外壳。
2. 正文键固定:依据的体验与呈现、版式隐喻、可见块、监控栏锚点、隐藏段、前端拆分与美化、拼装与终稿
3. `可见块` 至少 1 条(通常含正文);`隐藏段`/`字段草稿``[]`
4. 禁止把本步写成程序 API schema;禁止 `order`(上下文投影序)
5. 自评:可见完备 / 监控克制 / 可实现。
6. summary`正文组成 · {brief 缩略}`
7. 兼容旧称产物 tag「设计.回复格式」:细化终稿可读新 tag旧局可仍挂旧名
2. 正文须含 `呈现壳.shell_id`(四大之一)与 `微调`;可见块只挂壳已有区域
3. `可见块` 至少 1 条(通常含 body禁止自造区域 id / 第五种壳
4. 禁止程序 API schema、context `order`、完整 CSS
5. 自评:可见完备 / 监控克制 / 可实现=壳适配是否可执行)
6. summary`正文组成 · 适配 {shell_id} · {brief 缩略}`
7. 兼容旧称产物 tag「设计.回复格式」。
## checklist
```checklist
- [ ] 明确是用户可见版式,而非程序报文
- [ ] 可见块有顺序与职责?监控栏未塞不变名片字段
- [ ] 隐藏段(若有)定界与用途清楚?前端拆分有或明确单流
- [ ] 自评三维?未越权重写文风或 side_effects
- [ ] 是「选壳+微调」,不是从零设计布局
- [ ] shell_id 在四大壳内?可见块未超出该壳分区
- [ ] 微调轴已填或明确默认?监控栏未塞死名片字段
- [ ] 隐藏段(若有)定界清楚?未写 CSS 工程
```
## examples
```examples
好:
- 块序:监控栏 → 正文 → 文末吐槽;隐藏段 <<<VARS>>> 维护好感变更
- 书信局:抬头/日期/正文/落款;无监控栏
- 监控只盯体力、攻略目标好感、场景可交互对象——不写主角姓名性别
- 适配 chat_monitor微调监控字段=好感/今日话题body 显示名=「短信」
- 适配 chapter_reader只开 header+bodyaside 关
- 适配 turn_panel开 suggested_actions监控只盯体力/好感
坏:
- 把 settlement.v1 字段表当「回复格式」。
- 监控栏列出姓名、性别、种族等死设定
- 只写「要好看的 UI」无块清单
- 「我们自定义一种左右分栏新界面」。
- 不写 shell_id只写「要好看的 UI」
- 监控栏列出姓名、性别等死设定
```