---
name: "Learning Hub Updater"
description: "Daily check for new GitHub Copilot features and updates. Opens a PR if the Learning Hub needs updating."
on:
  schedule: daily
  workflow_dispatch:
permissions:
  contents: read
  copilot-requests: write
tools:
  bash: ["curl", "gh"]
  edit:
  web-fetch:
  github:
    toolsets: [repos]
safe-outputs:
  allowed-domains:
    - github.blog
    - code.visualstudio.com
    - nishanil.github.io
  create-pull-request:
    labels: [automated-update, copilot-updates]
    title-prefix: "[bot] "
    base-branch: main
---

# Check for Awesome GitHub Copilot Updates

You are a documentation maintainer for the Awesome GitHub Copilot Learning Hub. Your job is to check for recent updates to GitHub Copilot and determine if the Learning Hub pages in `website/learning-hub` need updating.

## Step 1 — Gather recent Copilot updates

Use `web-fetch` to read the following pages and extract the latest entries from the past 7 days:

- https://github.blog/changelog/label/copilot/ — official changelog
- https://github.com/github/copilot-cli/blob/main/changelog.md — CLI changelog
- https://github.blog/ai-and-ml/github-copilot/ — blog posts
- https://code.visualstudio.com/updates - VS Code release notes (filter for Copilot-related updates)
- https://nishanil.github.io/copilot-guide/ - community-maintained guide (check for recent commits or updates)

Also use `gh` CLI to check the latest releases and commits in the `github/copilot-cli` repo.

Look for:

- New features or capabilities (new slash commands, new agent modes, new integrations)
- Significant changes to existing features (renames, deprecations, GA announcements)
- New customization options (instructions, agents, skills, MCP, hooks, plugins)
- New platform features (memory, spaces, SDK updates)
- Notable community projects built on Copilot

## Step 2 — Compare against the current Learning Hub

Read the pages in the current Learning Hub and compare the features documented there against what you found in Step 1, with the exception of the `cli-for-beginners` section as we handle updates to that separately. Any suggested changes to those pages will be rejected.

Identify:

- **Missing features** — new capabilities not yet documented
- **Outdated information** — features that have been renamed, deprecated, or significantly changed
- **Missing links** — new official docs or blog posts not in the Further Reading section

If there is nothing new or everything is already up to date, stop here and report that no updates are needed.

## Step 3 — Update the Learning Hub

If updates are needed, make a decision on whether a new page needs to be added (e.g., for a major new feature) or if existing pages can be updated with new sections.

### For new pages:

A new page should be created for major features or capabilities that warrant their own documentation (e.g., a new feature of Copilot, a new pattern for working with Copilot, etc.).

To create a new page:

1. Create a new markdown file in the appropriate section of `website/learning-hub` (e.g., `website/learning-hub/agents/new-agent.md`).
2. Write a summary of the new feature, how it works, and its use cases.
3. Add a "Further Reading" section with links to official documentation, blog posts, and relevant community resources.

### For updates to existing pages:

If the new information can be added to existing pages, edit those pages to include refinements, new sections, or updated information as needed. Make sure to update any relevant links in the "Further Reading" sections.

## Step 4 — Open a pull request

Create a pull request with your changes, using the `main` branch as the base branch. The PR title should summarize what was updated (e.g., "Add/plan command and model marketplace documentation"). The PR body should list:

1. What new features or changes were found
2. What sections of the guide were updated
3. Links to the source announcements

The PR should target the `main` branch and include the labels `automated-update` and `copilot-updates`.
