五个 Claude Code Worktree 技巧,彻底改变你的工作流

几周前,我写了一篇关于 git worktrees 的文章 —— 讲解了它们是什么,怎么创建,以及为什么它们比多次克隆代码库更好。这些只是基础。 但仅仅掌握这些基础只是成功的一半。而 Claude Code 不仅仅是在 worktree 的基础上运行,它还原生支持 worktree,拥有专门的参数、自动隔离功能,与 tmux 的深度集成。了解 worktree 存在和理解 Claude Code 如何利用它们的巨大差异,就像拥有一辆车并知道它有运动模式一样。 Claude Code 的创始人 Boris Cherny 发布了五个关于充分利用 worktree 的技巧。我把这些技巧全都测试了一遍。有些真的是大大优化了我的工作流,省去了我从今年一月起一直在用的小修小补(ñapa)。下面一起来看看吧。 技巧 1:--worktree —— 一个参数搞定一个 worktree 在经典的 worktree 工作流程中,你需要进行以下这些操作: 1 2 3 git worktree add ../mi-proyecto-feature -b feature/algo cd ../mi-proyecto-feature claude 总共三步。虽然不算太复杂,但得想目录名、记住语法,然后还得导航到新目录。如果你一天做五次这个操作,时间一长确实会觉得心累。 Claude Code 将整个过程简化成了一步: 1 claude --worktree 就是这样。Claude 会创建一个临时 worktree,将目录命名为随机生成的名字,自动切换到该目录,并启动会话。当你结束作业后,worktree 会自动清理干净。 ...

2026年3月11日 · Fernando

召唤智者:如何使用LLM与任何专家进行导师对话

我妻子召唤Charlie Munger来规划家庭预算。在ChatGPT里。不是开玩笑。 她会说"像Charlie Munger审查我们家庭财务一样行动",然后把本月的开支告诉它。这家伙会回复类似"你在教育支出项目上把投资和花费搞混了"或"那个基金有你没有计算的隐性成本"这样的话。这些是Munger会说的话。用Munger会用的语调。 我也做了同样的事。但我没有召唤投资者,而是召唤了一个不同的专家:Edward Tufte。 谁是Edward Tufte(以及为什么你应该关心) Edward Tufte可能是对我们如何可视化数据影响最大的人。他的书《定量信息的视觉显示》(1983年)是那种永远改变你看图表方式的罕见文本之一。40多年来,它一直是全世界大学、新闻编辑部和设计工作室的绝对参考。 他的原则非常简单: 最大化数据-墨水比。 你图表的每个像素都必须传达数据。如果不传达数据,就删掉它。 不要装饰。 网格、3D渐变、阴影、装饰性边框……所有这些都是Tufte称之为图表垃圾的东西。分散数据注意力的视觉垃圾。 让数据自己说话。 如果你需要用200字的图例来解释你的图表,那图表就设计错了。 Tufte还发明了迷你图——那些能放在一行文字内的微型图表。图表不需要标题、坐标轴或图例来交流的想法。只需要数据。 我的图表很糟糕 我正在构建一个macOS菜单栏应用,用来监控我的Claude Max配额。应用的一部分显示一个迷你图——一个小小的线图——显示我消费配额的速度。 我的第一个版本有这些问题: Y轴固定在0到100% — 如果你的使用量在8%,图表就是一条贴在底部的平线。85%的空间什么都不显示。 在80%处有一条阈值线 — 任意的,没人要求,不传达任何有用信息。 显示当前%的浮动标签 — 冗余的:下面的卡片已经显示了确切数字。 “pp/min"作为单位 — 每分钟百分点?连我都不知道这意味着什么。 线下方的渐变填充 — 纯装饰。图表垃圾。 简单说:我在一个56像素高的图表中违反了Tufte的每一个原则。 技术:循环召唤专家 我没有试图自己修复它(显然我对此没有判断力),而是做了不同的事。我让Claude成为Tufte。 提示词: 像Edward Tufte审查这个图表一样行动。 分析VelocityCardView的SwiftUI代码。 识别你数据可视化原则的所有违规之处。 对于每个违规: 1. 违反了什么原则 2. 为什么这是个问题 3. 具体的处方(代码,不是哲学) 要无情。如果某些东西是图表垃圾,就说出来。 用PASS或FAIL评估。 关键是最后部分:PASS或FAIL。因为没有这个,LLM会给你温和的建议,告诉你"总体上还可以”。有了二元判决,它必须承诺。不能躲在"有改进空间"后面。 然后是循环: 应用Tufte的处方。 实施每个改变。 不要停止迭代,直到他给出认可。 四轮直到PASS 我第一轮没通过。第二轮也没有。第三轮也没有。 第1轮 — FAIL(6个处方): 自适应Y轴而不是固定的0-100 消除80%的阈值线(图表垃圾) 消除浮动标签(与下面的卡片冗余) 用简单词语替换"pp/min"(上升、下降、稳定) 将摘要行折叠为仅时间窗口+趋势 将迷你图高度从44提高到56点 我实施了6个。第二轮。 第2轮 — FAIL(1个处方): ...

2026年2月18日 · Fernando

Beads 已死,Linear CLI 万岁

不到一个月前,我写了一篇完整的文章来解释如何在 Claude Code 中使用三层记忆系统:Linear 负责战略,Beads 负责战术,Tasks 负责执行。一个漂亮而优雅的金字塔。 然而现实打脸了。 今天我正式退役 Beads。不是心血来潮,而是因为现实已经充分证明:一个给你带来的麻烦比它解决的还多的工具,不叫工具,叫累赘。 Beads 带来了什么 对于没读过原文的人来说,Beads 是一个基于 git 的 issue 追踪器。它是 Claude Code 的插件,把 issues 以 JSONL 文件的形式存储在你的仓库里。这个想法在纸面上很漂亮: Git 持久化:issues 保存在 .beads/ 目录中,和你的代码一起提交。 依赖关系:一个 issue 可以阻塞另一个。 离线可用:不需要网络连接。 LLM 直接可见:不需要 API,不需要配置。代理读取文件就行了。 它的承诺是:在"这周想做什么"(Linear)和"现在正在做什么"(Tasks)之间提供一个中间层。战术层面的粘合剂。 哪里出了问题 一切都很好,直到不再好了。而且不好的方式还挺有创意。 来自地狱的守护进程 Beads 在后台运行一个守护进程来管理 SQLite 数据库并与 git 同步。听起来很合理。但实际上: DATABASE MISMATCH DETECTED! This database belongs to a different repository: Database repo ID: d1f9ca0c Current repo ID: 01eac8ea ⚠️ CRITICAL: This mismatch can cause beads to incorrectly delete issues during sync! 每次启动会话都会看到这条消息。守护进程崩溃,同步崩溃,然后你就陷入了一种量子态:issues 存在于你的本地 SQLite 中但不在 git 里,或者反过来。你的 issues 同时存在又不存在。 ...

2026年2月18日 · Fernando

Git Worktrees:如何让多个AI助手同时工作而不相互冲突

单一checkout的瓶颈 我正在开发一个macOS菜单栏应用。我有三个功能在待办清单中:一个消耗量的迷你图表、原生通知和一个桌面小组件。这三个功能都是独立的。我打算用Claude Code来完成这三个功能。 问题是:Claude Code在一个目录中工作。一个目录有一个分支。而git checkout就像一个单车道的环岛:一次只能通过一个。 如果我想同时推进这三个功能,我的传统选择是: Stash乒乓球:git stash,切换分支,工作,git stash pop,祈祷没有冲突。重复直到发疯或退休,看哪个先到。 克隆仓库三次:可以工作,但现在我有三个.git/副本,三个独立的历史记录,每个都要执行git fetch。浪费。 接受串行生活:一个功能接着一个功能。安全,可预测,但慢得像手动归并排序。 都不好。但有第四个选择,自2015年以来git就有了,但几乎没人使用。 Worktrees:你已经安装的解决方案 一个worktree是第二个工作目录,共享同一个.git仓库。没有副本,没有克隆,没有黑魔法。 比喻:你的仓库是一个图书馆。到目前为止你有一张桌子,只能打开一本书。worktree是放更多桌子。每张桌子都打开着不同的书,但都从同一个书架取书。 ~/code/miapp/ ← 桌子1 (main) .git/ ← 图书馆(只有一个) ~/code/miapp-sparkline/ ← 桌子2 (feature/sparkline) .git ← 文件,不是文件夹(指向图书馆的指针) ~/code/miapp-notificaciones/ ← 桌子3 (feature/notifications) .git ← 另一个指针 每个目录都是一个完整的checkout,包含所有文件。你可以在一个中编译,在另一个中运行测试,在第三个中让你的AI助手工作。同时进行。 创建只需一行命令 从你的主仓库: 1 2 git worktree add ../miapp-sparkline -b feature/sparkline git worktree add ../miapp-notificaciones -b feature/notifications 就这样。两个新目录,每个在自己的分支上,共享整个git数据库。不需要克隆,不需要配置远程,不需要复制历史记录。 它们共享什么,不共享什么 这很重要。worktrees共享整个仓库:提交、分支、标签、远程、钩子、配置。如果你在sparkline的worktree中做了一个提交,你可以立即从notifications的worktree中看到它,不需要fetch或任何操作,因为它们是同一个数据库。 它们不共享: 磁盘上的文件(每张桌子都有自己的工作副本) 暂存区(每个都有自己的git add) HEAD(每个指向自己的分支) 简单来说:“我正在处理什么"的状态对每个worktree是私有的。其他一切都是公共的。 ...

