NOTE

笔记

一些碎片化的小知识点,慢慢拼成对世界的理解。

26 条记录最近更新 2026-06-27
2026

默认审美就是功能

Product

核心判断

Screen Studio 的产品判断不是“让录屏更专业”,而是把专业审美压成默认结果,让用户不用进入剪辑师模式,也能得到一段可以直接发布的视频。

这类产品真正卖的不是编辑能力,而是替用户承担最后一段审美决策:该放大哪里、鼠标如何移动、画面如何留白、导出成什么比例。

背景与产品现象

录屏本来是一个很低门槛的动作:按下录制,讲完,发出去。但真正阻止很多人分享产品 demo、教程、内部 walkthrough 的,不是不会录,而是录完以后“不像样”。画面太乱,鼠标乱晃,重点看不清,比例不适合社交平台,导出设置也让人犹豫。

Screen Studio 把自己放在这个缝隙里。它的官网反复强调 automatic zoom、smooth cursor movement、professional animations by default、vertical export、optimal export settings baked in。也就是说,它没有把用户带进一个完整视频编辑器,而是把最常见、最影响观感、最容易被非专业用户做坏的部分,变成默认处理。

对比 Loom,它更像沟通基础设施:快速录、链接分享、评论反馈。对比 Descript,它更像内容生产工作台:转录、按文本剪辑、AI 修音、生成媒体。Screen Studio 的位置更窄,但也更锋利:它不试图接管完整视频生产,而是接管“录屏变得好看”这件事。

真正值得看的不是录屏,而是收尾

很多人会把 Screen Studio 看成“更漂亮的录屏工具”。这个读法太浅。

真正值得看的,是它把一个通常被产品忽略的末端动作,重新定义成核心体验。用户完成录制以后,心里想的不是“我想剪视频”,而是“我能不能马上发”。传统工具会在这里交给用户一堆编辑能力;Screen Studio 的判断是:大多数用户并不想获得能力,他们想逃离能力。

这和很多 AI / Agent 产品很像。用户不是缺少生成、分析、总结、调用工具的能力,而是缺少一个可以放心交付的末端形态。产品如果只把中间能力做强,最后仍然让用户自己收拾格式、校准语气、检查出处、决定发到哪里,那么它只是在制造半成品。

拆解

1. 这个产品相信什么用户行为

Screen Studio 相信一件很具体的事:大量用户愿意分享屏幕里的工作,但不愿意成为视频创作者。

这不是一个小差别。面向创作者的工具会假设用户愿意调时间线、调关键帧、调转场、调音轨;面向工作流的工具则应该假设用户只想把某个产品状态、设计想法、bug 复现或教程步骤讲清楚。

所以它没有把“高级编辑”放在前面证明自己强,而是把自动缩放、光标平滑、背景留白、字幕、导出比例这些东西做成录屏后的自然结果。用户不需要先学习审美规则,产品直接把一种审美规则施加在产物上。

这是一种很强的产品立场:默认值不是中性配置,默认值就是产品的品味。

2. 它牺牲了什么

Screen Studio 牺牲的是通用性。

它不是 Final Cut,不是 Premiere,也不是 Descript 那种可以覆盖采访、播客、短视频、课程、营销素材的综合编辑系统。它最擅长的就是屏幕录制、产品演示、教程和带有光标动作的说明视频。

这个牺牲反而让它成立。因为一旦承认自己只服务一类材料,它就可以替用户做很多强判断:什么时候该自动放大,鼠标应该变多大,静止光标要不要隐藏,竖屏导出时 zoom 该如何重算,系统光标放大后要不要替换高清版本。

通用工具不敢替用户决定这么多,因为它不知道用户到底在做电影、课程、访谈还是广告。窄工具敢决定,因为它知道自己要让哪一种产物变好。

3. 这个判断如何体现在具体体验里

最关键的功能不是某一个按钮,而是整套体验都在减少“审美选择题”。

自动 zoom 不是炫技,它解决的是观众在小屏幕上看不清重点的问题。光标平滑不是装饰,它解决的是真实操作中鼠标移动太快、太抖、太分散注意力的问题。背景、阴影、留白、inset 不是皮肤系统,它们把原本需要设计判断的画面边界变成可套用的默认语言。

更重要的是,很多处理发生在录制之后。比如改变光标大小、调整 zoom、导出横屏或竖屏。这让用户录制时不用过度表演,也不用每一步都担心“刚才鼠标是不是动得不好看”。产品把错误容忍度放进了后期默认处理里。

这就是它和普通录屏工具的区别:普通录屏工具保存事实,Screen Studio 修饰事实;但它修饰的不是内容含义,而是观看路径。

4. 对个人产品 / Agent 产品的启发

对个人软件来说,最值得学的不是“做得漂亮”,而是:把用户最不想承担、但又决定产物能不能被使用的判断,产品化。

写作工具不能只生成草稿,还要帮用户把草稿变成可发送的邮件、可发布的短文、可归档的笔记。研究工具不能只给总结,还要保留可回到原文的结构、引用和下一步使用路径。Agent 不能只说“我完成了”,还要留下用户能检查、能接手、能直接复用的工作物。

这尤其适合 Dewey 关心的 personal software / agent-native 方向。个人软件的竞争力往往不来自“我能做更多”,而来自“我每次都替你收好最后一段”。一个本地优先的知识工具,如果能把临时材料自然变成可读、可改、可带走的 Markdown;一个 agent 工作台,如果能把一轮任务自然沉淀成检查清单、变更记录、引用来源和下一步动作,它就不是在炫耀智能,而是在形成可复用的个人工作节奏。

5. 哪些不能照抄

不能照抄的是 Screen Studio 的视觉洁癖。

不是所有个人工具都应该追求强审美包装。有些场景里,过度修饰会伤害信任。财务、健康、代码、法律、研究引用这些领域,产品不能把“看起来顺”放在“可验证”前面。Screen Studio 可以修饰观看路径,是因为录屏的事实仍然在那里;但 Agent 如果修饰决策过程,用户可能会失去判断依据。

也不能照抄它的封闭默认值。Screen Studio 的默认审美适合录屏视频,因为输出目标相对明确。但个人知识库、任务系统、AI memory 的输出目标更复杂:有些内容要公开,有些要长期保存,有些只是临时过渡。这里的默认值必须允许用户看见边界,而不是把所有东西都包装成同一种漂亮结果。

结论

  1. 好的垂直产品不是给用户更多编辑能力,而是替用户做掉一组高频、低意愿、强影响的审美判断。

  2. 默认值不是设置问题,而是产品品味的交付方式;用户反复回来,常常是因为默认结果稳定地“像样”。

  3. Agent 产品也需要自己的 Screen Studio 时刻:不是展示模型多会做,而是把任务末端整理成用户可以直接检查、交付、复用的形态。

  4. 但收尾不能变成粉饰。越是涉及个人知识、权限、记忆和决策,产品越要同时交付好看的结果和可追溯的过程。

