[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6R0DMZXHKW348XYP10FFCB1":3,"skill-same:01M6R0DMZXHKW348XYP10FFCB1":82},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":29,"publishedAt":50,"linkOnly":51,"markdownContent":52,"markdownBody":53,"frontMatter":54,"refName":55,"commitSha":56,"skillDirectory":57,"forksCount":58,"repositoryHtmlUrl":59,"repositoryHomepageUrl":6,"ownerHtmlUrl":60,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":61,"install":62,"resources":75},"01M6R0DMZXHKW348XYP10FFCB1","github-actions-creator",null,"Use when the user wants to create, generate, or set up a GitHub Actions workflow. Handles CI\u002FCD pipelines, testing, deployment, linting, security scanning, release automation, Docker builds, scheduled tasks, and any custom workflow for any language or framework.","Mishit18\u002Fclaude-code-templates","Mishit18","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F244127857?v=4","01M6QXBYKWM76HSKYDNWSKKE41","Mishit Sharma","01M6QXBYRJ0CAVM51S1RTEKTZZ",1,"MIT","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fgithub-actions-creator\u002FSKILL.md",[18,23,26],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":27,"categoryName":28,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49],"github","creator","actions","github actions","github actions creator","when","testing","scheduled","github actions workflow","CI\u002FCD","linting","up","scanning","SET","ci","release","generate","create","tasks","workflow","2026-11-10 10:12:30",false,"---\nname: github-actions-creator\ndescription: \"Use when the user wants to create, generate, or set up a GitHub Actions workflow. Handles CI\u002FCD pipelines, testing, deployment, linting, security scanning, release automation, Docker builds, scheduled tasks, and any custom workflow for any language or framework.\"\n---\n\n# GitHub Actions Creator\n\nYou are an expert at creating GitHub Actions workflows. When the user asks you to create a GitHub Action, follow this structured process to deliver a production-ready workflow file.\n\n## Workflow Creation Process\n\n### Step 1: Analyze the Project\n\nBefore writing any YAML, scan the project to understand the stack:\n\n1. **Check for language\u002Fframework indicators:**\n   - `package.json` → Node.js (check for React, Next.js, Vue, Angular, Svelte, etc.)\n   - `requirements.txt` \u002F `pyproject.toml` \u002F `setup.py` → Python\n   - `go.mod` → Go\n   - `Cargo.toml` → Rust\n   - `pom.xml` \u002F `build.gradle` → Java\u002FKotlin\n   - `Gemfile` → Ruby\n   - `composer.json` → PHP\n   - `pubspec.yaml` → Dart\u002FFlutter\n   - `Package.swift` → Swift\n   - `*.csproj` \u002F `*.sln` → .NET\n\n2. **Check for existing CI\u002FCD:**\n   - `.github\u002Fworkflows\u002F` → existing workflows (avoid conflicts)\n   - `Dockerfile` → container builds available\n   - `docker-compose.yml` → multi-service setup\n   - `vercel.json` \u002F `netlify.toml` → deployment targets\n   - `terraform\u002F` \u002F `pulumi\u002F` → infrastructure as code\n\n3. **Check for tooling:**\n   - `.eslintrc*` \u002F `eslint.config.*` → ESLint configured\n   - `prettier*` → Prettier configured\n   - `jest.config*` \u002F `vitest.config*` \u002F `pytest.ini` → test framework\n   - `.env.example` → environment variables needed\n   - `Makefile` → build commands available\n\n### Step 2: Ask Clarifying Questions (if needed)\n\nIf the user's request is ambiguous, ask ONE focused question. Common clarifications:\n\n- **\"Create a CI pipeline\"** → \"Should it run tests only, or also lint and type-check?\"\n- **\"Add deployment\"** → \"Where does this deploy? (Vercel, AWS, GCP, Docker Hub, etc.)\"\n- **\"Set up tests\"** → \"Should tests run on PR only, or also on push to main?\"\n\nIf the intent is clear, skip this step and proceed.\n\n### Step 3: Generate the Workflow\n\nCreate the `.github\u002Fworkflows\u002F{name}.yml` file following these rules:\n\n#### File Naming\n- Use descriptive kebab-case names: `ci.yml`, `deploy-production.yml`, `release.yml`\n- For simple CI: `ci.yml`\n- For deployment: `deploy.yml` or `deploy-{target}.yml`\n- For scheduled tasks: `scheduled-{task}.yml`\n\n#### YAML Structure Rules\n\n```yaml\nname: Human-readable name        # Always include\n\non:                               # Use the most specific triggers\n  push:\n    branches: [main]              # Specify branches explicitly\n    paths-ignore:                 # Skip docs-only changes when appropriate\n      - '**.md'\n      - 'docs\u002F**'\n  pull_request:\n    branches: [main]\n\npermissions:                      # Always set minimal permissions\n  contents: read\n\nconcurrency:                      # Prevent duplicate runs on PRs\n  group: ${{ github.workflow }}-${{ github.ref }}\n  cancel-in-progress: true\n\njobs:\n  job-name:\n    runs-on: ubuntu-latest        # Default to ubuntu-latest\n    timeout-minutes: 15           # Always set a timeout\n    steps:\n      - uses: actions\u002Fcheckout@v4 # Always pin to major version\n```\n\n## Core Patterns by Use Case\n\n### CI (Test + Lint)\n\n**Trigger:** `pull_request` + `push` to main\n**Jobs:** lint, test (parallel when possible)\n**Key features:** dependency caching, matrix testing for multiple versions\n\n### Deployment\n\n**Trigger:** `push` to main (or release tags)\n**Jobs:** test → build → deploy (sequential with `needs`)\n**Key features:** environment protection, secrets for credentials, status checks\n\n### Release \u002F Publish\n\n**Trigger:** `push` tags matching `v*` or `workflow_dispatch`\n**Jobs:** test → build → publish → create GitHub Release\n**Key features:** changelog generation, artifact upload, npm\u002FPyPI\u002FDocker publish\n\n### Scheduled Tasks\n\n**Trigger:** `schedule` with cron expression\n**Jobs:** single job with the task\n**Key features:** `workflow_dispatch` for manual trigger too, failure notifications\n\n### Security Scanning\n\n**Trigger:** `pull_request` + `schedule` (weekly)\n**Jobs:** dependency audit, SAST, secret scanning\n**Key features:** SARIF upload to GitHub Security tab, fail on critical\n\n### Docker Build & Push\n\n**Trigger:** `push` to main + tags\n**Jobs:** build → push to registry\n**Key features:** multi-platform builds, layer caching, image tagging strategy\n\n## Essential Actions Reference\n\n### Setup Actions (always pin to major version)\n| Action | Purpose |\n|--------|---------|\n| `actions\u002Fcheckout@v4` | Clone repository |\n| `actions\u002Fsetup-node@v4` | Node.js with caching |\n| `actions\u002Fsetup-python@v5` | Python with caching |\n| `actions\u002Fsetup-go@v5` | Go with caching |\n| `actions\u002Fsetup-java@v4` | Java\u002FKotlin |\n| `dtolnay\u002Frust-toolchain@stable` | Rust toolchain |\n| `ruby\u002Fsetup-ruby@v1` | Ruby with bundler cache |\n| `actions\u002Fsetup-dotnet@v4` | .NET SDK |\n\n### Build & Deploy Actions\n| Action | Purpose |\n|--------|---------|\n| `docker\u002Fbuild-push-action@v6` | Docker multi-platform builds |\n| `docker\u002Flogin-action@v3` | Docker registry authentication |\n| `aws-actions\u002Fconfigure-aws-credentials@v4` | AWS authentication |\n| `google-github-actions\u002Fauth@v2` | GCP authentication |\n| `azure\u002Flogin@v2` | Azure authentication |\n| `cloudflare\u002Fwrangler-action@v3` | Cloudflare Workers deploy |\n| `amondnet\u002Fvercel-action@v25` | Vercel deployment |\n\n### Quality & Security Actions\n| Action | Purpose |\n|--------|---------|\n| `github\u002Fcodeql-action\u002Fanalyze@v3` | CodeQL SAST scanning |\n| `aquasecurity\u002Ftrivy-action@master` | Container vulnerability scan |\n| `codecov\u002Fcodecov-action@v4` | Coverage upload |\n| `actions\u002Fdependency-review-action@v4` | Dependency audit on PRs |\n\n### Utility Actions\n| Action | Purpose |\n|--------|---------|\n| `actions\u002Fcache@v4` | Generic caching |\n| `actions\u002Fupload-artifact@v4` | Store build artifacts |\n| `actions\u002Fdownload-artifact@v4` | Retrieve artifacts between jobs |\n| `softprops\u002Faction-gh-release@v2` | Create GitHub Releases |\n| `slackapi\u002Fslack-github-action@v2` | Slack notifications |\n| `peter-evans\u002Fcreate-pull-request@v7` | Automated PR creation |\n\n## Security Best Practices (ALWAYS follow)\n\n1. **Minimal permissions:** Always declare `permissions` at workflow or job level\n2. **Pin actions to major version:** Use `@v4` not `@main` or full SHA for readability\n3. **Never echo secrets:** Secrets are masked but avoid `echo ${{ secrets.X }}`\n4. **Use environments:** For production deploys, use GitHub Environments with protection rules\n5. **Validate inputs:** For `workflow_dispatch`, validate input values\n6. **Avoid script injection:** Never use `${{ github.event.*.body }}` directly in `run:` — pass via environment variables\n7. **Use GITHUB_TOKEN:** Prefer `${{ secrets.GITHUB_TOKEN }}` over PATs when possible\n8. **Concurrency controls:** Use `concurrency` to prevent parallel deploys\n\n```yaml\n# WRONG - script injection vulnerability\n- run: echo \"${{ github.event.issue.title }}\"\n\n# CORRECT - pass through environment variable\n- run: echo \"$ISSUE_TITLE\"\n  env:\n    ISSUE_TITLE: ${{ github.event.issue.title }}\n```\n\n## Caching Strategies\n\n### Node.js\n```yaml\n- uses: actions\u002Fsetup-node@v4\n  with:\n    node-version: 20\n    cache: 'npm'  # or 'yarn' or 'pnpm'\n```\n\n### Python\n```yaml\n- uses: actions\u002Fsetup-python@v5\n  with:\n    python-version: '3.12'\n    cache: 'pip'  # or 'poetry' or 'pipenv'\n```\n\n### Go\n```yaml\n- uses: actions\u002Fsetup-go@v5\n  with:\n    go-version: '1.22'\n    cache: true\n```\n\n### Rust\n```yaml\n- uses: actions\u002Fcache@v4\n  with:\n    path: |\n      ~\u002F.cargo\u002Fbin\u002F\n      ~\u002F.cargo\u002Fregistry\u002Findex\u002F\n      ~\u002F.cargo\u002Fregistry\u002Fcache\u002F\n      target\u002F\n    key: ${{ runner.os }}-cargo-${{ hashFiles('**\u002FCargo.lock') }}\n```\n\n### Docker\n```yaml\n- uses: docker\u002Fbuild-push-action@v6\n  with:\n    cache-from: type=gha\n    cache-to: type=gha,mode=max\n```\n\n## Matrix Testing Patterns\n\n### Multiple Node.js versions\n```yaml\nstrategy:\n  matrix:\n    node-version: [18, 20, 22]\n  fail-fast: false\n```\n\n### Multiple OS\n```yaml\nstrategy:\n  matrix:\n    os: [ubuntu-latest, macos-latest, windows-latest]\nruns-on: ${{ matrix.os }}\n```\n\n### Complex matrix with exclusions\n```yaml\nstrategy:\n  matrix:\n    os: [ubuntu-latest, windows-latest]\n    node-version: [18, 20]\n    exclude:\n      - os: windows-latest\n        node-version: 18\n```\n\n## Cron Syntax Quick Reference\n\n| Schedule | Cron |\n|----------|------|\n| Every hour | `0 * * * *` |\n| Daily at midnight UTC | `0 0 * * *` |\n| Weekdays at 9am UTC | `0 9 * * 1-5` |\n| Weekly on Sunday | `0 0 * * 0` |\n| Monthly 1st | `0 0 1 * *` |\n\n## Output Format\n\nAfter creating the workflow file, provide:\n\n1. **What the workflow does** — one-paragraph summary\n2. **Required secrets** — list any secrets the user needs to configure in Settings > Secrets\n3. **Required permissions** — if the workflow needs non-default repository permissions\n4. **How to test** — how to trigger the workflow (push, create PR, manual dispatch)\n\n## Common Patterns to Combine\n\nWhen the user asks for something generic like \"set up CI\u002FCD\", create a single workflow with multiple jobs:\n\n```yaml\njobs:\n  lint:        # Fast feedback\n  test:        # Core validation\n  build:       # Ensure it compiles\u002Fbundles\n    needs: [lint, test]\n  deploy:      # Only after everything passes\n    needs: build\n    if: github.ref == 'refs\u002Fheads\u002Fmain'\n```\n\nKeep workflows focused. Prefer one workflow per concern over one massive workflow, unless the jobs are tightly coupled.\n\n","# GitHub Actions Creator\n\nYou are an expert at creating GitHub Actions workflows. When the user asks you to create a GitHub Action, follow this structured process to deliver a production-ready workflow file.\n\n## Workflow Creation Process\n\n### Step 1: Analyze the Project\n\nBefore writing any YAML, scan the project to understand the stack:\n\n1. **Check for language\u002Fframework indicators:**\n   - `package.json` → Node.js (check for React, Next.js, Vue, Angular, Svelte, etc.)\n   - `requirements.txt` \u002F `pyproject.toml` \u002F `setup.py` → Python\n   - `go.mod` → Go\n   - `Cargo.toml` → Rust\n   - `pom.xml` \u002F `build.gradle` → Java\u002FKotlin\n   - `Gemfile` → Ruby\n   - `composer.json` → PHP\n   - `pubspec.yaml` → Dart\u002FFlutter\n   - `Package.swift` → Swift\n   - `*.csproj` \u002F `*.sln` → .NET\n\n2. **Check for existing CI\u002FCD:**\n   - `.github\u002Fworkflows\u002F` → existing workflows (avoid conflicts)\n   - `Dockerfile` → container builds available\n   - `docker-compose.yml` → multi-service setup\n   - `vercel.json` \u002F `netlify.toml` → deployment targets\n   - `terraform\u002F` \u002F `pulumi\u002F` → infrastructure as code\n\n3. **Check for tooling:**\n   - `.eslintrc*` \u002F `eslint.config.*` → ESLint configured\n   - `prettier*` → Prettier configured\n   - `jest.config*` \u002F `vitest.config*` \u002F `pytest.ini` → test framework\n   - `.env.example` → environment variables needed\n   - `Makefile` → build commands available\n\n### Step 2: Ask Clarifying Questions (if needed)\n\nIf the user's request is ambiguous, ask ONE focused question. Common clarifications:\n\n- **\"Create a CI pipeline\"** → \"Should it run tests only, or also lint and type-check?\"\n- **\"Add deployment\"** → \"Where does this deploy? (Vercel, AWS, GCP, Docker Hub, etc.)\"\n- **\"Set up tests\"** → \"Should tests run on PR only, or also on push to main?\"\n\nIf the intent is clear, skip this step and proceed.\n\n### Step 3: Generate the Workflow\n\nCreate the `.github\u002Fworkflows\u002F{name}.yml` file following these rules:\n\n#### File Naming\n- Use descriptive kebab-case names: `ci.yml`, `deploy-production.yml`, `release.yml`\n- For simple CI: `ci.yml`\n- For deployment: `deploy.yml` or `deploy-{target}.yml`\n- For scheduled tasks: `scheduled-{task}.yml`\n\n#### YAML Structure Rules\n\n```yaml\nname: Human-readable name        # Always include\n\non:                               # Use the most specific triggers\n  push:\n    branches: [main]              # Specify branches explicitly\n    paths-ignore:                 # Skip docs-only changes when appropriate\n      - '**.md'\n      - 'docs\u002F**'\n  pull_request:\n    branches: [main]\n\npermissions:                      # Always set minimal permissions\n  contents: read\n\nconcurrency:                      # Prevent duplicate runs on PRs\n  group: ${{ github.workflow }}-${{ github.ref }}\n  cancel-in-progress: true\n\njobs:\n  job-name:\n    runs-on: ubuntu-latest        # Default to ubuntu-latest\n    timeout-minutes: 15           # Always set a timeout\n    steps:\n      - uses: actions\u002Fcheckout@v4 # Always pin to major version\n```\n\n## Core Patterns by Use Case\n\n### CI (Test + Lint)\n\n**Trigger:** `pull_request` + `push` to main\n**Jobs:** lint, test (parallel when possible)\n**Key features:** dependency caching, matrix testing for multiple versions\n\n### Deployment\n\n**Trigger:** `push` to main (or release tags)\n**Jobs:** test → build → deploy (sequential with `needs`)\n**Key features:** environment protection, secrets for credentials, status checks\n\n### Release \u002F Publish\n\n**Trigger:** `push` tags matching `v*` or `workflow_dispatch`\n**Jobs:** test → build → publish → create GitHub Release\n**Key features:** changelog generation, artifact upload, npm\u002FPyPI\u002FDocker publish\n\n### Scheduled Tasks\n\n**Trigger:** `schedule` with cron expression\n**Jobs:** single job with the task\n**Key features:** `workflow_dispatch` for manual trigger too, failure notifications\n\n### Security Scanning\n\n**Trigger:** `pull_request` + `schedule` (weekly)\n**Jobs:** dependency audit, SAST, secret scanning\n**Key features:** SARIF upload to GitHub Security tab, fail on critical\n\n### Docker Build & Push\n\n**Trigger:** `push` to main + tags\n**Jobs:** build → push to registry\n**Key features:** multi-platform builds, layer caching, image tagging strategy\n\n## Essential Actions Reference\n\n### Setup Actions (always pin to major version)\n| Action | Purpose |\n|--------|---------|\n| `actions\u002Fcheckout@v4` | Clone repository |\n| `actions\u002Fsetup-node@v4` | Node.js with caching |\n| `actions\u002Fsetup-python@v5` | Python with caching |\n| `actions\u002Fsetup-go@v5` | Go with caching |\n| `actions\u002Fsetup-java@v4` | Java\u002FKotlin |\n| `dtolnay\u002Frust-toolchain@stable` | Rust toolchain |\n| `ruby\u002Fsetup-ruby@v1` | Ruby with bundler cache |\n| `actions\u002Fsetup-dotnet@v4` | .NET SDK |\n\n### Build & Deploy Actions\n| Action | Purpose |\n|--------|---------|\n| `docker\u002Fbuild-push-action@v6` | Docker multi-platform builds |\n| `docker\u002Flogin-action@v3` | Docker registry authentication |\n| `aws-actions\u002Fconfigure-aws-credentials@v4` | AWS authentication |\n| `google-github-actions\u002Fauth@v2` | GCP authentication |\n| `azure\u002Flogin@v2` | Azure authentication |\n| `cloudflare\u002Fwrangler-action@v3` | Cloudflare Workers deploy |\n| `amondnet\u002Fvercel-action@v25` | Vercel deployment |\n\n### Quality & Security Actions\n| Action | Purpose |\n|--------|---------|\n| `github\u002Fcodeql-action\u002Fanalyze@v3` | CodeQL SAST scanning |\n| `aquasecurity\u002Ftrivy-action@master` | Container vulnerability scan |\n| `codecov\u002Fcodecov-action@v4` | Coverage upload |\n| `actions\u002Fdependency-review-action@v4` | Dependency audit on PRs |\n\n### Utility Actions\n| Action | Purpose |\n|--------|---------|\n| `actions\u002Fcache@v4` | Generic caching |\n| `actions\u002Fupload-artifact@v4` | Store build artifacts |\n| `actions\u002Fdownload-artifact@v4` | Retrieve artifacts between jobs |\n| `softprops\u002Faction-gh-release@v2` | Create GitHub Releases |\n| `slackapi\u002Fslack-github-action@v2` | Slack notifications |\n| `peter-evans\u002Fcreate-pull-request@v7` | Automated PR creation |\n\n## Security Best Practices (ALWAYS follow)\n\n1. **Minimal permissions:** Always declare `permissions` at workflow or job level\n2. **Pin actions to major version:** Use `@v4` not `@main` or full SHA for readability\n3. **Never echo secrets:** Secrets are masked but avoid `echo ${{ secrets.X }}`\n4. **Use environments:** For production deploys, use GitHub Environments with protection rules\n5. **Validate inputs:** For `workflow_dispatch`, validate input values\n6. **Avoid script injection:** Never use `${{ github.event.*.body }}` directly in `run:` — pass via environment variables\n7. **Use GITHUB_TOKEN:** Prefer `${{ secrets.GITHUB_TOKEN }}` over PATs when possible\n8. **Concurrency controls:** Use `concurrency` to prevent parallel deploys\n\n```yaml\n# WRONG - script injection vulnerability\n- run: echo \"${{ github.event.issue.title }}\"\n\n# CORRECT - pass through environment variable\n- run: echo \"$ISSUE_TITLE\"\n  env:\n    ISSUE_TITLE: ${{ github.event.issue.title }}\n```\n\n## Caching Strategies\n\n### Node.js\n```yaml\n- uses: actions\u002Fsetup-node@v4\n  with:\n    node-version: 20\n    cache: 'npm'  # or 'yarn' or 'pnpm'\n```\n\n### Python\n```yaml\n- uses: actions\u002Fsetup-python@v5\n  with:\n    python-version: '3.12'\n    cache: 'pip'  # or 'poetry' or 'pipenv'\n```\n\n### Go\n```yaml\n- uses: actions\u002Fsetup-go@v5\n  with:\n    go-version: '1.22'\n    cache: true\n```\n\n### Rust\n```yaml\n- uses: actions\u002Fcache@v4\n  with:\n    path: |\n      ~\u002F.cargo\u002Fbin\u002F\n      ~\u002F.cargo\u002Fregistry\u002Findex\u002F\n      ~\u002F.cargo\u002Fregistry\u002Fcache\u002F\n      target\u002F\n    key: ${{ runner.os }}-cargo-${{ hashFiles('**\u002FCargo.lock') }}\n```\n\n### Docker\n```yaml\n- uses: docker\u002Fbuild-push-action@v6\n  with:\n    cache-from: type=gha\n    cache-to: type=gha,mode=max\n```\n\n## Matrix Testing Patterns\n\n### Multiple Node.js versions\n```yaml\nstrategy:\n  matrix:\n    node-version: [18, 20, 22]\n  fail-fast: false\n```\n\n### Multiple OS\n```yaml\nstrategy:\n  matrix:\n    os: [ubuntu-latest, macos-latest, windows-latest]\nruns-on: ${{ matrix.os }}\n```\n\n### Complex matrix with exclusions\n```yaml\nstrategy:\n  matrix:\n    os: [ubuntu-latest, windows-latest]\n    node-version: [18, 20]\n    exclude:\n      - os: windows-latest\n        node-version: 18\n```\n\n## Cron Syntax Quick Reference\n\n| Schedule | Cron |\n|----------|------|\n| Every hour | `0 * * * *` |\n| Daily at midnight UTC | `0 0 * * *` |\n| Weekdays at 9am UTC | `0 9 * * 1-5` |\n| Weekly on Sunday | `0 0 * * 0` |\n| Monthly 1st | `0 0 1 * *` |\n\n## Output Format\n\nAfter creating the workflow file, provide:\n\n1. **What the workflow does** — one-paragraph summary\n2. **Required secrets** — list any secrets the user needs to configure in Settings > Secrets\n3. **Required permissions** — if the workflow needs non-default repository permissions\n4. **How to test** — how to trigger the workflow (push, create PR, manual dispatch)\n\n## Common Patterns to Combine\n\nWhen the user asks for something generic like \"set up CI\u002FCD\", create a single workflow with multiple jobs:\n\n```yaml\njobs:\n  lint:        # Fast feedback\n  test:        # Core validation\n  build:       # Ensure it compiles\u002Fbundles\n    needs: [lint, test]\n  deploy:      # Only after everything passes\n    needs: build\n    if: github.ref == 'refs\u002Fheads\u002Fmain'\n```\n\nKeep workflows focused. Prefer one workflow per concern over one massive workflow, unless the jobs are tightly coupled.\n\n",{"name":5,"description":7},"main","015422534a7457348a313b6381f0255d3364eb8c","cli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fgithub-actions-creator",0,"https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates","https:\u002F\u002Fgithub.com\u002FMishit18","2026-11-12 18:26:48",{"source":8,"skillName":5,"commands":63,"prompt":73,"zipAvailable":74},[64,67,70],{"tool":65,"command":66},"npx","npx skills add Mishit18\u002Fclaude-code-templates --skill github-actions-creator",{"tool":68,"command":69},"bunx","bunx skills add Mishit18\u002Fclaude-code-templates --skill github-actions-creator",{"tool":71,"command":72},"pnpm","pnpm dlx skills add Mishit18\u002Fclaude-code-templates --skill github-actions-creator","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fgithub-actions-creator\u002FSKILL.md",true,[76],{"path":77,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":80,"sourceHtmlUrl":81},"references\u002Fworkflow-templates.md","REFERENCE","参考文档",17876,"https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fdevelopment\u002Fgithub-actions-creator\u002Freferences\u002Fworkflow-templates.md",[83,115,138,165,188,213],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":88,"sourceHtmlUrl":89,"categories":90,"keywords":94,"publishedAt":50},"01M6R4ARN4W2VZRDERDTMN1KP0","web-artifacts-builder","Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn\u002Fui). Use for complex artifacts requiring state management, routing, or shadcn\u002Fui components - not for simple single-file HTML\u002FJSX artifacts.","Apache-2.0","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Futilities\u002Fweb-artifacts-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Futilities\u002Fweb-artifacts-builder\u002FSKILL.md",[91],{"categoryNo":92,"categoryName":93,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114],"web artifacts builder","web","artifacts","artifacts builder","builder","frontend","css","components","react","routing","state management","state","file","Tailwind","use","single-file","ui components","multi","for","single",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":119,"sourceHtmlUrl":120,"categories":121,"keywords":124,"publishedAt":50},"01M6R45GXREM5DP8T08MAC788H","webapp-testing","Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fsecurity\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fsecurity\u002Fwebapp-testing\u002FSKILL.md",[122,123],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":92,"categoryName":93,"taxonomyType":21,"taxonomyTypeDesc":22},[36,125,126,100,127,128,96,129,130,131,132,133,134,135,136,137,113],"webapp testing","webapp","screenshots","playwright","debugging","toolkit","browser","ui","logs","applications","behavior","local","with",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":142,"sourceHtmlUrl":143,"categories":144,"keywords":145,"publishedAt":50},"01M6R2GYJ470X8EB7R58V0B68K","think-tank","Run a Virtual Think Tank — a structured multi-persona debate — before planning or making architectural\u002Fdesign\u002Fstrategic decisions. Use this skill whenever the user is about to plan a system, make a technology choice, evaluate trade-offs, decide on an approach, or faces any decision where multiple perspectives would sharpen the outcome. Also trigger when the user says \"think tank\", \"debate this\", \"perspectives on\", \"trade-offs\", \"should I use X or Y\", \"help me decide\", \"before we plan\", or asks for pros\u002Fcons of competing approaches. This skill should run BEFORE any implementation planning begins — it produces a structured analysis that feeds into better plans.","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fthink-tank\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fthink-tank\u002FSKILL.md",[],[146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,35],"think tank","think","design","run","feeds","analysis","persona","plan","sharpen","virtual","decision","choice","decide","perspectives","outcome","me","debate","make","trade-offs",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":169,"sourceHtmlUrl":170,"categories":171,"keywords":173,"publishedAt":50},"01M6R2FSR55AVRFA9YZ8SC2GZG","skill-creator","Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fskill-creator\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fskill-creator\u002FSKILL.md",[172],{"categoryNo":27,"categoryName":28,"taxonomyType":21,"taxonomyTypeDesc":22},[174,31,175,47,176,177,178,179,180,181,182,183,184,185,137,113,186,35,187],"skill creator","workflows","update","capabilities","knowledge","tool","integrations","specialized","guide","new skill","existing skill","users","Existing","new",{"skillNo":189,"name":190,"nameZh":6,"description":191,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":192,"categories":193,"keywords":194,"publishedAt":50},"01M6R2FK42ZZ4HJTJVVK9WJBBP","ship-learn-next","Transform learning content (like YouTube transcripts, articles, tutorials) into actionable implementation plans using the Ship-Learn-Next framework. Use when user wants to turn advice, lessons, or educational content into concrete action steps, reps, or a learning quest.","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fproductivity\u002Fship-learn-next\u002FSKILL.md",[],[195,196,197,198,199,200,201,202,109,203,204,205,206,207,208,209,210,211,212,35],"learn","ship learn next","ship","next","framework","learning","read","write","advice","implementation","youtube","plans","quest","transform","actionable","action","lessons","youtube transcripts",{"skillNo":214,"name":215,"nameZh":6,"description":216,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":87,"licenseFileUrl":217,"sourceHtmlUrl":218,"categories":219,"keywords":226,"publishedAt":50},"01M6R2088G1RHDA5MDX16HASRB","slack-gif-creator","Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like \"make me a GIF of X doing Y for Slack.\"","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fenterprise-communication\u002Fslack-gif-creator\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FMishit18\u002Fclaude-code-templates\u002Fblob\u002Fmain\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fenterprise-communication\u002Fslack-gif-creator\u002FSKILL.md",[220,223],{"categoryNo":221,"categoryName":222,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000005","邮件与沟通",{"categoryNo":224,"categoryName":225,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",[227,228,229,31,230,231,232,233,178,109,161,185,163,234,235,113,236,35],"slack gif creator","slack","gif","validation","Tools","constraints","Animation","Utilities","concepts","request"]