Skip to content
Back to skills

Work With Pr

ASecurity

Full PR lifecycle for oh-my-matrix in a task-owned git worktree — implement with evidence-bound QA, open a reviewer-readable PR against `master`, then run an unbounded verify loop over three gates (CI / review-work / docs-build) until all pass, then merge by default and clean up the worktree. Decomposes work into the smallest atomic, independently-mergeable PRs and builds the independent ones concurrently. Use whenever implementation work needs to land as a PR. Triggers: 'create a PR', 'imple...

  • 3 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsgobashcode-reviewgit

Works with

  • cli

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 29, 2026

npx -y skills add TeFuirnever/oh-my-matrix --skill work-with-pr --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Work With Pr?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Work With Pr
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tefuirnever-work-with-pr/badge)](https://www.skillsdirectory.com/skills/tefuirnever-work-with-pr)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: work-with-pr
description: "Full PR lifecycle for oh-my-matrix in a task-owned git worktree — implement with evidence-bound QA, open a reviewer-readable PR against `master`, then run an unbounded verify loop over three gates (CI / review-work / docs-build) until all pass, then merge by default and clean up the worktree. Decomposes work into the smallest atomic, independently-mergeable PRs and builds the independent ones concurrently. Use whenever implementation work needs to land as a PR. Triggers: 'create a PR', 'implement and PR', 'land this', 'work-with-pr', 'implement issue', 'split into atomic PRs', 'parallel PRs', even 'implement X' when the context implies PR delivery."
---

# Work With PR — OMM PR Lifecycle

You execute a complete PR lifecycle: fresh task-owned worktree → implement with evidence-bound QA → reviewer-readable PR against `master` → unbounded verification loop → merge by default → worktree cleanup. A failing gate sends you back into the worktree to fix and re-QA. You keep cycling until every active gate passes at once.

**The unit of delivery is the smallest PR that compiles, passes, and stands on its own** — not "one task, one PR." A single task routinely splits into several atomic PRs; apply the lifecycle below to each, and build the independent ones concurrently.

<architecture>

```
Phase 0: Setup     → Split into atomic PRs; branch + worktree per PR (parallel when independent)
Phase 1: Implement → Run `pnpm verify` green locally; evidence-bound QA per success criterion; atomic commits
Phase 2: PR        → Push, open a reviewer-readable PR targeting `master`
Phase 3: Verify    → Unbounded loop; a failing gate routes back to Phase 1:
  ├─ Gate A: CI          → gh pr checks (lint + lint:md + typecheck + commitlint + test)
  ├─ Gate B: review-work → code-reviewer subagent pass (no unresolved high/🔴 findings)
  └─ Gate C: docs-build  → `pnpm docs:build` green (docs-first repo: never break the site)
Phase 4: Merge     → Merge by default; wait until actually merged; then worktree cleanup
```

</architecture>

## OMM invariants (non-negotiable)

- **Docs-first.** A PR that breaks `pnpm docs:build` (Gate C) is not mergeable, full stop.
- **Surgical changes only** (AGENTS.md). Don't refactor adjacent code/docs; every changed line traces to the PR's purpose.
- **Spine docs are high-risk** (`CONTEXT.md`, `docs/architecture.md`, `docs/roadmap.md`, `docs/adr/`). Touch them only when the PR's purpose is that change; otherwise leave them.
- **`docs/archive/` is frozen** — never rewrite history.
- `packages/autopilot` is hosted source (ADR-010); source changes need `pnpm --filter @oh-my-matrix/autopilot test` plus the internal host-deploy step — don't claim host deployment is done unless the dist was actually refreshed and smoke-tested.

## Phase 0 — Setup

1. **Decompose** the task into the smallest atomic PRs that each compile, pass, and deliver one reviewable slice. Sequence by dependency: independent slices branch off the base and run in parallel (one worktree each); dependent slices stack.
2. **Worktree isolation.** Create a fresh worktree per PR (the user's main dir is read-only context; a branch checkout there could destroy uncommitted work):
   ```bash
   git worktree add -b <branch> ../omm-<branch> master
   cd ../omm-<branch>
   pnpm install          # also installs the commit-msg hook via prepare
   ```
3. Branch off `master` (OMM's flow is PR→`master`, unlike oh-my-openagent's `dev`→`master`).

## Phase 1 — Implement

- Drive the work; gate yourself locally with **`pnpm verify`** (lint + markdownlint + typecheck + all workspace tests + docs build). Do not push until it's green.
- Evidence-bound QA: for each success criterion, produce concrete proof (a test, a command output, a doc rendered section) — not a claim.
- Atomic Conventional-Commit messages (`feat:`, `fix:`, `docs:`, …). The local `commit-msg` hook enforces the format; bad messages are rejected.

## Phase 2 — PR

- Push and open a reviewer-readable PR in English against `master`: what changed, why, how it was verified, and any risks/test notes (AGENTS.md §"After submitting code").

## Phase 3 — Verify loop

Run the gates together; any failure routes back to Phase 1 in this PR's worktree:

- **Gate A — CI.** `gh pr checks --watch <url>` → all green. CI jobs: `lint` (eslint + markdownlint), `typecheck`, `commitlint` (PR only), `test`.
- **Gate B — review-work.** Dispatch a `code-reviewer` subagent over the diff. Resolve every high/🔴 finding before merging; lower severities can be tracked as follow-ups but must be stated in the PR.
- **Gate C — docs-build.** `pnpm docs:build` green. If the PR touches docs, also confirm the rendered site is coherent.

No gate is "skipped because it's hard." If a gate is genuinely N/A (e.g. a code-only PR doesn't alter docs), say so explicitly in the PR rather than silently dropping it.

## Phase 4 — Merge

- Merge by default once all active gates are green and review-work is clear.
- Wait until the PR is **actually merged**, then remove the worktree: `git worktree remove ../omm-<branch>` (+ delete the branch if not already).

## Concurrency

Build independent atomic PRs concurrently — one background subagent per PR, each owning its worktree and running Phase 0→4. Dependent PRs stack sequentially.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…