最后一厘米才是产品

Product

很多个人产品的问题,不是没有核心功能,而是把用户留在了“差一点就能用”的状态。真正有价值的产品判断,常常发生在最后一厘米:从完成,到可交付;从可用,到愿意拿出去。

Screen Studio 是一个很好的例子。它表面上是录屏工具,但它真正卖的不是“录下屏幕”,而是把一个普通人随手录出来的粗糙演示,自动变成看起来可以发布的作品:合适的画布、自动缩放、光标处理、背景、节奏感。这些都不是录屏的必要条件,却是用户从“我录好了”走到“我敢发出去”的关键门槛。

很多 AI 和个人软件会低估这一步。它们把生成、捕捉、整理、分析当成终点,但用户真正要用的,经常是下一步:发给别人、放进文档、提交给团队、变成一个可以继续维护的材料。如果产品只交付半成品,用户就会在最后一厘米重新变成手工劳动者。久而久之,用户记住的不是“它帮我做了很多”,而是“每次最后还得我收拾”。

这对 indie product 尤其重要。小产品很难在能力广度上赢大平台,但可以在一个高频场景里,把最后一厘米磨到极顺。它不一定要替代整个工作流,只要在某个明确出口上让用户省掉羞耻感、修补感和交付前的犹豫,就会形成很强的复用理由。

可以问一个小问题:你的产品现在停在“事情已经被处理了”,还是已经把用户送到“我可以直接拿去用”的那一步?

导入不是激活

Product

个人 AI 产品很容易把“接入更多数据”误当成激活:连上邮箱、日历、文档、聊天记录,好像上下文越多,产品越聪明。但对用户来说,导入本身没有价值,它甚至是一笔心理负债。真正的激活不是“我已经把资料给你了”,而是用户第一次看见:原来这些分散的东西之间,有一条关系被产品用起来了。

这也是很多 personal context 产品卡住的地方。它们一开始就要求用户相信一个未来收益:先授权、先同步、先等索引完成,然后某天你会得到更好的答案。问题是,个人资料越私密,用户越不会因为一句“更懂你”就放心。更好的做法是先做一个很小的闭环:比如从今天的日历会议里,自动找出相关的上次笔记;从一篇正在写的文档里,指出三条曾经保存但没被引用的材料;从一个待办里,带出最近一次相关对话的原句。

导入只是原料进入系统,激活是关系第一次变成行动。 前者证明产品有能力收集,后者才证明产品有能力判断。尤其是面向个人工作流的产品,用户不是缺一个更大的资料仓库,而是缺一个在正确时刻把正确材料递到手边的东西。

可以问一个小问题:如果今天只允许接入一种数据源,这个产品能不能在 5 分钟内做出一个用户愿意保留的结果?如果不能,问题可能不在数据还不够多,而在产品还没找到自己的第一个有效关系。

授权要有到期时间

Product

AI agent 一旦开始替用户点按钮、发邮件、改日程,权限设计就不能再沿用传统软件的“一次授权,长期可用”。更好的产品判断是:授权应该像租约,而不是像钥匙。它有范围、有目的、有到期时间,也应该能被用户随时看见和收回。

传统 OAuth 的问题不在于不安全,而在于它太像后台基础设施:用户点一次同意,之后很少再理解应用到底能做什么。对一个只读笔记应用,这也许还能接受;但对一个会跨应用执行任务的 agent,这个模型会变得很重。因为用户真正担心的不是“它有没有权限”,而是“它会不会在我没注意的时候,用这个权限做了我不想要的事”。

所以 agent-native 产品里,权限不应该只出现在设置页或首次 onboarding。它更应该出现在任务现场:这次帮你整理收件箱,只需要读取最近 7 天邮件;这次帮你约会,只能访问这个日历并发送这封确认邮件;任务结束后,权限自动失效。这样做牺牲了一点自动化的顺滑感,但换来的是用户敢把更真实的工作交给它。

这也是个人软件很容易被忽略的边界:不要急着把“连接所有账号”当成激活指标。可以问一个小问题:如果某个权限只能为一个明确任务临时开放,产品还能不能完成核心价值?如果不能,可能说明你卖的不是 agent 能力,而是用户对黑盒的忍耐。

临时内容别急着入库

Product

很多个人软件和 AI 产品一碰到“工作痕迹”,就会本能地把一切变成可保存、可搜索、可复用的材料。但真实工作里,有一类内容的价值恰恰来自它是临时的:一句口头确认、一次快速对齐、一段还没成形的想法。把它们全部入库,不是在增强记忆,而是在制造未来的清理债。

Slack Huddles 的判断值得借鉴:它没有把每次轻量沟通都设计成一场正式会议,也没有要求用户先创建一个文档对象再开始说话。它先承认“临时靠近”本身是一种工作形态;只有当对话里真的长出决定、链接或后续动作时,才需要被沉淀。

这对 AI 个人工具尤其重要。Agent 能听、能录、能总结,很容易把“我经过的一切”包装成卖点。可如果产品不能区分草稿、噪音、决定和承诺,用户最后得到的不是更聪明的第二大脑,而是一间永远不会自动收拾的储藏室。

可以问一个小问题:这个东西保存下来之后,未来的我会因为它更快行动,还是只是多了一条需要判断要不要看的记录?

设置要变成例子

Product

个人 AI 产品最容易高估的一件事,是让用户先把自己配置清楚。模型、语气、记忆范围、自动化权限、通知频率,看起来都是“高级能力”,但在用户还没看到产品如何工作之前,这些设置多数只是认知负担。好设置不应该先作为参数出现,而应该先作为例子出现。

因为偏好不是用户脑子里早就写好的配置文件,而是在使用中被校准出来的。一个写作助手与其先问“你喜欢什么风格”,不如先给三段可修改的改写;一个个人 agent 与其先让用户勾选十种权限,不如先展示一次“我会这样读取、这样行动、这样停下等你确认”的小样本。用户不是通过表单理解产品边界,而是通过具体结果判断:这是不是我想要的工作方式。

这也是很多 AI 产品设置页显得尴尬的原因:它们把不确定性外包给用户,却没有提供足够的体验材料。看似尊重用户控制,实际是在让用户替产品做产品判断。真正有 taste 的做法,是把少数关键取舍做成可试、可撤、可复制的范例,再把范例沉淀成设置。

可以问一个小问题:你的产品里有哪些“高级设置”,其实应该先变成一个用户能立刻运行和改动的例子?

把任务做成共同对象

Product

核心判断

Agent 产品真正要争夺的,不是聊天入口,也不是更强的自动执行能力,而是谁来定义“任务”这个共同对象

