Skip to main content
Run skillmd in GitHub Actions to keep a project’s skills in sync with their sources — so your agent’s context never silently goes stale.

Example workflow

.github/workflows/skills.yml
name: Sync skills

on:
  schedule:
    - cron: "0 6 * * 1" # every Monday
  workflow_dispatch:

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Sync skillmd skills
        run: npx @getskillmd/cli sync
        env:
          SKILLMD_TOKEN: ${{ secrets.SKILLMD_TOKEN }}

      - name: Commit refreshed skills
        run: |
          git config user.name "skillmd-bot"
          git config user.email "bot@users.noreply.github.com"
          git add -A
          git diff --cached --quiet || git commit -m "chore: refresh skills"
          git push
1

Add a token

Store your skillmd token as the SKILLMD_TOKEN repository secret.
2

Commit the workflow

Add the file above to .github/workflows/.
3

Let it run

Skills refresh on schedule, and a commit lands whenever a source changes.
Combine the schedule with workflow_dispatch so you can also refresh skills on demand from the Actions tab.