agent-environment-retr…
Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use…
Use when a human explicitly invokes a watcher cycle for an open pull request that must be watched until mergeable or blocked. Not for merge, force-push, or work outside the invoked cycle.
Claude Code
$ npx -y skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr --agent claude-code
Codex
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a codex -y
Cursor
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a cursor -y
Gemini CLI
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a gemini-cli -y
GitHub Copilot
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a github-copilot -y
OpenCode
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a opencode -y
Windsurf
$ npx skills add OutlineDriven/odin-claude-plugin --skill watch-and-repair-pr -a windsurf -y
name: watch-and-repair-pr description: 'Use when a human explicitly invokes a watcher cycle for an open pull request that must be watched until mergeable or blocked. Not for merge, force-push, or work outside the invoked cycle.' disable-model-invocation: true
| Field | Bound contract | |---|---| | Trigger | A human explicitly invokes a watcher cycle for an open pull request that must be watched until it is mergeable or blocked. | | Authority | Remote: pushes commits to the candidate pull request's own branch and may publish a status report; requires explicit human invocation. Preview the exact pull request, candidate branch, proposed commits or status report, and remote consequence before using credentials; proceed only within the invoked cycle. | | Side effect | May publish a status report and push commits that address bounded review findings only to the candidate pull request's own branch; never merge or force-push. | | Done | The cycle has re-read checks, review threads, conflicts, and branch protection, then classified the pull request as mergeable, blocked-with-owner, or handed-off. |
Required: the open pull request, its repository and candidate branch, access to its complete current checks, review threads, conflict state, and branch-protection state, plus the human's explicit invocation for this cycle. To push a fix or publish a report, also require valid credentials and an exact preview of the remote target and consequence. Optional: a human-supplied bound on findings to address; without one, do not mutate and return a classification from the review tape.
1. Confirm the pull request is open, identify its own candidate branch, record the human-authorized scope for this cycle, and reject any target that would require another branch, a merge, or a force-push. Done when: PR is confirmed open, candidate branch is identified, and scope is recorded with invalid targets rejected. 2. Re-read the full current review tape in the same cycle: all checks, every review thread including resolved threads needed for context, conflict state, and applicable branch-protection requirements. Do not rely on a prior cycle's snapshot. Done when: complete review tape is read in this cycle. 3. Classify each obstacle as an actionable review finding, an external wait, a conflict, a protection requirement, or a decision requiring another owner. Bound actionable work to findings supported by the current tape and within the invoked scope; do not widen scope or invent evidence. Done when: every obstacle is classified and actionable work is bounded. 4. Before any remote mutation, present the exact pull request and branch, the proposed status report or commits, and the consequence of publishing or pushing. Do not use credentials or mutate the remote unless the human has explicitly authorized that preview. Done when: preview is presented and human authorization is confirmed or withheld. 5. For authorized actionable findings, change only what each finding requires, verify the affected observable behavior with the narrowest applicable check, and push the resulting commits only to the candidate pull request's own branch. Never merge and never force-push. Done when: commits are pushed to the candidate branch with verification evidence, or the step has stopped on verification or push failure. 6. After any push or newly observed review activity, start a fresh cycle by re-reading the complete review tape rather than carrying forward a partial view. Done when: fresh cycle is started with a complete re-read. 7. End the cycle with exactly one terminal classification: `mergeable` when all required checks and protection conditions pass, no blocking thread or conflict remains, and no required owner action is outstanding; `blocked-with-owner` when a named obstacle and responsible owner remain; or `handed-off` when responsibility has been explicitly transferred with the current tape and remaining actions identified. Done when: one terminal classification is emitted.
One cycle report containing the pull request and candidate branch, the review-tape snapshot read in that cycle, bounded findings and their dispositions, verification evidence for each pushed fix, any published commit or report identifiers, remaining blockers with owners, and exactly one terminal classification: `mergeable`, `blocked-with-owner`, or `handed-off`.
Formerly the ODIN Claude Plugin. The repository URL is unchanged. Outline-Driven Development, nicknamed ODIN, is a highly opinionated code-agent skill library: principles-first engineering, surgical editing, and workflow automation, published as installable
Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use…
Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not…
Use when a human explicitly asks for a full repository agent-compatibility pass returning a scored report with prioritized fixes.…
Use when setting up a project, auditing agent command permissions, or asking which read-only bash commands and domains to allow.…
Use when asked to build or review a CLI intended for coding agents and return flag-driven, pipeline-safe, idempotent design…
Use when the user asks to make the skills framework work in a new harness, IDE, or CLI. Not for remote, credential, publish,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.