如果任务没有稳定的边界、状态、上下文和交接方式,Agent 越强,只会把工作流变得越难追踪;如果任务对象本身设计得足够好,Agent 反而可以自然地成为团队或个人工作的一种参与者。

背景与产品现象

Linear 最近几年值得看,不只是因为它是一个更快、更漂亮的 issue tracker。Linear 真正厉害的地方,是它一直在把软件团队的工作压缩成几个稳定对象:issue、project、cycle、triage、update。它不急着把所有协作形态都做成无限自由的白板,也不把管理需求摊平成一堆可配置字段,而是反复强调一件事:工作要能被快速写下来、被放进节奏里、被推进、被关闭。

这也是为什么它进入 Agent 时代时显得很自然。Linear 的产品页和案例里已经出现了这样的工作方式:工程师可以在 Linear 里把 issue 分配给 Codex 一类 coding agent;评论、状态变化、关联 PR 都留在 issue 里;项目更新也可以让 Agent 根据 issue、文档、讨论和 Slack 变化生成草稿,再由人修改发布。

这不是“给项目管理软件加一个 AI 按钮”那么简单。更关键的是,Linear 原本就把任务做成了一个适合人类和机器共同操作的对象:它有标题、描述、负责人、状态、评论、关系、代码链接、时间节奏和团队归属。Agent 只是进入了一个已经被产品设计整理过的场。

真正值得看的不是 AI,而是任务边界

大多数人看 Agent 产品,容易盯着模型能不能写代码、能不能跨应用、能不能自动跑完整个流程。这些能力当然重要,但它们不是产品体验的第一层。

第一层问题是:用户到底把什么东西交给 Agent?交出去以后,这个东西在哪里?谁能看见?什么时候算完成?失败以后怎么接回来?

如果这些问题没有对象承载,Agent 就只能躲在聊天里。用户发一段话,Agent 回一段话,中间发生了什么靠日志补救,最后产物散落在聊天记录、文件、PR、通知和用户脑子里。看起来很智能,实际很脆弱。

Linear 的启发在于,它没有先把 Agent 包装成一个神秘助手,而是把 Agent 放进 issue 这个朴素对象里。issue 不是聊天消息,也不是一段临时 prompt。它是一个可以被团队共享、被系统索引、被状态机推进、被未来重新进入的工作容器。

拆解

1. 这个产品相信什么用户行为

Linear 相信好团队不是靠更复杂的计划系统运转,而是靠高频、清晰、低摩擦的任务流运转。

这点从它的产品哲学里能看出来。Linear Method 里强调 scope projects down、generate momentum、write issues not user stories、launch and keep launching。这里的关键词不是“全面管理”,而是“推进”。它默认用户不是想维护一个完美的管理数据库,而是想持续把工作切成可执行的小块,然后让这些小块不断向前移动。

所以 Linear 非常重视速度和默认路径。快速创建 issue、键盘快捷键、GitHub 集成、cycle、triage,这些设计都在服务同一个判断:工作一旦需要被记录,记录动作就不能比做事本身更重;工作一旦进入系统,系统就应该推动它进入某种节奏,而不是把它丢进一个没有尽头的 backlog。

这对 Agent 产品尤其关键。Agent 最怕的不是不会执行,而是用户不知道该怎么把任务交给它。一个好的 Agent-native 产品,应该让“委托”像创建一张清楚的工作卡片一样自然,而不是像写一篇玄学 prompt 一样脆弱。

2. 它牺牲了什么

Linear 牺牲的是很多企业协作软件喜欢炫耀的“无限适配”。

它没有把自己做成一个每家公司都能随意改造成内部官僚流程的容器。它当然有配置能力,但整体产品气质是克制的:状态不要太多,路径不要太散,工作对象要清楚,界面要快,节奏要稳定。换句话说,它宁愿让一部分复杂组织觉得“不够贴合我们的流程”,也不愿让产品退化成一个字段和权限的仓库。

这是一种很重要的产品判断:当你服务的是高质量执行,而不是流程留痕,你就不能把所有例外都产品化。因为每增加一个“也可以这样”的选项,都会稀释默认路径的力量。

Agent 产品也会遇到同样诱惑。为了显得强大,很容易加上无限工具、无限模式、无限自动化开关。但真正有用的 Agent 工作流,往往需要更少的自由度:明确输入、明确边界、明确检查点、明确产物位置。自由度太高,用户反而不知道它现在在做什么,也不知道什么时候该介入。

3. 这个判断如何体现在具体体验里

Linear 的关键体验不是某个单点功能,而是它把“任务”做成了一个连续界面。

一个 issue 可以从客户反馈、团队讨论、bug 报告或产品想法进入系统;进入以后,它可以被 triage,被放进 cycle,被关联到 project,被连接到 GitHub PR,被评论,被更新状态,被关闭。这个过程里,用户不是在不同工具之间搬运一团模糊意图,而是在围绕同一个对象补充上下文。

这解释了为什么 Agent 能自然进入 Linear。Agent 被分配到 issue 时,它拿到的不是一句孤立命令,而是一个上下文容器;它的行动也不是在黑盒里消失,而是可以通过评论、状态、PR、更新重新回到容器里。人类接手时,不需要从聊天历史里考古,而是回到这个任务对象本身。

“Write with Agent” 生成项目更新也是同一个逻辑。它没有让 AI 凭空写一篇管理周报,而是让 Agent 读取自上次更新以来的 issue、文档、讨论和 Slack 变化,生成草稿,再由人修改。这里 AI 的位置很准确:它不是替代人的判断,而是把已经发生的工作变化整理成可发布的表达。

这比“AI 自动总结一切”更有产品分寸。因为总结不是目的,对齐才是目的;自动不是目的,可被人审阅和发布才是目的。

4. 对个人产品 / Agent 产品的启发

对 Dewey 关心的 personal software 和 agent-native 产品来说,Linear 的启发不是“也做一个 issue tracker”,而是:先设计可复用的工作对象,再设计 AI 能力。

个人软件里,很多 AI 功能失败,不是因为模型不够聪明,而是因为它没有稳定对象可以附着。今天总结一篇文章,明天生成一个计划,后天回答一个问题,每次都像一次性魔法。用户很难回来继续,也很难把结果纳入自己的长期系统。

如果是个人知识工具,核心对象可能不是 issue,而是 source、note、claim、task、draft、decision。如果是 agent-native 工作台,核心对象可能是 work item、run、artifact、review、memory patch。名字不重要,重要的是它们必须具备几个性质:人能读懂,Agent 能引用;状态能变化,历史能追踪;产物能带走,失败能接手;索引可以重建,源文件不被黑盒吞掉。

这也解释了为什么“聊天不是工作台”不是一句界面偏好,而是产品结构判断。聊天可以启动任务,但不能成为任务唯一的身体。真正长期可用的 AI 产品,需要把聊天里的意图沉淀成对象,把对象再连接到文件、引用、状态和下一步行动。

