# Autopilot PR Triage Scheduler

Queue open microsoft/apm pull requests (community fixes, PRs without an issue, or PRs...

- Repository: https://github.com/microsoft/apm (4171 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-10-30
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add microsoft/apm --skill autopilot-pr-triage-scheduler -g -a claude-code -y`
Codex: `npx skills add microsoft/apm --skill autopilot-pr-triage-scheduler -g -a codex -y`
Cursor: `npx skills add microsoft/apm --skill autopilot-pr-triage-scheduler -g -a cursor -y`
Gemini CLI: `npx skills add microsoft/apm --skill autopilot-pr-triage-scheduler -g -a gemini-cli -y`

## Description

Queue open microsoft/apm pull requests (community fixes, PRs without an issue, or PRs that close an issue) and fan them out through an isolated pool (default 2) of autopilot-pr-triage-worker sessions. Advisory only. Never merges, never assigns, never requests reviewers, never runs autopilot-pr-review-worker. Activate on a mixed PR list or queue-open when the job is PR triage. Works in a local session, Copilot App automation, Cloud Agent, Remote Agent, or Agentic Workflow.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# autopilot-pr-triage-scheduler

User-facing PR TRIAGE queue. This skill SELECTS pull requests and
THROTTLES fan-out. It classifies incoming PRs. It does not review
diffs, does not implement issues, and does not drive PRs to merge.

Compose [autopilot-pr-triage-worker](../autopilot-pr-triage-worker/SKILL.md)
one PR per slot. Never borrow slots from
`autopilot-issue-triage-scheduler`,
`autopilot-issue-delivery-scheduler`, or
`autopilot-pr-review-scheduler`.

## Activation card

`activation_card: on`. Before any queue read or spawn, emit
this Enter card with every field filled. Missing field -> stop.

```text
skill: autopilot-pr-triage-scheduler
skill_path: <resolved directory of this SKILL.md>
mode: run
subject: microsoft/apm
path: triage
intent: select PRs and fan out triage workers
origin: unattended | actor-session
write: off
repo: microsoft/apm
fanout_limit: <positive integer>
invocation: agentic-workflow | actor-session
```

Rules:

- `write` is always `off`. This scheduler never comments,
  labels, assigns, or requests reviewers.
- `write: on` -> stop.
- `origin` fail-closed unknown -> `unattended`.
- `invocation` is the harness. Copilot App, local session, Cloud
  Agent, and Remote Agent are `actor-session`. `agentic-workflow`
  is only gh-aw / GitHub Actions. Do not copy `origin` into
  `invocation`.
- One queue. Do not nest another scheduler path.

After the run, emit this Exit receipt:

```text
skill: autopilot-pr-triage-scheduler
subject: microsoft/apm
path: triage
write: off
queued: <integer>
spawned: <integer>
approved: n/a
```

## Invocation

Works in local sessions, Copilot App automations, Cloud Agent,
Remote Agent, and Agentic Workflows.

Resolve ORIGIN before any GitHub write. No assignment needed.
This scheduler and its slots never assign and never request
reviewers, in any ORIGIN.

INTENT is `triage`.

Ownership writes:

The rest: https://github.com/microsoft/apm/blob/HEAD/.agents/skills/autopilot-pr-triage-scheduler/SKILL.md
