用途:将小说、戏剧、诗歌或非虚构作品端到端分析为 Basic Memory 知识图谱,把角色、主题、章节、地点、象征与文学手法变为相互链接的笔记,便于检索、校验和遍历。适用于整本书分析、教学与学习资料、读书会知识库、需要结构化细读的研究项目,以及规模压力测试(约 200+ 笔记、1000+ 关系)。
流水线分为:Phase 0 设置项目、schema 与目录结构;Phase 1 为主要实体创建 stub 笔记;Phase 2 按章节分批处理;Phase 3 交叉引用、补充弧线与分析;Phase 4 校验 schema、检测漂移与一致性;Phase 5 遍历图谱并撰写综合笔记。
用法要点:写入统一走 write_note 与 edit_note;读取优先用 POSIX 读动词(可启用 enable_posix_tools,bm CLI 动词始终可用),例如用 cat <note> --section Observations 读取长笔记的某节,用 cat <source>.txt --lines 4200-4890 读取源文本某行段,用 find --meta status=active 匹配 frontmatter,用 find --meta ... --fields pov,setting 投影字段,用 ls、tree、find --name '*.md' 定位。两条规则:不要为了检查字段而读整条笔记,改用 --meta 谓词与 --fields 投影;不要把整个文件拉入上下文,用 section 和行范围切片。注意事项:find 默认每页 10 条,需要全部 N 章时用 --page-size 200;--name 不能与 --meta 组合,应改用位置路径限定,如 find /characters --meta 'note_type=character',路径按目录边界匹配笔记索引位置。若 POSIX 动词不可用,可用 search_notes、read_note、list_directory 替代,只是开销更大。
Phase 0 用 create_memory_project(project_name="<work-name>", project_path="~/basic-memory/<work-name>") 创建项目,项目名用作品标题的 kebab-case slug;再向 schema/ 写入 6 个 schema 笔记,定义 Character、Theme、Chapter、Location、Symbol、LiteraryDevice 的字段、观察类别与关系类型。目录结构包含源文本、schema、chapters、characters/major 与 minor、themes、locations、symbols、literary-devices、analysis、tasks。
Phase 1 在逐章处理前为主要角色创建 stub,使 [[wiki-links]] 一开始就能解析;种子清单通常含 8-20 个主要角色、5-12 个主题、4-10 个地点、4-10 个象征。Phase 2 准备源文本:把全文以 .txt 放入项目目录并索引一次,例如 cp 后执行 bm reindex --search -p moby-dick;保持 .txt 不转 .md,因为 markdown 会注入 frontmatter 导致行号偏移;保持文件在项目内,否则 bm cat 报 Entity not found,必要时对源文本退回 shell(sed -n '4200,4890p' <path>)。随后用 grep -n 扫描章节标题建立章节行号映射并存入项目,之后按行范围读取章节。按约 10 章一批分组处理,每章先读实际文本,再创建章节笔记,并向相关实体追加观察,最后用 memory-tasks 技能跟踪进度。限制:详细能力、收费、价格与平台信息资料未提供;schema 字段为起点而非固定模板,需按作品调整。