mcpField
S
shared-world

shared-world

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

关于 shared-world

这项世界设定集管理技能面向协作创作,用于整理正典信息、来源、交叉引用和贡献流程。作者可跟踪设定状态与潜在矛盾,并使用脚本生成索引、检查链接和导出参考文档。

主要功能

  1. 01跟踪已确立、提议等正典状态
  2. 02记录来源并链接条目
  3. 03协调贡献者角色与审核流程
  4. 04扫描冲突和失效链接
  5. 05生成索引并导出参考文档

适用场景

  1. 01引导作者加入共享虚构世界
  2. 02依据正典审核新增设定
  3. 03解决世界设定之间的矛盾
  4. 04制作便于分发的世界参考文档

安装

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

$npx skills add https://github.com/jwynia/agent-skills --skill shared-world

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

scripts/
add-entry.ts
build-index.ts
check-conflicts.ts
init-world.ts
templates/
discovery.md
entry.md
index.md
style-guide.md

详细介绍

共享世界:世界设定集管理技能

你负责维护用于协作创作的维基式世界设定集。你的职责是让规范信息井然有序、相互关联且易于查阅,帮助多位贡献者在共享宇宙中保持创作一致。

核心原则

世界设定集是小说创作的团队记忆。

与软件项目的上下文网络类似,世界设定集会保留已确立的内容、跟踪提议内容、标记矛盾,并为复杂的世界信息提供导航。它是权威信息的唯一来源,让多位作者能在同一宇宙中创作,而不破坏连续性。


世界设定集结构

世界设定集采用经过调整、适用于小说创作的上下文网络模式:

world-bible/
├── discovery.md              # Navigation guide and quick reference
├── canon-status.md           # Canon state overview
│
├── characters/               # People and beings
│   ├── _index.md             # Character directory
│   └── [name].md             # Individual entries
│
├── locations/                # Places
│   ├── _index.md             # Location hierarchy
│   └── [place]/
│       ├── overview.md       # Place description
│       └── [sublocation].md  # Nested locations
│
├── history/                  # Timeline and events
│   ├── timeline.md           # Chronological overview
│   ├── eras/                 # Historical periods
│   └── events/               # Significant events
│
├── factions/                 # Organizations and groups
│   ├── _index.md             # Faction directory
│   └── [faction].md          # Individual entries
│
├── rules/                    # How the world works
│   ├── _index.md             # Systems overview
│   ├── magic.md              # Magic system (if applicable)
│   ├── technology.md         # Tech level and rules
│   └── [system].md           # Other systems
│
├── culture/                  # Beliefs, customs, languages
│   ├── _index.md             # Culture directory
│   └── [culture]/
│       ├── overview.md
│       ├── beliefs.md
│       ├── customs.md
│       └── language.md
│
├── artifacts/                # Significant objects
│   ├── _index.md
│   └── [artifact].md
│
├── species/                  # Non-human beings (if applicable)
│   ├── _index.md
│   └── [species].md
│
└── meta/                     # About the world bible itself
    ├── contributors.md       # Who has contributed
    ├── conflicts.md          # Detected contradictions
    ├── changelog.md          # Recent changes
    └── style-guide.md        # Writing conventions

规范状态系统

世界信息的每一项内容都有规范状态:

状态级别
状态符号含义用途
已确立✓出现在已发布或已批准的作品中视为事实
待提议?已提出,但尚未批准可供使用,之后可能变更
已弃用✗曾是规范内容,现已被取代不要用于新作品
存在矛盾⚠与其他规范内容冲突需要解决
推测性~根据规范内容推演而来谨慎使用
状态规则
  1. 已确立条目在先标记为已弃用之前,不得与其矛盾
  2. 待提议条目在确立之前可以自由修改
  3. 已弃用条目保留供参考,但不应出现在新作品中
  4. 存在矛盾的条目在明确解决之前不得使用
  5. 推测性条目由规范内容推演而来,但未在源材料中直接说明
来源跟踪

每条规范条目都要跟踪其来源:

## Sources
- *The Night Kingdom*, Chapter 3 (first appearance)
- *Shadows Rising*, p. 47 (expanded)
- Session notes 2024-03-15 (clarified by author)

条目模板

世界设定集中的每个条目都遵循以下结构:

# [Entry Name]

**Canon Status:** Established | Proposed | Deprecated | Contradicted | Speculative
**Category:** Character | Location | Faction | Event | Rule | Culture | Artifact | Species
**Last Updated:** [Date]
**Contributors:** [Names]

## Summary
[1-2 sentence overview for quick reference]

## Description
[Detailed information about this entry]

## Relationships
- **Related Characters:** [[Character Name]], [[Another Character]]
- **Located In:** [[Location Name]]
- **Member Of:** [[Faction Name]]
- **Appears In:** [[Event Name]]
- **See Also:** [[Related Entry]]

## Key Facts
- Fact 1
- Fact 2
- Fact 3

## Notes for Writers
[Guidance for using this element in stories]

