skill-creator

Guide for creating effective skills that extend agent capabilities with specialized knowledge, workflows, or tool integrations. Use this skill when the user…

npx skills add https://github.com/langchain-ai/deepagentsjs --skill skill-creator

Skill Creator

This skill provides guidance for creating effective skills.

About Skills

Skills are modular, self-contained packages that extend agent capabilities by providing specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific domains or tasks—they transform a general-purpose agent into a specialized agent equipped with procedural knowledge and domain expertise.

Skill Location for Deepagents

In deepagents CLI, skills are stored in ~/.deepagents/<agent>/skills/ where <agent> is your agent configuration name (default is agent). For example, with the default configuration, skills live at:

~/.deepagents/agent/skills/
├── skill-name-1/
│   └── SKILL.md
├── skill-name-2/
│   └── SKILL.md
└── ...

What Skills Provide

  1. Specialized workflows - Multi-step procedures for specific domains
  2. Tool integrations - Instructions for working with specific file formats or APIs
  3. Domain expertise - Company-specific knowledge, schemas, business logic
  4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks

Core Principles

Concise is Key

The context window is a public good. Skills share the context window with everything else the agent needs: system prompt, conversation history, other Skills' metadata, and the actual user request.

Default assumption: The agent is already very capable. Only add context the agent doesn't already have.

Anatomy of a Skill

Every skill consists of a required SKILL.md file and optional bundled resources:

skill-name/
├── SKILL.md (required)
│   ├── YAML frontmatter metadata (required)
│   │   ├── name: (required)
│   │   └── description: (required)
│   └── Markdown instructions (required)
└── Bundled Resources (optional)
    ├── scripts/          - Executable code (TypeScript/JavaScript/etc.)
    ├── references/       - Documentation intended to be loaded into context as needed
    └── assets/           - Files used in output (templates, icons, fonts, etc.)

Skill Creation Process

Skill creation involves these steps:

  1. Understand the skill with concrete examples
  2. Plan reusable skill contents (scripts, references, assets)
  3. Initialize the skill (run init_skill.ts)
  4. Edit the skill (implement resources and write SKILL.md)
  5. Validate the skill (run quick_validate.ts)
  6. Iterate based on real usage

Step 3: Initializing the Skill

When creating a new skill from scratch, run the init_skill.ts script:

npx tsx scripts/init_skill.ts <skill-name> --path <output-directory>

For deepagents, use the agent's skills directory:

npx tsx scripts/init_skill.ts <skill-name> --path ~/.deepagents/agent/skills

Step 5: Validate the Skill

Once development of the skill is complete, validate it:

npx tsx scripts/quick_validate.ts <path/to/skill-folder>

The validation script checks:

  • YAML frontmatter format and required fields
  • Skill naming conventions (hyphen-case, max 64 characters)
  • Description completeness (max 1024 characters)
  • Required fields: name and description

More skills from langchain-ai

langgraph-docs
langchain-ai
Access LangGraph documentation to build stateful agents and multi-agent workflows. Fetches official LangGraph Python docs covering state machines, graph-based agent design, and human-in-the-loop patterns Prioritizes relevant documentation by query type: implementation guides for how-to questions, concept pages for theory, tutorials for end-to-end examples, and API references for technical details Automatically selects 2–4 most relevant documentation URLs and retrieves their content to answer...
official
langgraph-human-in-the-loop
langchain-ai
Pause graph execution for human review, approval, or validation, then resume with their input. Requires three components: a checkpointer (InMemorySaver or PostgresSaver), a thread ID in config, and JSON-serializable interrupt payloads interrupt(value) pauses and surfaces data; Command(resume=value) resumes and returns that value to the paused node All code before interrupt() re-executes on resume, so side effects must be idempotent (use upsert, not insert) Supports approval workflows,...
official
web-research
langchain-ai
Use this skill for requests related to web research; it provides a structured approach to conducting comprehensive web research
official
langchain-oss-primer
langchain-ai
ALWAYS START HERE for any LangChain, Deep Agents, or LangGraph agent building project. Required starting point before choosing other skills or writing any…
official
skill-creator
langchain-ai
Guide for creating effective skills that extend agent capabilities with specialized knowledge, workflows, or tool integrations. Use this skill when the user…
official
social-media
langchain-ai
Drafts platform-specific social media posts with research-backed content and generated companion images. Supports LinkedIn posts (1,300 characters with professional tone) and Twitter/X threads (280 characters per tweet with 1/🧵 format) Requires delegating research to a subagent before writing, then reading findings to ensure accuracy and relevance Generates eye-catching social images automatically using generate_social_image tool with bold, high-contrast compositions optimized for small...
official
deep-agents-memory
langchain-ai
Pluggable memory and file backends for Deep Agents with ephemeral, persistent, and hybrid routing options. Four backend types: StateBackend (thread-scoped, ephemeral), StoreBackend (cross-session persistent), FilesystemBackend (real disk access for local dev), and CompositeBackend (route different paths to different backends) FilesystemMiddleware provides six file operation tools: ls , read_file , write_file , edit_file , glob , grep CompositeBackend uses longest-prefix matching to route...
official
deep-agents-orchestration
langchain-ai
Orchestrate subagents, plan multi-step tasks, and require human approval for sensitive operations. Delegate work to specialized subagents via the task tool; custom subagents support isolated tool sets and system prompts, while the default "general-purpose" subagent inherits main agent configuration Plan and track complex workflows with write_todos , organizing tasks across pending, in-progress, and completed states; requires a thread_id for persistence across invocations Implement...
official