> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 技能概览

> 创建可复用的提示和工作流程，以扩展 Agent 的能力

技能是可传授给 Devin CLI 的独立功能单元。它们将提示、工具访问、权限和工作流程整合为可复用的套件，可由 Agent 或人工操作员调用。

***

<div id="what-are-skills">
  ## 什么是技能？
</div>

你可以把技能看作是你提供给 Agent 的专家知识。一个技能可以教会它如何：

* 按照你团队的标准审查代码
* 生成特定类型的组件
* 执行部署工作流程
* 执行安全审计
* 基于模板搭建新服务

<CardGroup cols={2}>
  <Card title="斜杠命令调用" icon="code">
    用户可以在聊天中使用 `/skill-name` 调用技能。
  </Card>

  <Card title="Agent 自主性" icon="robot">
    Agent 可以在适当时机自行调用技能。
  </Card>

  <Card title="作用域权限" icon="shield">
    技能可以有自己的权限授予和限制。
  </Card>

  <Card title="自定义工具访问" icon="wrench">
    为确保安全，可以限制某个技能可使用的工具。
  </Card>

  <Card title="子 Agent 执行" icon="users">
    将技能作为独立的 [子 Agent](/zh/cli/subagents) 运行，并拥有各自的上下文窗口。
  </Card>

  <Card title="模型覆盖" icon="brain">
    为特定技能使用不同的 [模型](/zh/cli/models)。
  </Card>
</CardGroup>

***

<div id="quick-example">
  ## 快速示例
</div>

在 `.devin/skills/review/SKILL.md` (或 `.windsurf/skills/review/SKILL.md`) 中创建一个代码评审技能：

```markdown theme={null}
---
name: review
description: 在提交前审查代码修改
allowed-tools:
  - read
  - grep
  - glob
  - exec
---

审查当前的 git diff 并提供反馈：

1. 运行 `git diff --staged`（如果没有暂存内容，则运行 `git diff`）
2. 检查以下内容：
   - 逻辑错误或 bug
   - 缺少错误处理
   - 安全问题
   - 风格不一致
3. 总结发现的问题并提出改进建议
```

现在你可以在任何会话中通过 `/review` 调用它。

***

<div id="how-skills-work">
  ## 技能如何运作
</div>

调用某个技能时：

1. 该技能的提示会插入当前对话中
2. 可访问的工具将仅限于该技能的 `allowed-tools` (如果已指定)
3. 会应用该技能配置中的额外权限
4. 将使用指定的模型 (如果与当前模型不同)

技能执行完成后，会话将恢复为常规配置。

***

<div id="skill-triggers">
  ## 技能触发方式
</div>

技能可通过两种方式调用：

| 触发方式    | 描述                     | 默认  |
| ------- | ---------------------- | --- |
| `user`  | 用户可使用 `/skill-name` 调用 | 已启用 |
| `model` | Agent 可在相关情况下自主调用      | 已启用 |

```yaml theme={null}
---
name: security-check
triggers:
  - user
  - model
---
```

将 `triggers: [user]` 设置为防止 Agent 自行调用技能。

***

<div id="third-party-skills">
  ## 第三方技能
</div>

我们支持 `.agents` 技能标准，因此第三方技能安装工具可与 Devin CLI 搭配使用。

<Warning>
  第三方技能可执行任意代码，因此安装它们的风险需由你自行承担。
</Warning>

***

<div id="where-skills-live">
  ## 技能存放位置
</div>

技能既可以限定在单个项目中，也可以在所有项目间共享：

| 位置                                            | 作用域                   | 提交到 git？ |
| --------------------------------------------- | --------------------- | -------- |
| `.agents/skills/<name>/SKILL.md`              | 项目级                   | 是        |
| `.devin/skills/<name>/SKILL.md`               | 项目级                   | 是        |
| `.windsurf/skills/<name>/SKILL.md`            | 项目级                   | 是        |
| `~/.agents/skills/<name>/SKILL.md`            | 全局 (所有项目)             | 否        |
| `~/.config/devin/skills/<name>/SKILL.md`      | 全局 (所有项目)             | 否        |
| `~/.codeium/<channel>/skills/<name>/SKILL.md` | 全局 (所有项目，取决于 channel) | 否        |

**项目技能**位于项目根目录下的 `.devin/skills/` 或 `.windsurf/skills/` 目录中，并会提交到版本控制中，因此可与你的团队共享。这两个位置都使用相同的 `SKILL.md` 格式。

**全局技能**位于 `~/.config/devin/skills/` (遵循 [XDG 规范](https://specifications.freedesktop.org/basedir-spec/latest/)) 或 `~/.codeium/<channel>/skills/` (其中 `<channel>` 会根据你的 CLI 渠道而有所不同，可能是 `windsurf`、`windsurf-next` 或 `windsurf-insiders`) ，并且可在你机器上的所有项目中使用。

<Note>
  **Windows：** 全局技能路径遵循你系统的应用程序数据目录。在 Windows 上，请使用 `%APPDATA%\devin\skills\<name>\SKILL.md` (通常为 `C:\Users\<YourUser>\AppData\Roaming\devin\skills\<name>\SKILL.md`) ，而不是 `~/.config/devin/skills/`。
</Note>

***

<div id="next-steps">
  ## 后续步骤
</div>

<CardGroup cols={2}>
  <Card title="创建 技能" icon="plus" href="/zh/cli/extensibility/skills/creating-skills">
    了解完整的 技能 格式，包括 frontmatter 选项、动态内容和示例。
  </Card>

  <Card title="插件" icon="box" href="/zh/cli/extensibility/plugins/overview">
    将 技能 打包为可安装并可跨项目共享的插件。
  </Card>
</CardGroup>
