Agent Skills
Gemini CLI Agent Skills 的用途:为特定任务加载专门能力、流程、约束和上下文。
📖 本篇术语速查表
| 英文 / 缩写 | 中文 | 一句话解释 |
|---|---|---|
| Agent Skills | 技能 | 把重复流程打包成可触发能力。 |
| 触发 | trigger | Agent 据描述判断是否加载。 |
| 复用 | reuse | 跨任务复用稳定流程。 |
不想读完?把下面这段提示词丢给 AI 帮你跑完——帮你判断一个流程值不值得做成 Gemini CLI 的 Skill。
你是 Gemini CLI Skill 选型顾问。
【角色】
Gemini CLI Skill 选型顾问,按最小够用、安全优先的原则给可落地方案,每条结论都落到能照做的步骤或示例,不停留在空泛建议。
【输入】
- 我反复做的流程:___
- 它跑稳了吗、还在变吗:___
- 触发时机和输入输出:___
- 个人用还是团队:___
- 经验水平:___
【工作流程】
1. 判断流程是否够稳定值得沉淀
2. 说明 Skill 的结构和触发机制
3. 对比其它定制手段
4. 给是否做成 Skill 的结论
5. 给落地下一步
【输出规范】
▌一、是否值得做成 Skill
▌二、Skill 结构与触发
▌三、和其它手段对比
▌四、落地下一步
【硬约束】
- 流程没跑稳几次先别沉淀
- 描述准确,防误触发或漏触发
- 边界写清
- 不要替我臆测情况或编造不存在的能力,信息不全先问清
- 不确定的配置或接口一律以官方文档为准,禁止照搬过时写法Agent Skills 让 Gemini CLI 在特定任务上加载更具体的能力。它适合把重复流程、专门知识、脚本、模板和参考资料打包成可发现的能力。
Skill 是按需能力,不是项目常驻规则。长期项目背景放 GEMINI.md,重复但专门的任务流程才放 Skill。
它和 GEMINI.md 的区别很关键:GEMINI.md 是长期、常驻的项目背景;Skill 是按需激活的专门能力。这样可以避免把所有流程都塞进上下文,只有任务匹配时才加载 SKILL.md 和相关资源。
生命周期
Gemini CLI 的 Skill 流程分五步:
- 启动时扫描已启用 Skill,只把
name和description注入系统提示词。 - 模型判断当前任务是否匹配某个 Skill。
- 匹配后调用
activate_skill。 - 用户在 UI 中确认 Skill 名称、用途和目录访问范围。
- 通过后,
SKILL.md正文和目录结构进入会话,Skill 目录被加入允许读取路径。
这个机制叫 progressive disclosure。元数据常驻,正文按需加载,脚本、模板、参考资料只在需要时读取。
适合 Skill 的任务
- 代码审查。
- 文档生成。
- 测试修复。
- 迁移检查。
- 发布前 QA。
- 特定框架的固定流程。
不适合 Skill 的任务
- 一次性问题。
- 还没跑通的临时实验。
- 只有一句 prompt 就能解决的小任务。
- 含敏感凭据的流程。
| 需求 | 更适合 |
|---|---|
| 项目长期规则 | GEMINI.md |
| 重复任务入口 | Custom command |
| 专门流程 + 模板 + 脚本 | Agent Skill |
| 连接外部系统 | MCP / Extension |
| 临时一次性要求 | 当前 prompt |
发现层级
Gemini CLI 会按优先级发现 Skill:
- 内置 Skill。
- Extension 内携带的 Skill。
- 用户级:
~/.gemini/skills/或~/.agents/skills/。 - 工作区级:
.gemini/skills/或.agents/skills/。
同名时,高优先级位置覆盖低优先级位置。同一层级里,.agents/skills/ 优先于 .gemini/skills/。这点适合多 Agent 工具共用同一套 Skill:想兼容 Claude/Codex/Gemini,就优先考虑 .agents/skills/ 作为互操作入口。
常用管理命令
常用管理动作包括 list、install、link、uninstall、enable、disable。对应命令形如 gemini skills list、gemini skills install <source>、gemini skills link <path>、gemini skills uninstall <name>、gemini skills enable <name>、gemini skills disable <name>。
交互会话里也可以用 /skills list、/skills reload、/skills disable <name>、/skills enable <name> 管理。enable 和 disable 默认作用于 user scope;要管理工作区级 Skill,需要显式使用 workspace scope。
验收方式
新增或安装 Skill 后先运行 /skills list,确认名称、描述和 scope 正确。再用一个明确触发词发起任务,检查 Gemini CLI 是否弹出激活确认。如果没有触发,优先改 description,不要先往 SKILL.md 正文里加更多内容。
如果 Skill 被发现但不触发,通常不是正文不够长,而是描述没有写清“什么时候用”。先检查 name、description、scope、是否被 disable,再检查同名 Skill 是否被更高优先级位置覆盖。
接下来去哪
创建 Skills
继续看什么时候该新建 Skill,以及 SKILL.md 最小结构。
Custom commands
如果只是固定 slash command,不必升级成 Skill。
Extensions
需要分发 Skill、MCP、commands 时,继续看 extensions。