mcpField
S
skill-editor

skill-editor

github.com/davidkissAgent workflows4110 installsUpdated 25w ago
Repository

About skill-editor

Skills Editor Skill helps agents create and maintain Agent Skills that follow the deepagents format. It is intended for adding capabilities or editing existing skills, and specifies directory and `SKILL.md` conventions alongside a workflow from finding similar skills to adding supporting files.

Key features

  1. 01Create and maintain Agent Skills
  2. 02Specify skill directories and required files
  3. 03Define YAML frontmatter requirements
  4. 04Provide steps for skill creation and editing
  5. 05Guide progressive disclosure and supporting-file organization

Use cases

  1. 01Packaging a new workflow capability for an agent
  2. 02Creating a skill directory with `SKILL.md`
  3. 03Updating skill instructions or adding resources
  4. 04Checking skill format and activation criteria

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/davidkiss/smart-ai-skills --skill skill-editor

After installing, type/skill-editorin Claude Code to confirm it loaded.

Details

From the project README

Skills Editor Skill

Description

This skill enables the agent to create and maintain "Agent Skills" - modular capabilities that extend the agent's functionality. It ensures that all skills follow the standardized directory structure and file format required by the deepagents environment.

When to Use

  • When the user asks to "create a skill" or "add a capability".
  • When the user wants to package a specific workflow (e.g., "teach the agent how to handle PDF invoices").
  • When modifying existing skills to add new resources or update instructions.

Skill Structure Rules

Every skill must reside in its own directory and contain a SKILL.md file.

1. Directory Structure

Create a new directory for the skill (e.g., pdf-processing/). Inside, the SKILL.md is mandatory. Other files are optional but recommended for complex tasks to keep the context window light (Progressive Disclosure).

skill-name/
├── SKILL.md          # (Required) Main instructions and metadata
├── REFERENCE.md      # (Optional) Detailed API docs or reference material
├── FORMS.md          # (Optional) Specialized guides
└── scripts/          # (Optional) Executable scripts
    └── utility.py
2. SKILL.md Format

The SKILL.md file must start with YAML frontmatter, followed by markdown instructions.

Frontmatter Requirements:

  • name: Max 64 chars, lowercase letters, numbers, and hyphens only. No reserved words ("anthropic", "claude").
  • description: Max 1024 chars. Must explain what the skill does and when to use it.

Content Sections:

  • # [Skill Name]
  • ## Instructions: Step-by-step guidance.
  • ## Examples: Concrete usage examples.

Instructions - How to Create a Skill

MUST use the todowrite and todoread tools to track progress of the execution of the below steps:

Step 1: Check for Similar Online Skills

Before creating or editing a skill, MUST run a quick web-search (use the webfetch tool) to find any existing, similar skills online (for example, Anthropic's official skills at https://github.com/anthropics/skills/tree/main/skills or community-maintained lists). If similar skills are found:

  • If the license and terms allow reuse, prefer adapting them as a template and include a clear reference/link in the new skill's SKILL.md ("Based on: ").
  • If the license requires attribution or imposes conditions, include the original LICENSE.txt (or a pointer) in the new skill directory and follow the license terms. If the license is incompatible with your intended use, notify the user and request guidance before importing.
Step 2: Check for Existing Skills

Before creating a new skill and not using an online skill as a template, search for existing or similar local skills and reuse their structure, examples, and patterns as a starting point.

Step 3: Create the Directory

Create a directory under .opencode/skills/ with a kebab-case name matching the skill's purpose.

Step 4: Create SKILL.md

Write the SKILL.md file with the required frontmatter and sections.

Template:

---
name: my-new-skill
description: Brief description of what this skill does and when to use it.
---

# My New Skill

## Instructions
[Clear, step-by-step guidance for the agent to follow]

## Examples
[Concrete examples of using this skill]
Step 5: Add Supporting Files (Optional)

If the skill requires large reference texts or scripts, create separate files (e.g., scripts/main.py, docs/api.md) and reference them in SKILL.md. The agent will read these only when needed.

Step 6: Update dependencies (Optional)

Add any required dependencies to the project's requirements.txt file using uv pip install <package> so the project's virtual environment is updated.

Step 7: Highlight necessary environment variables (Optional)

If a skill's scripts require environment variables (API keys, tokens, credentials), list them clearly in the SKILL.md Credentials section with the expected variable names (e.g., GITHUB_ACCESS_TOKEN, YOUTUBE_API_KEY). When creating a new skill, surface these required env vars to the user and advise adding them to the project's .env file or system environment before running the scripts.

Best Practices

  • Progressive Disclosure: Don't put everything in SKILL.md. Use it as an entry point that links to other files.
  • Deterministic Code: Prefer Python scripts for complex logic or data processing over natural language instructions.
  • Concise Scripts: When creating script files, keep them concise—clear purpose, small functions, minimal external dependencies, and avoid unnecessary complexity.
  • Clear Triggers: Ensure the description clearly states when the skill should be used so the router can pick it up correctly.
  • Confirm changes: Confirm changes with the user before executing any steps.

Comments

Markdown supported