Skip to content

Repository files navigation

InkWorld Engine

AI 角色扮演文字游戏的记忆引擎

玩家玩到第 300 句,AI 突然忘了「左臂骨裂」的设定、忘了守卫被骗过、把死掉的角色又写活了——InkWorld 就是为消灭这类事故而生。每一句原文、每一条记忆、每一轮实际递给了模型什么,全部落盘可查、可改、可回滚。

InkWorld 只管记忆与上下文编排:不管界面,也不绑定任何模型。实现一个 provider 接口(两个方法)即可接入任意大模型。

心智模型:导演 / 演员 / 舞台

  • 导演(内核)——决定这一场递给演员哪几页剧本:世界观、铁律、关键事实、最近的台词。纯函数,断网可测,随时能打印它的决定逐条检查。
  • 演员(模型)——照着递上来的剧本演。演得不好是演员的问题;递漏了设定是导演的问题。两层分开,出问题时能分清病因。
  • 舞台(SQLite 存档)——一切发生过的事都在台上留痕:原文永不删除,每条记忆带着「从第几句学来的」,每次改动记着谁改的、改之前是什么。

仓库结构

目录 是什么
packages/core 引擎内核。纯函数、零 I/O:上下文拼装(assemble)、压缩计划(planCompression)、抽取落地与引用校验(applyExtraction)、铁律硬拦(checkHardRules)。附 28 条纯度守卫测试,机械保证内核不碰文件系统 / 时钟 / 随机数
packages/runtime SDK 层。SQLite 单文件存档(损坏即拒)、七表读写与字段级变更记录、轮次日志(分档剥离 / 降级必留警告)、session.turn() 主循环、读侧 API(分页 / validAt 时间点回看 / 关系图)、规则文件加载、快照导出、SillyTavern 世界书导入
packages/harness 质量验收。500 轮确定性合成会话 + 四条红线指标(未消解矛盾、溯源断裂、黄金召回、误砍必选项)+ full 档日志重放
skill/ Agent skill:写给 AI 编程助手看的说明书(SKILL.md)与七个可执行示例,示例纳入 CI 实际执行

核心特性

  • 六步召回管线:视角与时间点过滤 → 必选池(铁律 / 钉住条目)→ 关键词与实体别名触发 → 近场原文 → 分层摘要 → 按 token 预算分账截断。产出结构化清单(入选理由 / 被砍名单 / 各桶用量),绝不静默截断
  • 摘要可重建:压缩按 token 触发,原文一句不删;摘要只记覆盖区间,随时丢掉重做
  • 引用校验拦幻觉:抽取器声称的事实必须在指定轮次原文里找得到引用片段,找不到即隔离(不注入、等人工审查)
  • 视角分离believedBy):「守卫认为你是铁匠」与「你王子」分开存,角色的谎不污染世界真相
  • 矛盾不删旧账:事实被取代时旧的保留并标记,支撑回忆往事与关系演变时间线
  • 铁律硬拦forbid 禁则词字面检查,违规回复拦下重生成,超限交宿主决定
  • 可审计:每次写入逐字段记录 before/after 与改动人;改错了用 facts.history() 找回旧值写回即可

快速开始

要求:Node ≥ 22.22(node:sqlite)、pnpm 9+。

pnpm install
pnpm build
node --experimental-strip-types skill/examples/01-开一局.ts

最小使用:

import { InkWorld, EchoProvider } from '@inkworld/runtime'

const session = await InkWorld.open({
  path: './我的故事.db',
  title: '雨季港城',
  provider: new EchoProvider(),   // 换成你的 provider 即接入真模型
})

const { reply, violations } = await session.turn('我推开酒馆的门')

七个示例覆盖完整工作流:开一局 → 写世界观与铁律 → 建实体与事实 → 读记忆与关系图 → 查一轮发生了什么 → 纠正记错的事实 → 导入现成世界书。见 skill/examples/,排查手册与 API 一览见 skill/SKILL.md

开发

pnpm test            # 全量测试(238 条,含 500 轮合成会话验收,约 3 分钟)
pnpm typecheck       # tsc --build + 测试文件类型检查
pnpm test:examples   # 构建并实跑 skill 示例

设计文档(PRD)与 18 个任务的实施计划见 docs/

许可证

MIT

About

AI 角色扮演文字游戏的记忆引擎:可查、可改、可回滚

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages