跳转到主要内容

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.

最复杂的工程任务,往往不只是靠好的提示就能完成。它们可能还需要参考脚本、模板、检查清单以及其他辅助文件。技能让你能够把这些内容整合到文件夹中,供 Cascade 调用 (读取并使用) 。 技能是帮助 Cascade 稳定执行多步骤工作流程的绝佳方式。 Cascade 使用 渐进披露:默认情况下,模型只能看到技能的 namedescription。只有当 Cascade 决定调用该技能 (或当你 @mention 它) 时,才会加载完整的 SKILL.md 内容和辅助文件。这样一来,即使定义了很多技能,你的上下文窗口也能保持精简。 有关技能规范的更多信息,请访问 agentskills.io

如何创建 Skill

使用 UI (最简单)

  1. 打开 Cascade 面板
  2. 点击面板右上角的三个点,打开自定义菜单
  3. 点击 技能 部分
  4. 点击 + 工作区 创建工作区 (项目专属) 技能,或点击 + 全局 创建全局技能
  5. 为技能命名 (仅限使用小写字母、数字和连字符)

手动创建

工作区技能 (项目专用) :
  1. 创建目录:.windsurf/skills/<skill-name>/
  2. 添加一个带有 YAML frontmatter 的 SKILL.md 文件
全局技能 (在所有工作区中均可用) :
  1. 创建目录:~/.codeium/windsurf/skills/<skill-name>/
  2. 添加一个带有 YAML frontmatter 的 SKILL.md 文件

SKILL.md 文件格式

每个技能都需要一个 SKILL.md 文件,其中包含 YAML frontmatter,用于定义该技能的元数据:

技能示例

---
name: deploy-to-production
description: Guides the deployment process to production with safety checks
---

## Pre-deployment Checklist
1. Run all tests
2. Check for uncommitted changes
3. Verify environment variables

## Deployment Steps
Follow these steps to deploy safely...

[Reference supporting files in this directory as needed]

必填 Frontmatter 字段

  • name:技能的唯一标识符 (显示在 UI 中,并用于 @ 提及)
  • description:展示给模型的简要说明,用于帮助其判断何时调用该技能
有效名称示例:deploy-to-stagingcode-reviewsetup-dev-environment

添加辅助资源

将所有辅助文件放在 skill 文件夹中,与 SKILL.md 放在同一目录下。调用该 skill 时,Cascade 就可以使用这些文件:
.windsurf/skills/deploy-to-production/
├── SKILL.md
├── deployment-checklist.md
├── rollback-procedure.md
└── config-template.yaml

调用技能

自动调用

当你的请求与某个技能的描述相匹配时,Cascade 会自动调用该技能,并使用其指示和资源来完成任务。这是技能最常见的使用方式——你只需描述你想做什么,Cascade 就会判断哪些技能适用。 你的技能 frontmatter 中的 description 字段至关重要:它能帮助 Cascade 理解应在何时调用该技能。请编写清晰说明技能作用及其适用时机的描述。

手动调用

你始终可以在 Cascade 输入框中键入 @skill-name,以显式启用某个技能。当你想确保使用特定技能,或者想调用某个可能不会因你的请求而自动触发的技能时,这种方式就很有用。

技能作用域

作用域位置可用性
工作区.windsurf/skills/仅限当前工作区。随你的代码仓库一同提交。
全局~/.codeium/windsurf/skills/你设备上的所有工作区。不会提交。
系统 (Enterprise)因操作系统而异 (见下文)所有工作区,由 IT 部署。只读。
为实现跨 Agent 兼容,Devin Desktop 也会在 .agents/skills/~/.agents/skills/ 中发现技能。如果你已启用 Claude Code 配置读取功能,还会扫描 .claude/skills/~/.claude/skills/

系统级技能 (企业版)

企业版组织可以部署系统级技能,这些技能在所有工作区中均可用,且终端用户无法修改:
操作系统路径
macOS/Library/Application Support/Windsurf/skills/
Linux/WSL/etc/windsurf/skills/
WindowsC:\ProgramData\Windsurf\skills\
每个技能都是一个子目录,其中包含一个 SKILL.md 文件,与工作区技能相同。

示例用例

部署工作流程

创建一个包含部署脚本、环境配置和回滚步骤的 skill:
.windsurf/skills/deploy-staging/
├── SKILL.md
├── pre-deploy-checks.sh
├── environment-template.env
└── rollback-steps.md

代码审查指南

包括风格指南、安全检查清单和审查模板:
.windsurf/skills/code-review/
├── SKILL.md
├── style-guide.md
├── security-checklist.md
└── review-template.md

测试步骤

将测试模板、覆盖率要求和 CI/CD 配置整合在一起:
.windsurf/skills/run-tests/
├── SKILL.md
├── test-template.py
├── coverage-config.json
└── ci-workflow.yaml

最佳实践

  1. 编写清晰的描述:描述能帮助 Cascade 判断何时调用该技能。请具体说明该技能的作用,以及适用场景。
  2. 包含相关资源:模板、检查清单和示例能让技能更实用。想一想哪些文件可以帮助他人完成这项任务。
  3. 使用描述性名称deploy-to-stagingdeploy1 更好。名称应清楚表明该技能的作用。

技能 vs 规则 vs 工作流程

这三者都可以自定义 Cascade,但它们在结构调用方式上下文成本方面有所不同:
技能规则工作流程
Purpose带辅助文件的多步骤流程行为准则 (“应如何行事”)用于重复性任务的提示模板
Structure包含 SKILL.md 和任意资源文件的文件夹带有 frontmatter 的单个 .md 文件单个 .md 文件
Invocation由模型决定 (渐进式披露) 或通过 @mentionalways_on / glob / model_decision / manual仅可手动通过 /slash-command 调用
In system prompt?否——调用前只包含名称和描述取决于激活模式否——会列为可用命令
Best for需要脚本/模板的部署、代码审查和测试流程编码风格、项目规范、约束条件需要你显式触发的一次性操作手册
**经验法则:**如果 Cascade 应该自动拾取它,并且它需要辅助文件,就使用技能。如果它是简短的行为约束,就使用规则。如果你希望始终由自己手动触发,就使用工作流程。 如果 技能 不是你要找的内容,可以看看 Cascade 的这些其他功能:
  • 工作流程 - 通过斜杠命令调用可复用的 Markdown 工作流程,自动化重复性任务
  • AGENTS.md - 提供目录作用域的指示,并根据文件位置自动生效
  • 记忆与规则 - 通过自动生成的记忆和用户定义的规则,在对话之间持续保留上下文