Claude Code 的技能:老狗学新把戏

一再重复的痛苦 你是否曾经不得不一遍又一遍地向某人解释相同的内容?那就想象一下,这种情况还是发生在一台几小时内就会“忘记”你的话的机器人上。 “Claude,提交操作前必须通过测试。” “Claude,我跟你说过要用格式 类型: 描述。” “别加表情符号,拜托!” 这就是我每天的写照,直到我发现了 技能(Skills)。简单来说,就是你只需写一次指令,Claude会永远听以执行。就像训练一只狗一样,只不过这次不需要狗粮。 什么是技能? 从 2.1.3 版本开始,Claude Code 将之前的 斜杠命令(slash commands) 合并成了一种更强大的功能:技能(Skills)。它们是 Markdown 文件,Claude 可以通过以下两种方式执行: 手动:当你输入 /我的技能 时触发 自动:当 Claude 检测到应该使用它时触发 第二点是这个功能的魔力所在。你再也不需要记得手动调用命令了。如果你设置了一个技能,告诉系统:“在用户完成任务且存在未提交更改时使用”,Claude 会自动帮你完成。 它就如同一个不需要你吩咐也会知道什么时候该收拾餐桌的管家。 技能存放在哪里? ~/.claude/skills/ # 个人技能(适用于所有你的项目) .claude/skills/ # 项目技能(与团队共享) ~/.claude/commands/ # 旧版支持,仍然可用 .claude/commands/ # 旧版支持,仍然可用 如果你希望只有你自己可以使用某个技能,可以将其放在 home 目录下。如果你希望整个团队都能用它,则可以将其提交到代码库中。就是这么简单。 技能的基本结构 一个技能是包含 YAML frontmatter 和内容的 Markdown 文件: --- name: mi-skill description: 简要描述此技能的功能 --- # 指令 当调用此技能时,Claude 应执行的具体操作。 这已经是最简单的形式了。但其实 frontmatter 中还有更多值得关注的选项。 必填字段 name 技能的唯一标识符。只能使用小写字母、数字和连字符(最多 64 个字符)。这个字段必须和文件名或文件夹名称一致。 ...

2026年1月12日 · Fernando

Linear与Beads:如何避免你的AI患上健忘症

AI的失忆症 想象你雇佣了一个才华横溢的程序员。他能解决复杂问题,编写干净代码,理解系统架构。但有个小缺陷:每隔几小时就会被清空记忆。所有工作从头开始。他不记得正在做什么,你们讨论过什么,也不理解代码为什么会是现在这样。 这就是Claude Code等AI代理的工作现状。 当上下文填满时(在真实项目中很快会发生),系统会执行"压缩"。说白了就是:总结对话并丢弃其他内容。问题在于这种总结会丢失细节、决策记录,尤其是任务当前状态。 解决方案?两个互补工具:你用的Linear和AI用的Beads。 Linear:产品视图 Linear是现代化任务管理系统。如果你用过Jira,可以想象它的反面:快速、简洁、不会让人想自戳双目。 我的使用场景 产品待办项:功能、缺陷、史诗故事等业务级任务 路线规划:优先级排序 团队协作:其他成员(如果有)可以查看状态 实际案例 QIN-500: 为应用添加深色模式 QIN-501: 优化图片加载 QIN-502: 集成支付网关 这些都是产品级任务,属于"做什么"。不涉及"怎么做",这是开发者…或者说你的AI代理的工作。 Beads:AI的记忆库 这就是Beads的用武之地,由Steve Yegge开发(就是那位以Google/Amazon吐槽闻名的工程师)。 Beads是内置在代码仓库中的任务跟踪系统。但不是给你用的,是给你的AI代理准备的持久记忆。 解决的问题 当我用Claude Code处理复杂任务时,常出现这种状况: 阅读Linear中的QIN-500任务 调研当前架构 制定5步实施方案 开始执行… 💥 内存压缩 💥 “你好,我是Claude。有什么可以帮您?” 所有上下文、计划、进度…全部蒸发。就像电影《记忆碎片》,但没那么戏剧化,却更令人抓狂。 解决方案 使用Beads后,在压缩前会将状态持久化到仓库的.beads/目录: bd create --title "调研现有主题系统" --priority P2 bd create --title "创建ThemeContext" --priority P2 bd create --title "在设置中添加切换按钮" --priority P2 内存压缩后,首先运行: bd ready 立刻就能找回上下文: 📋 可继续任务 (2个无阻碍事项): 1. [P2] acme-a3f2: 创建ThemeContext 2. [P2] acme-b4c5: 在设置中添加切换按钮 工作原理 Beads将所有数据存于代码库中: 你的项目/ └── .beads/ ├── beads.db # SQLite数据库 ├── issues.jsonl # 可版本化的问题记录 └── config.yaml # 配置文件 由于使用git管理,可以和代码一起版本控制。你可以查看历史、创建分支、合并…这是代码本身,不是外部服务。 ...

2025年1月12日 · Fernando