对个人 agent 来说,一个很小但重要的版本可能不是“让它自动完成更多事”,而是“让它把每件事变成一张可回看的工作单”:目标是什么、用了哪些来源、改了哪些文件、等待什么输入、下一步是什么、用户如何撤销或接手。这个版本验证的不是模型能力,而是用户是否愿意把真实工作托付给一个有边界的对象系统。

5. 哪些不能照抄

不能照抄 Linear 的团队协作假设。

Linear 面向的是软件团队,issue、cycle、project、triage 都天然适合多人协作和工程节奏。个人产品如果照搬这些词,很容易变成一种小型企业软件,把用户自己的生活和创作也管理成 Jira。

个人软件需要更轻的对象。它不一定叫 issue,可能叫“片段”“草稿”“判断”“待处理”“上下文包”。它不一定需要负责人、优先级、冲刺周期,但需要清楚地区分:什么是原始材料,什么是用户写下的判断,什么是 Agent 推断出来的结构,什么是下一步行动。

也不能照抄 Linear 的封闭工作区形态。对 local-first personal software 来说,用户信任来自可带走、可重建、可在应用外阅读的材料。Linear 可以把任务对象放在云端协作系统里;个人知识和 agent memory 产品则更应该让核心事实落在 Markdown、文件夹、可导出的任务记录或明确的本地数据库里。AI 可以生成索引和视图,但不该把用户的长期上下文锁进不可解释的应用状态。

最后,不能照抄“速度崇拜”。Linear 的速度服务于高质量团队的推进,而不是让一切都更快地滑过去。Agent 产品如果只学到“更快创建任务、更快自动执行”,却没有学到审阅、交接、状态和关闭,就会把用户带进更快的混乱。

结论

  1. **Agent 产品的核心界面不是聊天框,而是任务对象。**聊天负责协商意图,任务对象负责承载上下文、状态、产物和交接。

  2. **好的自动化必须先有好的边界。**没有边界的 Agent 看起来能力更大,实际更难信任;有边界的 Agent 才能被委托、被检查、被接手。

  3. **个人软件不该照搬团队管理工具,但应该学习它们如何让工作可返回。**一个能被重新进入的对象,比一次漂亮的 AI 回复更有长期价值。

  4. **下一代 agent-native 产品的竞争,不只是模型能力竞争,而是谁能定义最自然的工作容器。**谁定义了容器,谁就定义了用户如何开始、如何暂停、如何相信、如何回来。

同步冲突也是界面

Product

个人工具一旦承诺“本地优先”和“多端同步”,同步冲突就不能再被当成后台异常。它不是工程边角料,而是产品承诺被审问的时刻:用户到底能不能相信这个工具保存了自己的东西。

很多产品会把冲突处理得很像系统事故:静默覆盖、生成一个没人想看的副本、或者把两份内容粗暴丢给用户自己合并。这样做的坏处不是多了一点麻烦,而是让用户意识到:这个产品只在顺利时像个人软件,一旦出错就退回到文件系统级别的冷冰冰。

更好的判断是,冲突应该被设计成一个可理解的恢复界面。它不必复杂,但至少要告诉用户三件事:哪两份内容发生了分叉,产品准备保留什么,用户还能怎样撤回。对写作、笔记、任务、个人知识库这类产品来说,这比再多一个 AI 总结按钮更基础,因为它守的是用户最核心的心理安全感。

这也提醒我们,local-first 不是一句架构口号。真正的 local-first 产品,要把“不同设备、不同时间、不同版本”这些现实摩擦收进体验里,而不是假装它们不会发生。可以问一个小问题:如果用户最重要的一条笔记今天发生冲突,你的产品是在帮他恢复秩序,还是只是在展示一场事故?

引用要回到原文

Product

AI 搜索和个人知识库里,引用最容易被做成一种装饰:回答后面挂几个来源,像给生成结果盖章。但真正有价值的引用不是“证明我没瞎编”,而是把用户一键带回那段原文、那个段落、那份材料。引用如果不能回到现场,就只是安全感 UI。

NotebookLM 这一点做得比很多泛搜索型 AI 更清楚:用户先放入自己的 sources,回答再围绕这些材料展开,并把答案和材料片段连起来。它的关键不只是“有引用”,而是让用户知道这句话从哪里来、还能不能继续追下去。对研究、写作和个人资料库来说,这个返回通道比回答本身更重要,因为用户最终要处理的是自己的判断,不是模型的口吻。

很多产品会把引用当成合规补丁:生成结果已经占据主屏,来源被缩成脚注。这样做会让用户越来越习惯消费结论,却越来越难校准结论。更好的设计应该反过来:答案只是临时整理,原文仍然是事实源;引用不是尾巴,而是下一步动作。

可以问一个小问题:如果用户点开引用之后,不能立刻定位、比较、摘录、改写,那这个引用到底是在帮助用户思考,还是只是在帮助产品显得可靠?

好助手要有脚印

Product

Agent-native 产品不要把“我替你做了”设计成一段神秘的魔法。越是代替用户跨应用、改文件、发消息、查资料,越应该留下清楚的操作脚印:它看了什么、改了哪里、跳过了什么、为什么停下来。

这不是为了把底层日志暴露给用户,而是为了让用户能重新接管。传统软件里,用户每一步都是自己点出来的,路径天然可追溯;到了 agent 产品,路径被折叠进一次指令里,如果产品只给最终结果,用户其实失去了判断结果质量的材料。

很多 AI 产品误以为“无感完成”是最高级体验,于是把过程藏得很深。但个人工作流里的好助手,应该更像一个会收拾桌面的同事:桌面变干净了,同时你知道哪些东西被归档、哪些还没处理、哪些决定是它替你临时做的。脚印不是打断,脚印是可恢复的控制权。

这里的产品取舍很微妙。太细会变成噪音,太少又变成黑盒。比较好的形态不是实时刷屏,而是在任务结束后给一张可扫读的“动作摘要”:关键输入、关键变更、未完成项、需要你确认的判断。用户不一定每天读,但只要他想查,就能查到。

可以问一个小问题:如果你的产品明天开始替用户做更长的任务,用户是更需要一个更聪明的结果,还是更需要一条能让他放心追溯和接手的路径?

长任务需要工作单

Product

当 AI 任务从几秒钟变成几分钟,产品形态就不能再假装自己只是一个聊天框。聊天适合表达意图,进度条适合安抚等待,但真正的长任务需要变成一张可以被检查、暂停、接手和归档的工作单

很多 AI 产品的问题,不是模型不够强,而是把「正在做事」藏在一个会转圈的气泡里。用户不知道它现在卡在哪一步,不知道哪些输入已经被采用,也不知道中途发现方向错了能不能改。于是产品把本该由系统承担的过程责任,悄悄还给了用户:你只能盯着它,等它吐出一个结果,再从头判断哪里不对。

