Create Github Action Workflow Specification
GitHubOfficialOriginally contributed by @PlagueHO as prompts/create-github-action-workflow-specification.prompt.md; moved into a skill by pull request #761Distributed by GitHub
- Skill
- Content generator
- Software development
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured framework for documenting GitHub Actions CI/CD workflows. By abstracting implementation details and focusing on behavioral requirements, inputs, outputs, and constraints, it creates a standardized specification that is easier for both human engineers and AI agents to interpret, maintain, and update. The output is a comprehensive Markdown document containing dependency diagrams, requirement matrices, and governance policies.
What it does
- Extracts core business objectives and functional requirements from existing workflow files.
- Maps job execution flows and dependencies using Mermaid diagrams.
- Documents input/output contracts, secrets, and environment variables.
- Defines performance metrics, quality gates, and error handling strategies.
- Establishes compliance, audit requirements, and change management processes.
- Standardizes documentation format for improved AI-assisted maintenance.
When to use it
- When preparing to refactor or migrate complex CI/CD pipelines.
- When onboarding new team members to existing automation processes.
- When you need to improve the maintainability of legacy GitHub Actions workflows.
- When establishing governance and compliance documentation for automated deployments.
Advantages
- Reduces technical debt by decoupling workflow behavior from specific syntax.
- Enhances AI agent performance by providing structured, token-efficient documentation.
- Centralizes critical information like security constraints and quality gates.
- Facilitates easier audits and compliance checks through standardized reporting.
Usage examples
- “Create a formal specification for the workflow file located at .github/workflows/main-ci.yml.”
- The agent analyzes the specified YAML file and generates a comprehensive /spec/spec-process-cicd-main-ci.md document detailing the workflow's purpose, job dependencies, and requirements.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/github/create-github-action-workflow-specification/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip create-github-action-workflow-specification.zip -d .agents/skills
Documentation by PlagueHO
Create 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:#e8f5e8Jobs & 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:#f3e5f5Complex 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 --> DToken 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.
Files
- ATTRIBUTION.mdAdded by AutoGineer1.2 KiB
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md7.5 KiB
LICENSE
MIT License Copyright GitHub, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Requirements and compatibility
Written for: GitHub Copilot
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Originally contributed by
@PlagueHOas prompts/create-github-action-workflow-specification.prompt.mdmoved into a skill by pull request #761
- Publisher
- GitHub (Official)
- Distributed by
- GitHub
- Source
- github/awesome-copilot · skills/create-github-action-workflow-specification · commit 797337f
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Contributors
- CypherHK, PlagueHO, derekclair
AutoGineer is not affiliated with or endorsed by PlagueHO or GitHub.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download create-github-action-workflow-specification.zip