Authors, reviews, installs, and debugs GitHub Agentic Workflows in repositories, including workflow markdown, frontmatter, gh aw compile and run flows, safe outputs, security guardrails, and operational patterns. Use when creating or maintaining GH-AW automation. Don't use for standard deterministic GitHub Actions YAML, generic CI pipelines, or non-GitHub automation systems.
77
96%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
Step 1: Identify the repository state
.github/workflows/, .github/agents/, existing .lock.yml files, and any gh aw usage.node skills/github-agentic-workflows/scripts/find-gh-aw-targets.mjs . when a Node runtime is available.gh aw version before making compiler-sensitive decisions so the workflow authoring path matches the installed CLI behavior.references/authoring.md before editing.Step 2: Choose the working mode
references/examples.md when the task needs a starting pattern for scheduled reports, issue or PR triage, orchestration, or agent handoff.references/security-and-operations.md when the workflow needs safe outputs, network policy, authentication, lockdown, threat detection, or run observability.references/troubleshooting.md when the workflow fails to compile, install, authenticate, execute safe outputs, or access tools.Step 3: Author or revise the workflow source
.github/workflows/<workflow-name>.md.assets/workflow.template.md as the base shape when creating a new workflow.permissions: read-only unless the workflow truly needs broader GitHub Actions permissions outside the agentic section.safe-outputs: for comments, issues, labels, PRs, agent assignment, and orchestration instead of granting direct write access to the agent.noop when no action is required.tools: and toolsets: minimal and specific to the task.engine: copilot unless the task explicitly requires another engine and the repository is already prepared for that engine's authentication model.network: with least privilege. Prefer ecosystem identifiers such as node, python, or github over individual registry domains when the compiler supports them.max-ai-credits: when the workflow runs on a schedule or could trigger large agent turns, to cap per-run AI Credits (AIC) spend before it drifts upward.${{ steps.<id>.outputs.* }} placeholders reaching the agent-visible markdown body in real runs. If prompt instructions depend on runtime values, write them into a deterministic local file during setup and tell the agent to read that file..github/aw/ as transient GH-AW runtime and compiler scratch space during local compile, validate, or trial flows unless the workflow intentionally uses checked-in files from that path.Step 4: Configure repository prerequisites and authentication
references/authoring.md before first-time repository setup.gh aw init when the repository is not configured for GH-AW authoring and the user wants persistent setup.gh aw secrets bootstrap or gh aw secrets set.COPILOT_GITHUB_TOKEN for Copilot engine authentication.COPILOT_GITHUB_TOKEN; a general gho_... OAuth token may pass secret checks but still fail real Copilot execution.gh aw trial, verify that the host repository also has the required engine secret. Secrets from the logical or source repository are not copied automatically into the temporary or reusable host repo.gh aw version after extension upgrades or reinstall paths so the repository guidance and compiler behavior stay aligned.actions, contents, and pull-requests scopes or the run can fail before agent execution starts.Step 5: Validate, compile, and execute
gh aw fix --write when the workflow uses deprecated fields or the compiler points to codemod-able drift.gh aw validate --strict before treating a workflow as ready.gh aw compile --verbose so warnings and generated-version changes are visible.gh aw compile after validation succeeds and commit both the .md source and the generated .lock.yml file.gh aw run <workflow> --dry-run to validate remote dispatch behavior, especially when you suspect branch, trigger, or workflow-discovery problems.gh aw trial ./.github/workflows/<workflow>.md when you need to execute a local workflow source before pushing it. The explicit ./ path matters; without it, the CLI may parse the argument as a repository spec instead of a local file.gh aw run <workflow> for direct execution only after the workflow source or lockfile actually exists on the target branch.gh aw status, gh aw logs, gh aw audit, and gh aw health to review state, failures, cost, tool usage, and success trends after changes.Step 6: Operate and improve professionally
gh-aw version deliberately and update workflows through gh aw update or gh aw upgrade instead of ad hoc copy-paste.gh extension install github/gh-aw fails, use the standalone installer path documented in references/troubleshooting.md.gh aw version and validate against that version before rewriting the workflow shape.gh aw trial rejects .github/workflows/<name>.md as an invalid repository spec, retry with an explicit local path such as ./.github/workflows/<name>.md.permissions: inheritance before changing the worker logic.cancel-in-progress is false.Validate COPILOT_GITHUB_TOKEN secret, inspect the host repository with gh secret list -R <host-repo>. The source repository's secrets are not inherited by the trial host.gh aw trial --force-delete-host-repo-before fails, confirm you have admin rights on the host repository and that the current GitHub auth token includes delete_repo scope.gh aw compile, gh aw validate, or gh aw trial commands create .github/aw/ files such as actions-lock.json or logs, treat them as transient byproducts and remove them before commit unless the repository intentionally keeps them.noop when no write action is needed.gh aw mcp inspect fails on a compiled scheduled workflow source with a fuzzy schedule parsing error, treat that as an inspection-path limitation first. Re-run gh aw compile, prefer installed-workflow or run-log based debugging, and do not assume the workflow itself is invalid if validation and compile already passed.gh aw v0.58.3, engine.max-turns is not supported for Copilot, bash must be true, false, or an allowlist, and bare edit: / web-fetch: keys are accepted where boolean values are not.(redacted) or tools cannot reach required services, tighten and expand network.allowed deliberately rather than disabling the firewall.0ddb6a6
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.