[{"content":"起因 AI 时代，信息的半衰期越来越短。读完一篇论文、踩完一个坑， 过两周自己就忘了。笔记外化 是对抗遗忘最便宜的办法。\n与其窝在自己的 Notion 里，不如放到公网 — 既方便自己随时翻，也方便偶尔帮到路过的人。\n技术选型 需求很简单：写 Markdown、自动部署、能被搜到、花钱最少。\n候选 成本 优点 缺点 Hugo + Cloudflare Pages 0 元 免费、全球 CDN、HTTPS 自动 国内访问也非最优 Hexo + Vercel 0 元 中文文档多 构建慢 WordPress + 虚拟主机 ~100 元/年 后台成熟 要维护 Notion 转公开页 0 元 一键发布 风格受限、SEO 差 最后选了 Hugo + Cloudflare Pages：\nHugo 是静态站点生成器里最快的，构建百毫秒级 Cloudflare Pages 免费额度对个人博客绰绰有余 Push 到 GitHub 即自动构建部署，仓库就是备份 自定义域名、SSL 证书、CDN 全自动 域名我已经有了 yutterx.com，配个 DNS 就行 想知道这背后的域名与 DNS 是怎么一步步配好的？ 我的实操记录：域名创建与品牌邮箱部署（详细图文教学版）， 从买域名到创建品牌邮箱，一条龙实测。对 GitHub 仓库不熟的话， 建议先读 GitHub 从入门到精通。\n接下来 记录日常、AI、教程与各种折腾 把零散的知识整理成系列文章 偶尔分享工具链、创作与生活 本站所有内容仅代表个人观点，如有错误欢迎指正。 转载需保留原文链接。\n","permalink":"https://yutterx.com/posts/why-this-blog/","summary":"建站初衷，以及为什么是 Hugo + Cloudflare Pages。","title":"为什么我要搭这个博客"},{"content":" 70 年，一条线：AI 不是突然火起来的。两次寒冬、三样燃料、一个关键年份，再加上 12 个必须弄懂的词——这篇把它们串成一条线。 读完你应该能说清：为什么是 2012 年，为什么是 GPU，以及今天的 Agent 到底由什么零件拼成。\n一、AI 的开始：一个问题，一场会议 1950 年，英国，阿兰·图灵（Alan Turing）提出了一个问题：机器能思考吗？换一种问法——如果一台机器隔着屏幕跟你聊天，聊到你分不清对面是人还是机器，它算不算会思考。这就是后来的图灵测试。图灵也因此被称为人工智能之父。\n图 1｜阿兰·图灵（Alan Turing）\n1956 年的夏天，美国达特茅斯学院的一群年轻科学家开了一个改变世界的会议。会上，这群科学家正式确立了“人工智能（Artificial Intelligence）”这一学科名称，还基于一个核心假设：人类学习的每一个维度、智能的任何特征，原则上都可以被精确地描述，从而使机器能够对其进行模拟。\n二、两条路线，两次寒冬 AI 从一开始就有两条路线。\n第一条叫符号主义：把“猫有四条腿、会叫”这类知识，连同推理规则，全部由人写死，好比照着菜谱做菜。后来人们发现这条路走不通——要写的东西太多了，根本写不完。\n于是有了第二条路线：连接主义。1957 年，罗森布拉特提出感知机，神经网络成为研究纲领。\n图 2｜感知机（Perceptron）\n1969 年，闵斯基和西摩·佩珀特出版《感知机》，把单层感知机的局限系统地挑了一遍；再加上当时整个 AI 领域都在说大话，而且是说给掏钱的人听。结果学术圈听完只剩一句话：神经网络这条路不行，散会。于是资金断了，项目砍了，论文没人看了，AI 的第一次寒冬就这么来了。\n后来到 1980 年代，AI 又火了，这次火的是一个叫专家系统的东西：说白了就是在很窄的领域里，把一个专家的脑子塞进程序。像医疗诊断、设备维修、金融决策，一开始真的有点东西。\n图 3｜专家系统的结构：知识库、推理机与人机界面\n企业一看这玩意能赚钱，又开始疯狂砸钱。但很快又出了问题：规则越写越多，维护越来越难，世界稍微一变，系统就开始掉链子。再加上知识获取瓶颈、维护成本高昂，专家系统又被遗弃了。\n由于 Sun、Apollo 这类通用工作站以更低的成本抢走了市场，Symbolics 等 Lisp 专用机厂商订单崩塌，加上日本第五代计算机计划落空，1980 年代末到 1990 年代初，AI 的第二次寒冬来了。\n三、三样东西：算法、数据、算力 那 AI 这么多次起起伏伏，最后又是怎么火起来的呢？核心是三样东西：算法、数据、算力，缺一不可。\n算法：学会复盘，也学会落地 1986 年，杰弗里·辛顿、大卫·鲁梅尔哈特和罗纳德·威廉姆斯把一套叫反向传播的训练方法推到了台前。你可以理解为机器第一次学会了复盘：做错题之后，终于知道错在哪、该怎么改。\n然后是另一个大佬，杨立昆。他从 80 年代末到 90 年代一直死磕一条叫卷积神经网络的路线，做出了一个叫 LeNet-5 的模型，能识别手写数字，后来真的被银行和邮政系统拿去用了。这是个小小的里程碑，但意义非常大：神经网络第一次不再只是论文里的名词，而是真的能在现实世界里打工。\n图 4｜杨立昆（Yann LeCun）\n数据：李飞飞和 ImageNet 接下来是数据，这时候轮到李飞飞。她首先解决了一个最底层的问题——AI 根本没有足够好的训练数据。2009 年，她推动了一个叫 ImageNet 的项目，一个超大规模的图像数据集，最后做到了一千多万张图片、两万多个类别。\n图 5｜李飞飞\n算力：英伟达和 CUDA 最后是算力，这时候轮到英伟达上场：2006 年，英伟达推出 CUDA。从这一刻起，GPU 和 AI 的命运就绑死了。\n图 6｜英伟达（NVIDIA）\n四、关键的一年：2012 如果要在整个 AI 历史里挑一个最关键的年份，那一定是 2012 年。这一年，在 ImageNet 比赛上，杰弗里·辛顿的博士生亚历克斯·克里泽夫斯基和伊利亚·苏茨克维丢出了一个叫 AlexNet 的模型——用英伟达的 GPU 训练出来的。\n比赛结果以碾压式的优势获胜：Top-5 错误率 15.3%，第二名是 26.2%。\n这一仗一次性验证了三件事：\n神经网络不是不行，是以前条件不够； ImageNet 这样的大规模数据集真的有用； GPU 就是 AI 时代的铲子。 五、AlphaGo 与 Transformer 但真正让全球普通人都意识到“事情开始不对了”的是 AlphaGo。2016 年 3 月，DeepMind 旗下的 AlphaGo 以 4 比 1 击败世界顶尖棋手李世石；2017 年 5 月，又以 3 比 0 战胜柯洁。\n图 7｜AlphaGo 大战李世石\n2017 年 6 月，谷歌发布了一篇论文《Attention Is All You Need》，里面提出了一个框架，叫 Transformer。今天你在用的所有大模型——GPT、Gemini、DeepSeek 等等，往根上刨，刨到最后，都是它。\n六、ChatGPT：分水岭 AI 的腾飞：2018 年 GPT-1 发布，2019 年 GPT-2，2020 年 GPT-3。直到 2022 年 11 月 30 日，这一天成了人类和 AI 关系的分水岭：OpenAI 把 GPT-3.5 包装成一个聊天框放到网上，起名 ChatGPT。结果 5 天用户突破 100 万，两个月突破 1 亿，成为人类历史上增长最快的消费级产品。\n图 8｜ChatGPT\n接下来几年，谷歌端出了 Gemini。一帮人从 OpenAI 离职另起炉灶，搞了 Anthropic，推出 Claude；马斯克也不甘寂寞，成立 xAI，推出 Grok。\n国内这边更热闹：百度的文心、阿里的通义千问、字节的豆包、腾讯的元宝、月之暗面的 Kimi，还有 2025 年初用极低成本撕开全球 AI 圈一个口子、把英伟达股价都砸下来的 DeepSeek。\n图 9｜DeepSeek\n七、长出五官，也长出双手 然而大模型光会说话还不够。很快它就长出了五官：GPT、Gemini、Claude 都能看图了；Sora、即梦、可灵能从一段文字生成电影级的画面；Midjourney、Stable Diffusion、Flux 让每个人都能当美术总监。\n到了 2024、2025 年，整个行业的焦点从大模型转向了一个叫智能体（Agent）的东西。以前你让 AI 帮你订机票，它顶多推荐几个航班；现在你让 agent 订机票，它可以自己打开携程、比价，下单前向你确认，下完单发邮件给你——你从使用者变成了老板。\n图 10｜开源式 agent：Hermes Agent\n图 11｜Codex：CLI 开源（Apache-2.0），云端服务闭源\n从这一步开始，AI 不再只是回答问题，而是真的可以替你完成工作了。\nAI 这些年翻天覆地的变化，背后其实是几个零件在共同起作用。要理解今天这些 agent 为什么能干活，得先把下面这些词弄清楚。\n八、AI 基础概念：12 个词 Token：模型处理文本的最小单位。英文一个单词常被切成 1–2 个 token；中文里 1 个汉字约等于 1.2–1.3 个 token（不同模型的分词器略有差别）。\nLLM：大语言模型（Large Language Model），以语言建模为核心的模型，GPT、DeepSeek、Claude 都属于这一类。今天的头部模型已经是多模态的，但底座仍是 LLM；图片、视频生成模型（如 Midjourney、可灵）不属于 LLM。\nContext Window：上下文窗口，模型一次能同时处理的 token 总量，输入和输出合计。超出这个长度就得截断、压缩或分段处理。常见规格有 8K、32K、128K、200K、1M。\nContext Engineering：上下文工程，让模型在正确的时间看到正确的内容——放什么、怎么放、什么时候删，从而稳定产出可靠结果。\nRAG：检索增强生成（Retrieval-Augmented Generation）。在 LLM 生成回答前，先从外部知识库检索相关内容，把结果放进上下文，再让模型基于这些内容作答。\nMCP：模型上下文协议（Model Context Protocol），给 AI 应用规定了一套“怎么接外部数据和工具”的标准接口。简单说，MCP 统一了 AI 应用与外部数据之间的连接方式，就像统一了冰箱和洗衣机的插座标准。\nSkill：一段给 AI 读的操作说明，通常还附带脚本、模板、参考资料。简单说就是给 AI 一份说明书，告诉它这件事应该怎么做。\nPlugin：把 MCP Server、Skill 和配套资源打成一个包。像一个装箱单齐全的工具箱：里面有 skill，也有 MCP。\nSubagent：子代理。主 Agent 委派出去执行特定子任务的 Agent，拥有独立的上下文窗口，在隔离环境里干完活，只把结果摘要返回给主 Agent。\nTask List：Agent 在执行复杂任务时维护的一份结构化待办事项清单，记录“要做哪些事、每件事的状态、依赖关系、由谁执行、结果如何”。\nAGENTS.md：写给 AI Agent 看的项目指令，相当于这个项目的“使用说明加规矩”。\nAgent：智能体。前面介绍的各种概念都是 agent 的零件，agent 就像你身边那个什么都会一点的助手，能帮你把复杂的事拆开、一件件做完。\n九、Agent 是怎么干活的 Agent 的工作流程是四步：\n读懂任务； 看上下文决定下一步； 把决定变成工具调用去执行； 再把结果收回来——勾掉清单里的一项、记下哪条路走不通、扣掉剩余步数、写上结论。 如此循环到任务完成或预算用完。Tool 决定它能做什么，Skill 决定它做得对不对。\n图 12｜Agent 的组成\n速查：一条时间线 年份 发生了什么 1950 图灵提出“机器能思考吗”，图灵测试诞生 1956 达特茅斯会议，“人工智能”学科得名 1957 罗森布拉特提出感知机，连接主义登场 1969 《感知机》出版，第一次寒冬到来 1980s 专家系统兴起，随后迎来第二次寒冬 1986 反向传播被推到台前 2006 英伟达推出 CUDA 2009 李飞飞推动 ImageNet 2012 AlexNet 夺冠，Top-5 错误率 15.3% 2016 AlphaGo 4 比 1 击败李世石 2017 《Attention Is All You Need》提出 Transformer 2022 ChatGPT 上线，两个月破 1 亿用户 2024–2025 行业焦点转向 Agent 一句话收尾：算法是复盘，数据是教材，算力是学费；Agent 则是把学来的东西真正拿去干活的那双手。\n","permalink":"https://yutterx.com/posts/ai-overview/","summary":"从 1950 年图灵的一个问题，到能替你干活的 Agent——两次寒冬、三样燃料、一个关键年份，再加上 12 个必须弄懂的词，串成一条能看懂的线。","title":"AI 知识总览：从图灵测试到 Agent，一条线串完"},{"content":" 一次 16 秒的实验：目标不是做长片，而是验证「豆包生成 + 本地后期」这条线，能不能稳定产出一支可以直接发出去的竖屏短片。 成片规格：1080×1920 / 24fps / 16.2 秒 / 4 个镜头 + 2 张字卡 ｜ 额外成本：￥0（豆包会员内）\n图 1｜成片封面：「雨夜 · 异变 / AI SHORT FILM 001」\n先说结论 短片成败不在「生成」那一下，而在镜头管理：4 个镜头各干一件事，比一条 20 秒的长镜头可控得多。 消费级视频模型的单条时长（5 秒左右）决定了工作方式：先多抽几版，再剪短用。 水印不是小事：豆包的水印在每条结尾淡入，规划镜头长度时就要先把它扣掉。 一致性是当前最大的短板：没有参考图，人物脸和服装会在镜头之间漂移。 一、这支片子长什么样 段落 内容 时长 标题卡 「雨夜 · 异变」+ AI SHORT FILM 001 1.8s 镜 1 雨巷走入 3.4s 镜 2 手臂红纹 2.5s 镜 3 三个雨衣人 3.4s 镜 4 红眼抬手，雨滴悬停 3.0s 结尾卡 「未完待续」 2.1s 四个镜头不是随机拼的，是一条最小的叙事链：环境 → 异常出现 → 威胁靠近 → 主角觉醒。\n图 2｜镜 1：雨巷走入——纸袋、积水和霓虹灯，先把\u0026quot;日常\u0026quot;立起来\n图 3｜镜 2：手臂上的红色裂纹，第一个\u0026quot;异常\u0026quot;信号\n二、分镜：一镜一动作 写分镜时只写三件事：谁、做什么、镜头怎么动。一个镜头只允许一个主要动作——两个动作叠在一起，生成结果通常会糊。\n这一支的四个镜头分别是：\n人从雨巷深处走向镜头（单一动作：走） 手臂特写，红色纹路亮起（单一动作：亮） 远景，三个雨衣人静止站立（单一动作：站） 抬手，雨滴悬停（单一动作：抬 + 一个环境反应） 经验：动作越简单，模型越稳。想让画面\u0026quot;有戏\u0026quot;，靠剪辑和声音，不靠提示词堆料。\n三、生成：豆包 Seedance 2.0 参数：720×1280 / 24fps / 每条 5.06 秒 每条提示词都带固定的风格句（雨夜、霓虹、电影感、浅景深） 每个镜头抽 2–3 版，挑最好的一版；同一提示词换 seed，结果差别很大 已知短板：各镜头独立生成，脸和服装会漂移——没有参考图就锁不住 图 4｜镜 4：红眼与红纹——同一角色，脸和衣服已经开始\u0026quot;漂\u0026quot;了\n四、后期：ffmpeg 做的五件事 01｜裁切 crop=690:1230:15:30 上下左右各留一点余量，顺手避开角落的水印区。\n02｜去水印 豆包的水印在每条结尾约 1 秒淡入（左下 / 左上），处理分两层：\n生成时就按 4 秒规划镜头，把结尾那 1 秒直接剪掉； 边缘残留的部分，用 delogo 抹掉（坐标按素材实测）。 03｜拼接 用 trim + concat，不用 overlay 时间窗：\n[0:v]trim=0:3.4,setpts=PTS-STARTPTS[v0]; [1:v]trim=0:2.5,setpts=PTS-STARTPTS[v1]; concat=n=6:v=1:a=0[v] 帧精确、一次重编码，也不会出现\u0026quot;素材全堆在开头\u0026quot;的经典翻车。\n04｜字卡 标题卡和结尾卡用 ASS 字幕：字体 Microsoft YaHei，白字 + 细描边，居中偏下。\n05｜混音 loudnorm=I=-16:TP=-1.5:LRA=11 原声 + BGM（Lightless Dawn，4–21 秒，音量 0.32），整体压到 -16 LUFS——发布平台比较安全的响度。\n五、交付规格 项 母版 上传版 分辨率 1080×1920 1080×1920 帧率 24fps 24fps 编码 CRF 18 CRF 21 响度 -16 LUFS -16 LUFS 体积 43 MB 19 MB 时长 16.2s 16.2s 六、和长视频线有什么不同 我的长视频线（3–5 分钟的 AI 科普）走的是另一套：\n图 5｜长视频一期封面：《AI 为什么数不清数？从 strawberry 说起》——封面文字同样是后期叠上去的\n图 6｜长视频用本地生成的镜头 + 逐句字幕（Whisper 词级对齐）\n长视频（3–5 分钟） 短视频（15–30 秒） 画面 本地 LTX / ComfyUI，8–10 个镜头 豆包 Seedance，4–8 个镜头 声音 edge-tts 配音 + 音效 + BGM 原声 + BGM，无旁白 字幕 Whisper 词级对齐，逐句上屏 字卡（标题 / 结尾） 引擎 Hyperframes 动效 + ffmpeg 纯 ffmpeg 剪辑 七、这一支学到的四件事 一致性靠参考图：下一步用首尾帧 / 参考图锁人物，而不是靠提示词\u0026quot;描述得更细\u0026quot;。 5 秒是硬约束：所有叙事节奏都按\u0026quot;5 秒一段\u0026quot;设计，再剪到 2.5–3.5 秒用。 水印要提前算：生成时就知道结尾 1 秒不能用，镜头长度按 4 秒规划。 声音决定\u0026quot;片感\u0026quot;：同样的画面，加上 BGM 和响度处理后，观感差别非常大。 小结 这支 16 秒的片子证明了一件事：能刷到的\u0026quot;AI 短片感\u0026quot;，一半来自生成，一半来自剪辑和声音。模型给的是素材，节奏、字卡、混音才是作品。\n下一步：用参考图锁住人物，再拍一支 30 秒、有对白的版本。\n","permalink":"https://yutterx.com/posts/ai-short-film-16s/","summary":"豆包生成 4 个镜头，ffmpeg 做裁切、去水印、字卡和混音——一支 16 秒竖屏短片的完整参数与取舍。","title":"16 秒的 AI 短片：4 个镜头，从豆包到成片"},{"content":" 一句话总纲：AI 只负责画面，中文和版式由 HTML 排版完成，两者最后合成。 下面这张海报就是这条流水线的产物——底图来自 AI，上面的中文字一个都不是。\n图 1｜成品：「AI 分不清星期几？」——底图由 AI 生成，所有中文由 HTML/CSS 排版\n一、为什么中文不能交给图像模型 扩散模型对\u0026quot;字形\u0026quot;没有概念，它画的是\u0026quot;像字的纹理\u0026quot;：笔画会缺、横竖会连、小字必糊。越是多笔画的汉字，翻车越明显。\n所以第一条铁律是：所有中文一律后期排版，要 AI 画的只有画面本身。\n图 2｜AI 只交付这一层：六个一模一样的白色方块，暗场和留白都留给排版\n二、流程（八步） 步骤 做什么 关键点 01 收信息 标题 / 副标 / 时间地点 / 调性 / 素材 / 尺寸 一次问完，不猜 02 灰模 灰块定信息层级 层级没定，不生成画面 03 选来源 Krea / Seedream / ComfyUI / 纯排版 按场景选，不按喜好 04 提示词 固定三件套 禁字、留白、印刷质量 05 取图 下载底图 部分图片域名国内直连会超时，走 CDN 06 排版 HTML / CSS 字体 ≤2 种，颜色 1 主 1 辅 07 三验 眯眼 / 灰度 / 扫码 不过不交付 08 交付 PNG + PDF + HTML 源文件 改字只动 HTML 01｜先收信息 六个问题一次问完：说什么、副标题、时间地点主办、调性、必用素材、尺寸用途。信息没到齐就开工，十次有九次要返工。\n02｜灰模 只用灰块排位置：主标题占 1/3，主视觉的位置先定死，信息区最小、但要能扫。先看层级，再谈好看。\n03｜画面来源怎么选 场景 路线 理由 电影感 / 写实 / 氛围 Krea 3（先 1K 试稿） 质感最好，能改图保构图 中文标题要长在画面里 Seedream 4.5（豆包 / 即梦） 少有的能把中文排得像样的 印刷质感 / Mondo / 手绘 本地 ComfyUI + SDXL 免费、可控 公告 / 讲座 / 通知 不出图，纯排版 出图反而降低可读性 04｜提示词三件套 任何底图提示词都要带上这三行：\nno text, no letters, no logos, no watermark large clean empty area in the upper third for a title print quality 05｜取图 部分 AI 生图服务的图片域名国内直连会超时。可以用公开 CDN 中转：\nhttps://wsrv.nl/?url=\u0026lt;图片地址\u0026gt; 下载落盘之后再排版，别在浏览器里对着预览调。\n06｜HTML 排版 A4 = 210×297mm，300dpi → 2480×3508px，四周 3mm 出血 屏幕预览用 1240×1754（150dpi）就够 字体只用系统字体（思源宋体 / 黑体、微软雅黑），一族里用不同字重分层级 颜色：1 个主色 + 1 个强调色，其余黑白灰 导出：浏览器 2x 截图出 PNG；PDF 用无损嵌入（PIL 直接存会按 JPEG 重编码，暗部出色带） 图 3｜同一套方法换一种画风：Mondo / 丝网印刷质感的校园海报——字依然是排版层\n07｜三验 眯眼测试：眯到看不清字，仍然一眼能看出主次。 灰度测试：转成黑白，层级不塌（印刷黑白稿最容易翻车）。 扫码测试：二维码按 3cm 宽输出，手机实扫能出。 三、常见翻车（做了就是错） 把中文写进图像提示词 先出图，再想版式 一次丢五个微调版本让人选 满版装饰，没有留白 字体超过两种、颜色超过两种 四、工具边界 工具 强 弱 Krea 3 改图保构图、电影感、系列一致 不会写字、2K 上限、无版式 Seedream 4.5 中文密集排版、多图锁主体 审美偏电商、模板感 本地 ComfyUI（SDXL） 免费、风格可控（Mondo / 丝网） 慢、需要调参 纯 HTML/CSS 精确、可改、可印刷 做不了画面 小结 海报这件事，真正决定质量的是分工：AI 负责它擅长的画面质感，排版负责它永远做不好的中文字。\n把这条分工记住，剩下的就是耐心：先灰模、再出图、最后三验。\n","permalink":"https://yutterx.com/posts/ai-poster-workflow/","summary":"AI 只画画面，中文字一个都不交给它——这条铁律背后的完整流程：灰模、提示词、HTML 排版与三验。","title":"AI 做海报的分工：画面交给模型，中文交给排版"},{"content":" 三条线，一套方法：把标准写下来，把重复交出去，把判断留给自己。 这篇不讲工具怎么装，只讲我现在真正在跑的三套流程，以及它们各自的坑。\n图 1｜「Yutter的日常」：Hugo + PaperMod，部署在 Cloudflare Pages\n一、先说说为什么 我做的事很杂：写博客、做 AI 科普视频、做海报，偶尔还折腾域名和服务器。\n这些事有一个共同点——重复的部分特别多：排版、导图、压图、字幕、封面、发布清单。每一次都手工做，时间就全耗在这些\u0026quot;看不见的活儿\u0026quot;上。\n所以我的做法是：把每一类工作的标准写成文档，交给 AI 照着执行；我只保留三件事——选题、审美、最终拍板。\n二、生产线一：博客 流程 素材整理 → 写正文 → 套排版标准 → 本地构建 → 推送 → 自动上线。\n站点：Hugo + PaperMod，部署在 Cloudflare Pages，推送到 main 约 1 分钟自动上线 排版标准是固定的一套：字号、行高、段落间距、可折叠目录、图注格式、类型徽章 图片统一进 static/images/\u0026lt;文章名\u0026gt;/，正文用相对路径引用 性能这件事 博客不需要花哨，但必须快：\n优化 数值 文章配图压缩 19 张图 3.9MB → 1.9MB（-52%） 样式 / 脚本缓存 文件名带指纹，1 年 immutable 文章配图缓存 30 天 传输 Brotli 压缩 + HTTP/3 构建时间 1–2 秒 自动化 文章索引不用手写：推送文章后，仓库里的 Action 会重新生成 README 里的目录 构建失败会直接体现在部署状态里，推送后看一眼就知道有没有问题 三、生产线二：视频 视频有两条线，差别很大：\n长视频（3–5 分钟科普） 流程固定成八步：选题 → 研究 → 剧本 → 分镜 → 生成素材 → 配音与字幕 → 合成 → 质检。\n剧本按 4.9 字/秒 估算时长（中文 TTS 的实测值），先定时长再写内容 分镜每张卡只写一件事：谁、做什么、镜头怎么动 画面用本地模型生成 8–10 个镜头，动效层单独做 字幕必须用 Whisper 词级对齐——按字数估算会越到后面越错 合成后必须 ffprobe 核对时长（设计 ±0.1 秒） 短视频（15–30 秒竖屏） 另一套逻辑：豆包生成 4–8 个镜头 → 裁切、去水印 → 字卡 → BGM → 混音。\n图 2｜16 秒竖屏实验《雨夜 · 异变》——4 个镜头、2 张字卡\n质检清单 抽帧看画面（尤其手和脸，缩略图看不清的细节最容易翻车） 字幕抽点核对（每段的句切换处都要看） ffprobe 核对总时长 响度统一到 -16 LUFS 四、生产线三：海报 流程只有一句话：AI 画画面，HTML 排中文，最后合成。\n图 3｜「AI 分不清星期几？」——底图 AI 生成，中文全部由 HTML 排版\n收信息（标题、副标、时间地点、调性、素材、尺寸） 灰模定层级 生成底图（提示词里明确\u0026quot;不要任何文字，上方留白\u0026quot;） HTML 排版（A4 300dpi = 2480×3508，四周 3mm 出血） 三验：眯眼、灰度、扫码 五、三条线共用的四件事 01｜先验证，再批量 视频先出 15 秒样片，确认风格再跑全片 海报先出 1K 底图，构图满意再上 2K 文章先写小段落给方向，再展开全文 批量生产最贵的一次错误，就是方向错了还跑完了全程。\n02｜标准写成\u0026quot;技能\u0026quot; 每类工作都有一份自己的标准文档：怎么写分镜、怎么排版、怎么命名、交付要带什么。AI 每次开工前先读它，执行结果就稳定。\n文档越写越厚，返工越来越少。\n03｜交付即成品 文章：正文 + 配图 + 目录 + 相关阅读，一次到位 视频：成片 + 封面 + 发布文案 海报：PNG + PDF + 可改字的源文件 \u0026ldquo;差一点就好了\u0026quot;不算交付。\n04｜用数字说话 时长、码率、响度、体积、构建时间、压缩率——这些数字比\u0026quot;感觉不错\u0026quot;可靠得多。每次做完记一笔，下次就有基准。\n六、AI 做什么，人做什么 AI 人 执行 排版、剪辑、转码、压图、生成 — 整理 资料、清单、命名、归档 — 判断 — 选题、审美、价值取向 兜底 — 事实核查、最终拍板 有些事目前还做不好：视频里的人物一致性、长内容的稳定性、以及\u0026quot;这个选题值不值得做\u0026rdquo;——这些仍然要人来盯。\n小结 三条产线看起来是三件事，其实是同一套方法：\n把标准写下来，把重复交出去，把判断留给自己。\n工具会一直换，这套方法不会。\n","permalink":"https://yutterx.com/posts/my-ai-workflow/","summary":"博客、视频、海报——三条看起来完全不同的事，背后其实是同一套方法：标准写下来，重复交出去，判断留给自己。","title":"把博客、视频、海报都交给 AI：我的三条生产线"},{"content":" 来源：https://hermes-agent.nousresearch.com/docs（Nous Research 官方文档站，1055 个页面） 抓取：2026-09-30 用 crawl4ai 0.9.4（HTTP 模式）整站抓取 —— 1055 页 / 19 MB Markdown / 98 秒 / 0 失败 整理：全站按 12 个板块 → 6 路并行压缩 → 合并为本文；命令、配置键、路径一律保留英文原文 原始抓取件：C:\\Users\\p\\Documents\\hermes-docs-crawl\\（1055 页 + digests + 脚本）\n本文目录（板块 / 源页数） 板块 源页数 板块 源页数 一、Hermes 是什么 1 七、插件生态 604 二、快速上手（安装 / 平台支持 / 更新） 7 八、开发者指南（架构 / 扩展点） 56 三、核心用法（CLI、TUI、会话、配置、安全、Profiles） 30 九、教程（guides） 35 四、消息平台接入 35 十、参考（reference） 14 五、功能全览（模型、记忆、技能、自动化、工具、界面、语音） 56 十一、集成（integrations） 4 六、技能体系 212 附、抓取统计 — 一、Hermes 是什么 Hermes Agent 是 Nous Research 打造的「自改进」agent：内置学习循环——从经验中生成技能、在使用中改进、跨会话积累对你的理解。三种形态同用一套 agent、配置、会话、技能与记忆：\n桌面应用（macOS Apple Silicon / Windows 10-11 / Linux） CLI 与 TUI（hermes、hermes --tui） 消息网关（接进 35+ 平台当 bot 用：Telegram、Discord、Slack、微信、飞书…） 数据默认全部留存在本机（~/.hermes，Windows 为 %LOCALAPPDATA%\\hermes），无遥测：只发给你自己配置的模型 provider。官网收录社区用户故事 326 条（15 类、11 个来源：Discord 116、X 61、Reddit 60、GitHub 38 等）。\n二、快速上手（安装 / 平台支持 / 更新） 2.1 安装 桌面安装包（推荐）：官网下载。Windows 打开 .appinstaller（Windows App Installer 安装签名 MSIX 包并记录更新源，Microsoft Store 包走 Store 更新）；macOS 打开 DMG 把 Hermes.app 拷入 Applications，仅支持 Apple Silicon，Intel Mac 不在支持之列。捆绑包内置 agent、Python、依赖和预构建界面，首次启动不构建基础运行时。\n纯命令行安装：\n# Linux / macOS / WSL2 curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash # Windows 原生（PowerShell） iex (irm https://hermes-agent.nousresearch.com/install.ps1) Android 走 Termux APT。只装 CLI 后随时可用 hermes desktop 补装桌面端。源码安装器会克隆源码、引导 uv、把依赖交给 PM（固定 Python/Node.js/npm/ripgrep/FFmpeg），选择 all extra，默认装 agent-browser + Chromium 与 cua-driver；某下载失败时安装仍会完成并打印重试命令。\n安装布局：POSIX 源码 ~/.hermes/hermes-agent/、CLI 包装器 ~/.local/bin/hermes、数据 ~/.hermes/；Windows 源码在 %LOCALAPPDATA%\\hermes\\ 下；Docker 代码 /opt/hermes/、数据挂载 /opt/data/；Termux 在 $PREFIX/lib/hermes-agent/。HERMES_HOME 决定数据目录。\n装完后的常用命令：hermes model（选模型）、hermes tools（选工具后端）、hermes gateway setup（接消息平台）、hermes config set/get（改配置）、hermes setup（总向导）。\n2.2 快速开始（五步） 目标对照：想先跑通 → hermes setup；已知 provider → hermes model；要 bot/常驻 → hermes gateway setup；本地模型 → hermes model 的 custom endpoint；多 provider 回退 → 先跑通基础聊天再加。原则：聊天都跑不通就别叠加功能。\n五步：① 安装；② 选 provider（新手推荐 hermes setup --portal——一次 OAuth 覆盖模型 + Tool Gateway 四项工具；hermes setup 有 Quick Setup (Nous Portal) / Full Setup / Blank Slate 三种模式）；③ hermes --tui 或 hermes 首聊，验证能回复、会用工具、可多轮；④ hermes --continue 验证会话恢复；⑤ 试 /help、/tools、/model、/personality pirate、/save 与多行输入快捷键。\n2.3 平台支持 层级 平台 Tier 1 macOS（Apple Silicon，Hermes Desktop / install.sh）；Windows 10/11 x86_64+aarch64（install.ps1 / MSIX，需 Win11 22H2 以上）；Linux/WSL2（install.sh）；Docker（不支持 hermes update，更新靠拉新镜像） Tier 2 Nix（flake 与模块，best-effort）、Android/Termux aarch64（签名 APT） 不支持 非 aarch64 Termux、AUR、32 位 macOS、pypi 安装等 Nix / Termux：Nix 提供 flake、NixOS module、Home Manager module；nix run github:NousResearch/hermes-agent#desktop、nix profile install github:NousResearch/hermes-agent、nix run ... -- setup 或 -- --tui；default 包约 +700MB，#messaging 仅 +33MB。Termux：仅 aarch64，stable / canary 两个 APT 频道（suite hermes-stable / hermes-canary），仓库指纹 C572 B5FD D1A2 9CCF A9A9 12B6 840B 0848 E139 156D，不一致即停止。\n2.4 更新 按安装方式：源码 hermes update；Windows sideload MSIX 用桌面 Update 与 App Installer；Store 包用 Store；macOS 捆绑 App 用桌面 Update（electron-updater）；Docker 拉镜像重建容器；Nix 更新 flake/profile 重建；Termux pkg update 再 pkg upgrade hermes-agent。hermes pm update 是维护者 pin 更新命令，不是应用更新器。频道默认 main，可 hermes update --set-channel stable|canary；--check 只预览、--plan 批量预览、--branch NAME 临时换分支、--keep-stash 不重放本地改动（默认 stash 并自动恢复）。\n2.5 学习路径 初次用户几乎都该先 hermes setup --portal；按经验分级（Beginner 约 1 小时：Installation → Quickstart → CLI Usage → Configuration），并按用例导航（CLI 编码助手 / Telegram·Discord bot / 任务自动化 / 专家 bot 团队 / 自定义工具技能 / 训练模型 / Python 库）。\n三、核心用法（User Guide 主体） 模型与配置 模型分两类槽位：主模型（agent 思考用，所有用户消息、工具调用循环、流式响应都经它）与辅助模型（上下文压缩、视觉/图像分析、网页摘要、审批打分、MCP 工具路由、会话标题生成、技能搜索，可逐项独立覆盖）。dashboard 的 Models 页可配置两者；偏好文件/CLI 也有替代方法，本机跑模型见 Local Models。所有设置存于 ~/.hermes/：config.yaml（model、terminal、TTS、compression 等）、.env（API key 与 secrets）、auth.json（OAuth 凭证如 Nous Portal）、SOUL.md（主代理身份）。最省事的路径是 hermes setup --portal——一次 OAuth 就拿到模型 provider 和全部四个 Tool Gateway 工具，无需手编 YAML；Portal 订阅者对按 token 计费的 provider 另有 10% 折扣。\n数据库方面，state.db 的 journal mode 为 wal（默认）或 delete：WAL 不安全的文件系统（网络挂载）用 delete，Docker Desktop/Podman/OrbStack 的 virtiofs/9p 挂载会被自动识别；已存在的 WAL 库不会在线降级，须停掉所有进程后运行 hermes sessions set-journal-mode delete；durability 可选 OFF/NORMAL/FULL/EXTRA（0-3），macOS 上低于 FULL 会被拒绝。\nCLI 与 TUI CLI 是完整终端界面：多行编辑、slash 命令补全、会话历史、打断并重定向、流式工具输出。常用命令：hermes chat（默认交互）、hermes chat --query-file prompt.txt、hermes chat --query-file - \u0026lt; prompt.txt（文件/stdin 原样传入、不经 shell 解释）、hermes chat --model \u0026quot;anthropic/claude-sonnet-4\u0026quot;、hermes chat --provider nous；还支持指定 toolsets、预载 skills、恢复历史会话、verbose 调试、隔离 git worktree、插件管理，以及 ! shell 模式。\nTUI 是现代前端（同一 runtime、同一会话与 slash 命令，官方推荐的交互方式），支持模态浮层、鼠标选择、非阻塞输入：hermes --tui 启动；hermes --tui -r \u0026lt;session_id\u0026gt;、hermes --tui --resume \u0026quot;my t0p session\u0026quot;、hermes --tui --resume latest --in ./my-project 恢复会话；可在 ~/.hermes/config.yaml 设 interface: tui（或 display.interface: tui）为持久默认，显式 flag 优先。\n本地模型（Local Models） 可完全在本机运行开源模型：Hermes 负责下载并管理推理引擎（llama.cpp）、按硬件挑选模型构建、自动处理内存（你无需配置 context size、GPU layers、quantization），选好模型其余交给它；下载完成后无账号、无 API key、无网络访问。桌面 Local Models 界面在 canary 构建启用，其他构建需 --local 启动 flag；引擎安装/更新、目录模型、Hugging Face 下载与 quickstart 均支持 Pause/Resume；也可接自己的 llama-server（默认仅探测 :8080）。\nSessions 会话 每次对话自动存为 session（来自 CLI、Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Teams 等任意平台），含完整消息历史，存放在 SQLite ~/.hermes/state.db：会话 ID、来源平台、用户 ID、唯一人类可读标题、模型名与配置、完整历史，带 FTS5 全文检索（支撑跨会话搜索）。CLI 恢复：继续最近会话（-c）、按名称（自动取 lineage 中最新，如 my project #2）、按 ID 或标题、按目录（恢复 ./my-project 最新会话，TUI 亦然）。存储恢复：state.db 旁有 state.db-wal（write-ahead log）和 state.db-shm；gateway、Desktop、dashboard、cron、CLI 多进程可安全共享，但在别的进程写入时重写存储不安全——此后旧进程会停止写入并每轮报 \u0026ldquo;another Hermes process still holds an old copy of the session database\u0026rsquo;s write-ahead log\u0026rdquo;（该页另述三步修复、禁忌操作，并说明有写入时维护命令会被拒绝）。\n安全（八层纵深防御） 可见的前几层：① 用户授权（allowlist、DM pairing）；② 危险命令审批（human-in-the-loop）；③ 文件写入安全（write_file / patch 的 denylist 与可选写沙箱）；④ 容器隔离（Docker/Singularity/Modal，硬化设置）；⑤ MCP 凭据过滤（MCP 子进程环境变量隔离）。\n审批相关：Approval Modes、YOLO 模式、supervised-gateway 生命周期限制、Hardline blocklist（常开底线）、用户自定义拒绝规则 approvals.deny、审批超时、CLI 与 Gateway/消息端两套审批流程、永久 allowlist、用 hermes approvals suggest 从历史挖掘规则；文件写保护含「受保护路径（始终阻止）」、可选沙箱 HERMES_WRITE_SAFE_ROOT 及 cron/其他 Hermes 状态防护；gateway 侧有用户授权与检查顺序。出口安全：iron-proxy 为远程终端沙箱做凭据注入——沙箱只持不透明 proxy token、真 key 不出主机（hermes egress 管理，钉版本 SHA-256 校验）；Docker 默认 network_mode: host 出网不受限，可用 docker-compose.override.yml 做网络出口隔离。\nProfiles（多档与多实例） Profile 即独立 Hermes home 目录（自己的 config.yaml、.env、SOUL.md、memory、sessions、skills、cron、state 库）；~/.hermes/profiles/ 下只有带身份文件（config.yaml、.env、SOUL.md、profile.yaml、auth.json、state.db 之一）的目录才算 profile，裸目录被 profile list、gateway 和 -p 忽略。克隆选项：空白创建、--clone（只克隆配置）、--sync-imports、--clone-all（全部）、可从指定 profile 克隆；消息通道默认不克隆（--clone-channels 才选入）。使用：-p 指定、hermes profile use 设粘性默认。\n多 gateway：把多个 profile 装成 launchd/systemd 托管服务批量运行（各自 bot token、sessions、memory），也可多路复用为单 gateway（HTTP 入站用 /p/\u0026lt;profile\u0026gt;/ 前缀），临时可用 gateway.standalone: true；桌面端在 Settings → Gateway 登记本地运行时、LAN/VPS 远端 gateway、SSH 主机与 Hermes Cloud，连接持久并存。分发：Profile distribution 把整个 agent（人格、skills、cron、MCP、config）打成 git 仓库，hermes profile install \u0026lt;repo\u0026gt; 一键安装/更新；快速分享用导出文件（.tar.gz）；作者需写 distribution.yaml（声明所需环境变量）并在首提交前建 .gitignore（凭据与用户数据绝不提交）。Managed scope 则供管理员推送用户不可覆盖的基线（如 model provider、API base URL、security.redact_secrets: true），优先级高于用户 config/.env/shell 环境。\nSecrets（外部密钥） 启动时可从外部管理器拉 API key：Bitwarden Secrets Manager（bws CLI，免费档可用；.env 只放 BWS_ACCESS_TOKEN，启动时 bws secret list \u0026lt;project_id\u0026gt;）、1Password（官方 op CLI，op://vault/item/field 引用，service-account 或桌面会话认证）、命令 helper（任何 CLI vault：keepassxc-cli、secret-tool、pass 等；命令写 config.yaml，启动时经 /bin/sh -c 执行一次，stdout 解析为 KEY=VALUE）。多来源可同时启用；冲突时映射来源胜过批量来源，.env/shell 优先（除非 override_existing: true），先声明者赢。\n导入、Worktrees 与检查点 hermes import-agent 一条命令导入 Claude Code（~/.claude）或 Codex CLI（~/.codex）：预览优先、--dry-run 不写盘，支持 --source、--overwrite --yes；例：CLAUDE.md → ~/.hermes/memories/MEMORY.md 记忆条目，settings.json 的 permissions.allow（Bash(...) 规则）→ config.yaml 的 command_allowlist。\nGit worktrees 适合同项目并行多 agent 或隔离实验重构：Hermes 以当前工作目录为项目根（CLI=启动目录，消息 gateway=terminal.cwd），会话内可用 /worktree new，或用 hermes -w 自动 worktree 模式。Checkpoints / /rollback：破坏性操作前自动快照、一条命令恢复；v2 起 opt-in（默认关），会话级 --checkpoints 或全局写 ~/.hermes/config.yaml；shadow git 库在 ~/.hermes/checkpoints/store/，不碰真实 .git；自动维护按 retention_days 清理、从不自动删 orphan，orphan 清理只走 hermes checkpoints prune（带确认）；/rollback diff 预览、用户手改默认保留。\nDocker、Desktop、Bot Mode、文件分工、Windows Docker 两种用法：Hermes 跑在容器里（数据集中于宿主挂载的 /opt/data，镜像无状态可 pull 升级，支持 gateway 模式、dashboard、交互 CLI、s6 多 profile 管理）或 Docker 作为终端后端（宿主跑 agent、命令在持久沙箱执行）。\nDesktop 与 CLI/gateway 是同一 agent（同 config、API key、sessions、skills、memory），跑在 macOS (Apple Silicon)/Windows/Linux，含 Chat、仓库发现、file browser、Artifacts、内置 terminal、live subagents、git review \u0026amp; worktrees、Memory Graph、Quick Entry、Voice、HUD mode 等。\nBot Mode 把 profile 变成命名 Bot 名册（各自 role/model/memory/skills/avatar，可跑 routines、群聊共同讨论、互发消息），内置于桌面应用、默认开启；Bot 就是 profile（~/.hermes/profiles/\u0026lt;any-bot\u0026gt;/profile.yaml 空块即可标记）；跨机消息走 Desktop relay，跨机 DM 可用 hermes peer。\n文件分工：SOUL.md 是主身份（人格、语气、沟通风格），由你写、Hermes 只在缺失时生成起始版且从不覆盖，会话开始时占 system prompt 的 slot #1，位于 ~/.hermes/SOUL.md（自定义 home 为 $HERMES_HOME/SOUL.md）、永不在工作目录；页内 master table 还列 USER.md 等（存什么/谁写/何时被看到/在哪）及常见混淆。\nWindows：原生支持 Win10/11（无需 WSL/Cygwin/Docker），PowerShell iex (irm ...) 一行安装，另有 MSIX/Store；原生数据在 %LOCALAPPDATA%\\hermes、WSL 在 ~/.hermes，可共存；涉及依赖引导、feature matrix、shell 执行方式、UTF-8 控制台、编辑器 Ctrl-X Ctrl-E、Ctrl+Enter 换行、登录自启 gateway（非 Windows 服务）等；WSL2 适合要 dashboard 内嵌终端（/chat 需 POSIX PTY，仅 WSL2）与 POSIX 重型开发，原生足以跑聊天、gateway、cron、browser、MCP。\n四、消息平台接入（Messaging） 总览 Hermes 可从 Telegram、Discord、Slack、WhatsApp、Signal、SMS、Email、Home Assistant、Mattermost、Matrix、DingTalk、Feishu/Lark、WeCom、Weixin、BlueBubbles (iMessage)、QQ、Yuanbao、Microsoft Teams、LINE、ntfy 或浏览器聊天；另有 Google Chat、IRC、SimpleX Chat、Raft、Buzz、A2A、Photon iMessage、Teams Meetings/Graph webhook、WeCom Callback、WhatsApp Business Cloud API、Webhooks 等专门页面。\ngateway 是单个后台进程：连接所有已配置平台、处理 sessions、跑 cron、投递语音消息；bot 需要模型 provider 与工具 provider（TTS、web），Nous Portal 订阅把它们打包。消息状态属于「所选机器上的所选 profile」。通用流程：跑 hermes gateway setup 选平台走引导（多数平台页都提示这句），或手配 config.yaml / 环境变量；平台侧建 bot/app 拿 token 与自己 user ID，配 allowlist，启动 gateway 验证。通用概念：DM 每条都回、群聊默认要 @mention（各平台有开关）、按用户/会话隔离 session、home channel 承接 cron 与通知、hermes send 主动发消息。\nTelegram 全功能会话 bot（基于 python-telegram-bot），支持文本、语音（自动转写）、图片、文件附件；dashboard/desktop 的 Messaging → Telegram 页有 Create with QR：扫码即自动建 bot、识别你的 user ID，并把 TELEGRAM_BOT_TOKEN、TELEGRAM_ALLOWED_USERS 写进 profile 的 .env 后重启 gateway。群聊关键是关闭 Privacy Mode；可选 Online/Offline 状态、冷启动 pending 队列、命令菜单设置。\nDiscord bot DM 每条都回（无需 @mention）、服务器频道默认只在 @mention 时回（另有 free-response 频道）；每个 DM 独立 session；支持文本、语音消息、文件与 slash 命令；按第 1-6 步建 Application → 建 Bot → 开启 Privileged Gateway Intents → 取 Bot Token → 生成 Invite URL（推荐用 Installation tab）→ 邀请入服。\nSlack 用 Socket Mode（WebSocket、无需公网 URL，可在防火墙后/笔记本运行）；凭据为 Bot Token（xoxb-）+ App-Level Token（xapp-），用户以 Member ID（如 U01ABC2DEF3）识别；经典 RTM 应用 2025 年 3 月已彻底弃用，须用现代 Bolt SDK 重建；流程：创建 app（推荐用 Hermes 生成 manifest）→ 配 scopes → 开 Socket Mode → 订阅事件 → 开 Messages tab → 安装到 workspace → 查 user ID 配 allowlist → 邀请入频道。\nWhatsApp 两条路径：内置 Baileys 桥（模拟 WhatsApp Web，个人号、免 Meta 账号、免公网 URL、上手快——但有封号风险）与 WhatsApp Business Cloud API（Meta 官方生产路径：无 Node.js 桥、无 QR、无封号风险，但需 Meta Business 账号、专用商业号码和公网 HTTPS URL；用户最后消息 24 小时后再回复需预批准 template）。访问控制可用 WHATSAPP_ALLOWED_USERS=* 或 WHATSAPP_ALLOW_ALL_USERS=true；支持语音消息与 reply_prefix 自定义前缀。\n微信系与国内平台 Weixin（个人微信）用腾讯 iLink Bot API、long-polling 无需公网端点，QR 登录绑的是 iLink bot 身份（如 a5ace6fd482e@im.bot），普通微信群可能不适用（变量如 WEIXIN_TOKEN、WEIXIN_SPLIT_MULTILINE_MESSAGES=true）；WeCom（企业微信）走 AI Bot WebSocket 网关、实时双向、同样无需公网端点（Bot ID + Secret，可扫码创建）；WeCom Callback 是自建应用回调模式（加密 XML 回调、显示在用户侧边栏、支持多企业路由，WECOM_CALLBACK_HOST 可选固定）；Feishu/Lark 是 full-featured bot，连接模式 websocket（推荐，免公网 webhook）或 webhook，支持文本/图片/音频/文件，cron 结果可投 home chat；DingTalk 走 Stream Mode 长连接（免公网 URL），markdown 回复，配置项如 DINGTALK_ALLOWED_USERS=user-id-1,user-id-2、DINGTALK_REQUIRE_MENTION=true、DINGTALK_FREE_RESPONSE_CHATS=cidABC==,cidDEF==。\n其他平台速览 Signal：signal-cli daemon HTTP 模式，SSE 收/JSON-RPC 发，需 Java 17+，E2EE 隐私最强。 Matrix：mautrix SDK，任意 homeserver 含 Synapse/Conduit/Dendrite/matrix.org，支持可选 E2EE 与音视频，mention/threading 及 room 隔离配置。 Microsoft Teams：消息靠公网 HTTPS webhook 投递，devtunnel/ngrok/cloudflared 均可；teams status --verbose 取 AAD object ID 限用户；另有 Teams Meetings 管道：Graph webhook → 优先 transcript → 录音+STT 兜底 → 摘要，投递模式 incoming_webhook / graph，及 msgraph_webhook 通知监听，clientState 为主认证、源 IP allowlist。 Email：标准 IMAP/SMTP，Python 内建模块、无外部依赖，Gmail/Outlook/Yahoo/Fastmail 等皆可，来件在 thread 回信；与需外部 himalaya CLI 的邮件 skill 不同。 SMS：Twilio，复用 telephony skill 的 TWILIO_ACCOUNT_SID、TWILIO_AUTH_TOKEN、TWILIO_PHONE_NUMBER，需公网 webhook + 建议签名校验。 IRC：纯文本、stdlib 无依赖，公共网络或自建 ircd，不支持富媒体/线程/流式，昵称默认 hermes-bot。 Mattermost：自托管 Slack 替代，REST v4 + WebSocket，MATTERMOST_ALLOWED_USERS、MATTERMOST_REPLY_MODE=thread|off、MATTERMOST_REQUIRE_MENTION。 Google Chat：Cloud Pub/Sub pull 收 + Chat REST 发，免公网 URL，需 Workspace 账号，经 GCP 项目/API/service account/Pub-Sub+IAM/配置 app 等九步。 LINE：官方 Messaging API、bundled plugin，1:1 全回、群/房间按 allowlist，出站先用免费 reply token，需公网 webhook，发媒体需公开 HTTPS base URL。 iMessage 两条路——BlueBubbles（免费开源 macOS server，需常开 Mac + Apple ID + Server v1.0.0+）或 Photon（托管服务，免费共享线路池/Business 专用号，持久连接免 webhook）。 QQ：官方 Bot API v2，私聊/群 @/guild/DM、WebSocket+REST、语音转写。 Yuanbao：腾讯企业消息平台，WebSocket 网关、HMAC 认证，APP_ID / APP_SECRET 来自平台管理员、YUANBAO_BOT_ID、YUANBAO_ROUTE_ENV=production，home channel 形如 direct:\u0026lt;account\u0026gt;、group:\u0026lt;group_code\u0026gt;。 ntfy：HTTP pub-sub 推送，免 SDK/daemon，可只出站通知。 Home Assistant：gateway 平台订阅实时事件 + 四个工具 ha_list_entities / ha_get_state / ha_list_services / ha_call_service，HASS_TOKEN 与可选 HASS_URL，设 token 后 homeassistant toolset 自动启用。 Webhooks：收 GitHub/GitLab/JIRA/Stripe 事件触发 agent，校验 HMAC、payload 转 prompt，路由可 config.yaml 或 hermes webhook subscribe，端点 http://your-server:8644/webhooks/\u0026lt;route-name\u0026gt;，有 payload filter/事件合并/脚本 transform/prompt 模板。 A2A：开放 Agent2Agent 协议 v1.0，双向互通任何兼容实现。 Hermes Relay：实验性连接器——gateway 不持平台凭据、外连 connector 的认证 WebSocket、免入站端口。 Buzz：Block 的 Nostr 协作平台，buzz CLI + 原生 WebSocket，支持 markdown/图片/线程。 Raft：本地 wake-channel bridge，agent 用 raft message check / raft message send 经 CLI 读写。 Open WebUI：把内置 API server 当 OpenAI 兼容端点，API server 是 agent runtime、工具在服务端执行，Chat Completions 推荐。 SimpleX：去中心化、无持久 ID，需 simplex-chat daemon，可 hermes send。 Gateway 通用能力 消息内 chat commands、session 管理与持久化、/sessions 找历史会话、/model 持久覆盖、投递可靠性（delivery reliability）与会话连续性、intentional silence tokens、SIGUSR2 按需 stack dump、内建事件循环存活看门狗（另有可选 Linux 看门狗）。\n五、功能全览（user-guide/features，56 页） 基于官方文档 user-guide/features 板块 56 个页面整理；命令、配置键与路径保留原文。\n5.1 模型与可靠性 Fallback Providers：三层韧性——① Credential Pools 同提供商多密钥轮换（最先尝试）；② 主模型回退：主 provider 出错（限流、过载、鉴权失败、断连）时自动切到备份 provider:model，会话不中断；③ 辅助任务回退：vision、上下文压缩等侧任务独立解析提供商。三者可选、互相独立。 Credential Pools：为同一 provider 注册多个 API key / OAuth token（如第二个 OpenRouter、Anthropic key），某个 key 触发限流或额度耗尽时自动轮换到下一个健康凭证；「全部密钥耗尽后才启用跨提供商 fallback」。注意轮换会重置 prompt cache（缓存按 key 作用域）。 Provider Routing：使用 OpenRouter 时可在 ~/.hermes/config.yaml 加 provider_routing 段，用 sort: \u0026quot;price\u0026quot;、only（白名单）、ignore（黑名单）、order、require_parameters、data_collection 控制底层提供商与优先级；Nous Portal 集中路由并忽略该配置。 Mixture of Agents：虚拟模型提供商，每个 preset 在 moa provider 下是可选项；aggregator 为实际执行模型（写回复、发工具调用），reference 模型先跑供其参考，费用几乎全记在 aggregator 的提供商上。用 hermes moa configure / hermes moa list 管理 preset。 Nous Tool Gateway：付费 Nous Portal 订阅附带，统一路由 web search、图像生成（九个模型：FLUX 2 Klein 9B、FLUX 2 Pro、Z-Image Turbo、Nano Banana Pro、GPT Image 1.5、GPT Image 2、Ideogram V3、Recraft V4 Pro、Qwen Image）、TTS 与云浏览器，无需自备各厂商 key；hermes setup --portal 一次配好模型 + 四个网关工具。 5.2 记忆、上下文与个性化 Persistent Memory：跨会话的有界记忆，两个文件：MEMORY.md（agent 笔记，约 2,200 字符 / ~800 tokens）与 USER.md（用户画像，约 1,375 字符 / ~500 tokens），存于 ~/.hermes/memories/，会话开始时作为冻结快照注入系统提示；agent 通过 memory 工具自行增删改。不要让两个 agent 进程共用同一 Hermes home。 Memory Providers：内置 7 个外部记忆插件（provider: openviking / honcho / mem0 / holographic / retaindb / byterover / supermemory，hindsight 需先 hermes plugins install hindsight），同一时间只能启用一个，内置记忆始终并存。命令：hermes memory setup、hermes memory status、hermes memory off，也可在 hermes plugins → Provider Plugins 选择。 Honcho Memory：AI 原生记忆后端，在会话结束后做 dialectic 推理，持续为用户建模（偏好、沟通风格、目标、模式）；属 Memory Provider 插件，支持服务端持久化、per-peer 画像隔离与会话级上下文注入。 Personality \u0026amp; SOUL.md：SOUL.md 是 agent 首要身份（系统提示 slot #1），位于 HERMES_HOME，Hermes 会自动播种默认文件；内置/自定义 /personality preset 作为会话级系统提示叠加层。 Context Files：自动发现并加载。.hermes.md / HERMES.md 项目指令优先级最高（走到 git root）；AGENTS.md、CLAUDE.md 在启动 CWD 及子目录逐步发现；AGENTS.override.md 为个人目录级覆盖；SOUL.md 仅从 HERMES_HOME/SOUL.md 读取；.cursorrules 亦被识别。 Context References（@ 引用）：输入 @ 把内容注入消息，附于 --- Attached Context --- 段。支持 @file:path/to/file.py、@file:path/to/file.py:10-25（行区间，1 起始）、@folder:path/to/dir、@diff、@staged、@git:5（最近 N 提交，最多 10）、@url:https://example.com；一条消息可含多个引用。 Pets：CLI、TUI、桌面端的动画吉祥物（来自 petdex 图库），按 agent 状态（idle、跑工具、思考等六种动画）反应；纯装饰、默认关闭，选择后写入 display.pet.slug 与 display.pet.enabled，用 hermes pets 命令、/pet 管理，/hatch 可生成宠物。 Skins \u0026amp; Themes：控制 CLI 外观（横幅颜色、spinner、品牌文字等），与改变语气的人格分离。/skin 查看/列出，/skin ares 切内置皮肤，/skin mytheme 加载 ~/.hermes/skins/mytheme.yaml；默认皮肤 default。 Language Packs：内置 17 种 UI 语言（display.language）；语言包即插件（声明 provides_locales）或 \u0026lt;HERMES_HOME\u0026gt;/locales/\u0026lt;lang\u0026gt;.yaml，翻译 CLI 提示、hermes --tui 与桌面端静态 UI 文本，不翻译 agent 回复、工具输出与命令名。 5.3 技能与扩展机制 Skills System：按需加载的知识文档，遵循渐进式披露省 token，兼容 agentskills.io 标准；技能统一存放 ~/.hermes/skills/，可指外部技能目录；Desktop 的 Capabilities → Skills 可浏览安装；/learn 可从文档、网页、对话等来源学习生成技能（大块来源生成 knowledge-base 技能）；格式为 SKILL.md。 Curator：针对 agent 自建技能的后台维护，按浏览/使用/打补丁频率把长期未用技能迁移 active → stale → archived；curator.prune_builtins: true 可选归档未用的内置技能（经 archive_after_days 判定）；支持备份回滚、审计账本与 pin。 Plugins：不改核心代码即可添加自定义工具、hooks 与集成；把含 plugin.yaml 的目录放进 ~/.hermes/plugins/（__init__.py 注册、schemas.py 定义 schema、tools.py 实现），启动 Hermes 后工具与内置工具一起可用。 Built-in Plugins：随仓库分发于 \u0026lt;repo\u0026gt;/plugins/\u0026lt;name\u0026gt;/；PluginManager 按序扫描四类来源：Bundled → User（~/.hermes/plugins/）→ Project（./.hermes/plugins/，需 HERMES_ENABLE_PROJECT_PLUGINS=1）→ Pip entry points，同名时后者覆盖前者。内置含 disk-cleanup、security-guidance、observability/langfuse、google_meet、hermes-achievements 等。 Plugin Catalog：人工审核的插件目录，在 /docs/plugins 按分类浏览（Memory、Desktop、Platforms、Web \u0026amp; Browser、Tools、Voice、Automation、Models），按名称单条命令安装并锁定 pinned commit。 Event Hooks：四套钩子系统——Gateway hooks（~/.hermes/hooks/ 下 HOOK.yaml + handler.py，仅网关）；Plugin hooks（插件内 ctx.register_hook()，CLI+Gateway）；Shell hooks（profile config.yaml 的 hooks: 段指向脚本，覆盖 CLI+Gateway+Desktop/TUI/dashboard）；Outbound webhooks（hooks.outbound:，向外部 HTTP 端点推送签名事件）。回调错误隔离记录、不会使 agent 崩溃。 LSP：内置 pyright、gopls、rust-analyzer、typescript-language-server、clangd 等约 20+ 语言服务器后台运行，语义诊断（类型错误、未定义名、缺 import 等）注入 write_file / patch 的写后 lint；仅在 git 工作区内生效。 5.4 自动化与多代理 Scheduled Tasks (Cron)：用自然语言或 cron 表达式排程，统一由 cronjob_manage 工具管理；支持一次性/周期任务与暂停、恢复、编辑、触发、删除，可挂 0..n 个技能，结果投递回原会话、本地文件或平台目标；有无 agent 模式（脚本按计划运行、stdout 原样投递、零 LLM 参与）；webhook 路由设 cron_job 可被外部事件触发。创建入口：聊天中的 /cron 或独立 CLI（schedule 与 prompt 为位置参数）。 Session Heartbeats（/heartbeat）：给当前会话一条循环指令，如 /heartbeat every 10m Check the deployment and report meaningful changes；仅在空闲且间隔到时、以普通用户消息在轮次间注入（绝不打断运行中的任务）；状态存 SessionDB、网关重启后自动恢复。 Recurring Loops（/loop）：在当前会话内按周期重跑 prompt 或 slash 命令（别名 /proactive），每次唤醒都是真实 agent 轮次并读取最新状态；定时器驱动，典型用途是轮询部署/CI/队列与「迭代到测试全绿」。 Persistent Goals（/goal）：跨轮次的持续目标，每轮结束后由轻量 judge 模型判定是否达成，未达成则自动续跑，直至达成、暂停/清除或轮次预算耗尽（Ralph loop 思路）；可用 /subgoal 中途追加判据，支持完成契约与质量门。 Subagent Delegation：delegate_task 生成上下文隔离的子 AIAgent（全新对话、独立终端会话、继承工具），只有最终摘要进入父会话；顶层调用自动后台运行并立即返回 handle，完成后作为新消息回传；支持并行批量与 output_schema 结构化输出。 Kanban：跨全部 profile 共享的持久任务板，任务行存于 ~/.hermes/kanban.db，每个 worker 是独立 OS 进程。hermes kanban init 初始化（首次 hermes kanban \u0026lt;anything\u0026gt; 自动初始化），hermes dashboard 打开 http://127.0.0.1:9119 观战；worker 用 kanban_* 工具集（kanban_show、kanban_complete、kanban_request_review、kanban_block、kanban_attach 等）驱动看板。支持多 board、附件、PR 完成契约；迭代预算近 90% 时发 checkpoint（可用 agent.budget_warning_ratio 提前）；多网关时仅一个网关持有 dispatcher，订阅支持 notify / wake / notify+wake；worker lane 由 assignee 字符串、spawn 机制、生命周期终止契约定义。 Batch Processing：batch_runner.py 对 JSONL prompt 数据集并行跑完整 agent 会话，输出 ShareGPT 格式轨迹（含工具调用统计与推理覆盖指标），主要用于训练数据生成；支持断点续跑，python batch_runner.py --list_distributions 列出工具集分布。 5.5 工具与执行 Tools \u0026amp; Toolsets：工具按可按平台启停的 toolset 组织，内置注册表覆盖 web search、浏览器自动化、终端执行、文件编辑、记忆、委派、定时任务、Home Assistant 等；终端后端可选 Docker、SSH、Singularity/Apptainer、Modal、Vercel Sandbox（~/.hermes/config.yaml 配置）。 Tool Search：挂载大量 MCP/非核心插件工具时启用的渐进披露层——把它们的 schema 换成三个 bridge 工具、按需加载；核心工具（terminal、read_file、write_file、patch、web_search、execute_code、delegate_task 等 _HERMES_CORE_TOOLS）始终直接加载。 MCP (Model Context Protocol)：连接外部工具服务器（GitHub、数据库、文件系统、内部 API 等）；~/.claude.json 的 mcpServers 对应 config.yaml 的 mcp_servers，hermes import-agent claude-code 可自动迁移（连同技能与指令）；官方目录支持一键安装经 Nous 审核的 MCP。 Code Execution：execute_code 让 agent 写 Python 脚本（from hermes_tools import ...），经 Unix domain socket RPC 调用 Hermes 工具，把多步工作流压缩为一个 LLM 轮次；只有脚本 print() 输出返回模型，中间工具结果不进上下文窗口。 Document Extraction：read_file 自动把常见文档转为可读文本——.ipynb、.docx、.xlsx、.db/.sqlite/.sqlite3 内置（stdlib）；.pdf、旧版 Office、.odt/.ods/.odp、.rtf/.epub 由可选 anydoc 转换器在首次使用时自动安装。 Deliverable Mode：在 Slack、Discord、Telegram、WhatsApp、Signal 等网关中，agent 只需在回复里提一下生成文件的绝对路径，网关就会把文件作为原生附件上传（图表内联图片、PDF 文件下载、.xlsx 直接上传），无需 MEDIA: 标记。 Web Search \u0026amp; Extract：web_search 检索、web_extract 抓取多 URL 正文；后端经 hermes tools 或 config.yaml 统一选择：Firecrawl（默认，FIRECRAWL_API_KEY，选定后可选无 key 云端，500 credits/月）、SearXNG（SEARXNG_URL，自托管免费）、Brave Search（BRAVE_SEARCH_API_KEY，2000 次/月）、DDGS（无需 key）。 X (Twitter) Search：x_search 经 xAI Responses API（https://api.x.ai/v1/responses）搜索 X 帖子/主页/线程，返回带引用综合结果，推荐 grok-4.5；只用于只读发现，发帖、点赞、DM 等请用 xurl 技能。 Computer Use：可在 macOS、Windows、Linux 后台驱动桌面（点击、输入、滚动、拖拽），不移动光标、不切换虚拟桌面；内置 computer_use toolset 经 MCP over stdio 连接开源 cua-driver，兼容任意工具型模型；支持权限模式与登录态浏览器 profile，首诊命令 hermes computer-use doctor。 Browser Automation：多后端——Browser Use cloud（托管 Chromium、stealth、住宅代理、验证码求解）、Browserbase、Firecrawl、Camofox 本地反检测（Firefox 指纹伪装）、Lightpanda（内存为 Chrome 的 1/16、速度为其 9 倍、即时启动），默认 Browser Use mode（Browser Use CLI 3.0，驱动本地 Chrome 与云端浏览器）；配置位于 ~/.hermes/.env 与 ~/.hermes/config.yaml，支持混合路由（公网走云、LAN/localhost 走本地）与使用本机登录态的真实 profile 浏览。 Bot Screen：无头 Linux 网关主机上每个 bot 有独立 Xfce 桌面，computer_use 与有头浏览器在其上操作并实时串流进 Hermes Desktop；遇到登录、2FA、验证码、付款可随时接管、处理完交还；若 terminal 在 docker/ssh/singularity 沙箱中运行，屏幕也在沙箱内，边界一致。 Spotify：用官方 Web API + PKCE OAuth 控制播放、队列、搜索、歌单、收藏与收听历史；token 存 ~/.hermes/auth.json、401 自动刷新；需注册自己的轻量开发者应用（Spotify 不允许第三方公共 OAuth 应用），hermes auth spotify 约两分钟引导完成；Free 账号可用搜索/歌单/库，播放控制需 Premium。 5.6 接入与界面 API Server：把 hermes-agent 暴露为 OpenAI 兼容 HTTP 端点，Open WebUI、LobeChat、LibreChat、NextChat、ChatBox 等可直接接入，agent 以完整工具集作答、流式时内联显示工具进度。先 hermes setup --portal 配好 provider 与工具后端（300+ 模型 + Tool Gateway）；浏览器直连需设 API_SERVER_CORS_ORIGINS（如 http://localhost:3000）。主要端点：POST /v1/chat/completions、POST /v1/responses（previous_response_id 多轮、命名会话）、GET / DELETE /v1/responses/{id}、GET /v1/models。 Subscription Proxy：本地 HTTP 服务器，让外部应用（OpenViking、Karakeep、Open WebUI 等 OpenAI 兼容客户端）以你的 Hermes 托管订阅为 LLM 端点，代理自动附带并刷新凭证；仅透传模型推理（无工具调用），与 API Server（整个 agent 作后端）互补。 ACP Host Integration：Hermes 可作 ACP server 经 stdio 供 VS Code、Zed、JetBrains、Buzz Desktop 等宿主使用，支持流式思考/回复；运行策划好的 hermes-acp 工具集（文件与终端工具、memory/todo/session search、execute_code、delegate_task）。 Codex App-Server Runtime：可选把 openai/*、openai-codex/* 等轮次交给 Codex CLI app-server 执行（终端、文件编辑、沙箱、MCP 都在 Codex 运行时内），Hermes 退为外壳（会话库、slash 命令、网关、记忆与技能审查）；纯 opt-in，默认行为不变；该运行时下 /goal、kanban、cron 等工作流功能不可用。 Hermes Web Dashboard：浏览器管理界面，hermes dashboard 启动并打开 http://127.0.0.1:9119，数据不出本机；选项 --port（默认 9119）、--host（默认 127.0.0.1）、--no-open；--insecure 已废弃为 no-op（公网绑定始终要求认证）；可在多 profile 间管理。 Extending the Dashboard：三层免 fork 扩展、运行时 drop-in（无需 clone 或 npm run build）——主题 YAML 放进 ~/.hermes/dashboard-themes/ 即出现在切换器；UI 插件为含 manifest.json 与 JS bundle 的目录（注册标签、替换/增强页面、注入槽位）；后端插件在同目录提供 FastAPI router，挂载于 /api/plugins/\u0026lt;name\u0026gt;/。 5.7 语音与多模态 Voice Mode：CLI 与消息平台全语音交互（麦克风输入、语音回复），并可在 Discord 语音频道实时对话；前置条件：安装 Hermes、配置 LLM provider（hermes model 或 ~/.hermes/.env）、先验证文本可用。本地 STT 用 Faster-Whisper 无需 key，Edge TTS / NeuTTS 也无需 key。 Wake Word（\u0026ldquo;Hey Hermes\u0026rdquo;）：开启后 CLI、TUI、桌面端后台监听唤醒词，说出后自动新建会话、打开麦克风并按正常语音管线响应；检测完全在本地。设置 wake_word.enabled: true 或 /wake on；wake_word.input_device 指定输入设备、surface 选监听端；引擎可选 sherpa（任意短语、零训练）、openWakeWord（免费）、Porcupine（秒级自定义关键词）。 Voice \u0026amp; TTS：共 11 个 TTS 提供商——默认 Edge TTS（免费、无需 key）、ElevenLabs（ELEVENLABS_API_KEY）、OpenAI TTS（VOICE_TOOLS_OPENAI_KEY，付费 Portal 订阅可经 Tool Gateway 免 key）、MiniMax（优秀）等；同时支持各消息平台语音消息转写；Telegram 语音气泡需 ffmpeg。 Vision \u0026amp; Image Paste：把剪贴板图片直接粘进 CLI 让 agent 分析，图片以 base64 content block 发给任何支持视觉的模型；输入框上方显示 [📎 Image #1] 徽章，可附加多张、Ctrl+C 清空；粘贴方式：/paste 命令或 Ctrl+V / Cmd+V（VS Code/Cursor/Windsurf 需 /terminal-setup）；图片存于 ~/.hermes/images/。 Image Generation：经 FAL.ai 文生图，内置 11 个模型——默认 fal-ai/flux-2/klein/9b（\u0026lt;1s、$0.006/MP），另有 fal-ai/flux-2-pro（写实）、fal-ai/z-image/turbo（中英双语）、fal-ai/nano-banana-pro、fal-ai/gpt-image-1.5 / fal-ai/gpt-image-2、fal-ai/ideogram/v3、fal-ai/recraft/v4/pro/text-to-image 等；模型经 hermes tools 选择并存于 config.yaml；支持图生图/编辑、宽高比等控制。 六、技能体系（212 条目录条目） 素材：skills.list.txt（212 条）与 skills.md（约 382 KB 摘要）。技能名保留英文原文，数量统计以清单为准。\n6.1 Hermes 的技能体系是什么 技能（Skill）可以理解为 Hermes 的「按需加载的指令包」。每个技能页都写着同一段说明：\u0026ldquo;The following is the complete skill definition that Hermes loads when this skill is triggered. This is what the agent sees as instructions when this skill is active.\u0026rdquo; —— 意思是：某个技能被触发时，Hermes 会把这个技能的完整定义加载进上下文，作为 agent 执行该类任务时的行为指令；不触发就不会占用上下文。技能以 SKILL.md 文件为载体，前面带一段元数据（frontmatter）。\n技能目录的入口是 Skills Hub（https://hermes-agent.nousresearch.com/docs/skills/），官方定位是「发现、搜索、安装（Discover, search, and install）」技能：可以在 Hermes Desktop 中打开审阅并安装，也可以复制 CLI 命令直接安装；页面提供按 Source（来源）、Category（分类）过滤的筛选器。Hub 页面还写着 \u0026ldquo;Fetching 88k+ skills across every registry\u0026rdquo; —— 说明整个技能生态（含各 registry）的规模远大于 Hermes 官方目录收录的这两百来个。\n每个技能文档页的信息结构是固定的：一句话简介 → Source（来源）→ Path（安装路径）→ Author（作者／移植者）→ Platforms（支持平台）→ Tags（标签）→ Related skills（相关技能），之后是完整的 SKILL.md 正文和 Skill metadata 小节。从 Author 字段能看到部分技能来自社区并被 Hermes 移植：humanizer 来自 Siqi Chen（@blader），spike 改编自 gsd-build/get-shit-done，test-driven-development 改编自 obra/superpowers。\n本次素材共 212 条：1 条 Skills Hub 首页、1 条 Google Workspace 技能专页、210 条技能条目。210 个技能同时挂载平台、标签与相关技能信息，说明官方是按「元数据 + 完整定义」的方式来组织这个目录的，便于按平台、场景或关键词筛选。\n6.2 Bundled 与 Optional 的区别 官方把技能分成自带与可选两套：\nBundled（自带技能）58 个：Source 字段标注 \u0026ldquo;Bundled (installed by default)\u0026quot;，安装路径形如 skills/\u0026lt;分类\u0026gt;/\u0026lt;技能名\u0026gt;。这 58 个随 Hermes 默认安装，开箱即用，不需要任何额外命令。 Optional（可选技能）152 个：Source 字段标注 \u0026ldquo;Optional — install with hermes skills install official/\u0026lt;分类\u0026gt;/\u0026lt;技能名\u0026gt;\u0026quot;，路径形如 optional-skills/\u0026lt;分类\u0026gt;/\u0026lt;技能名\u0026gt;。它们不在默认安装包里，需要用户按页面给出的命令手动安装。 一句话概括区别：Bundled 是「默认就在」，Optional 是「要自己装」；可选技能数量约为自带技能的 2.6 倍，覆盖的场景也明显更「重」（训练、金融、安全等，详见下节）。\n平台维度：绝大多数技能标注 linux / macos / windows 三平台通用；Apple 系列（apple-notes、apple-reminders、findmy、imessage）是 macOS 专属，因为它依赖 macOS 上的原生工具。\n6.3 分类统计（共 210 个技能条目） Bundled：58 个，分 12 个分类——productivity 14、software-development 12、creative 10、autonomous-ai-agents 5、apple 4、research 4、media 3、email 2、devops 1、note-taking 1、social-media 1、web 1。可见自带包的重心是办公与文档生产力、软件开发流程和创意生成，再辅以少量研究、媒体与平台集成能力。\nOptional：152 个，分 23 个分类——mlops 36、creative 30、research 15、productivity 10、finance 9、autonomous-ai-agents 7、devops 7、security 6、software-development 6、web-development 5、blockchain 3、mcp 3、payments 3、gaming 2、health 2，以及 communication / data-science / email / dogfood / migration / smart-home / social-media / yuanbao 各 1。\n几点观察：\n单项体量最大的是 mlops（36 个，全部在 optional，覆盖训练、推理、向量库、评测等）与 creative（optional 30 + bundled 10，合计 40 个，是全部技能里最大的领域）。 只出现在 optional 的分类包括：mlops、finance、security、web-development、blockchain、mcp、payments、gaming、health、communication、data-science、dogfood、migration、smart-home、yuanbao。也就是说，模型训练与推理、金融建模、安全攻防、链上数据、支付、游戏、健康这类专业或高风险场景，官方一律放在可选包里，由用户自行安装。 bundled 与 optional 同时存在的分类有：creative、research、productivity、software-development、devops、email、autonomous-ai-agents、social-media。这类领域通常「基础版自带、进阶版可选」。 6.4 安装与管理方式 安装可选技能：固定格式为 hermes skills install official/\u0026lt;分类\u0026gt;/\u0026lt;技能名\u0026gt;，例如 hermes skills install official/mlops/unsloth、hermes skills install official/finance/dcf-model。清单里每条 optional 技能的 Source 字段都直接写好了对应的完整命令，照抄即可。 浏览与挑选：Skills Hub 页面支持按 Source 与 Category 过滤，可以在 Hermes Desktop 里打开技能页审阅后安装，也可以只复制 CLI 命令自己执行；每个技能页都能看到简介、标签、平台与完整 SKILL.md 内容，先看清楚再装。 需要说明的是：本批素材中出现的技能管理命令只有 hermes skills install … 这一种写法，其他子命令（列举、搜索、卸载等）没有被素材覆盖，此处不做推断。 另有一个独立专页 Google Workspace：整合 Gmail、Calendar、Drive、Contacts、Sheets、Docs，使用 OAuth2 并自动刷新令牌；优先调用 Google Workspace CLI（gws），不可用时回退到 Google 的 Python 客户端库；整个配置过程由 agent 驱动，技能路径为 skills/productivity/google-workspace/。 6.5 代表技能举例（15 个） Bundled 侧\nhermes-agent —— 使用、配置、换主题、扩展与编排 Hermes Agent 自身（安装、多 agent 派生、CLI/gateway 等）。 claude-code —— 把编码任务委派给 Claude Code CLI（功能开发、PR）；同族还有 codex（OpenAI Codex CLI）与 opencode。 computer-use —— 桌面 GUI 自动化：后台驱动优先，遇到信号再升级策略，跨平台。 github —— 通过 gh CLI 处理 PR、Issue、代码评审、仓库与认证。 test-driven-development —— 强制执行 RED-GREEN-REFACTOR：先写测试，再写代码。 dogfood —— 对 Web 应用做探索式 QA，产出可复现的 bug、证据与报告。 docx —— Word 文档的创建、读取、编辑、模板化与审阅；文档四件套还包括 xlsx、pdf、powerpoint。 obsidian —— 读取、搜索、创建、编辑 Obsidian 笔记库。 arxiv —— 按关键词、作者、分类或 ID 检索 arXiv 论文。 grounded-citations —— 让答案与文档建立在可核验、可引用的来源之上。 baoyu-infographic —— 生成信息图：21 种版式 × 21 种风格（信息图、可视化）。 Optional 侧\nunsloth —— LoRA/QLoRA 微调提速 2–5 倍、占用显存更少。 serving-llms-vllm —— 用 vLLM 做高吞吐 LLM 服务（OpenAI API、量化）。 sherlock —— 跨 400+ 平台按用户名查找账号；security 分类还有 web-pentest（授权渗透测试）、1password（密钥注入）等。 dcf-model —— 在 Excel 中构建 DCF 估值工作簿；finance 分类成体系地覆盖 3-statement-model、lbo-model、merger-model、comps-analysis 等投行模型。 补充：creative 是可选包的第二个大类，代表还有 excalidraw（手绘风架构/流程/时序图）、comfyui（扩散工作流生成图像、视频、音频）、baoyu-comic（知识漫画）；research 侧有 scrapling（隐身抓取、绕 Cloudflare）、rss-feeds、duckduckgo-search 等检索与监测技能。\n七、插件生态（348 个插件） 7.1 插件是什么（生态定位） 官方插件目录页（Plugin Catalog，/docs/plugins/）的定位语是：\u0026ldquo;Give Hermes new powers. Memory, voice, messaging, browsing, Desktop panes and more, built by the community.\u0026rdquo;（给 Hermes 增加新能力：记忆、语音、消息、浏览、桌面面板等，由社区构建），并提供了 \u0026ldquo;Built a plugin? Submit it to the catalog →\u0026rdquo; 的投稿入口。\n从 348 个插件页的「贡献内容」（What it adds）看，插件是给 Hermes 增加能力的外部扩展包，常见形态包括：工具（Tools）、生命周期钩子（Hooks）、中间件（Middleware）、模型提供商（Models）、记忆后端（Memory）、消息平台/网关适配器（Platforms）、桌面端页面与状态栏部件（Desktop）、语音 TTS/STT 提供商（Voice），以及把 MCP 服务器（stdio / Streamable HTTP / npx）桥接进 Hermes（素材中 MCP 出现 60 次）。部分插件还打包工作流技能（workflow skill / bundled skill）。分发上出现了 \u0026ldquo;Portable Agent Plugins v1\u0026rdquo; 可移植插件包格式（9 处）。\n7.2 如何发现与安装 发现：Plugin Catalog 页面提供筛选器——Source：All sources / Official / Community；Category：All categories；Sort：Most starred / Newest / Recently updated（目录内容为前端动态加载）。 安装：插件页给出 hermes plugins install \u0026lt;插件名\u0026gt; 命令（如 hermes plugins install afterforge），带复制按钮；素材中 133 个插件页给出该命令。 管理：另有 hermes plugins enable \u0026lt;插件名\u0026gt;（如 apify 页的排障小节 \u0026ldquo;hermes plugins enable apify fails\u0026rdquo;），也可在 ~/.hermes/config.yaml 的 plugins.enabled 列表里启用并重启桌面端。 备选路径：部分插件支持 pip 安装 + Hermes 自动发现、git clone、直接 npx、或「手动（disk door）」。 7.3 插件页面的结构 插件页：面包屑 Plugin Catalog/\u0026lt;类别\u0026gt;/\u0026lt;插件名\u0026gt; → 元信息行「\u0026lt;类别\u0026gt; · by \u0026lt;作者\u0026gt; · added \u0026lt;日期\u0026gt;[ · updated \u0026lt;日期\u0026gt;]」→ 一句话简介 → 安装命令块 → 徽标行（Repository ↗ / Reviewed source @ \u0026lt;commit\u0026gt; ↗ / Documentation ↗）→ \u0026ldquo;What it adds\u0026rdquo; 摘要（如 Tools 8 | Hooks 3，或 Environment variables it needs 1、Middleware 1）与数据披露（Disclosure，71 个页面出现）→ README（含 Install、Requirements、Configuration、Usage、Screenshots、Security、License、Development 等小节）→ 页尾 \u0026ldquo;More by \u0026lt;作者\u0026gt;\u0026quot;。 作者页：面包屑 Plugin Catalog/Authors/\u0026lt;作者\u0026gt;，统计行「N plugins in the catalog · ★ N GitHub stars across them · first listed \u0026lt;日期\u0026gt; · \u0026lt;类别列表\u0026gt;」，下方是该作者的全部插件卡片（图标 + 名称 + Community/Official 徽标 + 星数 + 简介 + 类别）。 7.4 功能类别与代表插件（9 类，合计 348） 类别 数量 代表插件（英文原名） Desktop（桌面端页面/状态栏部件） 92 boardstate、agent-log、ai-usage-tracker、kanban-gantt、hermes-rich-ui、hermes-terminal、hermes-memory-wiki、session-dashboard、blinkenbar Tools（给 agent 加工具） 91 afterforge、blender、snyk、android-emulator、nvidia-app、twenty-crm、financial-datasets、markifact、plan-mode Memory（记忆/长期记忆后端） 34 chronicle、cashew、cognee、compartment、cortexlayer、entropicmem、supermemory、lancedb-suite、memory-zvec Models（模型提供商/路由） 30 aihubmix、anyrouter、antigravity-oauth、claude-subscription-directsdk、kiro-provider、oc-free-provider、openrouter-picker、jev-model-router Automation（自动化/定时/看护） 25 bot-forge、custodian、kanban-task-threads、morning-briefing、telegram-notify、self-wake、jev-cron-gate Platforms（消息平台/网关适配） 23 agentchat、hermes-telegram-business、microsoft365、openmail、rocketchat-platform、whatsapp-agent-platform、vk-platform、hermes-rustpush-imessage Web \u0026amp; Browser（web 搜索/抓取/浏览器） 22 brave-search、apify、anysearch、browserpaw、crawl4ai、parallel-search、hermes-plugin-chrome-profiles General（通用/本地化/可观测） 22 hermes-zh、hermes-telemetry、hermes-evolve、cjk_sanitizer、hermes-discord-rpc、vaultwarden、little-canary Voice（语音 TTS/STT/实时通话） 9 deepgram-voice、hermes-talk、hermes-live-voice、volcengine-voice、omnivoice、gemini-live-bridge 7.5 生态规模统计 清单 plugins.list.txt 共 604 条 = 348 个插件页 + 255 个作者页 + 1 个目录总览页。 348 个插件分布在 9 个类别；作者共 255 位；250 个作者页给出星标合计，共 5,686 stars；单个作者最多 13 个插件（3L0935、apoapostolov）。 能力声明：106 个插件共声明 774 个 Tool（单插件最多 41）；88 个插件共 249 个 Hook（最多 12）；71 个插件声明必需环境变量；9 个声明 Middleware。 收录时间：added 日期集中在 2026-09-09 至 2026-09-28，updated 最晚 2026-09-29——目录非常新、增长密集（9 月 15 日单日收录 83 个）。 署名构成：8 个插件署名 by NousResearch（blender、snyk、nvidia-app、nvidia-broadcast、touchdesigner、hermes-memory-wiki、hermes-telegram-business、claude-subscription-directsdk）；卡片徽标以 \u0026ldquo;❖ Community\u0026rdquo; 为主，另有 Official 徽标与 \u0026ldquo;independent of Nous Research\u0026rdquo;（Hermes Labs / Hermes Monitor contributors）等说明。 质量标记：94 个插件页带 \u0026ldquo;Reviewed source @ \u0026lt;commit\u0026gt;\u0026rdquo; 审核快照；103 个带 Repository 链接、59 个带 Documentation 链接。 八、开发者指南（developer-guide） 覆盖官方文档 developer-guide 板块 56 个页面（架构、Agent Loop、工具运行时、插件体系、Provider、Gateway、会话存储、上下文压缩与缓存、Skills、Contributing 等）。\n8.1 整体架构 顶层入口：CLI（cli.py）、Gateway（gateway/run.py）、ACP（acp_adapter/）、Batch Runner、API Server，以及作为 Python 库直接调用。其下是三大核心组件：Prompt Builder（prompt_builder.py）、Provider Resolution（runtime_provider.py）、Tool Dispatch（model_tools.py）。\n核心编排引擎是 AIAgent 类。run_agent.py 现在只是薄门面（thin facade）：主循环在 agent/conversation_loop.py，每个 turn 阶段拆到 agent/turn_*.py（iteration prep、API call、API error、overflow、truncation、recovery），构造函数装配在 agent/agent_init.py，从 prompt 组装、工具分发到 provider failover 的其余逻辑分散在专注的 agent/*.py 模块中，以 mixin 方式混入 AIAgent。\n主要子系统：Agent Loop、Prompt System、Provider Resolution、Tool System、Session Persistence、Messaging Gateway、Plugin System、Cron、ACP Integration、Trajectories，另有 Design Principles 与 File Dependency Chain。数据流三条典型路径：CLI Session、Gateway Message、Cron Job。\n代码归属与测试：codebase-ownership 把每个子系统映射到源码目录、改前应先读的文档入口与测试目录。测试镜像源码（tests mirror source）：tools/ 的代码在 tests/tools/ 测试，插件在 tests/plugins/\u0026lt;type\u0026gt;/。\nPrompt 组装的关键设计：Hermes 刻意区分「缓存的 system prompt 状态」与「API 调用时的临时追加」，因为直接影响 prompt caching 效果。缓存的 system prompt 由 agent/system_prompt.py 按三个有序 tier 组装：\nstable：身份 SOUL.md（或回退）、tool/model 指引、coding operating brief； context：调用方传入的 system_message、项目上下文文件 .hermes.md / AGENTS.md / CLAUDE.md / .cursorrules、git workspace 快照、operator 指令与 platform hints； volatile：skills 索引、MEMORY.md 记忆快照、USER.md 用户画像快照、外部 memory provider 等。 8.2 Agent Loop 与工具运行时 AIAgent 的核心职责：用 prompt_builder.py 组装有效 system prompt 与工具 schema；选择正确的 provider/API mode（chat_completions、codex_responses、anthropic_messages）；发起可中断、支持取消的模型调用；执行工具调用（顺序或经线程池并发）；维护对话。两个入口：简单接口返回最终响应字符串，完整接口返回含 messages、metadata、usage stats 的 dict。其余机制包括 turn 生命周期、消息格式与交替规则、agent-level tools、callback surfaces、iteration budget、fallback model、压缩与持久化。\n工具运行时（Tools Runtime）：工具是自注册函数，按 toolset 分组，经中央 registry/dispatch 执行。tools/ 下每个工具文件在模块层调用 registry.register(...) 自我声明，签名为 name=（工具名）、toolset=、schema=（模型可见参数）、handler=、check_fn=（可用性）、requires_env=；model_tools.py 负责导入/发现工具模块并构建模型的 schema 列表；discover_builtin_tools() 负责发现，get_tool_definitions() 负责按 toolset 过滤。此外有 agent-loop 拦截工具、async bridging、DANGEROUS_PATTERNS 审批流、terminal/runtime environments、并发等。\n8.3 扩展点（先选路径） Hermes 有多个不同的可插拔接口——有的用 Python register_* API，有的是配置驱动或 drop-in 目录。\n通用插件（Build a Hermes Plugin）：用于自定义工具、hooks、slash commands、skills 或 CLI 子命令。含 plugin.yaml（manifest v2）、能力声明、Python 依赖与依赖安全策略、工具 schema、工具 handler，可用 Plugin Doctor 校验；另有 Portable Agent Plugins v1 包、原生插件兼容性契约与弃用策略。 Provider/Backend 插件（drop-in 目录 + ABC）：Model Providers、Memory Providers、Context Engine、Secret Sources，以及 Web Search/Image Gen/Video Gen/Browser/Terminal Environment 等后端。统一模式是「放一个目录、声明 profile」，多为单选、配置驱动、经 hermes plugins 管理。浏览器后端放 plugins/browser/\u0026lt;name\u0026gt;/（内置 Browserbase、Browser Use、Firecrawl）；图像生成 plugins/image_gen/\u0026lt;name\u0026gt;/；视频生成 plugins/video_gen/\u0026lt;name\u0026gt;/；Web 搜索 plugins/web/\u0026lt;name\u0026gt;/；模型 provider 放 $HERMES_HOME/plugins/model-providers/，可覆盖内置；上下文引擎实现 ContextEngine ABC（agent/context_engine.py，内置默认 ContextCompressor），同时只能激活一个且从不自动激活；记忆 provider 从 Bundled / User（$HERMES_HOME/plugins/\u0026lt;name\u0026gt;/）/ Project（./.hermes/plugins/\u0026lt;name\u0026gt;/）等来源按优先级发现；Secret Source 实现 SecretSource ABC（内置 Bitwarden/1Password/通用命令助手，其余做成插件）；终端后端内置 local、Docker、Singularity、Modal、Daytona、Vercel Sandbox、SSH（tools/environments/），第三方以插件接入并由 terminal.backend 选择。 Skill（首选扩展方式）：比工具好创建、无需改 agent 代码、可社区分享。判定标准：能力可表达为「instructions + shell 命令 + 现有工具」（arXiv 搜索、git 工作流、Docker 管理、PDF 处理）→ 写 Skill；需要 API key 端到端集成、自定义处理逻辑、二进制/流式/实时事件（浏览器自动化、TTS、视觉分析）→ 写 Tool。SKILL.md 支持平台限定（macos/linux/windows）、条件激活、环境变量需求、加载时安全配置、config.yaml 配置项、凭据文件需求；guidelines 要求无外部依赖与渐进式披露。 内置工具：默认应走插件；只有确实要往仓库加 tools/ 与 toolsets.py 的内置工具时才按 Adding Tools 走。添加工具只动 2 个文件（新建工具文件、加入 toolset），discovery import 步骤已不再需要。 内置 Provider：任意 OpenAI 兼容端点已可经 custom provider 路径接入；内置 provider 需贯通多层：hermes_cli/auth.py（凭据发现）→ hermes_cli/runtime_provider.py（运行时数据）→ run_agent.py（用 api_mode 决定请求形态）→ hermes_cli/models.py / hermes_cli/main.py（CLI 菜单与别名）。实现路径分 Path A（OpenAI 兼容）与 Path B（原生适配）。 其他扩展面：Desktop Plugin SDK（单个 ESM 文件 default-export HermesPlugin，只 import @hermes/plugin-sdk，可贡献 panes、页面与侧边栏、状态栏、命令面板与快捷键、主题等）；CLI 五个扩展缝；平台适配器（推荐插件路径，扩展 gateway/platforms/base.py 的 BasePlatformAdapter，实现 connect() / disconnect()）；Hermes Middleware（调用 provider 前改写 LLM 请求 kwargs、在护栏/审批/钩子前改写工具参数）；Observer hooks（只读遥测契约，面向 Langfuse、OpenTelemetry 类采集器）；插件 LLM 访问 ctx.llm（complete() / complete_structured()）；Subagent Lifecycle API（ctx.subagent_lifecycle，须在 agent turn 内调用）。 8.4 Provider 与运行时解析 共享的 provider 运行时解析器贯穿：hermes_cli/runtime_provider.py、hermes_cli/auth.py（provider registry 与 resolve_provider()）、hermes_cli/model_switch.py（CLI + gateway 共用的 /model 切换管线）、agent/auxiliary_client.py、providers/（ABC + registry：ProviderProfile、register_provider、get_provider_profile、list_providers）与 plugins/model-providers/\u0026lt;name\u0026gt;/（bundled，声明 api_mode、base_url、env_vars、fallback_models）。用户插件放 $HERMES_HOME/plugins/model-providers/\u0026lt;name\u0026gt;/ 可覆盖内置。API mode 覆盖 chat completions、原生 Anthropic、OpenAI Codex（Responses）、Bedrock 原生接口等；支持 auxiliary model routing 与 fallback models。Model provider 插件还可声明模型能力并提供可覆盖 hook（例如 Qwen 把纯文本 content 规范化为 list-of-parts 数组并注入 cache_control，Kimi 重写工具调用 JSON），并支持外部进程（ACP）provider。\n8.5 上下文压缩、缓存与会话存储 双压缩系统 + Anthropic prompt caching：核心文件 agent/context_engine.py（ABC）、agent/context_compressor.py（默认引擎）、agent/prompt_caching.py、gateway/run_turn.py（session hygiene）、agent/compression_facade.py。两级触发：Gateway Session Hygiene（85% 阈值）与 Agent ContextCompressor（50% 阈值、可配置）。支持 per-model 阈值覆盖（model_thresholds，子串匹配、最长 key 优先，如 \u0026quot;glm-5.2\u0026quot;: 0.40）、in-place compaction（单一稳定 session id）、失败冷却与 provider 实证的 overflow 处理；Bedrock context 解析优先级为：显式覆盖 \u0026gt; provider 确认的限制 \u0026gt; 缓存/探测/静态表。Micro-compaction 把压缩成本分期偿还：每个完成的 turn 把最旧的一段未吸收 exchange 折入滚动摘要，用户消息永不被压缩。\n会话存储：SQLite 数据库 ~/.hermes/state.db，持久化 session 元数据、完整消息历史与模型配置（取代早期 per-session JSONL 文件）。源码为 hermes_state.py（facade）+ hermes_state_*.py 兄弟模块（schema、fts、search、compression、portability、gateway）。get_hermes_home() 是状态与配置的权威解析器：context-local override → HERMES_HOME 环境变量 → 平台默认（macOS/Linux 为 ~/.hermes，Windows 为 %LOCALAPPDATA%/hermes）。sessions / messages 是正典记录，messages_fts* 是派生搜索索引；FTS 损坏时记录 fts_stale、移除同步触发器、不带派生索引重试写入并降级搜索。Trajectory 以 ShareGPT 兼容 JSONL 落盘（trajectory_samples.jsonl / failed_trajectories.jsonl）。\n8.6 Gateway 与会话生命周期 消息网关是长驻进程，经统一架构连接 20+ 外部消息平台。关键文件：gateway/run.py（GatewayRunner 门面）、gateway/session.py（SessionStore）、gateway/delivery.py、gateway/pairing.py（DM 配对授权）、gateway/channel_directory.py、gateway/hooks.py。会话数据模型为 SessionSource / SessionEntry / SessionContext，会话键由 build_session_key 生成，另有二级消息守卫、running-agent 守卫、多用户隔离等机制。Multiplexing 默认开启（gateway.multiplex_profiles 默认 true）：一个 gateway 进程服务该安装的所有 profile，按 profile 隔离持久化、会话通道与 secret scope（agent/secret_scope.py）。平台适配器链路为：User ↔ Messaging Platform ↔ Platform Adapter ↔ Gateway Runner ↔ AIAgent，推荐以插件方式添加（零核心改动），内置方式需改 20+ 文件。网关还提供 OTLP/HTTP 监控平面（content-free，/v1/metrics 的 hermes.gateway.* 指标）。对外集成提供三种协议驱动同一 AIAgent：ACP（JSON-RPC over stdio，入口 hermes acp）、TUI gateway（JSON-RPC over stdio/WebSocket）、API server（HTTP + SSE，gateway/platforms/api_server.py，兼容 Open WebUI、LobeChat、LibreChat 等）。\n8.7 关键约定与贡献 贡献优先级：1）bug 修复（崩溃、错误行为、数据丢失）；2）跨平台兼容（macOS、各 Linux 发行版、WSL2）；3）安全加固（shell 注入、prompt 注入、路径穿越）；4）性能与健壮性；5）新 skills；6）新 tools（很少需要，多数能力应是 skill）；7）文档。 默认走插件/skill 路线扩展，避免为个人或项目级需求改动核心；skill 优先于 tool。 内置改动遵循各子系统既有分层与文档入口（如 provider 改动要保持 auth → runtime → api_mode → CLI 全链路一致）。 测试目录镜像源码结构；插件与后端遵守兼容性契约与弃用策略；文档记录跨平台注意点（文件编码、进程管理、路径分隔符）。 CLI 内部机制有自身约定：更新管线按 plan → snapshot → apply → restart-per-kind → verify → report 阶段推进；进程身份绝不能靠 argv 子串推断。 Cron 子系统约定：cron/jobs.py（作业模型与 jobs.json 原子读写）、cron/scheduler.py（调度循环）、tools/cronjob_tools.py（cronjob_manage 工具）、gateway/run.py（网关内 tick）、hermes_cli/cron.py（hermes cron 子命令）；支持相对延迟、间隔、cron 表达式等四种调度格式，并有 fresh session 隔离、skill/script-backed jobs 等设计。 九、教程（guides，35 篇）要点 Cron 自动化：5 个实战模式（如网站变更监控）；script 参数在每次执行前运行脚本，其 stdout 成为 agent 上下文；不需要 LLM 时用 script-only cron 或 hermes send。 Script-Only Cron（无 LLM）：no-agent 模式，脚本决定是否报警（有输出即发）；hermes cron create \u0026quot;every 5m\u0026quot; ...、hermes cron run \u0026lt;job_id\u0026gt; 测试、hermes cron edit \u0026lt;job_id\u0026gt; --interpreter \u0026quot;...\u0026quot; 指定 Python。 Cron 排障：按序查 job 状态（须 [active]，[completed] 可能是次数耗尽）、schedule 格式、投递配置、权限（~/.hermes/cron/jobs.json 需可读写）、技能是否安装；命令 hermes cron list/run/edit。 Daily Briefing Bot：每天早晨自动搜索 → 汇总 → 发 Telegram/Discord，无代码；前置 gateway（hermes gateway install、sudo hermes gateway install --system 或前台 hermes gateway）与 FIRECRAWL_API_KEY；用自然语言或 /cron add \u0026quot;0 8 * * *\u0026quot; \u0026quot;…\u0026quot; 建任务；提示词必须完全自包含（cron 是全新会话）；deliver: \u0026quot;local\u0026quot; 存到 ~/.hermes/cron/output/。 GitHub PR Review Agent：cron 每 2 小时轮询（hermes cron create \u0026quot;0 */2 * * *\u0026quot; \u0026quot;…\u0026quot;），配合已登录的 gh（gh pr list、gh pr diff）；无需公网端点；也可用 gh pr review NUMBER --repo REPO --approve/--request-changes 把结论发回 PR。 团队 Telegram 助手：向 @BotFather 发 /newbot 拿 token；hermes gateway setup 向导或手写 TELEGRAM_BOT_TOKEN、TELEGRAM_ALLOWED_USERS（多人逗号分隔）、TELEGRAM_HOME_CHANNEL；每成员独立会话、按用户授权。 技能用法：hermes skills list 查看；以 /技能名 调用；hermes skills install official/research/arxiv、支持从 URL 安装；hermes skills config \u0026lt;skill\u0026gt; 配置，值存 config.yaml 的 skills.config.*。 Voice Mode：三种体验（CLI 麦克风、Telegram/Discord 语音回复、Discord 语音频道实时对话）；顺序：先跑通普通聊天 → 装 extras → 系统依赖（portaudio、ffmpeg、opus、espeak-ng）→ 选 STT/TTS（本地 STT+Edge TTS 最省）→ 配置（hermes setup tts）；/voice on、/voice tts；Discord 需 Connect/Speak 权限。 SOUL.md：实例的「首要身份」，位于 system prompt 最前，规定语气、风格与回避项（不用于仓库规范/项目流程）；会话内可 /personality teacher 临时换风格。 排障「我的 agent 变笨了」：7 步顺序——① 当前模型（/model、/status；/model 默认仅本会话，--global 才持久化；dashboard 改模型只对新会话生效）② 上下文用量（/usage、/context、/compress）③ 检测到的上下文长度 ④ 记忆是冻结快照 ⑤ 记忆有界且经整理 ⑥ 技能/工具是否加载 ⑦ 压缩副作用。 各家模型接法：Gemini 原生 provider（GOOGLE_API_KEY / GEMINI_API_KEY）；Vertex AI（OpenAI 兼容端点+OAuth2 服务账号/ADC，Gemini 3.x 预览须 region: global，VERTEX_PROJECT_ID / VERTEX_REGION）；AWS Bedrock 原生 provider（IAM、Guardrails、跨区域推理）；xAI Grok OAuth（浏览器 device-code，SuperGrok 或 X Premium+，无需 XAI_API_KEY）；MiniMax OAuth（PKCE 浏览器登录，Anthropic Messages 兼容传输，端点 https://api.minimax.io/anthropic 或中国 https://api.minimaxi.com/anthropic）；Microsoft Foundry/Azure（AZURE_FOUNDRY_API_KEY + AZURE_FOUNDRY_BASE_URL，或 Entra ID 免密钥 model.auth_mode: entra_id）；本地模型（桌面 Settings → Providers → Local Models 一键装 llama.cpp，或手动 Ollama/MLX）。 其他教程一句话：专属邮箱（Himalaya 技能走 IMAP）；Delegation（子代理各自会话/终端/工具集，只回最终摘要）；hermes send 推脚本输出（如 make | hermes send --to slack:#builds）；作为 Python 库（import AIAgent）；从 OpenClaw 迁移（hermes claw migrate，Claude Code/Codex 用 hermes import-agent）；Teams 会议管道（hermes teams-pipeline validate、token-health）；MCP 日常使用与用 MCP 管理 Hermes Cloud；Webhook 触发 PR 评论（更实时）；OAuth over SSH（Spotify/远程 MCP 的 loopback 回调走 ssh -L）；Mac 本地 LLM 与 Ollama 零成本；Nemotron 3 Ultra 限免；Nous Portal 端到端指南；工作机安全（默认 approvals.mode: smart）；Desktop 原生登录（RFC 8252）。 Tips：重复要求写进 AGENTS.md 自动读取；提示要具体（文件、行号、报错原文）。 十、参考（reference，14 页）要点 CLI 命令：入口 hermes [global-options] \u0026lt;command\u0026gt; [subcommand/options]；全局选项 --version/-V、--profile/-p、--resume/-r \u0026lt;session\u0026gt;（latest 恢复最近会话）、--continue/-c、--in \u0026lt;dir\u0026gt;。顶层含 hermes chat（脚本化一次性 hermes -z \u0026lt;prompt\u0026gt;、--format stream-json、--usage-file）、model、moa、fallback、gateway、auth、send、cron、skills、bundles、curator、plugins、mcp、tools、webhook、hooks、kanban、profile、dashboard、desktop、doctor、status、usage、update、backup / import、logs、config、skin 等。 一次性运行退出码：0 完成、1 失败/部分/预算耗尽/未运行、130 被中断，provider 限流等临时故障退出 75（EX_TEMPFAIL）供调度器重排。 斜杠命令：CLI 与消息平台两个入口，同由 hermes_cli/commands.py 的 COMMAND_REGISTRY 驱动；技能会暴露为动态斜杠命令，与内置同名时内置优先、技能用 /skill \u0026lt;name\u0026gt;；平台可配 admin/user 两级权限（allow_admin_from、user_allowed_commands）。 其余参考页：环境变量（密钥放 ~/.hermes/.env，非机密行为放 config.yaml）；MCP 配置（stdio/HTTP、ssl_verify、client_cert、工具过滤）；工具集（core/composite/platform，hermes chat --toolsets web,file,terminal、debugging）；内置工具约 100 个（10 浏览器+2 CDP、4 文件、2 终端、11 桌面 GUI、2 web、14 kanban 等）；捆绑技能装在 ~/.hermes/skills/，误删用 hermes skills reset \u0026lt;name\u0026gt; --restore；可选技能 hermes skills install official/\u0026lt;category\u0026gt;/\u0026lt;skill\u0026gt;；模型目录（在线 JSON manifest，离线回退内置快照）；profile 命令（use/create/describe/show/alias/export/import/install/update）；包管理（hermes pm 只管工具二进制与 Python 依赖）；CLI 符号表；FAQ（支持任何 OpenAI 兼容 API；数据只发所配 provider、无遥测，本地存 ~/.hermes/；可离线本地模型，base_url 如 http://localhost:11434/v1 、context 至少 64000；Hermes 本身 MIT 免费，只为模型用量付费）；自动化蓝图目录。 十一、集成（integrations） Nous Portal（官方推荐）：一次 OAuth 取代各家账号、API key 与账单；一个订阅 300+ 模型；Tool Gateway 五项：web 搜索与抓取、图像生成（FAL，9 模型）、TTS（OpenAI）、云浏览器（Browser Use）、云终端沙箱（Modal，可选）。最快路径 hermes setup --portal（等价 hermes portal）：Portal OAuth → 选模型 → 写 config.yaml → 开 Tool Gateway；hermes portal info/status/tools/open 查看；refresh token 存 ~/.hermes/auth.json，每次推理换短命 JWT；可逐工具混用自家后端（hermes tools）。 LLM 与模型 Provider：覆盖云 API（OpenRouter、Anthropic 等）到自托管端点（Ollama、vLLM）及路由/回退；hermes model 交互配置，也支持 OpenAI Codex 订阅、GitHub Copilot 等登录。 Buzz（Block 开源、基于 Nostr）三种接法：桌面托管运行时、buzz-acp 中继桥、接进 gateway 作为原生消息平台。 集成总览还包括：AI providers 与路由、MCP 工具服务器、搜索后端、浏览器自动化、语音/TTS、IDE 集成、编程访问、记忆与个性化、消息平台、协作工作区、家庭自动化、插件、训练与评估。 附录：本次抓取的统计与方法 板块 页数 板块 页数 plugins（插件目录） 604 reference（参考） 14 user-guide/skills（技能） 212 getting-started（上手） 7 user-guide/features（功能） 56 integrations（集成） 4 developer-guide（开发） 56 首页 / 用户故事 2 guides（教程） 35 合计 1055 user-guide/messaging（消息） 35 抓取用时 98 秒 user-guide 主体 30 产出体积 19 MB Markdown 抓取方式：crawl4ai 0.9.4 的 AsyncHTTPCrawlerStrategy（HTTP 模式，不启浏览器；站点是服务端渲染，足够）+ arun_many 分批并发（semaphore_count=8），每页存一个 Markdown 文件（带 URL 与标题），逐页校验成功率 100%。 整理方式：先把每页压成「标题 + 正文要点 + 小标题」的摘要素材（去导航噪声），再把 12 个板块分成 6 组交给 6 个子代理并行写成中文摘要，最后由主代理合并成本文。 局限：① 目录类页面（604 个插件页、212 个技能页）在摘要里按统计口径处理（数量/分类/代表项），逐条细节请查抓取原件；② 文档站内容会随版本更新，本文反映 2026-09-30 的快照。 ","permalink":"https://yutterx.com/posts/hermes-docs-summary/","summary":"1055 页官方文档全站抓取，12 个板块压缩成一篇中文摘要；命令、配置键与路径保留英文原文。","title":"Hermes Agent 官方文档中文摘要"},{"content":" 一场持续三十多年的「长期主义 + 软硬件协同」 面向普通读者的中文历史梳理 ｜ 含时间线、关键决策、数据与来源 ｜ 资料截止：2026-09-17\n先说结论：英伟达不是突然押中了 AI 英伟达的崛起可以概括为四次连续押注：先用 3D 图形芯片切入 PC 游戏市场；再把 GPU 做成可编程的并行计算器；随后用 CUDA、软件库和开发者生态把芯片变成平台；最后补齐网络、CPU、系统和云服务，把「显卡公司」升级为数据中心基础设施公司。AI 热潮是放大器，不是故事的起点。[1][3]\n💡 一句话看懂：英伟达真正的护城河不是单独某一代 GPU，而是「GPU + CUDA 软件栈 + 开发者生态 + 网络与系统 + 云厂商渠道」的组合。\n这份文档怎么读 主线：1993 年创立 → 1995 年首款产品失利 → 1997 年 RIVA 128 翻身 → 1999 年 GeForce 定义 GPU → 2006 年 CUDA 铺路 → 2012 年 AlexNet 引爆 AI → 2020 年 Mellanox 补齐网络 → 2023—2025 年进入全栈 AI 基础设施。 证据分层：SEC 年报与 NVIDIA 官方材料用于时间线、产品和财务事实；Computer History Museum、Sequoia 访谈和技术论文用于补充创始人叙述与技术背景。 注意：公司年报包含企业自述和前瞻性表达；本文把公司自己的判断标成「公司称/年报称」，不把宣传口号当作独立审计结论。 一张图看懂三十多年转向 图 1｜从 3D 图形到 AI 基础设施的关键节点（根据 [1][3][10] 及各章节来源整理）\n一、1993—1995：在 PC 3D 图形的缝隙里创业 1993 年，Jensen Huang（黄仁勋）、Chris Malachowsky 和 Curtis Priem 创立 NVIDIA。三位创始人都具备芯片、系统或图形工程背景，他们判断 PC 不会只用来处理文档，3D 图形和互动娱乐会成为下一轮计算平台。[1][2]\n这个判断今天看起来顺理成章，但当时并不容易。创业公司既没有英特尔那样的制造能力，也没有成熟的产品渠道，最现实的办法是做一家「无晶圆厂」芯片公司：自己设计芯片，把制造交给代工厂，再通过显卡板卡厂商和 OEM 厂商进入市场。\nNVIDIA 的第一款重要产品是 1995 年推出的 NV1 多媒体处理器。它把 2D、3D、视频、音频和游戏接口集中到一块芯片上，但采用了与行业主流不同的曲面/二次曲面路线。随后 Microsoft 的 DirectX 生态更坚定地转向三角形图元，这让 NV1 的技术选择陷入被动。[1][4]\n⚠️ 第一次教训：技术上「很酷」不等于生态上「可用」 NV1 的失败不是因为 NVIDIA 没有工程能力，而是因为它押错了接口和开发者生态。后来 NVIDIA 对 RIVA 128 的修正，本质上是回到行业标准、优先解决客户能不能用的问题。\n二、1995—1997：濒临倒闭时，靠 RIVA 128 翻身 NV1 失利后，公司资源迅速收缩。关于这一段，Jensen Huang 在后来的访谈中反复讲过一个版本：NVIDIA 曾经距离现金耗尽非常近，Sega 的支持给了公司继续开发下一代产品的时间。[4] 这是创始人回忆，不应被当作审计过的「剩余现金天数」；但它准确揭示了当时的风险程度。\nNVIDIA 随后放弃 NV1 的曲面路线，转向兼容 Direct3D 的三角形图形架构，做出了 RIVA 128。1998 年的 NVIDIA 历史新闻稿称，RIVA 128 在上市不到四个月内出货超过一百万颗，并获得大量 OEM 和板卡厂商采用。[8] 这次转向把公司从「有想法但没市场」的状态，拉回到主流 PC 图形市场。\n阶段 错误/选择 结果 NV1 坚持非主流的曲面图元路线 与 DirectX 生态错位，产品失利 RIVA 128 改用三角形图元，兼容主流 API 快速获得 OEM 与板卡厂商采用 组织层面 在危机中集中资源，不再分散战线 把有限现金押在一颗关键芯片上 RIVA 128 的意义不只是一款销量不错的显卡：它让 NVIDIA 形成了一个后来不断重复的能力——快速吸收失败、重新选择标准、把产品做成可规模化的平台组件。\n三、1999—2005：GeForce 把「显卡」变成 GPU 类别 1999 年，NVIDIA 推出 GeForce 256，并把它定义为「GPU」（Graphics Processing Unit）。NVIDIA 后来的年报把这一产品视为 GPU 时代的起点：GPU 不再只是显示像素的附件，而是负责一部分几何、光照和并行图形计算的专用处理器。[1][3]\n同年 NVIDIA 上市。上市本身不是技术突破，但它给了公司更稳定的融资和研发能力，使 NVIDIA 能以较快节奏迭代芯片、驱动和开发工具。接下来的竞争不只是「谁的显卡跑分高」，还包括谁能让游戏开发者、操作系统和板卡厂商更快采用自己的架构。\n产品层：不断提高图形处理能力，把 GPU 变成 PC 游戏和专业图形的核心计算单元。 生态层：围绕 DirectX、OpenGL、驱动和开发者工具做兼容与优化。 商业层：通过芯片设计、板卡伙伴和 OEM 渠道扩大出货，而不是自己承担全部制造和渠道。 这一阶段的关键不是某一张显卡，而是 NVIDIA 逐渐掌握了「芯片架构—驱动—开发者—游戏厂商—OEM」这条链路。后来 CUDA 能够建立生态，和这段图形生态积累直接相关。\n四、2006—2011：CUDA 是最重要、也最容易被忽略的转折 2006 年，NVIDIA 发布 CUDA，把 GPU 的大量并行计算能力开放给图形以外的应用。官方发布信息把 CUDA 描述为一种新的 GPU 计算架构，并配套提供面向 GPU 的 C 编译器和开发环境。[5]\n这一步的难点在于：游戏显卡已经有市场，但「让科研人员、工程师和企业把 GPU 当通用计算器」在当时并没有现成的大众需求。NVIDIA 需要同时做硬件、驱动、编译器、数学库、示例代码、培训和开发者支持。也就是说，它主动把卖一块芯片的问题，升级成了建设一套编程平台的问题。\n🎯 真正的长期下注：如果 NVIDIA 只把 GPU 当作游戏显卡，它的天花板会受限于 PC 游戏周期；CUDA 让 GPU 进入科学计算、金融、医疗、渲染和机器学习，也让后来的 AI 需求可以直接调用既有基础设施。\n为什么 CUDA 比单纯的硬件领先更重要？\n迁移成本：开发者把代码、模型、库和部署流程建立在 CUDA 上后，不会轻易换平台。 规模效应：开发者越多，NVIDIA 越有动力维护库和工具；软件越完整，客户越愿意买 NVIDIA 硬件。 应用扩展：同一套 GPU 可以服务游戏、科研、高性能计算、深度学习和生成式 AI。 五、2012：AlexNet 让 GPU 与深度学习相遇 2012 年，Alex Krizhevsky、Ilya Sutskever 和 Geoffrey Hinton 的卷积神经网络在 ImageNet 图像识别竞赛中取得突破性成绩，论文明确写到模型使用了两块 GTX 580 GPU 训练。[7] NVIDIA 的 2025 年 10-K 则把这件事称为 AI 的「Big Bang moment」，并强调 AlexNet 是在 NVIDIA GPU 上训练的。[3]\n更准确的说法是：AlexNet 并不是 NVIDIA 单独「发明」的，神经网络算法、数据集、训练方法和 GPU 计算共同促成了突破。但 NVIDIA 之前已经把硬件和 CUDA 软件栈准备好，因此当深度学习需要大规模并行计算时，它成为最容易被研究者采用的平台之一。\n时间 外部变化 NVIDIA 已经准备好的东西 2006 GPU 计算开始走出图形领域 CUDA、编译器、开发者工具 2012 深度神经网络在视觉任务上突破 GPU 并行计算 + CUDA 生态 2017 AI 计算需要更专用的矩阵能力 Tensor Core GPU 2023—2025 生成式 AI 需要数据中心规模的训练与推理 Hopper/Blackwell、网络、CPU、系统与软件 这就是英伟达故事里最容易被忽视的时间差：大众在 2023 年 ChatGPT 之后才普遍注意到 AI 算力，但 NVIDIA 已经为这类需求准备了十多年。\n六、2017—2022：从 GPU 芯片走向数据中心系统 NVIDIA 不是只把消费级 GPU 换个名字卖给数据中心。公司逐渐推出面向 AI 的 Tensor Core GPU，建设 DGX 等系统，并围绕训练、推理、科学计算和企业部署开发软件。NVIDIA 2025 年 10-K 的自述显示，截至 FY2025，公司提供的不仅是 GPU，还包括 CPU、DPU、互联、系统、软件和服务。[3]\n2020 年完成对 Mellanox 的收购，是这一过程中的关键一步。NVIDIA 官方新闻稿将其定位为把计算与高速网络结合起来，以推动下一代数据中心。[6] 对 AI 集群而言，GPU 算力再强，如果 GPU 之间、服务器之间的通信跟不上，整体训练效率仍会受限；网络因此从「配件」变成系统性能的一部分。\nGPU：负责大规模并行计算和神经网络训练/推理。 CPU：负责通用控制、数据准备和系统管理；2023 年推出 Grace 数据中心 CPU。[3] DPU/网络：处理数据搬运、存储、安全与服务器间通信。 软件：CUDA、数学库、训练/推理工具、企业 AI 软件和云服务。 这一步改变了客户关系：客户购买的不再只是一块插卡，而是一套可以部署在云端或自有机房的加速计算平台。\n七、2023—2025：生成式 AI 把长期布局变成大规模收入 生成式 AI 和大语言模型的普及，迅速放大了对训练和推理基础设施的需求。NVIDIA 在 FY2025 年报中披露：公司全年收入为 1305 亿美元，数据中心收入为 1152 亿美元；这些数字属于 NVIDIA 报告的财务年度，不等同于自然年 2025，也不代表未来必然延续。[10]\n2024 年 NVIDIA 发布 Blackwell 平台，官方新闻稿把它定位为面向大规模生成式 AI 的新一代计算平台。[9] 到 FY2025，NVIDIA 的叙事已经从「GPU 供应商」变成「数据中心级计算基础设施提供商」，包括 GPU、CPU、DPU、互联、服务器系统、软件和云服务。[3][10]\n🏭 规模化的本质：AI 模型越大，客户越关心整套系统的吞吐、能耗、网络通信、软件兼容、部署速度和供应能力。英伟达的优势因此从单点芯片性能，扩展到整个平台的交付能力。\n八、英伟达为什么能发家？五个关键原因 选对长期问题：它没有只追逐某一代游戏画面，而是持续押注「并行计算会越来越重要」。3D 图形、科学计算、深度学习和生成式 AI 看似不同，底层都需要大量并行运算。 失败后快速改方向：NV1 的路线失误没有被包装成成功，NVIDIA 改用主流三角形图元，做出 RIVA 128。创业公司真正稀缺的不是永远正确，而是有能力在现金耗尽前完成方向切换。 把硬件变成软件平台：CUDA 让 GPU 不再只服务游戏开发者，而是成为科研、工程和 AI 开发者的平台。软件生态带来迁移成本和网络效应。 提前建设 AI 所需的底层能力：Tensor Core、CUDA 库、DGX、网络互联和数据中心系统，都是在生成式 AI 爆发前逐步铺设的。 从芯片卖到整套系统：通过 Mellanox、Grace、DPU、互联、企业软件和云服务，NVIDIA 能够优化从芯片到集群的多个层级，而不是只等待板卡订单。 九、这段历史不能只讲成「天才和运气」 英伟达的成功故事很容易被简化为「黄仁勋眼光太准」。这种讲法忽略了风险、失败和外部条件。更完整的理解应该包括以下限制：\n依赖供应链：NVIDIA 采用无晶圆厂模式，制造、封装、先进制程和高带宽存储等环节依赖外部供应商。[3] 需求可能波动：AI 数据中心需求很强，但产品换代快、客户采购周期长，年报也提示需求估计和供应承诺存在不确定性。[3] 竞争不会消失：AMD、英特尔、云厂商自研芯片以及开源软件都可能改变竞争格局。 出口和监管：NVIDIA 年报披露，美国对部分高性能计算产品存在出口许可和限制，政策变化会影响市场和产品设计。[3] 公司叙事有选择性：官方材料擅长讲清战略主线，但对于失败项目、客户集中度和长期风险，仍应以 SEC 风险因素和独立资料交叉验证。 因此，英伟达的发家史不是「永远押中风口」，而是「在多次技术路线、市场周期和现金压力下，持续把下一次计算范式的基础设施提前做出来」。\n十、把英伟达故事讲给别人听：3 分钟版本 英伟达 1993 年由黄仁勋、Chris Malachowsky 和 Curtis Priem 创立，最初押注的是 PC 3D 图形。 第一款产品 NV1 由于技术路线与 DirectX 生态错位而失败，公司一度陷入生存危机。 1997 年 RIVA 128 改用主流三角形图元，帮助公司翻身；1999 年 GeForce 256 把 GPU 这个类别推向市场。 2006 年 CUDA 把 GPU 变成通用并行计算平台。2012 年 AlexNet 在 NVIDIA GPU 上训练成功，深度学习进入新阶段。 此后 NVIDIA 不只做芯片，还做 CUDA 软件、Tensor Core、DGX、网络、CPU、DPU 和云服务。生成式 AI 爆发时，客户购买的是一整套 AI 基础设施。 所以它的核心竞争力不是一夜之间出现的，而是二十多年持续投入换来的平台效应。 附录：几个概念用大白话解释 概念 大白话解释 在英伟达故事中的位置 GPU 擅长同时做大量相似计算的处理器 最初服务 3D 图形，后来服务 AI CUDA 让程序员可以用 NVIDIA GPU 做图形以外计算的软件平台 把硬件优势变成生态优势 Tensor Core 专门加速矩阵/张量运算的硬件单元 针对深度学习训练和推理优化 DPU 专门处理数据中心网络、存储和安全任务的处理器 让 CPU/GPU 不必承担全部数据搬运 数据中心级平台 GPU、CPU、网络、系统、软件和服务的组合 生成式 AI 时代的主要产品形态 资料与来源 以下来源按用途分层。官方年报和新闻稿用于产品、时间线与财务事实；技术论文用于 AlexNet；访谈和博物馆资料用于补充创始人和早期创业叙事。网页内容会更新，访问时间以本文生成日为准。\n[1] NVIDIA Corporate Timeline——NVIDIA 官方公司时间线；用于创立、GPU、GeForce 等节点。https://www.nvidia.com/en-us/about-nvidia/corporate-timeline/ [2] Computer History Museum — Jensen Huang——计算机历史博物馆人物资料；用于创始人背景与公司早期叙事。https://computerhistory.org/profile/jensen-huang/ [3] NVIDIA Corporation, Form 10-K for fiscal year 2025——SEC 原始申报；用于 CUDA、AlexNet、Tensor Core、Mellanox、Grace、Blackwell 和风险因素。https://www.sec.gov/Archives/edgar/data/1045810/000104581025000023/nvda-20250126.htm [4] Sequoia Capital — Crucible Moments: NVIDIA——投资机构访谈；用于 NV1 失败、Sega 支持和 RIVA 128 危机叙述；相关内容属于访谈回忆。https://sequoiacap.com/podcast/crucible-moments-nvidia [5] NVIDIA Unveils CUDA — The GPU Computing Revolution Begins——NVIDIA 2006 年 CUDA 发布材料的网页存档。https://web.archive.org/web/20200703112618/http://www.nvidia.com/object/IO_37226.html [6] NVIDIA Completes Acquisition of Mellanox——NVIDIA 官方新闻稿；用于 2020 年网络与数据中心战略。https://nvidianews.nvidia.com/news/nvidia-completes-acquisition-of-mellanox-creating-major-force-driving-next-gen-data-centers [7] ImageNet Classification with Deep Convolutional Neural Networks——NIPS 2012 论文；用于 AlexNet 使用 GPU 的技术依据。https://papers.nips.cc/paper_files/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html [8] NVIDIA Ships Over One Million RIVA 128 Chips——NVIDIA 历史新闻稿网页存档；用于 RIVA 128 的出货与市场转折。https://web.archive.org/web/20110326212747/http://www.nvidia.com/object/IO_20020114_4455.html [9] NVIDIA Announces Financial Results for Q1 FY2025——NVIDIA 官方新闻稿；用于 Blackwell 平台与生成式 AI 基础设施叙述。https://investor.nvidia.com/news/press-release-details/2024/NVIDIA-Announces-Financial-Results-for-First-Quarter-Fiscal-2025/default.aspx [10] NVIDIA 2025 Annual Report——NVIDIA FY2025 年报；用于收入与数据中心收入数字。https://s201.q4cdn.com/141608511/files/doc_financials/2025/annual/NVIDIA-2025-Annual-Report.pdf 阅读边界：本文是一份历史与商业技术梳理，不构成股票投资建议。财务数字来自公司年报；估值、股价和未来预测没有纳入正文，避免把市场价格波动误写成企业历史事实。\n","permalink":"https://yutterx.com/posts/nvidia-rising/","summary":"三十多年的「长期主义 + 软硬件协同」：从 3D 图形到 AI 基础设施，英伟达的四次连续押注与关键转折。","title":"英伟达发家史：从显卡到 AI 基础设施"},{"content":" 素材 › 剪辑 › 音频 › 调色 › 交付 研究范围：官方 Blackmagic Design 资料 + YouTube + Bilibili + 公开网页实践资料。检索时间：2026-09-14。X 公共搜索在当前环境触发登录墙，已在来源与覆盖说明中明确标注。\n先给结论：不要从「学会所有功能」开始 达芬奇不是一个单一页面，而是一套完整的后期制作工作室。新手最容易犯的错误，是一打开就钻进调色节点、Fusion 特效或 AI 工具，最后连一条视频都没有导出。正确顺序是：先完成一条 30–60 秒短片，再按实际需要补齐调色、音频、代理、Fusion 和版本 21 新功能。\n本教程的最小目标 第一条练习片只要求完成 7 件事：导入 3 个视频片段 → 剪出顺序 → 加一段音乐 → 加一个标题 → 做一次基础音量调整 → 做一次克制的亮度/饱和度调整 → 导出 MP4 并在播放器里从头到尾检查。\n推荐学习路径 阶段 你要学会什么 完成标准 1. 跑通主流程 新建项目、导入、时间线、剪切、导出 能独立导出第一条视频 2. 提升可看性 标题、转场、关键帧、基础音频 画面不乱、声音不爆、字幕可读 3. 画面统一 节点、色轮、示波器、简单匹配 镜头之间不忽冷忽暖 4. 提速与稳定 代理、缓存、备份、项目归档 素材多、电脑弱也能稳定工作 5. 按需进阶 Fusion、AI、Photo、协作、HDR 有具体需求再学，不为「全会」而全会 依据：官方训练体系明确覆盖 Edit、Color、Fairlight、Fusion、Deliver；Casey Faris 的 Resolve 21 入门课也按 Media → Interface → Edit → Color → Fusion → Fairlight → Delivery 组织。[O1][Y1]\n1. 先认识 DaVinci Resolve 21 1.1 21 版新增什么？ Resolve 21 的大变化包括 Photo 页面、更多 AI 工具、Edit/Cut 关键帧改进、Lottie 与 OGraf 图形支持、Fusion 的 Krokodove 图形工具、Fairlight 文件夹轨道，以及面向竖屏/方形内容和社交平台的交付能力。[O2][O4]\n功能 新手是否马上学 用途 Photo 页面 暂时不用 管理/调整照片，使用节点式调色；适合照片与视频混合工作流。 AI 工具 按需学习 IntelliSearch、CineFocus、面部/清晰度等工具；部分属于 Studio。 关键帧/曲线 建议第二阶段学 做缩放、移动、透明度、变速和更顺滑的动画。 Lottie / OGraf 有素材时再学 导入动态图形、透明标题、贴纸和动画元素。 Krokodove / Fusion 最后学 复杂动态图形、合成和 2D/3D 特效。 Fairlight 文件夹轨道 音频项目再学 把多条对白、音乐和音效轨道折叠整理。 Resolve 20 教程能不能看？ 版本兼容提醒：官方当前训练页列出的成体系入门书仍以 Resolve 20 为主，而软件和新功能资料已到 Resolve 21。基础导入、剪辑、调色、Fairlight、Fusion、Deliver 的核心思路大体相同；遇到按钮位置差异，以当前安装版本为准。[O1][O2][O6]\n1.2 免费版还是 Studio？ 版本 适合谁 新手判断 DaVinci Resolve Free 个人创作者、学习、常规剪辑、基础调色和音频 先用免费版；官方提供完整的基础工作流，学习不需要先付费。 DaVinci Resolve Studio 需要更多 AI、降噪、HDR、额外特效、10-bit/更高规格和专业交付的人 等遇到明确的 Studio-only 功能再买，不要因为界面复杂就先付费。 21 官方产品页列出 Free 与 Studio 两条路线；Studio 价格和功能可能因地区、税费与版本变化，购买前以 Blackmagic 官方页面显示为准。[O3]\n2. 安装与首次设置：先把项目安全性做好 2.1 从哪里下载？ 只从 Blackmagic Design 官方产品页或官方支持页下载。不要使用「免激活、破解、网盘安装包、汉化补丁」页面。 Windows 用户选择 Windows 版本；安装程序里按需保留主程序和相关组件。 第一次打开后，在 Preferences/偏好设置里确认语言、媒体存储位置和项目保存/备份选项。 在 Project Manager/项目管理器里创建项目，不要把 .drp 文件当作普通 Word 文档双击编辑。项目通常位于 Project Library/项目库中。 Windows 硬件提醒 当前检索到的 Resolve 21 Windows 兼容条目以 Windows 10 64 位及以上、16 GB 内存（Fusion 建议 32 GB）和至少 4 GB 显存级别为基础；这只是能否运行的门槛，不等于 4K、Fusion 或重度降噪会流畅。安装前仍应打开官方当前 Tech Specs/安装页核对显卡驱动和编码器要求。[O3][O6]\n2.2 建议的硬盘文件夹 文件夹 放什么 不要做什么 01_Project .drp、项目说明、版本记录 不要只依赖默认项目库而没有备份 02_Footage 相机/手机原始视频 不要在剪辑过程中随意改名或移动 03_Audio 录音、音乐、音效 不要把下载目录当长期素材库 04_Graphics Logo、PNG、字体、Lottie 不要使用来源不明的插件或素材 05_Exports 预览版、最终版、平台版 不要用「final_final_真的最终.mp4」命名 06_Proxy_Cache 代理与缓存 不要把缓存误当成原始素材备份 2.3 第一次创建项目的设置 新建项目后，点击右下角齿轮进入 Project Settings/项目设置。 先决定 Timeline frame rate/时间线帧率：通常跟主要拍摄素材和最终播放目标一致。电影感项目常见 24/25 fps；普通手机或 YouTube 项目常见 25/30 fps；高帧率素材用于慢动作时，不要因为素材是 60 fps 就把整个项目都改成 60 fps。 再决定 Timeline resolution/时间线分辨率：横屏 1920×1080、4K 3840×2160；短视频常用竖屏 1080×1920。分辨率可按最终交付和电脑性能取舍。 打开 Live Save/实时保存和 Project Backups/项目备份。重要项目在升级版本前，再从 Project Manager 导出 .drp；需要连素材一起搬家时使用 Project Archive。 关键设置：时间线帧率是最容易返工的设置。很多实践教程建议在导入素材前先确定帧率；如果空项目第一次导入素材时出现「是否匹配帧率」的提示，要看清楚再点击，而不是无脑确认。[P1][Y2]\n3. 认识页面：新手只需先掌握两页 页面 主要任务 新手优先级 Media 媒体 导入、整理、同步、元数据、代理 第二优先；小项目也可以从 Edit 导入 Photo 照片 照片管理、RAW、节点式照片调色 Resolve 21 新页面，按需学习 Cut 快编 快速粗剪、Source Tape、快速交付 想快速出片时再用 Edit 剪辑 多轨剪辑、修剪、标题、转场、时间线 第一核心页面 Fusion 节点式合成、特效、动态图形 最后学习 Color 调色 校色、风格化、节点、示波器、跟踪 第二核心页面 Fairlight 音频剪辑、降噪、EQ、混音、录音 先学基础音量，后学专业混音 Deliver 交付 渲染、格式、码率、批量输出 第二核心页面 Media › Edit › Fairlight › Color › Deliver —— 把 Resolve 理解成「多个小工作室共用一个项目」：Edit 负责把故事剪出来，Fairlight 负责听感，Color 负责画面统一，Deliver 负责交付。官方产品页也按这些页面组织功能。[O3][Y1]\n4. 保姆级第一条视频：从 0 到导出 第 1 步：建立项目和媒体池 打开 Resolve → New Project/新建项目，命名为「练习_日期_主题」，例如「练习_20260914_校园Vlog」。 进入 Edit 页面，打开 Media Pool/媒体池。右键空白处 → Import Media/导入媒体，或把文件从资源管理器拖入。 在媒体池里建立 bins/媒体夹：Footage、Audio、Music、Graphics、Timelines。素材量大时按日期/场景/机位继续分层。 双击视频在 Source Viewer/源检视器里预览；不要把「导入媒体池」误认为「已经出现在成片里」，素材必须放入时间线才会被输出。 第 2 步：创建时间线 把主素材拖到时间线空白处，Resolve 可以自动创建时间线；或右键媒体池 → Create New Timeline。 检查时间线分辨率、帧率、音频轨道；竖屏视频要在时间线设置中使用 1080×1920，而不是导出时才强行裁切。 在时间线里把主讲/主画面放在 V1，补充画面放在 V2，标题/字幕放在更高的视频轨道；人声放 A1，音效 A2，音乐 A3。 第 3 步：粗剪和精剪 动作 鼠标做法 常用快捷键/提示 选择/移动 Selection Mode，点击拖动片段 A；先学会撤销 Ctrl/Cmd+Z 切开片段 Blade 工具点击要切的位置 B；也可用菜单命令 修剪长度 拖动片段左右边缘 放大时间线再修更准 删除空白 选中多余片段和间隙后删除 Ripple Delete 需确认当前键盘预设 预览 播放头移到位置，空格播放/暂停 J/K/L 可反向、停止、正向播放 源素材取段 在源检视器标记 In/Out 后插入 I / O；适合先挑好镜头 剪辑判断标准：剪辑的核心不是「加很多特效」，而是删掉无效停顿、重复动作和不必要的镜头。先做一版没有转场的干净剪辑，再决定哪里需要音乐、标题或节奏变化。\n第 4 步：标题、转场和简单动画 打开 Effects/效果库 → Titles/标题，把 Basic Text/基础文本拖到视频上方的轨道。 选中标题，在 Inspector/检查器里改文字、字体、大小、颜色、位置和持续时间。 把 Cross Dissolve/交叉溶解拖到两个相邻片段的接缝；只在有叙事或节奏意义时使用，不要每个切点都加花哨转场。 需要慢慢放大时，选中片段，在 Inspector 的 Zoom/缩放旁边打关键帧，移动播放头后改数值。关键帧的本质是「同一个参数在不同时间点有不同值」。 Zach 的 Resolve 21 入门转录实际展示了 Inspector 的 Transform/Cropping/Dynamic Zoom、标题、转场、音频和 Deliver 页面；Casey Faris 的课程则把 Inspector 和 Effects 放在完整剪辑路径中。[Y1][Y2]\n第 5 步：基础音频，让人声先听清 先在 Edit 页面调整剪辑片段音量，再到 Fairlight 页面处理更复杂的轨道和总线。 人声、音乐、音效分轨；音乐通常要比人声低，具体音量以耳朵和电平表为准。不要只看波形大小。 看到电平持续顶到红色或明显失真时，先降低增益；不要用「把整体再放大」解决小声问题。 需要时再学 EQ、压缩、降噪、ducking/自动压低音乐。免费版与 Studio 版的音频/AI 功能可能不同，遇到锁定图标时查当前版本说明。 第 6 步：基础调色，不要一上来套 LUT 进入 Color 页面，先做技术校正：曝光、白平衡、对比度、饱和度。 用串行节点分开任务：Node 1 基础曝光/白平衡，Node 2 对比度和饱和度，Node 3 创意风格，Node 4 局部调整。 打开 Scopes/示波器观察亮度和颜色，避免亮部/暗部完全丢细节。 不同相机或不同光线的素材先匹配，再做风格；先统一，再「电影感」。 调色原则：LUT 不是万能滤镜。素材的色彩空间、曝光和白平衡没有先处理好时，LUT 可能让画面过饱和、偏色或失去细节。新手先用少量节点完成「正常、统一、可看」，比追求夸张风格更重要。\n第 7 步：字幕和交付 短视频可用 Titles/文本做少量标题；需要整段对白字幕时，建立字幕轨道并逐条核对时间。自动转录/AI 字幕属于版本与授权相关功能，输出前必须人工校对。 快速试片：用 Quick Export/快捷导出；需要控制分辨率、编码、音频和多个版本：进入 Deliver 页面。 Deliver 页面填写文件名和保存位置 → 选择预设或 Custom Export → Add to Render Queue → Render All。 导出完成不代表结束：一定要用系统播放器从头到尾看一遍，检查第一帧、最后一帧、字幕、音频、画幅、颜色和是否有黑帧。 5. 导出设置：先用「够用且稳定」的预设 用途 起步参数 验收重点 普通横屏/YouTube MP4；H.264；时间线分辨率；时间线帧率；AAC 音频 画面是否清晰、音画是否同步、上传后是否变色 竖屏短视频 时间线/输出 1080×1920；H.264；匹配帧率 主体不要被裁掉；字幕安全区；手机播放比例正确 高质量存档 按项目需求选择高质量中间编码/更高码率 文件体积、可再次剪辑性、磁盘空间 快速审片 低码率或代理媒体输出，仅用于预览 明确标记「预览」，不要误交付 导出判断：没有一个参数适合所有平台。平台、客户或电视台给出的规格优先于通用教程。最稳妥的做法是先导出 10–20 秒困难片段，播放并上传测试，再渲染整条片。\n5.1 导出前 10 项检查 时间线 In/Out 范围是否覆盖整条片？ 视频和音频是否都勾选？ 文件名、路径和磁盘剩余空间是否正确？ 分辨率和帧率是否符合目标平台？ 是否误勾选 Use Proxy Media？最终母版通常应关闭。 原始素材是否在线，是否还有 Offline Media？ 音频是否爆音、过小或左右声道异常？ 字幕是否出画、错字、提前或延后？ 颜色在 Resolve 与系统播放器中是否差异异常？ 导出文件是否在 Resolve 外完整播放过？ 依据：官方中文媒体页介绍快捷导出和渲染队列；Zach 的 21 版教程演示自定义导出、预设、音视频设置、队列与渲染；第三方实践指南强调导出后必须在 Resolve 外播放验收。[O5][Y2][P1]\n6. 电脑卡顿怎么办：先分清代理、缓存和原片 现象 优先处理 不要误解 普通片段就卡 检查源编码、硬盘速度、显卡驱动；先生成 Proxy Media 不一定是「电脑太差」，手机/无人机 H.264/H.265 也可能难解码 加了 Fusion/降噪后卡 用 Render Cache 或 Render in Place；降低时间线预览分辨率 代理只减轻原片解码，不能自动解决所有特效计算 代理生成后仍卡 Playback → Proxy Handling → Prefer Proxies；检查代理是否真的链接 生成代理 ≠ 已经使用代理 导出画质低 Deliver 高级设置里确认 Use Proxy Media 关闭；回到原片检查 代理通常只用于编辑预览，不等于最终画质 6.1 代理的实际操作 在 Project Settings → Master Settings → Optimized Media and Render Cache 中设置代理分辨率和格式；第一次可用 Choose Automatically。 在 Media Pool 选中素材 → 右键 → Generate Proxy Media。 在 Viewer/检视器的 Proxy Handling 中选择 Prefer Proxies。 剪辑完成后选择 Prefer Camera Originals 或关闭代理，检查焦点、细节、噪点、遮罩边缘和颜色。 最终母版在 Deliver 高级选项中不要勾选 Use Proxy Media；先渲染困难片段并在 Resolve 外播放。 代理工作流的底线：代理文件要放在稳定、快速、空间足够的 SSD 路径；不要把代理、缓存和原始素材混在一个随时会被清理的下载目录中。[P2]\n7. 项目备份与版本升级：避免「能剪但打不开」 备份方式 保存什么 适合场景 Live Save 持续写入当前项目 日常防止突然崩溃丢几分钟工作 Project Backups 项目的滚动历史版本 误删、改坏、需要回退 Export Project (.drp) 项目结构与时间线等，不含全部原始媒体 小文件备份、分享项目结构 Export Project Archive 项目 + 相关媒体的归档包 换电脑、交接、长期保存 升级 Resolve 前，先备份项目库，并给关键项目导出 .drp；无法重拍的项目再建立完整 Archive。 升级后先打开项目副本，不要直接拿唯一生产项目测试。 检查插件、字幕、Fusion、音频路由、颜色和最终交付，再决定是否迁移正式项目。 不要把 21 版打开并保存的项目想当然地当作可以无损回到旧版本；跨版本兼容必须以当前版本说明为准。 8. 常见问题排查表 问题 先检查 常见处理 媒体离线 原始文件是否被移动/改名；磁盘盘符是否变化 Relink Media；恢复原路径；不要随意重命名素材 帧率不对/画面卡顿 时间线帧率、素材帧率、慢动作意图 新建正确时间线或按目标重新解释素材；先备份 导出黑屏/少片段 In/Out 范围、视频轨道开关、离线媒体 清除错误范围，打开需要的轨道，先短片段测试 人声听不清 人声与音乐是否同轨；电平是否过低/失真 分轨、降低音乐、调整增益，再做 EQ/压缩 画面偏灰/偏色 素材是否 Log/RAW；输入色彩空间；显示器/播放器差异 先做色彩管理和基础校正；不要直接套 LUT Fusion 复杂难学 是否真的需要 Fusion 先用 Edit 的标题、关键帧和基础效果；需要时再学节点 插件/AI 找不到 当前版本、Free/Studio 授权、是否需要下载模型 查官方手册和功能页；不要从破解包补功能 9. 7 天入门计划：每天都要产出一个小结果 天数 学习主题 当天交付 第 1 天 项目、媒体池、页面、时间线 一条只有 3 个片段的粗剪 第 2 天 Blade、Trim、Ripple、J/K/L、B-roll 30 秒节奏剪辑 第 3 天 标题、转场、Inspector、关键帧 一个标题 + 一次慢推镜头 第 4 天 人声、音乐、音效、基本电平 一条听得清人声的短片 第 5 天 Color 节点、色轮、示波器、镜头匹配 三段素材的统一色调 第 6 天 Deliver、代理、缓存、备份 一个横屏版 + 一个竖屏预览版 第 7 天 完整小项目 60–90 秒成片，导出并在播放器验收 学习方法：每天学习不超过 60–90 分钟，其中至少一半时间要动手。只看视频、不按暂停跟做，会产生「看懂了但不会用」的错觉。每个教程看完必须留下一个项目文件或导出文件。\n10. 教程选择与推荐顺序 10.1 最推荐的组合 用途 资源 怎么用 权威基础 Blackmagic 官方 Training + 官方训练书 先按项目课程完成一遍，不追求一次看完所有高级章节。[O1] Resolve 21 快速入门 Casey Faris 1 小时 24 分课程 按章节跟做，重点看 Media、Edit、Color、Fairlight、Delivery。[Y1] 快速查按钮 Zach 14 分钟 Resolve 21 教程 卡在导入、Inspector、标题、转场、导出时快速定位。[Y2] 中文快速跟做 录录创作中 30 分钟中文教程 第一次做短片时跟做，理解下载、项目、剪辑、音频流程。[Y3] 中文长线系统学习 B站 2026 100 集系列 按「安装→设置→界面→调色→节点→导出」分阶段，不要从第 1 集一直刷到 100 集。[B1] 深度提升 Sam Kolder 中英字幕 95 集 等能完成一条片后，再学代理、Fusion、调色、Fairlight 和导出。[B3] 10.2 关于 X 和搬运教程 本次对 X 的公共搜索进入登录/注册页，未能在不登录的情况下读取可核验的公开帖子，因此没有把 X 上不可验证的「快捷键清单」「版本爆料」写入教程结论。后续如果你提供具体 X 帖子链接，可以再逐条核实。B站的中文配音/搬运课程可以帮助理解，但教程版本、配音和授权情况与原作者页面可能不同；官方版本信息、功能边界和系统要求应回到 Blackmagic 页面确认。[X1][B2]\n⚠️ 安全提醒：不要从教程评论区、网盘或「安装包自取」链接安装破解 Studio、激活器或未知插件。它们可能带来恶意程序、项目损坏、账号/文件泄露和版权风险。本教程只提供官方软件下载路径，不提供破解包。\n11. 一页式操作清单（打印版） 创建项目：命名清楚，设置帧率和分辨率。 设置安全：打开 Live Save、Project Backups，确认项目库位置。 整理素材：建立 bins，不在剪辑过程中移动或改名原始文件。 先剪故事：先删废片和空白，再加音乐、标题和转场。 先做人声：分轨、听清、避免红色削波。 再做调色：先统一曝光和白平衡，再做风格。 卡顿就代理：Generate Proxy Media → Prefer Proxies；重特效用 Render Cache。 导出先测试：10–20 秒困难片段先渲染并播放。 最终验收：关闭 Use Proxy Media、确认原片在线、完整播放成片。 归档：保存 .drp；重要项目保存 Project Archive 和原始素材。 12. 来源与证据说明 来源分级：O = Blackmagic Design 官方资料；Y = YouTube 视频/页面转录或章节；B = Bilibili 页面信息（部分为转载）；P = 第三方实践资料；X = 已检索但受登录墙限制的路径。视频内容用于总结「该教程实际讲了什么」，不等于官方规范；价格、系统要求、版本功能和授权边界以官方页面为准。\n编号 / 类型 标题与能支持的内容 原始链接 O1 官方 Blackmagic Design：DaVinci Resolve Training（官方培训视频、项目文件、Resolve 20 训练书；适合搭建系统课程） https://www.blackmagicdesign.com/products/davinciresolve/training O2 官方 DaVinci Resolve 21 New Features Guide（Resolve 21 新功能与 Photo、AI、Edit、Color、Fusion、Fairlight 变化） https://documents.blackmagicdesign.com/SupportNotes/DaVinci_Resolve_21_New_Features_Guide.pdf O3 官方 DaVinci Resolve 产品页（页面划分、免费版/Studio 版定位、媒体/剪辑/调色/特效/音频/交付等功能边界） https://www.blackmagicdesign.com/products/davinciresolve O4 官方 DaVinci Resolve – What\u0026rsquo;s New（Photo、AI、关键帧、Lottie、Krokodove、Fairlight、社媒交付等） https://www.blackmagicdesign.com/products/davinciresolve/whatsnew O5 官方中文 DaVinci Resolve – Media（中文媒体管理、素材同步、媒体夹、快捷导出和渲染队列说明） https://www.blackmagicdesign.com/cn/products/davinciresolve/media O6 官方 DaVinci Resolve 21 Manual 入口（Resolve 21 参考手册入口；具体菜单以当前安装版本为准） https://www.blackmagicdesign.com/welcome/en/W-DRE-03 Y1 YouTube Casey Faris：Making Videos in Resolve 21 – Full Course for Beginners（2026-05-28；约 1 小时 24 分；覆盖 Media、Edit、Fusion、Color、Fairlight、Delivery，页面提供章节和字幕转录） https://www.youtube.com/watch?v=gjxiH2Tm4JE Y2 YouTube Zach：DaVinci Resolve 21 – Tutorial for Beginners 2026（约 14 分钟；从新建项目、导入、剪切、Inspector、标题、音频到 Deliver） https://www.youtube.com/watch?v=iT4V4A7QSqY Y3 YouTube 录录创作中：达芬奇完整剪辑入门教学（中文/繁中；约 30 分钟；从下载、项目、媒体池、时间线到剪辑与音频） https://www.youtube.com/watch?v=Nl5fh_sXy34 B1 Bilibili 100 集达芬奇软件基础（2026 新手版）（2026-02-27；分段讲安装、首次设置、界面、调色、节点、LUT、导出；适合作为中文索引） https://www.bilibili.com/video/BV1aFASz7EqE/ B2 Bilibili Casey Faris 中文配音全课程（转载）（约 5 小时 10 分；覆盖 Media、Edit、Cut、Fusion、Color、Fairlight、Deliver；非官方搬运，翻译/配音需自行核对） https://www.bilibili.com/video/BV1bsCSBaEAe/ B3 Bilibili Sam Kolder 达芬奇教程（中英字幕）（约 19 小时、95 集；文件管理、快捷键、代理、剪辑、Fusion、调色、Fairlight、导出） https://www.bilibili.com/video/BV1WBeGzyEgP/ P1 实践资料 DaVinci Resolve Club：Beginner Tutorial（第三方实践指南；强调先定帧率、项目备份、完整跑通导入—剪辑—导出并播放验收） https://davinciresolveclub.com/davinci-resolve-tutorial-beginners/ P2 实践资料 DaVinci Resolve Club：Proxy Workflow（第三方代理工作流；生成代理、Prefer Proxies、质量检查、最终交付关闭 Use Proxy Media） https://davinciresolveclub.com/davinci-resolve-proxy-workflow/ X1 X 覆盖说明 X 公共搜索入口（需登录）（本次公开浏览被 X 登录墙拦截，未把不可核验的帖子当作教程证据） https://x.com/search?q=%22DaVinci%20Resolve%2021%22\u0026amp;src=typed_query 使用边界：本教程是「研究后整理的实践教程」，不是 Blackmagic Design 官方出版物。界面会随着 21.x 维护版本、语言、操作系统、Free/Studio 授权和硬件而变化；遇到差异时，先查当前软件的 Help/Manual，再按本教程的工作流原则判断。生成时间：2026-09-14。已完成：官方资料检索、YouTube/B站教程筛选、X 公共搜索覆盖检查、中文教程编排、文本与版式校验。\n","permalink":"https://yutterx.com/posts/davinci-resolve-21-beginner-guide/","summary":"第一次打开达芬奇的 Windows 用户指南：安装、项目设置、素材管理、剪辑、字幕、调色、音频、代理与导出全流程。","title":"DaVinci Resolve 21 保姆级使用教程：从安装到导出完整流程"},{"content":" 如果你现在连「一个单词该怎么记」都不确定，这份教程从最基础开始。你不需要先懂记忆科学，也不需要先买 Anki；先用纸和手机，跟着一个词做完全过程。第一阶段的目标不是一天背 100 个词，而是把每天 3—5 个词真正推进到「能在句子和对话中使用」。\n你读完今天就要完成什么 结果 具体标准 知道一个词是什么 不只知道中文，还知道它在原句里的意思、词性和使用场景 听得出一个词 先听声音，再看文字；能在完整句里认出它 想得起一个词 看到中文场景或挖空句，不看答案能说出英语 用得出一个词 能写自己的句子，换对象/原因后仍能使用 说得出一个词 能在一个问题和回答中自然用一次 先记住这条最重要的规则 「背过」不等于「学会」。 看到 issue 知道是「问题」，只是认识；听到 The main issue is\u0026hellip; 能补出 issue，才有听力记忆；看到「现场主要问题是安全」能说 The main issue on site is safety，才开始有表达能力；别人问 What is the main issue? 你能回答，才进入真实使用。\n今天的第一课：只学一个词块 不要一开始拿一张 100 个词的词表。今天选一个你真正需要的表达：fall behind schedule（进度落后）。你会用它学习完整流程，之后所有新词都照这个流程做。\n时间 你现在做什么 不要做什么 第 1—3 分钟 听原句，猜场景 不要马上抄中文 第 4—7 分钟 看文字，确认意思和发音 不要查十个词义 第 8—12 分钟 记一个搭配和一个原句 不要只记 fall = 落下 第 13—16 分钟 遮住答案回忆 不要只重新看一遍 第 17—20 分钟 换成自己的句子并说出来 不要只在心里默读 本教程后面会把每一步展开。现在先理解：学习的单位不是「一个拼写」，而是「一个声音 + 一个意思 + 一个搭配 + 一个句子 + 一次主动使用」。\n第一章：从 0 开始，你先要知道「单词」由什么组成 1.1 一个英语词不是一张中文标签 中文母语者常见的第一种背法是：把英文写在左边，把中文写在右边。例如 issue = 问题，delay = 延迟。这种方法可以帮助你第一次认出词，但它没有告诉你这个词怎么发音、和什么词一起出现、在句子中怎么变化、什么场合能用。\n你要记住的层 它回答的问题 以 delay 为例 声音 别人说出来时我能认出吗？ 听到 de-LAY / delayed 能反应 形式 拼写和词形是什么？ delay、delayed、delays 核心意思 当前句子里是什么意思？ 延期/使某事晚一点 搭配 它通常和谁一起出现？ delay the project；delivery delay 句型 它在句中怎么放？ be delayed because of\u0026hellip; 个人联系 和我的生活有什么关系？ Our project was delayed\u0026hellip; 对话反应 别人问我时能不能用？ Why was it delayed? 1.2 你要区分四种「会」 层级 你能做到什么 适合的卡片/练习 认识 看到英文知道大概意思 英文→中文识别卡 听懂 只听声音也能认出词块 音频卡：先听后看 回忆 从中文场景生成英语 中文场景→英文表达卡 迁移 换场景、回答问题时仍能用 替换句、角色对话、录音 从 0 开始时，不要要求每个词都立刻达到第四层。阅读中遇到的普通词，做到认识和听懂就可以；与你的专业、考试或口语目标有关的词，再推进到回忆和迁移。\n1.3 你需要准备什么 一个纸质笔记本或手机表格：先不用任何复杂软件。 一个可以播放例句音频的可靠词典：先听当前句子，再看解释；不要只看中文。 一段你大部分能听懂的英语材料：视频、短文、课堂材料都可以。材料太难时，词汇会变成无底洞。 每天 20—40 分钟的固定时间：先从可持续开始，而不是一上来制定两小时计划。 一个录音工具：手机录音即可，用来检查自己能否从提示说出完整句子。 1.4 从今天开始，不再做三件事 不把遇到的每个生词都做成主动卡。先筛选，减少无效复习。 不把一个词的所有中文释义都塞进一张卡。先学当前场景里的核心义。 不把「重新看了五遍」当作复习完成。复习必须有遮挡、回忆和检查。 第二章：第一天到底怎么记一个词——完整示范 示范目标：fall behind schedule 场景：项目进度落后。你可能在建筑、学校小组作业或日常安排中使用它。今天不背 schedule 的所有意思，只学一个可以立即使用的词块：fall behind schedule。\n项目 内容 原始句 We are falling behind schedule because the materials arrived late. 中文场景 因为材料晚到，我们的进度落后了。 今天的目标 听懂、补出、改写、在回答中说出 今天不做 fall 的十个意思；schedule 的全部词义；长篇词源 第 0 步：先建立「我为什么学它」 在纸上写：我想用这个词表达什么？不要写「我想记住英文」。写具体一点：我想告诉别人项目为什么没有按计划完成。具体用途会给记忆一个钩子。\n现在填写（不要先看答案）：\n中文场景：我想用英语表达：________________________ 我可能在哪个场合使用：学校 / 工地 / 日常 / 其他：________ 我希望别人问我什么问题：________________________ 第 1 步：先听，不看文字 播放原句 3 遍。第一遍只回答「发生了什么」；第二遍注意你听到的声音；第三遍试着判断目标词出现在哪里。听不出来很正常，因为你还没有把声音和文字连接起来。此时不要立即责怪自己「记忆差」。\n第几遍 你的任务 合格标准 第 1 遍 只听大意 知道是在说进度、材料或时间 第 2 遍 抓目标声音 大概听到 behind / schedule 的一部分 第 3 遍 暂停前后各听一次 知道目标词块在句中的位置 第 2 步：看英文，把声音和文字接上 现在看原句：We are falling behind schedule because the materials arrived late.\n第一次学习时，允许看文字；但看文字的目的，是把声音、拼写和句子连起来。不要一边看文字一边假装自己听懂了。下一轮要把文字遮住重新听。\n第 3 步：只确认当前核心意思 当前句子里，fall behind schedule 的意思是「进度落后/没有按计划进行」。不要现在同时学习 fall 的全部意思，也不要把 schedule 的所有释义都抄下来。词典里的其他意思以后遇到再学。\n现在不要堆十个同义词和罕见例句。当前要保留的只有：fall behind schedule = 进度落后；原句；一个个人场景。\n第 4 步：拆开，但不要拆散 拆开是为了理解结构，最后仍要把它作为一个可调用的词块。fall behind 是「落后于」，schedule 是「进度/时间安排」。英语里常说 fall behind schedule，而不是临时把中文逐字翻译。\n部分 作用 你要会做的事 fall 动词核心 知道这里表示进入「落后」状态 behind 介词/位置关系 理解为落后于某个标准 schedule 名词对象 这里是计划/进度安排 falling 进行时形式 知道 We are falling 表示正在落后 第 5 步：记录声音，不靠中文谐音 跟着原音说 3 遍：fall behind schedule。先追求节奏和整体，不要把每个音节读得像中文拼音。可以在词块上标出重音和停顿：fall behind SCHEDULE。再听原句，模仿它在句子中的速度。\n如果你知道音标，可以查；如果不知道，先不用把音标当成门槛。对初学者来说，可靠音频 + 分段跟读 + 录音对比，比自己根据拼写猜发音更安全。\n第 6 步：只找两个搭配 搭配 意思 例句 fall behind schedule 进度落后 We are falling behind schedule. be on schedule 按计划进行 The project is still on schedule. （下一步再学）keep to the schedule 遵守进度安排 We need to keep to the schedule. 第一次只选 2—3 个搭配。搭配不是为了让卡片变长，而是为了让你知道这个词在真实英语里和谁一起出现。\n第三章：从「看懂」到「想起」——主动回忆是核心 第 7 步：做第一张识别卡 识别卡的目的，是让你看到英文或听到声音时知道意思。它不是最终目标，但它是起点。\n卡片正面 卡片背面 fall behind schedule 进度落后；原句 We are falling behind schedule because the materials arrived late. 播放原句音频，不显示文字 原句文字 + 中文场景 + 两个搭配 第 8 步：做填空卡——把答案藏起来 正面提示 你要说的答案 We are falling ___ schedule. behind We are ___ behind schedule. falling 项目进度落后怎么说？ The project is falling behind schedule. 第一次做时可以给首字母提示，例如 f___ b______ s________。第二次减少提示。第三次只保留中文场景。提示的作用是帮助你成功回忆，不是永久依赖。\n第 9 步：从中文场景生成自己的句子 现在不要再照抄原句。把原句中的对象换掉。你可以先从非常简单的事实开始：\n中文提示 英文答案 我们的课程进度落后了。 Our course is falling behind schedule. 我的小组作业进度落后了。 Our group project is falling behind schedule. 我们因为材料晚到而进度落后。 We are falling behind schedule because the materials arrived late. 项目没有落后，仍按计划进行。 The project is still on schedule. 第 10 步：把词放进一个问题和回答 词汇真正进入口语，需要从「背答案」变成「对问题做反应」。先读问题，再遮住答案：\n问题 回答 Are you on schedule? No. We are falling behind schedule because the materials arrived late. Why are you falling behind schedule? Because the delivery was delayed. What can you do? We can adjust the schedule and check the materials when they arrive. 第 11 步：第一次口头验收 关闭词典和笔记，打开手机录音。给自己 20 秒准备，然后回答：What is one thing that is behind schedule this week?\n你不需要说得漂亮，但必须尝试使用 fall behind schedule 或 be on schedule。录音结束后再看原句，检查词块是否完整。\n第一天的验收表\n我听过原句至少 3 遍。 我看着英文能说出中文场景。 我遮住目标词能补出句子。 我能把对象换成自己的事情。 我录音说过一次，而不是只在心里想。 我已经安排第 2 天和第 4 天复习。 第四章：完整案例——issue 从 0 到能对话 4.1 第一次遇到 issue，先不要背全部意思 原句：The main issue on site is safety. 场景：有人在讨论施工现场最主要的问题。当前只学 issue 在这里的核心意思「问题/主要问题」。\n处理顺序 你要写下什么 为什么 原句 The main issue on site is safety. 保留真实语境 中文场景 现场主要问题是安全。 不要只写一个词的翻译 词性 issue 是名词；the main 修饰它 知道它在句子里的位置 声音 听整句，不单独慢读中文式发音 建立听力形式 核心词块 the main issue is\u0026hellip; 开口时直接调用 个人句 The main issue in our group project is time. 和自己建立联系 问题 What is the main issue on site today? 准备真实对话 4.2 issue 的四张卡 卡片类型 正面 背面/答案 识别卡 the main issue is\u0026hellip; 主要问题是……；原句 听力卡 只播放 The main issue is safety. 文字和意思 填空卡 The main ___ is safety. issue 表达卡 「现场主要问题是安全」 The main issue on site is safety. 4.3 五次回忆，不要连续看五遍 回忆 1：看 issue，说「问题，名词」。 回忆 2：听 The main issue is safety，暂停后补出 issue。 回忆 3：看到中文「主要问题是时间」，说 The main issue is time。 回忆 4：看到「设备有问题」，说 There is an issue with the equipment。 回忆 5：回答 What is the main issue in your study?，至少说两句。 4.4 从一个词块扩展到词块家族 表达 意思 例句 the main issue is\u0026hellip; 主要问题是…… The main issue is the schedule. an issue with\u0026hellip; ……有问题 There is an issue with the equipment. raise an issue 提出问题 We need to raise an issue with the supplier. deal with an issue 处理问题 The team is dealing with a safety issue. 不要第一天把四个表达都要求达到主动使用。第一天先把 the main issue is\u0026hellip; 练熟；第二次遇到 issue 时，再加入 an issue with\u0026hellip;；需要工作交流时，再加入 raise/deal with。词族和搭配是逐步扩展，不是一次塞满。\n第五章：拼写、发音、词形怎么记——不要混成一团 5.1 先判断你是哪一种忘记 你遇到的情况 忘的是哪一层 对应练习 看到中文想不起英文 表达回忆 中文场景→英文卡；先给首字母提示 看到英文认识，听到不认识 声音 音频卡；先听短词块再听整句 听到能懂，写不出拼写 形式/拼写 听后写关键词，再与原文核对 词会说，但句子搭配不自然 用法 保留原句和两个搭配，做替换句 原句会说，换场景不会 迁移 换对象、时间、原因，再做问答 5.2 声音怎么从 0 开始练 从零开始不要求你先掌握所有音标。你只要完成一个声音循环：听原句 → 看英文 → 标出词块 → 跟读 → 暂停复述 → 录音对比。每次只挑一个问题，例如重音、词尾、停顿或连读，不要一次纠正全部。\n轮次 动作 以 issue 为例 1 只听原句 判断 issue 在句子中出现的位置 2 看文字再听 把听到的声音和 issue 拼写连上 3 跟读短词块 the main issue；重复 3 遍 4 跟读整句 The main issue on site is safety. 5 暂停后自己说 不看文字复述整句 6 放进个人句 The main issue in my class is time. 5.3 词形变化要怎么学 第一次遇到一个词，只先学当前句中的形式。例如 inspect the site。第二次遇到 inspection，再比较它是名词；第三次遇到 inspector，再加入表示人的形式。不要因为知道 inspect 就假设 inspection 和 inspector 自动会用。\n词形 词性/功能 先记哪个搭配 inspect 动词，检查 inspect the site / inspect the materials inspection 名词，检查/检查活动 a safety inspection inspector 名词，检查人员 a site inspector delayed 过去式/过去分词 The delivery was delayed. delay 动词或名词 delay the project / a delivery delay 词根、词缀和词族可以帮助你理解和分类，但它们不是记忆的终点。每一个词形都要回到真实搭配和句子里。\n第六章：从 0 开始制作词卡——纸笔版和手机版 6.1 纸笔词卡：先照这个模板写一张 栏位 你要填写的内容 示范 1. 目标词块 写可使用的片段，不只写词根 fall behind schedule 2. 原句 从材料里抄完整句 We are falling behind schedule because the materials arrived late. 3. 场景 用中文说明当时发生什么 材料晚到，项目进度落后 4. 核心义 只写当前最重要的意思 进度落后 5. 词性/结构 写它在句中的位置 fall + behind + schedule 6. 搭配 写 2 个自然组合 be on schedule；keep to the schedule 7. 音频 注明要听哪一句 原句第 10 秒—第 13 秒 8. 挖空 遮住目标词块 We are falling ___ schedule. 9. 我的句子 写自己的真实句子 Our group project is falling behind schedule. 10. 复习日期 写下次什么时候回忆 今天、明天、第 4 天、第 8 天 6.2 一张卡的正面和背面应该怎样分 卡片方向 正面只放 背面放 识别 英文词块或音频 中文场景、核心义、原句 填空 带空的句子 目标词块 表达 中文场景/问题 完整英文回答 听力 音频，不显示文字 原文、意思、词块边界 如果你刚开始，先只做识别卡和填空卡；第三天以后再加表达卡。不要一开始制作复杂卡片，否则制作卡片会替代真正的回忆练习。\n6.3 手机备忘录的最简单格式 目标词块：__________________ 原句：______________________ 中文场景：__________________ 两个搭配：__________________ 挖空句：____________________ 我的句子：__________________ 第 2 / 4 / 8 / 15 天：□ □ □ □ 6.4 Anki 什么时候再用 Anki 只是帮助你安排回忆，不会替你决定什么词值得学，也不会自动让你会说。刚开始先用纸或备忘录跑通一周；你能够稳定完成「先回忆、再看答案、再造句」后，再把高价值卡迁移到 Anki。每天先做旧卡，再加新卡；复习积压时暂停新增。\n第七章：复习到底怎么做——不是重新看，而是先想 7.1 每次复习的固定动作 第一步：遮住答案，只看中文场景、问题、音频或挖空句。 第二步：给自己 3—8 秒尝试回忆；不要一秒想不起就马上翻答案。 第三步：说出来或写出答案；「在脑中觉得认识」不算完成。 第四步：打开答案，比较词块、词形、搭配和发音。 第五步：如果错了，立刻再说一次；如果对了，做一个小替换。 7.2 从第一天到第 30 天的复习安排 时间点 先回忆什么 成功后的动作 失败后的动作 学完后 原句挖空和中文场景 说一个个人句 重新听原句，缩短目标 当天晚上 听音频补词块 不看文字再说一次 标记困难，不连续抄写 第 2 天 中文→英文、英文→意思 替换一个对象 保留原句，明天再测 第 4 天 混合顺序抽查 加入一个为什么问题 回到语境听两遍 第 8 天 用 3 个词块说 30 秒 录音保存 减少新卡，保留困难卡 第 15 天 放进一次对话 升级为主动词 降回填空卡 第 30 天 不按原顺序综合回忆 放进专业主题口述 重新安排短间隔 7.3 用 0、1、2 分记录，不要凭感觉 分数 表现 下一步 2 分 不看答案能说出正确词块和完整句 照原计划拉长间隔 1 分 看一个提示或想很久才说出 保留卡片，缩短下一次间隔 0 分 完全想不起，或搭配错误到无法使用 回到原句/音频，改短卡，暂停同类新词 7.4 什么时候算「记住」 一个词块至少完成下面四项，才可以暂时从「重点复习」转为「长期复习」：\n隔一天听到能认出； 看到中文场景能说出； 换一个对象或原因能改句； 在一次口述或对话里主动使用。 只完成「看到英文知道中文」，不要急着把它标记为掌握。\n第八章：为什么单词一定要进入句子 8.1 孤立词不能直接变成口语 说话时你不是从词典中挑一个中文意思，再把它翻译成英文。你需要迅速调用「词块 + 句型」。因此每个主动词至少保留一个完整原句，再做一到两个替换。\n原句 替换位置 变成你的句子 The project was delayed because of heavy rain. 对象 The delivery was delayed because of heavy rain. 同上 原因 The project was delayed because of traffic. 同上 时间 The project was delayed last week. 同上 改成问题 Why was the project delayed? The main issue is the schedule. 地点/问题 The main issue on site is safety. We need to inspect the site. 对象 We need to inspect the materials. 8.2 七轮学习一句话 第 1 轮只听：谁在说什么？ 第 2 轮看英文：目标词块在哪里？ 第 3 轮查关键点：最多查一两个影响理解的词。 第 4 轮跟读：模仿节奏和停顿三遍。 第 5 轮暂停：不看文字，从记忆说出整句。 第 6 轮改写：换一个人、时间、对象、原因或地点。 第 7 轮使用：回答一个问题，至少说一次。 8.3 句子验收练习 遮住右边，先自己说：\n中文 你的答案 项目因为交通而延期。 ______________________ 现场主要问题是安全。 ______________________ 我们需要检查材料。 ______________________ 问题：Why was the delivery delayed? ______________________ 参考答案： The project was delayed because of traffic. / The main issue on site is safety. / We need to inspect the materials. / It was delayed because of traffic.\n先尝试，再对照；不要在看答案前给自己判分。\n第九章：怎么把刚记的词放进真实对话 9.1 先学对话动作，不要等到词汇量很大 动作 可直接使用的表达 你可以放入的词块 开始 Can I ask you something about\u0026hellip;? the schedule / the delivery 回答 I think\u0026hellip; / In my experience\u0026hellip; The main issue is\u0026hellip; 解释原因 The main reason is\u0026hellip; / Because\u0026hellip; be delayed because of\u0026hellip; 追问 What about you? / Why do you think so? Why was it delayed? 没听清 Could you say that again more slowly? 让对话继续 不会某词 I do not know the exact word, but\u0026hellip; 用描述代替停住 修正 Let me say that again. 重新说正确搭配 结束 Thanks, that was helpful. 回顾今天用过的词 9.2 15 分钟词汇对话 时间 怎么做 限制 0—3 分钟 用熟悉词介绍今天的学习/专业 不查词，只启动 3—8 分钟 围绕一个主题问 5 个问题 强制使用本周 2—3 个词块 8—11 分钟 对方追问、要求解释或澄清 不要每句话都被打断纠错 11—13 分钟 记录 3 个最重要的错误和 3 个自然表达 不纠正所有小错误 13—15 分钟 重新回答其中 2 个问题 必须把修正后的词说出来 可复制给 AI 的提示词：\n请和我进行关于施工现场进度的英语对话。我是中文母语者，约 B1 水平。 本轮只练 the main issue is、be delayed because of、adjust the schedule、 inspect the materials、fall behind schedule。请先问我 5 个问题，不要每句 打断；结束后只指出 3 个最影响理解的错误和 3 个更自然的词块，再让我 重新回答其中 2 题。 第十章：从 YouTube、X 和其他材料中挑词 10.1 YouTube 一条视频只挖 5 个词块 时间 动作 词汇输出 0—2 分钟 看标题和画面，预测主题 写 3 个可能出现的词 2—6 分钟 不看字幕完整听 只记录听到的词，不暂停查 6—10 分钟 打开英文字幕核对 选 5 个高价值、可理解、能使用的词块 10—15 分钟 精听 30 秒—2 分钟并跟读 每个目标词听原句至少 3 遍 15—18 分钟 关字幕复述 强制使用其中 2 个词块 18—20 分钟 写个人句并安排复习 留下不超过 5 张高质量卡 BBC/VOA 可用于较清晰输入；Rachel\u0026rsquo;s English 可用于重音、弱读和连读；Easy English 可用于真实回答和停顿；其他教师频道可用于句型示范。这里的关键不是看了哪个频道，而是每条内容都经过「听懂—选词—做卡—造句—开口」的转化。\n10.2 X 短视频或帖子：先恢复语境，再学一句 步骤 动作 你留下的东西 1 读原帖、引用帖、画面文字 知道这句话在回应什么 2 播放两遍，只抓一个名词、一个动词、一个重复短语 3 个候选词 3 用字幕/评论确认，不盲信自动字幕 修正后的句子 4 选一句你真的会用的表达 例如 I can\u0026rsquo;t believe this happened again. 5 换成自己的事实并说出来 I can\u0026rsquo;t believe I forgot the deadline again. 6 写一句英文反应后关闭 X 一次输出，不继续被动刷 X 和社区内容可以提供真实表达、学习者的失败经验和方法争论，但它们不是分级教材。若一条内容需要查十几个背景词，就先放到识别篮，不要硬做主动卡。\n10.3 Reddit/论坛内容怎么变成学习材料 先找一个你真正关心的问题，例如「怎么练口语」「为什么背了会忘」。 只提取一个表达和一个观点，不把整条讨论当课文。 把表达放进自己的句子，再用一句英文写出你是否同意。 把个人经验标记为「社区经验」，不要因为很多人赞同就当成科学定论。 第十一章：从 0 开始的 14 天单词训练计划 前 14 天不追求大词量，只训练正确动作。每天 20—40 分钟。每周新增约 25—40 个主动词块已经足够；如果复习积压，立刻减半。\n天数 当天重点 必须完成 第 1 天 学会一张词卡 用 fall behind schedule 做完整十步流程，录 20 秒 第 2 天 第一次间隔回忆 不看答案补 3 个挖空，造 1 句 第 3 天 学习声音 听 3 个原句，跟读，记录一个发音问题 第 4 天 搭配和替换 把一个句子换对象、原因各一次 第 5 天 学习 issue 完成识别卡、填空卡、表达卡 第 6 天 问答 回答 What is the main issue? 并追问一次 第 7 天 周测 不看原文说 30 秒，复盘 3 个词块 第 8 天 新材料挖词 从一条短视频选不超过 5 个词块 第 9 天 听力卡 把 2 个词做成音频→文字卡 第 10 天 中文→英文 用 5 个中文场景生成英语 第 11 天 词形 比较 inspect、inspection、inspector 第 12 天 对话 进行 10—15 分钟 AI 或真人对话 第 13 天 修复弱点 清理 0 分卡，暂停新增 第 14 天 综合验收 用 10 个词块做 2 分钟专业主题口述 每天 20 分钟的最低版本 分钟 动作 底线成果 0—6 回忆旧卡，先不看答案 至少尝试 10 张 6—11 学习 2—3 个新词块和原句 每个有场景 11—16 做填空和中文→英文回忆 每词主动提取 2 次 16—20 说个人句并录音 至少说出 2 个词块 每天 40 分钟的标准版本 分钟 动作 底线成果 0—8 旧卡复习 10—15 张，记录 0/1/2 分 8—16 从视频/帖子选 5 个词块 不做整张词表 16—24 查核心义、词性、搭配、音频 每词 2 搭配 24—32 填空、中文提示、听力回忆 每词 2 次主动提取 32—40 造句、录音、安排复习 5 句 + 30 秒口述 第十二章：你记不住时，不要只说「我记性差」 症状 实际断在哪一步 修复动作 看中文想不起英文 没有做生产性回忆 加中文场景→英文卡，先给首字母提示 看英文认识，听不到 声音和文字没有连接 增加原句音频卡，短词块循环听 只记得一个中文意思 没有词性、搭配和句型 回到原句，补 2 个搭配和一个挖空 原句会说，换场景不会 没有做替换 固定换对象、原因、时间三个位置 当天记住，第二天忘 没有间隔后的主动提取 固定第 2 天复习；当天少重复 卡片越来越多 新增量超过恢复能力 暂停新卡 3 天，先清理旧卡 对话不敢用 没有低压力试用和补救句 先录音，再 AI，再真人 跟读很像但不会自由说 只模仿，没有脱稿回忆和改写 每次跟读后必须做个人句和问答 12.1 失败卡片怎么重做 先删掉无关信息：只留当前核心义、原句、音频和一个挖空。 把长句缩短，但不要失去场景。例如先用 The delivery was delayed，再逐步加 because of traffic。 把主动表达改成识别卡，重新建立理解；不是每张卡都必须立刻用于口语。 换成你真正经历过的场景。越接近你的生活，越容易在对话中调用。 连续失败三次时暂停这张卡，不要在同一天机械重复二十遍。隔天换材料再遇到它。 12.2 每周只看四个数据 数据 记录方法 如何判断 主动词块数 本周能从中文提示说出的词块 比收藏总数更重要 0 分卡数量 完全想不起或无法使用的卡 多就减少新卡 口语使用数 在录音/对话中真正说出的词块 低就增加迁移训练 重复错误 同一个搭配错误出现几次 高就做专门句型卡 12.3 你的第一周记录表 每天学习后填，不要凭感觉：\n日期：________ 今天新学词块：____________________________ 我今天主动说出的词块：____________________ 最容易忘的词：____________ 得分：0 / 1 / 2 我今天录音了没有：□是 □否 我重复的一个错误：____________ 下次复习：□ 明天 □ 第 4 天 □ 第 8 天 调整：____________________ 第十三章：练习页——现在就按步骤做 练习 A：从一个新词做完整加工 选择今天材料中的一个词，不要选最难的词。按顺序填写。\n字段 你的答案 目标词块（不是孤立词） ______________________ 原始完整句 ______________________ 中文场景（发生了什么） ______________________ 当前核心义 ______________________ 词性/句型 ______________________ 两个搭配 ______________________ 挖空句 ______________________ 我的个人句 ______________________ 别人可能问我的问题 ______________________ 第 2、4、8、15 天复习日期 ______________________ 练习 B：把词放回句子 中文提示 先遮住右栏自己说 项目因为大雨延期。 The project was delayed because of heavy rain. 现场主要问题是安全。 The main issue on site is safety. 我们需要检查材料。 We need to inspect the materials. 我们的进度落后了。 We are falling behind schedule. 交付因为交通而延误。 The delivery was delayed because of traffic. 练习 C：做三个替换 原句 换对象 换原因/时间 换成问题 The project was delayed because of heavy rain. ________ ________ ________ The main issue is the schedule. ________ ________ ________ We need to inspect the site. ________ ________ ________ 练习 D：30 秒口述 题目：说一个你最近遇到的延期、问题或检查任务。\n必须使用至少 2 个：delay / issue / schedule / inspect / material\n先写 3 个关键词：________　________　________\n第一遍录音：□ 完成 第二遍修正：□ 完成 我第二遍改好的表达：______________________ 第十四章：把「从 0 开始」变成长期学习系统 14.1 每个词都走同一条路 阶段 你做什么 通过标准 输入 从较容易的材料遇到词块 知道它来自什么场景 理解 确认核心义、词性和原句 能说出当前句子意思 声音 听音频、跟读、暂停复述 听到时能认出 回忆 填空、中文场景→英文 不看答案能说出 改写 换对象、原因、时间、地点 不依赖原句顺序 对话 回答、追问、澄清、修正 真实交流中用一次 间隔 第 2/4/8/15/30 天回忆 不靠当天熟悉感 14.2 30 天后的目标不要写成「背了多少词」 写成可以观察的结果：我能听懂多少短视频主题；我能从中文场景说出多少词块；我能用多少词块讲自己的专业；我能否回答一个问题并追问；同一个错误是否减少。词汇量是结果，不是每天唯一应该追的数字。\n14.3 证据强度怎么理解 方法 证据/来源类型 在本教程中的位置 主动回忆、间隔复习 学习科学研究和二语学习综述，支持较强 作为每个词的核心复习动作 语境、词块、可理解输入 研究与教师/机构实践共同支持 用原句和可理解材料选词 跟读、声音模仿 部分研究和教师实践支持 作为发音/听觉训练，不当完整课程 YouTube/X/Reddit 方法 教师示范和社区经验，证据较不一致 转成具体任务，不能当万能规律 AI 角色对话 对话式语言学习研究与实践正在发展 低压力重复，仍要真人反馈 你真正要坚持的不是某个 App，也不是某个频道，而是这个闭环：从容易理解的材料选一个高价值词块 → 听懂并看懂 → 遮住答案回忆 → 改成自己的句子 → 在对话中用 → 间隔后再次回忆。\n14.4 最终检查清单 我没有把所有生词都做成主动卡。 每个主动词都有原句、音频/声音、核心义和至少一个搭配。 我做过英文→意思，也做过中文场景→英文。 我把至少一半主动词改成了自己的句子。 我在录音或对话中用过本周词块。 我按照第 2、4、8、15、30 天回忆，而不是只在当天重复。 复习积压时，我会减少新词，不会继续堆。 证据和外网素材（仅供核验，不是链接清单） 这份教程把研究、教师频道和学习社区的做法转成了从 0 开始的操作步骤。来源类型不同，结论强度也不同：主动回忆和间隔复习有较强研究支持；词块、句子挖掘和平台工作流是研究与教学实践的综合；X/Reddit 中的个人经验只能作为可试用的策略。\n来源类别 本教程采用的内容 学习科学/二语研究 主动回忆、间隔学习、重复接触、口语反馈、对话式语言学习 Paul Nation Four Strands 输入、输出、语言聚焦、流利度；用于平衡整套学习系统 YouTube 教师实践 BBC/VOA：清晰输入；Rachel\u0026rsquo;s English：声音与重音；Easy English：真实回答；Leonardo English：泛听与精听 Refold 与 sentence mining 实践 从自己理解大部分的内容中选含少量新点的句子，不把每个生词都做卡 X/Reddit/论坛经验 真实表达、学习者的失败模式和方法争论；作为社区经验，不当作科学定论 主要核验来源名称 Dunlosky 等：Improving Students\u0026rsquo; Learning With Effective Learning Techniques。 二语间隔学习与重复/偶然词汇学习的元分析。 Paul Nation：The Four Strands。 口头反馈、shadowing、script-assisted shadowing 相关研究。 Dialogue-based CALL speaking meta-analysis。 Refold：Comprehensible Input 与 sentence mining 实践。 BBC Learning English、VOA Learning English、Rachel\u0026rsquo;s English、Easy English、Leonardo English 的教学实践。 关于 X 辅助专业英语学习以及可理解输入争议的研究/社区讨论。 本页只用于说明方法来源，不要求你逐个打开。正文的方法和练习才是需要执行的部分。\n","permalink":"https://yutterx.com/posts/learn-english-words-from-zero/","summary":"不是背词表：把每天 3-5 个词真正推进到「能在句子和对话中使用」的完整方法与练习。","title":"从 0 开始学英语单词：听到、认出、想起、造句、开口使用"},{"content":"本教程聚焦「自有 VPS + WireGuard」这一条合规的远程访问路线：适合个人设备安全访问自己的服务器、家庭网络或私有服务。重点放在原理、逐步配置、密钥管理、转发/NAT、客户端导入、验证和排错。\n⚠️ 安全边界：本教程不提供用于绕过网络封锁、规避平台风控、批量账号运营或隐藏违法流量的配置。请只在你拥有或获授权的 VPS、设备和网络上使用。\n你将完成什么 理解 VPS、WireGuard、Peer、AllowedIPs、Endpoint 和 PersistentKeepalive。 选择一台适合练习的 VPS，并完成购买前测试。 在 Ubuntu 上安装官方 WireGuard 工具，生成服务端和客户端密钥。 配置一个最小可用的「单客户端访问 VPN」的 wg0 隧道。 开启 IPv4 转发和 NAT，让客户端通过 VPS 访问外部网络。 在 Windows、Android、iPhone/macOS 导入配置并验证。 使用日志、握手时间、路由、DNS 和端口检查故障。 一、先理解：自建 VPN 到底是什么 自建 VPN 不是「买 VPS 后复制一条命令」这么简单。它是一条加密网络通道：客户端和 VPS 之间建立隧道，客户端把指定流量交给 VPS，再由 VPS 访问你授权使用的私有服务或互联网。\n客户端（电脑 / 手机） │ 加密 WireGuard 隧道 ▼ VPS：wg0 虚拟网卡 ── 服务器转发 / NAT ── 目标网络或互联网 核心术语 术语 在本教程中的含义 你需要记住什么 VPS 一台租用的远程 Linux 服务器 有公网 IP，负责接收 WireGuard 连接 WireGuard VPN 协议和工具集 官方工具包含 wg 与 wg-quick Peer 一个对等端 服务端和每台客户端都是独立 Peer PrivateKey 私钥 只保存在本机或对应设备，绝不公开 PublicKey 公钥 可以放在对端配置中，用于识别 Peer AllowedIPs 该 Peer 负责的地址/路由范围 服务端和客户端的含义不同，不能随便复制 Endpoint 对端可访问地址 客户端通常填 VPS 公网 IP:UDP 端口 Handshake 最近一次握手时间 判断隧道是否真正建立的重要指标 WireGuard 官方 Quick Start 介绍了用 wg/ip 配置接口、生成密钥和查看状态；Ubuntu 官方文档说明 wg-quick 是可管理接口，并可通过 systemd 设置开机自动启动。[1][3][4]\n二、购买 VPS：为 WireGuard 节点选对基础设施 WireGuard 本身很轻量，练习用 VPS 不需要高配。比 CPU 更重要的是：公网 IPv4、稳定网络、UDP 可用、服务商允许 VPN/隧道用途、控制台和退款政策清楚。\n步骤 1｜确认公网 IPv4 购买页面确认有独立公网 IPv4。没有公网 IPv4 时，客户端无法直接通过普通方式连接，排错难度会明显增加。\n步骤 2｜确认 UDP 可用 WireGuard 默认使用 UDP。确认云平台安全组、防火墙和服务商网络允许你使用自定义 UDP 端口。\n步骤 3｜选择 Ubuntu LTS 本教程以 Ubuntu LTS 为例。不同发行版的包名、服务管理和防火墙命令可能不同。\n步骤 4｜确认用途条款 阅读服务商 Acceptable Use Policy，确认个人 VPN、远程访问或私有网络用途被允许。\n步骤 5｜先月付测试 先测试 SSH、UDP 握手、重启恢复和实际访问，再考虑长期付费。\n步骤 6｜记录救援方式 保存控制台、Web Console、救援模式、快照和退款入口，避免 SSH 配错后无法恢复。\n购买后记录表 项目 填写你的实际值 服务商 ____________ VPS 公网 IPv4 ____________ 系统版本 Ubuntu __________ SSH 用户 root / 普通用户：____________ SSH 端口 ____________ WireGuard UDP 端口 例如 51820，实际使用：____________ 退款截止时间 ____________ 控制台 / 救援入口 ____________ ⚠️ 不要在 PDF 或截图里填真实密钥：本教程的所有地址、密钥、域名和密码都使用占位符。你的 PrivateKey、VPS 密码、SSH 私钥和客户端配置二维码不能发给别人，也不要提交到 GitHub。\n三、购买后先做服务器安全初始化 不要刚拿到服务器就执行来源不明的一键脚本。先登录、更新、备份、建立普通账号和防火墙，再安装 WireGuard。\n1. 第一次 SSH 登录 ssh root@203.0.113.10 第一次连接时会显示主机指纹。只有在确认 IP 和服务器来源正确后才接受。密码输入时通常不会回显，这是正常现象。\n2. 初始化检查 uname -a cat /etc/os-release ip addr ip route df -h free -h 3. 安全初始化顺序 步骤 1｜更新系统 先更新安全补丁。更新前确认有快照或救援控制台。\n步骤 2｜创建普通管理员 日常使用普通用户，必要时使用 sudo；不要长时间用 root 运行应用。\n步骤 3｜配置 SSH 密钥 在本地生成密钥，将公钥放到服务器，开启新会话测试成功后再关闭密码登录。\n步骤 4｜设置防火墙策略 先允许 SSH，再允许 WireGuard UDP 端口；最后根据 VPN 转发需求配置 FORWARD/NAT。\n步骤 5｜保存当前状态 记录 SSH 端口、用户名、防火墙规则和快照编号；修改网络前保留控制台救援路径。\n⚠️ 防止把自己锁在服务器外：关闭 SSH 密码登录前，必须打开第二个终端验证密钥登录成功。防火墙修改也要先确认当前 SSH 会话不会被切断。\n四、安装 WireGuard 并生成密钥 WireGuard 官方提供各平台安装方式；Ubuntu 可使用系统包安装 wireguard。官方文档也说明 wg-quick 负责接口的启动、地址和路由等常见配置。[1][2][4]\nsudo apt update sudo apt install -y wireguard wireguard-tools 生成服务端私钥和公钥：\nsudo install -m 700 -d /etc/wireguard cd /etc/wireguard umask 077 wg genkey | sudo tee server_private.key | wg pubkey | sudo tee server_public.key 生成客户端密钥：\nwg genkey | tee client1_private.key | wg pubkey \u0026gt; client1_public.key chmod 600 client1_private.key 💡 密钥关系：服务端配置中放——服务端 PrivateKey + 客户端 PublicKey；客户端配置中放——客户端 PrivateKey + 服务端 PublicKey。不要把 PrivateKey 填到对端的 PublicKey 字段。\n五、规划 VPN 地址和端口 本教程使用文档示例网段，避免与 VPS、家庭路由或公司内网冲突。实际部署时请选择你自己的私有网段。\n项目 示例值 说明 VPN 网段 10.8.0.0/24 隧道内的虚拟地址范围 服务端地址 10.8.0.1/24 WireGuard 服务端 wg0 地址 客户端地址 10.8.0.2/32 第一台客户端的固定隧道地址 监听端口 51820/UDP 可自定义；云安全组和 UFW 要同步放行 公网接口 eth0（示例） 实际可能是 ens3、enp1s0 等，先用 ip route 查 DNS 由你选择的可信 DNS 如果要把 DNS 纳入隧道，需额外验证客户端行为 查看默认公网接口：\nip route get 1.1.1.1 # 从输出中找到 dev 后面的接口名，例如 eth0 或 ens3 为什么不直接使用 VPS 的公网 IP 作为客户端地址？ WireGuard 隧道应该使用独立的私有地址段。公网 IP 用作 Endpoint，私有地址用于隧道内通信；两者作用不同。\n六、编写服务端配置 wg0.conf 服务端配置包含 Interface 和 Peer 两部分。下面是结构模板，所有密钥使用占位符；不要把这份模板当成可直接复制的真实配置。\n[Interface] Address = 10.8.0.1/24 ListenPort = 51820 PrivateKey = SERVER_PRIVATE_KEY # 下面的 PostUp/PostDown 用于转发/NAT，接口名和防火墙方案要按你的系统调整 PostUp = ... PostDown = ... [Peer] # client1 PublicKey = CLIENT1_PUBLIC_KEY AllowedIPs = 10.8.0.2/32 保存文件并限制权限：\nsudo chmod 600 /etc/wireguard/wg0.conf sudo wg-quick up wg0 sudo wg show sudo ip addr show wg0 💡 AllowedIPs 的关键点：服务端对单个客户端通常填写该客户端的隧道地址 /32，避免两个客户端使用同一个地址。多个客户端就添加多个 Peer，每个 Peer 使用不同的地址和 PublicKey。\n七、开启转发和 NAT：让客户端能够访问外部网络 WireGuard 隧道建立后，客户端能否访问外部网络取决于服务器是否允许转发，以及是否把 VPN 地址转换成公网地址。\n1. 临时确认内核转发状态 sysctl net.ipv4.ip_forward 如果返回 0，说明 IPv4 转发未开启。生产环境应通过 /etc/sysctl.d/ 建立持久配置，并重新加载。具体防火墙/NAT 命令应按 Ubuntu 版本、UFW/nftables/iptables 方案和公网接口调整。\n2. NAT 的概念 客户端 10.8.0.2 ↓ WireGuard wg0 服务端 10.8.0.1 ↓ 转发 + NAT 公网接口 eth0 → 互联网 3. 配置时必须确认的 5 件事 步骤 1｜公网接口名称 不要照抄 eth0。使用 ip route get 1.1.1.1 查实际接口。\n步骤 2｜转发开关 确认 IPv4 forwarding 持久开启，并理解重启后的状态。\n步骤 3｜防火墙 FORWARD 允许 wg0 与公网接口之间的必要转发，不要直接把所有内网端口暴露出去。\n步骤 4｜NAT/MASQUERADE 只对 VPN 私有网段和正确公网接口做 NAT，避免误伤其他流量。\n步骤 5｜云平台安全组 除了 VPS 内部防火墙，还要在云平台放行 WireGuard UDP 端口。\n⚠️ 不要把「所有流量」当默认选项：客户端 AllowedIPs 写成 0.0.0.0/0 会把全部 IPv4 流量交给 VPN，DNS、银行、公司系统和本地设备访问都可能受影响。初次配置建议先使用分流/私网测试范围，确认链路正确后再决定是否需要全隧道。\n八、编写客户端配置 客户端需要自己的 PrivateKey、服务端 PublicKey、服务端公网 Endpoint 和自己的隧道地址。\n[Interface] PrivateKey = CLIENT1_PRIVATE_KEY Address = 10.8.0.2/32 DNS = 10.8.0.1 [Peer] PublicKey = SERVER_PUBLIC_KEY Endpoint = 203.0.113.10:51820 AllowedIPs = 10.8.0.0/24 PersistentKeepalive = 25 初次测试使用 10.8.0.0/24 只验证隧道内网。确认握手和服务器访问正常后，再根据你的合法使用场景增加需要的网段。\n九、客户端安装和导入 WireGuard 官方提供 Windows、macOS、Android、iOS 和 Linux 安装入口。[2]\n平台 安装来源 导入方式 Windows WireGuard 官方安装包 Import tunnel(s) from file 或粘贴配置 macOS App Store / 官方入口 导入 .conf 或二维码 Android Google Play / 官方入口 导入文件、二维码或创建隧道 iPhone/iPad App Store / 官方入口 导入文件、二维码或 AirDrop Linux 发行版包管理器 wg-quick up wg0 导入前检查 客户端 PrivateKey 是客户端自己的私钥。 服务端 PublicKey 与服务端实际文件一致。 Endpoint 是 VPS 公网 IP 或域名加 UDP 端口。 Address 不与其他 Peer 重复。 AllowedIPs 与你的测试目标一致。 配置文件权限合适，不能放在公开共享目录。 十、启动、验证和停用 # Linux 服务端 sudo wg-quick up wg0 sudo wg show sudo wg-quick down wg0 # 设置开机启动 sudo systemctl enable wg-quick@wg0 sudo systemctl status wg-quick@wg0 Ubuntu 官方文档说明，可以使用 systemctl 管理 wg-quick 接口，并设置开机自动启动；修改 Peer 时可优先使用 reload，涉及地址、路由或 PostUp/PostDown 等变化时再考虑 restart。[3]\n十一、WireGuard 节点故障排查 现象 检查顺序 常见原因 客户端无握手 Endpoint → UDP 安全组 → UFW → wg show IP/端口错误、UDP 未放行、服务未启动 有握手但无内网访问 Address、AllowedIPs、wg0 地址 Peer 地址重复、路由范围写错 有握手但不能访问外部 ip_forward → FORWARD → NAT → DNS 转发未开、NAT/接口名错误、DNS 不通 连接一段时间后断 PersistentKeepalive、网络切换、MTU NAT 映射过期、移动网络变化、MTU 不合适 一个客户端正常另一个不行 PublicKey、AllowedIPs、地址分配 复制配置未换密钥或地址冲突 重启后失效 systemctl status、journalctl 未启用服务、自定义脚本失败 访问变慢 路由、带宽、CPU、MTU、目标服务 线路拥堵、带宽共享、分片或目标端限制 1. 首先看握手 sudo wg show # 重点看 latest handshake、transfer-rx、transfer-tx 如果完全没有 latest handshake，先不要查 NAT；问题还在 Endpoint、UDP 端口、防火墙、密钥或客户端配置层。\n2. 再看接口和路由 ip addr show wg0 ip route sudo ss -lunp | grep 51820 sudo journalctl -u wg-quick@wg0 --no-pager -n 80 3. 最后查转发和 DNS 确认客户端能 ping/访问 10.8.0.1（如果防火墙允许）。 确认服务器能访问外部目标。 确认客户端 DNS 设置合理。 确认全隧道场景下 DNS 不被本地网络泄漏。 十二、安全加固和维护 自建 VPN 节点本质上是公网服务器。隧道加密并不等于服务器自动安全。\n步骤 1｜保护私钥 服务端和客户端私钥分开保存；任何一台设备丢失时，只撤销对应 Peer，不必更换所有设备。\n步骤 2｜每台设备一个 Peer 不要让多台设备共用同一份客户端配置，否则无法单独撤销和定位流量。\n步骤 3｜最小开放端口 公网只放行 SSH（最好限制来源）和 WireGuard UDP；网站端口按需要开放。\n步骤 4｜管理端口不公开 不要把面板、数据库、Redis、Docker API 等管理服务暴露到公网。\n步骤 5｜定期更新系统 关注 Ubuntu 安全更新、WireGuard 工具和云平台通知；更新前保留快照。\n步骤 6｜备份配置但要加密 备份 wg0.conf 时脱敏或加密；不要把私钥和二维码放到公开网盘。\n步骤 7｜监控异常流量 关注握手、流量、CPU、内存、磁盘和登录失败；出现异常时先停用对应 Peer。\n步骤 8｜遵守服务条款 只在允许的用途、设备和网络上使用，不用于攻击、盗版、诈骗、绕过平台规则或隐藏违法行为。\n⚠️ 撤销丢失设备：删除服务器 wg0.conf 中对应客户端的 [Peer]，或使用 wg set 临时移除，然后 reload/restart；同时删除该设备本地配置。不要只「换个名字」，要撤销旧 PublicKey。\n十三、上线前检查清单 项目 完成标准 VPS 公网 IPv4、UDP 可用、服务条款允许、快照和救援入口可用。 系统 系统更新完成、时间正常、普通管理员和 SSH 密钥可用。 WireGuard 服务端和客户端密钥一一对应；每个 Peer 地址唯一。 网络 安全组、UFW/FORWARD、转发和 NAT 按实际接口配置。 客户端 Endpoint、端口、AllowedIPs、DNS 和 Keepalive 已核对。 验证 wg show 有最新握手，收发流量增长，目标地址可访问。 恢复 wg-quick 服务已设置开机启动，重启后重新验证。 安全 私钥未泄露，管理端口未暴露，丢失设备有撤销方案。 最终建议：先做「单客户端 + 仅访问隧道内网」的最小实验，确认握手、地址和路由正确，再逐步增加转发范围。每增加一个功能，都保留一次可回滚的配置。\n十四、官方资料 WireGuard 官方 Quick Start：接口、密钥、Peer 和基础启动方式。[1] WireGuard 官方 Installation：Windows、macOS、Ubuntu、Android、iOS 等安装入口。[2] Ubuntu WireGuard 文档：wg-quick、systemd 自动启动、reload/restart 和常见任务。[3][4] Cloudflare DNS 文档：更换 NS、DNSSEC、A/AAAA/CNAME、代理状态和 DNS-only/Proxied 的区别。[5][6][7] 十五、结论 VPS 自建 WireGuard 的正确学习顺序是：\n买 VPS → SSH 加固 → 安装 WireGuard → 生成密钥 → 配置 wg0 → 开启转发/NAT → 导入客户端 → 检查握手 → 测试路由/DNS → 设置开机启动 → 备份和维护\n不要把重点放在「哪条命令最神奇」，而要理解每一层出了问题如何验证。能看懂握手、路由、端口、转发、NAT 和日志，才是真正掌握了自建 VPN 节点。\n资料来源和版本说明：本教程以 WireGuard、Ubuntu Server 和 Cloudflare 官方文档为主要依据；示例地址、私钥、域名和端口均为占位符。具体命令会因发行版、防火墙方案、云平台安全组和客户端版本变化，请以当前官方文档为准。\n附录：配置占位符与原始资料 请把下面占位符替换为你自己的值；不要把真实密钥粘贴到公开文档或截图中。\n占位符 含义 SERVER_PRIVATE_KEY 服务端私钥，只放服务端 SERVER_PUBLIC_KEY 服务端公钥，放到客户端 Peer CLIENT1_PRIVATE_KEY 第一台客户端私钥，只放客户端 CLIENT1_PUBLIC_KEY 第一台客户端公钥，放到服务端 Peer VPS_PUBLIC_IP VPS 公网 IPv4 WG_PORT WireGuard UDP 监听端口 VPN_SUBNET 隧道私有网段，例如 10.8.0.0/24 CLIENT_ADDRESS 某一客户端隧道地址，例如 10.8.0.2/32 官方资料链接 https://www.wireguard.com/quickstart/ https://www.wireguard.com/install/ https://ubuntu.com/server/docs/how-to/wireguard-vpn/common-tasks/ https://ubuntu.com/server/docs/explanation/intro-to/wireguard-vpn/ https://developers.cloudflare.com/dns/zone-setups/full-setup/setup/ https://developers.cloudflare.com/dns/manage-dns-records/ https://developers.cloudflare.com/dns/proxy-status/ 内容边界：本教程只面向你拥有或获授权的 VPS、设备和网络，用于合法的远程访问、私有服务和安全测试。不提供绕过网络封锁、规避平台风控、批量账号运营或其他违反服务条款的配置。\n","permalink":"https://yutterx.com/posts/vps-wireguard-vpn/","summary":"从购买 VPS、服务器加固、WireGuard 配置，到客户端导入与故障排查——一条合规的远程访问路线。","title":"VPS 自建 WireGuard VPN 节点：从购买到排障的详细教程"},{"content":" ✍️ 深度研究报告｜作者：数字生命卡兹克（Khazix）｜方法论：横纵分析法 研究时间：2026-09-02 ｜ 所属领域：消费电子 / 科技 ｜ 研究对象类型：公司\n一句话定义 Apple 是一家把「把复杂技术做成普通人一步就会用的产品」当作信条的公司——它像一家奢侈品公司那样卖电子消费品，靠硬件、软件、服务三层的垂直整合把用户锁进自己的生态系统里，再靠这台「生态印钞机」源源不断地产生让所有同行眼红的利润。它不是发明最多的公司，但它是把东西做对、做美、做成生活习惯的一家。\n二、纵向分析：从诞生到当下 阶段一：车库里的一台机器（1971–1980） 这一切的起点，不是一场意气风发的创业，而是一对性格天差地别的朋友。1971 年，21 岁的乔布斯（Steve Jobs）和 25 岁的沃兹尼亚克（Steve Wozniak）经朋友比尔·费尔南德斯撮合认识。乔布斯是那个一头长发、追求禅修和直觉的嬉皮士；沃兹是那个在惠普上班、痴迷电路、恨不得把每个芯片都拆开看一遍的工程师。一个负责「这东西应该让人爱上」，一个负责「这东西到底怎么造出来」。这对组合，奠定了 Apple 往后五十年的基本性格——天才工程师造出东西，乔布斯把它变成让人离不开的东西。\n1975 年，加州山景城的家酿计算机俱乐部（Homebrew Computer Club）开始聚会，沃兹带着自己设计的 Apple I 电路板去展示。这块板子当时没人当回事——在那个年代，个人计算机是一小撮电子爱好者自己焊的玩具。但沃兹遇到了一个伯乐：拜特商店（Byte Shop）的老板保罗·特雷尔（Paul Terrell），他直接下了 50 台组装好的主板订单。这笔订单给两个穷小子注入了「这玩意儿能卖钱」的信念，也逼着他们把「图纸」变成「商品」。\n1976 年 4 月 1 日，乔布斯、沃兹和第四十岁的 Ron Wayne 签了一份两页的合伙协议，正式创立 Apple Computer（苹果电脑公司）。选在愚人节这天成立，回头看像是一句谶语——因为这家公司后来真的像玩笑一样，从一个车库里的小作坊，变成了全世界最值钱的公司之一。\n公司刚成立就差点散架。Ron Wayne 是个谨慎的老程序员，他四年前自己开公司失败过，被这笔生意吓得够呛——毕竟三个人的启动资金，是乔布斯卖掉自己的大众小巴换来的 1500 美元，加上沃兹卖掉惠普计算器的 500 美元。Wayne 在成立后十一天就退出了，把他那 10% 的股份以区区约 2300 美元卖回给了两兄弟。这笔买卖后来被反复提起——因为那 10%，按 Apple 如今约 3.7 万亿美元的市值来算，值约 3700 亿美元。史上最贵的「错误」之一，浓缩成一次慌张的退出。但这也从侧面说明：Apple 从一开始就是一门年轻人用全部身家赌博的生意，谨慎的人活不下来。\n转折发生在 1976 年底。迈克·马库拉（Mike Markkula），一位 32 岁、靠英特尔期权财务自由的投资人，给两个年轻人投了钱，还亲自写了商业计划书。他带来的是 Apple 早期最缺的东西——成年人的商业纪律。1977 年 1 月 3 日，Apple 正式注册为 Apple Computer, Inc。同年 4 月 16 日，沃兹拿出他真正的杀手锏——Apple II，一台带彩色图形、有 8 个扩展槽、外壳是精心设计的塑料壳的一体机。在首届西海岸计算机展会上，Apple II 一炮而红，一台卖 1298 美元。\nApple II 的意义不在参数，而在一个理念：计算机不该是爱好者自己攒的散件，而应该是插上电就能用的成品。这比「便宜」更重要——它重新定义了「什么是一台给普通人用的电脑」。到 1977 年，Apple 已经不只是卖板子，而是在卖一种体验。\n1980 年 12 月 12 日，Apple 上市，发行价每股 22 美元，融资超过 1 亿美元。一夜之间，乔布斯和沃兹成了千万富翁——而在那个年代，个人计算机产业才刚刚露出水面。Apple 从车库到华尔街，只用了四年。\n故事到这，像所有天才创业的童话。但童话最大的风险，往往是它太顺利了——顺利到让创始人相信自己无所不能。\n阶段二：Mac 的诞生与权力的代价（1980–1985） Apple 的第二个产品周期，是从「开创新品类」转向「押注一个还不存在的未来」。\n1979 年，乔布斯带队去了施乐帕克研究中心（Xerox PARC），看到了全世界第一个图形用户界面（GUI）和鼠标。那是计算机史上最著名的一次「偷师」——乔布斯后来毫不避讳地说，施乐的人根本不知道自己做出来的东西价值多大。他当即决定，Apple 下一代电脑要用图形界面。\n结果做出了 Lisa，一台在 1983 年以 9995 美元天价上市的图形界面电脑。这款产品太超前、也太贵了，市场根本不买账，成了 Apple 早期最大的商业失败。但它的技术积累没有白费——1984 年 1 月 24 日，乔布斯用史上最著名的广告「1984」和一句「我们把它带给你们——Macintosh」，把图形界面带到了普通消费者面前，而价格只有 Lisa 的四分之一。雷德利·斯科特拍的这支广告，在超级碗期间播出，把 Macintosh 包装成打破「老大哥」统治的叛逆者，也把 Apple 的品牌精神刻进了大众心里——Apple 是挑战者，是给「我们这些普通人」造工具的人。\n然而，盛名之下，裂痕已经出现。乔布斯开始被身边的人认为「太任性、太难相处」。1983 年，他把百事可乐总裁约翰·斯卡利（John Sculley）挖来当 CEO，用那句著名的话：「你想卖一辈子糖水，还是想跟我一起改变世界？」——但两人蜜月期极短。到了 1985 年，Macintosh 销量远低于预期，公司陷入亏损，董事会站在了更懂商业的斯卡利一边。乔布斯先是被剥夺了 Macintosh 部门的管理权，再被指试图发动「宫廷政变」，最终在 1985 年 9 月 17 日正式辞职。\n他走的时候恨意极深——几乎卖光了所有 Apple 股票，只留一股「好保持关注」。这一次出走，是乔布斯、也是 Apple 命运的第一个大转折。一个能把产品做到极致的天才，被他自己组建的公司赶了出去。而这只是开始——因为接下来的十二年，才是 Apple 真正的至暗时刻。\n阶段三：至暗时刻与流亡的十二年（1985–1997） 乔布斯走了，留下一个没有了「产品灵魂」的 Apple，和一堆越来越杂、越来越没竞争力的产品线。\n他被驱逐后创立了 NeXT，一台面向教育和工作站市场的高端电脑——技术上很漂亮，但商业上同样失败，一度烧掉了他自己的钱。讽刺的是，正是这个「失败」的 NeXT，后来成了 Apple 的救命稻草。同一时期，Apple 在斯卡利、斯平德勒、阿梅里奥三任 CEO 手里一路下滑，90 年代初个人电脑市场的份额跌到个位数，预算连年紧缩。\n这十二年里，Apple 也不是没有亮点：1991 年推出 Macintosh PowerBook，定义现代翻盖笔记本的形态；1991 年发布 QuickTime，做了消费级数字视频格式的先驱；1994 年转向 PowerPC 芯片。但这些都是「做好一个已有品类」，而不是「开创一个新世界」。更致命的是产品线的失控——Newton 掌上电脑（1993）在商业上失败，帮斯卡利丢了职位；产品型号多得让人记不住，连内部人都理不清。\n真正的溃败在于：微软和 Wintel 同盟用更便宜、更普及的 PC 淹没了 Apple。讽刺的是，当年乔布斯从施乐 PARC「偷」来的图形界面，被微软学去做了 Windows，而苹果打的那场长达七年的界面版权官司，最终在 1994 年被美国最高法院判了败诉。Apple 引以为傲的「创意」，不仅没挡住对手，反而被人学走拿去称霸——这是它历史上最漫长、最无奈的一局。\n到 1996 年，Apple 已经站在破产边缘。董事会病急乱投医，决定买一个像样的操作系统来救急，最终以 4.29 亿美元收购了乔布斯的 NeXT——这个价格，在今天看来简直是「抄底捡到宝」。1997 年 7 月，苹果董事会罢免了 CEO 阿梅里奥，随后请回了那个曾被自己扫地出门的人。乔布斯终于回来了——先是作为「临时 CEO」，后来转正，一直到 2011 年。\n这场回归，被公认为商业史上最成功的「绝地翻盘」之一。一个亲手把用户推向敌人的公司，最后靠那个敌人救了命。命运和 Apple 开了一个巨大的玩笑——但这一次，它接住了。\n阶段四：回归与十年复兴（1997–2007） 乔布斯回归后做的第一件事，不是发布新产品，而是做减法。他砍掉了一大半产品线，把混乱的数十款 Mac 精简到只有四款，还砍掉了 Newton 等累赘。这是他奉行一生的信条——「专注就是说不」。但同时，他也做了一件让不少人跌破眼镜的事：1997 年 8 月，他主动和微软的比尔·盖茨「和解」，让微软拿出 1.5 亿美元注资 Apple，换来的是 Apple 继续用微软的 Office 软件。一个曾经恨透了微软的偏执狂，为了活下去，放下身段跟宿敌握手。这一手，救了命。同年 11 月，Apple 开了自己的在线商店（Apple Store），用 WebObjects 技术做定制化生产，直接向消费者销售——这也是后来 Apple 渠道革命的开端。\n真正的复兴产品是 1998 年的 iMac。它把 CRT 显示器和主机融合成一个半透明、糖果色的塑料一体机，销量达到千万台级别。iMac 的火爆，不只救了 Apple 的现金流，更重要地，它把 Apple 重新拉回了大众视野——「Apple 回来了」。那个前缀「i」，乔布斯解释成 internet、individual、instruct、inform、inspire——五个词，几乎概括了 Apple 往后所有产品的灵魂：「个人化的、面向互联网与人的」。\n接着，是连续几记重拳，把一个「电脑公司」变成了「数字生活公司」：\n2001 年，Mac OS X 发布——基于 NeXT 的 NeXTSTEP 技术，是未来所有 Apple 操作系统的基石，也是 Apple 技术一脉相承的明证。同样是 2001 年，1 月推出 iTunes，10 月推出第一代 iPod（能装 1000 首歌）。iPod 是 Apple 第一次「跨界」——从电脑走向人人可以带的音乐播放器，从此 Apple 不再是「只懂电脑的极客品牌」。 2003 年，iTunes Music Store 上线，一首歌 99 美分，彻底改变了音乐产业的商业模式；同年 Apple 推出自家浏览器 Safari，摆脱了对微软 IE 的依赖。 2005 年，Apple 宣布从 PowerPC 转向 Intel 处理器。这是第三次芯片换血（68000 → PowerPC → Intel），背后是 IBM/Motorola 在能效上逐渐跟不上，而 Intel 的 x86 架构性能更强。也是从这一年开始，Apple 学会了「自研芯片好还是买别人芯片好」这道题的真正答案——它后来会在 2020 年给出终极答案：自己做。 然后，是那个改写一切的午后——2007 年 1 月 9 日，乔布斯走上旧金山 Macworld 的舞台，说他要展示三样东西：一个带触摸屏的 iPod、一部革命性的手机、一个互联网通信设备。全场等着他一件件掏出来，结果他说：「这些不是三个设备。这是一个设备！我们叫它 iPhone。」话音落下，整个消费电子行业的座次被彻底重排。iPhone 的多点触控界面、浏览器级的互联网应用、把「电脑装进口袋」的野心——它不是一个手机，而是 Apple 对「个人计算机」的一次重新定义。第二年，App Store 上线，第三方应用涌入，iPhone 从一个「花哨手机」变成「无所不能的口袋设备」。\n这一年，离乔布斯被扫地出门刚好二十年。二十年前他被自己的公司抛弃，二十年后他带着一部手机，把整个行业炸了个遍。Apple 这家公司最动人的地方，就在这里——它从不纠缠过去，它只不断证明自己还有下一次。\n阶段五：iPhone 革命与后乔布斯时代（2007–2011） iPhone 之后，Apple 进入了一段近乎「开挂」的黄金期，但也是在这段高潮里，它迎来了失去创始人的剧痛。\n2008 年，App Store 上线，第三方开发者涌入，把一个封闭设备变成了「生态」。2010 年，乔布斯推出 iPad——一台用 Apple 首颗自研 ARM 芯片（A4）驱动的平板，跟 iPhone 共用 iOS 和 App Store。很多人质疑「不过是大号的 iPhone」，但 iPad 硬生生开辟了平板这个新品类，后来成了不少学校和创意工作者的主力工具。2011 年 10 月 4 日，iPhone 4S 发布，并首次带上了 Siri 语音助手——当时惊艳四座，但后来没能追上亚马逊 Alexa 等对手，成了 Apple 在 AI 领域「起个大早、赶个晚集」的第一个伏笔。\n就在 iPhone 4S 发布后的第二天，2011 年 10 月 5 日，史蒂夫·乔布斯因胰腺癌去世，享年 56 岁。这场长达数年的告别，全世界都看在眼里；而他走后，留下的问题是 Apple 史上最沉重的一个：没有了那个「唯一的产品权威」，这家靠天才驱动的公司，还能不能继续伟大？\n接任的是蒂姆·库克（Tim Cook）。库克不是产品天才，他是供应链和运营天才——在乔布斯在世时，他就是那个把「天马行空的设计」变成「能按时、成规模、低成本造出来」的人。乔布斯负责「造什么东西」，库克负责「怎么把它稳定地、大规模地、赚钱地造出来」。这两种能力，恰恰是 Apple 往后十二年的基石。\n阶段六：库克的规模帝国（2011–2024） 如果说乔布斯时代是「创造力的巅峰」，那库克时代就是「规模化的巅峰」。库克没有发明 iPhone，但他把 Apple 变成了一台几乎无懈可击的印钞机。\n先说产品线的延续。2014 年，Apple 花 30 亿美元收购 Beats（耳机 + 流媒体），补齐了音乐和音频版图；同年发布 Apple Watch，这是乔布斯去世后第一个全新产品线——一开始定位混搭时尚与健身，评价褒贬不一，后来转向健身与健康，成了全球最畅销的手表。2016 年，AirPods 问世，一个「摘掉耳机线」的小产品，后来成了 Apple 最受欢迎的可穿戴设备，也开启了 TWS 耳机的时代。\n但真正奠定库克地位的是商业模式的进化，而不是单个爆品。乔布斯时代 Apple 主要靠「卖硬件」赚钱；库克时代，Apple 把 iPhone 之外那片被低估的版图——服务业务——做成了第二增长曲线：App Store 的抽成、iCloud 订阅、Apple Music、Apple TV+、Apple Pay、AppleCare……这些业务利润极高、不需要造新硬件，是纯粹的印钞机。到 2026 年，服务业务单季度营收已经能到 300 亿美元左右，而 Apple 的活跃设备安装基数早已超过 25 亿台——这意味着每一台卖出去的 iPhone，都会在未来很多年里持续给 Apple「交租金」。\n还有资本运作。库克时代，Apple 启动了史无前例的回购和分红，把赚来的巨额现金还给股东，同时保持着极高的资本效率。它不像微软、谷歌那样把几百亿砸进数据中心，而是用「资产轻型」的模式赚钱——这让它的 ROE（净资产收益率）常年高得离谱（141% 量级），几乎是微软的三四倍。\n于是市值一路飙升：2018 年 8 月，Apple 成为全球第一家市值突破 1 万亿美元的公司；2020 年 8 月，破 2 万亿美元；2022 年 1 月，破 3 万亿美元。这三年，恰逢全球疫情、供应链危机、通胀高企——但 Apple 几乎毫发无损，还越涨越高。到 2026 年，它的市值在 4.5 万亿美元上下，依然稳居全球第一。\n但库克的「规模帝国」也一直被诟病：创新放缓。除了 Vision Pro，库克时代几乎没有诞生乔布斯级别的全新品类——都是对既有产品（iPhone、Mac、Watch、iPad）的迭代和优化。而且，苹果高度依赖 iPhone——iPhone 常年占营收一半以上，这既是现金牛，也是最大的风险单点。在手机这个核心战场，库克靠精准的供应链和品牌粘性稳住了份额，但天花板也越来越近。\n技术储备上，库克埋下了两颗未来的种子：一颗是 2020 年发布的 Apple Silicon（M 系列自研芯片），Apple 终于从「买别人的 CPU」变成「自己设计芯片」，让 Mac 性能、能效双双暴涨，也给了它日后做端侧 AI 的硬件底气；另一颗，是 2023 年 6 月发布的 Vision Pro——一台 3499 美元的空间计算机。这颗种子，在 2024 年发芽，却在 2026 年被证明种错了地方。\n阶段七：AI 时代与后库克的转折（2024–2026） 2024 年 6 月，WWDC 上 Apple 终于正面回应了全民热议的生成式 AI——发布 Apple Intelligence（苹果智能），把它深度嵌入 iOS 18、iPadOS 18、macOS Sequoia，并喊出「Private Cloud Compute」的口号：能本地跑的就本地跑，需要云端计算的部分，用专门的 Apple 硅服务器处理，把数据留在「可信」的范围内。这是一个明显的「差异打法」——对手都在拼模型能力，Apple 在拼隐私和体验。同年 10 月，第一批 Apple Intelligence 特性随 iOS 18.1 落地；同时 Apple 与 OpenAI 达成合作，把 ChatGPT 集成进 Siri 和系统级写作工具——注意这个信号：Apple 没有自研出能打的模型，而是选择「用别人的 AI」。\n这里藏着 Apple 在 AI 上的尴尬处境。它的 Siri 早在 2011 年就开了语音助手的先河，却十多年没真正进化；它重视隐私、体验克制，这在「快速迭代、云端协同」的生成式 AI 时代反而拖了后腿；它的 Apple Intelligence 反复被推迟、功能被批评「不够惊艳」，与谷歌 Gemini、微软 Copilot 的激进相比显得谨慎。到 2026 年，Apple 甚至被曝在探索第三方 AI 方案（不止 OpenAI），被外界解读为「对自己自研模型信心不足」。\n但与此同时，Apple 的基本盘在 2025–2026 却异常强劲。2025 年 9 月，Apple 推出 iPhone 17 系列（17、17 Pro、17 Pro Max）和定位轻量级的 iPhone Air，还补了 iPhone 17e，用更强的 A18/A19 芯片和 Apple Intelligence 拉动换机潮；同年还发布了 M5 版 MacBook Pro 和 iPad Pro、AirPods Pro 3，以及一款主打性价比、把起步价压到 599 美元的 MacBook Neo——这款「亲民 Mac」在教育和首次换机用户里极受欢迎。财报上，2026 财年 Q2（截至 3 月）营收 1112 亿美元（+17%），Q3（截至 6 月）营收 1094 亿美元（+16%），iPhone 在多个市场创新高，服务业务屡破纪录，大中华区更是因 iPhone 17 大涨。\n转折发生在两件标志性事件上。\n第一件是空间计算的「退场」。 2023 年被寄予厚望、以「下一种个人计算」姿态登场的 Vision Pro，在 2025 年 M5 更新后依然无人问津——累计销量仅约 60 万台，退货率异常偏高，价格高达 3499 美元（后因内存涨价涨到 3700 美元）。2026 年，接替库克的硬件工程负责人约翰·特努斯（John Ternus）果断砍掉了 Vision Pro 2 和更轻的 Vision Air 项目，把团队转向 AI 智能眼镜和 Siri，并对相关团队裁员 200 多人。这意味着，Apple 暂时承认了「头显」这条探索路径的失败，把赌注押向了更像日常配饰、更大众的智能眼镜（预计 2027 年推出对标 Meta Ray-Ban 的 AI 眼镜，2029 年再上带光学波导的 AR 眼镜）。\n第二件，是权力的交棒。 2026 年 9 月 1 日，蒂姆·库克正式卸任 CEO，由硬件工程出身的资深高管约翰·特努斯接任。这标志着 Apple 正式进入「后库克时代」——特努斯是工程师背景，擅长做硬件决策，他上来就挥刀砍掉了短期看不到回报的 Vision Pro，把资源集中到 AI 和可穿戴。Apple 的下一步，将在他的手里落子。\n而 Apple 此刻面临的双重命题也格外清晰：一边，它靠 iPhone 这棵摇钱树和高毛利服务业务，在 AI 浪潮里「站着收钱」，活得比谁都滋润；另一边，它在真正的底层 AI 能力上仍显被动，既要靠 OpenAI、谷歌的模型撑门面，又要顶着「隐私优先」的旗号跟那些激进的对手周旋，同时还要应付中国这个最大增量市场里华为的强势反攻。这不再是一个「天才创造新品类」的故事，而是一个「成熟巨头如何在范式转移中守住地位」的博弈。\n三、横向分析：竞争图谱 Apple 从来不是单线作战。它同时横跨手机、电脑、可穿戴、平板、耳机、服务、流媒体、金融（Apple Pay/Apple Card）乃至空间计算等至少十几个战场，每个战场的对手、胜负手、逻辑都不一样。下面挑四个最关键的横切面展开。\n3.1 手机战场：高端双雄的「存量收割」 手机是 Apple 全部业务的圆心，常年贡献一半以上营收。这个战场的核心，是少数几家巨头在一个几乎不再增长的市场里互相蚕食。\n先看格局。2026 年第一季度，全球智能手机出货量同比下滑 2.9% 至 2.938 亿台，打破了 2023 年中期以来连续 10 个季度增长的势头；而这背后是一场席卷行业的内存涨价风暴——AI 基建疯狂抢购存储芯片，导致内存、NAND 价格飙涨，所有厂商的成本压力陡增。IDC 预测 2026 年全球出货将暴跌 13.9% 到约 10.9 亿台，是史上最陡的年降幅，智能手机平均售价（ASP）被推到创纪录的 550 美元。\n厂商 1Q26 出货（百万台） 1Q26 份额 1Q25 出货 年度同比 三星 62.4 21.2% 60.6 +2.9% Apple 61.8 21.0% 59.1 +4.4% 小米 33.8 11.5% 41.8 -19.1% OPPO 30.7 10.5% 34.1 -9.9% vivo 21.2 7.2% 22.7 -6.9% 真正的分歧在于：在一片哀鸿中，谁能逆势增长？注意一个关键：在全球前五大厂商里，三星和 Apple 是仅有的两家实现同比增长的，其余安卓阵营（小米、OPPO、vivo）全线大幅下滑。为什么？因为内存涨价、BOM 成本飙升，首当其冲的就是那些主打低价、走量的安卓厂商——它们要么涨价吓跑消费者，要么被成本压垮。而 iPhone 和三星 Galaxy 的高端定位，以及它们与内存供应商的强议价能力，让它们在成本危机里反而更从容、更能抢份额。\nIDC 的分析直言：「在市场下行、价格上移以对冲 BOM 成本的背景下，拥有规模、供应链议价权、定价权（也就是 Apple、三星，以及中国市场的华为）的厂商会收获份额；而那些集中在入门价段、新兴市场的小安卓品牌，将面临最剧烈的收缩，部分甚至会退出市场。」\n这里就引出手机的第二个横切面——中国市场。这可能是 Apple 现在最重要的胜负手。2026 年第一季度，苹果在中国的 iPhone 销量暴涨 23%（Counterpoint 口径，前 9 周），而同期中国市场整体下滑 4%；到 Q2，IDC 显示华为以 22.6% 的份额仍排第一，Apple 以 18.1% 紧随其后——但 Apple 的增速高达 +24.4%，是快于华为的（+19.4%）大厂。\n中国厂商 2Q26 份额 2Q25 份额 同比 华为 22.6% 18.1% +19.4% Apple 18.1% 13.9% +24.4% OPPO 16.0% 17.3% -9.7% vivo 16.0% 17.0% -11.4% 小米 12.4% 15.1% -21.7% Apple 在中国的增长，靠的是三件事叠加：一是苹果坚持不大幅涨价，而安卓竞品（OPPO、vivo、小米）都在为内存成本涨价，反而让 iPhone 显得「更值」；二是政府的以旧换新补贴覆盖了基础款 iPhone 17；三是苹果的降价促销。于是，当安卓阵营被迫涨价、大家都犹豫时，苹果用「稳价 + 促销」接住了犹豫不决的人。\n但危机同样在这里。苹果 2026 年财报显示，大中华区在部分季度营收大涨（38%，约 255 亿美元），但这里面「增长质量」仍存疑问——一半靠的是补贴和促销这些一次性红利。同时，苹果在中国的合规压力空前：它已把中国大陆 App Store 的佣金从 30% 降到 25%（小开发者和小程序合作方降到 12%），换来的仍是《人民日报》点名「还要做得更多」，要求开放第三方支付和应用分发渠道。这是一次真正被一个强监管市场逼着「开门」。而华为凭借 HarmonyOS 的自主生态和非标定价，在低线城市的单机性价比层面持续反扑——IDC 预测 2026 年 HarmonyOS 出货约 6200 万台。\n一句话总结手机战场：**Android 阵营在内存危机里内卷受伤，苹果和三星在上层收割；苹果在中国靠「稳价差异化」吃到了最大的单块红利，但它的生态围墙正在被监管敲开。**这是成熟市场的存量博弈，而不是增量创新。\n3.2 电脑战场：用「亲民款」撬开 Windows 的城墙 在 PC 这个被唱衰多年的市场，Apple 是一个很奇特的存在——它份额不高，却几乎年年涨。\n2025 年全年，全球 PC 出货约 2.702 亿台（同比 +9.1%），Apple 以 2482 万台、9.2% 的份额排第四，但录得 +10.3% 的增长，显著快于大盘。2026 年 Q1，这个趋势进一步强化：Apple 出货 668 万台，份额升到 10.6%，同比 +12.7%，是主要厂商里增速最快的。按 Omdia 口径，2025 年 macOS 是各大操作系统里出货增速最高的（+17%），苹果全球生态第一。\n厂商 1Q26 出货（千台） 份额 同比 联想 16,645 26.5% +9.5% HP 12,142 19.3% -4.9% Dell 10,337 16.5% +7.6% Apple 6,684 10.6% +12.7% ASUS 4,210 6.7% +10.8% Acer 4,001 6.4% +3.9% Mac 增长的引擎，是那台低到 599 美元起步的 MacBook Neo——Omdia 说它「主要由 MacBook Neo 的需求驱动，尤其是在新 Mac 用户和教育行业买家中间」，这一定位让 Apple「吸引到了追求高性价比的用户，进一步巩固了其在入门与教育细分市场的优势」。\n更深一层，是 Apple Silicon 自研芯片带来的结构性优势。在内存与供应链全面吃紧的 2026 年，Windows PC 厂商受制于 Intel/AMD 的 CPU 供货和涨价，还得对着昂贵的 16GB 内存发愁；而 Apple 自己设计芯片、自己掌控成本和交期，完全不受第三方 CPU/GPU 厂商牵制。Omdia 甚至预测，macOS 在 $800–$1400 桌面和 $400–$799 笔记本这两个 Windows 的腹地细分市场，正在逐步蚕食份额。Gartner 明确点名：Apple 的强势增长「主要由 MacBook Neo 的需求驱动，尤其是在新 Mac 用户和教育行业买家中间」。\n所以 Mac 的路径很清晰：它不去跟 Windows 拼「有多少牌子、多便宜」，而是用自研芯片的能效、生态整合和一款亲民机型，去撬开对手最薄弱的「性价比/教育」缺口。苹果在 PC 上依旧是小玩家（10% 上下），但它几乎是这个行业里唯一能「站着赚钱还涨份额」的那一个。\n3.3 巨头对决：资产轻型的消费者堡垒 vs 押注 AI 把 Apple 放到全球科技巨头的大盘里，它显得格外「另类」。\n2026 年，苹果市值约 4.5 万亿美元，仍是全球最有价值的公司；谷歌（Alphabet）约 4.2 万亿，微软约 3.65 万亿。但营收上，竞争格局已经发生历史性变化——按 2025 年全年看：Apple 约 4160 亿美元，Alphabet 约 4030 亿（已追到只差 130 亿），微软约 2820 亿。而 Alphabet 的增速更快——按 2026 年预测，谷歌（4650 亿）很可能在营收上反超苹果（约 4350 亿），终结苹果自 2010 年代以来对科技营收榜首的长期统治。\n更有意思的是利润。2025 年，Alphabet 的净利润（约 1320 亿美元）反超 Apple（约 1120 亿）——营收第一的不一定是利润第一。原因在于商业模式：谷歌的高毛利广告 + 云，比苹果「卖硬件」的模式更会「把收入变成利润」。\n公司 市值（2026） TTM 营收 2026 预测 AI 资本开支 Apple $4.52T ~$467B ~$12B Alphabet $4.22T ~$446B $195–205B Microsoft $3.65T ~$332B ~$120B Amazon — ~$700B ~$200B Meta — ~$195B $125–145B 一眼就看出问题：苹果在 AI 基建上的投入（约 120 亿美元），连微软、谷歌、亚马逊、Meta 的零头都不到——后者四家合计约 1200–2000 亿美元。微软一年资本开支是苹果的近十倍，谷歌接近苹果的二十倍。\n这不是苹果「抠门」，而是它选择了一种截然不同的商业模式：苹果不建超大规模数据中心、不卖云算力、不重仓买芯片（它自己造芯片但只供自用）。它走的是「资产轻型」路线——靠卖硬件 + 收服务「税」，把巨额现金回馈股东（单季回购就几十亿美元，还授权了千亿级回购方案）。所以苹果的资本回报极高（ROE 141%，ROIC 53%；对比微软 ROE 33%），市盈率（约 35）也比微软（约 27）贵得多。投资者等于在为一个「增长放缓但极会赚钱」的稳健堡垒付溢价。\n但硬币的另一面：苹果同时也是巨头里在 AI 自主技术上最被动的那个。在大模型浪潮里，苹果既没有像微软（GPT/Copilot）、谷歌（Gemini）、Meta（Llama）那样的大模型，也不像英伟达那样卖铲子；它甚至得靠和 OpenAI、谷歌合作，把别人的模型接进 Siri 和系统工具里撑场面。这被外界解读为「苹果把 AI 当成 iPhone 的一个功能，而不是一个能改变增长曲线的引擎」。\n这就是 2026 年科技股最核心的叙事之争：一边是「AI 资本开支泡沫」的押注者（微软、谷歌、亚马逊、Meta），一边是「资产轻型消费堡垒」的收租者（苹果）。微软手握 6780 亿美元的商业合同积压、Azure 年收入破千亿，是押注 AI 平台层；而苹果靠 iPhone 17 周期 + 服务，做着最赚钱的生意。目前看，苹果拿的是「确定性的钱」，微软赌的是「未来的平台地位」。\n3.4 空间计算：从「头显」到「眼镜」的转向 横向至此，还有一个 Apple 正在「退场」的战场需要交代——空间计算。\n2026 年，M5 版 Vision Pro（3499–3700 美元）几乎无人问津，累计销量仅约 60 万台，退货率远高于其他苹果产品；而它的直接对手、三星与谷歌合作的 Galaxy XR（1799 美元）同样没掀起浪花，但至少在「AI 优先」的营销上比苹果走得远——三星 XR 主打 Google Gemini，强调「和它交谈就像在真实世界里对话」，系统级、场景化地整合 AI；而苹果的 Apple Intelligence 被评价为「功能克制但更保护隐私」（大部分请求本地处理，需云端走 Private Cloud Compute）。\n苹果的劣势，恰好反衬它的一贯基因：它更重视隐私、体验和「做对了再说」，结果在需要快速迭代、云端协同的空间计算 AI 上走得比对手慢。更务实的是，苹果已经明确放弃了「头显」这条重资产、小众的路线，转向产品生命周期更大众、更轻量的智能眼镜（对标 Meta Ray-Ban 的 AI 眼镜预计 2027 年推出；带波导的 AR 眼镜推到 2029 年）。这等于承认：在空间计算这个尚未成形的品类里，苹果从一个「高瞻远瞩的开创者」，退居为一个「先观察、等风起再进场」的跟随者。\n3.5 生态位小结 把四个横切面叠在一起，Apple 的竞争生态位就呼之欲出：\n在手机这个核心腹地，它是与三星并列的高端双雄，靠「稳价 + 生态 + 品牌」在存量市场收割，但正面临华为反攻和自身监管合规的破墙。 在电脑这块腹地，它是份额不高的「小而美增长者」，用自研芯片 + 亲民机型撬动 Windows 防守薄弱的教育和入门段。 在巨头大盘里，它是「资产轻型、高回报、低 AI 押注」的异类，现世安稳却缺少增长想象。 在空间计算这片尚未验证的荒地，它选择了退守与等待，把赌注押向大众化的智能眼镜。 一句话：Apple 拥有一台极其赚钱的成熟机器，但在所有「未来」的方向上，它都显得比对手谨慎、也更被动。它不再冒险开路，而是在既有的路上把利润榨到极致。\n四、横纵交汇洞察 把 Apple 五十年的纵向脉络和今天的横向格局交叠在一起，你会发现：它今天的每一个优势，几乎都能追溯到历史上的某一次决断；而它今天的每一个被动，也几乎都能追溯到同一个决断的另一面。这不是巧合，这是「基因」在起作用。\n4.1 历史如何塑造了今天的竞争位置 Apple 最核心的优势——超高毛利、生态锁定、品牌溢价、资本效率——本质上都是乔布斯时代「垂直整合 + 封闭生态 + 极简设计」这三板斧的遗产。\n回顾纵向：1977 年，它靠 Apple II 立下的不是「便宜」，而是「插上电就能用」的整机体验；1984 年 Mac 用图形界面把「专业」变成「大众」；2007 年 iPhone 用「一个设备」打通了硬件、软件、内容三层；2010 年 iPad 用自研 A4 芯片开始了「自己造芯片」的伏笔。这一脉相承的逻辑，就是苹果要亲手掌控从芯片到应用商店的每一环，这样才能保证「体验不出错」。这种对「完整可控」的执念，造就了它今天的生态护城河——用户一旦进了苹果的圈子，换机成本巨大，于是愿意为 iPhone、Mac 付更高溢价，Apple 也就能拿到超过 50% 的毛利率。\n而横向的印证是：在整个智能手机行业因内存涨价、成本飙升而普遍收缩的 2026 年，苹果能逆势增长、能「稳价」、能抢到份额，靠的正是这套高毛利 + 强议价 + 生态粘性的组合拳。其它安卓厂商在成本危机里节节败退，苹果几乎毫发无损——这不是它运气好，而是它几十年前就选了一条「让利润厚到能扛住周期」的路。\n4.2 竞品的纵向对比：路径分岔 把主要竞品也放回时间线上，路径的分岔就更清楚了。\n微软从 2008 年营收第一（600 亿美元），一路靠「软件 + 云」转型，到今天营收落到三家之末（约 2820 亿），但却成了 AI 时代的豪赌者——Azure 破千亿、商业合同积压 6780 亿、一年资本开支 1200 亿美元。微软的历史逻辑是「先垄断软件，再重仓云，现在押 AI」，每次都在「平台层」下注。 **谷歌（Alphabet）**从 2008 年最小的三家（220 亿美元）长到 2025 年 4030 亿，几乎追平苹果——靠广告和云，增速最快。它走的是「数据 + 算力」的路，是 AI 双雄之一。 亚马逊体量最大（TTM 约 7000 亿），但利润率极低——它是「规模 + 基础设施」的路子。 三星则和苹果同构：垂直整合（掌握屏幕、存储、代工），所以它和苹果一样是内存危机中少数能逆势增长的安卓品牌。注意这个对照——三星和苹果能在 2026 年跑赢大盘，恰恰因为它们都是「垂直整合的强者」。 华为则是中国版的垂直整合（自研芯片 + HarmonyOS 自主生态），所以在国内能稳步扩份额。 路径分岔的启示是：**真正的护城河不是「谁模型最强」或「谁市值最高」，而是「谁对关键环节的掌控力最强」。**苹果、三星、华为都有这种掌控力；而它们也都在 2026 年成了少数逆势玩家。\n4.3 优势的历史根源 供应链与成本掌控 → 源自库克时代对规模与成本极限的追求（乔布斯负责设计，库克负责把它稳定、便宜、大量地造出来）。这让苹果在内存涨价的逆风里依然保得住利润。 隐私与「无感体验」的招牌 → 源自封闭生态一脉相承的品味。苹果敢喊「本地处理、私密云」，是因为它有端侧芯片（M 系列）和一体化产品，这是多数对手不具备的条件。 极致的品牌与设计 → 源自 1976 年以来「把技术做成让人爱上的东西」的执念，从 Apple II 塑料壳到 iMac 半透明外壳到 iPhone，一以贯之。 4.4 劣势的历史根源 AI 自主能力落后 → 这正是「做产品的克制」变成「做 AI 的迟缓」。苹果太在乎「体验完美、不冒进、保护隐私」，以至于在大模型这种需要疯狂烧钱、快速迭代、拥抱云端的范式里，显得畏首畏尾。它 2011 年就有 Siri，却十多年没进化成「可用的大模型助手」——起大早、赶晚集的病根，从第一天就埋下了。 对 iPhone 的过度依赖 → 源于「成功来得太容易且太集中」。一台 iPhone 成了 20 年的印钞机，却也把苹果钉死在单点风险上。创新品类（Vision Pro）的失败，又让这个依赖雪上加霜。 硬件毛利受制于外部供应链（内存/代工） → 反衬出与三星、华为的差距：后两者自己造内存、造屏幕、造芯片，能更主动摊薄成本。苹果在芯片上已自研，但在最敏感的存储、面板、代工上仍受制于人。 生态围墙被监管敲开 → 源于苹果「封闭但高昂」的抽成模式（App Store 30%），这在过去是利润引擎，现在却成了反垄断靶子——中国把佣金压到 25%，欧盟更是重拳，这堵墙正被一点一点拆。 4.5 未来推演：三个剧本 把纵向趋势（增长引擎从「新品类」转向「存量 + 服务」）和横向格局（AI 竞赛、竞争加剧、监管破墙）叠在一起，我给出三个剧本：\n剧本一：最可能——「稳健收租，增长放缓」（60% 概率）\n苹果继续靠 iPhone 迭代（2026 年预期推出 iPhone 18 Pro 和首款折叠 iPhone）+ 服务「税」+ 大规模回购，稳住全球市值第一。AI 上继续「用别人的模型 + 自己的隐私叙事」，不做急先锋，但绝不掉队。份额微增或持平，营收增速回落到高个位数，苹果维持「高利润、高回报、低波动」的堡垒形象。\n剧本二：最危险——「AI 掉队，围墙被拆」（20% 概率）\n如果苹果自研大模型始终跟不上三星/谷歌/微软，而它在中国的生态围墙又被监管逐层打开，同时华为、三星在高端持续反扑——那么「iPhone 的用户粘性 + 高毛利」可能被同时削薄。苹果被迫在全球市场接受更低的分成、更开放的生态，利润被压缩；P/E 从 35 回落到 20 附近，市值被谷歌/微软反超。这是 20% 概率的路，但也不是危言耸听——中国佣金的 30%→25% 已经是第一道裂缝。\n剧本三：最乐观——「智能眼镜再造下一个 iPhone」（20% 概率）\n如果说乔布斯靠 iPhone 开创了移动时代，那库克-特努斯时代的下一个赌注，是 2027 年的 AI 智能眼镜。如果苹果能像当年 iPhone 那样，把「眼镜」从极客玩具做成大众配饰，并且把 Siri AI 翻身、把隐私优势做成 AI 信任时代的差异化卖点——那么苹果将重新获得「新品类」的增长想象力，服务 + 健康 + 金融 + 空间计算多线并进，市值再创新高。这需要天时地利，是 20% 概率的路。\n4.6 结语：一个反复重生的悖论 回看 Apple 五十年，最动人的不是它有多成功，而是它一次次在「至暗时刻」里重生：1985 年被自己赶走创始人，1997 年站在破产边缘，2011 年失去灵魂人物，2023–2026 年在 AI 浪潮里显露出迟暮……每一次，它都靠「再造一个新品类」或是「把现有生意做到极致」续了命。\n但 2026 年的 Apple，和过去每一次都不同。它不再是一个「开创者」在开天辟地，而是一个「成熟霸主」在守住王座。当增长引擎从「开创 iPhone 这种新品类」切换到「把 iPhone 和服务榨到极致」时，它获得的确定性，是用想象力换来的。\n当年那个在车库里用小巴换 1500 美元、敢把「未来」做成产品的年轻人，如果看到今天这个「靠收租和回购维持市值第一」的巨头，也许会既感慨又陌生。Apple 的问题从来不是「会不会赚钱」，而是——当它不再冒险时，它还配不配得上那个曾经「改变世界」的苹果？\n这个问题的答案，要等 2027 年那副 AI 眼镜的发布，以及特努斯时代的第一声枪响。\n五、方法论说明 本报告采用「横纵分析法」（Horizontal-Vertical Analysis），由数字生命卡兹克（Khazix）提出：纵向追时间深度（从诞生到当下的完整生命历程），横向追同期广度（与竞品、同类的系统性对比），最后交叉两条轴，整合出独立判断。核心原则——纵向追时间深度，横向追同期广度，最终交汇出判断。\n六、信息来源 本报告关键事实均来自以下一手来源（访问时间 2026-09-02）：\n历史脉络\nComputer History Museum《Apple Timeline》— computerhistory.org/apple-timeline/ Wikipedia《History of Apple Inc.》《Timeline of Apple products》 Britannica《Apple Inc. | History, Products, Headquarters》 SMH《Apple history: From Steve Jobs and Steve Wozniak\u0026rsquo;s April Fool\u0026rsquo;s start to a $3.7 trillion empire》 财务数据（2025–2026）\nApple Newsroom：FY2026 Q3 财报（2026-07-30）、FY2026 Q2 财报（2026-04）、FY2025 Q4 财报（2025-10） Apple Newsroom FY26 Q3 Consolidated Financial Statements（pdf） 24/7 Wall St. 与 businesstats 的 Apple/MSFT/Google 对比分析 valueaddvc《Big Tech Earnings Q2 2026》、tickeron 市值统计 AI 战略\nApple Newsroom：Apple Intelligence 发布（2024-06）、落地（2024-10） OpenAI《OpenAI and Apple announce partnership》 Macworld《Apple Intelligence FAQ》、AppleInsider《M5 Vision Pro vs Samsung Galaxy XR》 市场份额\nIDC《Worldwide Smartphone Market Share》（Q1 2026 \u0026amp; 2026 预测） IDC《China Smartphone Market Q2 2026》 Counterpoint Research 中国手机市场周报 Gartner《Worldwide PC Market Share》（2025 全年 \u0026amp; Q1 2026） Omdia《PC OS Market Overview May 2026》 产品战略（2024–2026）\nMacRumors：《Apple Has Given Up on the Vision Pro After M5 Refresh Flop》（2026-04）、《Kuo: Apple\u0026rsquo;s Vision Pro Successors Off the Table》（2026-06） PCMag《Apple\u0026rsquo;s Incoming CEO Cancels Vision Pro 2, Vision Air》 WebProNews《Apple\u0026rsquo;s Vision Pro Reckoning: Layoffs Signal Shift》 中国市场\nCNBC《Tim Cook\u0026rsquo;s China visit reinforces country\u0026rsquo;s importance to Apple》（2026-03） MacRumors《iPhone 17 Pricing Helped Apple Buck China\u0026rsquo;s Q2 Smartphone Decline》（2026-07） 注：部分季度营收、市场份额等数据在不同研究机构（IDC/Counterpoint/Omdia）间存在口径差异，报告已按各机构口径分别标注，未强行统一。\n","permalink":"https://yutterx.com/posts/apple-hv-analysis/","summary":"用横纵分析法拆解 Apple 五十年：从车库到 4.5 万亿，纵向七阶段 + 横向四战场 + 三个未来剧本。","title":"Apple 横纵分析：一间公司的纵剖面与当前横切面"},{"content":" ✍️ 转载文章｜原作者：小墨同学（@xiaomovps）｜原文链接｜原推文\n适用对象想用 GitHub 找项目/发成果/参与协作，但一进仓库就晕的人\n预计时长阅读 30–50 分钟，动手实践 2–3 小时\n前置准备安装 Git + 注册 GitHub 账号；[域名/DNS 实操见域名邮箱教程](/posts/domain-email-setup/) 很多人第一次打开 GitHub，只是想跟着 AI 安装一个工具。AI 或安装教程甩来一个仓库链接，点进去以后，Code、Issues、Pull requests、Actions、main、commits、branches 和 tags 同时铺在眼前。原本只想找到下载按钮，几分钟后却连该下载哪个文件、源码能不能直接运行都拿不准。\n2026 年 5 月，我在介绍 github-publisher 时留过一句话。\n不了解 GitHub 也没关系，后面我有时间也会专门花时间去讲解一下 GitHub 出一篇文章。\n这句话一直欠着没兑现。我做这个 Skill 时，很多人已经能让 AI 写脚本、做网站、整理 Skill，分享成果和使用开源项目时却常被 GitHub 卡住。按钮可以交给 AI 帮忙点，仓库是否可信、文件该从哪里拿、一次修改会推到哪里，仍然要自己看懂。\n这件事拖了几个月，现在终于来补上。\n我重新建了一个公开仓库 github-first-project，从网页提交 README 开始，又在电脑上添加页面，接着开 Issue、建分支、发 Pull Request、跑 Actions、上线 Pages，最后发布 v1.0.0。教程里的失败也来自这次真实操作。第一次自动检查找不到文件，确实亮了红灯；修复以后重新运行，才变成绿灯。\n这篇文章会带你完成两件事。先学会读懂别人的仓库，知道项目能不能用、应该从哪里下载。然后把自己的第一个项目放上 GitHub，让它可以更新、协作、自动检查，也能通过一个公开网址访问。\n标题里写了从入门到精通。这里的精通有一个很实际的范围。你能独立处理个人项目和常见的开源协作，遇到普通报错知道先查什么，也知道涉及权限、密钥和历史修改时应该停下来确认。复杂的 Git 历史重写、大型团队权限和企业治理，不在这一篇里展开。\n本文导读 01｜先看懂别人的仓库\n第一章先分清 Git 和 GitHub，第二、三章再认识作者、README、文件、提交、分支和标签。看完这三章，你会知道一个项目值不值得下载，也能在 ZIP、Clone 和 Release 之间选对入口。\n02｜发布自己的第一个仓库\n第四章先用浏览器创建仓库和提交 README，第五、六章再把项目拉到电脑，走完 status、add、commit 和 push。每一步都会告诉你完成以后应该看到什么。\n03｜走通一次真实协作\n第七章用 Issue、任务分支和 Pull Request 完成一项修改。第八章再把视角移到别人的项目，讲清 Fork、上游仓库和跨仓库 PR 的关系。\n04｜补齐交付和安全\n第九章处理 README、.gitignore、License 和敏感信息。第十章接上 Actions、Pages 与 Release，让仓库可以自动检查、公开访问并交付版本。\n05｜遇到问题知道先查哪里\n第十一章集中处理权限、同步、冲突、大文件和密钥泄露。只想解决眼前报错，可以直接从最后一章的表格开始查。\n一、GitHub 能替普通人做什么 1. Git 负责记录，GitHub 负责连接 很多人第一次接触 GitHub，是因为某个 AI 工具的安装教程给了一个仓库地址。点进去能看到文件，也能下载，于是很容易把 GitHub 理解成一个代码网盘。\n它确实能存文件，但文件只是表面。GitHub 真正有用的地方，是它把项目内容、每次修改、问题讨论、协作过程和发布版本放在了同一个位置。\n这里要先分清两个名字。\nGit 是安装在电脑上的版本管理工具。它负责观察文件变化，记录某次提交包含哪些修改，也能让你回到以前的版本。即使电脑没有联网，Git 仍然可以在本地工作。\nGitHub 是承载远端仓库的平台。它让另一台电脑拿到同一份项目，也让其他人查看、讨论和提交修改。后面要用到的 Issue、Pull Request、Actions、Pages 和 Release，都属于 GitHub 提供的能力。\n可以暂时把 Git 理解成电脑里的版本记录，把 GitHub 理解成联网以后共同使用的项目页面。这个比喻只帮助你区分职责。真正操作时，我们还是看工作区、提交和远端仓库之间发生了什么。\nRepository 常缩写成 repo，中文通常叫仓库。一个仓库里会放项目文件、使用说明、配置和完整的提交历史。仓库不一定是程序，也可以是一套文档、一个静态网站、一组自动化脚本，甚至是一套你自己维护的 Skill。\n2. 不会写代码，也有三种常见用法 找项目。 不少 AI 工具、模型启动器、自动化脚本和数据同步方案都把 GitHub 当作发布入口。README 里有安装方法，Issues 里能查已知问题，Releases 里常放正式版本。\n保存成果。 文档、Skill、脚本和个人网站都能放进仓库。Git 留下修改历史，GitHub 把提交同步到远端，换电脑后还能继续。它比一排 最终版、最终版2、真的最终版 更容易追踪。\n参与协作。 发现问题可以开 Issue，改好文档或代码可以发 Pull Request。不会写程序，也能修错字、补中文说明或整理复现步骤。\n这也是 AI 时代 GitHub 越来越难绕开的原因。优秀开源项目集中在这里，很多数据同步和自动化方案依赖 Git，AI 帮你生成的文件也需要一个可以审查、回退和分享的位置。AI 能降低操作门槛，但仓库是否可信、许可是否允许、密钥是否安全，仍然需要你自己判断。\n3. 读完以后的完成标准 学完这篇文章，你应该可以完成下面这些事。\n打开陌生仓库后，能找到 README、维护记录、License 和 Release\n根据目的选择 Download ZIP、clone 或正式发布包\n在网页创建仓库并完成第一次提交\n在电脑上走完 status、add、commit、push 和 pull\n用 Issue、分支和 Pull Request 完成一次修改\n看懂 Actions 的成功与失败，并用 Pages 和 Release 交付结果\n这些对象看起来多，真正跑完一次以后，它们会落在同一条路径上。接下来先从最常见的仓库首页开始。\n二、第一次打开仓库，先看懂这六组入口 第一次看 GitHub 仓库，不要急着把每个英文按钮都学完。先回答三个问题。这个项目是谁发布的，它解决什么问题，我下一步要找的是说明、文件还是正式版本。\n1. 作者名/仓库名 先告诉你项目归谁 仓库页面左上方通常会显示 作者名/仓库名。比如 xiaomoBoy/github-publisher，斜杠前面是账号或组织，后面是仓库名称。\n同名项目可能由不同账号发布，下载可执行文件、安装插件或运行脚本前，最好把作者和仓库名一起核对。名称附近的 Public 表示公开可见，Private 只对获得权限的人开放。公开不等于可以随意修改或商用，具体范围还要看 License。\n2. README 是第一份使用说明 进入仓库首页以后，页面下半部分经常会直接展开 README。它通常叫 README.md，可以把它理解成项目说明书。\n一份能用的 README 应该说明项目用途、安装方法、使用方式、支持环境和反馈入口。英文很长时，先找 Installation、Usage、Requirements、Examples、FAQ 和 License。浏览器翻译和 AI 可以帮忙，命令里的文件名、版本号和参数仍要回原文核对。\nREADME 只有一句口号，没有安装条件和使用示例，最近也看不到维护记录时，先别运行。Star 再多也补不上缺失的说明。\n3. 文件列表不要逐个点 README 上方是文件列表。初学者容易从第一项点到最后一项，最后看见一堆配置文件，还是不知道入口在哪里。\n先认几组常见名字会更省时间。\nREADME.md 和 LICENSE 分别放说明与许可\nsrc/、scripts/、examples/ 常放源码、辅助脚本和示例\ndocs/ 或 references/ 常放文档和参考资料\n.github/ 常放协作配置，package.json、pyproject.toml、requirements.txt 常说明依赖和运行环境\n这些是常见约定，不是强制标准。真正入口还是以 README 为准。遇到一个只有源码、没有说明的项目，先把它当成需要研究的材料，不要把它当成双击就能运行的软件。\n4. Commits、Branches、Tags 看的不是同一件事 Commits 保存每次修改，能看到谁在什么时候改了哪些文件。Branches 让不同修改暂时分开，默认分支通常叫 main。Tags 给某个提交留下固定名字，常用来标记 v1.0.0 这样的版本。\n第一次使用别人的项目，通常不用研究所有分支。先看默认分支，再看 Releases 有没有正式版本。只有 README 明确要求使用某个开发分支时，才切过去。\n5. Issues、Pull requests、Actions 分别负责什么 Issues 记录问题、建议和待办。安装失败时先搜错误关键词，新建问题时写清系统、软件版本、复现步骤和报错。\nPull requests 常缩写成 PR，用来提交一组修改并请求合并。讨论、检查结果和文件差异都在这里。\nActions 执行自动检查、测试或部署。绿色对勾表示通过，红色叉号表示至少有一步失败，原因要进日志查看。\n6. Stars、Forks 和热度只能作为线索 Star 很像收藏，也能反映项目受到多少关注。Fork 表示有多少关联副本被创建。它们可以帮助你发现热门项目，却不能单独证明安全和质量。\n一个仓库 Star 很多，可能已经很久没有维护。Fork 很多，也可能只是教程要求大家点过。下载前更有价值的信息，是最近提交时间、README 是否完整、Release 是否持续更新、Issues 里有没有大量相同故障，以及许可证是否清楚。\n看到这里，你已经能读懂仓库首页的主要区域。下一步才是下载。\n三、下载之前多看三眼 GitHub 上的下载有几条路。选错以后最常见的结果，是拿到一堆源码却不知道怎么运行，或者把 ZIP 当成可以持续更新的本地仓库。\n1. Download ZIP 适合只拿当前文件 在仓库首页点击 Code，再选 Download ZIP，可以下载当前分支的一份压缩包。\n它适合一次性查看文档、拿几张素材，或者下载不需要继续跟踪的简单项目。解压以后能看到文件，但里面没有可供你正常使用的完整 Git 历史。作者以后更新，电脑里的 ZIP 也不会自己变化。\nZIP 只是文件打包方式。它不保证项目可以直接运行。打开之前仍然要看 README 里的安装条件。\n2. Clone 适合继续跟踪和修改 Clone 会把仓库和版本数据复制到电脑。以后可以用 Git 查看变化、拉取更新，也可以把自己的提交推回 GitHub。\nCode 菜单里通常能看到 HTTPS、SSH 和 GitHub CLI 等入口。这里先知道 clone 适合长期使用，登录方式放到第六章再选。\n如果你准备跟着项目更新、修改代码、让 AI 在本地继续开发，clone 通常比 ZIP 更合适。\n3. Release 适合拿作者正式交付的版本 很多桌面软件会在 Releases 页面提供安装包。macOS 可能看到 .dmg，Windows 可能看到 .exe 或 .msi，也可能提供压缩后的可执行文件。\nGitHub 还会自动给每个 Release 提供 Source code 归档。它们是这个版本对应的源码 ZIP 和 tar.gz，不等于作者主动上传的安装包。\n我们这次发布的 v1.0.0 没有额外上传应用安装包，所以页面里只有 GitHub 自动生成的两个源码归档。这个结果反而很适合说明差别。看到 Assets 时先读文件名和版本说明，不要凭体积猜哪个能运行。\n4. 真正要多看的三眼 第一眼看发布者和维护状态。\n确认作者账号与项目来源，看看最近一次提交和最近一个 Release 是什么时候。长期不更新不一定不能用，但你要确认它是否支持当前系统和依赖版本。\n第二眼看说明与已知问题。\nREADME 写的是正常路径，Issues 往往能看到真实使用中的故障。如果首页写着支持 macOS，Issues 里却有很多最新版无法启动的报告，就要继续看维护者有没有回应。\n第三眼看 License 和安全提示。\n准备二次修改、公开分发或商业使用时，先确认许可证。项目让你复制命令到终端时，也要知道命令准备下载什么、修改哪里、会不会要求管理员权限。\n5. AI 可以帮你读，但最后三件事自己确认 你可以把 README 交给 AI，让它整理安装条件，也可以让它解释目录和报错。更稳妥的问法，是让 AI 指出每个结论来自说明里的哪一段，再回到原文核对。\n最后三件事不要直接外包给 AI。\n下载地址是不是项目官方入口\nLicense 是否允许你的具体用途\n即将执行的命令会获得什么权限\nAI 可能读错旧文档，也可能忽略仓库刚出现的安全提醒。确认完这三项，再下载和执行。\n四、只用浏览器，建好第一个仓库 接下来开始建立自己的项目。前半段完全在浏览器里完成，不需要先安装 Git。\n1. 注册、验证邮箱和保存账号恢复入口 打开 GitHub，点击 Sign up，按页面要求填写邮箱、密码和用户名，再完成邮箱验证。\n用户名会出现在仓库地址里，也会成为公开身份的一部分。用于长期创作时，最好选一个愿意持续使用的名字。邮箱如果不想公开，可以在 GitHub 邮箱设置里使用隐私地址，并在后面的 Git 配置里保持一致。\n账号建好后，建议在设置中开启双重验证。常见方式是认证器应用生成的一次性验证码。恢复代码只保存在密码管理器或其他安全位置，不要放进仓库、截图和聊天记录。\n这篇文章不展示真实二维码和恢复代码。账号安全截图如果无法完全避开秘密，宁可不放。\n2. 新建 github-first-project 点击右上角加号，选择 New repository，进入新建仓库页面。\n仓库名填写 github-first-project。描述可以写成一句容易看懂的话，例如 My first GitHub practice project。\nVisibility 决定可见范围。本文需要演示 Pages、Issue 和 Release，所以选择 Public。真实工作里如果包含私人笔记、客户资料、内部文档或还没检查的 AI 生成文件，先用 Private 更安全。\n初始化时勾选 README。.gitignore 可以按项目类型选择，暂时没有特定语言也可以后面再加。License 选择 MIT 只为了完成本次公开演示，它不一定适合所有项目。\n点击 Create repository 后，能进入仓库首页并看到 README.md，说明第一个仓库已经建好。\n3. 在网页里改 README，完成第一次 commit 打开 README.md，点击编辑按钮，在原有标题下补一句项目说明。预览确认排版以后，点击 Commit changes。\nGitHub 会让你填写提交信息。不要只写 update。这次可以写 docs: add project introduction，读起来就知道修改的是文档，内容是补充项目介绍。\n提交完成以后返回首页。README 多了一行，Commits 里的数量也会增加。这个可见变化说明你已经完成了一次 commit。\n网页提交和后面在终端执行 git commit 的结果属于同一种版本记录。区别只在于操作入口。GitHub 网页替你完成了选文件和提交，本地 Git 会把这几个动作拆开显示。\n4. 在网页创建分支并提交修改 点击当前分支名 main，输入一个新分支名，例如 docs/web-edit，按页面提示创建分支。\n切换成功后，页面上的分支名会变。此时编辑 README 并提交，修改会留在新分支，main 暂时不受影响。\n分支的价值就在这里。你可以隔离一组尚未确认的改动，检查完成后再合并。第一次练习不用同时建很多分支，一项清楚的任务配一个分支就够了。\n到这一步，你已经在浏览器里拥有了仓库、README、提交和分支。接下来需要补上 Git 的最小工作模型。\n五、Git 怎样记住每一次修改 Git 的命令很多，新手阶段先掌握四个位置就够用。\n1. 四个位置已经够用 工作区是你正在编辑的项目目录。git add 把选中的修改放进暂存区，git commit 将它保存为本地版本，git push 再把本地提交送到 GitHub。四个位置和三个动作可以直接看下面这张图。\n这条路能解释大多数新手疑问。文件明明改了，GitHub 上为什么没有变化，因为改动还在工作区。已经 commit 了，网页为什么没更新，因为提交还在本地。push 提示没有新内容，可能是改动根本没有形成新的 commit。\n2. 一次修改怎样走过四个位置 git status git add README.md git commit -m \u0026#34;docs: update README\u0026#34; git push 第一条先看变化。新文件通常出现在 Untracked files 下，加入暂存区后会移到 Changes to be committed。commit 成功后，本地已经有了版本；GitHub 网页出现新提交，才说明 push 也完成了。\n3. GitHub 页面上的 commit 从哪里来 第四章在网页修改 README 时，GitHub 已经直接在远端创建了 commit。本地操作时，commit 先产生在电脑，再通过 push 发送到 GitHub。\n每次 commit 最好只处理一组相关修改。修一个说明错字和重写整个页面放在同一个提交里，后面很难审查，也不容易单独撤回。\n提交信息写清动作和对象即可。docs: add usage instructions 比 改一下 更有价值。几个月后查看历史时，你不用点开差异就能大致知道发生了什么。\n六、把仓库拉到电脑，再把修改推回去 下面以 macOS 为主线。Windows 可以安装 Git for Windows，并在 Git Bash 里使用相同的 Git 命令。编辑器和路径显示会有差别，仓库里的版本逻辑相同。\n1. 安装 Git，只做一次身份设置 先运行 git \u0026ndash;version。看到版本号就可以继续；没有安装时，从 Git 官网 选择当前系统版本。Windows 安装 Git for Windows 时，初学阶段保留默认选项通常就够用。\n第一次使用需要设置提交身份。\ngit config --global user.name \u0026#34;你的提交署名\u0026#34; git config --global user.email \u0026#34;与你的 GitHub 账号关联的提交邮箱\u0026#34; 把第一行改成你的提交署名，它可以是真名或昵称，并不要求与 GitHub 用户名相同。两项都会写进未来的提交记录，GitHub 官方说明也明确区分了 Git 署名与 GitHub 用户名。邮箱介意公开时，先到 GitHub 邮箱设置里复制隐私地址。它们不是登录密码，也不负责给电脑授权。\n2. HTTPS、GitHub CLI 和 SSH 怎么选 GitHub 不再接受把账号密码直接当作 Git 远端密码。现在常见的是 HTTPS 配合凭据管理、GitHub CLI 浏览器登录，或者 SSH 密钥。\n想少处理密钥，可以安装 GitHub CLI，运行 gh auth login 后按提示用浏览器登录，再用 gh auth status 检查当前账号。\n经常在同一台电脑推送，也可以配置 SSH。把公钥添加到 GitHub 账号后，运行 ssh -T git@github.com 测试。第一次连接可能出现主机指纹确认，先和 GitHub 公布的指纹核对，再输入 yes。\n看到 GitHub 识别出用户名就说明连接可用。私钥内容始终不能粘贴到网页、仓库或聊天里。\n这次真实操作还遇到一个细节。仓库最初通过 HTTPS 连接，现有 GitHub CLI 授权没有包含修改工作流所需的范围，推送 .github/workflows 时被拒绝。切换到电脑已经配置好的 SSH 后，工作流才正常推送。这个经历不代表每个人都必须用 SSH，只说明遇到权限报错时要核对当前登录方式和授权范围。\n3. 克隆自己的仓库 先在电脑上选一个专门放练习项目的目录，再复制仓库 Code 菜单里的地址。HTTPS 可以用 git clone https://github.com/你的用户名/github-first-project.git，SSH 使用 git clone git@github.com:你的用户名/github-first-project.git，GitHub CLI 则是 gh repo clone 你的用户名/github-first-project。三种方式选一种即可，并把示例用户名换成自己的账号。\n克隆完成后进入目录并检查状态。\ncd github-first-project git status 看到当前位于 main，并且 working tree clean，说明本地仓库已经准备好。不要在一个不相关的大目录里直接运行 Git 初始化，先确认终端当前路径确实是这个练习项目。\n4. 新增 index.html，走完第一次本地提交 用编辑器在仓库根目录创建 index.html，写入一个最小页面。\n\u0026lt;!doctype html\u0026gt; \u0026lt;html lang=\u0026#34;zh-CN\u0026#34;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026#34;utf-8\u0026#34;\u0026gt; \u0026lt;title\u0026gt;My First GitHub Project\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;h1\u0026gt;Hello GitHub\u0026lt;/h1\u0026gt; \u0026lt;p\u0026gt;这是我的第一个 GitHub 项目。\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; git status git add index.html git status git commit -m \u0026#34;feat: add first project page\u0026#34; git push origin main 第一次 status 会把 index.html 列为未跟踪文件，git add 后再检查，它应该出现在待提交区域。\ncommit 保存本地版本，push 把它同步到 GitHub。提交成功后工作区会恢复干净。\n打开 GitHub 仓库，文件列表里出现 index.html，Commits 里出现刚才的提交信息，说明第一次本地修改已经同步成功。\n下面这张图是项目完成后的同步复核。先看提交历史，再运行 git push origin main。终端返回 Everything up-to-date，最后的状态也显示本地 main 与远端一致。\n5. push 前先 pull，什么时候真的需要 很多教程把 git pull 写成 push 前固定动作。它的真正用途，是把远端已有的新提交拿到本地。\n刚 clone 完成，只有你在一台电脑上修改，远端期间也没有变化，可以直接 push。多人协作、换设备编辑，或者你刚在 GitHub 网页改过文件，本地就可能落后。\n不确定时先获取远端状态。\ngit fetch origin git status 如果状态提示本地分支落后，再执行 git pull origin main。\nGit 能自动合并就会完成同步。同一位置被两边修改时会出现冲突，先处理冲突再 push。不要一看到拒绝就强推，强推可能覆盖远端历史。\n七、Issue、分支和 PR 怎样组成一次协作 前面完成的是个人提交。现在把一次修改按协作方式重新走一遍。\n1. 先开 Issue，把要做的事写清楚 进入仓库的 Issues，点击 New issue，标题写 给页面增加使用说明。\n正文不用写得很长，至少包含当前情况和预期结果。例如 README 还没有说明怎样打开页面，希望补充本地查看方式和 Pages 地址。\n一条清楚的 Issue 能让后续分支和 PR 都围绕同一个目标。报错类 Issue 还要补上系统版本、操作步骤和完整错误信息。密钥、邮箱和私人路径要先处理。\n这次演示创建的是 Issue #1。任务完成后，它被标记为 completed。\n2. 从最新 main 建分支 回到本地，先更新 main，再创建任务分支。\ngit switch main git pull origin main git switch -c docs/add-usage 分支名用 docs/add-usage，一眼就能看出这次修改属于文档，目标是补充用法。\n建分支以前先更新 main，可以减少后面合并时的差异。修文档和改功能属于两项无关任务时，分别建立分支，不要全塞进一个 PR。\n3. 提交并 push 分支 在 README 中加入使用说明，保存后用 git status 和 git diff 确认只改了需要的内容，再提交并推送分支。\ngit add README.md git commit -m \u0026#34;docs: add usage instructions\u0026#34; git push -u origin docs/add-usage 参数 -u 会建立本地分支与远端分支的跟踪关系。以后仍在这个分支时，通常可以直接运行 git push。\n4. 创建 Pull Request，先看 diff 分支推送后，GitHub 仓库首页通常会出现 Compare \u0026amp; pull request。进入创建页面时，base 选择 main，compare 选择 docs/add-usage。\n标题说明这次修改做了什么，描述写清修改内容和检查方法。需要关联同仓库 Issue 时，可以在 PR 描述里写 Closes #1。\nPR 合并到默认分支后，GitHub 才会自动关闭对应问题；跨仓库问题需要写成 Closes 作者名/仓库名#1。官方文档列出了完整规则。\n这次实操中，PR 合并后 Issue #1 没有按预期关闭，最后由我手动标记完成。教程保留这个结果，也提醒你合并后回到 Issue 页面检查状态。\n创建以前先看 Files changed。确认没有误删文件，没有混入编辑器缓存、本地配置和敏感信息。需要提前讨论方案时，可以先建 Draft PR，等内容准备好再转成正式审查。\n5. 自己也要做一次 review 个人仓库只有自己维护，也值得走一次 review。先看文件数量，一个只改 README 的任务突然出现十几个文件，通常说明提交范围有问题。再看绿色新增和红色删除，检查误删、拼写、无关格式变化与私人信息。最后看自动检查是否通过，它只能验证写进规则的内容，不能替你判断说明是否准确。\n6. 合并、关闭 Issue、删除分支 检查完成后点击 Merge pull request，再确认合并。回到 main 查看 README，新增说明已经出现，说明修改进入主分支。\n接着回 Issue 检查状态，再删除已经合并的 docs/add-usage 分支。删除分支不会删除已经合并的提交，也不会让 PR 讨论消失。本地需要继续工作时，切回 main、拉取最新内容，再删除旧任务分支即可。\n到这里，一条完整的 GitHub flow 已经跑完。Issue 说明任务，分支隔离修改，commit 保存过程，PR 承担检查和合并。\n八、修改别人的项目，为什么要先 Fork 自己的仓库可以直接 push。别人的公开仓库通常只给维护者写权限，这时 clone 和 fork 的区别就很重要。\n1. Clone 和 Fork 解决不同权限问题 Clone 是把仓库复制到电脑。它给你本地文件和历史，不会自动给你向原仓库 push 的权限。\nFork 会在自己的 GitHub 账号下创建一份关联仓库。你可以把修改推到自己的 fork，再向原仓库提交 PR。\n原作者仓库、你的 fork 和本地电脑之间的关系，可以直接看下面这张图。\n这里的 origin 和 upstream 是常见远端名称。它们只是本地别名，真正指向哪个地址可以用 git remote -v 检查。\n2. 一次标准贡献路径 先读仓库的 README、License 和 CONTRIBUTING。维护者可能规定分支命名、测试方式和 PR 模板，也可能明确不接受某类修改。\n确认任务后点击 Fork，在自己账号下生成副本，然后 clone 自己的 fork，并把原作者仓库添加为 upstream。\ngit clone https://github.com/你的用户名/目标仓库.git cd 目标仓库 git remote add upstream https://github.com/原作者/目标仓库.git git fetch upstream git switch main git merge upstream/main git switch -c docs/fix-guide 这组命令先准备本地仓库，再把 main 同步到上游最新状态，最后创建修改分支。后面的 add、commit 和 push 与第七章相同，不再重复列一遍。完成后在 GitHub 创建跨仓库 PR，base 指向原作者仓库的目标分支，compare 指向你的 fork 和修改分支。\n3. 第一次贡献从文档和小修正开始 第一次参与开源，优先选边界清楚的小任务。文档错字、失效链接、明确标记为 good first issue 的问题，都比直接重写核心功能更容易获得有效反馈。\n贡献前先搜索已有 Issue 和 PR，避免重复劳动。修改后写清原因和验证方式，不要为了留下贡献记录制造没有实际价值的格式变化。\n维护者可能要求修改，也可能拒绝 PR。公开协作的重点是让项目得到合适的改进，PR 是否合并要尊重项目规则。\n九、一个能交给别人用的仓库还缺什么 项目能在自己电脑运行，不代表已经适合交给别人。陌生人看不到你的操作背景，只能依靠仓库里的文件理解和判断。\n1. README 先回答五个问题 一份够用的 README 先回答五个问题。\n项目做什么，解决哪种实际问题\n最短的开始方式，包括依赖、安装和运行入口\n一个读者可以照着完成的使用示例\n出问题以后去哪里求助\n谁在维护，项目目前处于实验、暂停还是稳定状态\nREADME 不需要第一天就写成长篇文档。先让一个没参与项目的人可以按说明跑起来，再随着真实问题补充。\n2. .gitignore 保护的是不该进入版本历史的文件 .gitignore 用来忽略缓存、构建产物、本地配置和临时文件。常见例子包括 .DS_Store、node_modules/、Python 缓存和本地 .env。\n.DS_Store node_modules/ __pycache__/ .env 已经提交过的文件，后来写进 .gitignore 不会自动停止跟踪。以 .DS_Store 为例，可以运行 git rm \u0026ndash;cached .DS_Store，再提交这次变化。这个动作只处理当前跟踪状态，旧提交中的内容仍然存在。\n.gitignore 也不是密钥保险箱。真正的 Token、API Key 和私钥不应该先写进项目再依赖忽略规则补救。使用环境变量、密码管理器或 GitHub Secrets，才是更稳妥的路径。\n3. Public 和开源中间还隔着 License 公开仓库让别人可以查看和 fork。没有 License 时，默认版权仍然保留，别人并不会自动获得复制、修改和分发许可。\n本文演示选择 MIT License，是因为它条款相对简洁，也适合这个最小示例。采用它通常需要保留版权和许可声明。项目涉及公司代码、第三方素材、模型权重、数据集或商业授权时，不能照抄教程里的选择。\n看别人的项目也一样。README 写着免费，不等于许可证允许所有用途。准备发布二次作品前，要核对仓库实际 License 和依赖项目的许可。\n4. 项目长大以后再补文档 项目开始有人使用以后，再按真实问题补文档。CONTRIBUTING 说明怎样贡献，SECURITY 提供安全问题报告渠道，CHANGELOG 记录版本变化。个人练习项目不必第一天把模板全部建齐，长期没人维护的空模板反而会误导读者。\n5. 公开前做一次安全扫描 发布前先搜索容易泄露的内容。\nAPI Key、Token、密码和私钥\n个人邮箱、绝对路径和设备名\n客户文件、内部地址和未公开数据\n数据库、备份包、模型和大体积媒体\n再看 git status 和即将提交的 diff，确认文件范围。AI 生成的项目尤其需要这一步，因为它可能顺手创建调试日志、示例密钥或本地配置。\n我做 github-publisher 时，把敏感信息扫描、仓库内容检查和推送前确认放进了流程。工具可以减少遗漏，最终公开范围仍然要由人确认。\n十、让项目自动检查、上线并发布版本 仓库结构稳定以后，可以让 GitHub 自动完成重复检查，再把静态页面发布成网站。\n1. Actions 先做一件有用的小事 GitHub Actions 的工作流文件放在 .github/workflows/。这次创建 check.yml，只检查 README 和页面文件是否存在。\nname: Check project files on: push: pull_request: jobs: check-files: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - name: Check required files run: | test -f README.md test -f index.html on 说明什么时候运行，这里选择 push 和 pull request。jobs 下面是一组任务，runs-on 指定 GitHub 提供的运行环境，steps 按顺序拉取仓库并检查文件。\n第一次接触 Actions，先让一项确实有用的小检查跑通，再逐步增加内容。本文更新时，actions/checkout 官方示例已经使用 v7，因此上面的可复制配置也换成了 v7。\n2. 看懂绿灯和失败日志 为了确认失败路径是否真实可见，第一次工作流检查的是并不存在的 MISSING.md。提交后进入 Actions，运行结果亮起红灯。\n展开失败步骤后，日志显示命令返回 exit code 1。它没有告诉我们一大段玄学原因，核心问题就是目标文件不存在。\n这次运行还提示旧版 Checkout 所用运行环境即将弃用。实操当时从 v4 升到了 v5，所以截图中仍会看到 v5；当前可复制版本已经按 Checkout 官方说明更新为 v7。教程里的配置会过期，警告信息值得读完。\n第二次把检查目标改成真实存在的 README.md 与 index.html，新运行顺利通过。\n红灯的处理顺序很简单。先点进失败运行，再展开红色步骤，找到第一条真正失败的命令，然后回到对应文件修复。不要只反复点击重新运行，同一份内容通常还会得到同一个结果。\n3. 用 Pages 把 index.html 发成网站 进入仓库 Settings，找到 Pages。在 Build and deployment 中选择从分支发布，再选择 main 和仓库根目录。\n保存以后，GitHub 会开始部署。第一次出现地址可能需要等待一会儿。页面显示成功后访问公开网址，确认标题和正文与仓库中的 index.html 一致。\n这次实操得到的地址是 https://xiaomoboy.github.io/github-first-project/。\nPages 适合 HTML、CSS、JavaScript 组成的静态内容，例如项目说明、作品页和文档站。它不能直接运行需要常驻服务器、数据库或私密后端环境的完整应用。\n4. 打标签并发布 v1.0.0 项目得到一个可以对外说明的阶段结果后，可以发布 Release。\n进入 Releases，点击 Draft a new release，新建标签 v1.0.0。标题也可以写 v1.0.0，说明里列出这版已经完成的内容，例如静态页面、使用说明、自动文件检查和 Pages 地址。\n标签负责给当前提交一个固定名字。Release 在标签基础上增加版本说明和可选附件。两者有关联，承担的用途不同。\n发布以后回到 Release 页面，检查标签、目标提交、说明和 Assets。需要交付安装包时，由作者主动上传经过验证的文件。GitHub 自动生成的 Source code 归档不能替代安装包说明。\n到这一步，github-first-project 已经有 Actions 绿灯、公开 Pages 地址和 v1.0.0。一个最小项目从文件走到了可以检查和交付的状态。\n十一、最常见的五种翻车怎样救 Git 的报错看起来很长，先抓住错误类型，再决定第一步。下面这张表可以先存着。\n现象 先检查什么 第一处理动作 Permission denied 或 403 当前账号、仓库权限、远端地址、登录方式 确认身份和权限，不要反复输入账号密码 push 被拒，远端有新提交 本地是否落后、远端改了什么 先 fetch，再决定怎样同步 合并冲突 哪些文件的同一位置被两边修改 打开冲突文件，保留最终内容后重新提交 文件过大或仓库变重 大文件类型、是否应该进入版本历史 从提交中移出，按用途选择 Release 或 Git LFS 密钥已经推送 密钥还能不能被使用 立即撤销并轮换，再处理仓库历史 1. Permission denied 或 403 先运行 git remote -v，确认远端地址，再检查当前账号是否有写权限。HTTPS 要看 GitHub CLI 或凭据管理器里的账号和授权范围，SSH 则用 ssh -T git@github.com 检查公钥是否加到了正确账号。\n本文实操在推送工作流文件时遇到过权限不足，切换到已经授权的 SSH 连接后才完成。求助时提供报错文本即可，个人访问令牌不能发进聊天，泄露后应立即撤销。\n2. push 被拒，提示远端有你没有的提交 这通常发生在你从另一台电脑提交过，或者刚在 GitHub 网页修改了文件。\n先获取远端信息并查看当前状态。\ngit fetch origin git status 看清两边变化以后，再运行 git pull origin main。如果自动合并成功，检查结果后继续 push。出现冲突就进入下一节处理。\n不要在不了解差异时使用强推。个人仓库也可能被另一台设备或自动化任务更新，覆盖以后很难找回现场。\n3. 合并冲突 冲突表示 Git 发现同一位置存在两套修改，无法替你选择最终内容。打开冲突文件会看到类似标记。\n\u0026lt;\u0026lt;\u0026lt;\u0026lt;\u0026lt;\u0026lt;\u0026lt; HEAD 本地内容 ======= 远端内容 \u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt; origin/main 阅读上下文，保留最终需要的内容，并删除三组标记。确认文件可以正常使用后，对实际冲突文件运行 git add 文件名，再执行 git commit。\n冲突不等于仓库损坏。没看内容就整段接受一边，或者为了让提示消失直接删文件，才容易把需要的修改一起丢掉。\n4. 文件太大或仓库越来越重 Git 擅长跟踪文本变化。视频、模型、数据库和压缩备份每次修改都可能把新副本写进历史。\nGitHub 网页单文件上传上限是 25 MiB；普通 Git 提交超过 50 MiB 会收到警告，超过 100 MiB 会被拦截。更大的版本文件要使用 Git LFS，供用户下载的安装包也可以放进 Release。具体限制可查看 GitHub 大文件说明。\n只在当前目录删除大文件，不代表它已经从旧提交消失。准备清理历史时先备份并确认影响范围，尤其不要直接在多人仓库重写历史。\n5. 密钥已经推上去了 先撤销并轮换密钥，让旧密钥立即失效。然后把程序改为从环境变量或 GitHub Secrets 读取凭据，确认新密钥没有再次进入日志和截图。最后再评估怎样清理仓库历史。公开内容可能已经被 clone、缓存或索引，删除文件和 commit 也不能保证外部副本消失。\nGitHub 的 Push protection 能拦截一部分已识别的密钥，仍然不能代替提交前检查。账号应开启双重验证，重要服务只给必要权限，并设置合理的有效期。\n6. 先保住什么 遇到故障时先保账号、凭据和远端历史。对强推、rebase 和历史清理没有把握，就先备份仓库，记下当前分支、远端地址和错误信息。分支多一个、提交信息不够漂亮都可以以后整理，密钥仍然有效或远端可能被覆盖时，应先停下普通操作。\n结尾｜以后再遇到 GitHub，按这条路走 以后打开陌生仓库，先看发布者、README、维护记录、License 和 Release，再决定下载 ZIP、clone，还是寻找正式安装包。保存自己的项目时，网页提交适合简单修改，长期维护再把仓库 clone 到电脑。\n我做 github-publisher，是想让完全不懂 GitHub 的人也能借助 AI 发布 Skill。AI 可以执行命令，仓库来源、授权范围、提交内容和密钥安全仍要由人判断。知道一次修改正处于工作区、本地提交还是远端仓库，你就不用靠背命令处理 GitHub。\n下次再打开 GitHub，先确认自己要读项目、拿文件、保存修改，还是交付一个版本。找到眼前这一步，入口就不会那么乱了。\n","permalink":"https://yutterx.com/posts/github-beginner-to-expert/","summary":"从看懂别人的仓库，到发布第一个项目、走通一次协作——万字长文，11 章完整路径。","title":"GitHub 从入门到精通：找项目、建仓库、协作与自动化"},{"content":"按视频真实操作顺序整理，步骤、界面、DNS 记录和排错全部展开。\n✅ 已实测\n适用对象想要一个带自己品牌域名的邮箱、预算 20 元/年以内的人\n预计时长30–60 分钟（大部分时间在等 DNS 生效）\n前置准备一张 Visa/Mastercard 信用卡 + Cloudflare 账号 + 一个常用邮箱 本版重点：这版只围绕实际创建流程展开。你会按顺序完成：创建域名、验证域名、接管 DNS、创建 OquMail 主账号、添加邮箱 DNS 记录、创建第一个域名邮箱、测试收发。价格和页面名称会变化，遇到不同界面时，以同一功能的实际按钮为准。\n开始前准备 Google 账号和长期可访问的辅助邮箱。 用于支付域名注册费的国际信用卡（Visa / Mastercard）——实测预付卡（如 Bybit 卡）会被拒，招商银行 Visa 信用卡可正常付款。 想注册的域名名称，建议准备 2 至 3 个备选。 Cloudflare 账号。 一个普通邮箱，用来注册 OquMail 和接收激活邀请。 密码管理器，用来保存管理员密码、邮箱密码和恢复码。 ⚠️ 重要：域名注册完成，不代表邮箱已经创建。域名、DNS 和邮箱是三个连续环节。本教程每完成一个环节都会给出\u0026quot;完成判断标准\u0026quot;。\n第一章 · 创建域名 步骤 01 · 打开 Google Workspace 注册页面\n打开 Google Workspace 官方注册页面，点击\u0026quot;开始免费试用\u0026quot;、Get started 或相同含义的按钮。已登录 Google 账号时，系统通常会自动识别当前账号；没有登录时，按页面提示登录。\n图 01｜Workspace 注册流程界面\n步骤 02 · 创建新的 Workspace 账号\n选择创建新的账号，填写公司名称或项目名称。个人使用可以填自己的名字或品牌名。员工人数选择\u0026quot;只有您一人\u0026quot;。这个选项主要影响后续 Workspace 的组织设置，不会改变你要注册的域名名称。\n步骤 03 · 选择地区并填写联系信息 ⚠️ 重点\n选择地区会影响货币、价格、税费和付款方式。视频实测：选土耳其（Turkey）地区汇率最划算——.com 等常规后缀统一 75 土耳其里拉/年 ≈ 11 元人民币，与主流平台动辄几十元的续费价相比性价比极高。\n🎯 土耳其资料填写要点：\n联系地址必须用土耳其本地地址——用 Google 搜索「土耳其地址生成器」，把生成的街道、邮编、区、省依次填入； 电话可以随便填（无实名校验）； 系统默认将联系信息设为不公开（免费附赠 Whois 隐私保护），别人查不到你的真实信息； 视频中的地址、电话、邮箱、密码只是演示内容，不要照抄——但国家/地区、资料结构按土耳其标准走。 图 02｜填写域名注册人的姓氏、名字和辅助邮箱\n步骤 04 · 选择新的自定义域名\n当页面询问是否已有域名时，选择\u0026quot;获取新的自定义域名\u0026quot;、购买新的域名或相同含义的选项。不要选临时子域名，否则后续邮箱地址可能不是你想要的自定义域名邮箱。\n步骤 05 · 搜索域名\n输入准备好的域名名称，点击搜索。系统会告诉你这个域名是否可购买。已被占用的名称不能直接注册，换名称或从系统推荐的备选中选择。\n图 03｜搜索要注册的域名名称\n💡 常规后缀（.com/.net/.org）在土耳其区的基础价格一样都是 75 里拉/年——既然价格相同，首选认知度最高、质量最好的 .com。名称尽量短、容易拼写，避免难以口述的连续数字和复杂连字符。\n第二章 · 确认价格、资料和付款 步骤 06 · 确认域名价格 ⚠️ 重点\n付款前不要只看首年金额。重点检查注册年限、续费价格、货币、税费和自动续费状态。视频中的人民币换算只适用于当时汇率和账号条件，实际金额以你当前结算页显示为准。\n图 04｜检查域名注册价格和币种\n步骤 07 · 填写域名联系人资料 ⚠️ 重点\n按页面要求填写街道、城市、省份、邮编和电话。因为选了土耳其区，地址也填土耳其地址生成器给出的本地地址（街道、邮编、区、省依次填入），电话随便填。收款资料与地区要保持一致。若页面显示 Whois 隐私保护选项，查看它是否已经开启。\n图 05｜填写域名联系人地址和电话\n步骤 08 · 创建管理员邮箱和密码\n设置管理员用户名和密码。用户名可能成为你的域名邮箱前缀，例如用户名是 admin，域名是 example.com，之后可能创建 admin@example.com。密码不要与 Google 账号或其他网站重复。\n用户名要记下来，之后会用于登录管理后台。 密码保存到密码管理器。 恢复邮箱要使用你能长期访问的普通邮箱。 不要把视频中的示例密码复制到自己的账号。 图 06｜设置 Workspace 管理员用户名和密码\n步骤 09 · 完成付款 ⚠️ 重点\n此时账单里会有两笔潜在扣款：\n项目 金额 说明 Workspace 商务标准版月费 170.8 里拉 ≈ 20 多元/月 14 天试用，结束前可随时取消 域名注册年费 75 里拉 ≈ 11 元 立即扣除，真正要付的钱 🎯 支持 Visa / Mastercard 国际信用卡；预付卡不支持（如 Bybit 卡会被拒，招商银行 Visa 信用卡实测成功）。逐项确认今天扣款金额、试用结束时间、后续自动扣款金额和取消入口。完成付款后，保存订单邮件和截图。\n图 07｜确认付款方式和应付金额\n✅ 域名创建完成检查：付款成功只是第一阶段。继续检查域名是否出现在域名管理后台、状态是否为 Active、到期时间是否可见，以及是否收到联系人验证邮件。补充：域名最终由 Squarespace 管理（Google 已把 Google Domains 售予 Squarespace，谷歌在前端收费、Squarespace 负责底层注册解析）——验证邮件就来自 Squarespace。\n第三章 · 验证域名并接管 DNS 步骤 10 · 验证域名联系人\n打开辅助邮箱或新建账号的邮箱，查找来自 Squarespace 的验证邮件。点击 Verify、验证联系人或类似按钮。验证完成后，域名状态应从 Action required 变为 Active。\n图 08｜使用新建的 Workspace 账号进入域名管理页面\n补充说明 · 点击 Log in 用 Continue with Google 登录（务必选刚购买的带新域名企业邮箱授权登录），进入后域名在 Domain 列表，状态 Action required——15 天内完成邮箱验证，回到邮件点 Verify，状态变绿色 Active。\n步骤 11 · 确认域名状态\n进入域名列表，确认域名名称、状态、到期时间和 DNS 管理入口。不要在没有备份记录的情况下删除旧 DNS 记录。\n图 09｜确认域名已经激活\n步骤 12 · 添加域名到 Cloudflare\n登录 Cloudflare，点击 Add a site，输入完整域名，例如 example.com。不要输入 https://、www 或邮箱前缀。选择免费方案。Cloudflare 会尝试扫描并导入现有记录 —— 导入后建议把所有\u0026quot;小黄云\u0026quot;（代理状态）先临时关闭，记录用途看清楚再继续。\n图 10｜把域名添加到 Cloudflare\n步骤 13 · 检查导入的 DNS 记录\n逐条检查 A、CNAME、MX 和 TXT 记录：\n最上面的 A / CNAME 记录（约 6 条）——Squarespace 为自家建站预生成的底层线路，留作备用即可； 最下面的 MX + TXT 记录——这是给 Google Workspace 用的，有了这三条，Gmail 才能准确收发该域名邮件并向外界证明非伪造； 先记录旧邮箱的 MX，以便知道后续切换到 OquMail 时替换什么。 步骤 14 · 替换名称服务器\nCloudflare 会给出两条名称服务器。复制后回到 Squarespace 的 Domain Name Servers 页面，点 Use Custom Name Servers，删除旧名称服务器，粘贴两条新地址并保存。名称服务器不是普通 DNS 记录，必须在注册商的域名设置页面修改。\n图 11｜把 Cloudflare 分配的名称服务器复制回域名注册商\n步骤 15 · 处理 DNSSEC ⚠️ 重点\nDNSSEC 像是域名的防篡改密码锁，两边锁不一致会导致域名瘫痪。正确顺序：\n先在 Squarespace 关闭 DNSSEC（Continue → Close 拔掉旧锁）； 回到 Cloudflare 点\u0026quot;我已更新名称服务器\u0026quot;，等待接管（通常几分钟，刷新后看到\u0026quot;您的域名现在受 Cloudflare 保护\u0026quot;）； 再回 Cloudflare DNS 设置里启用 DNSSEC，生成全新参数； 回 Squarespace 的 DNSSEC 选项 Add Record，把 Cloudflare 给的参数一一对应填回去（重新上锁）。 图 12｜迁移时检查 DNSSEC 状态\n✅ Cloudflare 接管完成标准：Cloudflare 页面显示 Active；注册商名称服务器已经替换；网站没有异常；域名可以正常解析。完成后再继续邮箱配置。\n第四章 · 创建 OquMail 主账号 步骤 16 · 打开 OquMail 并注册\n打开 OquMail 官网，点击 Get started free、Get started now 或相同含义的按钮。注意这里创建的是 OquMail 管理后台主账号，还不是最终给别人使用的域名邮箱。\n图 13｜OquMail 首页，点击 Get started free\n步骤 17 · 填写主账号信息\n填写姓名、普通登录邮箱、密码、公司或项目名称、国家（可选中国）和手机号。点击 Create Account 后，去普通邮箱查找 6 位验证码。输入验证码后进入 OquMail 管理后台。\n💡 免费额度实测：可创建 15 个邮箱、最多绑定 3 个独立域名、每个邮箱每天可发 250 封、每个邮箱 5GB 容量——完全足够个人/小团队使用。超出后每加一个邮箱仅 1 美元/月。额度以 OquMail 当前官网为准，不要当成永久承诺。\n图 14｜填写 OquMail 主账号注册信息\n第五章 · 把域名接入 OquMail 步骤 18 · 添加域名\n在 OquMail 后台点击 Add Domain，输入完整域名，例如 example.com，然后点击 Connect My Domain。平台会展示 TXT、MX、SPF、DKIM、DMARC 等记录。保持这个页面打开，另开 Cloudflare 标签页。\n图 15｜点击 Add Domain 添加自己的域名\n步骤 19 · 可选的 Cloudflare 一键授权\n如果 OquMail 提供 Cloudflare 一键配置，页面可能要求授权访问 Cloudflare。授权前看清权限范围。你不想授权时，可以取消授权，改用手动复制 DNS 记录的方式。手动配置更容易确认每条记录的具体内容。\n图 16｜OquMail 请求访问 Cloudflare 的授权页面\n步骤 20 · 添加 MX 收信记录\n在 Cloudflare DNS 页面点击 Add record。类型选择 MX，Name 通常是 @，服务器地址复制 OquMail 显示的地址，Priority 按页面要求填写（视频演示 mail.oqumail.com、优先级 10）。这条记录告诉整个互联网：发给这个域名的所有邮件，交给 OquMail 接收。\n图 17｜添加 MX 记录，指定邮件接收服务器\n⚠️ 如果域名之前接入过 Google Workspace 或其他邮箱服务，检查并处理旧的 MX 记录。同一个域名不能同时让两家服务商负责收信。\n步骤 21 · 添加 SPF 和 DKIM\nSPF（TXT）：发件人白名单——告诉收件方只有经授权的服务器发出的邮件才是真的，防止别人冒充你的域名发垃圾邮件； DKIM（TXT）：数字防伪印章——确保邮件传输途中未被篡改。主机名通常含 selector，内容是一串公钥，必须从 OquMail 后台完整复制。 图 18｜添加 SPF 和 DKIM 记录\n⚠️ 如果域名已经有 SPF 记录，不要再创建第二条 SPF，按服务商文档合并授权内容。DKIM 主机名不能凭感觉改成 @。\n步骤 22 · 添加 DMARC 并验证\nDMARC 是安全兜底策略：如果邮件没通过前面两项验证，就直接拒收或扔垃圾箱。主机名通常是 _dmarc，记录内容按 OquMail 提示填写。保存后回 OquMail 点 \u0026ldquo;I\u0026rsquo;ve added the records\u0026rdquo; — Verify DNS。\n图 19｜添加 DMARC 后点击 Verify DNS\n🔧 验证失败时，先检查五件事：① Name 是否正确；② Type 是否正确；③ Value 是否完整；④ MX 优先级是否正确；⑤ Cloudflare 是否误开了不适用的代理（小黄云）。确认无误后等待 DNS 传播，再重新验证。看到全部记录显示绿色 Found 即成功。\n第六章 · 创建第一个域名邮箱 步骤 23 · 打开 Users and Mailboxes\n在 OquMail 左侧打开 Users and Mailboxes，点击 Add User。Email address 输入邮箱前缀，例如 hello、support 或你的名字，再从下拉框选择已验证域名。页面会组合出 hello@example.com。\n图 20｜添加用户并设置邮箱前缀、域名和权限\n步骤 24 · 选择用户权限\n分给团队其他人用 → 选 Mail Only（只能收发邮件，最安全）； 自己使用 → 选 Mail + Admin（收发 + 管理后台权限）。 步骤 25 · 发送激活邀请\n填写接收激活链接的普通邮箱（可随便填，哪怕用主账号相同的邮箱——它只接收激活链接，不强制绑定），点击 Create and send invitation。去该邮箱查邀请邮件，点蓝色激活按钮，设置新密码，点击激活账号。手机号同样不强制验证，填一个即可（建议和主账号手机号区别开）。\n步骤 26 · 登录网页邮箱\n退出管理后台（Sign out），使用完整域名邮箱和新密码登录 OquMail 网页邮箱。进入后先确认左上角显示的发件人地址是你的域名邮箱，而不是注册 OquMail 的普通邮箱。\n图 21｜使用新创建的域名邮箱登录网页邮箱\n✅ 检查点：登录后左上角发件人地址应显示 hello@example.com（你的域名邮箱），而不是注册 OquMail 的普通邮箱。\n步骤 27 · 测试发信\n点击 Compose，给自己的 Gmail、Outlook 或其他普通邮箱发送测试邮件。邮件标题可以写\u0026quot;域名邮箱测试\u0026quot;。发送后检查外部邮箱是否收到，发件人地址是否显示为 hello@example.com。\n步骤 28 · 测试收信和回复\n从外部邮箱回复测试邮件，回到 OquMail 刷新页面，检查是否收到。再从第三个邮箱服务商发一封新邮件。至少完成一次发出、收到、回复的闭环。\n步骤 29 · 测试附件和垃圾邮件\n发送一个小附件，确认对方可以收到。检查邮件是否进入垃圾箱，并查看邮件的 SPF、DKIM、DMARC 结果。如果邮件进入垃圾箱，不要马上反复发送，先检查 DNS 记录和域名信誉。\n步骤 30 · 可选：配置 Outlook ⚠️ 重点\n💡 好消息：OquMail 官网写着\u0026quot;不支持第三方客户端\u0026quot;，但实测完美支持 Outlook！（推测是官方最近新增功能、网页说明未更新）。配置方式非常简单：打开 Outlook 客户端 → 添加账户 → 输入完整域名邮箱和密码 → 继续。大多数现代客户端内置自动发现机制——只要 MX 正确指向 OquMail，Outlook 会自动完成配置，你根本不需要手动填任何端口的参数。如果用的是小众/老旧客户端无法自动匹配，才需要去后台 \u0026ldquo;Connect to App (IMAP)\u0026rdquo; 查看 IMAP/SMTP 参数手动设置。\n图 22｜使用完整域名邮箱配置 Outlook\n✅ 邮箱创建完成标准：邮箱能够登录；能够发到外部邮箱；能从外部邮箱收到邮件；能够回复；发件人地址正确；附件可用；没有明显 SPF、DKIM、DMARC 错误。\n第七章 · 常见错误的处理顺序 域名搜不到或已被占用 → 换一个名称或后缀。 付款失败 → 检查卡片是否为 Visa/Mastercard（预付卡不支持）、币种、地区和账单信息，不要反复提交。 域名状态 Action required → 先查验证邮件并完成联系人验证。 Cloudflare 一直 Pending → 核对注册商处的两条名称服务器。 域名接入 OquMail 失败 → 先检查 TXT 验证记录。 别人发不进来 → 检查 MX 是否指向 OquMail，是否残留旧 MX。 邮件进垃圾箱 → 检查 SPF、DKIM、DMARC 是否为平台给出的值。 管理员能登录但普通邮箱不能登录 → 检查用户是否激活以及邀请链接是否过期。 Outlook 配置失败 → 先用网页邮箱确认账号本身能正常收发，再处理客户端。 最终检查清单 域名状态 Active（土耳其区，75 里拉 ≈ 11 元/年）。 联系资料为土耳其地址生成器生成的本地地址；Whois 隐私保护默认开启。 联系人验证完成。 Cloudflare 状态 Active；名称服务器已替换。 DNSSEC：Squarespace 关锁 → Cloudflare 启用 → 回填 Squarespace。 OquMail 域名验证通过（五个记录都显示绿色 Found）。 TXT、MX、SPF、DKIM、DMARC 配置完成。 第一个域名邮箱已激活（Mail Only / Mail + Admin 按需选）。 发信、收信、回复、附件测试通过。 Outlook 自动发现配置成功（可选但推荐）。 管理员已开启两步验证。 邮箱密码和恢复码已保存。 操作顺序记忆（一步没有成功，就不要跳到下一步）：\n创建域名 → 验证域名 → Cloudflare 接管 DNS → 创建 OquMail 主账号 → 添加域名 → 填 DNS 记录 → 验证 DNS → 创建邮箱用户 → 激活 → 测试收发 来源 Google Workspace 域名注册与 Cloudflare 托管视频 OquMail 免费域名邮箱部署视频 Google Workspace 官网 OquMail 官网 Cloudflare 官网 Google Workspace 官方域名购买说明 Squarespace 官方域名管理说明 Cloudflare 名称服务器迁移说明 Cloudflare DNSSEC 说明 OquMail FAQ OquMail 产品说明 ","permalink":"https://yutterx.com/posts/domain-email-setup/","summary":"域名 + DNS + 品牌邮箱一次走完：注册域名 → Cloudflare 接管 → OquMail 免费邮箱 → 实测收发（已实测）。","title":"域名创建与品牌邮箱部署（详细图文教学版）"},{"content":" 你好，我是 Yutter —— 欢迎来我的博客坐坐。这里记录日常，也记录我折腾过的一切。\n这里写什么 日常与想法 —— 生活里值得记下的小事，和偶尔的碎碎念 折腾与教程 —— GitHub、域名邮箱、工具链，每一步都实测过，附标准和检查项 AI 与工具 —— 大模型、Agent、自动化，真正用过才写 偶尔的创作 —— 剧本、剧情整理，写代码之外的一点浪漫 为什么有这站 与其让笔记躺在本地，不如放到公网：方便自己随时翻，也方便偶尔帮到路过的人。\n联系我 📮 邮箱：yutter@yutterx.com（欢迎交流，也可以提意见） 🐙 GitHub：github.com/yutter2024 本站所有内容仅代表个人观点，如有错误欢迎指正。转载需保留原文链接。\n","permalink":"https://yutterx.com/about/","summary":"\u003cimg src=\"/avatar.png\" alt=\"Yutter\" width=\"96\" height=\"96\" style=\"border-radius:50%;margin-bottom:12px\" /\u003e\n\u003cp\u003e你好，我是 \u003cstrong\u003eYutter\u003c/strong\u003e —— 欢迎来我的博客坐坐。这里记录日常，也记录我折腾过的一切。\u003c/p\u003e\n\u003ch2 id=\"这里写什么\"\u003e这里写什么\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e日常与想法\u003c/strong\u003e —— 生活里值得记下的小事，和偶尔的碎碎念\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e折腾与教程\u003c/strong\u003e —— GitHub、域名邮箱、工具链，每一步都实测过，附标准和检查项\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAI 与工具\u003c/strong\u003e —— 大模型、Agent、自动化，真正用过才写\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e偶尔的创作\u003c/strong\u003e —— 剧本、剧情整理，写代码之外的一点浪漫\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"为什么有这站\"\u003e为什么有这站\u003c/h2\u003e\n\u003cp\u003e与其让笔记躺在本地，不如放到公网：方便自己随时翻，也方便偶尔帮到路过的人。\u003c/p\u003e","title":"About"},{"content":"什么是 Agent 如果 LLM 是个很会说话的大脑，那 Agent 就是给它装上手脚。 大脑只负责「想」，手脚负责「做」—— 调 API、读写文件、操作浏览器、写代码。\n一个最小可用的 Agent 通常有三件套：\nLLM：负责推理和决策 工具（Tools）：Agent 能调用的函数，每个工具是一段「副作用」 循环（Loop）：让 Agent 反复「观察 → 思考 → 行动」直到任务完成 while not done: thought = llm(messages, tools) if thought.tool_call: result = run(thought.tool_call) messages.append(result) else: return thought.final_answer 这就是 ReAct 框架的雏形。\n为什么现在火 三个变量同时凑齐了：\n模型够强：o1 / Claude 4 / DeepSeek-R1 这类模型在多步推理上已经稳定 协议成熟：MCP、Function Calling、Tool Use 的接口基本统一 生态到位：LangChain、LlamaIndex、CrewAI、AutoGen 一堆框架随便挑 自己搭一个最小 Agent 不依赖任何框架，纯 Python 几十行就能跑：\nimport json, subprocess from openai import OpenAI client = OpenAI() TOOLS = [{ \u0026#34;type\u0026#34;: \u0026#34;function\u0026#34;, \u0026#34;function\u0026#34;: { \u0026#34;name\u0026#34;: \u0026#34;run_cmd\u0026#34;, \u0026#34;description\u0026#34;: \u0026#34;在本地执行 shell 命令并返回输出\u0026#34;, \u0026#34;parameters\u0026#34;: { \u0026#34;type\u0026#34;: \u0026#34;object\u0026#34;, \u0026#34;properties\u0026#34;: {\u0026#34;cmd\u0026#34;: {\u0026#34;type\u0026#34;: \u0026#34;string\u0026#34;}}, \u0026#34;required\u0026#34;: [\u0026#34;cmd\u0026#34;] } } }] def run(cmd: str) -\u0026gt; str: return subprocess.run(cmd, shell=True, capture_output=True, text=True).stdout messages = [{\u0026#34;role\u0026#34;: \u0026#34;user\u0026#34;, \u0026#34;content\u0026#34;: \u0026#34;列出当前目录所有 .py 文件\u0026#34;}] for _ in range(5): r = client.chat.completions.create(model=\u0026#34;gpt-4o-mini\u0026#34;, messages=messages, tools=TOOLS) msg = r.choices[0].message messages.append(msg) if msg.tool_calls: for tc in msg.tool_calls: out = run_cmd(json.loads(tc.function.arguments)[\u0026#34;cmd\u0026#34;]) messages.append({\u0026#34;role\u0026#34;: \u0026#34;tool\u0026#34;, \u0026#34;tool_call_id\u0026#34;: tc.id, \u0026#34;content\u0026#34;: out}) else: print(msg.content); break 重点不是代码本身，而是循环结构—— 只要让模型「能看结果 → 修正下一步」，它就能干很多事。\n常见误区 把 Agent 当万能解药：90% 的任务单次 LLM 调用就够了，套上 Agent 反而慢且不稳 工具太多：工具一多模型选择困难，幻觉率飙升。单 Agent ≤ 5 个工具 是经验法则 没设上限：循环一定要有 max_iterations，否则模型可能死循环烧光 token 不记日志：Agent 出错时没 trace 排不出来，所有调用必须落盘 下一步 下一篇我会拆一个真实可用的 Coding Agent： 基于 Claude Code 的工作流，从需求到 PR 全程如何编排。\n如果你也在做 Agent，欢迎交流 👋\n","permalink":"https://yutterx.com/posts/agent-101/","summary":"什么是 Agent、为什么现在火、自己怎么搭一个——写给程序员的入门笔记。","title":"AI Agent 入门：从 LLM 到能办事的助手"},{"content":"起因 网站最初搭在 GitHub Pages + xiaozb.online 上。一切都顺利：推送即部署、域名秒解析。\n对 GitHub 的仓库/分支/PR 还不熟？ 推荐先读 GitHub 从入门到精通，30 分钟看懂。\n但卡在了最后一步——HTTPS 证书。\nDNS 记录加完几分钟就生效了（xiaozb.online 已解析到 GitHub Pages 的 IP）， 可 GitHub 的 DNS Check 默认要等它自己的校验周期跑完，才会签发 Let\u0026rsquo;s Encrypt 证书。 等了一个多小时，https:// 还是拿不到证书，Enforce HTTPS 一直灰着。\n更要紧的是：国内访问 GitHub Pages（*.github.io 那批 IP）时好时坏， 今天能开，明天可能就超时。个人博客要的是「掏出来就能访问」， 不能赌运气。\n方案对比 方案 成本 HTTPS 国内访问 GitHub Pages 0 元 自动但要等 DNS 校验 不稳定，看运气 Cloudflare Pages 0 元 自动，几分钟 比 GitHub 稳一些 国内 OSS + CDN 几十元/年 自动但需备案 最稳 域名 yutterx.com 已经托管在 Cloudflare，DNS 切过去一步到位。\n迁移步骤（真实执行） 1. 代码侧 hugo.yaml 的 baseURL 改成 https://yutterx.com/ PaperMod 主题本来是用 git submodule 引入的，Cloudflare Pages 对 submodule 支持要看具体版本 → 干脆 把主题文件直接入库（rm -rf themes/PaperMod/.git \u0026amp;\u0026amp; rm .gitmodules）， Hugo 对主题的约定是把目录放 themes/ 下，文件在就是主题在，构建零依赖 rm -f .gitmodules git rm --cached themes/PaperMod rm -rf themes/PaperMod/.git git add -A \u0026amp;\u0026amp; git commit -m \u0026#34;theme 直接入库\u0026#34; \u0026amp;\u0026amp; git push 2. Cloudflare Pages 侧 控制台 → Workers 和 Pages → 创建 → Pages → 连接到 Git 选仓库 → 构建配置：框架预设 Hugo，构建命令 hugo --minify，输出目录 public 保存并部署，第一次构建 1-2 分钟 项目 → 自定义域 → 添加 yutterx.com + www.yutterx.com 3. 切流 新域名挂好后，旧域名 xiaozb.online 停下（删掉旧 DNS 记录即可） 旧 GitHub Pages 不再绑域名，只留 yutter2024.github.io/xiaozb.online 备用 复盘 先想清楚托管再动手：如果一开始就决定用 Cloudflare Pages，能省下整轮证书等待 DNS 校验要选面向国内友好的托管：GitHub Pages 适合搭着玩，长期用建议 CDN/Pages 层 submodule 是迁移阻力：静态站点直接 vendoring 主题，减少外部依赖 本站配置、部署文档都在仓库里：DEPLOY.md。欢迎参考。\n","permalink":"https://yutterx.com/posts/domain-migration/","summary":"从 GitHub Pages 迁到 Cloudflare Pages 的完整记录：DNS 等待、证书签发与方案对比。","title":"换域名记：从 GitHub Pages 迁到 Cloudflare Pages"},{"content":" \u0026ldquo;我不常谈起他，但我时常想起他。\u0026rdquo; —— 约翰 · 马斯顿，致亚瑟 · 摩根\n序章 · 西部时代的黄昏 19 世纪末的美国，文明正在吞没荒野。铁路铺进大山，电报织成巨网，法律取代私刑，平克顿侦探社替资本和政府猎杀最后的法外之徒。亡命徒的时代即将终结——而范德林德帮正是这个时代最后的亡命徒之一。\n这个故事横跨两部游戏，记住一点：《救赎2》是前传。正确的时间顺序是 2 → 1：\n1899 黑水镇 → 1907 比彻之愿 → 1911 猎杀 → 1914 杰克的故事\n主要人物 人物 定位 一句话 达奇 · 范德林德 帮派首领 宣扬\u0026quot;劫富济贫\u0026quot;的理想主义者，压力之下撕下面具，毁掉身边所有人，最终也被自己的理想吞噬 亚瑟 · 摩根 RDR2 主角 达奇养大的头号打手，确诊肺结核后清算一生杀戮，用生命为约翰一家换来第二次人生 约翰 · 马斯顿 RDR1 主角 亚瑟拼死送出的\u0026quot;继承人\u0026quot;，想过平凡日子，却被时代清算，最终倒在自家农场门口 迈卡 · 贝尔 叛徒 黑水镇之后加入的纯粹恶棍，平克顿内线，不断煽动达奇走向暴力与偏执 艾比盖尔 \u0026amp; 杰克 约翰的妻儿 约翰奋斗与牺牲的全部理由；杰克最终为父报仇，却走上父辈拼命想让他逃离的枪手之路 罗斯探员 调查局（BOI） \u0026ldquo;文明\u0026quot;的化身——绑架约翰妻儿要挟他猎杀老兄弟，事成后违约灭口 第一部 · 救赎2（1899）：帮派的末路狂奔 黑水镇惨案。 帮派抢劫渡轮失败，达奇射杀无辜女子，众人被迫丢掉巨额赃款，逃入暴风雪的雪山。此后一路东逃：马掌望台、罗兹镇、圣丹尼斯——达奇不断画饼\u0026quot;再干一票大的就收手\u0026rdquo;，但每一票都越搞越砸，藏起来的钱越来越神秘。\n转折的种子。 亚瑟执行高利贷收债时殴打了病入膏肓的托马斯 · 唐斯——带血的唾沫溅入亚瑟面部，肺结核的种子就此埋下。与此同时，平克顿的米尔顿探员开出条件：交出达奇即可换取特赦，亚瑟断然拒绝。\n圣丹尼斯崩塌。 介入格雷与布雷斯韦特两大家族宿怨后，西恩被杀、杰克被卖；达奇血洗庄园，连教父勃朗特都溺死喂了鳄鱼。他不顾何西阿反对策划银行劫案——结果何西阿被当街处决，蓝尼中弹身亡，约翰被俘，剩余的人随沉船漂流到瓜玛岛。在岛上，达奇掐死引路的穷苦老妇封口——亚瑟终于明白：达奇不是在文明逼迫下变坏的，而是伪装被剥掉了。\n亚瑟的救赎。 回到本土，肺结核确诊等同于死刑，反而让亚瑟醒来：驱逐放债人施特劳斯、帮寡妇与穷人、协助瓦匹提部落。运钞火车行动中约翰中弹坠车，达奇却称\u0026quot;来不及救\u0026quot;，把情同父子的约翰遗弃荒野——帮派彻底崩解。\n山顶的日出。 亚瑟在营地震怒揭露迈卡是内奸，平克顿大军随即杀到，帮派作鸟兽散。亚瑟把背包、日记与牛仔帽交给约翰：\u0026ldquo;去照顾好你的家庭，做个好男人，快走，别回头！\u0026rdquo; 他独自留下断后，在山巅与迈卡肉搏，重病濒死。达奇赶到，面对奄奄一息的亚瑟，他说不出话，转身离去——亚瑟爬到悬崖边，望着日出，平静死去。\n尾声 · 1907：比彻之愿 八年后，约翰在比彻之愿买地建农场，婚礼、牛群、亚瑟用命换来的\u0026quot;第二次人生\u0026quot;。莎迪打听到迈卡割据雪山，约翰违诺上山复仇——山顶对峙时，达奇竟也在场。达奇沉默良久：\u0026ldquo;我猜……和你一样。\u0026rdquo; 他一枪射伤迈卡，约翰随后将迈卡击毙，用金条还清了贷款。\n但复仇惊动了政府。 罗斯探员顺着线索盯上了约翰——这正是一代的引子。\n第二部 · 救赎1（1911）：时代的清算 被绑架的救赎。 罗斯绑架了艾比盖尔和杰克，要挟约翰猎杀当年老兄弟：比尔 · 威廉姆森、哈维尔 · 埃斯奎拉、以及最后的达奇。\n墨西哥。 比尔逃往墨西哥自立军阀，约翰追到异国，在阿连德上校与雷耶斯革命军之间周旋，最终看着比尔被杀、哈维尔伏诛——然后是注定的一战。\n达奇之死。 疯癫的老人在科奇奈要塞啸聚起恨意滔天的原住民青年，重演亡命旧梦。被逼到悬崖边时，他说出全系列最著名的台词：\n\u0026ldquo;我们无法改变自己的天性，约翰。我们不能对抗改变，我们不能对抗重力……我的一生都在对抗，但最终一无所获。当我离去，他们只会再找另一个怪物——他们必须这么做，因为需要为自己的存在找个理由。我们的时代过去了，约翰。\u0026rdquo;\n然后，纵身一跃。\n谷仓大门。 游戏留给约翰最后的礼物，是一段田园时光：教杰克打猎、赶牛、收玉米——这是他一生中最接近\u0026quot;普通人\u0026quot;的日子。然后军队来了。约翰掩护妻儿逃生，走到谷仓门前，点燃一支烟，推开大门——在无数枪口的注视下拔枪应战，身中数十枪，倒在自家农场门口。\n墓碑上刻着：\u0026ldquo;Blessed are the Peacemakers\u0026rdquo;（使人和睦的人有福了）。\n真正的尾声 · 1914：血色终章 阿比盖尔哀伤成疾，三年后葬在约翰身旁。成年的杰克穿上父亲的夹克，踏上寻仇之路。在美墨边境的河边，他遇到退休的罗斯——决斗枪响，罗斯的尸体缓缓漂入冰河。杰克低头看着自己的枪口，茫然四顾：老一代的亡命徒全部死绝，旧时代的恩怨了结，而西部的夕阳，已经彻底落下。\n时间线总览 年份 事件 1899 黑水镇渡轮劫案失败，范德林德帮开始大逃亡（RDR2 开篇） 1899 亚瑟确诊肺结核，帮派崩解，亚瑟死于山顶，掩护约翰一家逃走 1907 约翰建比彻之愿农场，上山手刃迈卡复仇，暴露行踪 1911 罗斯绑架约翰妻儿，约翰猎杀比尔、哈维尔；达奇跳崖自尽（RDR1 主线） 1911 政府违约灭口，约翰在农场门口战死 1914 杰克决斗杀死退休的罗斯，为父报仇，继承枪手宿命 为什么这是一个故事，而不是两个 亚瑟的遗产：亚瑟用命换来约翰的\u0026quot;第二次人生\u0026quot;——农场、家庭、那段田园时光，全是他的遗产结尾 失败的救赎：约翰杀光老兄弟，却换不来政府的宽恕——时代要的不是正义，是清算 达奇的幽灵：他用理想主义毁掉了所有人，最后连自己也被困在理想里，是贯穿两部曲的幽灵 杰克扣下扳机那一刻，两代人的挣扎画成一个闭环：文明赢了，但没有人获得救赎——除了那个在山顶看着日出死去的亚瑟 · 摩根。\nRDR 剧情时间跨度：1899 — 1914。原文基于两部游戏正史剧情整理，含少量台词引用。\n","permalink":"https://yutterx.com/posts/red-dead-redemption-saga/","summary":"RDR2 × RDR1 编年史：范德林德帮的黄昏、亚瑟的救赎、约翰的清算与杰克最后的枪声。","title":"荒野大镖客：救赎——两代亡命徒的完整史诗（1899–1914）"},{"content":"这篇是一份持续更新的清单，记录我截止到目前为止认为最有用的网站和 App。\n说明：文中「不翻墙」即国内可直接使用；「翻墙」类需要全程开 VPN。价格以标注时的实际售价为准。\n日常类 不翻墙 微信、QQ：不用多说 百度贴吧：可以用来查资料、找资源 小黑盒：游戏资讯与社区 翻墙 VPN 推荐：https://tutu.tutugood.store/，18 元 60G 不限时。推荐选付费的，免费的不但网速慢还不安全 注册谷歌账号：https://account.google.com/，手机短信验证可以填国内手机号（最好是中国移动） 实在不行：https://sms-activate.io/?ref=10903612 购买手机号 还不行的话：https://universalbus.cn/?s=olLxMA23uH 直接购买谷歌账号（也可以手机版 OurPlay 上购买） 参考视频：YouTube 注册完成后即可登录 YouTube、谷歌全家桶等服务，无障碍访问外网 Google Play 会员购买基本没戏：手机版用不了礼品卡（会锁卡），电脑版基本需要外国银行卡。\n⚠️ Google Play 礼品卡千万别买——买了也用不了，等于被诈骗（亲身经历）。\n如果非要用虚拟卡：https://i.bebingocard.com/login?code=UPHSP888（详细视频：YouTube）。但不太推荐：提供商可能随时跑路，钱拿不回来还可能连累账号被封。\n订阅外网服务的正路：美区 Apple 最稳的还是 iPhone / iPad 上购买：\n必须有美区 App Store。注册美区账号有两种方式： 一：直接换区（仅适合中国大陆→美国）：打开 App Store → 右上角账户 → 点自己的用户名/头像 → 输密码 → 点国家/地区 → 更换到美国 → 付款方式选无 → 填身份信息（去 Google 搜\u0026quot;地址生成器(美国) \u0026ldquo;，按要求填即可）→ 完成 二：注册 Apple ID 时直接选美国（适合所有用户）。具体流程：Apple 官方指南，注意国家/地区选美国，信息同样用地址生成器 购买美区 App Store 礼品卡：支付宝搜索 Pockytshop 选 App Store 礼品卡（没有支付宝的话在京东/淘宝搜索\u0026quot;App Store 礼品卡\u0026rdquo;）→ 填金额 → 支付 充值：打开 App Store → 右上角账户 → 兑换充值卡或代码 → 填入代码 → 输密码 → 成功 使用：以上充的美金只能在 App Store 消费，要对其他 App 订阅还要：打开钱包 → 右上角加号 → 曾添加过的卡片 → 点 Account 绑定 → 之后就能购买其他应用的订阅了 在 iPhone 上买订阅比 Google Play 安全、方便得多。\n推荐购买的 App Store 应用：\nShadowrocket（翻墙必备，$3.29 ≈ ￥23.60） 购物类 不翻墙：京东、淘宝、拼多多、闲鱼 翻墙：Amazon、eBay、Temu（海外版淘宝） 翻墙购物其实没必要，买了也送不过来；真要买国际商品，下载 Amazon 中国版 就行。\n音乐类 不翻墙 酷狗概念版（优先推荐：看 15 秒广告就能免费听一天，白嫖党必备） QQ音乐（￥15~￥40/月） 网易云音乐（￥18.8/月） 汽水音乐（免费，但没酷狗概念版好用） 翻墙 应用 免费政策 付费价格 备注 Spotify 14 天试用，之后退出需重新登录 Premium $11.99（￥85.99）/月 免费版不能离线、需开 VPN、不能点歌只能随机、每小时 6 次跳歌、有广告，适合白嫖党 Apple Music 免费 3 个月 国区 ￥11/月，美区 $10.99（￥78.82）/月 不能免费听，必须充钱；推荐买国区 YouTube Music 有免费版 Premium $10.99（￥78.82）/月 免费版有广告、不能后台播放、不能离线、需开 VPN 详细测评：YouTube\n结论：不推荐翻墙听歌——一个酷狗概念版就能吊打一切了。\nAI 类 不翻墙 DeepSeek（优先推荐，国产之光，日常问答无敌） Owen、豆包、kimi 等 翻墙 模型 特点 付费 Google Gemini 2.5 Pro 优先推荐：无敌上下文能力 + 搜图能力，日常问答也不错 Google AI Pro $19.99（￥143.4）/月 ChatGPT 4-o 日常体验无敌 Plus $19.99（￥143.4）/月；Pro $200（￥1400）/月 Grok 3 实时更新，虚拟伴侣 Ani 无敌 SuperGrok $30（￥210）/月；Grok Heavy $300（￥2100）/月 Claude Sonnet 4 最强编码能力 Pro 免费 7 天后 $17（￥121.95）/月；Max $100（￥717.34）/月 具体测评：YouTube、YouTube\n更省事的用法：API 方式 其实也可以用 API 达成同样效果，不需要 VPN：\n电脑上下载并注册登录 Cherry Studio 打开 https://yunwu.ai → 注册 → 充值界面充值 点控制台 → API 令牌 → 复制 回到 Cherry Studio → 设置 → 把 API 令牌粘贴到对应 AI 上 → 即可使用 应用类（安卓默认 Google Play，苹果默认 App Store；安卓苹果通用） Folo：把所有的新闻整合起来，非常有用，不需要 VPN Otter：录音转文字，非常好用（但目前不支持中文，不需要 VPN) NotebookLM：上传 YouTube 等内容，转成播客或提取内容，Google 出品，要用 VPN Notion：笔记 + 思维导图 + AI 加持，功能强大，要 VPN 纯净版（比应用商店版简洁、无广告、日常功能齐全，仅安卓） 纯净版高德地图：https://wwb.lanzoub.com/iuqLgtr2dsj（用百度打开直达下载） 纯净版百度网盘：https://wwry.lanzoum.com/ixiWD124vl5a 密码 0000（用百度打开直达下载） 纯净版淘宝：https://wwb.lanzoub.com/iQFvo06tgmti（用百度打开直达下载） 纯净版百度地图：（链接待补充） 手机免费看电影：judd.app（仅安卓） 电脑网页类（用电脑打开） LKS 的工具站：https://lkssite.vip（B站 UP 主 LKS 自己制作的网站，功能强大） 打字练习：https://www.typingdub.com（练习标准打字） 免费在线看电影：https://www.ncat21.com 综合工具站：https://qinggongju.com（集成多种实用工具） 备用机场（VPN） https://mitce.net/aff.php?aff=3650：网速一般般，但 4.39 元/月 100GB 是真香，当备用 VPN 挺不错 https://cokecloud.xin/：网速一般般，免费 1GB 流量，9.9 元/月 300GB 很香，当备用 VPN 挺不错 清单持续更新中……\n","permalink":"https://yutterx.com/posts/tech-tools/","summary":"一份持续更新的实用清单：日常、购物、音乐、AI、应用与网站的两档推荐。","title":"科技杂谈：我常用的网站和 App 清单"},{"content":"故事梗概 阿彬独坐教室中，在他孤独之深时遇到了两位朋友，从而书写了他们的友谊。 就在他们玩乐时，阿彬猛然惊醒，发现属于他们的回忆结束了。\n人物介绍 人物 性格 定位 阿彬 孤独，渴望朋友 主角 陆云 爱社交，外向 配角 阿绩 乐于助人，外向 配角 第一场 | 内景 场景：教室 ｜ 时间：下午 ｜ 人物：阿彬\n闹哄哄的课室响起了放学的铃声，同学们争先恐后地离开课室。 阿彬孤独地坐在教室一角，拿出一个本子，按动笔，写了起来。\n第二场 | 外景 场景：学校科学楼下 ｜ 时间：下午 ｜ 人物：阿彬和陆云\n镜头拍阿彬上台阶，中景拍阿彬和陆云在拿着羽毛球拍走来走去，然后陆云看见阿彬自己一个人走过，于是陆云向阿彬走去。\n陆云：“兄弟，打不打羽毛球，我那个朋友上厕所去了。”\n陆云从羽毛球袋拿出另外一把羽毛球拍。*拍阿彬表情：犹豫为难。*陆云再次拿出羽毛球拍递给他，阿彬犹豫后接下。\n阿彬：“我……不是很会打。”\n陆云：“没事，我也一般般，随便玩一下。”\n*拍阿彬和陆云的打球画面，特写羽毛球在空中飞翔的画面。*最后阿彬赢了。\n陆云：“兄弟，打得不错。”陆云向阿彬走来，伸出拳头，“交个朋友，兄弟，以后下课可以一起出来切磋一下。”\n*镜头先拍陆云，然后再转到阿彬。*阿彬短暂愣住，眼神躲闪，“额，我吗？”不自觉地摸脖子。\n陆云：“嗯。”点头。\n阿彬抿嘴，“好。”伸出拳头碰拳。\n“那我们一起去吃饭吧。”远景拍阿彬和陆云一起走的背影。\n拍阿彬和陆云经常一起打球，一起走路的画面——陆云的乐观的性格也影响到了阿彬。\n第三场 | 外景 场景：图书馆内 ｜ 时间：早上 ｜ 人物：阿彬、阿绩\n拍阿彬在打游戏的镜头，突出游戏画面，然后阿彬放下手机：“怎么个人人都这么厉害。”叹气。 镜头拍阿绩，然后拍阿绩游戏胜利的画面，阿绩不自觉地偷瞄旁边阿彬的手机画面。然后阿绩靠过去：\n阿绩：“需要帮助吗？我看你这儿卡半天了。”\n阿彬：“不用了，我自己可以过，谢谢。”\n阿绩：“没事，我可以带带你，加个好友吧，来吧。”\n阿彬挠头发：“这样吗？那好吧。”\n阿绩挪了挪椅子，向阿彬靠过去。然后拍摄他们一起打游戏的画面，再拍一段空镜头。\n阿彬扭脖子放松：“你挺强的，带我打通关了这个游戏。要不我请你喝东西吧。”\n阿绩：“可以啊。”\n*拍他们走路来到小卖铺的画面。*阿彬打开冰柜，拿了一瓶可乐，阿绩也跟着拿了一瓶可乐。结账。 拍阿彬和阿绩先后打开可乐的画面。\n阿绩：“来，干杯。”\n阿彬：“好。”\n拍碰杯的画面。\n第四场 | 内景 场景：教室 ｜ 时间：下午 ｜ 人物：阿彬\n*延续阿彬和阿绩的碰杯画面。*此时镜头切回到教室，拍摄阿彬写完东西，放下笔。 他环顾四周，惊讶和恍惚的表情在他脸上浮现，他看了看手部，双手抱头，抬头。 *然后放阿彬和陆云一起玩的照片与阿彬和阿绩一起玩的照片，同时加上音乐。*放完后直接切回现实。\n阿彬坦然释怀：“有你们真好。”然后阿彬站起来，合上本子。镜头聚焦到教室门口，拍阿彬离开。\n等阿彬离开后，镜头聚焦到阿彬没拿走的本子——本子上写着：愿望本。 镜头从本子一直往下拍，直到画面黑暗，然后黑底白字：\n天意怜幽草　人间重晚晴\n——李商隐《晚晴》\n—— 全剧终 ——\n","permalink":"https://yutterx.com/posts/unnamed-friendship/","summary":"四场微剧本：孤独的阿彬遇见两位朋友，一切回到那本愿望本。","title":"微剧本：《未命名的友谊》"},{"content":"欢迎来到「Yutter的日常」。这里什么都会写一点，不追求最新，只记录真实的东西。\n🧰 工具党路线 推荐先读 一步步从\"没有网站\"到\"有自己的域名邮箱\"，约 40 分钟。\n为什么我要搭这个博客3 分钟了解这个站的来龙去脉 GitHub 从入门到精通万字长文：看懂仓库、发布项目、走通协作 域名创建与品牌邮箱部署20 元/年拿下 .com + 免费品牌邮箱（已实测） 💡 想跳过原理直接动手，直接从第 3 篇开始。\n🤖 AI \u0026amp; 工具路线 从\"会用 AI\"到\"知道该用哪个工具\"。\nAI Agent 入门：从 LLM 到能办事的助手写给程序员的 Agent 入门笔记 Hermes Agent 官方文档中文摘要1055 页官方文档浓缩成一篇 科技杂谈：常用网站和 App 清单从日常到 AI 的实用工具地图 🎮 游戏 \u0026amp; 创作路线 放松一下，看看我写的和整理的东西。\n荒野大镖客：救赎——两代亡命徒的完整史诗两部游戏串成完整编年史 微剧本：《未命名的友谊》四场小剧，愿你也能被温柔以待 📚 全部文章 🔍 关键词搜索 ✉️ 写信给我 ","permalink":"https://yutterx.com/start/","summary":"\u003cp\u003e欢迎来到「Yutter的日常」。这里什么都会写一点，不追求最新，只记录\u003cstrong\u003e真实\u003c/strong\u003e的东西。\u003c/p\u003e\n\u003cdiv class=\"route-card\"\u003e\n  \u003cdiv class=\"route-head\"\u003e🧰 工具党路线 \u003cspan class=\"route-tag\"\u003e推荐先读\u003c/span\u003e\u003c/div\u003e\n  \u003cp class=\"route-desc\"\u003e一步步从\"没有网站\"到\"有自己的域名邮箱\"，约 40 分钟。\u003c/p\u003e\n  \u003col class=\"route-list\"\u003e\n    \u003cli\u003e\u003ca href=\"/posts/why-this-blog/\"\u003e为什么我要搭这个博客\u003c/a\u003e\u003cspan class=\"route-note\"\u003e3 分钟了解这个站的来龙去脉\u003c/span\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"/posts/github-beginner-to-expert/\"\u003eGitHub 从入门到精通\u003c/a\u003e\u003cspan class=\"route-note\"\u003e万字长文：看懂仓库、发布项目、走通协作\u003c/span\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"/posts/domain-email-setup/\"\u003e域名创建与品牌邮箱部署\u003c/a\u003e\u003cspan class=\"route-note\"\u003e20 元/年拿下 .com + 免费品牌邮箱（已实测）\u003c/span\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n  \u003cp class=\"route-tip\"\u003e💡 想跳过原理直接动手，直接从第 3 篇开始。\u003c/p\u003e","title":"从这里开始"},{"content":"一些做过的短片、科普视频和海报。点开卡片可以看到它们是怎么做出来的。\n","permalink":"https://yutterx.com/works/","summary":"\u003cp\u003e一些做过的短片、科普视频和海报。点开卡片可以看到它们是怎么做出来的。\u003c/p\u003e","title":"作品"}]