update-skill

作者: warpdotdev

通过生成、编辑或优化此仓库中的SKILL.md文件来创建或更新技能。在编写新技能或修改现有技能的结构、前置元数据或指导说明时使用。

npx skills add https://github.com/warpdotdev/common-skills --skill update-skill

update-skill

This guide provides instructions for creating or updating skills in this repository. It covers the required structure, frontmatter, and best practices for skills.

Quick Start

Every skill is a directory containing a SKILL.md file with YAML frontmatter and markdown body:

---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents.
---

# PDF Processing

## When to use this skill
Use this skill when the user needs to work with PDF files...

## How to extract text
1. Use pdfplumber for text extraction...

## How to fill forms
...

Requirements

Frontmatter (Required)

Every SKILL.md must start with YAML frontmatter containing:

  • name: Kebab-case identifier (lowercase letters, numbers, hyphens only)
    • Example: add-feature-flag, pdf-processing, update-skill
  • description: Specific description of what the skill does and when to use it
    • Must be non-empty
    • Should include key terms for skill discovery
    • Begin with an action verb to clearly state what the skill accomplishes (e.g., "Adds feature flags..." instead of "Helps with features..."), and immediately follow with a specific use case or context (e.g., "Use when working with feature flags")
    • Write in third person (e.g., "Adds feature flags..." not "I can help you add...")

Writing Effective Descriptions

The description field is critical for skill discovery. Include both what the skill does and when to use it. Some good examples:

  • git-commit: "Generate descriptive commit messages by analyzing git diffs. Use when the user asks for help writing commit messages or reviewing staged changes."
  • pdf-processing: "Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction."

Avoid vague descriptions like "Helps with code" or "Does development tasks". For more context, see "Description Best Practices" in references/best-practices.md.

Skill Structure

Typical sections in Warp skills:

  1. Title and brief summary – Clear title and a concise overview of the skill's purpose and primary use cases. Link to sections, reference files or related skills if useful
  2. Overview - Context about the skill's purpose (optional but common), extends the summary with more details and context
  3. Main content - Steps, usage instructions, or workflow guidance
  4. Best Practices - Guidelines and recommendations (optional)
  5. Examples / Reference PRs - Links to real examples (optional)

Keep the structure flexible based on the skill's needs. Simple skills can omit the optional sections.

Validation

Optionally, use the skills-ref reference library to validate your skills:

skills-ref validate ./my-skill

This checks that your SKILL.md frontmatter is valid and follows all naming conventions. If not installed, use the WebSearch tool to get context around this package.

Main Content Best Practices

File Organization

  • Simple skills (<=200 lines): Keep everything in SKILL.md
  • Complex skills (>200 lines): Split detailed content into references/ subdirectory

When to Split Content

Create references/ subdirectory when:

  • SKILL.md approaches 200+ lines
  • Skill covers multiple domains or workflows that can be loaded independently
  • Detailed reference material would clutter the main instructions

Keep only essential workflow and procedural instructions in SKILL.md. Move detailed reference material, schemas, and extensive examples to references/ files.

Examples from Existing Skills

For reference on structure and style:

  • .agents/skills/add-feature-flag/SKILL.md - Multi-step workflow with clear sequential steps
  • .agents/skills/remove-feature-flag/SKILL.md - Cleanup workflow with search commands

Best Practices

See references/best-practices.md for detailed authoring guidance including:

  • Progressive disclosure patterns
  • Writing concise, effective instructions
  • Code example formatting
  • Common anti-patterns to avoid

来自 warpdotdev 的更多技能

council
warpdotdev
运行一个模型多样化的子代理委员会,从多个角度调查同一问题,比较发现,并生成最终建议。当用户要求委员会、第二意见、多个代理/模型评估一个问题、并行调查、红队/蓝队对比,或帮助在竞争性技术方案中做出决策时,使用此技能。
researchcommunicationproject-management
spec-driven-implementation
warpdotdev
通过先编写PRODUCT.md再实现、必要时编写TECH.md,并在实现过程中持续更新两份规范,推动以规范为先导的工作流程,用于开发重要功能。适用于启动重大特性、规划由智能体驱动的实现,或用户希望将产品和技术规范纳入源代码管理时。
developmentdocumentproject-management
review-pr
warpdotdev
审查拉取请求的差异,并撰写结构化反馈,写入review.json以供工作流发布。适用于审查从本地工件(如pr_diff.txt和pr_description.txt)检出的PR,并生成机器可读的审查输出,而非直接发布到GitHub。
code-reviewdevelopment
create-pr
warpdotdev
在当前分支的warp仓库中创建一个拉取请求。当用户提到打开PR、创建拉取请求、提交更改以供审查或准备合并代码时使用。
developmentcode-review
implement-specs
warpdotdev
实现PRODUCT.md和TECH.md中已批准的功能,在同一个PR中随着实现进展保持规格与代码对齐。在产品和技术规格获批、下一步是构建功能时使用。
developmentcode-reviewapi
cross-critique
warpdotdev
对有争议的问题进行第二轮讨论,将每个子代理的独立提案分发给其他作者,并要求给出结构化的优缺点,然后进行综合。当你对某个有争议的决策(如架构权衡、代码审查分歧、设计选择、相互矛盾的根因理论)有多个独立提案或意见,并且希望获得比单独综合更深入的分析时,可使用此技能。该技能与“council”和“research”技能自然搭配;……
resolve-merge-conflicts
warpdotdev
通过仅提取未解决的路径、冲突块和紧凑差异来解决 Git
developmentcode-review
brandalf
warpdotdev
指导Warp或Oz品牌资产的创建、修订和审核。适用于启动页面、文档、HTML/CSS组件、UI模型、提示词、社交媒体素材、文案、演示文稿,以及任何应具有鲜明Warp或Oz风格与调性的品牌交付物。
designcreativemarketing