2026年2月16日 · Fernando

MEMORY.md:你的 AI 自主编写的工作笔记本

“我们昨天不是已经决定这个了吗?” 我正在将我的邮件从 Google 迁移出来。已经用 Claude Code 工作了两个会话:Linear 中的 issues、做出的决策、执行的脚本。我开始第三个会话,问它"degoogle 还剩什么待办事项?" 沉默。完全失忆。 这就像和一个聪明的同事一起工作,但他每天早上来办公室都完全不记得你们前一天做了什么。不记得决策,不记得错误,不记得发现。每个会话都是一张白纸。 结果有一个文件恰好解决了这个问题。它已经在那里几个月了。而且几乎没人知道。 CLAUDE.md vs MEMORY.md:手册和笔记本 如果你使用 Claude Code,可能已经了解 CLAUDE.md。这是你告诉 AI 如何工作的文件:使用什么语言、你有什么工具、你的代码约定。 CLAUDE.md 是你的指令手册。你编写它,你维护它。 MEMORY.md 是另一回事。它是 AI 自己编写的工作笔记本。它记录在与你合作时学到的东西:犯过的错误、做出的决策、项目模式、尝试过但没有成功的东西。 简单来说: CLAUDE.md MEMORY.md 谁编写 你 AI 包含什么 指令 学习内容 何时更改 当你想要时 每次会话后 类比 规章制度 工作笔记本 如果 CLAUDE.md 是你第一天给实习生的合同,MEMORY.md 就是实习生工作时在笔记本中记录的笔记。 它在哪里 ~/.claude/projects/<目录哈希>/memory/MEMORY.md 每个项目目录都有自己的内存文件。如果你在 ~/code/项目-a 工作,它有一个 MEMORY.md。如果你在 ~/code/项目-b 中打开 Claude Code,它有另一个不同的。它们不会混合。 文件在每个会话开始时自动加载到上下文中。你不需要做任何事情。 没有全局的 MEMORY.md 吗? 没有。只按项目分类。这是个问题。 今天我创建了一个 op(1Password CLI)的包装器,缓存密钥一小时。这在我所有项目中都有用,不只是我正在工作的那个。但 MEMORY.md 只在那个目录的内存中记录了它。 CLAUDE.md 确实有全局版本(~/.claude/CLAUDE.md),会在所有会话中加载。MEMORY.md 没有对应功能。如果 AI 学到了适用于你整个环境的东西(别名、系统特性、偏好),它必须在每个项目中分别记录。或者不记录。 ...

2026年2月12日 · Fernando

在人工智能出现之前,你的大脑就已经在使用AI算法了