更好的形态不是把聊天做得更聪明,而是承认任务已经脱离对话,进入了一个可管理的状态。比如代码 agent 可以对应 issue、branch、diff 和 review;研究 agent 可以对应资料清单、待验证假设和草稿版本;个人助理 agent 可以对应待办、依赖、截止时间和交付物。工作单的价值,是让人能在任务中途重新进入,而不是只能在结果出来后验尸。

可以问一个小问题:如果一个 AI 功能需要用户等超过 30 秒,它是不是还应该只存在于对话流里?还是应该拥有自己的状态、历史、取消按钮和最终交付物?

空状态要交出第一件事

Product

个人 AI 产品的空状态,最不该急着讲愿景、要权限、让用户配置一堆来源。它应该先交出一件足够小、但足够真实的事:让用户在一分钟内判断“这东西到底会不会帮到我”。空状态不是欢迎页,而是产品和用户之间的第一笔交易。

很多个人效率产品一上来就要求连接邮箱、日历、Notion、GitHub,理由很充分:没有上下文就做不出智能。但从产品体验看,这等于让用户先支付隐私、整理和期待成本,再等一个不确定的回报。越是 AI 产品,越不能把“请先把你的世界交给我”当作启动方式;用户还不知道你是否值得被交付。

更好的做法,是把第一步缩成一个可验证的微任务:导入一篇文章,生成一张可编辑的卡片;拖入一个会议记录,整理出三条待办;粘贴一段想法,变成一个能继续写的草稿。这里的重点不是炫模型能力,而是让用户看到产品的工作方式、边界和手感。小任务做得清楚,后面的授权、同步、长期记忆才有理由发生。

可以问一个小问题:新用户第一次打开你的产品时,你是在请求他们先相信你,还是先给了他们一个不需要信任也能判断价值的动作?

浏览器不是一个主张

Product

核心判断

Arc 和 Dia 值得看的不是“AI 浏览器”这个品类,而是一个更朴素的产品问题:当你想替换用户每天使用十小时的工具时,审美主张不够,迁移成本本身就是产品。

浏览器不是一个可以被重新命名的窗口。它是登录状态、快捷键肌肉记忆、标签页组织方式、密码、插件、公司安全策略、默认搜索、阅读习惯和临时工作流的总和。任何新浏览器都不是在和 Chrome 的功能表竞争,而是在和用户已经沉没进去的工作环境竞争。

背景与产品现象

The Browser Company 先做 Arc,再把重心转向 Dia,这条路径很有意思。Arc 的公开表达一直很清楚:它想让互联网变得更安静、更个人化。Arc 页面强调 Spaces、Profiles、Split View、Themes,官网甚至还保留着“Arc receives Chromium updates only;active security patches and enterprise-grade protection, download Dia instead”这样的迁移提示。

Dia 的表达则变成了“the browser for your best work”。它不再主要卖一个更漂亮、更有观点的浏览器壳,而是卖工作日里的主动性:Morning Brief、Proactive Suggestions、从 tabs / inbox / calendar / docs 里找答案、生成可分享输出、用 Workspaces 分开工作与生活、用 Splits 保持固定布局。

这不是简单的“Arc 加了 AI”。更准确地说,是一个团队发现:如果浏览器要继续向前走,它不能只证明“我更好看、更有秩序”,还必须证明“我能接住你今天已经在做的工作”。

真正值得看的不是 AI,而是迁移成本

很多人看 Dia,会先看它有哪些 AI 功能:能不能总结网页、能不能读标签页、能不能帮我写东西、能不能主动提醒下一步。

这些都重要,但不是最关键的产品判断。真正关键的是:Dia 把浏览器从“网页容器”改写成“工作上下文容器”,试图用上下文收益抵消迁移成本。

Arc 的挑战在于,它把浏览器做得很有性格:侧边栏、空间、固定标签、视觉系统、命令感、整理感。这些东西能制造强烈喜爱,也会制造强烈门槛。喜欢的人会说“回不去了”;没迁移的人会觉得“我为什么要重新学习浏览器?”

Dia 试图换一种说法:你不是为了一个新浏览器而迁移,你是为了让浏览器知道你今天在干什么而迁移。这个变化比“加 AI”更值得看。

拆解

1. 这个产品相信什么用户行为

Dia 相信的用户行为不是“用户想聊天”,而是“用户的工作已经散落在浏览器里”。

这和很多 AI 产品的起点不同。很多产品默认用户会主动打开一个聊天框,把问题整理成 prompt,再等待回答。但浏览器里的真实工作通常不是这样发生的:用户在会议链接、日历、Gmail、Notion、Linear、Google Docs、PDF、网页资料之间来回跳;问题不是一个完整 prompt,而是一串未闭合的上下文。

Dia 的 Morning Brief 和 Proactive Suggestions,本质是在押注一个判断:如果上下文本来就在浏览器里,那么产品不应该要求用户“把上下文搬去 AI”,而应该让 AI 长在上下文所在的地方。

这个判断对 agent-native 产品很重要。Agent 的入口不一定是一个新的聊天窗口,也不一定是一个“任务中心”。更自然的入口可能是用户已经停留的工作表面:浏览器、文档、编辑器、日历、邮件、文件夹、命令面板。

2. 它牺牲了什么

要做成这个方向,Dia 必须牺牲 Arc 式的纯粹审美主张。

Arc 的魅力很大一部分来自“我重新想象浏览器”。它有一种非常强的产品人格:更安静、更漂亮、更像一个有品味的工作室工具。但这种人格也会把用户分成两类:愿意被改造的人,和不想被改造的人。

Dia 看起来在主动降低这种改造感。它仍然保留 Workspaces、Splits、整理 tabs 这些 Arc DNA,但叙事重心从“你应该用一种更好的方式上网”,转成“我帮你在工作日少掉几次寻找、切换、回忆和整理”。

这是一种取舍:少一点作品感,多一点任务感;少一点“新浏览器崇拜”,多一点“今天用了就省力”。

个人产品很容易舍不得这种取舍。独立开发者尤其容易爱上自己的产品观点:更纯粹的文件结构、更优雅的交互、更正确的信息架构。但用户迁移时关心的往往不是“你的观点是否正确”,而是“我今天搬过来,会不会立刻变慢、变乱、变危险”。

3. 这个判断如何体现在具体功能里

Dia 官网上几个功能都在围绕同一个问题展开:减少重新进入工作的成本。

Morning Brief 不是普通摘要,而是把 calendar、inbox、key links 放到一天开始前;Proactive Suggestions 不是等用户提问,而是在工作过程中提示下一步;Ask once / digs into tabs 的表达,强调的是不用在多个页面里手动寻找;Workspaces 把工作和个人浏览隔开,避免账号、历史和上下文互相污染;Splits 保存布局,让 recurring 1:1 或 focus time 可以一键回到熟悉状态。

