Foundation
对象模型与系统原则
对象模型与系统原则
本文定义长期对象词汇和系统设计原则。它用于表达 MOSS 未来可能需要理解的对象,不定义数据库表,也不要求第一阶段为全部对象预留字段或实现。
长期对象模型
长期系统不应把所有东西都硬塞成文章。以下是可逐步采用的长期对象词汇:
Content:文章、笔记、收藏、订阅内容。Bookmark:用户主动收藏的外部内容及其原始引用。Candidate:从外部来源读取、尚未进入每日推荐队列的候选内容。InterestProfile:从书签和反馈推导出的主题、作者、形式和语言偏好。RecommendationBatch:某次推荐的内容集合、排序依据和生成时间。Source:RSS、Newsletter、网站、作者、社交账号、输入来源。Topic:主题、领域、概念聚类、长期关注方向。Person:联系人、作者、合作方、会议参与者。Project:工作项目、个人项目、研究主题、长期事项。Decision:重要判断、选择、依据、结果复盘。Goal:长期目标、阶段目标、原则、价值约束。Feedback:有用/无用、状态、归属、重要性判断、人工修正。Event:日程、会议、提醒、时间块。Task:任务、计划、习惯、行动项。Media:图片、截图、票据、音频、视频。Asset:预算、持仓、财务目标、支出、投资资料。Learning:课程、书籍、技能、学习计划、练习。Output:文章、代码、报告、设计稿、发布内容。Message:邮件、聊天摘录、会议纪要、评论。Health:睡眠、运动、精力、体检、习惯数据。Account:数字服务、订阅、域名、工具配置和续费信息。Place:地点、出行、生活事务。IdentityDoc:证件、合同、保险、税务、法律文件。Commitment:承诺、义务、责任、约定。Purchase:消费、采购、愿望清单、保修、退换。PhysicalAsset:设备、物品、库存、实物资产。LifeEvent:人生事件、阶段变化、重要里程碑。Journal:日记、情绪、反思、复盘。Opportunity:机会、想法、线索、候选项目。Rule:个人原则、偏好、自动化边界。Memory:偏好、反馈、长期事实、个人画像。
Phase 1a 可以只实现 Bookmark / Candidate / InterestProfile / Feedback 的最小子集。其余对象在真实使用验证前只作为长期词汇,不构成 Phase 1a 的 schema 要求。
不在第一阶段范围内
第一阶段不做以下内容:
- 自动提醒
- 自动改日程
- 自动生成完整计划
- 自动处理图片库
- 自动理财分析
- 自动交易或任何高风险执行动作
- 全量接入所有信息源
- 全量接入聊天记录、健康数据、账号服务、地点和生活事务
- 全量接入证件、合同、日记、消费流水、实物资产和家庭事务
Phase 1a 只打穿一个闭环:X 书签 → 本地兴趣画像 → 候选内容 → 每日推荐 → 人工反馈 → 画像更新。
系统原则
1. Local-first
个人知识、日程、图片和理财都属于高敏感数据。系统应默认本地优先:
- 原始数据优先保存在本地
- 本地数据库是核心索引
- 云端模型或 API 只能作为可替换能力
- 敏感模块进入前必须设计权限和审计
- 兴趣画像、反馈和推荐历史属于敏感数据,默认不进入云端模型
2. Notion 和 Obsidian 不是唯一真相源
Notion 和 Obsidian 是重要工具,但不能作为系统的唯一核心。
- Obsidian 适合长期知识沉淀、Markdown、项目笔记和复盘。
- Notion 适合轻量 Dashboard、表格、看板和状态管理。
- 真正的长期核心应是独立的本地索引层。
3. MVP 小,长期词汇清晰
Phase 1a 只实现 X 兴趣推荐的最小闭环,但需要知道未来可能关联哪些个人对象。完整对象见“长期对象模型”;下面的对象仅用于识别潜在关联,不要求在 Phase 1a 建表或预留字段:
Content:文章、笔记、收藏、订阅内容Source:RSS、Newsletter、网站、作者、输入来源Project:工作项目、个人项目、研究主题Decision:重要判断、选择、依据、结果复盘Feedback:有用/无用、状态、归属、重要性判断Event:日程、会议、提醒Task:任务、计划、习惯Media:图片、截图、票据Asset:预算、持仓、财务目标Goal:长期目标、阶段目标Memory:偏好、决策、反馈
后续是否扩展为独立对象,应由真实使用频率、关联价值和风险要求决定,而不是提前固化。
4. LLM 做感知,代码做决策
LLM 适合做:
- 摘要
- 标签
- 主题识别
- 内容理解
- 图片描述
- 相似内容候选
确定性代码负责:
- 排序
- 状态流转
- 阈值判断
- 去重规则
- 权限控制
- 执行动作
这样系统才可解释、可回测、可调整。
5. 反馈是核心资产
用户愿意每天投入时间整理和反馈,这是系统长期变聪明的基础。
反馈至少包括:
- 有用 / 没用
- 现在看 / 以后看
- 属于哪个主题
- 关联哪个项目
- 是否转成任务
- 是否归档
- 为什么重要
这些反馈后续会成为个人画像、推荐和计划建议的依据。
6. 先定义准入标准
不是所有信息都应该进入系统。需要先定义什么内容值得进入:
- 主动收藏的内容。
- 和当前项目有关的内容。
- 和长期目标有关的内容。
- 来自高价值信源的内容。
- 未来可能复用的内容。
- 需要行动、判断或决策的内容。
否则系统会变成信息垃圾桶。
7. 状态流转比标签更重要
标签只能描述内容,状态才能推动处理。
每条内容至少应有一个明确状态:
inbox → reviewed → useful / ignored → linked → archived后续不同对象也应有自己的状态流转,例如任务、项目、订阅源、决策和资产。
8. 原始数据和加工数据分离
必须保留原始数据。
AI 生成的摘要、标签、分类、评分、主题关联都只是加工结果,可能错误,也应该能重算。系统不能让 AI 结果覆盖原始内容。
9. 敏感度分级
不同信息域的敏感度不同,不能用同一套处理策略。
建议分级:
- 普通:公开文章、网页收藏、公开资料。
- 中敏:个人笔记、项目资料、日程、任务。
- 高敏:图片、聊天记录、健康数据、财务数据、兴趣画像和反馈历史。
- 极敏:账号、密钥、身份信息、家庭信息、完整持仓。
不同级别决定是否进入索引、是否允许云端模型处理、是否允许自动化。
10. 可迁移性
系统不能被任何单一平台锁死。
需要关注:
- 原始数据是否能导出。
- 元数据是否本地保存。
- 标签和状态是否只存在 Notion。
- 图片和附件是否有本地副本。
- 数据库是否可备份、可恢复、可迁移。
11. 复盘机制
知识系统如果没有复盘,只会变成仓库。
建议固定复盘问题:
- 这周新增了什么?
- 哪些内容真正有用?
- 哪些主题反复出现?
- 哪些内容应该转成任务?
- 哪些关注点其实是噪音?
- 当前注意力是否偏离长期目标?
12. 自动化边界
自动化要分级控制。
系统可以逐步允许:
- 通过浏览器只读地获取候选公开内容。
- 自动生成每日推荐队列。
- 自动生成摘要。
- 自动生成计划草案。
- 自动提醒。
系统不应默认允许:
- 自动替用户承诺时间。
- 自动做财务交易。
- 自动删除高价值内容。
- 自动公开或发送私人内容。