关于你的两个预测 我要大胆做两个预测: 你的职业成功很大程度上要归功于一个你在不知不觉中掌握的算法。 你担心你的孩子显然不会使用这个算法。 第一个预测是正确的。第二个嘛……可能并不是你想象中的问题。 这些算法被称为广度优先搜索(BFS)和深度优先搜索(DFS)。虽然你可能对这些名字不熟悉,但我保证它们是老朋友了。你的大脑已经使用了数百万年。 象棋和巴别图书馆 想象你是一台下象棋的计算机。你的对手刚刚走了一步。你如何决定你的下一步棋? 一种选择:计算你所有可能的走法。每一步都会产生一个新的棋盘局面。对于每个棋盘,你计算对手所有可能的回应。如此反复,直到找到一条通向胜利的路径。 结果就是一个巨大的可能性树。有点像博尔赫斯的巴别图书馆:无穷的走廊里有无穷的书籍,包含了字母的所有可能组合。 组合爆炸的完美隐喻 如果你不熟悉这个典故:豪尔赫·路易斯·博尔赫斯是20世纪的阿根廷作家,被认为是世界文学史上最有影响力的作家之一。1941年,他发表了短篇小说《巴别图书馆》,描述了一个无限的图书馆。 这个图书馆包含了所有可能的410页书籍。全部。有意义的和无意义的。你能想象的每一种字母、空格和标点符号的组合都存在于某个书架上。这包括癌症的治愈方法、每一个将要存在的人的传记,也包括数百万本纯粹是无法理解的噪音的书。 显而易见的问题是:如何在这片可能性的海洋中找到有用的东西? 大多数书都是垃圾。而且没有目录。 象棋也有同样的问题。仅仅在双方各走4步之后,就有超过2880亿种可能的局面。可能性树呈指数级增长,直到变得无法控制。这就是你自己的巴别图书馆,其中大多数"书"(可能的棋局)都是荒谬的,但在某个地方存在着完美的一盘棋。 你如何遍历这棵几乎无穷的树? 就像在信息饱和的世界中导航一样:使用BFS或DFS。 BFS:快速排除的艺术 广度优先搜索按层级遍历树。首先查看第一层的所有内容,然后是第二层的所有内容,接着是第三层。 这个想法不是立即找到完美的解决方案。而是尽快排除那些看起来不好的分支。 当你在谷歌搜索餐厅并按评价、价格和距离筛选时,你在不知不觉中就是在使用BFS。你不会深入分析每家餐厅。你在几秒钟内排除90%的选项,只保留三四个候选。 DFS:穿透一切的激光 深度优先搜索恰恰相反。你选择一条路径并跟随到底。只有当你走到死胡同时,才回头尝试其他路线。 你有没有曾经如此专注于一个问题以至于忘记了时间?那种心流状态就是纯粹的DFS:你所有的认知资源都集中在一件事上,直到深入到底。 这就是重大科学发现、技术发明、传世艺术作品的诞生方式。绝对的深度。完全的专注。 DFS带你走到了今天 如果你超过35岁并且在职业上相当成功,你很可能要感谢DFS。 我们这些20或30年前开始工作的人生活在一个信息稀缺的世界。必须充分利用每本书、每门课程、每位导师。获胜策略是在你的知识分支中尽可能深入。 这就是为什么我们如此重视专注、聚焦、持续注意力。我们的思维进化得像激光一样运作:所有能量集中在一个点上。 这也是为什么当前的分散文化让我们担心——并且看起来不自然。尤其是当我们在孩子身上看到这种情况时。 剧情反转:你的孩子没有问题 这里是情节转折。 敌人不再是信息稀缺,而是信息过载。我们生活在博尔赫斯的巴别图书馆中,有无穷的书架无法遍历。 为了在这种饱和状态中生存,许多年轻人本能地发展了BFS方法:快速丢弃不合适的内容,只为有前景的内容分配资源,在选项之间跳跃直到找到值得的那个。 正如大卫·爱泼斯坦在《范围》一书中所说,这种在深入之前"扩大视野"的能力是在一个需要持续适应的世界中的竞争优势。 这可能不是一种退化。可能是自然选择在做它的工作,塑造大脑以在无穷图书馆中获胜。 我们需要的平衡 诀窍不是在BFS和DFS之间选择。而是知道何时使用哪一个。 开始时使用BFS,当选项众多且需要筛选时。之后使用DFS,当你已经识别出值得完全关注的东西时。 我们这些来自绝对专注世界的人也许需要向新的"通才"学习。而他们,在某个时候,必须发展深入研究的能力。 未来不属于纯粹的专家,也不属于纯粹的通才。而是属于那些知道如何根据情境切换模式的人。 你上次有意识地改变算法是什么时候?也许现在是尝试的好时机。

2026年1月28日 · Fernando

你的终端正在像挖比特币一样耗电

