
GitHub Actions Workflow Specification
OfficialFreeCreate formal specifications for GitHub Actions workflows.
Free · Opens the source repo
What GitHub Actions Workflow Specification does
The Create GitHub Actions Workflow Specification skill provides a structured approach to documenting GitHub Actions workflows. It allows users to generate a comprehensive specification that outlines the behavior, requirements, and constraints of a CI/CD workflow. This specification is designed to be implementation-agnostic, focusing on what the workflow achieves rather than the specific commands or syntax used in its implementation. By using this skill, developers and DevOps teams can ensure that their workflows are well-documented and easily maintainable.
The skill emphasizes AI-optimized requirements, promoting token efficiency and semantic clarity. It encourages the use of structured data formats, such as tables and diagrams, to convey dense information effectively. This makes it easier for both humans and AI systems to understand the workflow's purpose, trigger events, and execution flow. The output includes a detailed specification template that covers various aspects of the workflow, including jobs, dependencies, requirements, and error handling strategies.
This skill is particularly useful for teams that rely on GitHub Actions for their CI/CD processes. By creating a formal specification, teams can enhance collaboration, streamline updates, and maintain consistency across multiple workflows. It is beneficial for both new workflows and existing ones that require documentation for better understanding and maintenance. The structured approach also aids in onboarding new team members who need to quickly grasp the workflow's functionality and constraints.
In summary, the Create GitHub Actions Workflow Specification skill is a valuable tool for developers and DevOps professionals looking to create clear, concise, and comprehensive documentation for their CI/CD workflows. It promotes best practices in workflow design and maintenance, ensuring that specifications evolve alongside the workflows they describe.
When to use it
Use this skill when you need to create or update documentation for GitHub Actions workflows, especially in collaborative environments.
When not to use it
This skill may not be suitable for simple workflows that do not require detailed documentation or for teams that prefer informal documentation methods.
What you can build with it
Documenting a New Workflow
When creating a new CI/CD workflow, use this skill to generate a comprehensive specification that outlines its purpose and requirements.
Updating Existing Documentation
If an existing workflow evolves, this skill can help update its documentation to reflect changes in jobs, dependencies, and constraints.
Onboarding New Team Members
Use the specifications generated by this skill to help new team members quickly understand the workflows and their functionalities.
How to install GitHub Actions Workflow Specification
View source1. Install with the skills CLI
npx skills add github/awesome-copilot/create-github-action-workflow-specification --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by githubCreate GitHub Actions Workflow Specification
Create a comprehensive specification for the GitHub Actions workflow: ${input:WorkflowFile}.
This specification serves as a specification for the workflow's behavior, requirements, and constraints. It must be implementation-agnostic, focusing on what the workflow accomplishes rather than how it's implemented.
AI-Optimized Requirements
- Token Efficiency: Use concise language without sacrificing clarity
- Structured Data: Leverage tables, lists, and diagrams for dense information
- Semantic Clarity: Use precise terminology consistently throughout
- Implementation Abstraction: Avoid specific syntax, commands, or tool versions
- Maintainability: Design for easy updates as workflow evolves
Specification Template
Save as: /spec/spec-process-cicd-[workflow-name].md
---
title: CI/CD Workflow Specification - [Workflow Name]
version: 1.0
date_created: [YYYY-MM-DD]
last_updated: [YYYY-MM-DD]
owner: DevOps Team
tags: [process, cicd, github-actions, automation, [domain-specific-tags]]
---
## Workflow Overview
**Purpose**: [One sentence describing workflow's primary goal]
**Trigger Events**: [List trigger conditions]
**Target Environments**: [Environment scope]
## Execution Flow Diagram
```mermaid
graph TD
A[Trigger Event] --> B[Job 1]
B --> C[Job 2]
C --> D[Job 3]
D --> E[End]
B --> F[Parallel Job]
F --> D
style A fill:#e1f5fe
style E fill:#e8f5e8
Jobs & Dependencies
| Job Name | Purpose | Dependencies | Execution Context |
|---|---|---|---|
| job-1 | [Purpose] | [Prerequisites] | [Runner/Environment] |
| job-2 | [Purpose] | job-1 | [Runner/Environment] |
Requirements Matrix
Functional Requirements
| ID | Requirement | Priority | Acceptance Criteria |
|---|---|---|---|
| REQ-001 | [Requirement] | High | [Testable criteria] |
| REQ-002 | [Requirement] | Medium | [Testable criteria] |
Security Requirements
| ID | Requirement | Implementation Constraint |
|---|---|---|
| SEC-001 | [Security requirement] | [Constraint description] |
Performance Requirements
| ID | Metric | Target | Measurement Method |
|---|---|---|---|
| PERF-001 | [Metric] | [Target value] | [How measured] |
Input/Output Contracts
Inputs
# Environment Variables
ENV_VAR_1: string # Purpose: [description]
ENV_VAR_2: secret # Purpose: [description]
# Repository Triggers
paths: [list of path filters]
branches: [list of branch patterns]
Outputs
# Job Outputs
job_1_output: string # Description: [purpose]
build_artifact: file # Description: [content type]
Secrets & Variables
| Type | Name | Purpose | Scope |
|---|---|---|---|
| Secret | SECRET_1 | [Purpose] | Workflow |
| Variable | VAR_1 | [Purpose] | Repository |
Execution Constraints
Runtime Constraints
- Timeout: [Maximum execution time]
- Concurrency: [Parallel execution limits]
- Resource Limits: [Memory/CPU constraints]
Environmental Constraints
- Runner Requirements: [OS/hardware needs]
- Network Access: [External connectivity needs]
- Permissions: [Required access levels]
Error Handling Strategy
| Error Type | Response | Recovery Action |
|---|---|---|
| Build Failure | [Response] | [Recovery steps] |
| Test Failure | [Response] | [Recovery steps] |
| Deployment Failure | [Response] | [Recovery steps] |
Quality Gates
Gate Definitions
| Gate | Criteria | Bypass Conditions |
|---|---|---|
| Code Quality | [Standards] | [When allowed] |
| Security Scan | [Thresholds] | [When allowed] |
| Test Coverage | [Percentage] | [When allowed] |
Monitoring & Observability
Key Metrics
- Success Rate: [Target percentage]
- Execution Time: [Target duration]
- Resource Usage: [Monitoring approach]
Alerting
| Condition | Severity | Notification Target |
|---|---|---|
| [Condition] | [Level] | [Who/Where] |
Integration Points
External Systems
| System | Integration Type | Data Exchange | SLA Requirements |
|---|---|---|---|
| [System] | [Type] | [Data format] | [Requirements] |
Dependent Workflows
| Workflow | Relationship | Trigger Mechanism |
|---|---|---|
| [Workflow] | [Type] | [How triggered] |
Compliance & Governance
Audit Requirements
- Execution Logs: [Retention policy]
- Approval Gates: [Required approvals]
- Change Control: [Update process]
Security Controls
- Access Control: [Permission model]
- Secret Management: [Rotation policy]
- Vulnerability Scanning: [Scan frequency]
Edge Cases & Exceptions
Scenario Matrix
| Scenario | Expected Behavior | Validation Method |
|---|---|---|
| [Edge case] | [Behavior] | [How to verify] |
Validation Criteria
Workflow Validation
- VLD-001: [Validation rule]
- VLD-002: [Validation rule]
Performance Benchmarks
- PERF-001: [Benchmark criteria]
- PERF-002: [Benchmark criteria]
Change Management
Update Process
- Specification Update: Modify this document first
- Review & Approval: [Approval process]
- Implementation: Apply changes to workflow
- Testing: [Validation approach]
- Deployment: [Release process]
Version History
| Version | Date | Changes | Author |
|---|---|---|---|
| 1.0 | [Date] | Initial specification | [Author] |
Related Specifications
- [Link to related workflow specs]
- [Link to infrastructure specs]
- [Link to deployment specs]
## Analysis Instructions
When analyzing the workflow file:
1. **Extract Core Purpose**: Identify the primary business objective
2. **Map Job Flow**: Create dependency graph showing execution order
3. **Identify Contracts**: Document inputs, outputs, and interfaces
4. **Capture Constraints**: Extract timeouts, permissions, and limits
5. **Define Quality Gates**: Identify validation and approval points
6. **Document Error Paths**: Map failure scenarios and recovery
7. **Abstract Implementation**: Focus on behavior, not syntax
## Mermaid Diagram Guidelines
### Flow Types
- **Sequential**: `A --> B --> C`
- **Parallel**: `A --> B & A --> C; B --> D & C --> D`
- **Conditional**: `A --> B{Decision}; B -->|Yes| C; B -->|No| D`
### Styling
```mermaid
style TriggerNode fill:#e1f5fe
style SuccessNode fill:#e8f5e8
style FailureNode fill:#ffebee
style ProcessNode fill:#f3e5f5
Complex Workflows
For workflows with 5+ jobs, use subgraphs:
graph TD
subgraph "Build Phase"
A[Lint] --> B[Test] --> C[Build]
end
subgraph "Deploy Phase"
D[Staging] --> E[Production]
end
C --> D
Token Optimization Strategies
- Use Tables: Dense information in structured format
- Abbreviate Consistently: Define once, use throughout
- Bullet Points: Avoid prose paragraphs
- Code Blocks: Structured data over narrative
- Cross-Reference: Link instead of repeat information
Focus on creating a specification that serves as both documentation and a template for workflow updates.
Frequently asked questions about GitHub Actions Workflow Specification
Similar skills
Turborepo
Optimized build system for JavaScript/TypeScript monorepos.
Azure Pipelines Validation
Streamline your Azure DevOps pipeline changes locally.
Azure Developer CLI
Streamline your Azure project workflows with best practices.
Azure Container Registry CLI
Manage Azure Container Registry resources with ease.
Aspire
Build and orchestrate polyglot distributed applications seamlessly.
Vercel CLI
Manage and deploy Vercel projects from the command line.
