由 LangGraph 编排智能体
LIA 需要一个引擎,能把对话分多步推进,能停下来征求同意,然后继续。LangGraph 提供了这样的执行图:每段对话的状态都保存在数据库里,回答逐字送达。
活文档 · 决策历史
每一项架构决策,从第一项到最后一项,都用几句话讲清楚,并关联到它所塑造的模块。
版本 4.6.02026年11月10日每次提交都会根据仓库数据保持最新
总览
每根柱子叠放一个月的决策,按主题着色。点击柱子即可跳转到该月。
时间线
每项决策用几句话讲清,并附上它塑造的模块。可按主题筛选、搜索关键词,或跟随某个模块。
第 1 章 · 2025年10月1日 – 2025年12月31日 · 48 项决策
智能体图、保存在服务器端的会话、规划器、数据注册表、记忆、可观测性、六种语言,以及在 Raspberry Pi 上的部署:其余一切都建立在这副骨架之上。
LIA 需要一个引擎,能把对话分多步推进,能停下来征求同意,然后继续。LangGraph 提供了这样的执行图:每段对话的状态都保存在数据库里,回答逐字送达。
存放在浏览器里的令牌容易被窃取,也无法吊销。现在由一个中间服务器(BFF)在服务器端保管会话,只交给浏览器一个 JavaScript 无法读取的 cookie——会话可以即时吊销。
过去每个问题都把整个工具目录发给模型,让提示词的长度和成本增至十倍。路由器会识别涉及的领域,只加载这些领域的工具子集;拿不准时,就回退到完整目录。
当时,LIA 不在每个工具处中断执行,而是在开始前先提交计划供你批准。如今计划审批已是自动的:确认改在每一个敏感操作上进行。
最初的计划过于简单,经常失败。现在,规划器会先分析意图、拆解请求,再写出一份逐步说明理由的执行计划。
并行执行器过去会同时启动主计划和它的备用方案:调用翻倍,成本也翻倍。现在,被排除的步骤会在每一波执行启动前移除。
过去,一句“所有联系人”就可能拉回几百条联系人记录,让成本暴涨。现在有三道关卡——规划器警告、工具内的硬上限、日志记录——杜绝没有上限的列表。
图中有些节点曾长达数百行,变得难以阅读。业务逻辑移入专门的服务;节点只负责协调。
一个将近 1,800 行的配置文件曾装着所有设置。现在它被拆成按领域划分的模块,再组合成一个在启动时校验的设置对象,导入它的方式保持不变。
这个领域原本叫 Gmail,好像只有一个提供商似的。现在改用通用名称,以便接入 Outlook、Apple Mail 等,而不必每加一个就全部重命名。
内部工具(上下文、记忆)需要一个假的“连接器”吗?不需要:与外部服务通信的工具和实用工具仍是两个不同的类别,各有一个简单的模板。
工具过去返回的是纯文本,没有任何地方保存。现在,一个数据注册表会保存返回的每个条目及其元数据,让后续的问题可以引用它,也让草稿能够被确认。
助手原本每换一次会话就忘掉一切。长期记忆按人隔离、按语义检索,保存偏好和重要事实——包括需要小心对待的敏感话题。
逐个执行工具会让耗时层层累加。执行计划写明依赖、条件和备用方案,并把所有能同时运行的步骤一起启动。
每个连接器工具原本都重复着 150 行相同的代码(认证、错误、缓存)。一个基类把这些共同部分提取出来;新工具只需编写自己特有的部分。
每个领域识别和显示条目的方式各不相同。上下文类型注册表对每个领域只描述一次,于是解析“这个”或“第三个”在各处都以同样的方式进行。
既要保护用户免受滥用,又要保护外部 API 的配额,即使运行多个实例也不例外。基于 Redis 的分布式限流按人、按类别进行,Redis 宕机时就退回本地限流。
干等十秒才看到完整回答很难受。服务器通过 Server-Sent Events 实时推送每个字、计划的各个步骤以及确认请求。
规划器需要知道有哪些工具、各自的成本和要求。带类型的清单(manifest)既是文档也是配置,并按领域过滤以节省 token。
没有哪个工具能单独覆盖指标、链路追踪和模型调用追踪。Prometheus、Tempo 和 Langfuse 各司其职,任何一个宕机,应用都照常运行。
Google 访问权限在数据库里必须不可读,要在过期前续期,并且绝不能同时被刷新两次。静态加密、在分布式锁保护下提前刷新以及 PKCE,覆盖了它的整个生命周期。
为了在中断或重启后继续,图的状态按对话线程保存在 PostgreSQL 中,并通过合并规则把历史截断到 token 预算之内。
各个部分原本各自处理错误。工具的统一格式、记录进日志的异常层级,以及翻译成六种语言的消息,让错误变得一致且可度量。
界面、服务器消息和 URL 都要说用户的语言。浏览器端用 i18next,服务器端用 gettext,支持六种语言,并提供为搜索引擎优化而本地化的网址。
给模型的指令必须能够演进,也能回滚。它们存放在带版本的文件中,按可配置的版本加载,并由变量填充。
路由、规划和回答的需求各不相同。每个组件都有自己的模型,藏在一层抽象之后,更换提供商无需改动代码。
日志要能被利用,就必须机器可读。structlog 输出带上下文(请求、用户、对话)的 JSON,并在写入前过滤掉个人数据。
UUID 标识符、始终使用 UTC 的日期、软删除和 JSONB 元数据:PostgreSQL 结构的约定一次定好,适用于整个应用。
会话、OAuth 状态、限流、锁和缓存都经由 Redis。每种用途都有独立的数据库、过期设置和原子操作;Redis 不可用时系统会降级运行,而不会卡住。
对话里满是隐含的指代:“第二个”“这个”“他”。上下文解析会识别这一轮的类型,把这些词关联到正确的条目,不会把领域混淆,六种语言都支持。
不可能每次测试都调用真实模型。测试策略在提供商的边界处模拟它,为每个测试隔离数据库,并覆盖异步代码。
REST API 遵循同一套约定:版本前缀、经过校验的 Pydantic 模式、按领域划分的路由器,以及统一的错误格式,并自动生成文档。
大约十五个服务既要在开发环境中运行,也要在 Raspberry Pi 5 上运行。Docker Compose 统一编排,配有健康检查、资源限制,以及面向两种架构的镜像。
一个外部服务出故障,不应拖垮整个应用。熔断器、退避重试、健康探针和受控降级让服务持续可用。
热情的、老师般的,还是朋友般的:每个人都能挑选 LIA 的语气。个性存储在数据库中,翻译成六种语言,并注入到提示词里。
为了真正做到个性化,LIA 在后台提取对话中重要的内容,按语义把它找回,并根据话题的敏感程度调整语气,而且绝不会阻塞回答。
服务器端渲染、实时流式回答、六种语言和基于 cookie 的认证:界面建立在 Next.js 的 App Router 之上。
每次数据库结构变更都通过一个有名称、有日期、可回滚的 Alembic 迁移完成,并自动检测所有数据模型。
格式变化后,已保存的对话仍须可读。状态带有版本号,加载时自动迁移。
对话在第一条消息时诞生,可以被软删除,会留下审计日志,并随账户级联删除,符合 GDPR 的要求。
每个领域(邮件、联系人、日历等)都有自己的智能体和工具,由一个父图统一监督;父图共享同一个状态,并传递可观测性。
发送邮件或创建约会都需要先征得同意。草稿会先展示出来,可以修改或取消,只有确认后才执行——每个决定都有记录。
仓储、服务和路由器通过 FastAPI 的依赖注入串联起来,数据库会话在恰当的时机打开和关闭,测试时也容易模拟。路由错误会传递到会话以回滚事务;关闭完成后才继续传播取消信号。
Gmail、日历、联系人、Drive 和任务共用一个基础:集中管理的 OAuth 范围、在锁保护下续期的令牌,以及按服务逐一遵守的配额。
每次模型调用都必须计量并优化。按提供商精确统计 token、实时计算成本、缓存以及语义化的工具选择,让发送出去的目录缩小到原来的十分之一。
汇率、记忆清理、发送提醒:有些任务必须自己运行。一个异步调度器按 cron 表达式启动它们,能平稳停止,并发布自己的指标。
按语言维护的关键词列表得分偏低,还需要没完没了地维护。现在,路由器把问题的语义与各领域和工具的语义进行比较,支持一百多种语言。
用自然语言就能创建提醒,它以 UTC 存储,以推送通知的形式发到所有设备上,附带个性化消息——即使有多个 worker,也绝不会发送两次。
第 2 章 · 2026年1月1日 – 2026年3月31日 · 18 项决策
第一次安全加固、语音听写、知识空间与在线文件夹同步、LIA 的日志、浏览器操控、使用限额——以及首个开源公开版本。
HTTP-only cookie、参数化查询、CSRF 防护、密码哈希:应用按照 OWASP 的建议布置防线。
智能体的结果可能是联系人、邮件、地点……对这种联合类型进行显式校验,可以防止转换时数据悄无声息地丢失。
每次回答之后,LIA 都会在后台找出用户感兴趣的一两个话题,不拖慢对话,用来让她的回答、继而让她的主动行为更加个性化。
唤醒词“OK Guy”、麦克风按钮、说话结束检测,以及在服务器上免费运行的多语言转写:语音输入就此上线,且没有持续性的 API 费用。
每个人都可以上传自己的文档;LIA 会把它们切分、建立索引,并通过混合检索(语义 + 关键词)找回来充实回答,这些空间彼此严格隔离。
不必先下载再上传文件,只需关联一个 Drive 文件夹:LIA 复用现有的连接器,用同一条流水线逐个文件地为文档建立索引。
助手以第一人称写下自己的思考和观察,带着她的个性色彩,并按语义重读这些内容,以便和每个人一起更好地推理。
被问到“你会做什么?”时,LIA 过去只会泛泛而谈。一个根据 FAQ 建立索引的系统知识空间,让她能准确回答关于自身功能的问题。
填写表单、搜索商品、阅读动态页面:一个自主智能体操控一个隔离的 Playwright 浏览器,按用自然语言描述的任务把事情办成。
每次模型调用都要花真金白银。按人设置的上限——token、消息数、费用——按周期或按总量计算,保护运营者免受失控的开销。
过去,已停用的 MCP 应用仍会收到请求。现在,分析器返回的领域会在每一步都与真正可用的领域比对过滤。
固定不变的计划无法对它发现的情况作出反应。主动阶段会重读结果、提出有用的核查,而迭代式子代理能够探索复杂的 MCP 服务器。
在四个进程下,修改过的设置过去只能传到其中一个。通过 Redis Pub/Sub 广播的失效通知,会让每个 worker 重新加载缓存。
对话时的个性渗进了日志的笔记。现在由一个固定的分析师人设来写冷静客观的观察和可执行的指令,无论当前启用的是哪种个性。
执行路径再也不会经过按领域划分的智能体节点。这份分析把这一点记录下来,好让管理界面不再提供毫无用处的设置。
为了不再在每次语义搜索时都为外部服务付费、等它响应,一个多语言嵌入模型直接在本机运行,Raspberry Pi 上也可以。
两套不同的存储曾导致每轮要计算五次嵌入。记忆和日志都迁到带 pgvector 的 PostgreSQL 上,一次嵌入满足所有用途。
活跃、停用、已删除、已抹除:账户遵循一个生命周期,删除后仍保留计费历史,并可依据 GDPR 应要求抹除一切。
第 3 章 · 2026年4月1日 – 2026年6月30日 · 23 项决策
ReAct 模式、不断演变的心理、技能、健康数据、晨报、LIA 的声音、子代理,以及按提供商配置的推理。
个性原本只是一段固定的文字。一个五层的心理引擎——特质、心情、情绪、关系、动机——让 LIA 的状态随着交流不断变化。
语义搜索改用 Gemini:存储和检索分用两个不同的空间,每个条目有两个向量(内容和关键词),找得更准。
僵硬的计划无法适应意料之外的结果。第二种模式由用户自行选择:模型调用工具、读取结果、决定下一步,这个循环集成在图中。
原本有两套相互竞争的机制在识别技能。现在,查询分析器把请求与每个已启用技能的描述进行比较:只有一个信号,而且是语义信号。
上下文管理器曾为每个领域保存三个视图,其中一个毫无用处。现在它只保留最近的列表和当前条目,指代解析因此更简单。
过去即使在旅途中,天气提醒说的也还是家里的天气。应要求保存的最后已知位置,让通知能跟随用户,无论身在何处。
好几个输出字段曾被混为一谈。业务实体现在通过一个明确、扁平的契约传递,读取方无须猜测。
一张地图、一个仪表盘、一个二维码:技能除了文本,还可以通过带类型的 JSON 契约返回一个交互式框架或一张图片。
一个 iPhone 快捷指令每天批量发送步数和心率,用一个可吊销的个人令牌认证,以便追踪趋势、发现变化。
首页变成每日简报:天气、日程、邮件、提醒等内容在智能体图之外并行读取,每个版块各自缓存,并附一段写好的综述。
模型的能力和价格原本写死在代码里。现在目录存放在数据库中,管理员无需重新部署即可编辑。
日志成为 LIA 的元认知器官:原始观察、指令、综合,以及用户画像,每一层都带有证据状态和自我评估。
多语言的神经网络语音合成逐句输出,给了 LIA 一副嗓音:三秒内发出第一个声音,是否开启由每个人自己决定。
作为可选项,语音识别可以改用更精准的 ElevenLabs Scribe;价格新增按音频分钟或小时计算的单位,以便准确计费。
语音合成原本由十四个环境变量控制。现在它成了目录中的一个角色,像任何模型一样在管理界面中选择。
持久化的 HTTP 客户端、在生成过程中按句切分并立即发送:书面回答还没写完,声音就已经开始说话。
一次五封邮件的摘要曾消耗将近 500,000 个 token。现在委派给子代理要经过一个可配置、有上限的 ReAct 循环,旧机制已被删除。
“我的医疗预约”过去搜不到任何结果:“医疗”这个词被原封不动地拿去搜索。一条规划原则把服务能够过滤的内容,和需要模型判断的内容区分开来。
确认之后,三条被删除的提醒曾显示成三行一模一样的内容。一个按草稿类型划分的声明式注册表在启动时校验,规定每种草稿如何显示。
过去对话太长时,就无法再发送任何新消息。压缩功能增加了超时、重试和可观测性,并以可见的截断代替卡死。
一个 1,800 行的自制客户端被原生客户端取代;如何请求推理,变成按提供商的配置。
日志曾写出一些无用的条目。现在它写得更少,保留了发现机制,而且每一层在读取时都有明确的用途。
每个进程原本各自暴露自己的计数器。Prometheus 的多进程模式把它们汇总起来,每个 gauge 都声明自己该如何合并。
第 4 章 · 2026年7月1日 – 2026年7月31日 · 101 项决策
一个月,一百项决策:一次端到端的审计、安全与备份、原样执行开发者所运行命令的 CI、只在有理由时才把人叫醒的告警,以及最早的几条诚实规则。
数据类型与工具之间的关联原本有两个不同步的来源。现在它们是本体与清单(manifest)的并集,并由测试保证其完整性。
回答原本要等主动阶段结束后才加载上下文。现在两者重叠进行,为调用工具的轮次省下好几秒。
获得同意后恢复执行,过去会重放代价高昂的调用。现在每个节点只设置一次中断,再通过图来循环,恢复执行因此变得安全。
过去,客户端地址可以被伪造,HTML 也可以被注入。端口只绑定本地回环地址、代理请求头经过校验、HTML 经过清理,堵上了这两个漏洞。
三个窗口化函数已经没有任何地方调用。它们连同各自的设置和测试一起删除:一个死掉的子系统,每次改动都要为它付出代价。
一次审计发现了七类不易察觉的缺陷。每一类都被修复,并配上一道永久的防护——一个测试、一个指标或一条成文规则——确保它不再出现。
一次审计瞄准了三处边界:冻结异步循环的同步代码、可从局域网访问的内部服务,以及未经过滤就显示的模型输出。每个缺陷都已修复,并做了修复前后的测量。
有些缺陷只在并行运行或删除账户时才会出现。每个并行任务各用一个数据库会话、完整的 GDPR 清除,以及加固的技能沙箱,把它们一一消除。
内容安全策略曾导致 MCP 小组件无法工作。现在每个第三方小组件都有自己的文档,也就有了自己的策略,而不会削弱应用本身的策略。
第一个版本就附带了一个 nginx 反向代理,却从未接入任何东西。它被删除了,因为一个用不上的文件会误导读它的人。
模型过去有时把 JSON 写在正文里,而不是按预期的结构返回,请求因此失败。一张安全网会把这段 JSON 捞回来,再加上一条提示词写作约定,避免这种冲突。
“我接下来的医疗预约”曾随模式不同而随机失败。现在工具先列出整个时段再自行过滤,重置日期边界,并限制读取的数量。
每个领域都有一个单数名称和一个复数的结果键,两者都取自同一个注册表:不再有任何手工维护的表。
人工确认流程中有不少部分,曾对所有人都只显示法语。现在给模型的指令改用中性英语,用户读到的一切都翻译成全部六种语言,并有一致性检查把关。
LIA 的心情过去总是卡在少数几种状态里。原因——每一轮都会生成新的情绪——已从源头处理,阈值无需重新构建即可调整。
心理状态原本只是用抽象的形容词描述,根本感觉不到。现在它体现在说话方式上——节奏、长短、语体——而从不直说“我感到……”。
Pipeline 模式和 ReAct 模式原本以两种不同的方式触发确认。现在,无论哪种模式,所有确认都使用同一个带类型的契约。
几个自主引擎和一个审批框架已不再被调用。它们被分成五批删除,每批都经过验证,没有丢掉任何仍在运行的部分。
Brave、OpenWeatherMap 和 Perplexity 原本各自按进程限流,多 worker 时就会出错。现在它们继承同一个加固过的基类,生命周期是确定的。
数据库原本没有任何带版本的备份。现在一个专用容器每晚导出并按保留策略存放,另有一个脚本在一次性数据库中证明能够恢复。
对备份加密的各种方案做了分析和比较;结论是暂缓,并规划好了一条通往异地副本的路线。
每个 worker 原本只用一条共享连接来保存所有对话。连接池消除了这个瓶颈——系统中的头号瓶颈。
安装的版本过去在不同机器之间各不相同。由 uv 生成、在 CI 中校验的通用锁定文件,固定了每一个传递依赖。
原本有 250 个集成测试没有在任何作业中运行。现在它们加入 CI,使用真实的数据库;禁止将测试隔离搁置,覆盖率也不能再倒退。
客户端层原本抛出原始的 HTTP 异常。现在它抛出领域错误,调用方得到的响应完全不变。
健康探针原本永远报告不了故障。现在它拆成“存活”(始终返回 200)和“就绪”(数据库和 Redis 未响应前返回 503)。
聊天的核心过去只靠类型检查保护。现在有数百个测试覆盖流式传输、确认流程和语音,覆盖率门槛只升不降。
过去关闭标签页会中断生成。现在回答在别处独立生成,通过 Redis Streams 分发,你回来时会接着实时显示。
技能生成器原本需要四步手动操作。现在技能可直接安装,走一条统一且加固过的导入流水线。
告警系统曾在没有任何书面决定的情况下被关掉。现在一组最精简的关键告警重新启用,由 Prometheus 评估、通过电子邮件发送,每条都配有处置流程。
去“我兄弟”那里的路线,有时会导向一个随意的地点。确定性的“指代某人”证据,加上执行时的参数防护,封住了这次故障的每一个环节。
原本只有 14% 的参数带有语义类型。一轮标注工作终于把参与者、发件人、地址和日期在不同工具之间串联起来。
负责流式输出每个回答的函数曾超过 1,100 行。其中的语音协调逻辑被提取到一个带类型的状态机中。
API 的启动代码曾长达 780 行。现在每个子系统都有自己的初始化模块,由唯一一个函数决定顺序。
路由器和服务现在抛出集中定义的错误,客户端收到的响应保持不变:这条规则如今适用于整个后端。
确认预览的渲染原本是一连串层层嵌套的条件判断。现在由一张按草稿类型划分的渲染表取而代之。
调用最频繁的领域依赖了太多其他领域。认证和账户被拆开,让身份成为一个稳定的基础。
LIA 可以打电话给第三方确认是否有空,再把摘要带回聊天中。电话经由你自己的连接器拨出,须经确认、有上限,而且只读。
对计划失败的分析只是一种建议:它为可观测性提供信息,但不会自行启动一个新计划。
过去一次重启就会让文档卡在“处理中”。现在文档和来源都变成带租约的任务,可自动恢复处理。
十一项审计发现都亲自处理,不做委派,也没有引入回归:每次重构都先写测试,把当前行为固定下来。
过去一半的通知都在说同一个话题。现在兴趣按感知到的主题归类,并按稀有程度抽取,有测量数据为证。
确认请求原本只是一段需要自己理解的文字。修复了一些潜在缺陷之后,它们变成了带按钮的卡片。
被撤销授权的连接器只会换来一句含糊的道歉。现在一条横幅提供一键重新连接——靠的是按异常类型分类,而绝不是按消息文字。
心跳总是翻来覆去说同几个兴趣,却拿不出任何具体内容。多样化的抽样、共享的登记表、基于内容的防重复,再加上具体信息的补充,把方向纠正了过来。
在 iPhone 上,地图和 MCP 应用曾一片空白,也没有任何提示。调整后的隔离策略和可见的失败状态解决了显示问题。
小组件曾经时而重复出现,时而丢失。现在模型再也不写它们的标记:由宿主负责放置,小组件随所属消息一起走。
过去回答的第一个字一出现,执行步骤就消失了。现在它们随消息一起保存,事后也能查看。
每个回答下方都可以点 👍 或 👎,并可附上评论:评价会被保存并反馈到学习中,但绝不会用来替你重新生成回答。
“我得给水管工回个电话”过去会随对话一起消失。现在承诺事项登记簿会把它们记下来,心跳也会有分寸地提醒跟进。
“每天早上帮我做这件事”现在经确认后就能在聊天中落实;LIA 发现某个请求反复出现时,也会建议创建例程。
文档空间成为规划器可以查询的一个领域,360° 视图则汇集了 LIA 对某个人所知的一切。
心理相关的设置在上线时没有经过任何测量。现在先建立观测工具,期望的特性则变成测试。
通行密钥、带备用码的 TOTP 第二因素,以及任何敏感操作前的再次验证:安全最大化,便利也最大化,而且从不向浏览器暴露任何机密。
每个人都能看到已登录自己账户的设备,并可远程吊销其中任何一台,所用数据严格精简(浏览器类别、截断的 IP)。
依据 GDPR 的数据可携带权,每个人都能下载自己的全部数据;这些数据由持久化任务准备,绝不导出任何机密。
由唯一一个 service worker 负责通知和离线,并配有一张带 LIA 配色的断网页面。
当某一轮没有产生数据时,回答会依据最近出现的实体,但绝不让旧数据污染另一个问题。
心跳过去每轮要传输 30,000 行数据,只为得出几个数字。现在由数据库端按天聚合,每天只返回一行。
靠切换用户来隔离脚本,只有在 API 以 root 身份运行时才起保护作用。现在每个技能脚本都在一个无网络的一次性容器中运行。
过去重建一个空间的索引会让它部分变空。现在新旧两代索引并存,等新一代准备好后,指针才切换过去。
持续集成工作流里原本内联了将近一百条命令。现在每一步都调用 Taskfile 中的一个任务:CI 执行的,正是每个人在本地运行的命令。
没有任何地方使用的前端 hook 被移除,编译结果就是证明:要维护的代码更少,也没有丢失任何功能。
对确认请求的自由回复(同意、拒绝、修改)进行分类时,过去会在某些工具名称上出错。现在按动作动词分类,并配有覆盖所有情况的示例。
语音过去会在 URL 或小数中间断句。现在分隔符只有后面跟着空格或位于文本末尾时,才算结束一句话;原先的两套实现也已合二为一。
十个测试套件因缺少 API 密钥而自行关闭,因此从未在 CI 中运行。现在要么模拟提供商,要么给测试打上醒目的标记,并有一道防护防止问题再次出现。
九个模块和它们留下的孤立翻译被逐键删除,仍被某个在用组件共享的翻译则原封不动。
某个 JavaScript 依赖的漏洞要求换用一个不兼容的版本。一个小小的互操作补丁套用了上游真正的修复,同时不破坏工具链。
键的对齐检查看不出某条翻译已被截断。截断处已经修复,并有一道棘轮检查防止它们再增多。
日志里几乎所有条目都落进了同一个主题。现在按话题分类,并由一套测量工具确认每个主题都保持活跃。
连续六次生成图片的请求都失败了:模型把“null”这个词当成了技能名。现在输出会被规范化,两个让该功能根本无法使用的上限也被取消。
在手机上,回答明明已经准备好,却可能一直停在“正在生成……”。浏览器端的看门狗会察觉这种沉默,并自动恢复这条流。
四个 worker 同时为系统知识重建索引,把提供商压得不堪重负。现在只有一个 worker 取得索引权,而且它的缓存在部署后依然保留。
首次启动时,每个 worker 都会重新计算同样的嵌入向量。现在通过文件认领指定唯一的计算者;其他 worker 等待它的结果。
每一次向记忆、兴趣或日志提取信息的决定现在都会被计数,以确认没有哪类回合被误跳过。
要调整一项技能时,助手会重读当前版本,重新生成完整的技能包,并在工具中确认,而不是打一个局部补丁。
过去,每个被提到的话题都会变成一项兴趣。现在要问的是:这个人是否表现出持久的关联?问起不等于喜欢,而且每新建一项兴趣都必须引用依据。
第三方写的文字——一封邮件、一份邀请、一个网页——必须始终只是数据,绝不能成为指令。信任度按数据类型声明,并在模型读取这些数据的每一处生效。
一个针对记忆的混合检索已经好几个月没人使用。该模块连同它的设置和指标一起移除,并附有闲置的证据。
ReAct 回合的指令原本以消息形式加入,历史窗口一滑动就会消失。现在它们成为状态,每次迭代都重新组装到最前面。
等待你同意的时间曾被算作计算时间。现在 ReAct 预算只计真正的计算,还有一道护栏会叫停不断重复同一调用的循环。
一条全局 CSS 规则让所有“吸顶”(sticky)元素从一开始就失效。换一个 overflow 取值,既能裁剪页面,又不破坏吸附效果。
明明知道某个设置的名字,却得把所有分区都展开才能找到。现在有一个搜索框为各分区建立索引,目标不存在时也会明确告知。
MCP 协议的 2026-07-28 修订版是一次重构。LIA 能同时使用新旧两代协议,并把 OAuth 绑定到发现的签发方,没有任何退化。
预填输入框的链接和直接发送请求的链接,现在使用两个不同的参数,确保绝不会发送未经本人确认的文字。
通话结束后,过去只剩下一段摘要和少量数据。现在承诺、建议的后续步骤和不确定之处都会保存在一份结构化小结里。
例程可以由某个条件触发——一项逾期任务、一次天气变化——该条件在每个调度周期都会检查,而且每个新事实只执行一次。
LIA 把她已经知道的关于每个人的信息——承诺、通话、记忆——汇集到一个只读的人际关系视图里,无需新建数据表。
提示框、列表、表格、可折叠区块:一套组件词汇让回答可以排版,并按扩展后的净化规则进行清理。
在技术层面之外,一个仪表盘衡量有用的成果、激活、留存和每项成果的成本,依据的是数据库中持久保存的数据。
一份通话回报以英文送达,还缺了小结:有一条路径绕过了公共入口。现在所有结构化输出都必须经过这个入口,并有 AST 护栏把关。
按准确的名字找到彼此,双方同意后建立连接,助手对助手地互发消息,并以只读方式分享:由一个专门的限界上下文来组织这些联系。
公共页面采用宇宙主题的视觉形象和由滚动驱动的动画编排,通过一个 CSS 作用域来实现,无需重写组件。
问“他明天有空吗?”,得到的回答却是没有配置任何服务。现在路由了解有哪些连接,失败也会如实报告。
同一个请求时而失败、时而成功,毫无规律。过滤后的目录必须是封闭的:一个工具所需的一切,都必须由目录中的另一个工具产出。
规划器看不到工具默默执行的限制。现在每一项被执行的约束都会公开给产生该值的一方,而且校验结论并不等于失败。
显示的数字要么准确,要么不出现:在截断的一页上计数,会悄悄地少算。对整个集合做聚合,只对行分页,并在旁边给出准确总数。
被转达的消息一送达,内容就被删除。现在它会像通话一样保留一段有限的时间,然后再清除。
按名字或地址查找伙伴,都通过同一个输入框,由服务器判断输入的是哪一种。
人际关系视图可以从提供商那里读取联系人和生日,前提是说明自己查看了什么,并核实每一个匹配。
同意被别人找到,不等于公开自己的邮箱地址:那是第二项同意,默认关闭。
第 5 章 · 2026年8月1日 – 2026年8月31日 · 62 项决策
契约保障的无障碍、展示出来的设置与能力、按时段计价的成本、自托管安装程序、说真话的模型目录、表情眼睛与自我诊断。
一个在目录里宣布、却不在注册表中的工具只会返回空结果。现在一道护栏会比对两者,联系人卡片也显示出全部字段。
一份 360° 概览返回时缺了一截:从所请求的领域调用不到那个工具。现在每个工具都声明自己服务的领域,而且一次点击不等于一句话。
第二份 360° 概览一直停在第一份上:浏览器端路由器复用了同一个 URL。现在聊天中的深层链接会触发一次完整的页面跳转。
只会写入的领域,就会诱导写入。现在新增了三种读取能力(通话、承诺、消息),一个人的身份信息也可以更正了。
步骤之间一个错误的引用路径,要到执行时才会被发现。现在一道 CI 护栏会确认每个公开的示例确实会被产出。
澄清环节过去直接显示问题的技术描述。现在每类问题都有自己的提问,六种语言齐全,并在启动时校验。
主动通知上的 👍/👎 有时会记到错误的那一行。现在标识符由生产方在发送前选定,并在各处通用。
想不再收到基于邮件的通知,过去只能断开邮件连接。现在十一个开关把“已连接”和“允许打扰”区分开来。
在计算接下来五次执行时间时,暴露出一个夏令时切换的缺陷。现在从设计上保证,例程在每个本地日最多执行一次。
空白对话给出的开场提示取自已缓存的简报,从不为此重新抓取数据:有证据,才有建议。
主动性设置面板可以调整频率和来源,却看不到由此产生的通知。现在这些通知就显示在面板里,默认折叠。
一条记忆断言了某个偏好,却没说它从何而来。现在每个结论都保留指向其来源的引用,删除也会留下带日期的痕迹。
转达的消息、通知、提醒:五类信息流过去都没有可以阅读的地方。一个“通知”入口把它们汇集起来,只供阅读,不做任何设置。
通话后的后续选项过去会立即发送消息。现在它们只预填输入框,确保没有你的确认,什么都不会被接受。
一项兴趣的权重由它的各个组成部分来解释,而不是一个分数:展示推理过程,而不是一个误导人的评分。
三个组件各自硬编码了状态颜色。现在状态只指明一种色调,由唯一的组件来渲染,并继承对比度护栏。
一次 UX 审计发现,只有一小部分界面检查过无障碍。现在输入字段的契约只定义在一个地方,空白页面也总会提供一条出路。
同类操作在不同页面上长得不一样。现在只有四个操作层级、四种按钮形态,仅此而已。
三个相似的页面用三种方式展示各自的操作,有时用键盘根本看不到。现在由唯一的组件让它们始终可见、可访问。
调试面板过去以乱序显示各个步骤。现在每次调用都带有从本次运行开始算起的时间点,面板按真实的执行顺序排列。
回到某个页面时,会把卡片上已经完成的操作再执行一遍。现在每次点击都会获得一个一次性的标识符,并在使用时校验。
部署时会把运行中容器底下正在使用的目录删掉。现在新版本在别处单独准备,准备就绪后才切换过去。
把各种字段都提升为 Loki 标签,会让被索引的流成倍增加。现在只有取值属于一个封闭小集合的字段才会成为标签;其余的在读取时再过滤。
有三个地方读取调用方的地址,而访客可以伪造它。现在唯一的解析器优先采用 Cloudflare 会覆盖的那个请求头,从而堵住了绕过限制的漏洞。
LIA 通过确定性、可解释的统计来学习你什么时候做什么,并用模拟来校准。每个习惯都能查看、更正、屏蔽,一个开关就能关闭全部学习。
一个引导式安装程序可以在本地构建应用,也可以使用经过摘要校验的镜像,而且只从标准输入读取机密信息,绝不从别处读取。
按用户设的限额管不住整个实例:N 个账户就意味着没有上限的开销。一个以原子方式更新的实例每日预算,为部署本身设定了上限。
语音转写、语音合成、图像……每项非连接器能力都有自己的管理开关,关掉后助手就真的失去这项能力。
公开演示站的测试把代码在交付当天的行为固定了下来。现在每一项承诺都从唯一可信来源重新计算;任何未归类的新内容都会让 CI 失败。
最后已知的位置过去只用于通知。现在所有功能都会读取它,而且总会说明它是多久以前的。
有些提供商只有在被明确要求时才返回用量。现在每个提供商都声明自己的计数方式,并在启动时校验;一次没有计数的付费调用会触发告警。
每个模型的超时时间可以编辑,却从未生效。现在它成为每次调用在传输层的上限,并与真实延迟做了对照,调用周围的任何机制都不会更早切断它。
1,200 行恢复策略代码从未被调用过。现在把它们删掉:死代码在每次改动时都要付出代价。
DeepSeek 按 UTC 时间计费。现在每一条价格记录都带有自己的时间窗口,每次调用都按其发生的时刻计价。
LIA 可以安装符合 Agent Plugins 标准的可移植插件:一步装好技能和 MCP 服务器,并逐个组件给出报告。
“先查一下,再整理成 CSV”:由一个撰写模型产出结构化内容,再由本地引擎生成 Excel、Word、PowerPoint 或 PDF 文件。
五十一个分区全都折叠在手风琴里,实在太多了。现在一条侧栏列出各分区,一个面板显示所选内容,两者都由同一张表渲染而成。
能力页面描述的还是六个月前的产品。现在由唯一的一次聚合来回答“这项能力进展如何”,并有一个断言强制每项新功能都必须列在其中。
一次一个对话框地管理 124 个模型,根本行不通。现在目录可以导出为 Excel 工作簿再导回,写入前还能预览改动。
“查看完整历史”指向的页面里其实没有完整历史。现在一个服务端渲染的公开页面列出了每个版本。
日志的自我评估已经好几个月没有产生任何信号。按人自适应的阈值、主动行为的护栏,以及终于闭合的回路,让它重新运转起来。
一些基于本体的推理函数没有任何调用方。按照既定原则,它们被删除:没有接入的能力就该消失。
一条活动时间线汇集了 LIA 主动做过的事,数据从现有的审计日志中并行读取。
当某个事实发生变化,旧记忆不再被删除:它会被标记为已替换,并链接到取代它的新记忆。
LIA 会记住你对她如何为你工作的明确指示——这是第七类记忆,标准严格。
LIA 的情绪状态会调节合成语音的参数——表现力、稳定性——增益温和,并设有中性区。
LIA 的建议显示在一个专门的收件箱里,她并未因此获得任何新的权限;ReAct 预算则随实际产出的工作而调整。
这个演进计划以一份有据可查的清单收尾:环境式的主动性其实早已以条件例程的形式存在,而创建例程本身就意味着同意。多日任务、自动评审者,以及把例程转化为技能,这几项留待项目所有者裁决,并附有证据。
一双动态的眼睛表现出 LIA 正在做什么——思考、搜索、说话、等你同意——所用的都是现成的信号,没有新增任何后端。
镜像、CI 和开发机之间并存着三个 Python 版本。现在整个环境只用一个解释器:Debian Trixie 上的 CPython 3.14。
词法得分压过了语义得分,把好的段落也拒之门外。现在阈值首先针对语义,词法只额外加一份有上限的加分。
为 OLED 屏幕准备的纯黑:它是由一个属性开启的深色模式细化,而不是会破坏其他主题的第四个主题。
114 个模型中,有 89 个带着从未核实过的默认能力。现在由两份公开的模型注册表为目录提供数据,每一行都注明其能力的来源。
移动应用只发布一次,就要服务所有自托管的服务器。Android 通过每台服务器自己的 Firebase 接收通知;iOS 则经由一个不携带任何内容的中继。
让模型思考,过去要经过四种存储形式和七个构建器。现在只有一种意图、一个派生出的推理档案,每个提供商只有一道翻译接缝。
LIA 过去产生了数百项指标,却一项也不读。现在有定期自检、一份已诊断事故的记忆,以及能绕开已知故障的回答。
“给我一分钟”不是回答。ReAct 循环与 Pipeline 共享记忆,靠产出挣得预算,也绝不会发出一条消息去预告它并不会做的工作。
一个回合的身份信息原本放在一个无类型的字典里传递。现在它改由 LangGraph 带类型且不可变的上下文承载——但没有采用与 LIA 不兼容的 Agent Server。
遇到模型不擅长的计算,智能体会写一段简短的脚本,在现有的沙箱中运行——仅限 ReAct 模式——数据直接传入,无需重新抄写。
部署总以一个大家已经习惯忽略的错误结束。现在远程的结论从一个文件中读取,绝不再从 SSH 的退出码推断。
53 个设置分区用的是同一种颜色,有时连图标都一样。现在相互冲突的图标已经修正,十二种经过测量的分组色调帮你辨认方向。
眼睛的动画已经触到 CSS 的天花板。现在由一个 TypeScript 引擎逐帧计算每个通道,并发布属性,样式表只需读取即可。
第 6 章 · 2026年9月1日 – 至今 · 135 项决策
封存的登记簿、精确的计数、工作板、会议、电话与 Live 模式——以及直说而非靠猜的失败。
撰写回答的模型会自己声明它的语气——安心、抱歉、欢快……——所用的是一套专供面部动画使用的词汇。
六个后台任务在同一秒启动。源头的随机错峰、提供商一侧的短时缓冲,以及超时即放行的等待,共同吸收了这波突发。
读取 MCP 工具 JSON Schema 的逻辑曾有好几份。现在由唯一一个模块严格按照标准读取声明,适配器和规划器都用它。
ReAct 预算过去只计入推理。现在工具耗时成为第二项独立命名的预算,每次调用都有上限,一次委派也不能再耗光全部预算。
一次文献综述被用作审视的框架:来源信息在压缩后得以保留,回合的锚点保持稳定,追踪中的计数如实,校验会检查覆盖范围,交付的上下文也会被测量。
“+”按钮把手机或电脑变成录音机:音频分段上传,LIA 交回一份结构化纪要——日期、参会者、决定、行动项。
三十个内置模板或你自己的模板,根据会议自动挑选;纪要还能换成另一个模板重新排版。
重置对话时,连学到的东西也一起被抹掉了。现在每一类键都声明自己的作用范围,清理时只删除该类所声明的内容。
来自 Gmail 或 Drive 的推送通知会把一次唤醒放进队列。LIA 在遵守全部资格规则的前提下处理它,Drive 也只重新同步有变化的部分。
一个知识空间跟随某个 Gmail 标签,而绝不是整个邮箱。去掉标签,文档也随之移除:标签本身就是同意。
每个工具都声明自己是读取、起草、请求确认还是直接执行。每个操作在发生前就被登记,再根据结果结清;三本登记簿——实例可以按账户封存——记录下 LIA 做了什么、读了什么、决定了什么。
眉毛有了弧度,同一次呼吸带动整张脸,嘴巴也有了自己的生命:LIA 的脸会动,但幅度始终不超出几个像素的预算。
一张周视图网格显示每个例程何时运行过、结果如何,依据的是在结果产生时写下的历史记录。
诊断器在事故发生的当下逐个来源收集证据;发给嵌入向量提供商的文本也始终是一个精确的字符串。
Ollama 改由它的原生客户端提供服务,其服务器会自行声明模型能做什么:工具、视觉、推理、上下文长度。
同一个周期规则引擎同时服务于例程和提醒:“每隔一个星期二早上 8 点”成为可能,提醒也终于可以重复了。
对每段关系,LIA 每天写一份注明日期的综述——你们目前的进展、接下来可以聊什么——聊天时会参考它,但绝不会把它当作已核实的事实。
每个调用模型的模块都声明自己的开销记在哪里,登记簿的每一行也声明由谁发起:你、某个例程,还是 LIA 自己主动。
控制面板每次加载都会把你的数据源读取两遍。现在同时发出的请求共享同一份工作,跨多个进程也一样。
凡是由平台付费的调用,都同时受账户上限和实例每日预算的约束,并在最内层的入口处把关。
下载的登记簿过去有行数上限。现在由服务端游标以流式方式完整输出,并预先给出准确的总数。
模型说明一段内容是什么——列表、引文、警示框、表格——渲染引擎再用 Word、PowerPoint、Excel 和 PDF 的原生机制把它画出来,而且绝不会溢出。
因 token 上限而被截断的结构化回答,不再被拼接成一份更短、却号称成功的文档:这就是一次拒绝,并如实说明。
一张工单有生命周期、负责人和结果。LIA 可以执行工单,在工单上提出问题并等待你的答复——无论是她独自处理,还是与一位伙伴协作。
你可以把常用的设置分区固定到一个悬浮停靠栏里:列表跟着你的账户走,位置跟着你的设备走。
上下文大小不再是实例的全局设置:每个已配置的槽位都有自己的上下文大小,预先填入服务器所声明的值。
LIA 生成的图片、文档和截图都有了自己的图库,重置一个对话也不会再删掉其他对话里的文件。
二十五项能力各有各的开关。关闭一项能力只会移除这个功能,绝不会动你的数据;能力星图也只统计它所标明的东西。
一场会议在 15 点结束:LIA 可以紧接着问你开得怎么样;对一封期待中的邮件的监看,也能精确到分钟响应。
收藏的回答是一份属于你的副本:重置对话后它依然在,可以重读,也可以导出。
每个进程都声明并公开自己占用的内存:主管进程不再加载应用,重量级库在用到时才加载,语音缓存也设了上限。
提示词审计发现有六处文字与代码说的不一致。现在每个变量都有产生它的一方,每个上限都来自唯一的常量。
一个默认会思考的模型把全部预算都花在思考上,交回的提醒是空的。现在请求简短回答时不开启推理,而每个模型系列只声明一次。
工具结果在 token 预算内逐项呈现,截断之处会明确说明:智能体读到的是完整的邮件,而不是一堆技术性的邮件头。
邮件送达时已经清理干净——去掉了引用的历史和签名——提供三种详略程度,其摘要只计算一次,然后缓存起来。
同一回合中两封彼此独立的邮件会依次呈现,每封各自做决定;只有已经批准的一批才会保持成组。
草稿卡片只描述一次,再按不同界面绘制:在聊天中是可视化卡片,在工单上是易读的文本。
LIA 会拨打你通过口述验证码验证过的号码,在通话中读取你的数据,而你说的话会成为你自己在聊天中的消息。
每个收藏的回答都会被索引进一个个人知识空间:当你再次和 LIA 聊到它时,她能把它找出来。
你的画像取材于四个来源——记忆、兴趣、习惯、人际关系——并说明其中哪些它读取到了。
ReAct 循环不再按注册顺序截断工具目录,而是为你的问题绑定最相关的工具,同时覆盖每一类工具。
眉毛贴合眼睛,说话按音节逐一生成,动作多变,静止时还有小小的情景表演:头像从不把同样的东西演两遍。
知识空间里的文档,即使该空间已暂停,也能以副本形式附加到消息中,而不会改动这个空间。
LIA 会打开附件:有文字就读取文字,是图片或扫描件就交给视觉模型。
关联的 Drive 文件夹会连同子文件夹一起建索引;超过某个阈值时,LIA 会在同步前告诉你确切的文件数。
脚本可以通过唯一的代理调用服务,所用的令牌它自己无法读取。遇到未知主机,就会引出一个 LIA 无法跳过的问题。
语音模型一边听一边答,一气呵成,用的是你自己的密钥;每个数据或操作请求都委托给 LIA 的引擎,遵循与聊天相同的规则。
每个提供商都声明自己的连接方式和委托方式,代码里没有任何按名字的分支:Gemini Live、GPT-Live,再到 ElevenLabs,都走同一道接缝。
无论在电话里还是浏览器中,“Live”都在对话过程中委托每个请求,“Live 直连”则只读不做,最后再转达你的话:两者共用同一套收尾流程。
重新连接 Google 或 Microsoft 服务时,每个账户只需走一次 OAuth 流程,由签名的身份加以验证,而每项服务各自保留自己的状态。
当工具失败时,LIA 会说出真正的原因,而不是编造一个诊断;指标也终于把失败算作失败。
数据库连接再也不会等待提供商的响应:卡住的唤醒、一直持有的锁,以及处于“事务中”却空闲的连接,都消失了。
每个图像模型系列都声明它接受什么、如何计费:OpenAI 和 Qwen Image 各自只经由一个客户端,图片也可以再修改。
Claude 模型能接受的请求参数只声明一次,提示词缓存的构造和计费也完全按照提供商的计量方式来。
Wikipedia、网页浏览、Places、天气和环境数据都不需要用户提供任何东西:由管理员为所有人统一启用。
一个选项让每个 ReAct 回合复用上一回合的前缀——先是全部工具,再把本回合的上下文放在问题之后——从而让已经发送过的 token 花费更少。
稳定的在前,变化的在后,只有一条分界线,也不做没人会读取的缓存写入:每个提供商都把同一条规则转换成自己的机制。
循环着手去找的东西,最终要么拿到,要么被声明为缺失。声明的缺口会开启一轮有上限的补救,回答也会说明哪些内容没能拿到。
每个人都可以在频繁交流和偶尔交流之间选择。频繁交流时,LIA 保留全部工具,并让下一轮能从缓存中重新读取上一轮:第一条消息成本稍高,之后便宜得多。偶尔交流时,它按相关性挑选工具,成本保持稳定。
发给少数指定账户的消息,之后会在所有人下次登录时显示:收件人名单没有被保存。现在会保存了,管理员还能在发送表单下方分页查看已发送的历史——日期、收件人、过期期限。
此前 LIA 只记得消息所唤起的内容。现在她可以查找途中发现的话题——一封邮件的发件人、一个地点、某天给出的一条指示。在电话中,这种检索终于能回答所问的问题,而不是返回最近的记忆。
写信到自己的邮箱不再需要确认草稿,就像给自己打电话一样:“每天早上把天气用邮件发给我”可以作为例行任务运行。收件人从来不是参数:已连接的邮箱,或账户已验证的地址。
对于开启此功能的用户,一个专用模型会用供应商推荐的技巧改写每张新图像的描述:构图、光线、镜头、风格。所请求的内容不变,要写进图像的文字逐字保留,只要有一点疑问,就按原样发送最初的请求。
点击一张图片即可发送给一位联系人,也可以附上留言。图片会出现在对方的图片库中,就像是对方自己生成的一样,并出现在对方的聊天中,留言按原样引用——绝不会变成链接或隐藏的图片。
在调试模式之外,日志只保留数量、长度和标识符:不记录搜索内容和兴趣,也不记录联系人或文件的名称。当数据库或服务在报错中引用被拒绝的数据时,这段引用会在写入前被删除。一项测试会读取代码中的每一行日志,拒绝任何会写入个人原话的日志。
计算、日期或货币换算不再凭感觉估算:LIA 会精确地算出结果,并按当天的参考汇率换算,同时注明汇率日期。她还能在自己的日志中查找途中发现的话题,告诉你她在某段时间里做了什么、查阅了什么,并给出精确的总数;只要她生成的文件还在,她也能再次展示给你。
在图库中,你可以保留一张图片、一份文档或一张截图:自动清理不再删除它,但受每个账户的上限约束,上限会在任何拒绝之前显示。取消保留会让它重新获得期限,而不是立即删除;聊天每次读取时都会说明该文件是已保留还是已不存在。
从别处到达的消息——另一个标签页、Telegram、例行任务、提醒——无需重新加载页面即可显示:消息一经保存,服务器就会通知,聊天只补上缺少的内容,不会改动已显示的部分。回答生成期间界面不会变动,向上翻阅的读者也不会被移动。
图片、文档、截图或回答可以作为附件通过邮件发出,主题和留言由本人决定——LIA 不会代写任何内容。它从本人已连接的邮箱发给任意收件人;若未连接邮箱,则发到本人已验证的地址。每个邮箱都有自己的大小上限,取自其服务商的文档,并在发送前说明。
例程要么按计划运行,要么按条件运行——绝不同时两者:先选择它何时运行,界面只显示该选择对应的字段。等待某件事的例程不再有固定时间:LIA 会自行检查条件,全天候进行,直到可选的最后一天。它只在出现新情况时运行,同一件事绝不运行两次,并受每日次数上限约束。
邮件、Telegram 机器人、错误消息和应用的各类目录,现在都以读者的语言书写:德语或中文账户不会再默认收到法语句子,验证邮件也不会再以英文送达。每张翻译表都包含六种语言,每次改动都由自动检查加以核实。原本写死在代码中、只有模型会读的法语内容改用技术英语,不偏向任何一种语言;其余部分(少数法语提示词和标签,以及已译成六种语言、面向模型的文本)有待测量表明翻译会带来什么变化。
LIA 成为按需开播、使用你的语言的电台:先是你的一天,再是所关注媒体和你添加的网站的新闻,在你收听时为你撰写、核查并播出。固定的节目表决定播出内容,模型只负责撰写,每句话都附有来源。无人收听时不会制作任何内容,结束后不保留任何内容,会话的花费在产生时即可看到。
JEV 在有限选项内帮助选择、路由或评估,每种用途都有即时开关,不确定时由既有流程接手。两个默认关闭的可选用途识别个人引用缺失或对全部待处理操作的拒绝,都不会授予执行权限。预览保留规范结果,观察用途不会阻止写入;管理员可查看上下文与结果,付费失败和回退都会计入,并在启用前通过完整流程验证收益。
为语音、通知或卡片压平文本的函数,对某些文本的处理时间呈指数增长:聊天中输入的 51 个字符耗时 4.5 秒,一封 32 KB 的陷阱邮件让 LIA 冻结 3 秒。每个模式都改写为线性,服务器端和浏览器端各由两项测试守住。读取网页时,现在会在跟随每次重定向之前先行检查,并连接到经过验证的地址,绝不依赖之后对域名的再次解析。
可以在 skills.sh 或 GitHub 地址上搜索技能,安装前逐个阅读,并保持更新;安装的正是读取时的那个提交,每个文件都经过校验。在外部编写的技能独立运行,只能使用自己的文件:从不接触用户的连接器,其回答不含图片或网页内容。技能可以在其文件夹的一次性副本中运行自己的命令,网络只通往允许的主机;而对话中编写的技能,只有在用户点击后才会加入。
LIA 不再因为达到每日上限而扣下一条有用的通知:由决策模型判断某个信号是否值得打扰对方。在其通知时段内的每一轮都会到达这一决策,只有时段、两条消息之间的间隔、正在进行的会议和支出上限会约束节奏。由邮件触发的唤醒和预判的时刻遵循同样的规则。
LIA 会被一句短语唤醒,这句短语完全在浏览器中由一个为其语言训练的小模型识别,不再需要那个曾让旧的英文「OK Guy」无法在 iPhone 和原生应用上使用的技术条件;说「LIA, stop」即可打断她的朗读。第一个模型——法语的「Dis LIA」——以测试版发布,因为其基准尚未达到公布的阈值,其他语言保留点击方式。在 Live 模式下,静默会让助手进入待机:与服务商的连接关闭,不再产生任何费用,轻点或说出短语即可唤醒,对话不会丢失。
博客插图只生成一次,包含四种宽度和一张分享图,并按原样提供:服务器不再缩放任何图片,边缘缓存会保留它们。首页视频托管在运营者声明的位置,由按需读取的清单描述;没有清单,这一区块就不存在。视频循环播放,在可见时开始——浏览器允许时带声音,否则静音直到点击——只要声音在播放,页面标题和各区块标题就会依据预先计算的节拍图随音乐跳动。
每次变更的检查只读取一个安全公告数据库:2026 年 9 月的审查发现了二十条由依赖项自身仓库发布、却没有任何工具看到的公告。如今,每周一次的监视会读取这些公告、生命周期终止日期、各类注册表以及浏览器引擎;每项发现要么被修复,要么被书面接受并注明复查日期。Python 版本通过同一条命令前进,先经过冷却期,绝不回退。 通过官方适配器,并保持规则和阈值不变,可以验证从停止维护的版本系列迁出的兼容性;仅修改兼容性元数据并不足够。
一行日志可以打开其请求的追踪,一条追踪可以打开相应的日志和指标,一个延迟点可以打开产生它的示例:在生产环境中测得失效的链接如今都能正常使用。传输这些信号的链路本身也受到监控,日志丢失时会发出告警;所有仪表板遵循同一约定:一周的历史与统一的菜单。
包含数据的回答——邮件、日程、联系人、地点、路线、天气——以卡片呈现,展示来源提供的全部信息,从不臆造缺失的值,完整细节收在可展开的区域里。模型从不重读卡片本身,只读取经授权的事实,因此对话不会变得臃肿。在卡片上回复邮件或调整提醒,会生成一个绑定到原始消息、并在点击时重新核验的请求;路线还可以打开为交互式地图,其费用会先告知再计入。
可选 Simli 面孔通过个人密钥陪伴已有语音,只保留一个可听输出。API 控制连接及停止;窗口显示关闭已确认或仍在等待,因为静默也可能消耗套餐。在供应商和真实设备验证完成前,该决定仍为提案;Radio 保留自己的播放器。
关联两个值,需要来自正确来源和账户、且符合预期角色的观测;相同文字并不足够。目录保留启动依赖链所需的读取步骤,并标明缺少来源的依赖。任何修改尝试都会在调用前后使旧证据失效。
明确要求锚定在用户原话中,再依据观测核验值、日期、数量、操作和完整性。即使恢复执行,日期和时区也保持为本轮开始时的基准。草稿仍是待确认状态,不透明委派仍属未知;已核实的缺口进入有限的读取恢复流程,并传递到最终答复。
明确声明为独立的读取可在限额内并行推进,其结果在可能需要确认之前保存。新鲜、完整的读取结果可在同一轮和同一上下文中再次使用。修改会使复用失效。保存之前突然停止,仍可能重复读取;观测不会跨轮共享。
每位用户的 MCP 工具根据当前声明发现;仅发布成功构建的工具。服务器保留精确身份,并与简化的路由名和调用名分开。绑定到服务器的任务在确认之前检查目标。旧描述补充当前能力,但不声称掌握服务器的全部本体。
LIA 通过已声明的操作管理设置和对象。加密的持久命令绑定获批内容、执行者、来源及过期时间;执行时重新读取权限、能力和前置条件。来源服务保留自身的 compare-and-set 检查,claim 由令牌隔离。文件、OAuth、私密输入及设备操作在已认证的浏览器中续接。等待不代表完成成功;丢失的结果仍属不确定,也不承诺外部操作严格只执行一次。
正面画作为有界浮雕提供纹理,轮廓及边缘材料来自源透明度。隐藏的身体结构仍是近似形态;眼睛、眉毛和嘴以 DOM/SVG 投影,围巾有意合成在前方。身体、面部和配饰共享现有骨架。可见性、减少动态、就绪状态和图形上下文决定资源使用及静态画作回退。几何与生命周期测试不认证任意遮挡效果,也不证明真实设备性能。
离线 Remotion 项目保留章节、HTML/CSS 视图、姿态和音乐重音,让完整影片与功能聚焦片段一同演进。重建界面注明原生来源并使用虚构数据;除明确聚焦外,几何保持固定,BIP 在演示中陪伴。清单可声明独立于播放列表的完整影片;其全屏对话框会暂停背景播放器。影片为法语,控件已翻译;渲染、交付文件、音乐来源及播出方验收分别核验。
默认留空的服务器选项可在每个浏览器源的下一次认证访问时介绍 BIP。显式活动标识只改变样式及记录标记;可见性、尺寸、位置和之后的手动选择都保留,不为账户增加头像数据库字段。可用时由 Web Locks 协调标签页;没有该 API 时,重新读取最新记录不保证并发事务。停用活动只停止后续应用,不恢复旧选择,也无法触及离线设备。
关于此人的九类记录——记忆、兴趣、习惯、关系简报、未了事项、工作看板、例程、提醒、收藏的回答——被完整读取,每一项均可引用,置于模型窗口的单一份额之下,任何裁剪都会被明示。画像重新成为对此人七个侧面的分析,而非清单,简述以其自身的句子写成;经测量会驳回有依据解读的语义复审已被移除:防止臆造的是结构本身,每条解读都引用其依据。预算是明示的目标,绝非裁剪。日志的变动使画像标为过期、带日期提供,而非被抹去;删除一条记录会带走它所支撑的解读。交付前在 dev 上测量。
LIA 无需询问即可保存、修改 Gmail、Outlook 和 iCloud 的草稿并将其移到回收站:草稿留在用户自己的邮箱里,不会发给任何人,回收站也可以恢复。只有发送需要确认,确认卡片会按邮箱中保存的样子显示草稿;期间在邮箱中被修改过的草稿不会被发送,而在卡片上要求的修改会在发出前写入草稿。顺带地,回复卡片现在会显示回复真正送达的所有人,并且正是发给他们。
Fish Audio 可以朗读(五个模型,包括 s2.1-pro 和 drama-3),可以转录会议和听写,其声音可在管理后台克隆或设计,前提是提交一份记入审计日志的同意声明。每一句被听到的话都经过同一道门,只计费一次,并按真正说出它的引擎的计费单位计算;每个提供商账户只有一份请求配额,由所有语音功能共享;远程听写交给管理员选定的引擎,设置中会写明是哪一个。LIA 会在为朗读而写的文字中加入表演提示(笑声、耳语、叹息),并采用每个引擎各自能演绎的语法;电台的多个声音则在一次录制中完成对话。
生产环境的测量显示,跟随每个失败计划的分析器把并非暂时的失败判定为暂时性的,而它所等待的恢复循环会重放无法修复的失败。它被移除:失败在回答中如实说明,暂时性故障由遇到它的客户端重试,一个带类型的计数器展示每个失败的步骤,包括调用工具之前发生的失败。
在流水线模式下,回答只依据一句关于工具数据的话写成——“2 个目的地”——而行程时间、连接或下一页数据被搁在一旁:没有这些数据时,9 个回答中 0 个给出了行程时间,有了数据则 27 个中 27 个给出。现在它们像在自主模式下一样到达,有预算限制,并被标记为第三方内容。工具的拒绝也不会再在途中变成成功:Hue 命令曾声称打开了一盏并不存在的灯。
旧的自我效能只随 LIA 的自我评分变化,一次交流就足以形成优势或弱点,而且只有最终回答会读取它。现在七个领域各自保留两条独立的轴:一轮对话可验证地完成了什么,以及用户通过 👍/👎 表达的有用程度。积累五次观察后,LIA 可以核实一点、提出一个问题或说明一个局限——不会更换任何模型、工具或预算。
已接受的联系人获得独立且禁用的技能、MCP 服务器或插件副本,并显示来源。检查过的分享包不可变,重试保留接收者的修改,凭据保持私密。联系人技能启用后,明确采用与接收者自建技能相同的执行策略。
可选原生决策对获授权的邮件和日程证据只判断一次。不确定时不显示标签,费用和配额照常适用,分类与置信度都不能授权行动。固定语料与新的对抗案例将交付策略关联到实际测试证据。
“位置”在独立地点卡片之前汇集选定的 Google Places,HTML 和 Markdown 同样支持。交互地图在显示费用后由点击启用;Maps 不可用时仍保留可用的来源列表。
API 识别对未知路径的连续探测和凭据验证失败,同时不惩罚正常的会话或资源错误。Redis 在各工作进程之间共享临时封禁;缓存故障时仍放行请求,并通过指标显示降级情况。
每次 429 响应都会记录通过可信代理链解析的客户端地址、请求方法和不含查询参数的路径。普通访问日志保持低噪声,客户端地址也不会成为指标标签。
地点面板复用已获取的信息,无需再次搜索该地点。路线依次采用获准使用的浏览器位置、仍有效且注明时间的最近位置,或家庭地址:不超过2公里时步行,超过时驾车;若实际步行路线超出限制,仅重新计算一次驾车路线。支出上限始终有效,即使路线失败或被取消,每次付费调用也会入账。
地图等待用户明确启用,不会预留大片空白。相同详情在电脑上显示为地图弹窗,在手机上显示为对话框,每种形式都只有一个滚动区域。列表与地图标记沿用原始顺序的编号;缺少坐标的地点保留编号和链接,不会使其他地点的编号错位。 内容未变时,已启用的地图会在显示自动更新期间保持启用状态。
手机发送严格校验并按来源去重的事件。独立同意、导出、删除、登记与通知遵循同一权限边界。
个人化交流与提醒相互独立,使用专属策略和原子化聊天发布。架构已获批准;启用前仍需实现消息发起流程。
以观察证据支持事件和重复模式,保留独立画像、清除功能以及持久可撤销的使用排除。行为指令约束主动交流;派生知识库仍待实现。
数据读取和模型调用共享有限额度及预留预算。拒绝或取消后仍核算已发生的费用;启用前仍需实现金融预算保护。
出站连通性探针将 DNS 解析与连接分开,并在多次间隔的尝试中确认丢失。丢失一个 DNS 数据包不再触发严重事故:恢复或变慢会被标记为降级,真正的断连则会指明失败的环节。
下一回合现在从缓存中重新读取完整的历史记录,而不是重新写入;当有人在等待且交流频繁时,它将要读取的内容会保留一小时。这些一小时的写入按其实际价格计费,而上一回合的思考会交还给写下它的 Claude 模型——前提是该模型能够重新读取它。
现在每个账户最多只会收到少量重置邮件,无论请求来自哪个地址;一个链接只对签发它时的账户和密码有效。通过 Google 登录的账户会收到一则说明而不是链接,管理员什么也不会收到,大量请求或注册会提醒运维人员。
浏览器绘制世界,Redis 仲裁准入与移动;操作保留原生界面和审批。账户名称与外观经同意后共享,活动与个人空间保持私密,好友只能看到粗略的连接状态。消息仅在收件人之间传递,经同意的翻译有界且计费。
注册、密码登录和重置密码请求现在都需要一个 Cloudflare Turnstile 验证令牌,并由服务器确认:不经浏览器直接调用 API 的脚本会被拒绝。大多数访客什么也看不到;当 Cloudflare 无响应时,只有登录可以通过——新账户或重置邮件会稍后再处理。
个人 MCP 服务器提供的内容保存在账户上,在任何进程中都能从一条消息沿用到下一条,同时只有一个进程在后台重新核查。各服务器并行准备;过慢的服务器会在这条消息中被搁置,通过提示点名,并为下一条消息准备就绪。当保存的副本已过新鲜期时,LIA 会在调用之前核实该工具仍以相同的形式提供,否则拒绝发送。
当用户按刚看到的某个条目的内容来指认它——发件人、主题中的某个词——对请求的分析只说明它是如何被指认的;由代码在真正显示过的条目中找出这些词所指的条目。只有一个:LIA 执行操作,并在操作记录中写明它。有多个:LIA 会问是哪一个,这个问题不由任何模型撰写,绝不猜测;一个都没有:重新搜索。
用户可以决定 LIA 在使用 MCP 工具前何时征求同意:针对整个账户、每个服务器、每个工具——“从不询问”始终与该工具的声明绑定。任何会让 LIA 少问的更改生效前,页面都会列出 LIA 将不再询问的内容;没有任何锁定。专用智能体只要有一个工具需要询问,就会在每个任务开始前询问一次,任务随后会一直执行到底;在对话中,LIA 只能多问,不能少问。
“工具”板块打开本人的邮件、日历、任务、联系人、Google Drive 或 OneDrive 上的文件和灯光,让本人亲手查看和操作:没有模型,不耗令牌,速度就是服务商自己的速度。界面只提供服务商接受的操作,客户端为此获得的能力,助手的工具也同时获得;本人亲手做的任何事都不会写入记录,因为那不是 LIA 的行为。
要一个游戏或小工具,得到的是在对话中运行的页面及其文件;要代码,得到的就是代码;人输入的内容始终是文本。页面隔离运行,无法访问账户,也访问不了它自选的任何网站,所受策略不指定任何主机,运营者允许的地图来源除外。从历史记录重新打开时,它会等待一次点击,因为无限循环会卡死标签页;模型只读取它的标题。
管理界面曾提供十六个智能体的调节项,而任何一轮对话都不再调用它们:计划直接执行工具,生产环境在它们身上没有记录到一个令牌。它们的槽位、节点和提示词均已移除;Emails 槽位保留,因为它负责撰写邮件。全新安装现在从有定价的模型起步。
总结邮件、建议回复、读取名片:一次点击只向 LIA 提出一件事,得到一个由本人阅读的建议,绝不会写入其服务商。该操作会被记录并计入点击者的费用;没有空间的屏幕不会增加任何控件:每个工具栏的最后一个图标会打开列表。
一次设置为愤世嫉俗个性的 ElevenLabs 语音会话,听起来却像一位欢快的助手:门户中的表达标签规定了热情,LIA 自己的框架也要求温暖。如今,这个人的每一种语音——Live、直接 Live、电话以及聊天中的语音评论——都以所选个性说话,内容优先,事实不变;LIA 亲自把标签调色板、开场问候和它的工具写入智能体。打给第三方的电话保持礼貌得体。
已不再有任何界面显示的结果预览,以及无法区分任何情况的主动建议 JEV 闸门,均已移除,主动建议评估器仍会查看每个使用工具的回合。每个 JEV 阈值都成为有边界的设置,可在管理界面中调整,每一次付费判断都会被长期统计,让阈值依据真实发生的情况而非某个语料库来决定。
时间不再决定一个重复请求:一个需求由它反复出现的日子来识别,时间只用于预填。六类建议源自 LIA 已经记录的内容——自动化一个需求、调整一个被手动重新启动的例程、扩大通知时段、连接一个数据源……——一次点击即可接受并执行。聊天中每条回答下方最多显示一条建议,由代码选择。
聊天中显示的邮件、日程、联系人、任务、文件或灯光,可以在工具中打开。卡片带有一个签名的目的地,绑定到账户和作答的来源;点击时服务器会再次核实该来源,如果账户已更换,就说明原因并拒绝,而不会打开另一个恰好同名的条目。
所有图标都经过同一个入口,按账户选择的风格绘制:Lucide、Fluent Color 或 Streamline Flex,任何符号的含义都不改变,系统的高对比度模式保留自己的颜色。主题还可以在选定的时间按账户的时钟自动从浅色切换为纯黑,而计时器从不写入个人资料。
通过徽标打开主对话和已命名的其他对话,各自拥有独立的历史和会话统计。自动消息进入主对话,账户设置与学习成果可以共享。重置或删除只撤销所选的运行版本,并留下可追踪清理进度的记录。
单独阅读一封邮件,无法知道它是否已得到回复:回复是同一会话中的另一封邮件。现在LIA在列出邮件时会读取该会话,并在各处说明同一事实:已回复、回复仍是草稿、已收到回复。因此,无论在聊天、通知、首页、关系还是工具中,它都不会再建议回复一封本人已经回复过的邮件。
“九点半”只有连同你所在的时区,才指向一个确切的时刻;LIA 每次弄丢一小时,都是因为两者分开传递:一个改到 9:30 的日程,结果显示在 10:30。现在,时间和它的时区合为一个对象,LIA 原样交给 Google、Microsoft 和 iCloud,途中不做任何换算,并用同一条规则处理每年两次调整时钟的夜晚。此外,一个时间从界面到日历、再从日历回到界面的每一段路程,都会在按各家文档模拟的日历上重演,而且选在远离世界标准时间的时区。
模型过去只知道当前时间,却不知道之前每条消息写于何时:几天后接着聊,整段对话读起来就像一切刚刚说过,周二写下的“明天看牙医”,到了周五仍被当作还没发生。现在,你的每条消息都带着你写下它的时刻,按你的时区标注;每个重读对话的模型都会读到它:回答、ReAct 循环、对你请求的分析、压缩摘要、电话,以及 LIA 对你的记录(记忆、兴趣、承诺、日记),其中的截止时间现在按你的时区来理解。在编写代码之前,我们在三个模型系列上做了测量:依赖这一点的问题,答对的次数从 21 次中约 3 次,提高到 21 次中的 14、16 和 20 次。
没有自己的搜索密钥时,过去只能搜索维基百科。现在,LIA 默认会在旁边运行 SearXNG——一个无需密钥的元搜索引擎(管理员可以拒绝):聊天搜索、回答补充、兴趣追踪和工具都会从那里获取网页链接,与 Brave 一样不做过滤,而你自己的 Brave 密钥仍然优先。在编写代码之前做过测量:六种语言下 60 次搜索中有 58 次有用,平均耗时 0.7 秒。此外,兴趣追踪中那些本不会发起任何查询的来源,不再被记为已查阅。
过去,两个人回复同一封邮件,会从 LIA 得到同样的回复。现在,LIA 第一次替你写邮件时,会从你最近发送的邮件中学习你的写法——称呼、结尾敬语、署名、语气,绝不学习你写的内容——并在每封回复和每封新邮件中遵循它,包括你确认的回复:当你没有口述原话时,LIA 现在会亲自撰写。你可以在设置中查看、关闭或让它忘记。写代码之前在虚构人物上测量:回复体现作者风格的特征从约 42 个提高到 66 个中的 63 个,且没有从旧邮件中复制任何事实。
以前,在 LIA 回答时——或在你的账户上运行例行任务时——发送的消息会被拒绝并丢失。现在服务器会把它和所在对话一起保存,显示在对话下方,你可以编辑或撤回;之后写的内容会合并进去。LIA 一旦正常完成,它就会作为你的消息自动发出;如果回答被停止或失败,它会等待你的决定。它绝不会被当作 LIA 所提问题的回答,「立即发送」会先停止正在进行的回答再发送。现在每次运行都会说明自己如何结束,而正是账户释放时记录下的这个结局作出决定。
你在 LIA 工作时写下的内容,往往是对请求的补充(「只要周日营业的」),而在回答之后再发送,就得把工作重做一遍。在 ReAct 模式下,你的等待消息现在可以加入正在生成的回答:LIA 会在下一步把它当作你自己的话来读取,并从那里开始加以考虑,而不会改写之前的任何内容。在它读取之前,你可以编辑或撤回它;如果它先完成,消息会像往常一样紧接着发送。你的补充会留在对话中原来的位置,回答、记忆和之后的对话所保留的请求都包含它。
例程现在可以在其他系统调用它时运行:智能家居网关、代码托管平台、表单服务。LIA 为例程分配专属地址和一个只显示一次的密钥;另一个系统用它为每个调用签名,LIA 会在一分钟内处理该调用,把它发送的内容作为数据读取,绝不作为指令。没有有效签名的调用会被拒绝,突发调用受到限制,重复投递只计一次;丢失的密钥可以换成新的,旧密钥随即失效。管理员可以关闭这项能力;演示实例保持关闭。
例程现在可以等待某个网页发生变化:价格变动、“有货”重新出现、新增公告。LIA 会自行读取该公开页面,不使用模型,只针对页面上新出现的行运行例程,这些内容被当作数据读取,绝不作为指令。一行内容消失后再次出现,会被重新告知。
LIA 生成的文档现在使用其格式本身的机制:电子表格用真正的公式计算,图表可以在 Excel 或 PowerPoint 中编辑,你要放映的演示文稿带有简洁的动画,报告以封面开篇,附带关键数字、编号图和可点击的来源。模型说明内容是什么,渲染器负责绘制,所用配色经过对比度校验,并跟随文档的语气。插图是生成的图片:只有你在 设置 › 文档 中允许时才会出现,在预算之内,且每一张都计入你的费用。