—
## 自己 / 团队介绍
我们是一支两人小队,因 TRAE 创造力大赛结缘组队。队伍名:永远效忠于豆包大人
**【后端/AI 方向】**:GoldLogic负责记忆系统架构设计、RAG 检索优化、写作 Agent 与审查 Agent 的联调。Vibe Coding 经验一年,擅长大模型应用开发。
**【前端方向】**:洋南负责用户交互体验优化、阅读器功能开发、界面设计。Vibe Coding 经验一年,擅长UI设计,前端开发,硬件设计开发。
**协作方式**:GitHub 功能分支 + PR 合并,AI 引擎分支(`feat/narrative-memory-v2`)和前端分支(`feat/frontend-ui-optimization`)独立开发,通过明确的接口约定互不阻塞。两人分工清晰、各展所长,后端管"故事质量",前端管"用户体验"。
—
## 产品简介
### 是什么
My Story 是一款 AI 驱动的 Web 应用——用户每天写下真实日记,AI 将其转化为设定在《诡秘之主》世界观中的连载小说。用户既是故事的读者,也是故事的主角:真实经历决定剧情走向,AI 负责将其编织成跌宕起伏的叙事。产品形态为 Web 应用,部署在 Vercel 上,浏览器直接打开即可使用。
### 面向谁
- 喜欢小说但渴望参与感、想影响剧情走向的读者
- 有记日记习惯但觉得纯文字太静态、想要更生动表达方式的人
- 想用 AI 把日常生活变成有趣故事的用户
典型使用场景:每天晚上花两分钟写下今天的经历,AI 生成一段融入《诡秘之主》世界观的小说段落。日积月累,形成一部以自己为主角的连载小说。
### 完整功能与用户使用路径
**用户使用路径:**
```
注册/设置主角 → 每日填写日记+选择行为标签 → AI 生成故事段落 → 预览/编辑/定稿
→ 自动归入章节 → 章节阅读器浏览 → 日历回看历史 → 月度进度概览
```
**完整功能清单:**
**核心写作流程:**
- 日记输入:富文本日记编写,可选择行为标签(学习/工作/健身/社交/休息/娱乐等)
- AI 故事生成:基于五层记忆系统,将日记转化为世界观内的小说段落
- 故事定稿与连载:每天生成一段,自动归入章节,形成连续的连载小说
- 编辑与重新生成:对生成内容不满意可编辑修改或重新生成
**记忆与剧情系统:**
- 五层记忆架构:即时上下文(最近5天全文)→ 章节摘要 → 世界观档案 RAG → 历史故事 RAG → 实体与伏笔追踪
- 场景合同系统:每日先生成结构化剧情计划,AI 严格基于计划写作
- 实体状态追踪:角色、物品、地点的状态随剧情演进自动更新
- 伏笔管理:自动埋设与回收伏笔,过期伏笔自动清理
- 跨日交接单:每日结尾生成状态交接,确保下一天的故事无缝承接
**阅读体验:**
- 章节阅读器:分页/滚动双模式,支持评论与点赞
- 日历视图:按日期浏览已生成的故事
- 月度概览:查看写作进度与故事统计
- 进度追踪:显示当前天数、章节、完成度
**设置与配置:**
- 世界观设置:可选世界观(当前支持《诡秘之主》),可自定义主角名、途径设定
- AI 配置:模型参数(温度、最大 token 数)可调
- 数据管理:本地数据导出与备份
> **截图 1(日记输入页面)**:____
>
> **截图 2(AI 生成的故事段落)**:____
>
> **截图 3(章节阅读器界面)**:____
> **截图 4(个人管理界面)**:____
### 相比初赛 Demo 的升级
| 维度 | 初赛 Demo | 复赛完整作品 |
|------|-----------|--------------|
| 记忆系统 | 简单上下文拼接 | 五层架构,每层独立预算与降级策略 |
| 剧情连续性 | 跨日常断裂 | 场景合同 + 交接单机制,保证无缝承接 |
| 世界观一致性 | AI 常脱离设定 | 现代用语自动转换 + 世界观审查 + 60+ 术语映射 |
| 质量门控 | 基本长度检查 | 多层门控(长度/句末/关键词覆盖/现代用语/因果审计) |
| 前端体验 | 基础页面 | 阅读器分页模式、评论点赞、交互优化 |
| 部署方式 | 需用户自备 API Key | Vercel Serverless 内置,开箱即用 |
—
## 产品演示视频
>
—
## 产品创作历程
### 灵感来源:当"读小说"遇上"写日记"
我一直有两个爱好:看小说和记日记。但这两个爱好各自都有让我"不满足"的地方。
看小说时,我常常被精彩的情节吸引,但每当故事走向不如我意的时候,只能干着急——我想参与进去,想改变具体的情节走向,让故事按照我的意愿发展。可小说是作者写的,读者只能被动接受。
记日记时,我记录着每天真实的生活,但回头翻看,满篇都是平铺直叙的文字。日记是静态的、私密的,那些经历过的喜怒哀乐,困在格子里,没有办法"活"起来。
有一天我突然意识到:这两个痛点其实可以互补。如果把我每天的真实日记作为素材,喂给 AI,让它改写成一部连载小说——那我既是故事的读者,也是故事的主角。我的真实经历决定了剧情的走向,而 AI 把平淡的日常转化为跌宕起伏的叙事。日记不再静态,小说不再被动,两个愿望一次满足。
这就是 **My Story** 的起点:**将每天真实经历转化为 AI 连载小说**。
### 初赛阶段:跑通核心链路
初赛阶段,我们的目标是验证这个想法是否成立。用最短的时间跑通了一条完整的链路:
用户填写日记 → AI 解析提取事件和行为 → 匹配预设的世界观映射(我们将日常行为映射到《诡秘之主》的世界中)→ 五层记忆系统组装上下文 → AI 生成故事段落 → 审查循环把控质量 → 定稿入库
技术上选用了 Vue 3 + Vite + Pinia + sql.js 的纯前端方案,不需要后端服务器,所有数据存在浏览器本地。世界观设定为《诡秘之主》——用户现实中"上班写代码",在小说里就变成"在塔罗会完成符文委托"。
初赛 Demo 证明了创意可行,但也暴露了两个核心问题:**记忆层的架构设计不够完善,导致跨日剧情经常断裂**;**写作的剧情连续性和世界观一致性体验不佳**,AI 有时会脱离设定自创主角名字,或者忘记前几天的剧情。
### 复赛阶段:从 Demo 到完整作品
复赛我们确定了三个优化方向,由两人分工推进:
**1. 记忆系统重构**
设计了五层记忆架构,每层有独立的 token 预算和降级策略:
- L1 即时上下文:最近 5 天定稿段落全文
- L2 摘要记忆:已完成章节的结构化摘要
- L3 档案 RAG:世界观设定关键词匹配检索
- L4 动态 RAG:历史故事段落的 FTS5 全文检索
- L5 实体+伏笔:角色状态追踪和未回收伏笔池
这套架构确保 AI 在生成第 30 天的故事时,仍然记得第 3 天埋下的伏笔,角色不会"失忆",剧情不会断裂。
**2. 写作质量优化**
引入了场景合同系统:每天的剧情由 StoryPlanner 先生成一份结构化的"因果计划"(包含开场承接、场景序列、转场约束、结尾钩子),AI Writer 严格基于计划写作,Critical Agent 审查是否违约。这样保证了每一天的故事都从前一天的自然结尾承接,用户日记的核心事件都有实际的剧情后果。
**3. 前端体验优化**
阅读器分页模式、评论点赞、设置面板交互优化等用户体验提升。
### 关键问题与解决思路
**问题一:无后端架构下的 API Key 安全**
我们坚持"轻量小程序"的定位,不搭建后端服务器。但初赛时这意味着每个用户都要自己填写 DeepSeek API Key——这对评审体验来说是不可接受的。复赛要求审查员能直接打开使用,不能要求他们去申请密钥。
最终通过 Vercel 的 Serverless Function 解决:前端以相对路径 `/api/ai` 调用同源的 Vercel 服务端函数,函数从环境变量中读取 API Key,密钥永远不会暴露到前端代码中。同时增加了同源校验(拒绝跨域请求)和分级限流(浏览器请求 30 次/10 分钟,非浏览器请求 5 次/10 分钟),防止密钥被滥用。
**问题二:评审 Agent 过严导致生成失败**
这是复赛打磨中耗时最长的问题。我们的写作流程包含多层质量门控:ContentQualityGate 检查正文长度、句末完整性、日记关键词覆盖、现代用语检测;ReviewLoop 做世界观一致性审查;还有日记因果审计验证用户日记事件是否真正影响了剧情。
但这些检查之间最初存在自相矛盾:比如用户日记写了"用电脑写代码",ContentQualityGate 要求正文中不能出现"电脑"(不符合维多利亚时代世界观),但关键词覆盖检查又要求"电脑"必须出现在正文中——两个规则互相打架,导致生成失败。
我们通过引入"现代用语→世界观术语映射表"(60 余条,如 电脑→计算器、上班→当值、电梯→升降梯)解决了这个矛盾:生成阶段就指导 AI 转换现代概念,覆盖检查过滤掉现代用语关键词,因果审计在比对前先转换日记事件中的现代术语。整个链路从"互相矛盾"变成了"各司其职"。
此外还修复了多个边界问题:状态机回滚保护(段落不会卡死在中间态)、保底交接单机制(记忆提取失败时仍保证跨日连续性)、实体状态保护(更新关系数据时不会意外"复活"已退场的角色)等。
—
## TRAE 实践过程
### 开发工具与流程
全程使用 TRAE Work 进行开发。我们采用 GitHub 功能分支协作:AI 引擎分支(`feat/narrative-memory-v2`)和前端分支(`feat/frontend-ui-optimization`)独立开发,通过 PR 合并到 main 分支。Vercel 连接 GitHub 仓库,main 分支推送即自动部署。
开发过程中,TRAE Work 的 AI 对话能力是我们推进复杂逻辑的核心工具——五层记忆架构设计、场景合同系统、现代用语映射表、日记因果审计等关键模块,都是通过与 TRAE Work 的 AI 对话逐步设计、实现、调试并优化的。
### 技术栈
- **前端**:Vue 3 + Vite + Pinia + sql.js(浏览器端 SQLite)+ Capacitor(跨平台)
- **AI**:DeepSeek 适配器,支持流式/非流式调用
- **部署**:Vercel Serverless Function(API Key 安全存储)
- **记忆系统**:无向量嵌入,全部基于关键词匹配 + FTS5 BM25 全文检索,适配浏览器端环境
### 开发关键步骤截图
> **截图 1(StoryEngine 核心生成流程)**:____
>
> **截图 2(五层记忆架构 / RAG 检索器实现)**:____
>
> **截图 3(ContentQualityGate 质量门控 / 现代用语映射表)**:____
### 关键任务对话 Session ID
> Session ID 1:3915779402633108:7645dfe196698d2ecddb94dc691c2c91_6a7692576ebea24076f6e344.6a7811911a333fff46449e28.6a7811911a333fff46449e26:TraeWork CN.0.1.45.no_sid.no_ppe.T(2026/8/9 13:35:13)
>
> Session ID 2:3915779402633108:83596b84e5e98696cd529b56d84b154b_6a4a53d9019760bbcf247c8e.6a567f1267a919a2c2257a9d.6a567f1167a919a2c2257a9b:TraeWork CN.0.1.47.no_sid.no_ppe.T(2026/7/15 02:25:22)
>
> Session ID 3:3915779402633108:d8eb1b6229b4a6b8641a871e533d2d5a_6a4a95b0019760bbcf247f25.6a4bf230c096e69b967a862c.6a4bf230c096e69b967a862a:TraeWork CN.0.1.47.no_sid.no_ppe.T(2026/7/7 02:21:36)
>
> Session ID 4:3915779402633108:bc529b0ed270cfdc8717a16a063cd0ed_6a4a954d019760bbcf247ebf.6a4bf2a3c096e69b967a8658.6a4bf2a3c096e69b967a8656:TraeWork CN.0.1.47.no_sid.no_ppe.T(2026/7/7 02:23:31)
>
> Session ID 5:3915779402633108:748a0d5cbdd41d734a3dc46f9308f9ef_6a4a9582019760bbcf247eef.6a4b349ec096e69b967a8318.6a4b349ec096e69b967a8316:TraeWork CN.0.1.47.no_sid.no_ppe.T(2026/7/6 12:52:46)
—
## 技术方案分享(加分项)
### 五层记忆架构
| 层级 | 名称 | 数据来源 | Token 预算 | 检索方式 |
|------|------|----------|-----------|----------|
| L1 | 即时上下文 | 最近5天定稿段落 | 8000 | 全文截取 |
| L2 | 摘要记忆 | 已完成章节摘要 | 3000 | 按章节顺序 |
| L3 | 档案 RAG | world_settings 表 | 3000 | keywords + priority 排序 |
| L4 | 动态 RAG | story_segments 表 | 5000 | FTS5 BM25 / LIKE 降级 |
| L5 | 实体+伏笔 | entity_state + foreshadowing | 3000 | 全量格式化 |
总预算上限 32000 tokens,超限时按优先级削减(L3→Top3,L1→2天,L2→最近2章)。
### 写作流水线
```
日记输入 → AI解析 → 行为映射 → 五层记忆组装 → 剧情规划(StoryPlanner)
→ 初稿生成 → 场景合同审查(ReviewLoop) → 润色 → 质量门控(ContentQualityGate)
→ 日记因果审计 → 记忆提取(MemoExtractor) → 定稿入库
```
### 纯前端 RAG 方案
不依赖向量数据库,全部基于关键词匹配和全文检索:
- 世界观档案:预标注 keywords 字段 + priority 排序
- 历史故事:FTS5 BM25 全文索引(主)/ LIKE 模糊匹配(降级)
- 同义词扩展:提升召回率
- 全部运行在浏览器端 sql.js 环境,零服务器依赖
### 现代用语→世界观映射机制
用户日记中的现代概念(电脑、上班、代码等)与《诡秘之主》维多利亚时代世界观存在天然冲突。我们设计了三层处理:
1. **生成阶段**:系统 Prompt 内嵌 60+ 条术语替换指南,指导 AI 在写作时自动转换
2. **质量门控阶段**:ContentQualityGate 检测正文中的现代用语,命中即触发修复
3. **因果审计阶段**:审计前先将日记事件中的现代术语转换为世界观表达,避免"正文不含现代词"被误判为"未体现日记事件"
—
## 商业化与社会价值分析(加分项)
### 社会价值
My Story 将"记录生活"这一行为从被动的文字存档,转化为主动的创意表达。对于有写日记习惯的用户,它让日常记录变得有趣、有动力坚持;对于小说爱好者,它打破了"读者只能旁观"的限制,让每个人都能成为自己故事的主角。长远来看,这种"真实经历→创意叙事"的模式有助于培养用户的表达能力和创作习惯。
### 商业化方向
- **多世界观订阅**:基础世界观免费,付费解锁更多世界观设定(武侠、科幻、奇幻等)
- **出版与分享**:用户连载到一定篇幅后,支持导出为电子书或印刷版,平台抽成
- **社交连载**:多用户共同书写同一世界观下的关联故事,形成社区生态
- **企业定制**:为企业团队提供定制化叙事体验(如团队建设故事、品牌故事共创)
—
## 产品迭代规划(加分项)
- **多世界观支持**:开放用户自定义世界观设定(武侠、科幻、校园等)
- **多角色协作**:支持多用户共同书写同一部小说
- **语音日记**:支持语音输入,自动转文字后生成故事
- **社交功能**:作品分享、读者互动、连载订阅
- **移动端 App**:通过 Capacitor 打包为 iOS/Android 原生应用
—
*本作品全程使用 TRAE Work 开发,AI 能力由 DeepSeek 提供。*









