mcpField
L
list-builder

list-builder

github.com/jwynia创意与媒体179385 次安装35 周前更新
代码仓库

关于 list-builder

list-builder 是用于整理创作随机化素材的技能,帮助构建具体且多样的故事列表。它涵盖调研、质量筛选、JSON 格式整理和脚本验证。

主要功能

  1. 01明确列表用途与目标规模
  2. 02通过调研扩展多样性
  3. 03筛除模糊或重复条目
  4. 04将列表整理为 JSON
  5. 05验证数量、重复项与多样性
  6. 06保存来源和用途说明

适用场景

  1. 01为故事提示词构建职业列表
  2. 02创建带有叙事张力的地点列表
  3. 03为熵工具准备多样化输入

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jwynia/agent-skills --skill list-builder

安装后在 Claude Code 中输入/list-builder确认已加载。

附带文件references/dataset-quality-criteria.mdscripts/validate-list.ts

详细介绍

List Builder:Entropy 列表整理技能

你将为创意随机化构建全面、高质量的列表。这些列表会输入熵工具,为故事创作注入不可预测性。

核心原则

优质熵列表具备三个特性:

  1. 规模 — 足够大(50–200+ 项),让人感到真正随机
  2. 多样性 — 覆盖完整的可能性空间,而不只是显而易见的例子
  3. 具体性 — 足够具体,能激发灵感,而非含糊的类别

LLM 擅长研究、分类和质量控制。脚本擅长存储和随机选择。这项技能将两者结合起来。

数据集成熟度级别

完整标准请参阅 references/dataset-quality-criteria.md。

级别规模状态使用场景
入门级10-30快速示例原型设计、演示
实用级30-75可用但有限个人项目
生产级75-150可供日常使用客户项目、已发布的工具
全面级150+参考级质量权威资源

关键指标:

  • 规模: 足够大,确保真正的随机性
  • 多样性: 覆盖所有相关维度(见标准文档)
  • 具体性: 足够具体,能激发灵感(平均 20-60 个字符)
  • 新颖度: >30% 的条目能带来意外(而非第一反应)

当前内置列表处于入门级/实用级。 这项技能旨在将它们提升至生产级。

列表质量标准

优质列表条目的特点

优质:“电梯检修员”(具体、出人意料、引发疑问) 不佳:“办公室职员”(泛泛而谈、意料之中、没有发挥空间)

优质:“午夜时分的自助仓储设施”(时间具体,暗示氛围) 不佳:“建筑物”(过于含糊,无法使用)

优质:“他们在调查完全不同的案件,却使用了相同的证据”(具体的冲突机制) 不佳:“他们碍事了”(没有机制,只有结果)

多样性维度

构建列表时,确保覆盖相关维度:

职业:

  • 行业(医疗、法律、建筑、艺术、服务、科技)
  • 职级(从入门级到专家)
  • 可见度(面向公众与幕后工作)
  • 特殊与常见
  • 历史、现代与新兴

地点:

  • 公共与私人
  • 室内与室外
  • 城市、乡村与郊区
  • 时间带来的影响
  • 情绪基调(诡异、平淡、神圣、过渡性)

人物特质:

  • 正面、负面与中性
  • 显而易见与隐藏
  • 自我认知与盲点
  • 稳定与情境性的

研究流程

步骤 1:定义列表
  • 属于什么类别?
  • 用途是什么?
  • 什么样的条目有用,什么样的没用?
  • 目标规模(至少 50 项,理想情况下 100 项以上)
步骤 2:用显而易见的例子打底

从脑海中立即浮现的 10-20 个条目开始。这些是“现成”的选项——任何人都会想到的条目。它们有效,但还不够。

步骤 3:研究以增加多样性

利用可用来源,扩展显而易见的内容:

Kiwix/Wikipedia:

  • 分类页面(例如,“Category:Occupations”)
  • 列表文章(例如,“List of unusual deaths”)
  • 延伸至意想不到领域的相关文章

模式:按维度扩展

  • 选取种子列表中缺少的一个维度
  • 针对该维度进行专门研究
  • 添加 10-20 个条目以填补空缺
步骤 4:筛选质量

移除以下条目:

  • 过于含糊,无法发挥作用
  • 与现有条目过于相似
  • 具有文化特殊性,却缺乏趣味
  • 需要过多解释
步骤 5:设置可用格式

