<< All versions
Skill v1.0.1
currentAutomated scan100/100diegosouzapw/awesome-omni-skill/github-workflow
1 files
──Details
PublishedMay 14, 2026 at 11:43 PM
Content Hashsha256:13868142f496e40a...
Git SHAa6b3c3005ced
Bump Typepatch
──Files
Files (1 file, 2.4 KB)
SKILL.md2.4 KBactive
SKILL.md · 92 lines · 2.4 KB
version: "1.0.1" name: github-workflow description: Write and edit GitHub Actions workflow files. Use when creating new workflows, editing existing .github/workflows/*.yml files, or setting up CI/CD pipelines. Triggers on requests like "create a workflow", "add GitHub Actions", "set up CI", or "edit the workflow file".
GitHub Workflow
Write clear, minimal GitHub Actions workflow files.
Naming Guidelines
Do NOT name
runsteps that are self-explanatory from the command itselfusessteps for common, obvious actions like:actions/checkoutactions/setup-nodeoven-sh/setup-bunpnpm/action-setupactions/cache
DO name
usessteps withactions/github-script(explain what the script does)- Complex multi-line shell scripts (summarize the purpose)
- Steps where the intent is not obvious from the code
Examples
Good
yaml
jobs:build:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v4- uses: oven-sh/setup-bun@v2- run: bun install- run: bun run build- run: bun test- name: Post build status to Slackuses: actions/github-script@v7with:script: |const webhook = process.env.SLACK_WEBHOOK;// ... complex logic
Bad
yaml
jobs:build:runs-on: ubuntu-lateststeps:- name: Checkout repositoryuses: actions/checkout@v4- name: Setup Bunuses: oven-sh/setup-bun@v2- name: Install dependenciesrun: bun install- name: Build projectrun: bun run build- name: Run testsrun: bun test
Best Practices
- Pin action versions with full SHA or major version tag (
@v4, not@main) - Use
workflow_dispatchfor manual triggers when useful - Set appropriate
permissionsto follow least privilege - Use
concurrencyto cancel redundant runs - Prefer
${{ github.token }}over PAT when possible - Avoid emoji in workflow names and step names
- Use
$GITHUB_STEP_SUMMARYto output execution results in Markdown format - Avoid obvious comments; only add comments to explain complex logic
Step Summary Example
yaml
- name: Report test resultsrun: |echo "## Test Results" >> $GITHUB_STEP_SUMMARYecho "| Suite | Passed | Failed |" >> $GITHUB_STEP_SUMMARYecho "|-------|--------|--------|" >> $GITHUB_STEP_SUMMARYecho "| Unit | 42 | 0 |" >> $GITHUB_STEP_SUMMARY