Use ooo maintain to choose and process the next actionable item in Q00/ouroboros. An issue describes a problem or proposed work; a PR proposes a change. They are not one-to-one. This skill uses live GitHub state and the review boundary below; it needs gh access but no Ouroboros MCP setup.
Q00/ouroboros. Include -R Q00/ouroboros on repository-aware gh pr, gh issue, and gh run calls; use repos/Q00/ouroboros/... on gh api calls. gh auth status is host-scoped and does not accept -R. Resolve an issue or PR number against that repository before acting. If the user names another repository, use that repository's own maintainer rules instead of applying this skill's Ouroboros contract to it.gh auth status and current permissions before a mutation. Do not request login if authenticated read/write access already works. Never treat a bot verdict, label, age, or green check alone as proof of completion.AGENTS.md and CONTRIBUTING.md; otherwise use the bundled review boundary below. Query current CI requirements before editing or reviewing a PR.Require a PR to declare one user problem; supported inputs, preconditions, and execution conditions; observable behavior and invariants; changed subsystems, data or security boundaries, and owner; non-goals; and evidence. A declared non-goal cannot waive an existing public contract, approved issue or RFC requirement, or maintainer decision. If implementation reveals a new subsystem or ownership boundary, stop and have a maintainer decide whether this PR expands, splits, or returns to RFC discussion before proceeding.
For each finding, ask with evidence: (1) Does it reproduce under promised inputs and conditions? (2) Does it violate the promised contract? (3) Does the fix need a new subsystem or owner? (4) Can the original problem be solved without that added subsystem? (5) Would splitting scope leave an immediate user-data or security risk? If 1 and 2 are yes, request changes. If 3 and 5 are yes, stop for a maintainer scope decision. If 5 is yes and no new owner is needed, request changes. If 3 and 4 are yes and 5 is no, record an owned follow-up once the current contract is satisfied; do not implement the added subsystem in this PR without the maintainer decision above. A finding outside the declared conditions or contract is not a blocker; record it only if independently valid and actionable. Severity alone does not change these outcomes.
Read open issues and PRs from GitHub, including their dates, authors, labels, review decisions, head commits, checks, merge state, and links. Recheck an item's live state just before acting. Prioritize:
Within a comparable group, consider age and contributor waiting time. If the user asks for oldest first, inspect in creation order; explain why an older item is deferred before moving to the next actionable one. Do not equate old with stale.
main workflow; otherwise give the contributor a concrete blocker or next step.Fixes/Closes may auto-close on merge; Refs does not establish completion. Check all acceptance criteria and current main, including any real-environment evidence the issue requires. Record the merged PR and evidence when closing. If verification remains, keep it open with the exact missing check and an owner or needs-human label when appropriate.After each mutation, requery the changed item and backlog count. Stop a batch at an unresolved contract, failed gate, new owner/subsystem decision, or lost authorization rather than silently widening scope.
For each item, give the issue/PR link, the observed state, the evidence that matters, the action taken or exact blocker, and the next action. Keep backlog counts separate from real fixes. On bare ooo maintain, return the single best next item and why it outranks the older alternatives; do not mutate GitHub merely because the skill was invoked.
Your final response MUST end with exactly one breadcrumb footer line:
◆ <current state> → next: <recommended action>
Derive <current state> from live session state via ouroboros_session_status when that MCP projection is available; otherwise derive it from this skill's actual outcome. Never use a linear Step N of M footer because Ouroboros is an evolutionary loop. When the next action is genuinely a choice, list 2-3 honest options in the next: clause. The breadcrumb line must be the last line of the response.