Understanding Skills
Relevant source files
The following files were used as context for generating this wiki page:Within the Kiro system, "Skills" are modular, installable packages that provide methodologies and structured guidance for AI assistants like Claude Code. They are designed to encapsulate best practices for various stages of the software development lifecycle, particularly following the Spec-Driven Development methodology. Each skill is defined in a SKILL.md file and can be invoked to assist with specific tasks such as requirements engineering, technical design, or AI prompting.
The primary goal of these skills is to transform vague ideas into well-defined, implementable solutions by breaking down complex processes into structured, manageable phases. They are available as a Claude Code plugin and follow the agentskills.io specification, allowing an AI assistant to automatically use the relevant skill based on the user's request.
Sources: README.md:78-81, skills/spec-driven-development/SKILL.md:2-5, skills/ai-prompting/SKILL.md:2-5
Available Skills
The repository defines a set of skills that map to different phases and aspects of the Spec-Driven Development process. These skills can be installed and are automatically used by the AI assistant when relevant.
| Skill | Description | Use Case Trigger |
|---|---|---|
spec-driven-development | The master methodology for a systematic three-phase approach to feature development. | "create a spec for..." |
requirements-engineering | Transforms vague ideas into clear, testable requirements using the EARS format. | "write requirements for..." |
design-documentation | Transforms approved requirements into comprehensive technical designs. | "design the architecture..." |
task-breakdown | Converts technical designs into actionable, sequenced implementation tasks. | "break down into tasks..." |
ai-prompting | Provides effective communication strategies for AI-assisted development. | "how to prompt better..." |
quality-assurance | Defines comprehensive testing and validation strategies for the development process. | "testing strategy for..." |
create-steering-documents | Generates project-specific standards, git workflows, and technology guidelines. | "create steering documents..." |
Sources: README.md:84-96, skills/spec-driven-development/SKILL.md:2-3, skills/requirements-engineering/SKILL.md:2-3, skills/design-documentation/SKILL.md:2-3, skills/task-breakdown/SKILL.md:2-3, skills/ai-prompting/SKILL.md:2-3, skills/quality-assurance/SKILL.md:2-3, skills/create-steering-documents/SKILL.md:2-3
Anatomy of a Skill
Each skill is defined within a SKILL.md file, which consists of two main parts: a YAML front-matter block for metadata and a Markdown body for the instructional content.
This diagram illustrates the structure of a typical SKILL.md file.
YAML Front-matter
The front-matter contains metadata that describes the skill and its operational parameters.
---
name: design-documentation
description: Transform approved requirements into comprehensive technical designs. Define system architecture, component interactions, data models, and interfaces to create a blueprint for implementation.
license: MIT
compatibility: Claude Code, Cursor, VS Code, Windsurf
metadata:
category: methodology
complexity: intermediate
author: Kiro Team
version: "1.0.0"
---
Sources: skills/design-documentation/SKILL.md:1-13
Key fields include:
name: A unique identifier for the skill.description: A brief summary of the skill's purpose.compatibility: A list of AI assistants the skill is compatible with.metadata: An object containing further details likecategory,complexity, andversion.
Markdown Body
The body of the file is written in Markdown and provides the detailed instructions and knowledge base for the skill. It typically includes:
- A main title (
#). - A "When to Use This Skill" section.
- A step-by-step process guide.
- Concrete examples, templates, and code snippets.
- Quality checklists and common pitfalls.
Sources: skills/requirements-engineering/SKILL.md:15-20, skills/design-documentation/SKILL.md:15-22, skills/task-breakdown/SKILL.md:15-21
Core Methodology: Spec-Driven Development
The skills are designed to support a systematic, three-phase workflow called Spec-Driven Development. This methodology transforms a feature idea into a well-defined, implementable solution.
The following diagram shows the three-phase workflow of Spec-Driven Development.
- Phase 1: Requirements Gathering: Transforms vague ideas into clear, testable requirements using user stories and the EARS (Easy Approach to Requirements Syntax) format. The
requirements-engineeringskill is central to this phase.
Sources: skills/spec-driven-development/SKILL.md:25-30, skills/requirements-engineering/SKILL.md:15-20 - Phase 2: Design Documentation: Creates a comprehensive technical plan, including system architecture, component interactions, data models, and error handling strategies. This phase is supported by the
design-documentationskill.
Sources: skills/spec-driven-development/SKILL.md:51-58, skills/design-documentation/SKILL.md:15-22 - Phase 3: Task Planning: Breaks the approved design into a sequence of actionable, small coding tasks, each with clear objectives and completion criteria. The
task-breakdownskill is used here.
Sources: skills/spec-driven-development/SKILL.md:79-85, skills/task-breakdown/SKILL.md:15-21
Skill Relationships and Workflow
The available skills are interconnected and designed to be used at specific points in the development workflow. Some skills apply to a single phase, while others are cross-cutting concerns.
This diagram maps each skill to its corresponding phase in the Spec-Driven Development workflow.
- Phase-Specific Skills:
requirements-engineering,design-documentation, andtask-breakdowndirectly map to the three phases of the core methodology. - Cross-Cutting Skills:
ai-prompting: Provides strategies for effective communication with the AI assistant throughout all phases.quality-assurance: Offers validation techniques and quality gates to be applied at the end of each phase and during implementation.create-steering-documents: Used for project setup to establish foundational guidelines that influence all subsequent development work.
Sources: README.md:84-96, skills/quality-assurance/SKILL.md:15-19, skills/ai-prompting/SKILL.md:15-19
Installation and Usage
The skills are packaged as a Claude Code plugin, which can be installed from a marketplace. Once installed, the AI assistant can automatically invoke the appropriate skill based on the user's prompt.
Installation can be scoped to a user (available everywhere) or to a specific project (shared via git).
Example Installation Commands:
# In Claude Code
/plugin marketplace add https://github.com/jasonkneen/kiro
/plugin install kiro-spec-driven@kiro-marketplace
# Project-scoped installation
/plugin install kiro-spec-driven@kiro-marketplace --scope project
Sources: README.md:78-81, 99-109
Conclusion
The "Skills" in the Kiro system represent a structured and modular approach to leveraging AI in software development. By encapsulating proven methodologies like Spec-Driven Development into discrete, installable units, the system provides a powerful framework for guiding developers and AI assistants from initial concept to a detailed implementation plan. This ensures consistency, quality, and clarity throughout the development lifecycle.