这些功能表面上分散,底层其实在做同一件事:把“我刚才在哪里、现在要做什么、哪些材料有关”变成浏览器可感知的状态。

这也是 AI 产品从 demo 走向日常工具时必须跨过的一步。Demo 喜欢展示一次性的聪明;日常工具要处理重复进入。用户不是每天都需要惊艳,但每天都会遇到“我刚才看到哪里了”“这个会议相关材料在哪”“这个页面和那封邮件有什么关系”“我昨天做到哪一步”。

4. 对个人产品 / Agent 产品的启发

对 Dewey 关心的 personal software 和 agent-native 产品,这里有一个很直接的启发:不要急着把产品包装成一个“全新工作台”。

如果产品的目标是管理个人上下文,那么第一性问题不是“我们有没有 AI 聊天”“有没有数据库视图”“有没有 memory”,而是:用户原来的上下文在哪里?迁移会破坏什么?新产品能不能先在不破坏原工作流的情况下产生收益?

一个本地优先的个人上下文工具,应该把 Markdown 文件、任务、阅读材料、浏览器剪藏、日历片段和 agent 记忆组织起来。但它不能一上来要求用户把生活搬进一个新黑盒。更好的路径是:

先接住旧材料,保持可带走;再给出局部收益,比如更快捕捉、更容易回到未完成工作、更安全地让 AI 整理;最后才谈完整工作台。

换句话说,AI 产品的迁移策略应该是“先增强旧上下文”,不是“先替换旧宇宙”。

这也是为什么 local-first 的 source of truth 很关键。文件仍然是用户拥有的事实,SQLite、embedding、索引、agent 记忆都应该是可重建的增强层。这样用户才会愿意让产品进入更私人的上下文,因为退出成本不会被设计成绑架。

5. 哪些不能照抄

不能照抄 Dia 的地方,是把浏览器当成所有个人上下文产品的终点。

浏览器非常适合作为工作上下文入口,但它也有天然边界:很多长期知识不应该只活在 tabs 里;很多任务需要离线、文件、提醒、日程和写作环境;很多私人材料不适合被一个云端浏览器记住。对个人软件来说,浏览器是入口和线索,不一定是最终容器。

也不能照抄 Arc 那种高密度的产品人格。Arc 的审美和交互很强,但强人格产品需要用户愿意被训练。小团队做个人工具时,如果一开始就要求用户接受一整套新的空间、命名、视图和习惯,很可能还没证明价值,就先消耗了信任。

更不能把“主动建议”做成新的噪音层。Proactive Suggestions 只有在足够克制、足够可关闭、足够贴近当前工作时才有价值。否则它会从助手变成另一个通知源。

结论

  1. 浏览器赛道的关键矛盾不是 Chrome 功能太少,而是用户迁移成本太高。新产品必须把迁移成本当成核心体验来设计。

  2. Dia 值得看的地方,不是它把 AI 放进浏览器,而是它试图把浏览器变成工作上下文容器,用上下文收益解释“为什么要换”。

  3. 对个人软件来说,最好的替换策略通常不是宣布一个新工作台,而是先增强用户已经拥有的材料、动作和环境。

  4. Agent-native 产品要谨慎使用“主动”。主动不是多提醒、多生成、多出现;主动是知道什么时候能减少用户重新进入工作的成本,并且在做错时不伤害原来的上下文。

再进入比保存更重要

Product

稍后读、个人知识库、AI memory 这类产品,最容易误判的一点是:以为用户缺的是“保存能力”。其实保存只解决了焦虑的一秒钟,真正决定产品有没有长期价值的,是它能不能让用户在正确时刻重新进入那份材料。个人软件的核心不是把东西收进来,而是让东西在未来仍然有用。

Readwise Reader 是一个很好的参照。它把文章、Newsletter、RSS、PDF、网页高亮、YouTube transcript 等都收进一个阅读环境里,但更重要的不是“支持格式很多”,而是它没有把保存当终点。高亮可以被复习,材料可以被搜索,原本散落在浏览器、邮箱、PDF 文件夹里的内容,被放进一个可继续阅读、标注、回看的循环里。Readwise 原本的 Daily Review 也在强调同一件事:收藏不是资产,被重新遇见的收藏才可能变成资产。

这对 AI 个人软件尤其重要。很多 memory、context、capture 产品都在努力证明“我能记住更多”,但用户真正关心的不是系统记了多少,而是这些记忆会不会在下一次写作、决策、整理、对话时自然出现。如果每次都要用户主动搜索、主动召回、主动解释,那所谓 memory 很快会退化成一个更聪明但更重的资料柜。

可以问一个小问题:这个功能是在降低“保存成本”,还是在降低“再次使用成本”?前者会带来更多堆积,后者才可能带来复利。

聊天不是工作台

Product

AI 产品一个容易低估的产品判断是:聊天适合把意图说清楚,但不适合承载最终工作物。把所有结果、修改、版本和状态都塞在一条对话流里,短期看很自然,长期会让用户找不到“现在到底以哪个为准”。

Claude 的 Artifacts 做对的地方,不只是多了一个预览窗口。Anthropic 对它的描述是:把和 Claude 的对话变成更可协作的体验,并提供一个独立窗口,让用户立刻查看、迭代、继续构建生成的内容。这里真正重要的是边界:对话负责协商,Artifact 负责成为可看的对象、可改的对象、可继续使用的对象。

很多 AI 应用的问题,恰好出在没有这条边界。用户让 AI 写文档、改代码、做计划、整理资料,产品却只返回一串聊天消息。于是用户要自己判断哪一版是最终版、复制到哪里、后续怎么改、下次从哪里接着做。看上去 AI 很会回答,实际上产品把“工作台”这件事外包给了用户的耐心。

好的 AI 工作流不应该让聊天记录成为唯一事实来源。 一旦输出开始变成文档、表格、卡片、任务、脚本或记忆片段,它就应该从对话里“升格”为独立对象。可以问一个小问题:你的产品里,AI 生成的东西,是停留在一句回复里,还是已经变成用户明天还能继续使用的工作物?

Agent 失败时的体验

Product

大多数 agent-native 产品把设计精力花在了"当一切顺利时"——任务自动完成、结果超出预期、用户感到惊喜。但产品信任真正被建立或摧毁的时刻,几乎总在 agent 失败的时候。

一个 agent 做了错误操作,这件事本身不一定致命。致命的是三件事经常同时发生:它把用户的工作区或数据搞乱了、它说不清楚到底发生了什么、它下次还会犯完全一样的错。用户不仅要处理原本的任务,还要先替 agent 擦屁股。