犯罪现场 萨拉戈萨,皮拉尔广场酒店的咖啡厅。一杯拿铁,望向大教堂的景色,还有我带着全新的MacBook Air M3,准备在会议前用Claude Code工作几个小时。 两小时后:电池剩余15%。红色警报。恐慌。 但是怎么可能?我只是在终端里写代码。没有视频,没有Zoom,没有任何能够合理解释如此高耗电量的应用。 我打开活动监视器,点击能耗选项卡,罪魁祸首就在那里:Ghostty,在过去12小时内累计消耗了3600。为了让你有个概念,Brave浏览器消耗了125。开着视频的Zoom消耗了99。Claude(桌面应用)消耗了46。 我的终端——一个显示文本的应用程序——消耗的电量比网页浏览器多30倍。 荒谬中的荒谬 停下来想想我刚才写的内容。 一个终端。一个VT100模拟器。一项1978年的技术。字面意思上是一个工作就是在屏幕上显示字母的应用程序,这是Commodore 64都能轻松完成的任务。 而在2026年,它需要GPU来运行。 用大白话说:我们正在使用本可以实时渲染《玩具总动员》的计算能力…来显示ls -la。 原版VT100终端消耗30W包括CRT显示器。我的MacBook Air,配备专为能效设计的最新芯片,显示一个git status比执行视频通话消耗的电量还要多。 这就像开法拉利去买面包。但更糟糕,因为如果你想开得快,法拉利至少还有意义。这里没有任何实际优势:文本看起来完全一样。 为什么终端需要GPU? Ghostty、Alacritty、Kitty等是新一代"GPU加速"终端的一部分。承诺:更流畅的渲染,大量输出时更好的性能,更清晰的字体。 现实:它们像没有明天一样耗电,显示的内容和Terminal.app使用CPU显示的完全相同。 问题不仅仅是渲染。当Claude Code运行时,会有持续的输出:旋转器、日志、工具结果。屏幕上出现的每个字符都会触发GPU渲染管道。Metal激活,着色器开始工作,帧被合成… 就为了显示一个旋转的点。 更糟糕的是,这些现代终端无法正确进入"App Nap"状态。macOS有一个暂停后台应用程序的系统,但如果终端正在显示动画旋转器,系统会认为它在做重要的事情并保持其活跃状态。 穷人解决方案:Terminal.app 最简单的解决方案也是最明显的:使用Terminal.app。 是的,就是macOS自带的终端。那个看起来自2005年以来没有变过的终端。那个没有GPU加速、连字或任何现代功能的终端。 1 2 # 打开Terminal.app并运行 claude 功能完全一样。Claude Code不知道也不关心你从哪个终端运行它。而且Terminal.app: 使用CPU渲染(在Apple Silicon上超级高效) 正确进入App Nap状态 消耗电池的一小部分 性感吗?不。有用吗?完美。 改进解决方案:带配置文件的iTerm2 如果你离不开现代终端,iTerm2有一个Ghostty没有的选项:你可以禁用GPU渲染。 步骤1:创建"电池"配置文件 打开iTerm2 Preferences → Profiles 复制当前配置文件(点击左下角的+按钮,然后选择Duplicate Profile) 将新配置文件命名为**“Battery”** 在Battery配置文件中:Terminal → 取消勾选**“GPU Rendering”** 步骤2:手动切换 当使用电池工作时,只需切换到配置文件: Profiles → Battery(在iTerm2菜单中) ...

2026年1月24日 · Fernando

Linear、Beads 和 Tasks:Claude Code 的三层内存系统

内存问题 Claude Code 有一个问题:它会忘记一切。关闭会话,打开新会话,就像和一个不认识你的人说话。你可以通过 CLAUDE.md 加载上下文,是的,但是那些进行到一半的任务怎么办?你发现但没有修复的 bug 怎么办?你为明天制定的计划怎么办? 有三个互补的解决方案:Linear(或你的产品工具)、Beads(基于 git 的插件)和 Tasks(集成在 Claude Code 中)。每一个都用于不同的时间范围。 Tasks:工作内存 Tasks 是 Claude Code 的内部系统,用于跟踪它现在正在做什么。当你向它请求复杂任务时,Claude 会自动创建一个任务列表。 按 Ctrl+T 查看: ┌─────────────────────────────────────────────────┐ │ Tasks │ ├─────────────────────────────────────────────────┤ │ ✓ 读取项目结构 │ │ ● 实现认证端点 │ │ ○ 编写测试 │ │ ○ 更新文档 │ └─────────────────────────────────────────────────┘ 特性 自动化:当工作有多个步骤时,Claude 会自动创建 压缩后持久:当上下文被压缩时仍然存在 通过 Ctrl+T 可见:快速切换视图 限制为 10 个:只显示前 10 个(请求"show me all tasks"查看更多) 会话间共享 默认情况下,Tasks 会随着会话结束而消失。但你可以让它们持久化: 1 CLAUDE_CODE_TASK_LIST_ID=qualitra claude 这会将任务保存在 ~/.claude/tasks/qualitra/ 中。下次用相同的 ID 启动时,你会恢复任务列表。 ...

