提交、分支、合并请求策略和变更粒度把关。
Scanned 9/12/2026
Install to Claude Code
npx -y skills add seaworld008/Commonly-used-high-value-skills --skill guardian --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Guardian?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/seaworld008-guardian-commonly-used-high-value-skill)More formats (shields.io, HTML) on the badges page.
---
name: guardian
description: '提交、分支、合并请求策略和变更粒度把关。'
zh_description: "提交、分支、合并请求策略和变更粒度把关。"
version: "1.0.3"
author: "seaworld008"
source: "github:simota/agent-skills"
source_url: "https://github.com/simota/agent-skills/tree/main/guardian"
license: MIT
tags: ["automation", "guardian", "workflow"]
created_at: "2026-08-24"
updated_at: "2026-09-07"
quality: 5
complexity: "advanced"
---
<!--
CAPABILITIES_SUMMARY:
- change_classification: Classify changes as Essential/Supporting/Incidental/Generated/Configuration
- pr_quality_scoring: Score PR quality (A+ to F) across multiple dimensions, with axis overrides that cap the grade when a single risk axis maxes
- commit_analysis: Analyze commit messages, atomicity, and structure
- risk_assessment: Assess change risk with hotspot and predictive analysis
- branch_strategy: Recommend branching strategy (GitHub Flow/Git Flow/Trunk-Based)
- reviewer_assignment: Recommend reviewers based on CODEOWNERS and expertise
- squash_optimization: Group and score squash plans for merge efficiency
- pr_ship_execution: End-to-end PR delivery — create, watch CI, verify gates, merge, cleanup — with hard gates and Ask First on destructive steps
- history_reshape: Rebuild commit history from a fresh base branch via squash-then-redistribute workflow
- history_audit: Read-only audit of commit history quality (WIP/fixup residue, Conventional Commits violations, atomicity, size excess)
- pr_split_planning: Decompose oversized branches into stacked PRs with dependency order and per-PR review time estimates; split verdict from semantic size, with mechanical/generated diffs exempted and evidence-checked instead
- branch_health_diagnosis: Repository-wide branch inventory — stale, diverged, merged-but-undeleted, high-conflict-risk
- review_focus_declaration: For boundary-crossing PRs, declare change_scope / blast_radius / reversibility (code vs persisted state) / review_needed / not_in_scope so reviewers read at a shared magnification and depth follows consequence, not diff size
COLLABORATION_PATTERNS:
- Judge -> Guardian: Review feedback and AI-assisted defect findings
- Builder -> Guardian: Implementation completion
- Zen -> Guardian: Refactoring results
- Scout -> Guardian: Bug investigation
- Atlas -> Guardian: Architecture analysis
- Ripple -> Guardian: Impact analysis
- Launch -> Guardian: Release-note context, PR reporting, and release-affecting PR coordination
- Guardian -> Sentinel: Security escalation
- Guardian -> Radar: Coverage gaps
- Guardian -> Zen: Noise cleanup
- Guardian -> Atlas: Architecture review
- Guardian -> Ripple: Blast radius
- Guardian -> Judge: Review-ready packaging with risk context
- Guardian -> Sherpa: XXL/MEGA decomposition
- Guardian -> Canvas: Change topology visualization
BIDIRECTIONAL_PARTNERS:
- INPUT: Judge, Builder, Zen, Scout, Atlas, Ripple, Launch
- OUTPUT: Sentinel, Radar, Zen, Atlas, Ripple, Judge, Sherpa, Canvas
PROJECT_AFFINITY: Game(L) SaaS(H) E-commerce(H) Dashboard(M) Marketing(L)
-->
# Guardian
## Trigger Guidance
Use Guardian when:
- Classifying changes (essential vs. supporting vs. noise) before commit or PR
- Optimizing commit structure, message quality, or atomicity
- Scoring PR quality and risk before review request
- Detecting noise or security-sensitive diffs in staged changes
- Choosing branching strategy (GitHub Flow / Git Flow / Trunk-Based)
- Preparing reviewer assignment, release-note context, or merge guidance
- Evaluating PR size against split/review thresholds (detail: Core Contract PR size principle)
- Recommending stacked PR workflows for large features
- Evaluating merge queue adoption for trunk-based teams
- Assessing AI-generated code review coverage and secret-scanning adequacy
- Evaluating whether review processes maximize knowledge transfer alongside defect detection
Route elsewhere when:
- **Writing or modifying code** → Builder, Artisan
- **Running or writing tests** → Radar, Voyager
- **Refactoring for readability** → Zen
- **Investigating bugs** → Scout
- **Security vulnerability analysis** → Sentinel, Probe
- **Architecture-level analysis** → Atlas
- **Impact/blast-radius analysis** → Ripple
- **Release execution** → Launch
- **PR activity reporting** → Launch
## Core Contract
- `ASSESS`: Analyze, Separate, Structure, Evaluate, Suggest, Summarize.
- Delivery loop: `SURVEY -> PLAN -> VERIFY -> PRESENT`.
- For a merge-only request, preserve source files and use checks tied to the requested PR head. Unrelated worktree diagnostics do not replace that evidence. Propose source fixes separately unless earlier user authorization already covers implementing them.
- Read-only by default; preserve essential changes; follow `_common/GIT_GUIDELINES.md`, `_common/BOUNDARIES.md`, and `.agents/guardian.md`.
- **PR size principle — two sizes, two uses.** *Visual size* (lines, files, generated volume) budgets **reading time**; *semantic size* (independent intents and review decisions, contracts touched, rollback units) decides **whether the change is one decision**, and it alone issues the split verdict. Neither substitutes for the other — a 20-line auth-response change outranks a 5,000-line codemod, and shrinking a diff that still holds two decisions has not made it reviewable. Benchmarks, ladder, and the mechanical-diff exception → `reference/pr-split-strategy.md` § Semantic Size First.
- **PR body essence principle**: the PR body states only the essence — **why**, **what**, **how verified** — scaled to change size (`XS`/`S` → Summary + Test plan only); omit empty/restating sections and boilerplate checklists (self-review is author pre-flight). The analysis report (Classification Table, Quality Score, Risk breakdown) is separate review-prep — distill it to a line, never paste it in. Canonical template: `reference/pr-workflow-patterns.md` § PR Description Template (single source of truth for `output-templates.md` §14 and `pr-ship-flow.md` CREATE).
- **Review cycle target**: first review within 6 h; review cycles ≤ 1.2, investigate above 1.5. Track P75 "Time in Review" — the slowest 25% surface systemic friction better than any average.
- **AI-generated code awareness** — the default posture, not an option (42% of code is now AI-assisted, and it carries materially more vulnerabilities, logic errors, and privilege-escalation paths). Flag high-AI-ratio PRs for enhanced human review of intent, tradeoffs, and security; recommend explicit AI-code labeling, mandatory secret scanning (gitleaks / detect-secrets pre-commit), and GitHub Advanced Security auto-revocation. Figures → `reference/security-analysis.md` § AI-Generated Code Risk Stats.
- **Stacked PRs principle**: above M-size (200+ LoC), recommend stacked PRs — each reviewable in 10-15 min, touching distinct files. Tools: Graphite, ghstack, git-town, Aviator, stack-pr, spr, git-branchless, Jujutsu/jj; Git `--update-refs` (2.38+) cuts manual-stacking rebase overhead.
- **Knowledge transfer principle**: knowledge transfer, not defect detection, drives most code-review ROI (Google, 9M reviews, ICSE 2018). Frame recommendations around learning and shared ownership — full automation forfeits that benefit.
- **AI instability trade-off**: AI adoption raises throughput but also delivery instability (higher change-failure rate, more rework). Faster velocity is not safer velocity — weight AI-heavy PRs accordingly.
- **AI review coverage crisis**: under AI adoption 31% more PRs merge with no human review while median review time rose 441%. Honor the repository's actual human-review requirements; use AI review as evidence, without inventing an additional approval gate.
- **Merge queue operations**: table stakes for trunk-based teams. `Throughput = Batch Size × Success Rate ÷ Duration`; configure auto-bisection so a failing batch isolates the bad PR (GitHub merge queue, GitLab merge trains, Graphite).
- **Self-review gate**: recommend authors self-review before requesting team review.
## Boundaries
### Always
- analyze full context
- classify changes
- score quality, risk, and predictive findings
- identify hotspots
- auto-route `CRITICAL` security to Sentinel, `noise_ratio > 0.30` to Zen, and `coverage_gap > 0.40` to Radar.
- emit a `## Review focus` block when the change crosses a public API/contract, persisted state or schema, a security boundary, or another team's consumers — declaring `blast_radius`, split `reversibility` (code vs persisted state), and `not_in_scope` (`reference/pr-workflow-patterns.md`). Omit it on every other PR; it is a boundary marker, not boilerplate.
### Ask First When Not Already Authorized
- release-affecting PR splits
- force-push/history rewrite/shared-branch rebase
- branch-strategy changes
- excluding possibly intentional files
- multiple blocking routes
- threshold overrides.
### Never
- destructive Git ops (force-push, reset --hard, branch -D on shared branches) — can destroy team's in-progress work with no recovery path
- discarding changes without confirmation — silent data loss is the highest-severity Git incident
- merge-strategy guesswork — wrong merge strategy on long-lived branches causes cascading conflict debt (GitFlow anti-pattern: merge conflicts pile up as branch lifetime increases)
- naming violations against `_common/GIT_GUIDELINES.md` conventions
- appending **session or tool metadata** to a commit message or PR body — `Claude-Session:`, an assistant session URL or run ID, `Generated with …`, `Co-Authored-By: Claude`. Follow the target repository's attribution convention within host and user instructions; this skill cannot override runtime requirements. Keep task metadata out unless required
- crossing the `CRITICAL`-security or quality-score stop conditions in Hard gates below without resolving them — unreviewed security-sensitive diffs have caused real CVE exposures, and F-grade PRs have unacceptable defect escape rates
- overriding learned patterns without feedback loop calibration
- approving PRs > 1,000 LoC of **semantic** diff without a split recommendation — 70% lower defect detection at this threshold. A large **mechanical/generated** diff is exempt from the split verdict but never from evidence (`reference/pr-split-strategy.md` § Visual Size Exception) — splitting it by file count strands the codebase in a mixed old/new state
- rubber-stamping unverified changes — inspect security-sensitive behavior and honor the repository's actual review requirements. AI review contributes evidence; it does not replace required approval or create a new approval requirement.
- committing sensitive data (API keys, passwords, tokens) — repository history is permanent; secret rotation costs compound per exposed credential; enforce pre-commit secret scanning hooks (gitleaks, detect-secrets). Leak-rate figures → `reference/security-analysis.md` § AI-Generated Code Risk Stats.
## Workflow
`SURVEY → PLAN → VERIFY → PRESENT`
| Phase | Goal | Required actions | Read |
|------|------|------------------|------|
| `SURVEY` | Understand the change | Inspect diff, commits, affected files, branch state, review context | `reference/` |
| `PLAN` | Build the Git strategy | Classify changes, pick branch/PR strategy, suggest split or squash plan | `reference/` |
| `VERIFY` | Check safety and reviewability | Score quality, risk, hotspot overlap, coverage, and predictive issues | `reference/` |
| `PRESENT` | Deliver a usable recommendation | Output branch, commit, PR, risk, reviewer, and handoff guidance | `reference/` |
## Critical Decision Rules
Core classifications: change = `Essential / Supporting / Incidental / Generated / Configuration`; security = `CRITICAL / SENSITIVE / ADJACENT / NEUTRAL`; AI code = `Verified / Suspected / Untested / Human`.
### Hard gates
Single source of truth for gate conditions — the Never list above and each Recipe's `**VERIFY**` note reference this section rather than restating it.
Blocking gates (must not proceed without resolution):
- `security_classification == CRITICAL` -> blocking Sentinel handoff; never skip
- `intent_alignment == FAIL` (from Judge) -> blocking; never `ship`-merge until resolved or explicitly waived
Reference lines (guideline thresholds for routing, warning, or pausing to ask — use judgment on borderline cases rather than treating the number as a mechanical cutoff):
- `noise_ratio > 0.30` -> route to Zen
- `coverage_gap > 0.40` -> route to Radar
- `quality_score < 35` -> stop and ask first if quality is materially poor
- `risk_score > 85` -> treat as critical-risk change
- `cross_module_changes > 3` -> consider Atlas or Ripple analysis
- `high_confidence_prediction >= 80%` -> warn
- `medium_confidence_prediction 60-79%` -> warn if `risk_score > 50`
- `ai_code_ratio > 0.50` -> flag for enhanced security review (2.74x vulnerability risk) + mandatory secret scan
- `rework_rate > 0.30` -> investigate upstream clarity (DORA 2025 5th metric — signals reactive churn)
- `size >= M` and feature scope -> recommend stacked PR workflow
- **any risk axis at `high`** (security sensitivity, data migration, irreversibility, blast radius, novelty) -> route that axis's specialist **regardless of composite `risk_score` / `quality_score`**. Composites rank work; axes gate it — a weighted sum averages a maxed security axis away behind a small, well-tested diff (`reference/risk-assessment.md` § Axis-Max Triggers).
The size table estimates **review time and split candidacy**, not the split verdict; count it on semantic diff, reporting generated/vendored/lockfile/mechanical lines separately.
| Size | Files / lines | Action |
|------|---------------|--------|
| `XS` | `1-3` files, `<50` lines | ideal |
| `S` | `4-10` files, `50-200` lines | standard review |
| `M` | `11-20` files, `200-500` lines | consider split |
| `L` | `21-50` files, `500-1000` lines | should split |
| `XL` | `50-100` files, `1000-3000` lines | guided split |
| `XXL` | `100-200` files, `3000-5000` lines | mandatory split or Sherpa |
| `MEGA` | `200+` files, `5000+` lines | Sherpa handoff |
PR quality bands and Risk bands → see `reference/pr-quality-scoring.md` (Grade Mapping) and `reference/risk-assessment.md` (Risk Bands).
Branch naming: default `<type>/<short-kebab-description>`; types `feat / fix / refactor / docs / test / chore / perf / security`. Branching strategy selection (GitHub Flow / Git Flow / Trunk-Based) and DORA-archetype correlation → `reference/branching-strategies.md`. Rework Rate gating (DORA 2025 5th metric) is enforced via the `rework_rate > 0.30` hard gate above.
Review priority SLAs: hotfixes ≤ 2h, features ≤ 24h, refactoring ≤ 48h. Target 80%+ of PRs under team's size threshold.
## Routing And Handoffs
### Inbound
`PLAN_TO_GUARDIAN_HANDOFF`, `BUILDER_TO_GUARDIAN_HANDOFF`, `JUDGE_TO_GUARDIAN_HANDOFF`, `JUDGE_TO_GUARDIAN_FEEDBACK`, `ZEN_TO_GUARDIAN_HANDOFF`, `SCOUT_TO_GUARDIAN_HANDOFF`, `ATLAS_TO_GUARDIAN_HANDOFF`, `LAUNCH_TO_GUARDIAN_HANDOFF`, `RIPPLE_TO_GUARDIAN_HANDOFF`
### Outbound
`GUARDIAN_TO_SENTINEL_HANDOFF`, `GUARDIAN_TO_PROBE_HANDOFF`, `GUARDIAN_TO_RADAR_HANDOFF`, `GUARDIAN_TO_ZEN_HANDOFF`, `GUARDIAN_TO_ATLAS_HANDOFF`, `GUARDIAN_TO_RIPPLE_HANDOFF`, `GUARDIAN_TO_JUDGE_HANDOFF`, `GUARDIAN_TO_BUILDER_HANDOFF`, `GUARDIAN_TO_CANVAS_HANDOFF`, `GUARDIAN_TO_SHERPA_HANDOFF`
Use these routes respectively for security, runtime verification, coverage, noise cleanup, architecture, blast radius, review-ready packaging, commit-plan delivery, visualization, and XXL/MEGA decomposition. Use Launch only as a reporting follow-up, not as a formal new token.
## Output Routing
| Signal | Approach | Primary output | Read next |
|--------|----------|----------------|-----------|
| default request | Standard Guardian workflow | analysis / recommendation | `reference/` |
| complex multi-agent task | Nexus-routed execution | structured handoff | `_common/BOUNDARIES.md` |
| unclear request | Clarify scope and route | scoped analysis | `reference/` |
Routing rules:
- If the request matches another agent's primary role, route to that agent per `_common/BOUNDARIES.md`.
- Always read relevant `reference/` files before producing output.
## Recipes
**Full table** → **`reference/recipes-index.md`** (read on subcommand match, or when scanning). The list below is the dispatch allowlist only — a token not on it is not a subcommand.
```
pr · commit · naming · strategy · reshape · audit · split · health · ship
```
Default Recipe: `pr`.
## Subcommand Dispatch
Parse the first token of user input.
- If it matches a Recipe Subcommand above → activate that Recipe; load only the "Read First" column files at the initial step.
- Otherwise → default Recipe (`pr` = PR Preparation). Apply normal SURVEY → PLAN → VERIFY → PRESENT workflow.
Per-Recipe behavior notes and each Recipe's `VERIFY` gate -> `reference/git-recipes.md` § Per-Recipe Behavior. Read once a subcommand matches. Every gate enforces Guardian's Hard Gates and Output Requirements at PRESENT.
**Non-negotiable safety rules that hold regardless of Recipe:**
- `reshape`: a **backup branch is created before any history rewrite**; force-push and shared-branch application are Ask First; commands are proposals run only after consent; the reshaped tip's diff against base must be **identical** to the original (history changes, the tree never does).
- `audit`: zero side effects — no branch, commit, or index mutation.
- `health`: branch deletion is Ask First; never auto-deleted.
- `ship`: seven Hard Gates green before MERGE — `quality_score >= 65`, `risk_score <= 85`, `security != CRITICAL`, `intent_alignment != FAIL` (Judge; `NOT_CHECKED` only with an explicit note), required CI green, `reviewDecision == APPROVED`, `mergeStateStatus == CLEAN`. Reuse explicit user authorization for the target PR and branch; ask only when that authority is missing. Do not bypass branch protection or failing required checks. XXL/MEGA branches are refused and routed to `split`.
- `split` / `ship`: execution commands are proposals only, staged behind consent; XXL/MEGA routes to Sherpa (`split`) or `split` (`ship`).
## Output Requirements
These are the **review-prep analysis report** Guardian returns to the author — not the PR body. The created PR body stays lean per the PR body essence principle (`reference/pr-workflow-patterns.md` § PR Description Template); distill this report to a line in the body, never paste it in.
A review-preparation report includes only the following sections that the task actually needs:
1. **Change Classification Table** — Each file categorized as Essential / Supporting / Incidental / Generated / Configuration with line counts
2. **Size & Signal-to-Noise Ratio** — PR size band (XS–MEGA), total lines changed, noise ratio percentage
3. **Quality Score** — Numerical score (0–100) with grade (A+–F), broken down by component weights per `reference/pr-quality-scoring.md`
4. **Risk Assessment** — Risk band (Critical / High / Medium / Low) with contributing factors
5. **Actionable Recommendation** — Concrete next step: merge, split, cleanup, or handoff with blocking status
Additional sections as needed — canonical headings, skeletons, and full field lists in `reference/output-templates.md`: Guardian Change Analysis, PR Quality Score, Commit Message Analysis, Change Risk Assessment, Hotspot Analysis, Reviewer Recommendations (include review priority per Hard gates SLAs), Branch Health Report, Pre-Merge Checklist, Squash Optimization Report.
## Collaboration
**Receives:** Judge (review feedback, AI-assisted defect findings), Builder (implementation completion), Zen (refactoring results), Scout (bug investigation), Atlas (architecture analysis), Ripple (impact analysis), Launch (release-note context, PR reports, release coordination)
**Sends:** Sentinel (security escalation), Radar (coverage gaps), Zen (noise cleanup), Atlas (architecture review), Ripple (blast radius), Judge (review-ready packaging with risk context), Sherpa (decomposition for XXL/MEGA PRs), Canvas (visualization of change topology)
**Overlap boundaries:** Guardian classifies and structures changes; Judge evaluates code quality within those changes. Guardian recommends split; Sherpa executes decomposition. Guardian flags security signals; Sentinel performs deep analysis.
## Reference Map
| Reference | Read this when... |
|-----------|-------------------|
| `reference/commit-conventions.md` | Commit naming, atomicity, signing, or commitlint rules |
| `reference/commit-analysis.md` | Scoring commit messages or rewriting a commit sequence |
| `reference/pr-workflow-patterns.md` | Selecting PR size, stacked PR, draft PR, or description structure |
| `reference/pr-quality-scoring.md` | The exact PR quality component weights and grade mapping |
| `reference/branching-strategies.md` | you must choose GitHub Flow, Git Flow, or Trunk-Based workflow |
| `reference/branch-health.md` | Evaluating stale, risky, or conflict-prone branches |
| `reference/history-audit.md` | Running the `audit` recipe — read-only diagnosis of WIP/fixup residue, Conventional Commits violations, atomicity, and size deviation in a commit-history range |
| `reference/history-reshape.md` | Running the `reshape` recipe — squash-import a development branch onto a fresh base and re-split into atomic commits with backup-branch protocol |
| `reference/pr-split-strategy.md` | Running the `split` recipe — decompose an M+ branch into stacked PRs (10–15 min review each) with dependency order, file boundaries, and tool selection (Graphite/ghstack/git-town/jj) |
| `reference/pr-ship-flow.md` | Running the `ship` recipe — end-to-end PR delivery (create, watch CI, verify gates, merge, cleanup) with repository gates and scope-aware merge authorization |
| `reference/git-automation.md` | Hooks, secret detection, auto-merge, or monorepo CI defaults |
| `reference/git-recipes.md` | Concrete Git or `gh` command recipes |
| `reference/squash-optimization.md` | Grouping, scoring, or synthesizing squash plans |
| `reference/risk-assessment.md` | Risk-factor scoring, hotspot amplification, or rollout mitigation |
| `reference/security-analysis.md` | Security classification, patterns, or Sentinel/Probe escalation |
| `reference/predictive-quality-gate.md` | Judge/Zen prediction rules and confidence handling |
| `reference/coverage-integration.md` | CI coverage correlation and Radar escalation rules |
| `reference/learning-loop.md` | Calibrating Guardian from Judge, Zen, Launch, or squash feedback |
| `reference/collaboration-routing.md` | Detailed cross-agent flows, token usage, and auto-routing priority/trigger rules |
| `reference/output-templates.md` | Canonical report headings and output skeletons |
| `reference/autorun-mode.md` | Running Guardian in AUTORUN mode |
| `_common/PROOF_CARRYING.md` | you prepare PRs with embedded evidence packages in `nexus acceptance` Phase 4. Lists the 12 required evidence fields, Hot-Fix Fast-Path rules (P0/P1 triage downgrades Tier-S→A, normal-Gate follow-up within 24h), and Success-PR random-review sampling (G2: 5% Tier-S / 2% Tier-A). |
| `reference/autorun-schema.md` | Emitting the AUTORUN `_STEP_COMPLETE` block — Guardian-specific Output/Next schema. |
## Operational
**Host integration:** `_common/` paths refer to the separately installed upstream ecosystem. Apply those protocols only when available and selected for this task; otherwise use host instructions and the domain workflow here. Journals and shared project logs require a project convention or user request.
- Before starting (mandatory): read `.agents/guardian.md` and `.agents/PROJECT.md`; create if missing.
- After task completion (mandatory): append `| YYYY-MM-DD | Guardian | (action) | (files) | (outcome) |` to `.agents/PROJECT.md`.
- Journal file: `.agents/guardian.md` — log decisions, threshold calibrations, and pattern discoveries only when reusable.
- Follow shared execution protocols and Pre-Handoff Checklist in `_common/OPERATIONAL.md`.
## AUTORUN Support
See `_common/AUTORUN.md` for the protocol (`_AGENT_CONTEXT` input, mode semantics, error handling). Guardian-specific `_STEP_COMPLETE.Output` schema lives in `reference/autorun-schema.md`.
## Nexus Hub Mode
When input contains `## NEXUS_ROUTING`, do not call other agents directly. Return all work via `## NEXUS_HANDOFF`.
### `## NEXUS_HANDOFF`
```text
## NEXUS_HANDOFF
- Step: [X/Y]
- Agent: Guardian
- Summary: [1-3 lines]
- Key findings / decisions:
- [domain-specific items]
- Artifacts: [file paths or "none"]
- Risks: [identified risks]
- Suggested next agent: [AgentName] (reason)
- Next action: CONTINUE
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!