第一个产品坑是"失败时把用户的工作区弄脏"。很多 agent 工具在执行中途报错后,留下半成品文件、改了一半的代码行、生成了但没有正确写入的内容。用户回来看到的不是"任务未完成",而是"我不知道哪些是我改的、哪些是 agent 改的"。好的设计应该反过来:agent 失败后的默认状态必须是可恢复的——每一步关键操作都有快照或回滚点,失败时自动回到最后一个确定干净的状态。这不是工程上的过度投资,这是产品信任的基础合约。

第二个坑是"失败时用技术原因解释"。用户不需要知道是 token 超限、API 超时还是模型产生幻觉。他们只需要知道三件简单的事:什么没完成、我的东西还在不在、我现在应该怎么办。把技术故障翻译成用户可行动的信息,比任何模型能力升级都更直接影响用户下次会不会再打开这个产品。

第三个坑往往被忽略:agent 不会从失败中学习。同一个 agent 在同类型任务上反复掉进同一个坑,用户发现自己从"使用者"变成了"质量 QA"。如果 agent 不能从失败模式中提取约束、自动调整后续行为,那它不是在帮用户——是用户需要替它维护一套"不要这样做"的心智清单。

反过来看,做得好的产品往往在失败路径上投入了比成功路径更多的产品思考。Cursor 的 inline diff 和单步 undo 不是锦上添花的细节,是产品安全网的核心结构。好的 agent 产品不是承诺"永不出错",而是承诺"出错不会让你更糟"。

可以问一个小问题:你的产品在用户最生气的那一刻,还能不能让他觉得"至少没丢"?

一次成功率才是硬指标

Product

把 Agent 的能力列表做长很容易,把一次成功率做高很难。一次成功率——用户发出指令后,Agent 不需要追问、不需要纠错、不需要重试就能完成任务的概率——才是 Agent 产品真正该盯的指标。这不是工程指标,这是信任指标。

用户不会统计 Agent 成功了 47 次,但一定会记住 Agent 连续两次搞砸的那个下午。人类对失败的记忆比成功深刻得多:一次失败带来的信任损毁,往往需要多次成功才能修复。这意味着 Agent 产品的一次成功率如果从 95% 掉到 85%,用户的主观感受不是「还行,大多数时候能用」,而是「这东西不太靠谱」。Agent 产品卖的是用户放手的能力,而放手的前提是不需要时刻盯着。

一个常见的产品误区是以为可以用「让用户确认每一步」来弥补一次成功率低。展示 diff 或让用户审批,只有在 Agent 大部分时候是对的时才成立——它是一种边界标记,不是质量兜底。如果 Agent 每做一个动作都需要你检查,你很快就会从「我在用一个智能助手」滑向「我在管一个不靠谱的实习生」。一旦用户心智滑过去,就很难滑回来。

值得留意的是,最好的 Agent 产品正在悄悄缩小自己的能力范围。不是做不了更多,而是选择不做——把有限的可靠性预算集中在最高频、最确定的任务上。一次成功率 95% 的窄 Agent,比一次成功率 60% 的全能 Agent 更容易变成日常习惯。 Agent 产品的护城河不是能做的任务数量,是用户敢放心交给它的任务数量。

可以问一个小问题:你现在用的 Agent 产品里,上一次它搞砸时,你是原谅了继续用,还是默默切回了手动操作?

别让命名挡住开始

Product

很多个人软件会高估“开始之前的整理”,低估“先把东西放进去”的价值。尤其是笔记、任务、AI memory 这类产品,如果第一步就让用户决定标题、项目、标签、空间、模板,产品其实是在把自己的信息架构成本转嫁给用户。

好的入口应该允许一件东西先以很粗糙的状态存在:一段语音、一句想法、一张截图、一个没命名的草稿。它不必立刻归类,也不必立刻变成漂亮对象。用户真正需要的不是“我现在就知道它属于哪里”,而是“我先不会丢,之后还能找回来、变清楚、被继续使用”。

这里的产品判断是:捕捉型产品不要把命名当成开门动作。命名、归档、关联、总结,最好发生在内容已经积累出上下文之后。因为上下文会反过来告诉产品:这东西是什么、和什么有关、该被放到哪里。过早要求用户命名,往往得到的是空泛标题和错误分类;延后命名,反而更可能得到真实结构。

可以问一个小问题:你的产品里,有没有哪一步是用户还没获得价值,就先被要求替系统做整理?如果有,那一步很可能不是高级功能,而是阻力。

视图不能反客为主

Product

核心判断

Obsidian Bases 值得拆的地方,不是它终于补上了“数据库视图”,而是它把数据库能力压回了正确位置:文件是事实,视图只是临时组织方式

对 personal software 和 Agent 产品来说,这个判断很关键。用户真正需要的不是又一个更强的表格,而是一个不会篡夺材料主权、可以随时重建、可以被人和机器共同理解的工作界面。

背景与产品现象

Obsidian 的 Bases 是一个核心插件,官方描述是可以为笔记创建类似数据库的视图,用表格或卡片查看、编辑、排序、过滤文件及其 Properties。它可以用来组织项目、旅行计划、阅读列表等。更关键的一句是:Bases 的所有数据仍然存储在本地 Markdown 文件和 Properties 里,视图本身由 .base 文件或嵌入在 Markdown 里的代码块描述。

这和 Notion 的数据库逻辑形成了一个很好的对照。Notion 官方说,数据库是 pages 的集合,每个条目本身就是一个 Notion page,可以有属性,也可以用列表、日历、图表等视图呈现。Notion 的强处是把“页面”和“数据库条目”统一成一个可协作的云端对象;Obsidian Bases 的强处则是反过来:它不要求用户先承认一个应用内对象模型,仍然让 Markdown 文件站在最前面。

所以这不是一个“谁的数据库功能更强”的问题。更值得看的产品矛盾是:当个人知识、任务、阅读、项目都开始被结构化时,产品应该让结构成为主系统,还是让结构只成为可替换的视图?

真正值得看的不是数据库,而是主权边界

大众很容易把 Bases 看成 Obsidian 终于追 Notion,或者把它理解成“本地 Notion 数据库”。这个看法太浅。

真正值得看的,是 Obsidian 在补结构化能力时没有改变用户的心理契约:你的材料仍然是文件,你可以在 Finder、VS Code、Git、其他 Markdown 工具里打开它们;表格、卡片、过滤、公式是叠加出来的看法,不是材料本身。

这是一种很强的产品克制。因为数据库视图一旦做得好,产品团队很容易顺手把用户推向“以后都在我的表格里工作”。短期看,这会提高留存和功能深度;长期看,它会削弱用户对个人软件的信任。尤其在 AI 时代,如果一个 Agent 既替你整理材料,又把整理结果锁在自己的对象系统里,用户会越来越难判断:到底哪些是我的原始材料,哪些是 AI 生成的索引、解释和投影?

拆解

1. 这个产品相信什么用户行为