2026年1月23日 · Fernando

Claude Code 中的子代理:在不失控制的情况下进行委派

无限上下文的问题 想象一下,你让 Claude 研究项目的身份验证是如何工作的。它开始读取文件。很多文件。突然你的上下文就被 50,000 个令牌的代码填满了,而这些代码你只需要查阅,而不是记住。 现在每个响应都变得更慢。也更贵。当你想做其他事情时,所有这些上下文仍然在那里,占用着思维空间。 解决方案:子代理。你启动一个专门的代理,它在自己的独立上下文中完成繁重的工作,给你返回一个摘要,然后消失。你的主对话保持清洁。 什么是子代理 子代理是 Claude 的一个独立实例,它: 拥有自己的上下文(不会污染你的对话) 可以拥有受限的工具(只读、只有 bash 等) 可以使用不同的模型(haiku 用于简单任务,opus 用于复杂任务) 可以在前台(阻塞)或后台(并行)执行 把它们想象成专门的实习生。你给他们分配任务,他们独立工作,完成后向你汇报。 你已经拥有的子代理 Claude Code 自带几个集成的子代理: 代理 模型 用途 工具 Explore Haiku 搜索和分析代码 只读 Plan 继承 规划期间的研究 只读 general-purpose 继承 复杂的多步骤任务 全部 Bash 继承 在独立上下文中执行命令 只有 Bash Claude Code Guide Haiku 关于 Claude Code 的问题 文档 最有用的是 Explore。当 Claude 需要在你的代码库中搜索内容时,它会启动一个 Explore,疯狂地读取文件,处理一切,然后只返回相关内容。 如何启动子代理 从 REPL(正常对话) 只需用自然语言请求: 使用子代理研究缓存系统是如何工作的 启动 Explore 代理找到所有 API 端点 在我继续工作的同时并行研究身份验证 Claude 理解这些请求,并在内部使用 Task 工具启动适当的子代理。 ...

2026年1月20日 · Fernando

Claude Code 中的 Skills:教老狗学新把戏

重复同样事情的问题 你有没有遇到过必须向某人解释同一件事二十遍的情况?现在想象一下,这个人是个机器人,而且每隔几个小时就会失去记忆。 “不,Claude,commit 必须先通过测试。” “Claude,我已经告诉过你要用 type: description 格式。” “别加表情符号,该死的!” 这就是我每天的工作,直到我发现了 Skills。简单来说:这些是你写一次,Claude 就会永远遵循的指令。就像训练狗一样,但不需要狗粮。 什么是 Skills 从 2.1.3 版本开始,Claude Code 将旧的 slash commands 与更强大的东西合并:Skills。这些是包含指令的 Markdown 文件,Claude 可以通过两种方式执行: 手动:当你输入 /my-skill 时 自动:当 Claude 检测到应该使用它时 第二点就是魔法所在。你不再需要记住调用命令。如果你有一个技能说"在用户完成任务且有未提交的更改时使用",Claude 会自动执行。 就像有一个管家知道何时收拾桌子而不需要你要求。 它们在哪里 ~/.claude/skills/ # 个人(所有项目) .claude/skills/ # 项目(与团队共享) ~/.claude/commands/ # 旧版,仍然有效 .claude/commands/ # 旧版,仍然有效 如果你只想自己使用技能,就把它放在你的主目录。如果你想让整个团队都有,就提交到仓库。就这么简单。 Skill 的结构 一个 skill 是一个带有 frontmatter YAML 和内容的 Markdown 文件: 1 2 3 4 5 6 7 8 --- name: my-skill description: 它做什么的简要描述 --- # 指令 Claude 在调用此技能时应该做什么。 这是最基本的。但 frontmatter 有更多值得了解的选项。 ...

2026年1月12日 · Fernando