Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11To start using reusable workflows in GitHub Actions, create a workflow file directly in .github/workflows, expose it with on: workflow_call, then call it from a job in another workflow using uses. Define any inputs and secrets the called workflow needs, pass them explicitly, and check repository access and token permissions—especially when the workflows live in different repositories.
1. Create a workflow that can be called
Save the reusable workflow as a YAML file directly in the repository’s .github/workflows directory. Reusable workflow files cannot be placed in subdirectories beneath .github/workflows. Add workflow_call to its on section so GitHub can recognize it as callable. See GitHub’s reusable workflow guide.
This minimal example accepts a required string input and uses it in a job:
# .github/workflows/build-reusable.yml
name: Reusable build
on:
workflow_call:
inputs:
target:
required: true
type: string
jobs:
build:
runs-on: ubuntu-latest
steps:
- run: echo "Building ${{ inputs.target }}"
The example illustrates syntax; adapt its job, runner, input, and permissions to your repository.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →#1 Best Overall
2. Define the workflow’s input and secret interface
Declare inputs and secrets under on.workflow_call. Each input has a type—boolean, number, or string—and can be marked as required. In the called workflow, read declared values through the inputs and secrets contexts.
Make the interface explicit: expose only the configuration and credentials the called workflow actually needs. Caller workflow-level env values do not automatically carry over; pass needed values through supported inputs or outputs, or use appropriate organization, repository, or environment variables. The workflow configuration reference describes these constraints.
Rank #2
3. Call the reusable workflow from a job
In the caller workflow, add a job with a job-level uses reference. A reusable workflow is not called as a step inside another job.
# .github/workflows/ci.yml
name: CI
on: [push]
jobs:
build:
uses: ./.github/workflows/build-reusable.yml
with:
target: app
Use the local path when both workflows are in the same repository. For a workflow stored in another repository, use owner/repo/.github/workflows/file.yml@ref, where ref identifies a branch, tag, or commit. Review GitHub’s calling syntax and reference guidance.
The job that calls a reusable workflow supports a constrained set of job keys. Do not assume that any ordinary job-level setting can be added alongside uses; check the reference for which keys are supported.
4. Pass inputs and secrets deliberately
Provide declared inputs with with, and pass declared secrets with secrets. For example, a caller can map a secret by name rather than granting the called workflow access to every caller secret:
jobs:
deploy:
uses: ./.github/workflows/deploy-reusable.yml
with:
target: production
secrets:
deploy_token: ${{ secrets.DEPLOY_TOKEN }}
secrets: inherit is available for calls within the same organization or enterprise, but named secrets are preferable when the callee needs only a subset. In a chain of reusable workflows, a secret reaches the next workflow only if the intermediate workflow passes it onward. Environment secrets are not passed through the caller’s workflow_call interface; if a called job targets an environment, that environment’s own secret behavior applies. See GitHub’s guidance on secrets and outputs.
5. Check access, permissions, and runner context
- Confirm that Actions and reusable workflows are allowed by the caller repository’s settings. If the called workflow is in a private repository, its access policy must permit the caller repository to use it.
- Review
GITHUB_TOKENpermissions across the call chain. A called workflow can retain or restrict the permissions it receives, but it cannot elevate them. - GitHub evaluates GitHub-hosted runner selection and billing in the caller’s context. Self-hosted runner use depends on ownership and availability conditions.
These access and permission rules are covered in the GitHub Actions configuration reference.
Best Value
6. Choose a version reference for cross-repository calls
A branch or tag reference can make updates easier, but it can move. Pinning the called workflow to a commit SHA gives the caller a fixed version and is GitHub’s safest option for stability and security. Select the SHA for the version you intend to use, then update it deliberately when adopting a newer version. The calling syntax documentation covers supported references.
Reusable workflow or composite action?
| Choice | Called from | What it can bundle | Secrets |
|---|---|---|---|
| Reusable workflow | A job, using uses |
A workflow that can contain multiple jobs | Can accept secrets through its declared interface |
| Composite action | A step inside a job | A sequence of steps; it does not contain jobs | Cannot use secrets |
Choose a reusable workflow when the shared unit is a complete workflow or multiple jobs. Choose a composite action when you want to package steps for use within an existing job. GitHub explains the distinction in its workflow reuse concepts.
Keep nesting within platform limits
GitHub’s current GitHub.com documentation allows up to 10 connected workflow levels and up to 50 unique reusable workflows from a single workflow file. Treat these as platform limits, not design goals: a shorter call chain is generally easier to understand and maintain. GitHub documents the limits in its workflow configuration reference.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.