Obsidian Bases 相信的不是“用户想建数据库”,而是“用户已经有一堆文件,但需要在不同场景下临时换一种看法”。

同一批笔记,今天可以按 status 看成项目面板,明天可以按 source 看成阅读列表,后天可以按 date 和 tag 看成复盘素材。用户并不是为了维护数据库而来;用户是为了让已有材料在当前任务里变得可用。

这个信念和很多效率产品不同。很多产品默认用户愿意先建一个完整系统:字段、关系、模板、视图、权限、自动化。真实个人工作往往不是这样。个人材料是混乱进入的:一句想法、一篇文章、一个任务、一个会议摘录、一个截图、一段临时判断。产品如果一开始就要求用户把这些东西塞进严格表格,反而会降低捕获频率。

好的个人软件应该允许输入自由,但在需要行动时提供结构。Bases 的方向正是把结构放在“查看和处理”的阶段,而不是放在“记录和拥有”的阶段。

2. 它牺牲了什么

这个选择一定有代价。

如果文件是源头,视图是派生,就很难像纯数据库产品那样拥有完整的一致性控制。字段命名可能混乱,Properties 可能不齐,用户手写 Markdown 可能破坏某些假设,跨设备同步也可能出现短暂不一致。它也不会天然拥有 Notion 或 Airtable 那种端到端的协作、权限、自动化和后台数据模型。

换句话说,Obsidian 牺牲的是平台型数据库产品的确定性,换来的是个人文件系统的可解释性和可退出性。

这对团队协作产品未必划算,但对个人知识工作很划算。个人软件最怕的不是少一个字段类型,而是几年后用户发现自己的思考、任务、阅读、草稿都变成了某个应用才能解释的残骸。Bases 的克制在于,它让高级视图存在,但不让高级视图成为用户的牢笼。

3. 这个判断如何体现在具体体验里

最关键的体验不是“可以表格显示”,而是“每一行仍然对应一个文件,每一列来自文件属性”。这让用户在视图中编辑结构化信息,同时仍然知道这些信息落回了哪里。

.base 文件或 Markdown 代码块也很有意思。它意味着视图定义本身可以成为 vault 的一部分,而不是只存在于应用数据库里。用户保存的不只是内容,还有自己如何看内容的方式。更重要的是,这种“看法”仍然是文本化、可迁移、可版本管理的。

这给 AI 产品一个很直接的提示:Agent 不应该只生成一个漂亮 dashboard,而应该把 dashboard 背后的规则也写成用户能看见、能改、能带走的东西。比如“最近需要推进的项目”“所有读完但未产出的文章”“所有包含待办的草稿”,这些都不应该只是黑盒推荐流,而应该是可解释的视图规则。

当用户不同意 Agent 的整理方式时,他不应该只能点“不喜欢”。他应该能看到规则、改掉规则、删除规则,必要时从原始文件重建一遍。

4. 对个人产品 / Agent 产品的启发

第一,早期 personal software 不要急着做一个总数据库。更好的顺序是:先保护原始材料,再做可重建索引,最后提供高质量视图。

如果 Dewey 要做本地优先的个人上下文产品,Markdown 和附件应该是 source of truth;SQLite、embedding、任务列表、关系图都应该是 derived layer。用户可以享受搜索、RAG、任务聚合和项目视图,但这些能力坏掉时,不能带走他的材料。

第二,Agent 的产品价值不只是“帮我归类”,而是“帮我生成可检查的组织方式”。一个 Agent 可以建议 Properties、抽取任务、建立阅读列表、生成项目面板,但它必须把变更和规则显性化。否则,所谓记忆和上下文会很快变成用户不敢依赖的暗箱。

第三,视图应该服务当前动作,而不是炫耀数据完整性。对个人用户来说,一个能立刻回答“我今天该推进什么”“这些材料能写成哪篇文章”“哪些任务藏在文档里”的视图,比一个字段完美但需要长期维护的数据库更有价值。

5. 哪些不能照抄

不能照抄 Obsidian 的地方,是把“文件优先”误解成“什么都让用户自己配置”。Obsidian 的用户愿意为可控性付出学习成本,但一个新的个人产品不能默认用户也愿意。

如果照抄 Bases,只给用户过滤器、字段、公式和视图编辑器,很容易变成另一个配置型工具。对 indie product 来说,更好的做法是提供少数默认视图:Inbox、Today、Active Projects、Reading to Write、Tasks in Docs。先让用户感到“我的材料被拿来做事了”,再逐步开放自定义。

也不能把本地文件当成逃避产品设计的借口。Local-first 不是“我们把文件给你,你自己管理”。Local-first 的产品责任反而更重:要处理命名、冲突、恢复、索引重建、AI 修改前后对比、跨设备延迟等细节。只有这些默认路径做稳,文件主权才会变成信任,而不是负担。

结论

  1. 结构化不是问题,结构反客为主才是问题。 好的个人软件可以有数据库视图,但不能让视图替代用户真正拥有的材料。

  2. AI 时代的个人软件要区分三层:原始文件、派生索引、临时视图。 原始文件属于用户;索引可以重建;视图可以变化。这个边界比多一个 AI 功能更重要。

  3. Agent 产品不要只给结果,要给可修改的组织规则。 用户信任的不是“它好像懂我”,而是“我知道它依据什么整理,我也能把它改回来”。

  4. 早期产品应该少做通用数据库,多做默认视图。 先证明某几个视图能让用户反复回来,再开放复杂配置。否则产品会很强,但不会真正进入个人工作流。

先让用户能带走

Product

AI 个人软件迟早都会谈“记住我”,但更早要回答的问题是:用户能不能把自己的东西带走。对个人上下文产品来说,真正的安全感不来自一句“我们会长期保存”,而来自用户知道:就算明天不用这个产品,材料、笔记、任务和决策痕迹仍然在自己能读、能改、能重建的地方。

这不是工程洁癖,而是产品判断。越是贴近个人工作流的软件,越不应该把“记忆”做成一个只能在本应用里召唤的黑盒。黑盒记忆短期看起来更智能:少配置、少文件、少概念。但它也让用户无法判断系统到底记住了什么、错在哪里、迁移成本有多高。最后用户会变得很谨慎,只敢让它处理低风险、可丢弃的东西。

更好的方向是把产品能力放在可带走的材料之上:Markdown、邮件、日历、任务、聊天记录、文件夹,或者任何用户已经承认的个人事实源。AI 可以负责索引、连接、总结、提醒和生成下一步,但这些都应该像可重建的层,而不是唯一的仓库。这样产品反而更容易被托付,因为用户知道它不是在索要所有权,而是在增强自己的工作台。

可以问一个小问题:如果用户决定离开,你的产品是留下一个清楚的个人资料夹,还是只留下一个“曾经很懂我”的账号?前者才更可能成为长期个人软件。