MacTalk
订阅
MacTalk 开通于2012年末,内容起于 Mac 而不止 Mac,内容覆盖了技术、创业、产品和人文思考。文风有趣,又有一点力量。
MacTalk微信公众号二维码
关注该公众号

会员可查看最新的全部文章

^__^ 4 / 02
Anthropic 这次尴尬了,源代码泄露了未来的规划。早上看到 A 厂发声明,承认了在发布 Claude Code 的过程中,因为一次人为打包失误,把大约 50 万行内部源代码连同 source map 一起发了出去,其中没有客户敏感数据,没有模型权重,也不是黑客攻击。昨天看了不少源代码分析的文章,还真挺有意思的。比如我们觉得 Coding Agent 一定很多神秘算法,结果 Claude Code 大量依赖 grep、ripgrep 这样的传统文本搜索,至于理解、推理、关联这些事,都是大模型在做:当大脑足够强,脚手架未必需要花哨。系统尽量简单,把复杂性收敛到最有价值的那一层。更有意思的是那些“未来功能”,其中最醒目的一个词是 KAIROS,开发者普遍把它解读为一种常驻后台的守护进程:会话不断线,任务也不必每次从零开始,记忆会持续积累,这意味着 Claude 想做的是一个始终在线、逐步理解项目上下文的智能体,不是什么代码助手。今天大家还在手动 @AI 做事情,后续它可能就在后台替你盯着代码构建、测试和回归过程了。还有两个信号值得注意。一个是多 Agent 协作。之前对外发布的都是实验性功能,但从这次泄露的代码看,Claude Code 内部还在持续打磨和使用这套系统,完成度已经相当高了。它的运行方式很像一个小型软件团队:Leader 负责拆解任务、分派工作,Teammate 异步沟通、并行推进,各自在独立工作区里处理自己的部分,尽量减少相互打扰。 Agent Team 支持同进程隔离、tmux 窗口或者终端分割窗格;每个 Agent 都有独立的 Mailbox 文件系统,用来进行异步通信;每个 Agent 还可以在独立的 Git Worktree 中工作,还有 Team Memory 可以"写共享笔记"。其中的“权限冒泡”机制也很精妙。Teammate 一旦遇到需要确认的操作,请求不会直接抛给用户,而是先往上交给 Leader,由 Leader 判断是否批准。这样一来,用户不会被频繁打断,系统内部却依然保留了清晰的决策链路。另一个是 Auto Mode 和更激进的自动审批思路:尽量减少那些不断弹出的确认框,把低价值的人机往返压缩掉。Auto Mode 我试了试,目前非 Claude 模型还不行,希望这个尽快能开放给第三方模型,天天敲回车也挺累的。最好是我想敲再敲。这次代码泄露,揭示了 Coding Agent 的未来方向:常驻后台、团队化协作、更少打断、更多记忆,甚至带一点人格化外壳。对其他厂应该有参考价值。 用 Happy 远程驱动 Claude Code 分析其泄露的源代码 Claude Code 算是提前露出了 A 厂的野望。
^__^ 4 / 01
张雪机车,20 年的回旋镖。昨天看到墨问群里在聊张雪,墨问笔记里有写张雪的,我才知道张雪和他的摩托车梦想故事。如果你还不了解张雪,可以看这一篇:突然,张雪火了,铺天盖地的声音,比《飞驰人生》精彩,是墨问夏止于夏老师的作品,非常精彩。我看了他早年视频,印象比较深的是,19 岁骑着摩托车追赶湖南卫视《晚间新闻》节目组的车整整 3 个小时,跑了 100 多公里,当年稚嫩的他对着镜头说:我觉得一个人,不管你是失败还是成功,你年轻的时候没有去做,到老了肯定会后悔。年轻的时候做了,到老了就算失败了也不会后悔。 20 年,张雪机车是完全可能做不成的,因为成功太偶然了,但唯有热爱不可辜负。最近我在读意大利导演朱塞佩托纳多雷的《无意识日记》,有一个感悟:失败与成功之间没有明确的界限。托纳多雷是意大利最具国际影响力的导演之一,被誉为“电影的诗人”。《天堂电影院》和《海上钢琴师》是托纳多雷比较著名的两部作品,其中《天堂电影院》拍摄于 1988 年,当时托只有 32 岁。这部电影刚上映时和周星驰的《大话西游》一样,非常失败,没人看,评论也不好,典型的不叫好也不叫座,投资看起来是打了水漂。托纳多雷和投资方对这部电影投入了巨大心力,还是希望有个好结果的,所以他根据自己的想法和他人建议剪辑了好几个版本。第二个版本是 125 分钟,故事节奏加快,重点放在童年和电影的怀旧感上。这个版本大获成功,但吊诡的是,成功并不在电影院,而是在电影展上:它获得了第 62 届奥斯卡金像奖最佳外语片奖和戛纳电影节评团大奖。这部电影一炮而红,让托纳多雷蜚声国际,成为了著名国际大导演。托纳多雷回看三十多年前的作品,也是感慨,做一件自认为满意、水准之上的事,拿出去的时候,并不知道会成功还是失败。像他这部作品,一开始很失败,很快又获得巨大成功;他现在 70 岁了(1956 年出生),最成功的作品却是 32 岁拍的。成功和失败没有界限:同一件事,这个时间点失败,下一个时间点就可能是成功的;也可能作品一问世就成功了,但经时间检验后发现是哗众取宠的东西;都有可能。我自己感觉,对于创作作品的人来说,只要用心做出了自己认为水准之上的东西,成不成功更多靠运气、机遇和意外,靠时间的检验。人能控制的,只是把产品做到符合自己心意、满足用户需求,在工业设计、审美等方面达到自己理解的水准即可。至于成功与否,大部分时候都要看其他因素。唯有热爱,不可辜负。张雪和托纳多雷,都是如此。
^__^ 3 / 31
不知道你有没有发现,最近 cli(命令行)项目非常火. 为什么会这样?因为命令行可以减少 AI 执行实际操作的不确定性。通常,AI 靠视觉识别和界面模拟去完成任务,步骤一多,错误会指数级放大。但对于一个命令,大模型可以精准识别,调用起来又快又准。过去用 cli,更多是程序员自己敲命令;现在你只要把命令行装在龙虾和 Claude Code 所在的电脑上,就变成了人类用自然语言把需求说清楚,AI 把这些模糊的需求翻译成一条条具体命令,再在终端里执行。我们可以把命令行理解为一个“动作总线”:装好各种工具和脚本,AI 只要会拼装命令,就能这些任务串起来完成复杂的工作。相比之下,在图形界面里做同样的事,需要大模型理解无数应用、按钮、菜单,成本和不确定性都高得多。最近很火的开源项目 opencli 和 港大实验室开源的 CLI-Anything,都印证了这一点。前者可以用命令行的方式访问各大网站(需要本机 Chrome 安装一个扩展),比如:opencli bilibili feed,就可以获得你订阅的 B 站视频动态。CLI-Anything 则可以将任意开源项目转化为 Agent 可控工具,也就是结构化的命令行工具。注意,这些命令行工具都是可以被 AI Agent 工具随意调用的,比如 OpenClaw、Claude Code、Codex 等。最近企业微信和飞书都开源了自己命令行工具集,可以无缝接入龙虾和 Claude Code 这样的工具,AI Bot 可以操作通讯录、会议、待办、群消息等等。 # 举例,安装企微的 CLI npm install -g @wecom/cli # 安装企微 CLI 的 SKILL,npx 会自动去找你的机器上所有的 AI Agent 进行注册 npx skills add WeComTeam/wecom-cli -y -g快速开始做完初始化之后,龙虾,CC,甚至是 Codex,就都可以用企微的功能了。比如:帮我在企微里设定一个日程,今天下午 6 点讨论产品需求。AI 会精准的帮你搞定这个问题。如果我们装了多个 cli 工具,可以进行一句话联动:帮我查一下 B 站上的动态,相关内容和链接保存到企业微信的文档里。 AI 会先调用 opencli bilibili feed --limit 20,拿到返回的结果,一共 17 条视频和动态,然后通过 wecom-cli doc create_doc 把内容写入企微文档,这个任务链条就完成了。自 2023 年始,AI 先改造了人机对话(自然语言交互),又改变了编程方式,从智能补全到 Coding Agent,接着通过 AI 浏览器重新激活了 Web,现在轮到命令行了。那些曾经只属于开发者的 cli 工具,正在变成 AI Agent的“工作套件”,在后台高频运转。
^__^ 3 / 29
脑子是个好东西:为龙虾和 CC 加装外脑之后,这俩货要上天了。最近收到好几个用户的问题,都说 OpenClaw 忘事,其实就是丢失上下文,尤其是多通道切换,你为了尝鲜微信企微飞书钉钉 tg 轮番上阵,看着背后是一个龙虾,其实谁也不知道谁在干啥。Claude Code 也有会话问题, 因为命令行也可以多窗口啊,tmux 之类的。退出重启,之前做的事如果有延续性,也得重新解释。为什么 OpenClaw 会“忘事”?因为 OpenClaw 是一个长期运行的 Agent 框架,有网关、有通道、有技能、有记忆系统。看上去已经有“记忆”能力了,但在真实使用场景中并非如此: - 对话拉长,工具调用变多,早期的重要信息就被模型的 context window 截断。 - Agent 或 Gateway 重启之后,之前的决策、约定、经验教训都消失了,只能靠人类再解释一遍。 - 同一个 Agent 在不同通道唤醒(IM 消息、cron、CLI 命令),每一段都像“分身”,彼此不知道对方干过什么。本质上,这是“会话上下文”和“长期记忆”混在一起导致的:会话上下文用于当前的推理,生命周期短;长期记忆是跨 session 存在的,生命周期长。OpenClaw 的基础设施并没有帮用户把这“两层记忆”真正管理好。 Claude Code 也存在这个问题,就是说,长期使用的话,龙虾和 CC 那点记忆系统根本不够用了。现在开源社区有不少做长期记忆,我目前在用的是 claude-mem,CC 和 龙虾都能外挂这套“长期记忆系统”,把 Agent 的行为流持续沉淀下来,再在新的会话中以压缩后的形式注入回来。 claude-mem 本质上就是一套 RAG + hook 工程,用生命周期的 hook 收集对话和工具调用,存 SQLite FTS5 + 向量库 Chroma,用 embedding 做语义检索,再把“相关记忆”塞回上下文。这类方案的老问题一直存在:记忆库越大,检索容易错抓相似但不相关的内容,有可能记不住,或者出现幻觉,好处主要是省 token、方便追溯。目前还不能指望它从根上解决上下文漂移的问题,但是个可用的状态。基本原理和安装方式可以看这里: https://github.com/thedotmack/claude-mem/blob/main/docs/i18n/README.zh.md中文的,读起来很容易懂,Claude Code 的安装可以参考这一篇: 在 Claude Code 里安装 claude-mem至于 OpenClaw,claude-mem 也为其做了专门的安装脚本,可以用一条命令完成从依赖检测到插件安装的全部流程: curl -fsSL https://install.cmem.ai/openclaw.sh | bash 我是用 CC 帮助龙虾安装的,哈哈。