Skip to content
Latchkey

Sync GitHub Issues and Discussions with Pylon workflow (ArcadeAI/arcade-mcp)

The Sync GitHub Issues and Discussions with Pylon workflow from ArcadeAI/arcade-mcp, explained and optimized by Latchkey.

C

CI health: C - fair

Point runs-on at Latchkey and get caching, job timeouts, self-healing for flaky steps, and up to 58% lower cost, applied automatically.

Grade your own workflow free or run it on Latchkey →
Source: ArcadeAI/arcade-mcp.github/workflows/pylon-sync.ymlLicense MITView source

What it does

This is the Sync GitHub Issues and Discussions with Pylon workflow from the ArcadeAI/arcade-mcp repository, a real project running GitHub Actions. It is shown here with attribution under its MIT license.

Below, Latchkey shows a faster, safer version produced by its optimization engine.

The workflow

workflow (.yml)
name: Sync GitHub Issues and Discussions with Pylon

on:
  issues:
    types: [opened, edited, reopened, closed]
  issue_comment:
    types: [created, edited, deleted]
  # Discussions cannot be edited to add the pylon ID for now, so skipping...
  # discussion:
  #   types: [created, edited, answered, locked, unlocked]
  # discussion_comment:
  #   types: [created, edited, deleted]

jobs:
  sync_with_pylon:
    runs-on: ubuntu-latest
    permissions:
      issues: write
      discussions: write
      contents: read

    steps:
      - name: Checkout Repository
        uses: actions/checkout@v7

      - name: Set Up Python
        uses: actions/setup-python@v6
        with:
          python-version: "3.x"

      - name: Install uv
        uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
        with:
          version: "0.11.16"

      - name: Sync with Pylon
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          PYLON_API_TOKEN: ${{ secrets.PYLON_API_TOKEN }}
          GITHUB_REPOSITORY: ${{ github.repository }}
          GITHUB_EVENT_PATH: ${{ github.event_path }}
          GITHUB_EVENT_NAME: ${{ github.event_name }}
        run: uv run .github/scripts/sync_with_pylon.py

The same workflow, on Latchkey

Estimated ~20% faster on cache hits, plus fewer wasted runs and a safer supply chain. Added and changed lines are highlighted.

name: Sync GitHub Issues and Discussions with Pylon
 
on:
  issues:
    types: [opened, edited, reopened, closed]
  issue_comment:
    types: [created, edited, deleted]
  # Discussions cannot be edited to add the pylon ID for now, so skipping...
  # discussion:
  #   types: [created, edited, answered, locked, unlocked]
  # discussion_comment:
  #   types: [created, edited, deleted]
 
jobs:
  sync_with_pylon:
    timeout-minutes: 30
    runs-on: latchkey-small
    permissions:
      issues: write
      discussions: write
      contents: read
 
    steps:
      - name: Checkout Repository
        uses: actions/checkout@v7
 
      - name: Set Up Python
        uses: actions/setup-python@v6
        with:
          cache: 'pip'
          python-version: "3.x"
 
      - name: Install uv
        uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
        with:
          version: "0.11.16"
 
      - name: Sync with Pylon
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          PYLON_API_TOKEN: ${{ secrets.PYLON_API_TOKEN }}
          GITHUB_REPOSITORY: ${{ github.repository }}
          GITHUB_EVENT_PATH: ${{ github.event_path }}
          GITHUB_EVENT_NAME: ${{ github.event_name }}
        run: uv run .github/scripts/sync_with_pylon.py
 

What changed

This workflow runs 1 job per trigger. On Latchkey the same minutes cost up to 58% less than GitHub-hosted, with zero queue time.

Actions used in this workflow