输出为 JSON 数组,以便与 entropy.ts 配合使用:

{
  "list_name": [
    "Item one",
    "Item two",
    "Item three"
  ]
}

可用工具

validate-list.ts

分析列表的质量和多样性。

deno run --allow-read scripts/validate-list.ts list.json

# Check specific list in a file
deno run --allow-read scripts/validate-list.ts data.json professions

报告内容:

  • 条目总数
  • 重复项检查
  • 条目平均长度(过短则含糊,过长则难以处理)
  • 多样性评估(如果指定了维度)
merge-lists.ts

合并多个列表来源、去重并格式化。

deno run --allow-read scripts/merge-lists.ts source1.json source2.json --output combined.json

研究提示词

需要研究特定类别时,可以使用以下提示词:

针对职业: “找出 20 种[行业]中大多数人都不知道存在的职业。重点关注能够接触有趣事物、需要专业知识或工作条件不同寻常的岗位。”

针对地点: “找出 20 个可能发生重要对话的具体地点(而非类别)。重点关注自带紧张感、时间压力或意外亲密感的地方。”

针对角色缺陷: “找出 20 种人们对自己抱有的具体错误认知,这些认知并非显而易见的反派特质。重点关注那些看似能提供保护、实际上却会造成限制的信念。”

示例:构建职业列表

初始种子(显而易见的职业)
  • 医生、律师、教师、警察、消防员……
维度差距分析
  • 缺少:小众技术类工作
  • 缺少:拥有特殊接触权限的服务类工作
  • 缺少:涉及秘密的工作
  • 缺少:大多数人不知道存在的工作
扩展研究

Kiwix 搜索:“职业列表” → 类别页面 → 具体的特殊职业

从研究中添加:

  • 电梯检验员(可进入各类建筑)
  • 犯罪现场清理员(处理犯罪后的现场,而非犯罪本身)
  • 道德黑客(了解系统漏洞)
  • 邪教脱离辅导员(了解操控手段)
  • 拟音师(凭空创造现实)
  • 专利审查员(在创新公开前就能看到它们)
质量筛选

移除:

  • “商人”(过于宽泛)
  • “TikTok 网红”(过于跟风,容易过时)
  • “炼金术士”(时代不符,除非是奇幻题材)
最终检查
  • 有 80 个以上条目?✓
  • 涵盖多个行业?✓
  • 包含不同社会地位的职业?✓
  • 有出人意料的选项?✓

与 Entropy 工具集成

使用此技能构建的列表可放入:

  • story-sense/data/,用于小说专属列表
  • 可通过 entropy.ts --file 加载

命名约定:

  • [category]-[specificity].json
  • 示例:professions-unusual.json、locations-liminal.json、objects-evidence.json

你要做的事

  1. 弄清楚需要什么列表以及列表的用途
  2. 用显而易见的示例作为种子
  3. 通过研究扩展多样性
  4. 筛选质量
  5. 格式化为 JSON
  6. 使用工具验证
  7. 记录列表的预期用途

你不做的事

  • 随机生成条目(这是熵脚本的工作)
  • 不经研究就创建列表(这会导致条目过于显而易见)
  • 纳入需要大量解释的条目
  • 重数量轻质量(100 个优质条目 > 500 个平庸条目)

输出持久化

此技能会将主要输出写入文件,以便在不同会话间保留工作成果。

输出位置发现

开始任何其他工作之前:

  1. 检查项目中是否存在 context/output-config.md
  2. 如果存在,查找此技能对应的条目
  3. 如果文件不存在或没有此技能的条目,先询问用户:
    • “这次列表构建会话的输出应保存到哪里?”
    • 建议:熵列表可保存到 data/ 或 story-sense/data/
  4. 保存用户的偏好:
    • 如果存在上下文网络,保存到 context/output-config.md
    • 否则保存到项目根目录下的 .list-builder-output.md
主要输出

对于此技能,需持久保存:

  • 列表本身 - 采用 JSON 格式,供 entropy.ts 使用
  • 研究来源 - 条目来自何处
  • 维度分析 - 涵盖了哪些多样性维度
  • 使用文档 - 列表的用途
对话与文件
写入文件保留在对话中
最终列表(JSON)对列表用途的讨论
研究来源对条目的迭代
质量分析实时反馈
文档类别细化
文件命名

格式:{category}-{specificity}.json 示例:professions-unusual.json

评论

支持 Markdown