Files
life-echo/docs/doc.md
2026-01-17 19:34:40 +08:00

6.0 KiB
Raw Blame History

《往事拾遗》MVP User StoriesV1

视角说明

  • 用户:普通用户(偏中老年,但 MVP 不特化)
  • AI回忆录助手
  • 客户端iOS / AndroidReact Native / Flutter / 原生均适用)
  • 后端API + AI 服务
  • 数据库:关系型 or 文档型均可(这里用逻辑结构描述)

EPIC 0基础应用框架

US-0.1 应用启动与默认入口

User Story

作为用户 我希望打开 App 后直接看到「对话列表」 这样我不用学习就知道从哪里开始

前端iOS / Android

  • App 启动后默认进入 chat-list
  • 显示 App 名称 + 副标题
  • 底部导航栏可见

后端

  • 可无登录状态返回「默认对话列表」MVP 允许匿名)

数据库

  • conversation(至少一条系统内置对话)

    • id
    • type = system
    • title = 回忆录助手
    • last_message
    • updated_at

EPIC 1对话列表chat-list

US-1.1 查看对话列表

User Story

作为用户 我希望看到一个类似微信的联系人列表 能快速进入和 AI 的聊天

前端

  • 列表样式(头像 + 名称 + 最近消息 + 时间)
  • 默认只有一个联系人:回忆录助手
  • 点击进入聊天详情

后端

  • 返回用户的 conversation 列表
  • updated_at 排序

数据库

  • conversation

    • id
    • user_id可为空MVP
    • title
    • avatar_typeAI / 用户)
    • last_message
    • updated_at

US-1.2 查看新消息预览

User Story

作为用户 我希望在对话列表中看到最近一条消息 让我知道“书有没有在变厚”

前端

  • 单行消息预览(省略)
  • 时间戳显示(今天 / 昨天 / 日期)

后端

  • 返回 conversation 的 last_message
  • 在新消息生成后更新

数据库

  • conversation.last_message
  • conversation.updated_at

EPIC 2聊天详情chat

US-2.1 进入全屏聊天

User Story

作为用户 我希望进入一个沉浸式聊天界面 就像在微信里和一个人聊天一样

前端

  • 顶部栏:返回 + 回忆录助手 + 在线状态
  • 无底部导航
  • 消息列表支持滚动

后端

  • 返回该 conversation 的消息列表(分页)

数据库

  • message

    • id
    • conversation_id
    • sender_typeuser / ai
    • content_typetext / image / audio
    • content
    • created_at

US-2.2 发送文字消息

User Story

作为用户 我希望能输入文字并发送 来讲述我的回忆

前端

  • 文本输入框
  • 有文字时显示发送按钮
  • 发送后立即显示在聊天区optimistic

后端

  • 接收用户消息
  • 保存消息
  • 触发 AI 回复流程

数据库

  • message

    • sender_type = user
    • content_type = text
    • content = 原始文本

US-2.3 AI 自动回复并引导

User Story

作为用户 我希望 AI 能主动提问和追问 帮我把记忆说完整

前端

  • 显示“正在输入…”
  • AI 回复显示为左侧气泡

后端

  • 将上下文消息发送给 AI
  • 返回 AI 回复
  • 回复内容偏引导式

数据库

  • message

    • sender_type = ai
    • content_type = text
    • metadata可选tag = 引导 / 追问)

US-2.4 发送语音消息(占位)

User Story

作为用户 我希望能按住说话 像微信一样讲故事

前端

  • 按住说话 / 上滑取消
  • 本地生成音频文件
  • 显示语音气泡(时长)

后端MVP 可弱化)

  • 接收音频文件
  • 返回占位文本(或不转写)

数据库

  • message

    • content_type = audio
    • content = 音频文件 URL
    • duration

US-2.5 发送图片

User Story

作为用户 我希望能发老照片 帮助 AI 更好理解我的故事

前端

  • 从相册选择 / 拍照
  • 图片气泡展示

后端

  • 接收图片
  • 存储并返回 URL

数据库

  • message

    • content_type = image
    • content = 图片 URL
    • metadatawidth / height

EPIC 3回忆录生成与阅读

US-3.1 自动生成回忆录结构

User Story

作为用户 我希望聊天内容能自动变成“书” 而不是只是一堆对话

前端

  • 回忆录 Tab 显示目录页
  • 即使内容不多,也能看到章节雏形

后端

  • 定期 / 实时整理对话
  • 生成章节结构

数据库

  • memoir

    • id
    • user_id
    • title
    • subtitle
    • updated_at
  • memoir_chapter

    • id
    • memoir_id
    • title
    • order
    • content
    • progress

US-3.2 阅读章节内容

User Story

作为用户 我希望能像读电子书一样 阅读已经整理好的回忆

前端

  • 章节标题 + 正文
  • 舒适排版
  • 插图内嵌展示

后端

  • 返回章节内容HTML / Markdown

数据库

  • memoir_chapter.content

  • memoir_asset(插图)

    • id
    • chapter_id
    • type
    • url

US-3.3 显示“最近更新”

User Story

作为用户 我希望知道最近哪一章有新增内容 感觉“书在变厚”

前端

  • 目录页显示「最近更新」
  • 章节进度条

后端

  • 计算章节更新时间

数据库

  • memoir_chapter.updated_at

EPIC 4我的个人页

US-4.1 查看账户状态

User Story

作为用户 我希望在一个地方看到我的账户和套餐 不影响聊天体验

前端

  • 头像 + 昵称
  • 当前套餐(免费)

后端

  • 返回用户信息

数据库

  • user

    • id
    • nickname
    • avatar
    • plan_type

US-4.2 数据导出入口(占位)

User Story

作为用户 我希望知道我的数据是可以导出的 哪怕现在还不能用

前端

  • 导出按钮(灰态)
  • 提示说明

后端

  • 返回状态:未开放

数据库

  • 无新增MVP

MVP User Stories 总览Checklist

核心路径

  • ☑ 对话列表
  • ☑ 聊天(文字 + AI 引导)
  • ☑ 回忆录自动生成
  • ☑ 电子书阅读体验

增强体验

  • ☑ 图片
  • 语音
  • PDF 导出
  • 登录 / 套餐