Steer generation rules toward direction pools and readable fills.

Direction-first pools, recipes, and grade manifestation replace enum-tag stuffing; spawned products can be deleted and in-flight runs aborted.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-08 01:02:32 +08:00
co-authored by Cursor
parent 3c751988de
commit e2446b0d97
23 changed files with 2023 additions and 292 deletions
@@ -57,8 +57,7 @@ feeds: design_only
一次 design-step、一场对话、一次验收。参与方式与美学内容在同一步内交叉追问,不要先交「半份交互」再开「半份美学」。
用户已答过追问:把答复写入正文三块,`追问.题目` 优先 `[]`;禁止在「交互范式」与「美学纲领」之间轮流补洞拖验收。核心体验与权限边界够用即可收。
若程序已发出默认问题:用户首答在「用户.worker答复」,开场白在「创作.能力开场白」。禁止重复同一开场;在首答基础上补洞、追问、产出。
开局通常已由配方写入「设计.创作流程」第一步;若「用户.需求」已有首句:程序会跳过默认问题——首句即本步对话,只补真正缺口。
若程序已发出默认问题:用户首答在「用户.worker答复」,开场白在「创作.能力开场白」。禁止重复同一开场;在首答基础上补洞、追问、产出。黑板「用户.需求」里已有的句子当作补充材料采纳,不代替本步引导作答。
```
## principles
@@ -79,7 +78,7 @@ feeds: design_only
```probe
本步只钉三件:站位(代入 / 镜头看哪 / 爽从哪来)、核心感觉(反复感受到什么)、轮转边界(何时等用户)。
用户首句或黑板已有的直接采纳。默认问题已覆盖变造、代入、核心感觉;开场若已跳过,把「用户.需求」首句当答复。已答清的不重问。
用户首句或黑板已有的直接采纳。默认问题已覆盖变造、代入、核心感觉。已答清的不重问。
缺其中一件:在产物「追问」写 1~2 点(建议选项 + 短场景);顶层 askUser 为 null。三件够验收:`追问.题目` 为 `[]`,内容维度等其余键写「未定」或省略。
@@ -49,7 +49,7 @@ modules:
repeatable: true
declaration: >-
要精准格式,或本局原创导致知识中无可参考对象、或难以在无指导情况下生成足够可信内容且故事里还要生成时:写出该对象族怎么生成;
不填最终实例;可按对象反复
创意字段用方向池,不堆枚举词;不填最终实例;可按对象反复
artifact: 设计.生成规则
params:
- key: target
@@ -19,7 +19,7 @@ when_not: |
规则是 `runtime_only` → 不排,游玩期再生成。
只要规则不要预写实例 → 不排。
boundary: |
本技能只做一件事:按指定规则生成 records。规则说怎么写、什么格式、如何用池,就照做。
本技能只做一件事:按指定规则生成 records。规则说怎么写、什么格式、如何用池、填到多厚,就照做。
生成规则:合同制定方——本步不重论证、不修改。
feeds: gm
```
@@ -49,8 +49,14 @@ feeds: gm
- `单条`:本批 `records` 恰好 1 条;规划 `count` 即使写成多条也忽略。
- `同批`:一次交齐互有关系的多条。条数:规划 `count` 有数字用数字,否则用规则「数量」。生成时先对齐「一次生成.关系」(各条如何互指、对立、同场),再填各条字段。
`batch_goal` 只作不违反规则的筛选。缺「一次生成」时按「数量」/ `count` 交 `records[]`(可多条)。
3. 完全按规则的「生成与描写」+「产物格式」+「池」生成 `records`(始终是数组,单条也是长度为 1 的数组;键=schema 顶层字段)。
4. 按规则自检;不合格内部重做。已有产物则追加批次(除非用户要求替换)。
3. 完全按规则的「生成与描写」+「产物格式」+「池」+「分级表现」生成 `records`(始终是数组,单条也是长度为 1 的数组;键=schema 顶层字段)。
池的用法以规则 `池型` 为准:
- **方向**:以方向为主。粒度是词条/方向时,字段值可以就是方向名。粒度是句子时,按该方向写开(方向名可作标签,后面仍要达到地板)。方向说明里的专名不是选项库,不要按专名点菜。
- **元素**:从 `条目` 里抽取或必选,写入绑定字段。
有 **配方**:按配方从各组件取方向,拼进目标字段那一格。
有 **分级表现**:实例只填档位短值;不要把整段表象复制进 record,除非 schema 单独设了表象字段。叙事时按规则展开。
无池的描写字段按 `粒度`/`地板`/`表现`/`工作流` 写到够厚。
4. 按规则自检(含地板:句子级不得只用一个词交差);不合格内部重做。已有产物则追加批次(除非用户要求替换)。
5. 输出 JSON;追问通常 `[]`。
summary:`具体实例 · {对象} · {n}条`
@@ -59,10 +65,11 @@ summary:`具体实例 · {对象} · {n}条`
## principles
```principles
1. 只按规则来:方法、格式、池、数量、一次生成、约束——规则有什么用什么;没有的不发明。
1. 只按规则来:方法、配方、表现、分级表现、格式、池型、数量、一次生成、约束、地板——规则有什么用什么;没有的不发明。
2. 同批先钉记录间关系再填各条;单条不虚构同场关系。始终交 `records[]`。
3. 只交 records:单层 JSON;不交解释、草稿、schema 副本、整池粘贴。
4. 要改合同 → 回「生成规则」,本步不加字段、不改枚举。
3. 只交 records:单层 JSON;不交解释、草稿、schema 副本、整池粘贴。方向以方向为主;说明里的专名不是选项。
4. 句子级描写必须达到该字段 `地板`;词条/档位/数字可以短。句子级不要只丢一个词交差;方向名可以当选项或标签。
5. 要改合同 → 回「生成规则」,本步不加字段、不改枚举、不改池型。
```
## probe
@@ -98,7 +105,7 @@ summary:`具体实例 · {对象} · {n}条`
{
"名": "合规模",
"分数": 8,
"说明": "是否严格按该规则的方法、单层格式、池与约束生成"
"说明": "是否按方法/配方/表现/单层格式/池型(方向为主,元素=抽取)/分级表现/地板生成;句子级是否达到粒度"
}
],
"薄弱点": "一句话;无则空字符串"
@@ -123,7 +130,7 @@ summary:`具体实例 · {对象} · {n}条`
```checklist
- [ ] 按本步认定的 rule_id(规划或步内钉)的预生成规则执行?
- [ ] 一次生成已遵守(单条=1 条;同批=多条且关系对齐)?records 始终是数组?
- [ ] records 单层、键值符合产物格式与全部约束?
- [ ] records 单层、键值符合产物格式与全部约束?句子级是否达到地板?有配方是否组装进目标字段?方向是否以方向为主(专名不当选项库)?
- [ ] 自评为合规模?未改合同?
```
@@ -132,6 +139,9 @@ summary:`具体实例 · {对象} · {n}条`
```examples
好:规则一次生成=同批、关系=开局仇敌二人 → 本批 2 条,对立在两条里对齐。
好:规则一次生成=单条 → 本批 1 条;还要更多就再点原型。
好:方向「冷焰」作标签,能力描述按该方向写开到可感知;或粒度=方向时字段值就是「冷焰」。
好:阶层字段填「金丹」,表象留在规则的分级表现里,不把整段对照复制进每条 record。
坏:同批规则却只交 1 条,或分多步把有关系的人拆开写。
坏:加规则没有的字段;输出一段「我是怎么想的」却没有 records;本步改 schema。
坏:句子级只填「阴郁」;或按方向说明里那个专名点菜交差。
```
@@ -2,7 +2,7 @@
> 技能文档。程序只切割下方 **fence 块**;`##` 标题仅供人读。
> 产物外壳:`docs/context-fragment-design.md`;范例:`aesthetics-interaction` / `mechanism`。
> 正文高度自定义(描写文案、schema 字段、池条目随对象族而变);外壳与规则键必须严。
> 正文高度自定义(描写文案、schema 字段、池随对象族而变);外壳与规则键必须严。
## meta
@@ -11,7 +11,8 @@ name: 生成规则
id: generation-rules
artifact: 设计.生成规则
declaration: >
要精准格式,或本局原创听了会雾且故事里还要生成时:写出该对象族怎么生成(描写/格式/可选池);不填最终实例;可按对象反复
要精准格式,或本局原创听了会雾且故事里还要生成时:写出该对象族怎么生成(描写/格式/可选池);
创意字段用方向池给创作范围,不堆枚举词;不填最终实例;可按对象反复
when: |
已有「美学纲领与交互范式」或等价整体感觉,且下面两条满足一条就排(可按对象族反复):
a. 生成物必须有精准格式。例:武功典籍要有名字、效果、阶层。
@@ -22,12 +23,12 @@ when_not: |
只要几张具名名片、不必按规则生成 → 不排;已有规则再要名片 → 「具体实例」。
跨轮记住什么 → 「变量设计与更新规则」。故事怎么往前写 → 「叙事指南与故事推进」。
boundary: |
本技能:一条规则=怎么描写/生成 + 单层 JSON 产物格式 + 可选多池(各绑一个顶层字段)。
具体实例:按规则填最终 records;本步不写最终实例(池条目≠实例)。
本技能:一条规则=怎么描写/生成 + 单层 JSON 产物格式 + 可选池(方向池优先;元素池仅封闭集合)。
具体实例:按规则填最终 records;本步不写最终实例(池≠实例)。
舞台骨架 / 实现机制:可引用,不重写百科、不重钉既成法则。
变量*:游玩期状态更新——本步只约束生成时的类型与合法初值范围。
随机范围整理:把本步(及其他上游)里需要的掷骰/检定范围收成插入表——本步可写合法区间,不代替那份汇总。
旁观维护:可读合同(rule_id、产物格式、何时可 need_generate);不依赖整份描写长文。
旁观维护:可读合同(rule_id、产物格式、何时可 need_generate);程序抽样只抽元素池;方向池由填写方按规则自创。
feeds: gm,auditor
```
@@ -43,7 +44,7 @@ feeds: gm,auditor
2. 这是不是本局原创、听了会一头雾水、还要在故事里随机生成的东西?
3. 更需要:开局先钉一批、游玩中再随机补,还是只在游玩期动态生成?
4. 这类实例彼此有没有必须同场钉死的关系(如互为亲属、对立、同场搭档)?有 → 一次同批生成;彼此独立 → 一次一条。
5. 哪些产物字段需要「池」?(池挂在 JSON 字段上,如气质标签池→`气质`;可多个;没有就说没有)
5. 有没有必须全员一致、能数完的标签(阶层、强度档、武器种类)?名字、能力、气质、外貌这类写不完的,后面用「方向」划范围(一句话概括即可,少举例)。阶层这类光看名字不懂的,后面会写成能看见/听见的对照,不要只留阶名。
想到什么写什么;完整规则在正式产物里钉。
```
@@ -53,11 +54,10 @@ feeds: gm,auditor
```task
你正在执行「生成规则」。产物必须是 **context-fragment.v1** JSON,写入「设计.生成规则」。
本步写出的最终物是**规则**,不是实例。一条规则必须说清两件事,并可附第三件:
1. **生成与描写**:应该怎么写、怎么生成(步骤、依据、语气/切面、约束)。
2. **产物格式**:生成结果必须遵循的可校验格式(schema)。
3. **池**(可选):每个池挂在产物格式里的某个字段(变量)上,供该字段抽取/组装/枚举;
一条规则可多个池;无则 `池: []`。
本步写出的最终物是**规则**,不是实例。规则是创造这类东西的方法:空白表格 + 怎么填厚 + 必要时给方向。一条规则必须说清两件事,并可附第三件:
1. **生成与描写**:按什么顺序写、多方向如何拼进一格、每格填到多厚、分级如何被感知。
2. **产物格式**:生成结果必须遵循的可校验格式(schema)。描写字段要有粒度和地板。
3. **池**(可选,默认无):优先 **方向池**(方向名 + 一句概括;默认不举例,至多点 1 个专名);**元素池**只给能数完、必须全员一致的封闭集合。无则 `池: []`。
本步是〔先验产物〕:先定本轮对象族,再写规则。读【本步对象】与【原型建议】;在本步钉「写什么」。禁止顺手扩到其它族。
@@ -70,12 +70,19 @@ feeds: gm,auditor
- `seed_and_runtime`:先种子实例;规则与实例都保留,游玩期仍可按同规则生成。
4. 钉「数量」与「一次生成」(两件不同的事):
- **数量**:这类对象总共要有几条(fixed / range / contextual)。
- **一次生成**:点一次「具体实例」交几条。彼此有必须同场对齐的关系 → `同批`(一次交出并对齐关系);彼此独立 → `单条`(一次只交 1 条,要更多就再点原型)。产物形状始终是 `records[]`,不因单条改成单对象。
5. 写满规则三块:生成与描写(可较长)+ 产物格式(**单层 JSON**:每条产物是一层键值,无嵌套对象)+ 池(需要才填;绑顶层字段)。
6. 逐字段过筛:每个属性都要能回答「对本对象族是否必要」。冗余字段删掉(如女主规则里的「性别」);对象族必需字段不得漏(如 D&D 怪物的等级、攻击骰)。
7. `rule_id`:规划已给则用;否则稳定 kebab-case。已有产物按 rule_id 增量。
- **一次生成**:点一次「具体实例」交几条。彼此有必须同场对齐的关系 → `同批`;彼此独立 → `单条`。产物形状始终是 `records[]`。
5. 写字段前先做设计判断(写入该 rule 的 `设计判断`):
- 列出 **不可穷举项**(姓名、绰号、能力概念、外貌手感等理论上写不完的)→ 这些用方向池或自由写,禁止做成条目枚举。
- 列出 **封闭集合**(阶层、强度档、有限类型名)→ 这些才用 `allowed_values` 或一个元素池。
- 标签本身看不懂的分级(境界、品阶、强度档、好感档等)→ 必须另写 `分级表现`,把每档写成可感知的详细表象,不要只留字母/阶名。
- 从本对象族真正用得上的面挑 3~6 个正交字段(是什么 / 能做什么 / 和谁关联 / 怎么被感知),不要摊通用名片。
- 外貌、服装、仪式等由几面拼成一格的 → 写 `配方`(多方向组装进同一个顶层字段),不要拆成嵌套对象,也不要为每一面各建元素池。
6. 写满规则:生成与描写(含配方、表现、工作流、反模式)+ 产物格式(**单层 JSON**)+ 池(需要才填)+ 需要时的分级表现。
每个描写类 string 字段必须有 `粒度`(句子)和 `地板`(填到什么才算够)。`示例形状` 必须达到地板,禁止用单标签当示例。
7. 逐字段过筛:每个属性都要能回答「对本对象族是否必要」。冗余字段删掉(如女主规则里的「性别」);玩法接口不得漏(如 D&D 怪物的等级、攻击骰)。
8. `rule_id`:规划已给则用;否则稳定 kebab-case。已有产物按 rule_id 增量。
若本步对象与规划不一致,以最新对象为准并重钉对应英文 rule_id,禁止沿用旧 id。
8. 按自评三维打分并填追问;输出 JSON。禁止夹带最终实例 records。
9. 按自评四维打分并填追问;输出 JSON。禁止夹带最终实例 records。
若程序已发默认问题:禁止重复开场;在首答上补洞。
summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生成并动态} · {单条|同批}`;跳过 → `生成规则 · {对象} · 无需专门规则`。
@@ -86,15 +93,21 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
```principles
1. 整条规则先问必要性:时机 a(精准格式)或时机 b(原创会雾且还要生成)是否成立?两条都不成立则跳过,勿硬造表。
2. 一调用一对象族;格式或用途不同则分次编排。
3. 规则 = 描写/生成方法 + 产物格式;池是可选附属(可多池),不是必填第三设计。
3. 规则 = 描写/生成方法 + 产物格式。池不是必填第三设计;默认 `池: []`。宁少池,勿为每个字段挂一套词表。
4. 属性逐个过筛:每个字段必须对本对象族有意义;禁塞通用名片字段,也禁漏掉玩法接口字段。
5. 产物格式 = **单层 JSON**:一条产物是一层扁平对象;值仅为标量或「标量数组」。
禁止嵌套 object、禁止 object 数组。此格式要对齐动态表格列、旁观者→主世界层生成、以及投影取字段。
类型/必填/枚举/上下界必须可校验;禁止只给示例让下游猜类型。
6. 池绑顶层字段名(如 `气质`、`攻击花招`);一条规则可多池。池条目是该字段材料,不是整条 record。
7. 生命周期先行;未定前不假装可执行「具体实例」。
8. **一次生成**看关系,不看「想不想一次多写」:有必须同场钉死的关系(亲属、对立、同场搭档等)→ `同批`;彼此独立 → `单条`。`同批` 至少 2 条,否则改 `单条`。不要把「总共要几个」(数量)和「这一次交几条」(一次生成)混成一件事。
9. 不写变量更新公式、不写剧情推进、不填最终实例。
6. 池分两种,先判断能不能数完:
- **方向池**(默认):选项理论上无限。给 4~8 个方向;每条以**方向名 + 一句概括**为主。默认不举例;需要手感时至多点 1 个专名,禁止把方向写成作品名/例句清单。填写以方向为主:方向名可以当选项或标签;句子级字段按该方向写开。程序不抽方向池。
- **元素池**:选项有限且必须全员一致(阶层、武器种类、强度档字母)。条目可穷举;旁观 `need_generate` 只抽这类池。
姓名、绰号、能力概念、外貌、气质(作描写时)禁止元素池,也禁止用 `allowed_values` 假穷举。同一封闭集合不要既写枚举又再建元素池。
7. 填值要有地板。骰子、是否可破坏可以短。外貌、能力现象、限制、互动手感必须写到可感知。`示例形状` 是地板的样板,不是「阴郁」这种标签。
分级标签本身看不懂时:实例字段仍填短档位;详细对照写在 `分级表现`(每档 = 一句概括 + 一段可感知表象,相邻档必须能分清)。不要只丢「A / 金丹」让人猜。
8. 几面拼成一格用 **配方**:点名目标字段、用到哪些方向组件、怎么拼进这一格。表现类要点用 **表现**:一句概括 + 至多 1 条例子;例子是密度样板,不是选项库。
9. 生命周期先行;未定前不假装可执行「具体实例」。
10. **一次生成**看关系,不看「想不想一次多写」:有必须同场钉死的关系 → `同批`;彼此独立 → `单条`。`同批` 至少 2 条。不要把「总共要几个」和「这一次交几条」混成一件事。
11. 不写变量更新公式、不写剧情推进、不填最终实例。
```
## probe
@@ -102,9 +115,9 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
```probe
每轮 1~2 点。规划已钉且用户未改对象时,禁止重问 target / rule_id。规划为空或用户要换对象时,先问本轮生成什么。
优先:整条规则是否必要;实例彼此有无必须同场对齐的关系(一次生成:同批 vs 单条);某字段该不该进表(冗余 vs 漏接口);单层格式类型/枚举/边界;哪些字段要池。
优先:整条规则是否必要;实例彼此有无必须同场对齐的关系;某字段该不该进表;不可穷举项有没有被错做成枚举词表;分级标签够不够让人看懂;描写字段地板是否够用。
若时机 a/b 都不成立 → 建议跳过,停追问字段与格式。
不追问:最终实例正文、变量增减公式、其它对象族、完整世界百科。
不追问:最终实例正文、变量增减公式、其它对象族、完整世界百科、再给哪个字段加一套枚举池。
```
## output
@@ -113,7 +126,7 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
{
"schema": "context-fragment.v1",
"技能": "生成规则",
"brief": "一句话:对象族 + 建立规则|无需专门规则 + 生命周期(若建立)+ 有池|无池",
"brief": "一句话:对象族 + 建立规则|无需专门规则 + 生命周期(若建立)+ 方向池|元素池|无池",
"mount": ["world-simulator", "auditor"],
"稳变": "stable",
"正文": {
@@ -149,16 +162,50 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
"模式": "单条|同批",
"关系": "同批必填:本批记录之间必须一起钉的联系;单条写「彼此独立」"
},
"设计判断": {
"不可穷举项": ["姓名", "能力概念", "外貌"],
"封闭集合": ["类型", "阶层"],
"正交字段依据": "一句话:为何是这几个字段而不是通用名片"
},
"生成与描写": {
"依据": ["可较长;引用上游产物或用户要求"],
"方法": ["可较长:生成顺序、如何组装、描写口径、语气/切面、如何用池"],
"配方": [
{
"目标字段": "外貌",
"组件": ["轮廓方向", "质感方向"],
"组装": "各取一个方向,拼进外貌这一格;不要拆成嵌套对象"
}
],
"表现": [
{
"针对": "能力现象",
"概括": "写到旁人能看见或听见的变化,以及对手能抓住的空隙",
"例子": ["至多 1 条密度样板;没有就不写"]
}
],
"工作流": ["按配方取方向并组装", "封闭档位对照分级表现", "按地板写描写格"],
"方法": ["描写口径;方向为主(方向名可作选项/标签,句子级按该方向写开);元素池如何抽取"],
"硬约束": ["任何产物不得违反"],
"字段间约束": ["例:阵营=A 时权限≥3"],
"字段间约束": ["有就写;无则 []"],
"变化维度": ["允许随机或变化的部分;无则 []"],
"禁止项": ["不得出现的组合或内容"],
"去重规则": ["同批/跨批"],
"校验": ["类型、枚举、边界、世界与体验一致性;以及是否按方法生成"]
"反模式": ["为名字/能力/外貌建枚举条目池", "描写字段只填一个词", "方向池堆作品名或例句当选项", "分级只写阶名没有表象"],
"校验": ["类型、枚举、边界、地板、配方是否组装进目标字段、分级表现是否可分档"]
},
"分级表现": [
{
"字段": "阶层",
"说明": "实例只填档位值;叙事按本表展开。无此类分级则 []",
"档位": [
{
"值": "档位名",
"概括": "一句:这档能做到什么量级",
"表象": "可感知的详细对照(看见/听见/碰到什么;须能和上下档分清)"
}
]
}
],
"产物格式": {
"格式": "单层JSON",
"批量时": "array of flat object(每条记录单层)|单条则一个 flat object",
@@ -167,8 +214,11 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
"type": "string|number|integer|boolean|enum|array",
"required": true,
"description": "语义 + 为何本对象族需要此字段;可较长",
"粒度": "词条|方向|句子",
"创作": "自由|约束|参考方向|必选元素",
"地板": "描写类必填:填到什么才算够;词条/数字可省略",
"allowed_values": [
{ "value": "枚举值", "meaning": "含义" }
{ "value": "仅封闭集合", "meaning": "含义" }
],
"minimum": 0,
"maximum": 100,
@@ -178,28 +228,32 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
}
},
"示例形状": {
"名称": "……",
"等级": 3,
"攻击骰": "2d6+2",
"气质": "阴郁"
"名称": "达到地板的名字,不是「某某」",
"阶层": "金丹",
"外貌": "按配方拼好的一段可感知外貌,不是「黑发高个」",
"能力描述": "写清现象与可被抓住的空隙;禁止一个词交差"
}
},
"池": [
{
"pool_id": "英文 kebab-case;同规则内唯一",
"名称": "人话名",
"绑定字段": "单层 schema 的顶层字段名,例:气质 / 攻击花招",
"用途": "灵感组装|随机抽取|枚举生成|其它",
"说明": "该字段如何用本池;与「生成与描写.方法」如何配合;可较长",
"池型": "方向|元素",
"绑定字段": "单层 schema 的顶层字段名",
"用途": "方向:方向为主的创作范围|元素:随机抽取或必选",
"说明": "该字段如何用本池;多池绑同一字段时看配方",
"方向": {
"方向名": "一句概括。默认到此为止;至多再点 1 个专名。仅池型=方向时使用"
},
"条目": [
{
"id": "可选稳定 id",
"内容": "材料正文或短标签;结构随池自定义,但同池宜一致",
"内容": "仅池型=元素:可穷举的标签或短词",
"权重": 1,
"标签": ["可选分类标签"]
}
],
"抽取或组装规则": "可较长;无特殊则写「均匀随机」或「按方法写入绑定字段」"
"抽取或组装规则": "方向池写「以方向为主;句子级按该方向写开」;多池同字段看配方;元素池写抽取方式,默认均匀随机"
}
]
}
@@ -216,12 +270,17 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
{
"名": "属性妥当",
"分数": 8,
"说明": "逐字段:有无冗余(如女主规则的性别)或缺失(如 D&D 怪物缺等级/攻击骰);跳过时写 N/A"
"说明": "逐字段:有无冗余或缺失玩法接口;跳过时写 N/A"
},
{
"名": "材料得当",
"分数": 8,
"说明": "不可穷举项是否做成方向池/自由而非假穷举;方向是否以概括为主、例子极少;元素池是否仅封闭集合;该细的分级是否有表象;描写字段地板是否够密;跳过时写 N/A"
},
{
"名": "格式准确",
"分数": 8,
"说明": "是否严格单层 JSON、类型/必填/枚举/边界可对接动态表格·旁观者生成·投影;跳过时写 N/A"
"说明": "是否严格单层 JSON、类型/必填可对接动态表格·旁观者生成·投影;跳过时写 N/A"
}
],
"薄弱点": "一句话"
@@ -242,22 +301,26 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
硬规则(公共三段 + 本技正文):
1. 合法 JSON;必含 `schema` / `技能` / `brief` / `正文` / `自评` / `追问`(题目可 `[]`)。
2. **公共三段**:正文=规则主体;自评=必要性/属性妥当/格式准确(**分数 0–10 十分制**);追问=导语+建议选项。
2. **公共三段**:正文=规则主体;自评=必要性/属性妥当/材料得当/格式准确(**分数 0–10 十分制**);追问=导语+建议选项。
3. **正文键固定**:本步参数、必要性判断、rules、增量说明。
4. **每条 rule 必含**:生成与描写、产物格式、数量、一次生成;**池可空数组**。有池时 `绑定字段` 必须是单层 schema 的顶层键。`一次生成.模式` 为同批时 `关系` 必填且本批至少 2 条;为单条时一次只交 1 条。
5. **产物格式强制单层**:`schema` 的 `type` 不得为 `object`;`array` 的 `items` 不得为 object。禁止 `外貌.发色` 这类嵌套路径。
6. 结论为「无需专门规则」时:`rules` 必须 `[]`。上下文策略布尔须与生命周期一致。
7. 池条目≠最终实例;禁止输出具体实例 `records`、变量更新规则、执行单元列表。
8. `mount` 默认主世界层 + 旁观维护(旁观只需合同键:rule_id/格式/必要性;描写长文可在投影时 summary);**禁止**写 `order`。summary 见 task。
4. **每条 rule 必含**:设计判断、生成与描写、产物格式、数量、一次生成;**池可空数组**。`生成与描写.配方` / `表现` 无则 `[]`。标签看不懂的分级必须有 `分级表现`(每档概括+表象,相邻可分清);无此类则 `分级表现: []`。有池时 `绑定字段` 必须是单层 schema 的顶层键,且必须标 `池型`。多个方向池绑同一字段时配方必须写清怎么拼进该格。`一次生成.模式` 为同批时 `关系` 必填且本批至少 2 条;为单条时一次只交 1 条。
5. **产物格式强制单层**:`schema` 的 `type` 不得为 `object`;`array` 的 `items` 不得为 object。禁止 `外貌.发色` 这类嵌套路径。描写类 string 字段必须有 `粒度` 与 `地板`;`示例形状` 必须达到地板。
6. **池型**:`方向` 必须有 `方向`(对象:方向名→一句概括,4~8 条;默认不举例,至多 1 个专名),`条目` 可 `[]` 或省略。`元素` 必须有可穷举 `条目`,不要写 `方向`。不可穷举项禁止 `池型=元素`,也禁止用 `allowed_values` 冒充。
7. 结论为「无需专门规则」时:`rules` 必须 `[]`。上下文策略布尔须与生命周期一致。
8. 池≠最终实例;禁止输出具体实例 `records`、变量更新规则、执行单元列表。
9. `mount` 默认主世界层 + 旁观维护(旁观只需合同键:rule_id/格式/必要性;描写长文可在投影时 summary);**禁止**写 `order`。summary 见 task。
## checklist
```checklist
- [ ] 含 schema / brief / 正文 / 自评 / 追问?
- [ ] 自评为必要性 / 属性妥当 / 格式准确?
- [ ] 自评为必要性 / 属性妥当 / 材料得当 / 格式准确?
- [ ] 整条规则必要性有举证?不成立时 rules=[]?
- [ ] 建立时:逐字段无冗余无漏接口?产物为单层 JSON 且类型可校验?数量与一次生成已分清(总共几个 vs 这一次交几条)?同批有关系、单条写彼此独立?
- [ ] 池:无则 [];有则绑顶层字段、未写成最终实例表?
- [ ] 建立时:有设计判断(不可穷举 vs 封闭集合)?逐字段无冗余无漏接口?产物为单层 JSON?数量与一次生成已分清?
- [ ] 描写字段有粒度+地板,示例形状不是单标签?
- [ ] 该细的分级有概括+可感知表象,不是只留阶名?
- [ ] 多方向拼一格时有配方?表现是概括+极少例子?
- [ ] 池:无则 [];有则标池型;方向池以概括为主、例子极少;元素池仅封闭集合;未把名字/能力做成枚举词表?
- [ ] 未夹带最终实例、变量公式、其它对象族、百科?
```
@@ -265,19 +328,21 @@ summary:建立 → `生成规则 · {对象} · {仅动态|仅预生成|预生
```examples
好:
- 武功典籍:单层含 名字/效果/阶层(时机 a)。
- 「心之彩」:本局原创、听了会雾,故事里还要随机生成(时机 b)。
- D&D 怪物:单层含 名称/等级/攻击骰/……;池可绑 `气质`;自评属性妥当高(未漏战斗接口)。
- 女主规则:不设「性别」字段;关系切面进表;池可空。
- 互为仇敌的两名开局 NPC:一次生成=同批,关系写清对立如何对齐;数量=2。
- 可互换的酒馆路人:一次生成=单条,关系写「彼此独立」;要 5 个就点 5 次。
- 事件钩子:池绑顶层 `钩子`;方法写抽 1~2 条写入该字段。
- 现实名车、西幻常见种族 → 无需专门规则(常识能推且不需精准格式)。
- 武功典籍:单层含 名字/效果/阶层。阶层短填 + `分级表现` 把每阶写成可感知对照;名字与效果用方向池(方向名+一句概括)。
- 外貌:轮廓方向 × 质感方向,配方拼进 `外貌` 一格,不要 `{发色:{}}`。
- 「心之彩」:颜色/性格用方向池(如「冷焰:静、刺、余烬不散」),不要列出 20 种色号,也不要堆作品名。
- D&D 怪物:名称/等级/攻击骰齐全;等级若只写数字看不懂,补分级表现;气质用方向池+句子地板。
- 女主规则:不设「性别」;池可空;内在冲突自由写并给地板。
- 互为仇敌的两名开局 NPC:一次生成=同批;可互换的酒馆路人:一次生成=单条。
- 现实名车、西幻常见种族 → 无需专门规则。
坏:
- 产物写成 `{ "外貌": { "发色": "…" } }` → 非单层,前端表格/投影难对接。
- 为气质/花招/绰号/能力各建一个 8~20 词的元素池,填出来全是标签。
- 方向池每条挂 3 个作品名或例句,变成假选项库。
- 产物写成 `{ "外貌": { "发色": "…" } }` → 非单层。
- `示例形状` 里 `能力描述: "时空斩"` 或 `气质: "阴郁"` —— 地板被示例教坏。
- 阶层/强度只有「A」「金丹」,没有表象,叙事时没法写。
- 女主规则塞「性别」;或怪物规则只有「名字+性格」没有等级/攻击骰。
- 有亲属关系的三人却标成单条,分三次各写一条,关系对不上。
- 把「总共要 5 个」写成一次生成=同批,但彼此并无必须同场的关系。
- 有亲属关系的三人却标成单条;或把「总共要 5 个」写成同批但彼此无必须同场的关系。
- 把写好的 NPC 整份塞进池当最终实例。
```