## Sources
- Source 1 (what was established)
- Source 2 (additional details)

## History
- [Date]: Created by [Contributor]
- [Date]: Updated [what changed] by [Contributor]

交叉引用

使用维基式链接连接条目:

链接语法
[[Character Name]]           # Link to character
[[Location Name|the city]]   # Link with display text
[[Faction Name#history]]     # Link to section
关系类型
类型含义示例
contains父子级位置关系城市包含各个街区
member_of成员关系角色属于某个派系
located_in物理位置事件发生在某个地点
related_to一般关联角色与角色相关
preceded_by时间顺序事件先于另一事件发生
contradicts规范内容冲突条目与另一条目矛盾
supersedes取代关系新条目取代已弃用条目

贡献者协作

贡献者角色
角色可以做什么不能做什么
读者查看所有条目编辑任何内容
作者添加待提议条目、编辑自己的条目确立规范内容、编辑他人的作品
编辑编辑任何条目、解决冲突确立规范内容
规范权威确立规范内容、弃用条目—
贡献流程
  1. 提议: 作者添加状态为“待提议”的新条目
  2. 审核: 编辑检查冲突和质量
  3. 整合: 获批后,由规范权威确立条目
  4. 跟踪: 变更日志记录所有变更
冲突解决

出现矛盾时:

  1. 找出两条冲突的条目
  2. 评估哪条条目的来源更具权威性
  3. 决定哪条成为规范内容(或是否可以协调统一)
  4. 标记将被舍弃的条目为已弃用,或更新条目以消除矛盾
  5. 在 conflicts.md 中记录决定

世界设定集操作

操作:初始化世界设定集

创建新的世界设定集结构:

deno run --allow-read --allow-write scripts/init-world.ts "World Name"

创建完整的目录结构和模板文件。

操作:添加条目

向世界设定集添加新条目:

deno run --allow-read --allow-write scripts/add-entry.ts \
  --category character \
  --name "Character Name" \
  --status proposed

使用模板创建条目,并填入适当的元数据。

操作:检查冲突

扫描潜在矛盾:

deno run --allow-read scripts/check-conflicts.ts world-bible/

识别可能彼此矛盾的条目。

操作:生成索引

根据条目重建索引文件:

deno run --allow-read --allow-write scripts/build-index.ts world-bible/

使用当前条目更新所有 _index.md 文件。

操作:导出参考文档

生成单文件参考文档:

deno run --allow-read scripts/export-reference.ts world-bible/ --format md

为作者创建便于携带的参考文档。


与世界构建技能集成

共享世界技能负责维护;世界构建技能负责诊断。

任务使用共享世界使用世界构建
“经济方面已经确定了哪些内容?”✓
“经济感觉不够真实”✓
“添加一个新派系”✓
“为什么这个派系感觉很单薄?”✓
“哪些内容相互矛盾?”✓
“魔法应该如何影响社会?”✓
诊断交接

添加条目时,可考虑运行世界构建诊断:

  • 新地点 → 检查 W1(背景世界)
  • 新派系 → 检查 W3(缺乏历史的制度)
  • 新魔法/科技 → 检查 W2(缺乏后果的世界)
  • 新文化 → 检查 W5/W6(信仰/文化深度)
  • 新物种 → 检查 W7(扁平化的非人类)

常见世界圣经任务

任务:帮助新作者熟悉情况
  1. 分享 discovery.md 作为入门资料
  2. 指引他们查看 style-guide.md,了解规范
  3. 带他们了解 canon-status.md 中已经确定的内容
  4. 说明贡献工作流
  5. 安排初始阅读材料(重要的已确定条目)
任务:写作开始前
  1. 查看 changelog.md,了解近期更新
  2. 浏览与故事相关的条目
  3. 留意可能受你影响的拟议条目
  4. 查看 conflicts.md,了解尚未解决的问题
任务:写作结束后
  1. 将新增的世界构建内容添加为拟议条目
  2. 如有扩展,更新现有条目
  3. 记录发现的任何矛盾
  4. 添加到 changelog.md
任务:正典审查
  1. 审查拟议条目的质量
  2. 检查是否与已确定的正典冲突
  3. 对重要新增内容运行世界构建诊断
  4. 确认或要求修改
  5. 更新 canon-status.md

反模式

完美主义者

模式: 写作开始前试图记录所有内容。
问题: 世界圣经变成拖延的借口;条目逐渐过时。
解决方法: 在需要时记录所需内容。世界圣经随着故事不断丰富。

设定倾倒

模式: 条目包含故事用不到的百科全书式细节。
问题: 维护负担加重;作者找不到重要内容。
解决方法: 只包含作者需要的内容。深度应服务于故事,而非反过来。

孤立的世界圣经

模式: 世界圣经与实际写作流程分离。
问题: 正典逐渐偏离;世界圣经变得过时。
解决方法: 将更新世界圣经纳入写作工作流,而不是作为独立任务。

权威缺位

模式: 没有明确的正典权威;所有内容都停留在“拟议”状态。
问题: 没有可靠内容;作者无法依赖世界圣经。
解决方法: 指定正典权威;建立审核周期。

回避冲突

模式: 忽视矛盾,而不是加以解决。
问题: 正典变得不可靠;冲突不断累积。
解决方法: 立即处理冲突;记录决策。

单人维护

模式: 由一个人独自维护世界圣经。
问题: 存在人员流失风险;视角有限;形成瓶颈。
解决方法: 引入多名贡献者;明确所有权,同时共享访问权限。


风格指南模板

每份世界圣经都应包含风格指南:

# [World Name] Style Guide

## Naming Conventions
- Character names: [pattern, cultural influences]
- Place names: [pattern, linguistic rules]
- Organization names: [conventions]

## Tone and Voice
- [Description of world's tone]
- [What to avoid]
- [Examples of good/bad fits]

## Content Boundaries
- [What can be depicted]
- [What requires sensitivity]
- [Off-limits topics]

## Formatting Standards
- [Date formats in-world]
- [Measurement systems]
- [Title capitalization]

## Common Terms
- [World-specific vocabulary]
- [Spelling of unusual words]

可用工具

init-world.ts

初始化新的世界圣经结构。

add-entry.ts

根据模板创建新条目。

check-conflicts.ts

扫描可能存在的矛盾。

build-index.ts

重新生成索引文件。

export-reference.ts

生成便于携带的参考文档。

link-validator.ts

检查 wiki 链接是否指向实际条目。


交互示例

示例 1:新贡献者

作者:“我刚加入共享世界项目。该从哪里开始?”

你的做法:

  1. 指引他们查看 discovery.md,将其作为导航中心
  2. 让他们阅读 style-guide.md
  3. 带他们浏览已有的重要条目
  4. 说明 Proposed(提议)与 Established(已确立)状态的区别
  5. 帮他们开始第一次贡献(可能是一个角色或地点)
示例 2:发现矛盾

作者:“等等,第 3 章说魔法系统需要血液,但第 7 章里有个角色不需要血液就施展了魔法。”

你的做法:

  1. 如果这两个实例还没有条目,就分别创建条目
  2. 将两者都标记为 Contradicted(存在矛盾)
  3. 将它们连同来源一起添加到 conflicts.md
  4. 确定哪一处拥有正典效力(更早出现、更为核心,或符合作者偏好)
  5. 进行协调(也许血液要求存在例外),或者废弃其中一处
示例 3:大幅扩展世界

作者:“我想新增一整块大陆,并为它设定自己的文化。”

你的做法:

  1. 创建大陆的地点条目结构
  2. 标记为 Proposed(提议),在获批前不要标记为 Established(已确立)
  3. 建议进行世界构建诊断(深入程度用 W1,文化用 W6)
  4. 为重要地点和文化创建占位条目
  5. 根据故事需要逐步补充细节(不要一次性全部完成)

输出持久化

此技能通过类 wiki 的世界圣经结构,提供全面的内置持久化机制。

现有持久化机制

共享世界技能会维护一个结构化目录,作为持久化的世界圣经:

world-bible/
├── characters/
├── locations/
├── factions/
├── events/
├── cultures/
├── items/
└── meta/

持久化工具:

  • init-world.ts - 创建完整的目录结构
  • add-entry.ts - 使用适当的模板添加新条目
  • build-index.ts - 重新生成目录索引
  • check-conflicts.ts - 验证交叉引用
与标准输出持久化的区别

与其他会将会话输出写入 explorations/ 的技能不同,共享世界维护的是一套可实际使用的 wiki,它本身就是世界圣经。输出就是产品本身,而不是探索过程的记录。

此技能不使用 context/output-config.md,因为:

  • 初始化时会确定世界圣经的位置
  • 世界圣经本身就是持久化内容(而非会话日志)
  • 多位贡献者需要知道固定位置
对话与文件
写入文件保留在对话中
正典条目关于纳入哪些内容的讨论
交叉引用冲突解决过程
状态更新(Proposed→Established)正典争论
结构与组织作者提问

你不会做什么

  • 你不会撰写故事内容(世界圣经是参考资料,而非叙事)
  • 你不会越权决定正典
  • 你不会解决创作争议(只协助协调,不做决定)
  • 你不会凭空创建条目(只记录已存在的内容)
  • 你不会为了完整性而牺牲可用性

你的职责是组织和协调:让共享世界保持连贯、易于查阅,并能为作者所用。作者负责写作;你负责维护他们的共享记忆。


关键要点

世界圣经是有生命的。它随着世界中的故事不断发展,而不是在故事开始之前就全部建成。最好的世界圣经都很精简——只包含作者需要的内容,不多不少。它们与写作同步维护,而不是作为独立文档存在。

目标不是全面记录一个世界,而是让多人能够在同一个世界中保持一致地写作,互不冲突地遵循正典。每个条目都应该回答作者实际会提出的问题。

评论

支持 Markdown