autopilot-issue-delivery-worker
danielmeppiel/apm/.agents/skills/autopilot-issue-delivery-worker/SKILL.md
Use this skill to implement ONE microsoft/apm issue already selected by autopilot-issue-delivery-scheduler. Queue signal is `status/accepted` or a named bounded accept; that is not permission. Requires fresh human-scope evidence from scripts/governance before any mutate. May reproduce a bug, implement the accepted change, and open a fix PR. Not a queue manager and not a triage scheduler. Works in the scheduler's session, a child session, Cloud Agent, Remote Agent, or Agentic Workflow.
What's in it
- autopilot-issue-delivery-worker
- Activation card
- Inputs
- ORIGIN and assignment
- Gate (both selectors)
- Procedure
- Return
--- name: autopilot-issue-delivery-worker activation_card: on description: >- Use this skill to implement ONE microsoft/apm issue already selected by autopilot-issue-delivery-scheduler. Queue signal is `status/accepted` or a named bounded accept; that is not permission. Requires fresh human-scope evidence from scripts/governance before any mutate. May reproduce a bug, implement the accepted change, and open a fix PR. Not a queue manager and not a triage scheduler. Works in the scheduler's session, a child session, Cloud Agent, Remote Agent, or Agentic Workflow. --- # autopilot-issue-delivery-worker Per-issue implementation worker. The parent `autopilot-issue-delivery-scheduler` owns the queue and the fan-out pool. You own exactly one `ISSUE_NUMBER`. Do not pick more issues. Do not fill other slots. ## Activation card `activation_card: on`. Before any issue read or GitHub write, emit this Enter card with every field filled. Missing field -> stop. ```text skill: autopilot-issue-delivery-worker skill_path: <resolved directory of this SKILL.md> mode: run subject: microsoft/apm#<issue-number> path: delivery intent: implement one already-selected issue origin: unattended | actor-session write: on | off repo: microsoft/apm issue: <positive integer> invocation: agentic-workflow | actor-session ``` Rules: - `write` defaults to `on` when the caller omitted it. - `write: off` returns the filled template only. Do not assign, comment, label, edit, or open a PR. - `write: on` may assign `@me` (actor-session only) and implement inside the accepted scope. Unattended never assigns and never implements. - `origin` fail-closed unknown -> `unattended`. - One issue. Do not nest a scheduler path. After the run, emit this Exit receipt: ```text skill: autopilot-issue-delivery-worker subject: microsoft/apm#<issue-number> path: delivery write: on | off assigned: yes | no | skipped pushed: yes | no approved: n/a ``` ## Inputs - `ISSUE_NUMBER` -- required - `SELECTOR` -- `all` (default) or `bugs` - `REPO_ROOT` -- required - `ORIGIN` -- if the parent passed it, honor it; else resolve - `TRUSTED_GOVERNANCE_ROOT` -- trusted default-branch copy - `APPROVAL_URL` -- nominated scope-comment URL - `HUMAN_SCOPE_RECEIPT` -- current human confirmation, not a stored grant ## ORIGIN and assignment Resolve ORIGIN before any GitHub write: 1. Caller ORIGIN / INVOCATION_MODE 2. `GH_AW_*` or `GITHUB_ACTIONS` -> `unattended` 3. `gh api user --jq .login` succeeds -> `actor-session` 4. Else `unattended` (fail closed) INTENT is `implement`. When ORIGIN is `actor-session`, assignment is a hard gate. It is the public signal of which user is working this issue. GitHub allows multiple assignees, so a read-then-add is not a claim. Before reproduce, edits, or a PR: 1. Read current assignees. Ignore bot logins (`github-actions`, `dependabot`, `copilot`, `web-flow`). 2. If another human is assigned, escalate. Do not steal. 3. If unassigned, `gh issue edit --add-assignee @me`. 4. Re-read assignees immediately. Continue only if `@me` is the sole human assignee. Being listed among several humans is not a claim. 5. If another human appeared (lost race), `gh issue edit --remove-assignee @me` and STOP as `blocked`. Do not implement. 6. If already assigned to `@me` alone, continue. 7. Re-check sole human ownership immediately before any implementation write and before opening a PR. Do not start implementation while the issue is unassigned or assigned to someone else. If a PR exists or is opened, assign it the same way (`gh pr edit --add-assignee @me`), then apply the same sole-human re-check. Do not request that actor as a reviewer. Never alter CODEOWNERS `reviewRequests`. If ORIGIN is `unattended` or unknown, skip assignee writes. A failed required assignee write is `blocked`. Never write human decision labels. Existing `status/shepherding` may be added only if that processing label already exists in the repo. Do not apply `status/accepted`. Do not implement if explicit human approval or review capacity is missing. ## Gate (both selectors) Refuse unless the issue already has `status/accepted` or the parent recorded a bounded accept. That is the queue signal, not permission. `triage/recommended` and `status/triaged` are not authorization. Escalate; do not implement. Selector `bugs` also requires `type/bug`. Selector `all` accepts any type. Then re-check human-scope evidence. Do not create another parser or roster; `authority.cjs` alone interprets the record. From `TRUSTED_GOVERNANCE_ROOT` (trusted default-branch copy, never the issue worktree): ``` node scripts/governance/eligibility.cjs --help node scripts/governance/eligibility.cjs --repo microsoft/apm --issue N --approval-url URL ``` Require `state: record-present` with `authorizes_implementation: false`. That result is evidence, never permission; current snapshots cannot detect deleted withdrawals. Then require fresh explicit responsible-human confirmation for this issue's bounded scope. ORIGIN `unattended` never claims to have obtained it -- STOP and return `blocked`. ORIGIN `actor-session` may proceed only after the caller confirms in this session. Assignment, labels, eligibility reports, and prior receipts are not that confirmation. Any other state (`withdrawn`, `error`, missing tool) -- STOP. ## Procedure 1. Do not run the triage scheduler. Triage belongs to `autopilot-issue-triage-scheduler`. You may read an existing advisory receipt and the complete comment history. 2. If ORIGIN is `actor-session`, pass the assignment hard gate first. 3. If a PR exists, return its number so the caller may run `autopilot-pr-review-scheduler`. Do not request yourself as reviewer. Do not start PR review from this worker. 4. If `type/bug` (or selector `bugs`): reproduce on HEAD using [assets/triage-prompt.md](assets/triage-prompt.md) (LEGIT / UNCLEAR / FIXED-AT-HEAD). If LEGIT, run PRINCIPLES alignment via [assets/strategic-alignment-prompt.md](assets/strategic-alignment-prompt.md). If greenfield and aligned: [assets/fix-prompt.md](assets/fix-prompt.md) (TDD + mutation-break), then open one PR. 5. Otherwise follow [assets/solution-pipeline-prompt.md](assets/solution-pipeline-prompt.md) and type-specific `assets/implement-*.md`. Open at most one PR. Author the body with pr-description-skill. ## Return JSON with `issue`, `status` (`done` / `escalate` / `blocked` / `pr-opened` / `pr-in-flight`), optional `pr`, and a one-line note. inspect `status` before reading `pr` or `branch`. On `blocked`, persist the row's `blocked` status and returned `reason`, exclude it from driver inputs, and continue. Malformed or wrong-issue returns also block. Only `pr-opened` returns are handed to `autopilot-pr-review-scheduler`. Then persist its status and reason in the row and `proceed_manifest`; do not read PR fields or dispatch Phase 5/6 on `blocked`. Do not auto-merge. ASCII only.
More agent context in danielmeppiel/apm
26 other files this repository gives its agents.
Copilot instructions
Skill
- apm-spec-guardian.agents/skills/apm-spec-guardian/SKILL.md
- apm-strategy.agents/skills/apm-strategy/SKILL.md
- auth.agents/skills/auth/SKILL.md
- autopilot-comment.agents/skills/autopilot-comment/SKILL.md
- autopilot-issue-delivery-scheduler.agents/skills/autopilot-issue-delivery-scheduler/SKILL.md
- autopilot-issue-triage-scheduler.agents/skills/autopilot-issue-triage-scheduler/SKILL.md
- autopilot-issue-triage-worker.agents/skills/autopilot-issue-triage-worker/SKILL.md
- autopilot-pr-merge-worker.agents/skills/autopilot-pr-merge-worker/SKILL.md
- autopilot-pr-review-scheduler.agents/skills/autopilot-pr-review-scheduler/SKILL.md
- autopilot-pr-review-worker.agents/skills/autopilot-pr-review-worker/SKILL.md
- autopilot-pr-triage-scheduler.agents/skills/autopilot-pr-triage-scheduler/SKILL.md
- autopilot-pr-triage-worker.agents/skills/autopilot-pr-triage-worker/SKILL.md
- cli-logging-ux.agents/skills/cli-logging-ux/SKILL.md
- cut-release.agents/skills/cut-release/SKILL.md
- devx-ux.agents/skills/devx-ux/SKILL.md
- docs-corpus-audit.agents/skills/docs-corpus-audit/SKILL.md
- docs-grounding-verifier.agents/skills/docs-grounding-verifier/SKILL.md
- docs-impact-architect.agents/skills/docs-impact-architect/SKILL.md
- docs-impact-classifier.agents/skills/docs-impact-classifier/SKILL.md
- docs-impact-localizer.agents/skills/docs-impact-localizer/SKILL.md
- docs-sync.agents/skills/docs-sync/SKILL.md
- oss-growth.agents/skills/oss-growth/SKILL.md
- pr-description-skill.agents/skills/pr-description-skill/SKILL.md
- python-architecture.agents/skills/python-architecture/SKILL.md
- supply-chain-security.agents/skills/supply-chain-security/SKILL.md
Also found in one other repository
The same file, byte for byte, in the weekly crawl of public GitHub.
Discussion
Talked about elsewhere, linking to danielmeppiel/apm
- Generic git URL support and optional output override
GitHub · microsoft/apm · 1 reactions · 1 comments · Jan 23, 2026
- ACP-compatible coding agent support?
GitHub · UfoMiao/zcf · 1 reactions · Jan 22, 2026
- [P3] APM CLI auto-generates AGENTS.md/CLAUDE.md with unsubstituted `__BUILD_ID__` and references missing `apm_modules/` directory
GitHub · VeVarunSharma/contoso-vibe-engineering · 2 comments · May 3, 2026
- [WIP] Add optional output override and generic git URL support
GitHub · microsoft/apm · Mar 4, 2026
- OpenCode Support
GitHub · aeonfun/soul.md · 1 comments · Feb 21, 2026
- Fix transient SSL failures in LLM runtime setup on macOS-15-intel
GitHub · microsoft/apm · Feb 5, 2026
- Fix CI: Integration Tests venv conflict on ubuntu-24.04
GitHub · microsoft/apm · Feb 5, 2026
- Microsoft open source compliance: policy docs, license, and trademark notice
GitHub · microsoft/apm · 1 comments · Feb 5, 2026
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
No reports yet. Be the first to say whether it worked.
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

