分享一下我的ai写作成果初稿,上周五完工的,生成方式cherry studio +提示词+ rawchat佬的公益gpt5.5(目前不能用了,只能在codex中使用)。初稿没啥图片,佬友们凑合看看,欢迎大家提提意见呀~ “首席摄影师”提示词如下 (点击了解更多详细信息) 上传失败,我用蓝奏云链接分享吧 withnoidea.lanzouu.com 从零开始学摄影:8 节课建立你的拍摄基本功.pdf - 蓝奏云 文件大小:3.6 M 1 个帖子 - 1 位参与者 阅读完整话题
最近用 mimo 从零开始做了个小项目,发现还是挺不错的,做些不难的需求,整体代码的架构、可读性、速度都是优于 GPT 的,就是碰到几个疑难的 bug,对话了几次还搞不定,然后问了下 GPT,结果一遍就搞定了。但是如果让 GPT 从零开始开发个项目,项目的架构、可读性感觉都挺灾难的(我会帮你完成任务,怎么完成的你别管) 2 个帖子 - 2 位参与者 阅读完整话题
前情提要: 尝试纯AI从零开始移植 NVIDIA-RTX/RTXPT 到 DiligentEngine - 开发调优 - LINUX DO 刚搓完Reference PathTracer,在开发机本机跑了下,没问题就挂着writing-plan切去刷视频了。过了一会儿闻到一股烟味,我寻思楼上做菜还能传到我这层的?找了一会发现烟味来源是主机方向 低头一看woc电源仓在冒烟 我只能说不亏是长城,额定功率标650W估计实际只有450W,过载了还不自动断电 我的猜测是PathTracer让GPU(Arc B580)满载的同时writing-plan让CPU也满载了,两个加起来峰值功耗超过电源额定功率,给电源里的保险丝或者什么东西烧了 1 个帖子 - 1 位参与者 阅读完整话题
IDE: vs2022, vscode mcp: serena, context7 skills: superpowers 初始prompt: 将 "RTXPT" (D:/RTXPT-fork) 的实时路径追踪渲染管线移植至 DiligentEngine,作为一个Sample:RTXPT,位于 "DiligentSamples/Samples/RTXPT"。 项目 RTXPT 位于 "D:/RTXPT-fork",可使用Serena mcp tools访问。 将移植任务分为多个大阶段,包括初期调查、移植资源创建和初始化、移植资源更新(比如BLAS/TLAS,灯光参数等)、移植绘制调用(包括TraceRay调用和Compute调用)、移植着色器、移植后处理总共6个大阶段。 尽量完整复刻 RTXPT 当前高级样例的全部能力,但是你可以先从最小可运行 Sample做起,每一步移植任务完成后都必须确保可Sample运行,以便我验收单次移植任务。 移植过程中未完成的地方应当在代码中留//TODO 我需要同时支持Diligent的D3D12和VULKAN后端,因为RTXPT使用的NVRHI也是同时支持D3D12和VULKAN后端的。 目前进度: 基本框架√ 场景资源加载√ 渲染管线 着色器 后处理 4 个帖子 - 2 位参与者 阅读完整话题
佬们,请教一下,如果现在要从零开始启动一个项目开发,佬有自己的工作流吗,目前百花齐放,有说super一把梭的,有说直接spec-kit确定需求之后就ai开发的,还有的项目还会加入memory,我更倾向于是OpenSpec确定产品的方向,super确保项目的质量,有佬有一力破万法的方案吗 7 个帖子 - 2 位参与者 阅读完整话题
IT之家 5 月 13 日消息,2024 年 12 月,捷豹发布双门概念车 Type 00,正式按下品牌重启按钮。这款造型极具争议与冲击感的车型,也标志着捷豹彻底转向超豪华市场。未来,捷豹将以更高售价、更低销量的模式运营,目标竞争对手也从宝马转向宾利。 而在今天,捷豹正式公布了新车名称:Type 01。其中,“0”代表 零排放 ,也象征品牌“从零开始”的全面重塑;“1”则代表这是捷豹转型后的 第一款全新车型 ,同时也寓意“独一无二”。 相比概念车,量产版最大的变化在于从双门改为 更实用的四门设计 ,定位大型 GT 车型。其车长约 5.2 米,轴距达到 3.2 米,因此车内空间预计会相当夸张,同时还能容纳容量约 120 千瓦时的大型电池组。 续航方面,捷豹预计 Type 01 在美国 EPA 工况下可实现 约 644 公里续航 ,在 WLTP 工况下则最高可达到 692 公里。动力系统同样十分激进。新车将采用三电机布局,综合输出超过 986 马力,瞬时扭矩超过 1300 牛 · 米。捷豹表示,这套配置不仅能提供强劲动力,还会兼顾豪华车应有的平顺性与高级感。 即便是基础版本,Type 01 也会标配 23 英寸轮毂。不过,针对部分路况较差的市场,捷豹将准备提供 21 英寸轮毂版本。 底盘部分,新车将配备空气悬架和主动双阀减振系统,以提升行驶舒适性。 此前外界一度猜测捷豹可能推出增程式车型,但被明确否认。未来,捷豹将全面转向纯电动汽车。随着品牌定位上移,捷豹未来车型售价也将明显上涨。Type 01 起售价预计将 远超 10 万美元 (IT之家注:现汇率约合 68.1 万元人民币)。按照计划,Type 01 将在今年晚些时候完成全球首发,并于 2027 年上半年开始交付。
先说一下本人背景信息,一个985院校的计算机专业研究生,目前研一,之前从没有搞过科研发过文章。然后了解到实验室(实验室是搞数据库的)要求学生发一篇ccf-b及以上(至少是在投状态)的文章(说是担心我们毕业的问题,虽说学院有10%的挂的比例,就是开题答辩10%会需要第二次才能过,中期答辩包括最后的答辩几乎都是有这个比例的,但是第二次一般都会让学生通过,除非盲审不过那种才会出现延毕的情况)才会放几个月实习,但是实验室对于论文的指导几乎没有,主要以做项目为主,目前本人就在做一个项目。目前困惑的点我很想通过发一篇文章然后出去实习,但是没有一个明确的方向(实验室学长学姐几乎都没有论文),也不知道做什么方向的研究会更容易发论文一些。希望能有大佬能给出一些建议,我真是没招了。 19 个帖子 - 9 位参与者 阅读完整话题
本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容: 我的帖子已经打上 开源推广 标签: 是 我的开源项目完整开源,无未开源部分: 是 我的开源项目已链接认可 LINUX DO 社区: 是 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是 以上选择我承诺是永久有效的,接受社区和佬友监督: 是 以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出 项目地址 w012w012/lurebox: 一个路亚相关的,记录存储分享渔获的app。 加入 L 站挺长时间了,说实话访问频率很低。而且很长时间里,实际上是通过 RSS 获取的信息,所以账号看起来比较新。近期因为 Vibe Coding,开始高频访问,发现这真是个神奇的地方,也是简中社区里为数不多拥有互联网精神者的聚集地,在这里学会了不少东西,非常感谢。近来看到站内经常有钓鱼佬,所以想把这个项目作一下分享。 先介绍一下我自己,一个喜欢路亚的垃圾佬,捡垃圾的历史超过 15 年。10 多年以来玩过路由器、NAS、服务器、开发板等等,涉猎广但没有系统学习过,所以本质上我属于典型的又菜又爱玩那个层级。 这个 App 我给它取名** 路亚鱼护 (LureBox) **,用来记录每次出钓的渔获。想法在我脑子里住了挺长时间,好几次跟钓友吹过牛——"有个发财的项目巴拉巴拉……"但做一个 App 这事,对我来说跟每次出勤都有渔获一样不现实。也曾经想过,这么好的想法,要不是拖家带口稳定为主,真想离职拉几个人把它做出来。 直到 Vibe Coding 时代来了。 不会写 Flutter,不会写 Dart,不懂 Riverpod,没系统学过编程,但听说大模型会啊。于是经过几次简单的询问,在连版本管理都不会的时候,就这样开干了。我想要什么功能,告诉 AI;AI 写代码,我跑起来看效果;不对就说,对了就往下推。踩了无数坑,最后跑出来的东西,说实话自己都没想到。目前已经实现的如下: 拍照记录 快速拍摄鱼获照片,支持 AI 鱼种识别 尺寸记录 输入长度,自动估算重量 定位记录 自动记录钓获地点,支持位置管理 装备管理 管理鱼竿、鱼轮、鱼饵,支持设置默认装备 筛选排序 按时间/尺寸/重量/地点筛选和排序 统计分析 今日/本月/本年/全部渔获统计,图表可视化 成就系统 记录钓友里程碑 批量操作 支持多选删除 分享 一键分享渔获到社交平台 备份导出 支持 CSV/JSON 导出,WebDAV 备份 多语言 中英文双语支持,i18n mixin 国际化架构 新手引导 首次使用 Onboarding 引导页 个人中心 Me 页面,管理个人信息和设置 灵感来源和构思 (点击了解更多详细信息) 从想法到落地,充满妥协 (点击了解更多详细信息) 开源 目前拉了几个小伙伴在使用,基本功能正常。考虑到我的能力,实际上早就已经不足以应付这个项目。 所以开源了。GPL-3.0,代码全摊开。 如果你也是钓鱼佬,或者对 Vibe Coding 感兴趣,欢迎来看看。 GitHub - w012w012/lurebox: 一个路亚相关的,记录存储分享渔获的app。 · GitHub 最后 想说的还有很多,踩过的坑、用过的模型、现学现卖的滑稽等等,还有很多停下来的思考: Vibe Coding 真的可以什么都不懂吗? 我是真的想要一个自己使用的工具吗,还是为了完成曾经已经吹下的牛? 或者说是仅仅为了弄一个内行人不屑,外行人看起来硬核、实则仅仅是满足虚荣心的证据? 还有就是不得不提的,一种玄之又玄的状态,在这一个月里,我空间和休息的时候才有时间做,非常容易就可以沉浸进去,思维不断的跳跃,想法不断的涌现。我不知道对于专业选手来说这是不是前期规划不足的表现。但总之这种掌控的感觉非常奇妙,最起码摸鱼时,时间一点都不难熬,哈哈! 文笔不行,写的很乱。不管怎么说,一个人从零开始,用 AI 撸了一个月,搞出了自己一直想要的工具。对我而言这件事本身也很 cool。 7 个帖子 - 5 位参与者 阅读完整话题
平时codex使用比较多,佬们有没有什么建议或者一些注意事项,现在具体的也还没定下来 2 个帖子 - 2 位参与者 阅读完整话题
问题:每次新会话,AI 从零开始 在使用 Claude Code 这类 AI 编程助手时,我们通常依赖 CLAUDE.md 和 .claude/ 文件夹来帮助 AI 记住项目的上下文——约定、架构、进度、决策。 但这种方法有几个根本性的问题: 记忆是静态的 :你手动写进文档的内容,不会随着项目进展自动更新。项目做了两周, CLAUDE.md 可能还是最初的版本。 决策是断裂的 :AI 在某个会话中做了"选 PostgreSQL 而非 MySQL"的决策,但下一个会话看不到这个决策——除非你手动写进文档。 上下文是孤立的 :AI 知道当前要做什么,但不知道"为什么这样做"——上游做了什么决策、有哪些约束,这些信息丢失了。 文档会膨胀 :随着项目推进,记忆文件越来越长,信息密度越来越低,AI 和人都难以从中找到关键信息。 核心矛盾: 项目是一个持续演进的过程,但 AI 的记忆是一个需要手动维护的快照。 想法:用事件树做项目记忆 如果我们不用文档,而是用一棵 带依赖关系的事件树 来记录项目呢? 构建用户认证系统(项目目标) │ ├── 技术选型 ✅ done │ └── outcome: 选了 Rust + SQLite ,团队熟悉且单机部署足够 │ │ │ ├── 数据库设计 ✅ done │ │ └── outcome: 用户表 + 角色表 + 权限表,RBAC 模型 │ │ │ │ │ └── 实现 JWT 认证 ◐ doing ← 当前任务 │ │ │ └── API 网关设计 ○ todo │ └── 部署方案 ○ todo 每个事件有状态( todo / doing / done / abandoned ),事件之间有依赖关系。当一个事件完成时,记录它的 决策结果( outcome ) ——为什么这样做、选了什么、有什么约束。 关键机制: 当你查看某个事件时,系统沿依赖链向上遍历,把所有已完成事件的 outcome 自动组装成上下文。 AI 不需要翻文档、不需要人手动维护记忆。它只需要问"下一步做什么",就能拿到: 当前任务是什么 上游做了哪些决策、为什么 有哪些约束条件 这棵树能做什么 跨会话的决策连续性 AI 编程助手每次新会话都从零开始,但项目不是从零开始的。事件树的核心能力是 把上游的决策结果自动注入到当前任务的上下文中 。 当一个 AI 会话开始工作前,它问系统"下一步做什么",系统不仅告诉它当前该做哪个任务,还会沿着依赖链把前面所有已完成事件的决策结果组装在一起——选了什么技术、为什么这样设计、有哪些约束。AI 拿到的不是一个孤立的任务标题,而是站在一系列已验证的决策之上开始工作。当这个会话结束时,它把自己的决策结果写回事件树,下一个会话就能看到。决策链就这样跨会话地生长。 位置感知 在大型项目中,每个人(或每个 AI 会话)通常只负责一个局部。事件树让执行者看到自己在整体中的位置——项目的最终目标是什么,我当前的任务在哪个节点上,上游做了哪些决策把我带到了这里,下游还有哪些任务依赖我的产出。这不是简单的"待办清单",而是 带方向感的地图 。 计划的弹性 项目过程中计划会变。事件可以被废弃,废弃时记录原因。被废弃的事件不影响依赖链的推进(下游事件仍然可以继续),但原因会被保留在历史中。AI 知道"曾经考虑过这个方案但放弃了",不会在未来的会话中重复提议已经否决的方向。依赖关系本身也可以被调整——新增依赖、移除依赖、拆分事件——树的结构跟着项目的理解一起演化,而不是一开始就固定不变。它可能是一个完整的计划,执行一半中途修改计划,也可能只规划了大方向,细枝末节完全没有计划,但都适用。 对人也有用 不只是给 AI 用的工具。一个人的项目也可以用它来记录想法、理清顺序、记住当时的思考过程。三五天后回来, list 一看就知道有什么没做完, show 一下就能回想起当时为什么想做这件事。 畅想:自动执行循环 上面描述的是人手动推进事件树的流程——人(或 AI 会话)问"下一步做什么",拿到任务和上下文,执行完后手动写回结果。 但如果把这件事自动化呢? 设想这样一个循环:系统查看事件树,找到下一个可执行的任务,把任务描述和完整的决策链上下文打包,发送给执行器(一个 AI Agent ,比如 Claude Code 会话)。执行器拿到这些信息后开始工作——写代码、跑测试、解决问题。完成后,执行器把执行结果(做了什么决策、选了什么方案、遇到什么问题)反馈回来,系统自动更新事件树的状态和 outcome 。 然后系统再查看事件树。刚刚完成的任务可能解锁了新的可执行事件——原本因为依赖它而等待的任务现在就绪了。系统再次找到下一个任务,再次组装上下文,再次调用执行器。 事件树 ──查看下一步──→ 组装上下文 ──→ 调用执行器 │ 执行器完成任务 │ 事件树 ◀──更新状态── 接收反馈 ◀─────┘ │ └── 新任务就绪?──→ 是 ──→ 继续循环 否 ──→ 等待或通知人介入 在这个循环中,事件树扮演的不是"待办清单",而是 项目的状态机 。它知道哪些任务已经完成、哪些因为依赖而就绪、哪些因为上游未完成而被阻断。执行器不需要知道项目全貌,它只需要拿到当前任务的上下文(决策链),专注于执行。事件树负责记忆和调度。 更有意思的是,执行器的反馈不只是"完成了"。如果执行器发现当前任务的某个前提假设不成立,或者需要拆分成更细的子任务,或者发现一个更好的方向需要废弃原计划——这些信息反馈回事件树,树的结构就会相应调整。树在生长,不只是在推进。 人在这个循环中的角色从"逐步推进每个任务"变成"设定目标和方向,监控进展,在需要判断时介入"。日常的执行、记忆维护、上下文传递,全部自动化。 当然,这还很远。要让这个循环真正跑起来,需要解决很多问题:执行器如何可靠地反馈结构化信息、系统如何判断反馈质量、什么时候需要人介入、如何处理执行失败。但这棵树的结构——带依赖的事件、自动组装的决策链、状态的流转——天然地支持这个方向。 现在的实现 目前 vibecoding 了一版勉强可用的 knit ,核心是一个 Rust CLI 工具: 核心循环: knit next --json → 读取记忆(拿到下一步 + 决策链上下文) 执行任务 knit report done --outcome "..." → 写入记忆(记录决策) 循环 10 个命令覆盖了创建、查看、编辑、报告、推荐、废弃等操作。全部输出支持 --json ,AI 可以程序化消费。 存储是单文件 SQLite ,不需要服务器。LLM 推荐是可选的( knit next 可以配置 LLM 做智能排序,也可以不配置,用简单的依赖出度排序)。 事件树的 BFS 遍历自动沿依赖链收集决策链,钻石依赖会去重,被阻断的事件(上游还有未完成依赖)会标记 blocked 。废弃的事件被跳过,但原因保留。 SO ? 不知道大家怎么看这样的一个设计,我也不知道是否有一定的可行性,它看起来适合做很多方面的工作,也可以考虑它只为 agent 的项目记忆服务,目前的定位其实也有点模糊。 如果你有兴趣看看项目,里面的文档有更多信息 qkyufw/knit 欢迎评论
问题:每次新会话,AI 从零开始 在使用 Claude Code 这类 AI 编程助手时,我们通常依赖 CLAUDE.md 和 .claude/ 文件夹来帮助 AI 记住项目的上下文——约定、架构、进度、决策。 但这种方法有几个根本性的问题: 记忆是静态的 :你手动写进文档的内容,不会随着项目进展自动更新。项目做了两周, CLAUDE.md 可能还是最初的版本。 决策是断裂的 :AI 在某个会话中做了"选 PostgreSQL 而非 MySQL"的决策,但下一个会话看不到这个决策——除非你手动写进文档。 上下文是孤立的 :AI 知道当前要做什么,但不知道"为什么这样做"——上游做了什么决策、有哪些约束,这些信息丢失了。 文档会膨胀 :随着项目推进,记忆文件越来越长,信息密度越来越低,AI 和人都难以从中找到关键信息。 核心矛盾: 项目是一个持续演进的过程,但 AI 的记忆是一个需要手动维护的快照。 想法:用事件树做项目记忆 如果我们不用文档,而是用一棵 带依赖关系的事件树 来记录项目呢? 构建用户认证系统(项目目标) │ ├── 技术选型 ✅ done │ └── outcome: 选了 Rust + SQLite ,团队熟悉且单机部署足够 │ │ │ ├── 数据库设计 ✅ done │ │ └── outcome: 用户表 + 角色表 + 权限表,RBAC 模型 │ │ │ │ │ └── 实现 JWT 认证 ◐ doing ← 当前任务 │ │ │ └── API 网关设计 ○ todo │ └── 部署方案 ○ todo 每个事件有状态( todo / doing / done / abandoned ),事件之间有依赖关系。当一个事件完成时,记录它的 决策结果( outcome ) ——为什么这样做、选了什么、有什么约束。 关键机制: 当你查看某个事件时,系统沿依赖链向上遍历,把所有已完成事件的 outcome 自动组装成上下文。 AI 不需要翻文档、不需要人手动维护记忆。它只需要问"下一步做什么",就能拿到: 当前任务是什么 上游做了哪些决策、为什么 有哪些约束条件 这棵树能做什么 跨会话的决策连续性 AI 编程助手每次新会话都从零开始,但项目不是从零开始的。事件树的核心能力是 把上游的决策结果自动注入到当前任务的上下文中 。 当一个 AI 会话开始工作前,它问系统"下一步做什么",系统不仅告诉它当前该做哪个任务,还会沿着依赖链把前面所有已完成事件的决策结果组装在一起——选了什么技术、为什么这样设计、有哪些约束。AI 拿到的不是一个孤立的任务标题,而是站在一系列已验证的决策之上开始工作。当这个会话结束时,它把自己的决策结果写回事件树,下一个会话就能看到。决策链就这样跨会话地生长。 位置感知 在大型项目中,每个人(或每个 AI 会话)通常只负责一个局部。事件树让执行者看到自己在整体中的位置——项目的最终目标是什么,我当前的任务在哪个节点上,上游做了哪些决策把我带到了这里,下游还有哪些任务依赖我的产出。这不是简单的"待办清单",而是 带方向感的地图 。 计划的弹性 项目过程中计划会变。事件可以被废弃,废弃时记录原因。被废弃的事件不影响依赖链的推进(下游事件仍然可以继续),但原因会被保留在历史中。AI 知道"曾经考虑过这个方案但放弃了",不会在未来的会话中重复提议已经否决的方向。依赖关系本身也可以被调整——新增依赖、移除依赖、拆分事件——树的结构跟着项目的理解一起演化,而不是一开始就固定不变。它可能是一个完整的计划,执行一半中途修改计划,也可能只规划了大方向,细枝末节完全没有计划,但都适用。 对人也有用 不只是给 AI 用的工具。一个人的项目也可以用它来记录想法、理清顺序、记住当时的思考过程。三五天后回来, list 一看就知道有什么没做完, show 一下就能回想起当时为什么想做这件事。 畅想:自动执行循环 上面描述的是人手动推进事件树的流程——人(或 AI 会话)问"下一步做什么",拿到任务和上下文,执行完后手动写回结果。 但如果把这件事自动化呢? 设想这样一个循环:系统查看事件树,找到下一个可执行的任务,把任务描述和完整的决策链上下文打包,发送给执行器(一个 AI Agent ,比如 Claude Code 会话)。执行器拿到这些信息后开始工作——写代码、跑测试、解决问题。完成后,执行器把执行结果(做了什么决策、选了什么方案、遇到什么问题)反馈回来,系统自动更新事件树的状态和 outcome 。 然后系统再查看事件树。刚刚完成的任务可能解锁了新的可执行事件——原本因为依赖它而等待的任务现在就绪了。系统再次找到下一个任务,再次组装上下文,再次调用执行器。 事件树 ──查看下一步──→ 组装上下文 ──→ 调用执行器 │ 执行器完成任务 │ 事件树 ◀──更新状态── 接收反馈 ◀─────┘ │ └── 新任务就绪?──→ 是 ──→ 继续循环 否 ──→ 等待或通知人介入 在这个循环中,事件树扮演的不是"待办清单",而是 项目的状态机 。它知道哪些任务已经完成、哪些因为依赖而就绪、哪些因为上游未完成而被阻断。执行器不需要知道项目全貌,它只需要拿到当前任务的上下文(决策链),专注于执行。事件树负责记忆和调度。 更有意思的是,执行器的反馈不只是"完成了"。如果执行器发现当前任务的某个前提假设不成立,或者需要拆分成更细的子任务,或者发现一个更好的方向需要废弃原计划——这些信息反馈回事件树,树的结构就会相应调整。树在生长,不只是在推进。 人在这个循环中的角色从"逐步推进每个任务"变成"设定目标和方向,监控进展,在需要判断时介入"。日常的执行、记忆维护、上下文传递,全部自动化。 当然,这还很远。要让这个循环真正跑起来,需要解决很多问题:执行器如何可靠地反馈结构化信息、系统如何判断反馈质量、什么时候需要人介入、如何处理执行失败。但这棵树的结构——带依赖的事件、自动组装的决策链、状态的流转——天然地支持这个方向。 现在的实现 目前 vibecoding 了一版勉强可用的 knit ,核心是一个 Rust CLI 工具: 核心循环: knit next --json → 读取记忆(拿到下一步 + 决策链上下文) 执行任务 knit report done --outcome "..." → 写入记忆(记录决策) 循环 10 个命令覆盖了创建、查看、编辑、报告、推荐、废弃等操作。全部输出支持 --json ,AI 可以程序化消费。 存储是单文件 SQLite ,不需要服务器。LLM 推荐是可选的( knit next 可以配置 LLM 做智能排序,也可以不配置,用简单的依赖出度排序)。 事件树的 BFS 遍历自动沿依赖链收集决策链,钻石依赖会去重,被阻断的事件(上游还有未完成依赖)会标记 blocked 。废弃的事件被跳过,但原因保留。 SO ? 不知道大家怎么看这样的一个设计,我也不知道是否有一定的可行性,它看起来适合做很多方面的工作,也可以考虑它只为 agent 的项目记忆服务,目前的定位其实也有点模糊。 如果你有兴趣看看项目,里面的文档有更多信息 qkyufw/knit 欢迎评论
问题:每次新会话,AI 从零开始 在使用 Claude Code 这类 AI 编程助手时,我们通常依赖 CLAUDE.md 和 .claude/ 文件夹来帮助 AI 记住项目的上下文——约定、架构、进度、决策。 但这种方法有几个根本性的问题: 记忆是静态的 :你手动写进文档的内容,不会随着项目进展自动更新。项目做了两周, CLAUDE.md 可能还是最初的版本。 决策是断裂的 :AI 在某个会话中做了"选 PostgreSQL 而非 MySQL"的决策,但下一个会话看不到这个决策——除非你手动写进文档。 上下文是孤立的 :AI 知道当前要做什么,但不知道"为什么这样做"——上游做了什么决策、有哪些约束,这些信息丢失了。 文档会膨胀 :随着项目推进,记忆文件越来越长,信息密度越来越低,AI 和人都难以从中找到关键信息。 核心矛盾: 项目是一个持续演进的过程,但 AI 的记忆是一个需要手动维护的快照。 想法:用事件树做项目记忆 如果我们不用文档,而是用一棵 带依赖关系的事件树 来记录项目呢? 构建用户认证系统(项目目标) │ ├── 技术选型 ✅ done │ └── outcome: 选了 Rust + SQLite ,团队熟悉且单机部署足够 │ │ │ ├── 数据库设计 ✅ done │ │ └── outcome: 用户表 + 角色表 + 权限表,RBAC 模型 │ │ │ │ │ └── 实现 JWT 认证 ◐ doing ← 当前任务 │ │ │ └── API 网关设计 ○ todo │ └── 部署方案 ○ todo 每个事件有状态( todo / doing / done / abandoned ),事件之间有依赖关系。当一个事件完成时,记录它的 决策结果( outcome ) ——为什么这样做、选了什么、有什么约束。 关键机制: 当你查看某个事件时,系统沿依赖链向上遍历,把所有已完成事件的 outcome 自动组装成上下文。 AI 不需要翻文档、不需要人手动维护记忆。它只需要问"下一步做什么",就能拿到: 当前任务是什么 上游做了哪些决策、为什么 有哪些约束条件 这棵树能做什么 跨会话的决策连续性 AI 编程助手每次新会话都从零开始,但项目不是从零开始的。事件树的核心能力是 把上游的决策结果自动注入到当前任务的上下文中 。 当一个 AI 会话开始工作前,它问系统"下一步做什么",系统不仅告诉它当前该做哪个任务,还会沿着依赖链把前面所有已完成事件的决策结果组装在一起——选了什么技术、为什么这样设计、有哪些约束。AI 拿到的不是一个孤立的任务标题,而是站在一系列已验证的决策之上开始工作。当这个会话结束时,它把自己的决策结果写回事件树,下一个会话就能看到。决策链就这样跨会话地生长。 位置感知 在大型项目中,每个人(或每个 AI 会话)通常只负责一个局部。事件树让执行者看到自己在整体中的位置——项目的最终目标是什么,我当前的任务在哪个节点上,上游做了哪些决策把我带到了这里,下游还有哪些任务依赖我的产出。这不是简单的"待办清单",而是 带方向感的地图 。 计划的弹性 项目过程中计划会变。事件可以被废弃,废弃时记录原因。被废弃的事件不影响依赖链的推进(下游事件仍然可以继续),但原因会被保留在历史中。AI 知道"曾经考虑过这个方案但放弃了",不会在未来的会话中重复提议已经否决的方向。依赖关系本身也可以被调整——新增依赖、移除依赖、拆分事件——树的结构跟着项目的理解一起演化,而不是一开始就固定不变。它可能是一个完整的计划,执行一半中途修改计划,也可能只规划了大方向,细枝末节完全没有计划,但都适用。 对人也有用 不只是给 AI 用的工具。一个人的项目也可以用它来记录想法、理清顺序、记住当时的思考过程。三五天后回来, list 一看就知道有什么没做完, show 一下就能回想起当时为什么想做这件事。 畅想:自动执行循环 上面描述的是人手动推进事件树的流程——人(或 AI 会话)问"下一步做什么",拿到任务和上下文,执行完后手动写回结果。 但如果把这件事自动化呢? 设想这样一个循环:系统查看事件树,找到下一个可执行的任务,把任务描述和完整的决策链上下文打包,发送给执行器(一个 AI Agent ,比如 Claude Code 会话)。执行器拿到这些信息后开始工作——写代码、跑测试、解决问题。完成后,执行器把执行结果(做了什么决策、选了什么方案、遇到什么问题)反馈回来,系统自动更新事件树的状态和 outcome 。 然后系统再查看事件树。刚刚完成的任务可能解锁了新的可执行事件——原本因为依赖它而等待的任务现在就绪了。系统再次找到下一个任务,再次组装上下文,再次调用执行器。 事件树 ──查看下一步──→ 组装上下文 ──→ 调用执行器 │ 执行器完成任务 │ 事件树 ◀──更新状态── 接收反馈 ◀─────┘ │ └── 新任务就绪?──→ 是 ──→ 继续循环 否 ──→ 等待或通知人介入 在这个循环中,事件树扮演的不是"待办清单",而是 项目的状态机 。它知道哪些任务已经完成、哪些因为依赖而就绪、哪些因为上游未完成而被阻断。执行器不需要知道项目全貌,它只需要拿到当前任务的上下文(决策链),专注于执行。事件树负责记忆和调度。 更有意思的是,执行器的反馈不只是"完成了"。如果执行器发现当前任务的某个前提假设不成立,或者需要拆分成更细的子任务,或者发现一个更好的方向需要废弃原计划——这些信息反馈回事件树,树的结构就会相应调整。树在生长,不只是在推进。 人在这个循环中的角色从"逐步推进每个任务"变成"设定目标和方向,监控进展,在需要判断时介入"。日常的执行、记忆维护、上下文传递,全部自动化。 当然,这还很远。要让这个循环真正跑起来,需要解决很多问题:执行器如何可靠地反馈结构化信息、系统如何判断反馈质量、什么时候需要人介入、如何处理执行失败。但这棵树的结构——带依赖的事件、自动组装的决策链、状态的流转——天然地支持这个方向。 现在的实现 目前 vibecoding 了一版勉强可用的 knit ,核心是一个 Rust CLI 工具: 核心循环: knit next --json → 读取记忆(拿到下一步 + 决策链上下文) 执行任务 knit report done --outcome "..." → 写入记忆(记录决策) 循环 10 个命令覆盖了创建、查看、编辑、报告、推荐、废弃等操作。全部输出支持 --json ,AI 可以程序化消费。 存储是单文件 SQLite ,不需要服务器。LLM 推荐是可选的( knit next 可以配置 LLM 做智能排序,也可以不配置,用简单的依赖出度排序)。 事件树的 BFS 遍历自动沿依赖链收集决策链,钻石依赖会去重,被阻断的事件(上游还有未完成依赖)会标记 blocked 。废弃的事件被跳过,但原因保留。 SO ? 不知道大家怎么看这样的一个设计,我也不知道是否有一定的可行性,它看起来适合做很多方面的工作,也可以考虑它只为 agent 的项目记忆服务,目前的定位其实也有点模糊。 如果你有兴趣看看项目,里面的文档有更多信息 qkyufw/knit 欢迎评论
问题:每次新会话,AI 从零开始 在使用 Claude Code 这类 AI 编程助手时,我们通常依赖 CLAUDE.md 和 .claude/ 文件夹来帮助 AI 记住项目的上下文——约定、架构、进度、决策。 但这种方法有几个根本性的问题: 记忆是静态的 :你手动写进文档的内容,不会随着项目进展自动更新。项目做了两周, CLAUDE.md 可能还是最初的版本。 决策是断裂的 :AI 在某个会话中做了"选 PostgreSQL 而非 MySQL"的决策,但下一个会话看不到这个决策——除非你手动写进文档。 上下文是孤立的 :AI 知道当前要做什么,但不知道"为什么这样做"——上游做了什么决策、有哪些约束,这些信息丢失了。 文档会膨胀 :随着项目推进,记忆文件越来越长,信息密度越来越低,AI 和人都难以从中找到关键信息。 核心矛盾: 项目是一个持续演进的过程,但 AI 的记忆是一个需要手动维护的快照。 想法:用事件树做项目记忆 如果我们不用文档,而是用一棵 带依赖关系的事件树 来记录项目呢? 构建用户认证系统(项目目标) │ ├── 技术选型 ✅ done │ └── outcome: 选了 Rust + SQLite ,团队熟悉且单机部署足够 │ │ │ ├── 数据库设计 ✅ done │ │ └── outcome: 用户表 + 角色表 + 权限表,RBAC 模型 │ │ │ │ │ └── 实现 JWT 认证 ◐ doing ← 当前任务 │ │ │ └── API 网关设计 ○ todo │ └── 部署方案 ○ todo 每个事件有状态( todo / doing / done / abandoned ),事件之间有依赖关系。当一个事件完成时,记录它的 决策结果( outcome ) ——为什么这样做、选了什么、有什么约束。 关键机制: 当你查看某个事件时,系统沿依赖链向上遍历,把所有已完成事件的 outcome 自动组装成上下文。 AI 不需要翻文档、不需要人手动维护记忆。它只需要问"下一步做什么",就能拿到: 当前任务是什么 上游做了哪些决策、为什么 有哪些约束条件 这棵树能做什么 跨会话的决策连续性 AI 编程助手每次新会话都从零开始,但项目不是从零开始的。事件树的核心能力是 把上游的决策结果自动注入到当前任务的上下文中 。 当一个 AI 会话开始工作前,它问系统"下一步做什么",系统不仅告诉它当前该做哪个任务,还会沿着依赖链把前面所有已完成事件的决策结果组装在一起——选了什么技术、为什么这样设计、有哪些约束。AI 拿到的不是一个孤立的任务标题,而是站在一系列已验证的决策之上开始工作。当这个会话结束时,它把自己的决策结果写回事件树,下一个会话就能看到。决策链就这样跨会话地生长。 位置感知 在大型项目中,每个人(或每个 AI 会话)通常只负责一个局部。事件树让执行者看到自己在整体中的位置——项目的最终目标是什么,我当前的任务在哪个节点上,上游做了哪些决策把我带到了这里,下游还有哪些任务依赖我的产出。这不是简单的"待办清单",而是 带方向感的地图 。 计划的弹性 项目过程中计划会变。事件可以被废弃,废弃时记录原因。被废弃的事件不影响依赖链的推进(下游事件仍然可以继续),但原因会被保留在历史中。AI 知道"曾经考虑过这个方案但放弃了",不会在未来的会话中重复提议已经否决的方向。依赖关系本身也可以被调整——新增依赖、移除依赖、拆分事件——树的结构跟着项目的理解一起演化,而不是一开始就固定不变。它可能是一个完整的计划,执行一半中途修改计划,也可能只规划了大方向,细枝末节完全没有计划,但都适用。 对人也有用 不只是给 AI 用的工具。一个人的项目也可以用它来记录想法、理清顺序、记住当时的思考过程。三五天后回来, list 一看就知道有什么没做完, show 一下就能回想起当时为什么想做这件事。 畅想:自动执行循环 上面描述的是人手动推进事件树的流程——人(或 AI 会话)问"下一步做什么",拿到任务和上下文,执行完后手动写回结果。 但如果把这件事自动化呢? 设想这样一个循环:系统查看事件树,找到下一个可执行的任务,把任务描述和完整的决策链上下文打包,发送给执行器(一个 AI Agent ,比如 Claude Code 会话)。执行器拿到这些信息后开始工作——写代码、跑测试、解决问题。完成后,执行器把执行结果(做了什么决策、选了什么方案、遇到什么问题)反馈回来,系统自动更新事件树的状态和 outcome 。 然后系统再查看事件树。刚刚完成的任务可能解锁了新的可执行事件——原本因为依赖它而等待的任务现在就绪了。系统再次找到下一个任务,再次组装上下文,再次调用执行器。 事件树 ──查看下一步──→ 组装上下文 ──→ 调用执行器 │ 执行器完成任务 │ 事件树 ◀──更新状态── 接收反馈 ◀─────┘ │ └── 新任务就绪?──→ 是 ──→ 继续循环 否 ──→ 等待或通知人介入 在这个循环中,事件树扮演的不是"待办清单",而是 项目的状态机 。它知道哪些任务已经完成、哪些因为依赖而就绪、哪些因为上游未完成而被阻断。执行器不需要知道项目全貌,它只需要拿到当前任务的上下文(决策链),专注于执行。事件树负责记忆和调度。 更有意思的是,执行器的反馈不只是"完成了"。如果执行器发现当前任务的某个前提假设不成立,或者需要拆分成更细的子任务,或者发现一个更好的方向需要废弃原计划——这些信息反馈回事件树,树的结构就会相应调整。树在生长,不只是在推进。 人在这个循环中的角色从"逐步推进每个任务"变成"设定目标和方向,监控进展,在需要判断时介入"。日常的执行、记忆维护、上下文传递,全部自动化。 当然,这还很远。要让这个循环真正跑起来,需要解决很多问题:执行器如何可靠地反馈结构化信息、系统如何判断反馈质量、什么时候需要人介入、如何处理执行失败。但这棵树的结构——带依赖的事件、自动组装的决策链、状态的流转——天然地支持这个方向。 现在的实现 目前 vibecoding 了一版勉强可用的 knit ,核心是一个 Rust CLI 工具: 核心循环: knit next --json → 读取记忆(拿到下一步 + 决策链上下文) 执行任务 knit report done --outcome "..." → 写入记忆(记录决策) 循环 10 个命令覆盖了创建、查看、编辑、报告、推荐、废弃等操作。全部输出支持 --json ,AI 可以程序化消费。 存储是单文件 SQLite ,不需要服务器。LLM 推荐是可选的( knit next 可以配置 LLM 做智能排序,也可以不配置,用简单的依赖出度排序)。 事件树的 BFS 遍历自动沿依赖链收集决策链,钻石依赖会去重,被阻断的事件(上游还有未完成依赖)会标记 blocked 。废弃的事件被跳过,但原因保留。 SO ? 不知道大家怎么看这样的一个设计,我也不知道是否有一定的可行性,它看起来适合做很多方面的工作,也可以考虑它只为 agent 的项目记忆服务,目前的定位其实也有点模糊。 如果你有兴趣看看项目,里面的文档有更多信息 qkyufw/knit 欢迎评论
问题:每次新会话,AI 从零开始 在使用 Claude Code 这类 AI 编程助手时,我们通常依赖 CLAUDE.md 和 .claude/ 文件夹来帮助 AI 记住项目的上下文——约定、架构、进度、决策。 但这种方法有几个根本性的问题: 记忆是静态的 :你手动写进文档的内容,不会随着项目进展自动更新。项目做了两周, CLAUDE.md 可能还是最初的版本。 决策是断裂的 :AI 在某个会话中做了"选 PostgreSQL 而非 MySQL"的决策,但下一个会话看不到这个决策——除非你手动写进文档。 上下文是孤立的 :AI 知道当前要做什么,但不知道"为什么这样做"——上游做了什么决策、有哪些约束,这些信息丢失了。 文档会膨胀 :随着项目推进,记忆文件越来越长,信息密度越来越低,AI 和人都难以从中找到关键信息。 核心矛盾: 项目是一个持续演进的过程,但 AI 的记忆是一个需要手动维护的快照。 想法:用事件树做项目记忆 如果我们不用文档,而是用一棵 带依赖关系的事件树 来记录项目呢? 构建用户认证系统(项目目标) │ ├── 技术选型 ✅ done │ └── outcome: 选了 Rust + SQLite ,团队熟悉且单机部署足够 │ │ │ ├── 数据库设计 ✅ done │ │ └── outcome: 用户表 + 角色表 + 权限表,RBAC 模型 │ │ │ │ │ └── 实现 JWT 认证 ◐ doing ← 当前任务 │ │ │ └── API 网关设计 ○ todo │ └── 部署方案 ○ todo 每个事件有状态( todo / doing / done / abandoned ),事件之间有依赖关系。当一个事件完成时,记录它的 决策结果( outcome ) ——为什么这样做、选了什么、有什么约束。 关键机制: 当你查看某个事件时,系统沿依赖链向上遍历,把所有已完成事件的 outcome 自动组装成上下文。 AI 不需要翻文档、不需要人手动维护记忆。它只需要问"下一步做什么",就能拿到: 当前任务是什么 上游做了哪些决策、为什么 有哪些约束条件 这棵树能做什么 跨会话的决策连续性 AI 编程助手每次新会话都从零开始,但项目不是从零开始的。事件树的核心能力是 把上游的决策结果自动注入到当前任务的上下文中 。 当一个 AI 会话开始工作前,它问系统"下一步做什么",系统不仅告诉它当前该做哪个任务,还会沿着依赖链把前面所有已完成事件的决策结果组装在一起——选了什么技术、为什么这样设计、有哪些约束。AI 拿到的不是一个孤立的任务标题,而是站在一系列已验证的决策之上开始工作。当这个会话结束时,它把自己的决策结果写回事件树,下一个会话就能看到。决策链就这样跨会话地生长。 位置感知 在大型项目中,每个人(或每个 AI 会话)通常只负责一个局部。事件树让执行者看到自己在整体中的位置——项目的最终目标是什么,我当前的任务在哪个节点上,上游做了哪些决策把我带到了这里,下游还有哪些任务依赖我的产出。这不是简单的"待办清单",而是 带方向感的地图 。 计划的弹性 项目过程中计划会变。事件可以被废弃,废弃时记录原因。被废弃的事件不影响依赖链的推进(下游事件仍然可以继续),但原因会被保留在历史中。AI 知道"曾经考虑过这个方案但放弃了",不会在未来的会话中重复提议已经否决的方向。依赖关系本身也可以被调整——新增依赖、移除依赖、拆分事件——树的结构跟着项目的理解一起演化,而不是一开始就固定不变。它可能是一个完整的计划,执行一半中途修改计划,也可能只规划了大方向,细枝末节完全没有计划,但都适用。 对人也有用 不只是给 AI 用的工具。一个人的项目也可以用它来记录想法、理清顺序、记住当时的思考过程。三五天后回来, list 一看就知道有什么没做完, show 一下就能回想起当时为什么想做这件事。 畅想:自动执行循环 上面描述的是人手动推进事件树的流程——人(或 AI 会话)问"下一步做什么",拿到任务和上下文,执行完后手动写回结果。 但如果把这件事自动化呢? 设想这样一个循环:系统查看事件树,找到下一个可执行的任务,把任务描述和完整的决策链上下文打包,发送给执行器(一个 AI Agent ,比如 Claude Code 会话)。执行器拿到这些信息后开始工作——写代码、跑测试、解决问题。完成后,执行器把执行结果(做了什么决策、选了什么方案、遇到什么问题)反馈回来,系统自动更新事件树的状态和 outcome 。 然后系统再查看事件树。刚刚完成的任务可能解锁了新的可执行事件——原本因为依赖它而等待的任务现在就绪了。系统再次找到下一个任务,再次组装上下文,再次调用执行器。 事件树 ──查看下一步──→ 组装上下文 ──→ 调用执行器 │ 执行器完成任务 │ 事件树 ◀──更新状态── 接收反馈 ◀─────┘ │ └── 新任务就绪?──→ 是 ──→ 继续循环 否 ──→ 等待或通知人介入 在这个循环中,事件树扮演的不是"待办清单",而是 项目的状态机 。它知道哪些任务已经完成、哪些因为依赖而就绪、哪些因为上游未完成而被阻断。执行器不需要知道项目全貌,它只需要拿到当前任务的上下文(决策链),专注于执行。事件树负责记忆和调度。 更有意思的是,执行器的反馈不只是"完成了"。如果执行器发现当前任务的某个前提假设不成立,或者需要拆分成更细的子任务,或者发现一个更好的方向需要废弃原计划——这些信息反馈回事件树,树的结构就会相应调整。树在生长,不只是在推进。 人在这个循环中的角色从"逐步推进每个任务"变成"设定目标和方向,监控进展,在需要判断时介入"。日常的执行、记忆维护、上下文传递,全部自动化。 当然,这还很远。要让这个循环真正跑起来,需要解决很多问题:执行器如何可靠地反馈结构化信息、系统如何判断反馈质量、什么时候需要人介入、如何处理执行失败。但这棵树的结构——带依赖的事件、自动组装的决策链、状态的流转——天然地支持这个方向。 现在的实现 目前 vibecoding 了一版勉强可用的 knit ,核心是一个 Rust CLI 工具: 核心循环: knit next --json → 读取记忆(拿到下一步 + 决策链上下文) 执行任务 knit report done --outcome "..." → 写入记忆(记录决策) 循环 10 个命令覆盖了创建、查看、编辑、报告、推荐、废弃等操作。全部输出支持 --json ,AI 可以程序化消费。 存储是单文件 SQLite ,不需要服务器。LLM 推荐是可选的( knit next 可以配置 LLM 做智能排序,也可以不配置,用简单的依赖出度排序)。 事件树的 BFS 遍历自动沿依赖链收集决策链,钻石依赖会去重,被阻断的事件(上游还有未完成依赖)会标记 blocked 。废弃的事件被跳过,但原因保留。 SO ? 不知道大家怎么看这样的一个设计,我也不知道是否有一定的可行性,它看起来适合做很多方面的工作,也可以考虑它只为 agent 的项目记忆服务,目前的定位其实也有点模糊。 如果你有兴趣看看项目,里面的文档有更多信息 qkyufw/knit 欢迎评论
大家好,潜水这么久第一次正式发帖,好基友 Jerry 最近从 0 开始做了个开源项目,叫 AuctorForge 。 GitHub: https://github.com/Te9ui1a/AuctorForge 这是一个给中文网文 / 长篇小说作者用的本地优先 AI 创作工作台。大概想解决的问题是:写长篇的时候,人物、设定、大纲、正文、审稿意见、AI 聊天记录和提示词经常到处散落,时间一长就很难管理。 所以他做了一个 Web UI ,把这些东西尽量放回一个本地项目文件夹里,让作者能看得见、改得动、备份得了。AI 只是辅助,不是替作者接管创作。 目前项目是: Vite + React 前端 Fastify 本地 API pnpm workspace TypeScript 为主 MIT 开源 他是是纯新人,这个项目是他边学边 vibe coding 做出来的。现在能本地跑起来,也有一些基础功能和文档。 想请大家看看这个方向有没有价值,欢迎大家部署体验下。或许我部署到网站上,给大家体验体验。 欢迎拍砖。
新项目从零开始我觉得用 AI 没问题,但是像现有的已经迭代了近十年的业务代码,存在各种外部依赖,各种补丁,各种定时任务,各种临时脚本,代码量至少一百万行以上,也没有文档和注释,AI 真能搞得定?还是说要做什么功能再一点一点补充业务文档?而且由于业务的复杂性,很多时候你看代码也看不懂,得去实际用一下调试一下才知道这里是在干嘛,所以用 AI 是不仅要 review ,还要人工测试一下? 目前我公司有人用,吹得神乎其神,我过去看了一下,他是用在前端,而且生出来的代码都是重新造轮子,不会复用现有轮子和编码规范!他说准备跑路了,不在乎这些了!
新项目从零开始我觉得用 AI 没问题,但是像现有的已经迭代了近十年的业务代码,存在各种外部依赖,各种补丁,各种定时任务,各种临时脚本,代码量至少一百万行以上,也没有文档和注释,AI 真能搞得定?还是说要做什么功能再一点一点补充业务文档?而且由于业务的复杂性,很多时候你看代码也看不懂,得去实际用一下调试一下才知道这里是在干嘛,所以用 AI 是不仅要 review ,还要人工测试一下? 目前我公司有人用,吹得神乎其神,我过去看了一下,他是用在前端,而且生出来的代码都是重新造轮子,不会复用现有轮子和编码规范!他说准备跑路了,不在乎这些了!
新项目从零开始我觉得用 AI 没问题,但是像现有的已经迭代了近十年的业务代码,存在各种外部依赖,各种补丁,各种定时任务,各种临时脚本,代码量至少一百万行以上,也没有文档和注释,AI 真能搞得定?还是说要做什么功能再一点一点补充业务文档?而且由于业务的复杂性,很多时候你看代码也看不懂,得去实际用一下调试一下才知道这里是在干嘛,所以用 AI 是不仅要 review ,还要人工测试一下? 目前我公司有人用,吹得神乎其神,我过去看了一下,他是用在前端,而且生出来的代码都是重新造轮子,不会复用现有轮子和编码规范!他说准备跑路了,不在乎这些了!
视频版: https://www.bilibili.com/video/BV1qtdSBkEDy/ 从零开始用国内网络,把新电脑打造成全能 AI Agent 运行平台,解锁 Claude Code 、Codex 、Hermes Agent 、OpenClaw 等等一切 Agent 框架。从此搭建环境再也不用求人,本期视频是一个手把手的保姆级教程。我准备了三台刚刚重装完系统的电脑,分别覆盖 Windows ,MacOS 还有 Linux ,使用国内家庭宽带,用录屏软件详细记录了全过程。相信大家跟着视频演示,绝大多数问题都能顺利解决。我们先从 Windows 开始。 Windows:Nodejs 安装 Nodejs 是一个让你可以在电脑上运行 Javascript 代码的工具,或者叫做运行环境。大量的 AI Agent 软件,比如说 Codex 、OpenClaw 等等,都是依赖 Nodejs 才能运行的。我们来到 Nodejs 的官网, https://nodejs.org/zh-cn 在下面找到 Windows 系统的安装程序下载下来。然后运行安装程序,一路点击下一步完成安装。 接下来我们回到桌面,右键开始菜单,选择终端管理员,输入这个命令回车。这个命令的意思是允许在控制台运行 Powershell 脚本。 Set-ExecutionPolicy Unrestricted 然后我们输入命令 node -v 还有 npm -v ,这里都显示了版本号,我们的 Nodejs 就安装成功了。 Windows:Git 安装 接下来我们来安装 Git 。Git 是全世界最流行的版本控制软件,比如我们上学写论文的时候,会把论文保存成多个历史版本,如果我们需要某个版本的某个段落,可以很轻松的从历史里面找回来,这就是最原始的版本控制。Git 是一个帮助我们进行版本控制的软件,使用 Git 对文件进行版本控制,可以很方便的让 AI 随时回退到某个历史节点重新工作。我们来到 Git 的官网 https://git-scm.com/ 点击下载 Windows 系统的安装包。根据自己的 CPU 架构选择 X86_64 位还是 arm 架构的安装包,一般 Windows 电脑的 CPU 架构都是 X86_64 位的。 一般选择 Git for Windows downloads 。 下载并且打开这个安装程序,一路点击下一步完成安装。然后我们回到桌面,右键在终端打开,输入命令 git –version 这里能够成功的打印版本号,我们的 Git 就安装成功了。 Windows: Claude Code 接下来我们安装 Claude Code 。Claude Code 是现阶段公认的最强的 AI Agent 软件。我们来到桌面,右键选择使用终端打开,然后输入这个命令来安装 Claude Code ,回车,安装完成。 npm install -g @anthropic-ai/claude-code 接下来我们对 Claude Code 进行一个基础设置,让它使用国内的模型先跑起来,等下我再简单介绍怎么获取一个 Claude Code 的官方订阅。这里我们来到 C:/Users/你的用户名 这个文件夹。在顶部菜单点击查看,勾选上显示隐藏文件夹,还有文件扩展名。 接下来我们在这个目录右键新建文本文档,然后把我们新创建的文件的名字改成 .claude.json 。 双击改名后的文件,选择用记事本打开,然后把这一大串文本复制进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 在这一大串配置里面,大部分内容都是固定的,我们只需要改动两个地方,一个是 API Key ,第二个是模型厂商的 URL 。这个 API Key 我们可以在国内的某家 AI 服务商开通服务后申请创建一个。比如这里我来到国内某家大模型厂商的网站, 在右上角点击控制台, 然后点击新建 API key , 随便填写个名字,点击新建。把生成出来的这个 API key 复制下来,填写到我们的配置里面。 接下来第二个需要修改的地方就是这里的 Base URL 。每家大模型厂商都有自己的对应 API 地址。这里我们在右上角点击文档,找到最下面的在第三方中使用,在文档里面有 base URL 。 我们把这一串复制下来,填写到 Claude Code 的配置里面。 按 Ctrl+S 保存一下这个配置文件,然后关闭。我们还是来到桌面,右键在终端打开,然后输入命令 claude 来启动 Claude Code 。打个招呼,这里给到了回应,我们就配置完成了。 Windows:VSCode 下一步我们来安装 VS Code 。VS Code 是一款轻量且功能强大的代码编辑器,几乎支持所有的编程语言,是我们使用 AI Agent 进行代码编写的必备软件。我们来到 VS Code 的官网 https://code.visualstudio.com/ 点击下载 Windows 系统的安装程序,然后打开安装程序,一路点击下一步完成安装。 Windows:Github 接下来我们解锁 Github 。刚才我们介绍了 Git ,这是一个版本控制软件,Hub 的意思是中心汇聚集合,全世界的开发者会把自己用 Git 进行版本控制的仓库,也就是一个个的文件夹,上传到 Github 的网站上面,这个网站就是 Git 仓库的集合,也就是 Hub 。所以 Git 加 Hub 就是 Github ,它是全球最大的代码仓库托管与协作平台。在国内网络使用 Github 经常会因为网络问题导致超时或者打不开。我们在搜索栏搜索 store ,然后打开 Microsoft store ,搜索 Watt Toolkit 这款开源免费的软件, 然后点击安装。安装完成以后打开软件,找到网络加速,勾选上 Github ,点击一键启动加速。 然后我们就可以顺畅的访问 Github 了。 https://github.com/ 如果没有账号的话,可以在右上角点击 sign up 先注册一个。填写一个用户名邮箱密码地区点击注册,然后去邮箱收一下验证码,把邮箱里面的验证码填写过来,点击继续,这样就注册完成了。然后点击 Sing In 按钮就登录进了 Github 。 Windows:实战案例 我们来看一个实战案例,把刚才的几步配置串联起来。首先在桌面新建一个文件夹,然后打开这个文件夹,右键在终端打开,输入命令 claude 来启动 Claude Code 。这里输入提示词:创建一个 html 的坦克大战,并且上传到 Github 上面变成一个仓库。 AI 在执行过程中会申请权限,这里我都选择 yes 。接下来它询问我怎么把项目上传到 Github 上面,这里我选择第二个。AI 提示我先访问这个地址创建一个仓库,我点击这个链接。 https://github.com/new 创建一个新仓库 进来以后填写一个仓库的名字,点击创建,然后我把仓库地址复制一下,再粘贴给 Claude Code 。 接下来 Claude Code 继续它的操作,这里会自动打开一个弹窗让我登录 Github ,我选择使用浏览器登录,然后再点击授权按钮。 回到 Claude Code ,我们看到任务就完成了,AI 编写的代码也同步上传到了 Github 上面。 Windows:Python 接下来我们来安装 Python 。Python 是一个非常流行的编程语言,很多 Agent skills 附带的脚本都是依赖 Python 才能运行的。我们来到 Python 的官网,在 download 这里点击 Python install manager 下载 Python 安装器。 https://www.python.org/downloads/ 下载完成以后运行,点击 install Python 。然后会弹出一个终端窗口,我们全部输入 y 回车,这样 Python 就安装好了。 我们新打开一个终端,输入命令 python –version python3 –version pip install requests 都能打印版本号。那么使用 pip install 命令也能安装 Python 软件包,这样基础使用就满足了,Agent skills 里面的脚本也都可以运行了。更进阶更推荐的用法是使用 Python 的虚拟环境进行多版本管理,把不同工程的 Python 依赖分文件夹存储。我们可以输入命令 py install 3.13 这样就可以安装一个指定版本,也就是 3.13 版本的 Python 。然后我们在桌面新建一个文件夹,右键在终端打开,输入这个命令。 python3.13 -m venv .venv 它的意思是使用 3.13 版本的 Python 在这个文件夹下面创建一个虚拟环境。接下来使用命令来激活虚拟环境,然后我们再使用 pip 命令来安装 Python 包。 .\.venv\Scripts\Activate pip install requests 这样依赖就被安装到了指定版本的指定文件夹下面,相互之间就不会再有冲突。 这里有个注意事项,很多 AI 不喜欢用虚拟环境,所以我们可以在提示词里面注明要求 AI 必须使用虚拟环境来进行工作。 Windows:WSL 接下来我们在 Windows 电脑上安装 WSL 。WSL 的全称是 Windows subsystem for Linux ,也就是运行在 Windows 上的 Linux 子系统。开启了 WSL 以后,你的 Windows 电脑就拥有了一个 Linux 子系统。很多在 Windows 上无法安装或者表现不佳的 Agent 软件也都能很好的运行了。在使用 WSL 之前,我们需要先开启两个 Windows 功能。我们来到 Windows 的搜索栏搜索功能,选择启用或关闭 Windows 功能。然后勾选上这两个:适用于 Linux 的 Windows 子系统还有虚拟机平台。 点击确定,然后根据提示重新启动电脑。电脑重启完成以后,我们还是来到桌面,右键在终端打开,输入这个命令 wsl –install –web-download 耐心等待它下载完成。下载完成以后我们填写一个用户名密码,这样 WSL 就安装完成了。然后我们新开一个终端,输入命令 wsl –-list 这里显示的 Ubuntu 就是我们的 Linux 子系统。Ubuntu 是目前最流行的 Linux 发行版,是 WSL 默认安装的版本。我们在顶部点击加号,在下拉列表里面就能找到我们的 Linux 子系统,点击 Ubuntu 就进入了子系统。 WSL 的文件系统跟 Windows 上是互通的,我们可以在 Windows 上打开我的电脑,在左下角可以看到一个 Linux 的图标,我们点击一下。这里显示了一个 Ubuntu 的文件夹,我们点击进去。这样就在 Windows 里面打开了这个 Linux 的文件系统。 除了在 Windows 上查看 Linux 的文件,我们也可以反过来从 Linux 上查看 Windows 上的文件。我们可以在 Linux 这边输入命令 cd /mnt/c 这就进入了 Windows 电脑的 c 盘。接下来输入 obsidian_note 回车,就进入了我在 Windows 上存放笔记的文件夹 cd /mnt/c/obsidian_note ls 然后输入 ls 命令可以查看所有的笔记。有了 WSL 以后,我们就可以安装运行一些原本 Windows 上不支持的 AI 工具。比如这是最近很火的 Hermes Agent ,它在 Windows 上原本是不支持的,但是我们看到这里它支持 WSL 。我们只需要复制一下这个一键安装命令,来到 WSL 的窗口粘贴过来执行。 有时候可能会因为网络问题访问这个地址失败,多试几次,等待了差不多 20 分钟完成了安装,我们看到在国内的网络环境下也可以正常安装。接下来它让我们选择一个模型提供商,这里我选择 OpenRouter 。然后我们根据提示来到 OpenRouter 的这个地址创建一个 API key 。 我把创建的 API key 复制一下,Ctrl+V 粘贴进 WSL 回车。接下来它让我选择模型,这里我选择这个免费的模型回车。然后我们按照提示启动 Hermes Agent 的聊天功能,里打个招呼,给到了回复,我们的 Hermes Agent 在 WSL 上也安装成功了。 Windows:Codex 官方订阅 Codex 是我近期最推荐的 AI Agent 工具,因为 Codex 给的额度较高而且对中国用户比较友好。接下来我们就在电脑上安装一下 Codex ,并且配置一下 OpenAI 的官方套餐。在 OpenAI 的官网可以看到,Codex 至少需要一个 plus 版的订阅套餐才可以使用。我们先来到 chatgpt 的官网, https://chatgpt.com/ 在这一步需要国外的上网环境才可以访问到这个页面。这里提示一下,在视频的前面我们已经解锁了 Github ,在 Github 里面可以搜索到一切你需要的知识,在视频里面我就不展开讲了。然后我们点击免费注册先注册一个账户,使用国内的邮箱就可以注册。我们在安卓手机上下载一个谷歌 play 商店,登录完成以后在右上角点击头像,然后点击设置,常规设置,找到账号和设备偏好设置,这里把国家跟地区改成美国。注意这一步你的手机上需要有美国的上网环境。 如果设置失败可以来到 https://payments.google.com/ 在设置->资料里面添加一个美国的地址。 接下来我们回到首页,点击头像,点击付款与订阅,这里点击添加卡片,国内的卡片也可以绑定成功。接下来我们还是回到谷歌 play 的首页搜索 chatgpt ,下载 chatgpt 的手机版 APP 。打开手机版的 chatgpt ,顶部有一个获取 plus 点击一下,订阅方式选择 google play ,这样我们就获得了 GPT 的 plus 订阅。 我们来到桌面,右键在终端打开,这里输入 Codex 的安装命令,然后我们输入 Codex 启动起来,在浏览器里会打开一个登录页面。我们登录一下 ChatGPT 的账户,打个招呼给到了回应就安装完成了。 接下来我再简单介绍下怎么获取一个 Claude 的官方订阅。我们来到 Claude 官网,注意这里一定要选择使用谷歌账号进行登录,而且这里要注意你的谷歌账号的邮箱必须是 Gmail 的。 使用 Gmail 邮箱不会触发手机验证码那个步骤。接下来跟 chatgpt 很像,我们还是先下载谷歌 play ,国家跟地区改成美国,然后下载 Claude 的手机 APP ,在手机 APP 里面使用谷歌 play 完成订阅。后面我会单独出一期视频进行详细介绍。 MacOS:Chrome Mac 电脑自带的 Safari 浏览器被人调侃是新时代的 IE 浏览器,非常的不推荐,我们要做的第一件事就是先把它替换掉。我们先打开 Safari 浏览器,我们在百度搜索 Chrome ,第一个就是 Chrome 的官网, https://www.google.cn/chrome/ 然后点击下载 Chrome 。下载完成以后,双击这个安装包,把 Chrome 拖拽进 application 文件夹就完成了安装。安装完成以后,我们在 APP 里面找到 Chrome ,把它拖拽进程序坞,然后把它原来自带的 Safari 浏览器在程序坞里面移除掉。 MacOS:开发工具包 下一步我们来安装苹果电脑的命令行开发工具包,内含了很多基础工具。我们在 APP 里面往下找,有一个终端,打开终端,然后输入这个命令 xcode-select –install 进行安装。这里会弹出一个确认窗口,我们点击同意,这样就安装完成了。 这里面内含了很多开发工具,比如它就自带了 Git 。我们可以输入命令 git –version 我们看到 Git 已经帮我们安装好了。接下来我们来安装 nodejs 。注意这里有一个大坑,就是千万不要使用 nodejs 的官网安装包,安装包会把 nodejs 安装到 root 目录,后续会出现很多的权限问题。这里我们还是来到 nodejs 的官网,一定要选择使用 nvm 的安装方式,把下面这几个命令在终端里面依次执行一遍。 不过这些命令在国内的网络环境有可能会执行失败,可以替换成我这几个命令。 touch ~/.zshrc export NVM_SOURCE="https://gitee.com/mirrors/nvm-sh.git" curl -o- https://gitee.com/mirrors/nvm-sh/raw/v0.40.3/install.sh | bash \. "$HOME/.nvm/nvm.sh" nvm install 24 我们在 APP 里面找到终端打开终端,先输入 touch 创建一个 shell 的配置文件,然后把下面几个命令复制过来依次执行。这样就把 nodejs 24 安装到了电脑上。然后我们输入命令 node -v 还有 npm -v ,这里都成功打印出了版本号,我们的 nodejs 就安装完成了。 MacOS:Claude Code 接下来我们安装 Claude Code 。Claude Code 是现阶段公认的最强的 AI Agent 软件。我们在 APP 里面找到终端打开终端,然后输入这个命令来安装 Claude Code 。 npm install -g @anthropic-ai/claude-code 然后我们对 Claude Code 进行一个基础设置,让它使用国内模型先跑起来。我们在终端里面输入 cd ~ touch .claude.json cd 进入主目录,然后 touch 命令创建一个 Claude Code 的配置文件。在访达里面点击用户名进入主目录,然后点击 command+shift+. 显示隐藏文件,找到我们新创建的文件右键打开,然后把这一大串文本复制进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 在这一大串配置里面大部分内容都是固定的,我们只需要改动两个地方,一个是这里的 TOKEN 也叫做 API Key ,第二个是模型厂商的 URL 。这个 API Key 我们可以在国内的某家 AI 服务商开通服务后申请创建一个。比如这里我来到国内某家大模型厂商的网站,在右上角点击控制台, 比如这里我来到国内某家大模型厂商的网站, 在右上角点击控制台, 然后点击新建 API key , 随便填写个名字,点击新建。把生成出来的这个 API key 复制下来,填写到我们的配置里面。 接下来第二个需要修改的地方就是这里的 Base URL 。每家大模型厂商都有自己的对应 API 地址。这里我们在右上角点击文档,找到最下面的在第三方中使用,在文档里面有 base URL 。 我们把这一串复制下来,填写到 Claude Code 的配置里面。 按 command+s 保存一下这个配置文件,然后我们还是回到终端,输入命令 Claude 来启动 Claude Code 。这里选择第一个信任当前文件夹,然后会弹出一些授权窗口,我们都点击允许,打个招呼,这里成功给到了回复,我们的 Claude Code 就配置完成了。 MacOS:Github 然后我们来解锁 Github 。在国内网络使用 Github 经常会因为网络问题导致超时或者打不开。解决方法是我们来到这个网站下载 Watt Toolkit 这个开源免费的工具,这里我使用的是网盘下载。下载完成以后双击安装包运行,然后把它拖拽进 application 。然后我们打开软件,这里因为安全策略被阻止了,我们可以来到设置–>隐私与安全性,点击 Watt ToolKit 仍要打开,这样就可以成功进入软件。 然后我们找到网络加速,勾选上 Github ,点击一键加速。这里又报了一个权限错误,我们只需要填上自己的 Mac 电脑的用户名,然后复制一下下面这条命令打开终端执行一下, 再次尝试加速 Github ,这样就成功了,我们就可以顺畅的使用 Github 了。 有关怎么注册 Github 账号并且把 Claude Code 开发的程序备份上传到 Github 上面,在本视频前面的 Windows 章节有过详细介绍了,可以去参考一下。 MacOS:HomeBrew 接下来我们来安装 HomeBrew 。Homebrew 是 Mac 上最流行的命令行软件管理器,有了 HomeBrew 以后,用一行命令就能安装更新卸载各种软件和开发工具,它也是 MacOS 上的必装软件。我们来到 HomeBrew 的官网, https://brew.sh/ 这里有一个一键安装命令,我们把命令复制一下。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 接下来还是打开终端把命令粘贴过来。我们注意到这个命令它依赖 Github 上面的一个执行脚本,所以在前面我们先解决了 Github 的网络问题。接下来我们回车执行一下这个命令。等待了一会,HomeBrew 就安装完成了。 有了 HomeBrew 以后就可以很方便的安装其他软件,比如可以安装 Python 。我们还是打开终端输入这个命令 brew install [email protected] 给我们的电脑安装 3.12 版本的 Python ,等待了一会就安装完成了。我们打开访达,点击用户名进入主目录,找到这个.zshrc 文件双击打开。添加这么 4 行,它的意思是把 3.12 版本设置成 Python 的别名,然后按 command+s 保存一下。 以后在命令行里面不论输入的是 python 还是 python3 ,都是使用的 Python3.12 版本。这里有个注意事项,使用 HomeBrew 安装的 Python ,直接在终端执行 pip 命令尝试安装 Python 依赖会报错,HomeBrew 禁止全局安装 Python 依赖,也就是说我们必须使用虚拟环境。使用虚拟环境是 Python 最推荐也是最标准的做法。我们先创建一个项目文件夹,然后在终端里面使用 cd 命令进入文件夹。接下来输入这个命令在项目文件夹创建虚拟环境,然后下一条命令激活新创建的虚拟环境。 接下来就可以使用 pip 命令来安装 Python 依赖了。使用虚拟环境让每个项目的依赖都放到自己的文件夹下面,相互之间就不会再有冲突。这里有个注意事项,很多 AI 不喜欢用虚拟环境,所以我们可以在提示词里面注明要求 AI 必须使用虚拟环境来进行工作。 接下来我们安装使用 Codex ,还是打开终端输入 Codex 的安装命令, npm i -g @openai/codex 这样就安装完成了。然后我们可以去 chatgpt 的官网注册账号获取 plus 订阅,这些内容在前面的 Windows 章节已经进行过详细介绍了,大家可以参考一下。同样的方式,我们也可以获得 Claude Code 的官方订阅,在前面也已经介绍过了。 Linux:基础工具 这是一台 Ubuntu24.04 操作系统的 Linux 新电脑,我们来给它配置一下 Agent 运行环境。Linux 用户一般动手能力比较强,所以这个章节我讲的就快一些。我们要做的第一件事就是更新 APT 索引。APT 是 Ubuntu 系统安装软件的工具,更新索引就是让系统知道现在有哪些软件可以装,最新的版本是什么。我们来到桌面,右键在终端打开,输入这个命令 sudo apt update 更新一下 apt 索引,填写我们电脑的密码回车,这样就更新完成了。 接下来安装两个 Linux 系统的必备软件,第一个是 curl ,curl 是一个用命令行访问网址的工具,我们输入命令 sudo apt install curl 接下来我们安装 git ,git 是全世界最流行的版本控制软件,输入命令 sudo apt install git 点击 y 回车确认执行,这样两个必备软件就安装完成了。 export NVM_SOURCE="https://gitee.com/mirrors/nvm-sh.git" curl -o- https://gitee.com/mirrors/nvm-sh/raw/v0.40.3/install.sh | bash \. "$HOME/.nvm/nvm.sh" nvm install 24 然后我们输入 node -v 验证一下,这里显示了版本号,我们的 nodejs 就安装完成了。 Linux:Claude Code 接下来我们来安装 Claude Code 。还是在终端里面输入 Claude Code 的安装命令回车, npm install -g @anthropic-ai/claude-code 这样就安装完成了。然后我们在终端里面输入命令 cd ~ touch .claude.json 创建一个 Claude Code 的配置文件。然后我们在文件管理器里面来到主文件夹,打开左上角的菜单点击显示隐藏文件,然后双击打开我们刚才新创建的配置文件。把这一大段粘贴进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 这里只需要修改两个地方,一个是这里的 API key ,还有一个是模型厂商的 base URL 。在视频的前半段 Windows 和 Mac 章节里面我有过详细介绍了,可以回去参考一下。然后我们保存一下这个配置文件,输入 Claude 来启动 Claude Code 。打个招呼,这里给到了回复,我们的 Claude Code 就配置完成了。 我们也可以去 Claude 的官网获得一个官方订阅,在视频的前半段我有过详细介绍了,可以回去参考一下。 Linux:VS Code 接下来我们来安装 VSCode 。这里先来到 VSCode 的官网,它自动识别出了我是 Linux 系统,Debian 或者 Ubuntu 系统,下载左侧的.deb 格式的安装包。 https://code.visualstudio.com/ 下载下来以后我们来到下载目录,右键在终端运行,然后输入这个命令 sudo apt install ./安装包名字 在左下角的应用程序里面就可以看到 vscode ,点击就可以直接运行了。 接下来我们来下载 Chrome 浏览器。这里来到 Chrome 国内版的官网 https://www.google.cn/chrome/ 点击下载,然后选择.deb 格式的安装包。下载完成以后我们来到下载目录,右键在终端打开,输入这个命令 sudo apt instal ./安装包名字,回车这样 Chrome 就安装完成了。 在左下角的 APP 里面就可以找到 Chrome 浏览器。
视频版: https://www.bilibili.com/video/BV1qtdSBkEDy/ 从零开始用国内网络,把新电脑打造成全能 AI Agent 运行平台,解锁 Claude Code 、Codex 、Hermes Agent 、OpenClaw 等等一切 Agent 框架。从此搭建环境再也不用求人,本期视频是一个手把手的保姆级教程。我准备了三台刚刚重装完系统的电脑,分别覆盖 Windows ,MacOS 还有 Linux ,使用国内家庭宽带,用录屏软件详细记录了全过程。相信大家跟着视频演示,绝大多数问题都能顺利解决。我们先从 Windows 开始。 Windows:Nodejs 安装 Nodejs 是一个让你可以在电脑上运行 Javascript 代码的工具,或者叫做运行环境。大量的 AI Agent 软件,比如说 Codex 、OpenClaw 等等,都是依赖 Nodejs 才能运行的。我们来到 Nodejs 的官网, https://nodejs.org/zh-cn 在下面找到 Windows 系统的安装程序下载下来。然后运行安装程序,一路点击下一步完成安装。 接下来我们回到桌面,右键开始菜单,选择终端管理员,输入这个命令回车。这个命令的意思是允许在控制台运行 Powershell 脚本。 Set-ExecutionPolicy Unrestricted 然后我们输入命令 node -v 还有 npm -v ,这里都显示了版本号,我们的 Nodejs 就安装成功了。 Windows:Git 安装 接下来我们来安装 Git 。Git 是全世界最流行的版本控制软件,比如我们上学写论文的时候,会把论文保存成多个历史版本,如果我们需要某个版本的某个段落,可以很轻松的从历史里面找回来,这就是最原始的版本控制。Git 是一个帮助我们进行版本控制的软件,使用 Git 对文件进行版本控制,可以很方便的让 AI 随时回退到某个历史节点重新工作。我们来到 Git 的官网 https://git-scm.com/ 点击下载 Windows 系统的安装包。根据自己的 CPU 架构选择 X86_64 位还是 arm 架构的安装包,一般 Windows 电脑的 CPU 架构都是 X86_64 位的。 一般选择 Git for Windows downloads 。 下载并且打开这个安装程序,一路点击下一步完成安装。然后我们回到桌面,右键在终端打开,输入命令 git –version 这里能够成功的打印版本号,我们的 Git 就安装成功了。 Windows: Claude Code 接下来我们安装 Claude Code 。Claude Code 是现阶段公认的最强的 AI Agent 软件。我们来到桌面,右键选择使用终端打开,然后输入这个命令来安装 Claude Code ,回车,安装完成。 npm install -g @anthropic-ai/claude-code 接下来我们对 Claude Code 进行一个基础设置,让它使用国内的模型先跑起来,等下我再简单介绍怎么获取一个 Claude Code 的官方订阅。这里我们来到 C:/Users/你的用户名 这个文件夹。在顶部菜单点击查看,勾选上显示隐藏文件夹,还有文件扩展名。 接下来我们在这个目录右键新建文本文档,然后把我们新创建的文件的名字改成 .claude.json 。 双击改名后的文件,选择用记事本打开,然后把这一大串文本复制进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 在这一大串配置里面,大部分内容都是固定的,我们只需要改动两个地方,一个是 API Key ,第二个是模型厂商的 URL 。这个 API Key 我们可以在国内的某家 AI 服务商开通服务后申请创建一个。比如这里我来到国内某家大模型厂商的网站, 在右上角点击控制台, 然后点击新建 API key , 随便填写个名字,点击新建。把生成出来的这个 API key 复制下来,填写到我们的配置里面。 接下来第二个需要修改的地方就是这里的 Base URL 。每家大模型厂商都有自己的对应 API 地址。这里我们在右上角点击文档,找到最下面的在第三方中使用,在文档里面有 base URL 。 我们把这一串复制下来,填写到 Claude Code 的配置里面。 按 Ctrl+S 保存一下这个配置文件,然后关闭。我们还是来到桌面,右键在终端打开,然后输入命令 claude 来启动 Claude Code 。打个招呼,这里给到了回应,我们就配置完成了。 Windows:VSCode 下一步我们来安装 VS Code 。VS Code 是一款轻量且功能强大的代码编辑器,几乎支持所有的编程语言,是我们使用 AI Agent 进行代码编写的必备软件。我们来到 VS Code 的官网 https://code.visualstudio.com/ 点击下载 Windows 系统的安装程序,然后打开安装程序,一路点击下一步完成安装。 Windows:Github 接下来我们解锁 Github 。刚才我们介绍了 Git ,这是一个版本控制软件,Hub 的意思是中心汇聚集合,全世界的开发者会把自己用 Git 进行版本控制的仓库,也就是一个个的文件夹,上传到 Github 的网站上面,这个网站就是 Git 仓库的集合,也就是 Hub 。所以 Git 加 Hub 就是 Github ,它是全球最大的代码仓库托管与协作平台。在国内网络使用 Github 经常会因为网络问题导致超时或者打不开。我们在搜索栏搜索 store ,然后打开 Microsoft store ,搜索 Watt Toolkit 这款开源免费的软件, 然后点击安装。安装完成以后打开软件,找到网络加速,勾选上 Github ,点击一键启动加速。 然后我们就可以顺畅的访问 Github 了。 https://github.com/ 如果没有账号的话,可以在右上角点击 sign up 先注册一个。填写一个用户名邮箱密码地区点击注册,然后去邮箱收一下验证码,把邮箱里面的验证码填写过来,点击继续,这样就注册完成了。然后点击 Sing In 按钮就登录进了 Github 。 Windows:实战案例 我们来看一个实战案例,把刚才的几步配置串联起来。首先在桌面新建一个文件夹,然后打开这个文件夹,右键在终端打开,输入命令 claude 来启动 Claude Code 。这里输入提示词:创建一个 html 的坦克大战,并且上传到 Github 上面变成一个仓库。 AI 在执行过程中会申请权限,这里我都选择 yes 。接下来它询问我怎么把项目上传到 Github 上面,这里我选择第二个。AI 提示我先访问这个地址创建一个仓库,我点击这个链接。 https://github.com/new 创建一个新仓库 进来以后填写一个仓库的名字,点击创建,然后我把仓库地址复制一下,再粘贴给 Claude Code 。 接下来 Claude Code 继续它的操作,这里会自动打开一个弹窗让我登录 Github ,我选择使用浏览器登录,然后再点击授权按钮。 回到 Claude Code ,我们看到任务就完成了,AI 编写的代码也同步上传到了 Github 上面。 Windows:Python 接下来我们来安装 Python 。Python 是一个非常流行的编程语言,很多 Agent skills 附带的脚本都是依赖 Python 才能运行的。我们来到 Python 的官网,在 download 这里点击 Python install manager 下载 Python 安装器。 https://www.python.org/downloads/ 下载完成以后运行,点击 install Python 。然后会弹出一个终端窗口,我们全部输入 y 回车,这样 Python 就安装好了。 我们新打开一个终端,输入命令 python –version python3 –version pip install requests 都能打印版本号。那么使用 pip install 命令也能安装 Python 软件包,这样基础使用就满足了,Agent skills 里面的脚本也都可以运行了。更进阶更推荐的用法是使用 Python 的虚拟环境进行多版本管理,把不同工程的 Python 依赖分文件夹存储。我们可以输入命令 py install 3.13 这样就可以安装一个指定版本,也就是 3.13 版本的 Python 。然后我们在桌面新建一个文件夹,右键在终端打开,输入这个命令。 python3.13 -m venv .venv 它的意思是使用 3.13 版本的 Python 在这个文件夹下面创建一个虚拟环境。接下来使用命令来激活虚拟环境,然后我们再使用 pip 命令来安装 Python 包。 .\.venv\Scripts\Activate pip install requests 这样依赖就被安装到了指定版本的指定文件夹下面,相互之间就不会再有冲突。 这里有个注意事项,很多 AI 不喜欢用虚拟环境,所以我们可以在提示词里面注明要求 AI 必须使用虚拟环境来进行工作。 Windows:WSL 接下来我们在 Windows 电脑上安装 WSL 。WSL 的全称是 Windows subsystem for Linux ,也就是运行在 Windows 上的 Linux 子系统。开启了 WSL 以后,你的 Windows 电脑就拥有了一个 Linux 子系统。很多在 Windows 上无法安装或者表现不佳的 Agent 软件也都能很好的运行了。在使用 WSL 之前,我们需要先开启两个 Windows 功能。我们来到 Windows 的搜索栏搜索功能,选择启用或关闭 Windows 功能。然后勾选上这两个:适用于 Linux 的 Windows 子系统还有虚拟机平台。 点击确定,然后根据提示重新启动电脑。电脑重启完成以后,我们还是来到桌面,右键在终端打开,输入这个命令 wsl –install –web-download 耐心等待它下载完成。下载完成以后我们填写一个用户名密码,这样 WSL 就安装完成了。然后我们新开一个终端,输入命令 wsl –-list 这里显示的 Ubuntu 就是我们的 Linux 子系统。Ubuntu 是目前最流行的 Linux 发行版,是 WSL 默认安装的版本。我们在顶部点击加号,在下拉列表里面就能找到我们的 Linux 子系统,点击 Ubuntu 就进入了子系统。 WSL 的文件系统跟 Windows 上是互通的,我们可以在 Windows 上打开我的电脑,在左下角可以看到一个 Linux 的图标,我们点击一下。这里显示了一个 Ubuntu 的文件夹,我们点击进去。这样就在 Windows 里面打开了这个 Linux 的文件系统。 除了在 Windows 上查看 Linux 的文件,我们也可以反过来从 Linux 上查看 Windows 上的文件。我们可以在 Linux 这边输入命令 cd /mnt/c 这就进入了 Windows 电脑的 c 盘。接下来输入 obsidian_note 回车,就进入了我在 Windows 上存放笔记的文件夹 cd /mnt/c/obsidian_note ls 然后输入 ls 命令可以查看所有的笔记。有了 WSL 以后,我们就可以安装运行一些原本 Windows 上不支持的 AI 工具。比如这是最近很火的 Hermes Agent ,它在 Windows 上原本是不支持的,但是我们看到这里它支持 WSL 。我们只需要复制一下这个一键安装命令,来到 WSL 的窗口粘贴过来执行。 有时候可能会因为网络问题访问这个地址失败,多试几次,等待了差不多 20 分钟完成了安装,我们看到在国内的网络环境下也可以正常安装。接下来它让我们选择一个模型提供商,这里我选择 OpenRouter 。然后我们根据提示来到 OpenRouter 的这个地址创建一个 API key 。 我把创建的 API key 复制一下,Ctrl+V 粘贴进 WSL 回车。接下来它让我选择模型,这里我选择这个免费的模型回车。然后我们按照提示启动 Hermes Agent 的聊天功能,里打个招呼,给到了回复,我们的 Hermes Agent 在 WSL 上也安装成功了。 Windows:Codex 官方订阅 Codex 是我近期最推荐的 AI Agent 工具,因为 Codex 给的额度较高而且对中国用户比较友好。接下来我们就在电脑上安装一下 Codex ,并且配置一下 OpenAI 的官方套餐。在 OpenAI 的官网可以看到,Codex 至少需要一个 plus 版的订阅套餐才可以使用。我们先来到 chatgpt 的官网, https://chatgpt.com/ 在这一步需要国外的上网环境才可以访问到这个页面。这里提示一下,在视频的前面我们已经解锁了 Github ,在 Github 里面可以搜索到一切你需要的知识,在视频里面我就不展开讲了。然后我们点击免费注册先注册一个账户,使用国内的邮箱就可以注册。我们在安卓手机上下载一个谷歌 play 商店,登录完成以后在右上角点击头像,然后点击设置,常规设置,找到账号和设备偏好设置,这里把国家跟地区改成美国。注意这一步你的手机上需要有美国的上网环境。 如果设置失败可以来到 https://payments.google.com/ 在设置->资料里面添加一个美国的地址。 接下来我们回到首页,点击头像,点击付款与订阅,这里点击添加卡片,国内的卡片也可以绑定成功。接下来我们还是回到谷歌 play 的首页搜索 chatgpt ,下载 chatgpt 的手机版 APP 。打开手机版的 chatgpt ,顶部有一个获取 plus 点击一下,订阅方式选择 google play ,这样我们就获得了 GPT 的 plus 订阅。 我们来到桌面,右键在终端打开,这里输入 Codex 的安装命令,然后我们输入 Codex 启动起来,在浏览器里会打开一个登录页面。我们登录一下 ChatGPT 的账户,打个招呼给到了回应就安装完成了。 接下来我再简单介绍下怎么获取一个 Claude 的官方订阅。我们来到 Claude 官网,注意这里一定要选择使用谷歌账号进行登录,而且这里要注意你的谷歌账号的邮箱必须是 Gmail 的。 使用 Gmail 邮箱不会触发手机验证码那个步骤。接下来跟 chatgpt 很像,我们还是先下载谷歌 play ,国家跟地区改成美国,然后下载 Claude 的手机 APP ,在手机 APP 里面使用谷歌 play 完成订阅。后面我会单独出一期视频进行详细介绍。 MacOS:Chrome Mac 电脑自带的 Safari 浏览器被人调侃是新时代的 IE 浏览器,非常的不推荐,我们要做的第一件事就是先把它替换掉。我们先打开 Safari 浏览器,我们在百度搜索 Chrome ,第一个就是 Chrome 的官网, https://www.google.cn/chrome/ 然后点击下载 Chrome 。下载完成以后,双击这个安装包,把 Chrome 拖拽进 application 文件夹就完成了安装。安装完成以后,我们在 APP 里面找到 Chrome ,把它拖拽进程序坞,然后把它原来自带的 Safari 浏览器在程序坞里面移除掉。 MacOS:开发工具包 下一步我们来安装苹果电脑的命令行开发工具包,内含了很多基础工具。我们在 APP 里面往下找,有一个终端,打开终端,然后输入这个命令 xcode-select –install 进行安装。这里会弹出一个确认窗口,我们点击同意,这样就安装完成了。 这里面内含了很多开发工具,比如它就自带了 Git 。我们可以输入命令 git –version 我们看到 Git 已经帮我们安装好了。接下来我们来安装 nodejs 。注意这里有一个大坑,就是千万不要使用 nodejs 的官网安装包,安装包会把 nodejs 安装到 root 目录,后续会出现很多的权限问题。这里我们还是来到 nodejs 的官网,一定要选择使用 nvm 的安装方式,把下面这几个命令在终端里面依次执行一遍。 不过这些命令在国内的网络环境有可能会执行失败,可以替换成我这几个命令。 touch ~/.zshrc export NVM_SOURCE="https://gitee.com/mirrors/nvm-sh.git" curl -o- https://gitee.com/mirrors/nvm-sh/raw/v0.40.3/install.sh | bash \. "$HOME/.nvm/nvm.sh" nvm install 24 我们在 APP 里面找到终端打开终端,先输入 touch 创建一个 shell 的配置文件,然后把下面几个命令复制过来依次执行。这样就把 nodejs 24 安装到了电脑上。然后我们输入命令 node -v 还有 npm -v ,这里都成功打印出了版本号,我们的 nodejs 就安装完成了。 MacOS:Claude Code 接下来我们安装 Claude Code 。Claude Code 是现阶段公认的最强的 AI Agent 软件。我们在 APP 里面找到终端打开终端,然后输入这个命令来安装 Claude Code 。 npm install -g @anthropic-ai/claude-code 然后我们对 Claude Code 进行一个基础设置,让它使用国内模型先跑起来。我们在终端里面输入 cd ~ touch .claude.json cd 进入主目录,然后 touch 命令创建一个 Claude Code 的配置文件。在访达里面点击用户名进入主目录,然后点击 command+shift+. 显示隐藏文件,找到我们新创建的文件右键打开,然后把这一大串文本复制进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 在这一大串配置里面大部分内容都是固定的,我们只需要改动两个地方,一个是这里的 TOKEN 也叫做 API Key ,第二个是模型厂商的 URL 。这个 API Key 我们可以在国内的某家 AI 服务商开通服务后申请创建一个。比如这里我来到国内某家大模型厂商的网站,在右上角点击控制台, 比如这里我来到国内某家大模型厂商的网站, 在右上角点击控制台, 然后点击新建 API key , 随便填写个名字,点击新建。把生成出来的这个 API key 复制下来,填写到我们的配置里面。 接下来第二个需要修改的地方就是这里的 Base URL 。每家大模型厂商都有自己的对应 API 地址。这里我们在右上角点击文档,找到最下面的在第三方中使用,在文档里面有 base URL 。 我们把这一串复制下来,填写到 Claude Code 的配置里面。 按 command+s 保存一下这个配置文件,然后我们还是回到终端,输入命令 Claude 来启动 Claude Code 。这里选择第一个信任当前文件夹,然后会弹出一些授权窗口,我们都点击允许,打个招呼,这里成功给到了回复,我们的 Claude Code 就配置完成了。 MacOS:Github 然后我们来解锁 Github 。在国内网络使用 Github 经常会因为网络问题导致超时或者打不开。解决方法是我们来到这个网站下载 Watt Toolkit 这个开源免费的工具,这里我使用的是网盘下载。下载完成以后双击安装包运行,然后把它拖拽进 application 。然后我们打开软件,这里因为安全策略被阻止了,我们可以来到设置–>隐私与安全性,点击 Watt ToolKit 仍要打开,这样就可以成功进入软件。 然后我们找到网络加速,勾选上 Github ,点击一键加速。这里又报了一个权限错误,我们只需要填上自己的 Mac 电脑的用户名,然后复制一下下面这条命令打开终端执行一下, 再次尝试加速 Github ,这样就成功了,我们就可以顺畅的使用 Github 了。 有关怎么注册 Github 账号并且把 Claude Code 开发的程序备份上传到 Github 上面,在本视频前面的 Windows 章节有过详细介绍了,可以去参考一下。 MacOS:HomeBrew 接下来我们来安装 HomeBrew 。Homebrew 是 Mac 上最流行的命令行软件管理器,有了 HomeBrew 以后,用一行命令就能安装更新卸载各种软件和开发工具,它也是 MacOS 上的必装软件。我们来到 HomeBrew 的官网, https://brew.sh/ 这里有一个一键安装命令,我们把命令复制一下。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 接下来还是打开终端把命令粘贴过来。我们注意到这个命令它依赖 Github 上面的一个执行脚本,所以在前面我们先解决了 Github 的网络问题。接下来我们回车执行一下这个命令。等待了一会,HomeBrew 就安装完成了。 有了 HomeBrew 以后就可以很方便的安装其他软件,比如可以安装 Python 。我们还是打开终端输入这个命令 brew install [email protected] 给我们的电脑安装 3.12 版本的 Python ,等待了一会就安装完成了。我们打开访达,点击用户名进入主目录,找到这个.zshrc 文件双击打开。添加这么 4 行,它的意思是把 3.12 版本设置成 Python 的别名,然后按 command+s 保存一下。 以后在命令行里面不论输入的是 python 还是 python3 ,都是使用的 Python3.12 版本。这里有个注意事项,使用 HomeBrew 安装的 Python ,直接在终端执行 pip 命令尝试安装 Python 依赖会报错,HomeBrew 禁止全局安装 Python 依赖,也就是说我们必须使用虚拟环境。使用虚拟环境是 Python 最推荐也是最标准的做法。我们先创建一个项目文件夹,然后在终端里面使用 cd 命令进入文件夹。接下来输入这个命令在项目文件夹创建虚拟环境,然后下一条命令激活新创建的虚拟环境。 接下来就可以使用 pip 命令来安装 Python 依赖了。使用虚拟环境让每个项目的依赖都放到自己的文件夹下面,相互之间就不会再有冲突。这里有个注意事项,很多 AI 不喜欢用虚拟环境,所以我们可以在提示词里面注明要求 AI 必须使用虚拟环境来进行工作。 接下来我们安装使用 Codex ,还是打开终端输入 Codex 的安装命令, npm i -g @openai/codex 这样就安装完成了。然后我们可以去 chatgpt 的官网注册账号获取 plus 订阅,这些内容在前面的 Windows 章节已经进行过详细介绍了,大家可以参考一下。同样的方式,我们也可以获得 Claude Code 的官方订阅,在前面也已经介绍过了。 Linux:基础工具 这是一台 Ubuntu24.04 操作系统的 Linux 新电脑,我们来给它配置一下 Agent 运行环境。Linux 用户一般动手能力比较强,所以这个章节我讲的就快一些。我们要做的第一件事就是更新 APT 索引。APT 是 Ubuntu 系统安装软件的工具,更新索引就是让系统知道现在有哪些软件可以装,最新的版本是什么。我们来到桌面,右键在终端打开,输入这个命令 sudo apt update 更新一下 apt 索引,填写我们电脑的密码回车,这样就更新完成了。 接下来安装两个 Linux 系统的必备软件,第一个是 curl ,curl 是一个用命令行访问网址的工具,我们输入命令 sudo apt install curl 接下来我们安装 git ,git 是全世界最流行的版本控制软件,输入命令 sudo apt install git 点击 y 回车确认执行,这样两个必备软件就安装完成了。 export NVM_SOURCE="https://gitee.com/mirrors/nvm-sh.git" curl -o- https://gitee.com/mirrors/nvm-sh/raw/v0.40.3/install.sh | bash \. "$HOME/.nvm/nvm.sh" nvm install 24 然后我们输入 node -v 验证一下,这里显示了版本号,我们的 nodejs 就安装完成了。 Linux:Claude Code 接下来我们来安装 Claude Code 。还是在终端里面输入 Claude Code 的安装命令回车, npm install -g @anthropic-ai/claude-code 这样就安装完成了。然后我们在终端里面输入命令 cd ~ touch .claude.json 创建一个 Claude Code 的配置文件。然后我们在文件管理器里面来到主文件夹,打开左上角的菜单点击显示隐藏文件,然后双击打开我们刚才新创建的配置文件。把这一大段粘贴进去。 { "hasCompletedOnboarding": true, "env": { "ANTHROPIC_AUTH_TOKEN": "你的 API Key", "ANTHROPIC_BASE_URL": "模型厂商的 URL", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1, "ENABLE_TOOL_SEARCH": false } } 这里只需要修改两个地方,一个是这里的 API key ,还有一个是模型厂商的 base URL 。在视频的前半段 Windows 和 Mac 章节里面我有过详细介绍了,可以回去参考一下。然后我们保存一下这个配置文件,输入 Claude 来启动 Claude Code 。打个招呼,这里给到了回复,我们的 Claude Code 就配置完成了。 我们也可以去 Claude 的官网获得一个官方订阅,在视频的前半段我有过详细介绍了,可以回去参考一下。 Linux:VS Code 接下来我们来安装 VSCode 。这里先来到 VSCode 的官网,它自动识别出了我是 Linux 系统,Debian 或者 Ubuntu 系统,下载左侧的.deb 格式的安装包。 https://code.visualstudio.com/ 下载下来以后我们来到下载目录,右键在终端运行,然后输入这个命令 sudo apt install ./安装包名字 在左下角的应用程序里面就可以看到 vscode ,点击就可以直接运行了。 接下来我们来下载 Chrome 浏览器。这里来到 Chrome 国内版的官网 https://www.google.cn/chrome/ 点击下载,然后选择.deb 格式的安装包。下载完成以后我们来到下载目录,右键在终端打开,输入这个命令 sudo apt instal ./安装包名字,回车这样 Chrome 就安装完成了。 在左下角的 APP 里面就可以找到 Chrome 浏览器。