Skip to content

Add Update Astro agentic workflow#21389

Merged
pelikhan merged 2 commits intomainfrom
copilot/update-astro-dependencies
Mar 17, 2026
Merged

Add Update Astro agentic workflow#21389
pelikhan merged 2 commits intomainfrom
copilot/update-astro-dependencies

Conversation

Copy link
Contributor

Copilot AI commented Mar 17, 2026

Adds a daily agentic workflow to keep Astro and its ecosystem packages current in docs/, handling migration guides and build verification before opening a PR.

Workflow structure

  • Pre-check job (check_updates): runs npx npm-check-updates --jsonUpgraded in docs/; sets has_updates output — agent job is skipped entirely if nothing needs updating via if: needs.check_updates.outputs.has_updates == 'true'
  • Agent job: updates package.json + package-lock.json, fetches migration guides for Astro/Starlight on major/minor bumps via web-fetch, applies any required code changes, verifies npm run build passes, then opens a PR
  • protected-files: allowed — permits committing package.json / package-lock.json which are otherwise blocked
  • network.allowed: [defaults, node] — grants npm registry and docs site access

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/graphql
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw .cfg 64/pkg/tool/linu--show-toplevel git rev-�� --show-toplevel 64/pkg/tool/linuTest User /usr/bin/git --noprofile (http block)
  • https://api.github.com/orgs/test-owner/actions/secrets
    • Triggering command: /usr/bin/gh gh api /orgs/test-owner/actions/secrets --jq .secrets[].name get --local n-dir/bash credential.usern/opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet kd/fDhwbm3SRiwEq-atomic (http block)
  • https://api.github.com/repos/actions/ai-inference/git/ref/tags/v1
    • Triggering command: /usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq .object.sha /tmp/TestHashConsistency_WithImports3840564206/001/main.md bash /usr/bin/git ../pkg/workflow/git (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v3
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha t0 /tmp/go-build3974454460/b255/vet.cfg 0/x64/bin/node m0s code-simplifier.rev-parse (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v5
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha ithub/workflows .cfg 64/pkg/tool/linux_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel x_amd64/vet /opt/hostedtoolcache/node/24.14.0/x64/bin/node */*.ts' '**/*.jsgit k/gh-aw/gh-aw/.grev-parse x_amd64/vet /opt/hostedtoolcache/node/24.14.0/x64/bin/node /tmp�� No expressions here x_amd64/vet /usr/bin/git celain --ignore-git k/gh-aw/gh-aw/.grev-parse 64/pkg/tool/linu--show-toplevel git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel 64/pkg/tool/linux_amd64/compile /usr/bin/git 7817/001/stabiligit 4454460/b013/vetrev-parse .cfg git rev-�� --show-toplevel ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/bin/git CuLTWUkAW 4454460/b120/vetrev-parse 64/pkg/tool/linu--show-toplevel git (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha k/gh-aw/gh-aw/scripts/lint_error_messages.go k/gh-aw/gh-aw/scripts/lint_error_messages_test.go /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile on' --ignore-patgit ithub/workflows/rev-parse ithub/workflows/--show-toplevel /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile @/tm�� ithub/workflows/-bool ithub/workflows/-buildtags /usr/bin/git submodules | heagit ithub/workflows/rev-parse x_amd64/vet git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel ithub/workflows//tmp/go-build3974454460/b249/vet.cfg ache/node/24.14.0/x64/bin/node ithub/workflows/git ithub/workflows/rev-parse ithub/workflows/--show-toplevel ache/node/24.14.0/x64/bin/node -852�� --show-toplevel ithub/workflows/-buildtags /usr/bin/git submodules | heagit ithub/workflows/rev-parse x_amd64/vet git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel 64/pkg/tool/linux_amd64/vet /usr/bin/git te '../../../**/git --ignore-submodurev-parse ache/go/1.25.0/x--show-toplevel git rev-�� --show-toplevel ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/bin/git se 4454460/b039/vetrev-parse .cfg git (http block)
  • https://api.github.com/repos/actions/github-script/git/ref/tags/v8
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha get --local ache/go/1.25.0/x64/bin/bash credential.helpe/opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha go1.25.0 -c=4 -nolocalimports -importcfg /tmp/go-build3974454460/b392/importcfg -pack /tmp/go-build3974454460/b392/_testmain.go ode_�� --verify main ache/uv/0.10.11/x86_64/bash (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha go1.25.0 -c=4 -nolocalimports -importcfg /tmp/go-build3974454460/b395/importcfg -pack /tmp/go-build3974454460/b395/_testmain.go fetc�� origin main p/bin/bash (http block)
  • https://api.github.com/repos/actions/setup-go/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha xterm-color 4454460/b436/_testmain.go ache/node/24.14.0/x64/bin/node on' --ignore-patgit ithub/workflows/rev-parse ithub/workflows/--show-toplevel ache/node/24.14.0/x64/bin/node s-19�� .actor }}, Unsafe: ${{ secrets.TOKEN }} -importcfg /usr/bin/git -s -w -buildmode=exe git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha --show-toplevel git /usr/bin/git --show-toplevel -tests /usr/bin/git git rev-�� --show-toplevel git /usr/bin/git --show-toplevel git /usr/bin/git git (http block)
  • https://api.github.com/repos/actions/setup-node/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha xterm-color ithub/workflows//tmp/go-build3974454460/b236/vet.cfg ache/node/24.14.0/x64/bin/node on' --ignore-patgit ithub/workflows/rev-parse ithub/workflows/--show-toplevel ache/node/24.14.0/x64/bin/node s-56�� ere ithub/workflows/-buildtags /usr/bin/git submodules | heagit ithub/workflows/rev-parse x_amd64/vet git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha --show-toplevel git /usr/bin/git --show-toplevel -tests /usr/bin/git git rev-�� --show-toplevel (http block)
  • https://api.github.com/repos/actions/setup-node/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq .object.sha g/timeutil/formaGOINSECURE g/timeutil/formaGOMOD 64/bin/go GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/xGO111MODULE env 0919631/b409/_pkGOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/actions/upload-artifact/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/upload-artifact/git/ref/tags/v4 --jq .object.sha 4454460/b404/_pkg_.a /tmp/go-build3974454460/b130/vet.cfg 4454460/b404=> (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.0.0 --jq .object.sha 4454460/b408/_pkg_.a -buildtags ache/go/1.25.0/x64/pkg/tool/linux_amd64/link -errorsas b/gh-aw/pkg/parsrev-parse -nilfunc ache/go/1.25.0/x64/pkg/tool/linux_amd64/link -ato�� 4454460/b409/parser.test -buildtags 4454460/b409/importcfg.link -errorsas -ifaceassert -nilfunc Fbi6PKNq9KBdT/15F745ljgCObM1QlOsUS/HDZzJU5D_cwF0wGv7Hnd/okf9o2VFbi6PKNq9KBdT (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.2.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.2.3 --jq .object.sha 4454460/b407/_pkg_.a /tmp/go-build3974454460/b247/vet.cfg 4454460/b407=> (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/1/artifacts
    • Triggering command: /usr/bin/gh gh run download 1 --dir test-logs/run-1 (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12345/artifacts
    • Triggering command: /usr/bin/gh gh run download 12345 --dir test-logs/run-12345 (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12346/artifacts
    • Triggering command: /usr/bin/gh gh run download 12346 --dir test-logs/run-12346 (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/2/artifacts
    • Triggering command: /usr/bin/gh gh run download 2 --dir test-logs/run-2 = get && echo "****** 64/pkg/tool/linux_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/3/artifacts
    • Triggering command: /usr/bin/gh gh run download 3 --dir test-logs/run-3 (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/4/artifacts
    • Triggering command: /usr/bin/gh gh run download 4 --dir test-logs/run-4 om/github/gh-aw 64/pkg/tool/linux_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/5/artifacts
    • Triggering command: /usr/bin/gh gh run download 5 --dir test-logs/run-5 = get && echo "****** 64/pkg/tool/linux_amd64/link (http block)
  • https://api.github.com/repos/github/gh-aw/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path get --local bin/bash user.name (http block)
    • Triggering command: /usr/bin/gh gh run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 100 -pack /home/REDACTED/work/gh-aw/gh-aw/pkg/sliceutil/sliceutil.go /home/REDACTED/work/gh-aw/gh-aw/pkg/sliceutil/sliceutil_test.go -rs 626-e0db08df7383/golden.go (http block)
    • Triggering command: /usr/bin/gh gh run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 6 /home/REDACTED/worconfig /home/REDACTED/wor--get x_amd64/link -5 /home/REDACTED/work/gh-aw/gh-aw/.gremote.origin.url .cfg 64/pkg/tool/linux_amd64/vet nore /home/REDACTED/worrev-parse /home/REDACTED/wor--git-dir ly/WZkHlpjvgV8BFPU0j_Ob/yvR-6Vds--jq (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha s/update-astro.m--detach (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.2.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.2.3 --jq .object.sha on' --ignore-path ../../../.pret.prettierignore ithub/workflows/daily-cli-tools---log-level=error ode_modules/.bin/node (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v2.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha on' --ignore-path ../../../.pret.prettierignore ithub/workflows/daily-cli-tools---log-level=error es/.bin/node (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha on' --ignore-path ../../../.prettierignore ithub/workflows/code-simplifier.md ithub/workflows/constraint-solving-potd.md ithub/workflows//opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet ithub/workflows/-atomic ithub/workflows/-bool ithub/workflows/-buildtags ithu�� submodules | hea-errorsas ithub/workflows/-ifaceassert x_amd64/vet k/gh-aw/gh-aw/.ggit k/gh-aw/gh-aw/.g-C k/gh-aw/gh-aw/.g/tmp/gh-aw-test-runs/20260317-125900-13257/test-4255661736/.github/workflows x_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha on' --ignore-path ../../../.prettierignore ithub/workflows/code-simplifier.md odules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node ithub/workflows//opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet ithub/workflows/-unsafeptr=false ithub/workflows/-unreachable=false ithub/workflows//tmp/go-build3974454460/b069/vet.cfg ithu�� submodules | head -n 10 ithub/workflows/daily-copilot-token-report.md x_amd64/vet k/gh-aw/gh-aw/.ggit k/gh-aw/gh-aw/.grev-parse k/gh-aw/gh-aw/.g--show-toplevel x_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v3.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v3.0.0 --jq .object.sha on' --ignore-path ../../../.prettierignore ithub/workflows/daily-cli-tools-tester.md de/node/bin/sh (http block)
  • https://api.github.com/repos/nonexistent/action/git/ref/tags/v999.999.999
    • Triggering command: /usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq .object.sha ty-test.md l 64/pkg/tool/linu-nolocalimports nore (http block)
  • https://api.github.com/repos/nonexistent/repo/actions/runs/12345
    • Triggering command: /usr/bin/gh gh run view 12345 --repo nonexistent/repo --json status,conclusion ignore (http block)
  • https://api.github.com/repos/owner/repo/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo ode_modules/.bin-lang=go1.23 user.name (http block)
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo de/node/bin/bash user.name -j DROP git remo�� on' --ignore-path ../../../.prettierignore origin odules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/sh (http block)
  • https://api.github.com/repos/owner/repo/contents/file.md
    • Triggering command: /tmp/go-build3974454460/b383/cli.test /tmp/go-build3974454460/b383/cli.test -test.testlogfile=/tmp/go-build3974454460/b383/testlog.txt -test.paniconexit0 -test.v=true -test.parallel=4 -test.timeout=10m0s -test.run=^Test -test.short=true (http block)
  • https://api.github.com/repos/test-owner/test-repo/actions/secrets
    • Triggering command: /usr/bin/gh gh api /repos/test-owner/test-repo/actions/secrets --jq .secrets[].name get --local ash credential.usern/opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Create a "Update Astro" agentic workflow that runs daily:

  • operates in docs folder
  • runs npx npm-check-updates in a on.steps to determine if there are available updates . If not set output to skip
  • in agent job, runs "npx npm-check-updates --update" in docs folder to update dependencies
  • review packages for migration guides (specially Astro and Astro starlight on major:minor/minor bumps), make sure the docs are building
  • create a pr with changes, allow protected files

📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

- Daily schedule + workflow_dispatch trigger
- Pre-check job runs npx npm-check-updates in docs/ to detect available updates
- Agent job gated by if: needs.check_updates.outputs.has_updates == 'true'
- Agent updates deps, reviews Astro/Starlight migration guides, verifies build, creates PR
- protected-files: allowed to allow package.json/package-lock.json updates

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Update Astro dependencies in docs folder Add Update Astro agentic workflow Mar 17, 2026
Copilot AI requested a review from pelikhan March 17, 2026 13:07
@pelikhan pelikhan marked this pull request as ready for review March 17, 2026 13:10
Copilot AI review requested due to automatic review settings March 17, 2026 13:10
@pelikhan pelikhan merged commit c942baa into main Mar 17, 2026
@pelikhan pelikhan deleted the copilot/update-astro-dependencies branch March 17, 2026 13:10
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a daily gh-aw agentic workflow that checks for dependency updates in docs/ (Astro/Starlight ecosystem), applies upgrades + migrations, verifies npm run build, and opens a PR when successful.

Changes:

  • Added Update Astro workflow definition (.md) with a pre-check job to skip the agent run when no upgrades are available.
  • Added the compiled gh-aw workflow (.lock.yml) that runs the Copilot agent, safe-outputs handling, and conclusion plumbing.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
.github/workflows/update-astro.md Defines the agentic workflow, pre-check logic, and the agent instructions for updating/building/PR creation.
.github/workflows/update-astro.lock.yml Generated compiled workflow that executes the agent run, safe-outputs processing, and reporting.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

create-pull-request:
expires: 2d
title-prefix: "[docs] "
labels: [documentation, dependencies]
with:
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v6
id: check
working-directory: ./docs
run: |
npx --yes npm-check-updates --jsonUpgraded 2>/dev/null > /tmp/ncu-output.json || true
Navigate to the docs folder and run npm-check-updates to update all packages to their latest versions:

```bash
cd docs && npx --yes npm-check-updates --update
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants