第一篇故事 · 约 10 分钟
从一篇可审视的故事开始
TypeApe 把正文、结构、校验和 Agent 协作放在同一个本地项目里。按照这份指南,你会从新建项目走到一篇既能阅读、又能证明结构正确的故事。
- 1编写源码
- 2校验路径
- 3阅读结果
text: { 信号从花园地下传来回应。 };1. 创建项目
选择新建项目,输入故事名称,再选择一种故事类型:
- 线性故事从开篇沿唯一顺序走向一个结局,适合小说、剧本和不需要分支的叙事草稿。
- CYOA 多线叙事支持选择、多个结局和有限的状态记忆,适合让读者真正改变故事走向。
故事类型决定了可以使用哪些结构。线性故事只有一条路线,不能包含选择或 State;CYOA 支持分支,但每一种可能路线都必须保持有效。
2. 认识 Lattice 语言
故事源码使用 .la 后缀。一篇很小的线性故事是这样:
story main (
title: "信号花园",
language: "zh-CN",
format: novel,
entry: opening
);
scene garden (title: "花园") {
block opening (title: "信号", purpose: setup) {
text: { 一束光从花园地下苏醒。 };
next -> answer;
}
block answer (title: "回应", purpose: resolution) {
text: { 玛拉循着光回到家。 };
end;
}
}理解四个概念,就能读懂大部分源码:
- 声明为故事、实体、场景或 Block 提供稳定 ID。
- 圆括号里的元数据描述对象,但不会替换它的身份。
- 正文写在
{ ... }里,可以自然保留标点和换行。 - 每个 Block 都以显式的流转语句结束,例如
next、choice或end。
继续阅读 Lattice 语言指南,了解导入、对白、选择、有限 State、Pool、Module 和完整示例。
3. 先校验,再阅读
完成一组连贯修改后,打开校验。TypeApe 会逐层检查:
- 语法与导入:每个
.la文件能否安全读取? - 结构与引用:ID、所有权、目标和元数据是否一致?
- 故事逻辑:每条相关路径能否到达有效结局,且不会软锁?
先修复最早出现的错误,因为后面的消息可能只是连锁结果。警告不会自动阻塞故事,但需要你作出有意识的创作判断。
声明顺序只影响文件是否好读,不决定故事顺序。读者实际可达的内容由
entry、next、choice、enter、complete和end定义。
4. 体验最新源码
打开故事,阅读会从配置的入口开始。线性故事沿通过校验的链接继续;CYOA 会根据当前有限 State 展示选择和可用 Module。
预览进度是临时的。离开故事或重新打开项目后会从头开始,不会改动你的 .la 文件。
阅读时,可以选中精确正文,也可以直接激活段落标记来留下修改意见。保存每条批注后,选择发送批注给 Agent,即可开始一次聚焦的修改会话。
5. 让 Agent 以合适的方式工作
对直接、边界清楚的修改使用普通行动模式:
让玛拉在开篇里的语气更犹豫,保留现有路径结构,然后校验故事。
如果修改会跨越多个文件、引入新分支或 State,或者执行前需要确认方案,就打开计划模式。Agent 会只读检查项目、准备有序清单,并把计划交给你审阅。
继续阅读与 Agent 协作,了解计划审阅、各种批注、调整方向和后续任务。
