[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71QNR4MPF737D9MM6NWNWPZ":3,"skill-same:01M71QNR4MPF737D9MM6NWNWPZ":361},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":50,"commitSha":51,"skillDirectory":52,"forksCount":53,"repositoryHtmlUrl":54,"repositoryHomepageUrl":55,"ownerHtmlUrl":56,"ownerBlogUrl":6,"ownerDescription":57,"updatedAt":58,"install":59,"resources":72},"01M71QNR4MPF737D9MM6NWNWPZ","method-review",null,"Reviews data-science code changes with statistical, methods, PHI, and engineering personas and confidence-gated findings. Use when the user asks for code or PR review.","sajor2000\u002Fmethodsmith","sajor2000","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F126191042?v=4","01M71QG4M3561SH49E3S7J3GKT","JC Rojas ","01M71QG4N56X2P61YTJSRP95VD",6,"MIT","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"method review","review","gated","changes","with","use","science","methods","personas","for","pr review","pr","phi","data","code","when","data-science","mode","branch","reviews","2026-11-10 13:02:02",false,"---\nname: method-review\ndescription: \"Reviews data-science code changes with statistical, methods, PHI, and engineering personas and confidence-gated findings. Use when the user asks for code or PR review.\"\nargument-hint: \"[mode:agent] [blank to review current branch, or provide PR link]\"\n---\n\n# Code Review\n\n## Skill Value\n\n- **Problem it solves:** Data science code review needs correctness, testing, reproducibility, SAP drift, PHI, methods, and platform checks in one pass.\n- **Use when:** The user asks for code review, PR review, review before merge, or fixable findings on current changes.\n- **Output:** Prioritized P0-P3 findings, applied safe fixes when allowed, residual work, and verification summary.\n- **Ask only if:** Only in interactive mode when a routing decision materially changes whether to apply, defer, file, or ignore findings.\n- **Do not do:** Do not invent findings without evidence, mutate in report-only mode, or merge\u002Fpush without explicit workflow routing.\n- **Interaction:** Check repo\u002Fconfig\u002Fchat evidence first. Ask one decision-changing question at a time; use the current harness's blocking question UI when available, otherwise present numbered choices and wait.\n\n## Mode Detection and Arguments\n\nStrip recognized tokens from `$ARGUMENTS`; the remainder is the PR number, GitHub URL, or branch name.\n\n| Token | Mode or effect |\n|-------|----------------|\n| (none) | **Interactive** (default): review, apply `safe_auto` fixes, present findings, ask policy decisions on gated\u002Fmanual findings (once per decision point, via the Skill Value interaction rule), optionally continue to fix\u002Fpush\u002FPR |\n| `mode:agent` | **Agent**: read-only JSON handoff, also written to `review.json` |\n| `mode:autofix` | **Autofix**: `safe_auto` fixes with bounded re-review rounds; run artifact with residual work |\n| `mode:report-only` | **Report-only**: read-only; report and stop |\n| `mode:headless` | **Headless** (skill-to-skill): single-pass `safe_auto` fixes, structured text output, run artifact, ends with \"Review complete\". `mode:non-interactive` is its alias; normalize before conflict checks (both together are one mode) |\n| `depth:auto` \u002F `depth:full` | Default risk-aware roster (trivial low-risk code-only diffs may use the lite roster) \u002F force the complete roster. They conflict only with each other |\n| `base:\u003Csha-or-ref>` | Skip scope detection; use this diff base directly |\n| `plan:\u003Cpath>` | Load this plan for requirements verification |\n\n**Conflicting mode flags:** If multiple distinct mode tokens appear, stop without dispatching agents. In `mode:agent`, emit `{\"status\":\"failed\",\"reason\":\"conflicting mode flags\"}`. If `mode:headless` is one of them, emit `Review failed (headless mode). Reason: conflicting mode flags — \u003Cmode_a> and \u003Cmode_b> cannot be combined.` Otherwise emit the generic form: `Review failed. Reason: conflicting mode flags — \u003Cmode_a> and \u003Cmode_b> cannot be combined.`\n\n## Blinding-state awareness\n\nResolve the repository root before reading config:\n!`git rev-parse --show-toplevel 2>\u002Fdev\u002Fnull || true`\n\nRead `\u003Crepo-root>\u002F.methodsmith\u002Fconfig.local.yaml` with the native file-read tool (resolve the root at runtime if the line above is empty; in a linked worktree, fall back to the main checkout). When `stack_profile.blinding_state` is `blinded`, the diff is blinded EDA: skip `method-methods-reviewer` and `method-multiplicity-reviewer`, and emit a P0 finding \"Inferential code on assignment variable during blinded EDA\" if the diff runs regression, hypothesis-test, survival, or chi-square code on the assignment\u002Ftreatment\u002Farm variable.\n\n## Non-interactive mode rules\n\nThese hold from Stage 1 on in agent, autofix, report-only, and headless modes; full per-mode policy is in `references\u002Fpost-review.md` Step 2.\n\n- **Skip all user questions.** Infer scope and intent conservatively from arguments, Git metadata, the diff, and caller context; record uncertainty in the output.\n- **Headless requires a determinable diff scope.** Otherwise emit `Review failed (headless mode). Reason: no diff scope detected. Re-invoke with a branch name, PR number, or base:\u003Cref>.` and stop without dispatching agents.\n- **Mutation limits.** Agent and report-only modes never edit, fix, file tickets, or take PR actions (report-only also writes no artifacts). Autofix and headless apply only `safe_auto -> review-fixer` fixes, never file tickets, and never run alongside other mutating work on a shared checkout. No mode here commits, pushes, or creates a PR.\n\n## Quick Review Short-Circuit\n\nInteractive only: when the user asks for a quick, fast, or light review, announce the chosen path (Quick review vs Multi-agent review), then run the harness's built-in code review on any remaining target (Claude Code: `\u002Freview [target]`). Without one, continue here. Programmatic modes never short-circuit or announce.\n\n## Severity Scale\n\n- **P0:** critical breakage, exploitable vulnerability, data loss\u002Fcorruption. Must fix before merge.\n- **P1:** high-impact defect likely hit in normal usage, breaking contract. Should fix.\n- **P2:** moderate downside (edge case, perf regression, maintainability trap). Fix if straightforward.\n- **P3:** low-impact, narrow scope, minor improvement. User's discretion.\n\nRouting (`autofix_class`, owner) is defined in `references\u002Fmerge-findings.md`; only `safe_auto -> review-fixer` findings reach the in-skill fixer.\n\n## Protected Artifacts\n\nDiscard any finding that recommends deleting, removing, or gitignoring these pipeline artifacts: `docs\u002Fbrainstorms\u002F*`, `docs\u002Fplans\u002F*.md`, `docs\u002Fsolutions\u002F*.md`, and `analysis\u002Fmodel-strategy\u002F*` (including `analysis\u002Fmodel-strategy\u002F*-model-strategy.md` memos and their scaffolds).\n\n## Evidence access\n\nReviewers citing a guideline item or methods paper read `references\u002Fevidence-access.md`. **Look up here:** reporting-guideline statements and methods references reviewers cite.\n\n## PHI Safety Boundary\n\nThese rules govern every stage, sub-agent prompt, and artifact.\n\n**PHI-safe scope preflight.** Before any command prints a path name, diff body, file content, notebook output, PR title, or PR body, complete in order:\n\n1. **Classify the context** from already-available signals: the stack profile and CLIF signals (`__CE_CLIF__ active=true` in chat context, `CLIF_CLAUDE.md` at the root, or a git remote containing clif-icu, clif-consortium, or Common-Longitudinal-ICU-data-Format). Clinical, health-data, case-report, CLIF, or otherwise uncertain contexts are PHI-risk before path discovery.\n2. **Capture paths privately.** For a clearly non-clinical context, write changed and untracked path names under `$REVIEW_SCOPE_DIR` (`references\u002Fscope.md`) without echoing them. Never print a raw basename before this decision because a filename can itself contain an identifier.\n3. **Run a deterministic risk check** that returns only a risk boolean, counts, and extensions. Treat data files, codebooks, notebooks, manuscripts, figures, clinical notes, imaging, patient\u002FMRN\u002Fcase-like names, and any unclassified text file in a PHI-risk repository as PHI-risk. If local classification cannot establish a clearly non-PHI scope, treat it as PHI-risk.\n4. **Resolve the authorization marker** when PHI risk is present. **Sensitive-data boundary.** Resolve `phi_environment.mode` in `.methodsmith\u002Fconfig.local.yaml` (worktree, then main checkout; legacy `compliant: true` = `approved`, `compliant: false` = `schema-only`, `sensitive_data: false` = `no-sensitive-data`; any schema-only signal wins; unreadable = `schema-only`). `approved` or `no-sensitive-data`: proceed silently and never mention the boundary again. `schema-only`: headings, types, counts, and aggregates only; never open, print, or paste data values; run data-reading scripts as `method-safe-run -- \u003Ccommand>` (path in the guard's deny message); save results as aggregate tables (counts under 11 suppressed) in `output\u002F` or a `phi_environment.aggregate_dirs` entry. Unset, interactive: ask once with the blocking question tool (else a numbered list) offering `Approved endpoint: full access`, `Not approved or unsure: schema-only`, and `No sensitive data: public or synthetic`; save the answer as `phi_environment.mode` there once `git check-ignore -q .methodsmith\u002Fconfig.local.yaml` passes (else first add `.methodsmith\u002F*.local.yaml` to `.gitignore`) so the guard hook sees it. Unset, headless: schema-only. Record exactly `PHI authorization: confirmed` for `approved` or `no-sensitive-data`, and `PHI authorization: not confirmed` for `schema-only`.\n\n- With confirmed authorization, reviewers have no content limits; any reviewer that reads PHI-risk content must inherit the active session model with no model override.\n- Without it, do not run a broad content diff or open PHI-risk files; scope to path names, metadata, and files established as code, schemas, or reviewed aggregates, and report excluded content as a coverage gap.\n\nWhen no PHI risk is present, continue normally without asking.\n\n**Safe display metadata.** After preflight, set `SAFE_BRANCH` and other display metadata to their raw values only when each value is established as PHI-free. Otherwise use an opaque label such as `[redacted-phi-risk-branch]`. All prompts, reports, and persistent run artifacts use the safe values; raw metadata never leaves `$REVIEW_SCOPE_DIR`.\n\n**Reviewer access.** Pass `method-phi-leak-reviewer` the marker from Stage 1. With `PHI authorization: confirmed`, no reviewer has content limits. Without it: General\nreviewer sub-agents may inspect only the preflight-approved paths and PHI-free orchestrator context, and their prompts must prohibit broad\ncheckout-reading commands (`git diff`, `git show`, `git blame`, `git log`, `gh pr view`); `method-phi-leak-reviewer` gets paths, code, schemas, metadata, and reviewed aggregates; Stage 5b validators inherit these limits.\n\n## How to Run\n\nRun the stages in order, reading each stage's references on entry.\n\n### Stage 1: Determine scope\n\nRead `references\u002Fscope.md` and follow its path for the invocation (`base:`, PR, branch, or standalone; the last two run `references\u002Fresolve-base.sh`). It captures path names privately in `$REVIEW_SCOPE_DIR`, never printing them.\n\n- If `mode:agent`, `mode:report-only`, or `mode:headless` is active, do **not** run `gh pr checkout` or `git checkout \u003Cbranch>` on the shared checkout; unless already in an isolated checkout\u002Fworktree, emit that mode's stop message from `references\u002Fscope.md`.\n- Apply the PHI-safe scope preflight before reading any captured path, title, or body; then collect `git diff -U10 $BASE` only for the permitted paths.\n- Fail closed: when the base cannot be resolved, stop instead of falling back to `git diff HEAD`.\n\n### Stage 2: Intent and plan discovery\n\nRead `references\u002Fintent-and-plan.md`: write the reviewer intent summary (one intent question only in interactive mode) and locate a plan tagged `plan_source: explicit` or `inferred`. A missing plan never blocks the review.\n\n### Stage 3: Select reviewers\n\nRead `references\u002Fselect-reviewers.md` (authoritative roster, standards mapping, fail-closed lite-roster gate) and `references\u002Fpersona-catalog.md` (reviewer focus). Pass reviewers the resolved skill-local paths the roster names: `references\u002Fstudy-metadata-schema.md`, `references\u002Fguideline-registry.yaml`, `references\u002Fguideline-routing.md`, and the selected checklist files. Announce the team; do not wait for confirmation.\n\n### Stage 4: Spawn sub-agents\n\nRead `references\u002Fdispatch-reviewers.md`, `references\u002Fsubagent-template.md` (slot sources in `references\u002Fsubagent-template-variables.md`), `references\u002Fdiff-scope.md`, and `references\u002Ffindings-schema.json`. Dispatch every selected reviewer in parallel with the platform's sub-agent primitive (`Agent`\u002F`Task` in Claude Code, `spawn_agent` in Codex), or sequentially if parallel dispatch is unsupported. Omit the `mode` parameter. Reviewers are read-only; their only permitted write is their artifact under `\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002F`.\n\n### Stage 5: Merge findings\n\nRead `references\u002Fmerge-findings.md` (Action Routing and Stage 5): validate, deduplicate, promote agreement, route conservatively, demote, then suppress findings below anchor 75 except P0 findings at anchor 50+, and partition into fixer, residual actionable, and report-only queues.\n\n### Stage 5b: Validation pass\n\nRun one independent validator per surviving finding (budget: 15) using `references\u002Fmerge-findings.md` (Stage 5b) and `references\u002Fvalidator-template.md`, only where this table says so:\n\n| Mode | Runs Stage 5b? | Where |\n|------|---------------|-------|\n| `agent` | Yes, eagerly and read-only | Before Stage 6 |\n| `headless` | Yes, eagerly | Before Stage 6 |\n| `autofix` | Yes, eagerly | Before Stage 6 |\n| `interactive`, walk-through routing (option A) — per-finding phase | No -- the user is the per-finding validator | n\u002Fa |\n| `interactive`, walk-through routing (option A) — best-judgment-the-rest handoff | No -- the fixer's outcome validates | n\u002Fa |\n| `interactive`, best-judgment routing (option B) | No -- the fixer's outcome validates | n\u002Fa |\n| `interactive`, File-tickets routing (option C) | Yes, on all pending findings | Before tracker dispatch |\n| `interactive`, Report-only routing (option D) | No -- nothing is being externalized | n\u002Fa |\n| `report-only` | No -- read-only mode externalizes nothing | n\u002Fa |\n\n### Stage 6: Synthesize and present\n\nRead `references\u002Fsynthesis-and-output.md` and `references\u002Freview-output-template.md`, apply their quality gates, and render: pipe-delimited severity tables (interactive, autofix, report-only), the structured text envelope (headless), or only the JSON contract below (`mode:agent`). No time estimates.\n\n### JSON output format (`mode:agent` only)\n\nEmit one raw JSON object as the entire response, without a markdown fence or trailing prose. Write the identical payload to `\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002Freview.json`.\n\nMinimum shape:\n\n```json\n{\n  \"status\": \"complete\",\n  \"verdict\": \"Ready to merge | Ready with fixes | Not ready\",\n  \"scope\": {\"base\": \"\u003Cmerge-base sha, pr:NNN marker, or base ref>\", \"branch\": \"\u003CSAFE_BRANCH>\",\n            \"head_sha\": \"\u003Cgit rev-parse HEAD>\", \"pr_url\": null, \"files_changed\": 0},\n  \"intent\": \"\u003Csummary>\",\n  \"intent_confidence\": \"explicit | inferred | uncertain\",\n  \"reviewers\": [], \"findings\": [], \"actionable_findings\": [], \"pre_existing_findings\": [],\n  \"requirements_completeness\": null, \"learnings\": [], \"deployment_notes\": [],\n  \"residual_risks\": [], \"testing_gaps\": [], \"coverage\": {},\n  \"artifact_path\": \"\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002F\",\n  \"run_id\": \"\u003Crun-id>\"\n}\n```\n\nEach `findings` object carries stable `#`, title, severity, file, line, confidence, autofix_class, owner, requires_verification, pre_existing, suggested_fix, why_it_matters, evidence, and reviewers. `actionable_findings` is the `gated_auto` or `manual` subset owned by `downstream-resolver`. Agent mode never includes applied fixes because it never mutates. On failure return `{\"status\":\"failed\",\"reason\":\"\u003Cone sentence>\"}`; use `degraded` when all reviewers fail and `skipped` when a review skip rule fires.\n\n## After Review\n\n- **Interactive, autofix, and headless modes:** read `references\u002Fpost-review.md` and follow Steps 1-5. Interactive routing also reads, when each path is taken, `references\u002Ftracker-defer.md` (tracker pre-detection, option C, and Defer), `references\u002Fwalkthrough.md` (option A and the unified completion report), and `references\u002Fbulk-preview.md` (option C preview).\n- **Agent mode:** perform no fixes, tickets, commits, pushes, PRs, or checkout switches. Write `review.json` plus the Step 4 run artifact from `references\u002Fpost-review.md` (synthesized findings and `metadata.json` with `SAFE_BRANCH`), then emit nothing after the single JSON object.\n- **Report-only mode:** stop after Stage 6. Do not write run artifacts.\n\nNever commit, push, or create a PR outside interactive mode's Step 5, and only after fixes were applied in this run.\n","# Code Review\n\n## Skill Value\n\n- **Problem it solves:** Data science code review needs correctness, testing, reproducibility, SAP drift, PHI, methods, and platform checks in one pass.\n- **Use when:** The user asks for code review, PR review, review before merge, or fixable findings on current changes.\n- **Output:** Prioritized P0-P3 findings, applied safe fixes when allowed, residual work, and verification summary.\n- **Ask only if:** Only in interactive mode when a routing decision materially changes whether to apply, defer, file, or ignore findings.\n- **Do not do:** Do not invent findings without evidence, mutate in report-only mode, or merge\u002Fpush without explicit workflow routing.\n- **Interaction:** Check repo\u002Fconfig\u002Fchat evidence first. Ask one decision-changing question at a time; use the current harness's blocking question UI when available, otherwise present numbered choices and wait.\n\n## Mode Detection and Arguments\n\nStrip recognized tokens from `$ARGUMENTS`; the remainder is the PR number, GitHub URL, or branch name.\n\n| Token | Mode or effect |\n|-------|----------------|\n| (none) | **Interactive** (default): review, apply `safe_auto` fixes, present findings, ask policy decisions on gated\u002Fmanual findings (once per decision point, via the Skill Value interaction rule), optionally continue to fix\u002Fpush\u002FPR |\n| `mode:agent` | **Agent**: read-only JSON handoff, also written to `review.json` |\n| `mode:autofix` | **Autofix**: `safe_auto` fixes with bounded re-review rounds; run artifact with residual work |\n| `mode:report-only` | **Report-only**: read-only; report and stop |\n| `mode:headless` | **Headless** (skill-to-skill): single-pass `safe_auto` fixes, structured text output, run artifact, ends with \"Review complete\". `mode:non-interactive` is its alias; normalize before conflict checks (both together are one mode) |\n| `depth:auto` \u002F `depth:full` | Default risk-aware roster (trivial low-risk code-only diffs may use the lite roster) \u002F force the complete roster. They conflict only with each other |\n| `base:\u003Csha-or-ref>` | Skip scope detection; use this diff base directly |\n| `plan:\u003Cpath>` | Load this plan for requirements verification |\n\n**Conflicting mode flags:** If multiple distinct mode tokens appear, stop without dispatching agents. In `mode:agent`, emit `{\"status\":\"failed\",\"reason\":\"conflicting mode flags\"}`. If `mode:headless` is one of them, emit `Review failed (headless mode). Reason: conflicting mode flags — \u003Cmode_a> and \u003Cmode_b> cannot be combined.` Otherwise emit the generic form: `Review failed. Reason: conflicting mode flags — \u003Cmode_a> and \u003Cmode_b> cannot be combined.`\n\n## Blinding-state awareness\n\nResolve the repository root before reading config:\n!`git rev-parse --show-toplevel 2>\u002Fdev\u002Fnull || true`\n\nRead `\u003Crepo-root>\u002F.methodsmith\u002Fconfig.local.yaml` with the native file-read tool (resolve the root at runtime if the line above is empty; in a linked worktree, fall back to the main checkout). When `stack_profile.blinding_state` is `blinded`, the diff is blinded EDA: skip `method-methods-reviewer` and `method-multiplicity-reviewer`, and emit a P0 finding \"Inferential code on assignment variable during blinded EDA\" if the diff runs regression, hypothesis-test, survival, or chi-square code on the assignment\u002Ftreatment\u002Farm variable.\n\n## Non-interactive mode rules\n\nThese hold from Stage 1 on in agent, autofix, report-only, and headless modes; full per-mode policy is in `references\u002Fpost-review.md` Step 2.\n\n- **Skip all user questions.** Infer scope and intent conservatively from arguments, Git metadata, the diff, and caller context; record uncertainty in the output.\n- **Headless requires a determinable diff scope.** Otherwise emit `Review failed (headless mode). Reason: no diff scope detected. Re-invoke with a branch name, PR number, or base:\u003Cref>.` and stop without dispatching agents.\n- **Mutation limits.** Agent and report-only modes never edit, fix, file tickets, or take PR actions (report-only also writes no artifacts). Autofix and headless apply only `safe_auto -> review-fixer` fixes, never file tickets, and never run alongside other mutating work on a shared checkout. No mode here commits, pushes, or creates a PR.\n\n## Quick Review Short-Circuit\n\nInteractive only: when the user asks for a quick, fast, or light review, announce the chosen path (Quick review vs Multi-agent review), then run the harness's built-in code review on any remaining target (Claude Code: `\u002Freview [target]`). Without one, continue here. Programmatic modes never short-circuit or announce.\n\n## Severity Scale\n\n- **P0:** critical breakage, exploitable vulnerability, data loss\u002Fcorruption. Must fix before merge.\n- **P1:** high-impact defect likely hit in normal usage, breaking contract. Should fix.\n- **P2:** moderate downside (edge case, perf regression, maintainability trap). Fix if straightforward.\n- **P3:** low-impact, narrow scope, minor improvement. User's discretion.\n\nRouting (`autofix_class`, owner) is defined in `references\u002Fmerge-findings.md`; only `safe_auto -> review-fixer` findings reach the in-skill fixer.\n\n## Protected Artifacts\n\nDiscard any finding that recommends deleting, removing, or gitignoring these pipeline artifacts: `docs\u002Fbrainstorms\u002F*`, `docs\u002Fplans\u002F*.md`, `docs\u002Fsolutions\u002F*.md`, and `analysis\u002Fmodel-strategy\u002F*` (including `analysis\u002Fmodel-strategy\u002F*-model-strategy.md` memos and their scaffolds).\n\n## Evidence access\n\nReviewers citing a guideline item or methods paper read `references\u002Fevidence-access.md`. **Look up here:** reporting-guideline statements and methods references reviewers cite.\n\n## PHI Safety Boundary\n\nThese rules govern every stage, sub-agent prompt, and artifact.\n\n**PHI-safe scope preflight.** Before any command prints a path name, diff body, file content, notebook output, PR title, or PR body, complete in order:\n\n1. **Classify the context** from already-available signals: the stack profile and CLIF signals (`__CE_CLIF__ active=true` in chat context, `CLIF_CLAUDE.md` at the root, or a git remote containing clif-icu, clif-consortium, or Common-Longitudinal-ICU-data-Format). Clinical, health-data, case-report, CLIF, or otherwise uncertain contexts are PHI-risk before path discovery.\n2. **Capture paths privately.** For a clearly non-clinical context, write changed and untracked path names under `$REVIEW_SCOPE_DIR` (`references\u002Fscope.md`) without echoing them. Never print a raw basename before this decision because a filename can itself contain an identifier.\n3. **Run a deterministic risk check** that returns only a risk boolean, counts, and extensions. Treat data files, codebooks, notebooks, manuscripts, figures, clinical notes, imaging, patient\u002FMRN\u002Fcase-like names, and any unclassified text file in a PHI-risk repository as PHI-risk. If local classification cannot establish a clearly non-PHI scope, treat it as PHI-risk.\n4. **Resolve the authorization marker** when PHI risk is present. **Sensitive-data boundary.** Resolve `phi_environment.mode` in `.methodsmith\u002Fconfig.local.yaml` (worktree, then main checkout; legacy `compliant: true` = `approved`, `compliant: false` = `schema-only`, `sensitive_data: false` = `no-sensitive-data`; any schema-only signal wins; unreadable = `schema-only`). `approved` or `no-sensitive-data`: proceed silently and never mention the boundary again. `schema-only`: headings, types, counts, and aggregates only; never open, print, or paste data values; run data-reading scripts as `method-safe-run -- \u003Ccommand>` (path in the guard's deny message); save results as aggregate tables (counts under 11 suppressed) in `output\u002F` or a `phi_environment.aggregate_dirs` entry. Unset, interactive: ask once with the blocking question tool (else a numbered list) offering `Approved endpoint: full access`, `Not approved or unsure: schema-only`, and `No sensitive data: public or synthetic`; save the answer as `phi_environment.mode` there once `git check-ignore -q .methodsmith\u002Fconfig.local.yaml` passes (else first add `.methodsmith\u002F*.local.yaml` to `.gitignore`) so the guard hook sees it. Unset, headless: schema-only. Record exactly `PHI authorization: confirmed` for `approved` or `no-sensitive-data`, and `PHI authorization: not confirmed` for `schema-only`.\n\n- With confirmed authorization, reviewers have no content limits; any reviewer that reads PHI-risk content must inherit the active session model with no model override.\n- Without it, do not run a broad content diff or open PHI-risk files; scope to path names, metadata, and files established as code, schemas, or reviewed aggregates, and report excluded content as a coverage gap.\n\nWhen no PHI risk is present, continue normally without asking.\n\n**Safe display metadata.** After preflight, set `SAFE_BRANCH` and other display metadata to their raw values only when each value is established as PHI-free. Otherwise use an opaque label such as `[redacted-phi-risk-branch]`. All prompts, reports, and persistent run artifacts use the safe values; raw metadata never leaves `$REVIEW_SCOPE_DIR`.\n\n**Reviewer access.** Pass `method-phi-leak-reviewer` the marker from Stage 1. With `PHI authorization: confirmed`, no reviewer has content limits. Without it: General\nreviewer sub-agents may inspect only the preflight-approved paths and PHI-free orchestrator context, and their prompts must prohibit broad\ncheckout-reading commands (`git diff`, `git show`, `git blame`, `git log`, `gh pr view`); `method-phi-leak-reviewer` gets paths, code, schemas, metadata, and reviewed aggregates; Stage 5b validators inherit these limits.\n\n## How to Run\n\nRun the stages in order, reading each stage's references on entry.\n\n### Stage 1: Determine scope\n\nRead `references\u002Fscope.md` and follow its path for the invocation (`base:`, PR, branch, or standalone; the last two run `references\u002Fresolve-base.sh`). It captures path names privately in `$REVIEW_SCOPE_DIR`, never printing them.\n\n- If `mode:agent`, `mode:report-only`, or `mode:headless` is active, do **not** run `gh pr checkout` or `git checkout \u003Cbranch>` on the shared checkout; unless already in an isolated checkout\u002Fworktree, emit that mode's stop message from `references\u002Fscope.md`.\n- Apply the PHI-safe scope preflight before reading any captured path, title, or body; then collect `git diff -U10 $BASE` only for the permitted paths.\n- Fail closed: when the base cannot be resolved, stop instead of falling back to `git diff HEAD`.\n\n### Stage 2: Intent and plan discovery\n\nRead `references\u002Fintent-and-plan.md`: write the reviewer intent summary (one intent question only in interactive mode) and locate a plan tagged `plan_source: explicit` or `inferred`. A missing plan never blocks the review.\n\n### Stage 3: Select reviewers\n\nRead `references\u002Fselect-reviewers.md` (authoritative roster, standards mapping, fail-closed lite-roster gate) and `references\u002Fpersona-catalog.md` (reviewer focus). Pass reviewers the resolved skill-local paths the roster names: `references\u002Fstudy-metadata-schema.md`, `references\u002Fguideline-registry.yaml`, `references\u002Fguideline-routing.md`, and the selected checklist files. Announce the team; do not wait for confirmation.\n\n### Stage 4: Spawn sub-agents\n\nRead `references\u002Fdispatch-reviewers.md`, `references\u002Fsubagent-template.md` (slot sources in `references\u002Fsubagent-template-variables.md`), `references\u002Fdiff-scope.md`, and `references\u002Ffindings-schema.json`. Dispatch every selected reviewer in parallel with the platform's sub-agent primitive (`Agent`\u002F`Task` in Claude Code, `spawn_agent` in Codex), or sequentially if parallel dispatch is unsupported. Omit the `mode` parameter. Reviewers are read-only; their only permitted write is their artifact under `\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002F`.\n\n### Stage 5: Merge findings\n\nRead `references\u002Fmerge-findings.md` (Action Routing and Stage 5): validate, deduplicate, promote agreement, route conservatively, demote, then suppress findings below anchor 75 except P0 findings at anchor 50+, and partition into fixer, residual actionable, and report-only queues.\n\n### Stage 5b: Validation pass\n\nRun one independent validator per surviving finding (budget: 15) using `references\u002Fmerge-findings.md` (Stage 5b) and `references\u002Fvalidator-template.md`, only where this table says so:\n\n| Mode | Runs Stage 5b? | Where |\n|------|---------------|-------|\n| `agent` | Yes, eagerly and read-only | Before Stage 6 |\n| `headless` | Yes, eagerly | Before Stage 6 |\n| `autofix` | Yes, eagerly | Before Stage 6 |\n| `interactive`, walk-through routing (option A) — per-finding phase | No -- the user is the per-finding validator | n\u002Fa |\n| `interactive`, walk-through routing (option A) — best-judgment-the-rest handoff | No -- the fixer's outcome validates | n\u002Fa |\n| `interactive`, best-judgment routing (option B) | No -- the fixer's outcome validates | n\u002Fa |\n| `interactive`, File-tickets routing (option C) | Yes, on all pending findings | Before tracker dispatch |\n| `interactive`, Report-only routing (option D) | No -- nothing is being externalized | n\u002Fa |\n| `report-only` | No -- read-only mode externalizes nothing | n\u002Fa |\n\n### Stage 6: Synthesize and present\n\nRead `references\u002Fsynthesis-and-output.md` and `references\u002Freview-output-template.md`, apply their quality gates, and render: pipe-delimited severity tables (interactive, autofix, report-only), the structured text envelope (headless), or only the JSON contract below (`mode:agent`). No time estimates.\n\n### JSON output format (`mode:agent` only)\n\nEmit one raw JSON object as the entire response, without a markdown fence or trailing prose. Write the identical payload to `\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002Freview.json`.\n\nMinimum shape:\n\n```json\n{\n  \"status\": \"complete\",\n  \"verdict\": \"Ready to merge | Ready with fixes | Not ready\",\n  \"scope\": {\"base\": \"\u003Cmerge-base sha, pr:NNN marker, or base ref>\", \"branch\": \"\u003CSAFE_BRANCH>\",\n            \"head_sha\": \"\u003Cgit rev-parse HEAD>\", \"pr_url\": null, \"files_changed\": 0},\n  \"intent\": \"\u003Csummary>\",\n  \"intent_confidence\": \"explicit | inferred | uncertain\",\n  \"reviewers\": [], \"findings\": [], \"actionable_findings\": [], \"pre_existing_findings\": [],\n  \"requirements_completeness\": null, \"learnings\": [], \"deployment_notes\": [],\n  \"residual_risks\": [], \"testing_gaps\": [], \"coverage\": {},\n  \"artifact_path\": \"\u002Ftmp\u002Fmethodsmith\u002Fmethod-review\u002F\u003Crun-id>\u002F\",\n  \"run_id\": \"\u003Crun-id>\"\n}\n```\n\nEach `findings` object carries stable `#`, title, severity, file, line, confidence, autofix_class, owner, requires_verification, pre_existing, suggested_fix, why_it_matters, evidence, and reviewers. `actionable_findings` is the `gated_auto` or `manual` subset owned by `downstream-resolver`. Agent mode never includes applied fixes because it never mutates. On failure return `{\"status\":\"failed\",\"reason\":\"\u003Cone sentence>\"}`; use `degraded` when all reviewers fail and `skipped` when a review skip rule fires.\n\n## After Review\n\n- **Interactive, autofix, and headless modes:** read `references\u002Fpost-review.md` and follow Steps 1-5. Interactive routing also reads, when each path is taken, `references\u002Ftracker-defer.md` (tracker pre-detection, option C, and Defer), `references\u002Fwalkthrough.md` (option A and the unified completion report), and `references\u002Fbulk-preview.md` (option C preview).\n- **Agent mode:** perform no fixes, tickets, commits, pushes, PRs, or checkout switches. Write `review.json` plus the Step 4 run artifact from `references\u002Fpost-review.md` (synthesized findings and `metadata.json` with `SAFE_BRANCH`), then emit nothing after the single JSON object.\n- **Report-only mode:** stop after Stage 6. Do not write run artifacts.\n\nNever commit, push, or create a PR outside interactive mode's Step 5, and only after fixes were applied in this run.\n",{"name":5,"description":7,"argument-hint":49},"[mode:agent] [blank to review current branch, or provide PR link]","main","893bccb980e4dce1345919e9f675f5a9dcbed364","plugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review",0,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith","https:\u002F\u002Fsajor2000.github.io\u002Fmethodsmith\u002F","https:\u002F\u002Fgithub.com\u002Fsajor2000","Critical care physician-scientist at Rush University. @Common-Longitudinal-ICU-data-Format contributor building open ICU data tools & clinical AI","2026-11-01 01:56:01",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add sajor2000\u002Fmethodsmith --skill method-review",{"tool":65,"command":66},"bunx","bunx skills add sajor2000\u002Fmethodsmith --skill method-review",{"tool":68,"command":69},"pnpm","pnpm dlx skills add sajor2000\u002Fmethodsmith --skill method-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002FSKILL.md",true,[73,79,83,87,91,95,99,103,107,111,115,119,123,127,131,135,139,143,147,151,155,159,163,167,171,175,179,183,187,191,195,199,203,207,211,215,219,223,227,231,235,239,243,249,253,257,261,265,269,273,277,281,285,289,293,297,301,305,309,313,317,321,325,329,333,337,341,345,349,353,357],{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"references\u002Famstar-2-checklist.md","REFERENCE","参考文档",12191,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Famstar-2-checklist.md",{"path":80,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":81,"sourceHtmlUrl":82},"references\u002Farrive-checklist.md",15836,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Farrive-checklist.md",{"path":84,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":85,"sourceHtmlUrl":86},"references\u002Fbulk-preview.md",6412,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fbulk-preview.md",{"path":88,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":89,"sourceHtmlUrl":90},"references\u002Fcare-checklist.md",9182,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fcare-checklist.md",{"path":92,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":93,"sourceHtmlUrl":94},"references\u002Fcharms-checklist.md",18345,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fcharms-checklist.md",{"path":96,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":97,"sourceHtmlUrl":98},"references\u002Fchart-checklist.md",7196,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fchart-checklist.md",{"path":100,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":101,"sourceHtmlUrl":102},"references\u002Fcheers-checklist.md",16546,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fcheers-checklist.md",{"path":104,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":105,"sourceHtmlUrl":106},"references\u002Fclaim-checklist.md",19395,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fclaim-checklist.md",{"path":108,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":109,"sourceHtmlUrl":110},"references\u002Fconsort-adaptive-checklist.md",15055,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-adaptive-checklist.md",{"path":112,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":113,"sourceHtmlUrl":114},"references\u002Fconsort-ai-checklist.md",8276,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-ai-checklist.md",{"path":116,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":117,"sourceHtmlUrl":118},"references\u002Fconsort-checklist.md",19557,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-checklist.md",{"path":120,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":121,"sourceHtmlUrl":122},"references\u002Fconsort-cluster-checklist.md",11057,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-cluster-checklist.md",{"path":124,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":125,"sourceHtmlUrl":126},"references\u002Fconsort-nof1-checklist.md",13398,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-nof1-checklist.md",{"path":128,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":129,"sourceHtmlUrl":130},"references\u002Fconsort-outcomes-checklist.md",8391,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fconsort-outcomes-checklist.md",{"path":132,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":133,"sourceHtmlUrl":134},"references\u002Fcoreq-checklist.md",15544,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fcoreq-checklist.md",{"path":136,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":137,"sourceHtmlUrl":138},"references\u002Fdeal-checklist.md",13780,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fdeal-checklist.md",{"path":140,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":141,"sourceHtmlUrl":142},"references\u002Fdecide-ai-checklist.md",5643,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fdecide-ai-checklist.md",{"path":144,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":145,"sourceHtmlUrl":146},"references\u002Fdiff-scope.md",1812,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fdiff-scope.md",{"path":148,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":149,"sourceHtmlUrl":150},"references\u002Fdispatch-reviewers.md",5919,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fdispatch-reviewers.md",{"path":152,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":153,"sourceHtmlUrl":154},"references\u002Fevidence-access.md",3548,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fevidence-access.md",{"path":156,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":157,"sourceHtmlUrl":158},"references\u002Ffindings-schema.json",9973,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ffindings-schema.json",{"path":160,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":161,"sourceHtmlUrl":162},"references\u002Fgramms-checklist.md",5260,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fgramms-checklist.md",{"path":164,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":165,"sourceHtmlUrl":166},"references\u002Fguideline-registry.yaml",40405,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fguideline-registry.yaml",{"path":168,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":169,"sourceHtmlUrl":170},"references\u002Fguideline-routing.md",20805,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fguideline-routing.md",{"path":172,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":173,"sourceHtmlUrl":174},"references\u002Fintent-and-plan.md",3656,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fintent-and-plan.md",{"path":176,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":177,"sourceHtmlUrl":178},"references\u002Fmerge-findings.md",14397,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fmerge-findings.md",{"path":180,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":181,"sourceHtmlUrl":182},"references\u002Fmi-claim-checklist.md",3786,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fmi-claim-checklist.md",{"path":184,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":185,"sourceHtmlUrl":186},"references\u002Fpdsqi-checklist.md",3573,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fpdsqi-checklist.md",{"path":188,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":189,"sourceHtmlUrl":190},"references\u002Fpersona-catalog.md",5542,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fpersona-catalog.md",{"path":192,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":193,"sourceHtmlUrl":194},"references\u002Fpost-review.md",22552,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fpost-review.md",{"path":196,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":197,"sourceHtmlUrl":198},"references\u002Fprisma-checklist.md",18492,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-checklist.md",{"path":200,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":201,"sourceHtmlUrl":202},"references\u002Fprisma-dta-checklist.md",12728,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-dta-checklist.md",{"path":204,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":205,"sourceHtmlUrl":206},"references\u002Fprisma-ipd-checklist.md",16906,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-ipd-checklist.md",{"path":208,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":209,"sourceHtmlUrl":210},"references\u002Fprisma-nma-checklist.md",14698,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-nma-checklist.md",{"path":212,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":213,"sourceHtmlUrl":214},"references\u002Fprisma-p-checklist.md",4100,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-p-checklist.md",{"path":216,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":217,"sourceHtmlUrl":218},"references\u002Fprisma-s-checklist.md",6910,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-s-checklist.md",{"path":220,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":221,"sourceHtmlUrl":222},"references\u002Fprisma-scr-checklist.md",16220,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprisma-scr-checklist.md",{"path":224,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":225,"sourceHtmlUrl":226},"references\u002Fprobast-ai-checklist.md",10135,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fprobast-ai-checklist.md",{"path":228,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":229,"sourceHtmlUrl":230},"references\u002Fquadas-3-checklist.md",10505,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fquadas-3-checklist.md",{"path":232,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":233,"sourceHtmlUrl":234},"references\u002Frecord-checklist.md",7944,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Frecord-checklist.md",{"path":236,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":237,"sourceHtmlUrl":238},"references\u002Frecord-pe-checklist.md",7519,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Frecord-pe-checklist.md",{"path":240,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":241,"sourceHtmlUrl":242},"references\u002Freforms-checklist.md",11077,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Freforms-checklist.md",{"path":244,"resourceType":245,"resourceTypeDesc":246,"sizeBytes":247,"sourceHtmlUrl":248},"references\u002Fresolve-base.sh","SCRIPT","脚本",4327,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fresolve-base.sh",{"path":250,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":251,"sourceHtmlUrl":252},"references\u002Freview-output-template.md",7440,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Freview-output-template.md",{"path":254,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":255,"sourceHtmlUrl":256},"references\u002Fright-checklist.md",12199,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fright-checklist.md",{"path":258,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":259,"sourceHtmlUrl":260},"references\u002Frob2-checklist.md",16799,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Frob2-checklist.md",{"path":262,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":263,"sourceHtmlUrl":264},"references\u002Frobins-i-checklist.md",13856,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Frobins-i-checklist.md",{"path":266,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":267,"sourceHtmlUrl":268},"references\u002Fscope.md",14004,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fscope.md",{"path":270,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":271,"sourceHtmlUrl":272},"references\u002Fselect-reviewers.md",10108,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fselect-reviewers.md",{"path":274,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":275,"sourceHtmlUrl":276},"references\u002Fspirit-ai-checklist.md",8066,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fspirit-ai-checklist.md",{"path":278,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":279,"sourceHtmlUrl":280},"references\u002Fspirit-checklist.md",11708,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fspirit-checklist.md",{"path":282,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":283,"sourceHtmlUrl":284},"references\u002Fspirit-outcomes-checklist.md",4936,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fspirit-outcomes-checklist.md",{"path":286,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":287,"sourceHtmlUrl":288},"references\u002Fsquire-checklist.md",12650,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fsquire-checklist.md",{"path":290,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":291,"sourceHtmlUrl":292},"references\u002Fsrqr-checklist.md",9181,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fsrqr-checklist.md",{"path":294,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":295,"sourceHtmlUrl":296},"references\u002Fstard-ai-checklist.md",12916,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstard-ai-checklist.md",{"path":298,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":299,"sourceHtmlUrl":300},"references\u002Fstard-checklist.md",12555,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstard-checklist.md",{"path":302,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":303,"sourceHtmlUrl":304},"references\u002Fstart-rwe-checklist.md",11341,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstart-rwe-checklist.md",{"path":306,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":307,"sourceHtmlUrl":308},"references\u002Fstrega-checklist.md",7463,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstrega-checklist.md",{"path":310,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":311,"sourceHtmlUrl":312},"references\u002Fstrobe-checklist.md",15089,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstrobe-checklist.md",{"path":314,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":315,"sourceHtmlUrl":316},"references\u002Fstrobe-mr-checklist.md",12993,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstrobe-mr-checklist.md",{"path":318,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":319,"sourceHtmlUrl":320},"references\u002Fstudy-metadata-schema.md",7187,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fstudy-metadata-schema.md",{"path":322,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":323,"sourceHtmlUrl":324},"references\u002Fsubagent-template-variables.md",1161,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fsubagent-template-variables.md",{"path":326,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":327,"sourceHtmlUrl":328},"references\u002Fsubagent-template.md",23926,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fsubagent-template.md",{"path":330,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":331,"sourceHtmlUrl":332},"references\u002Fsynthesis-and-output.md",9153,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fsynthesis-and-output.md",{"path":334,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":335,"sourceHtmlUrl":336},"references\u002Ftarget-checklist.md",11393,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ftarget-checklist.md",{"path":338,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":339,"sourceHtmlUrl":340},"references\u002Ftidier-checklist.md",6454,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ftidier-checklist.md",{"path":342,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":343,"sourceHtmlUrl":344},"references\u002Ftracker-defer.md",13434,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ftracker-defer.md",{"path":346,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":347,"sourceHtmlUrl":348},"references\u002Ftripod-ai-checklist.md",23898,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ftripod-ai-checklist.md",{"path":350,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":351,"sourceHtmlUrl":352},"references\u002Ftripod-llm-checklist.md",8377,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Ftripod-llm-checklist.md",{"path":354,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":355,"sourceHtmlUrl":356},"references\u002Fvalidator-template.md",5053,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fvalidator-template.md",{"path":358,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":359,"sourceHtmlUrl":360},"references\u002Fwalkthrough.md",20827,"https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-review\u002Freferences\u002Fwalkthrough.md",[362,374,387,398,407,416],{"skillNo":363,"name":364,"nameZh":6,"description":365,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":366,"categories":367,"keywords":369,"publishedAt":44},"01M71QQY0KE1184AF58EC1J5C1","skill-one","Sample skill","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsample-plugin\u002Fskills\u002Fskill-one\u002FSKILL.md",[368],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[370,371,372,373],"one","skill one","sample","sample skill",{"skillNo":375,"name":376,"nameZh":6,"description":377,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":378,"categories":379,"keywords":381,"publishedAt":44},"01M71QQW3PNK9AYB5HBMAPM72J","disabled-skill","A skill with model invocation disabled","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsample-plugin\u002Fskills\u002Fdisabled-skill\u002FSKILL.md",[380],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[382,383,384,28,385,386],"disabled skill","a skill","with model","true","model",{"skillNo":388,"name":389,"nameZh":6,"description":390,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":391,"categories":392,"keywords":394,"publishedAt":44},"01M71QQSY02X7DNZQRAGJ6YFGY","claude-only-skill","A skill restricted to Claude Code only","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsample-plugin\u002Fskills\u002Fclaude-only-skill\u002FSKILL.md",[393],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[395,396,397,383,38],"claude only","claude only skill","only",{"skillNo":399,"name":400,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":401,"categories":402,"keywords":404,"publishedAt":44},"01M71QQRPZ76X623V5P7T1E3DD","default-skill","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fcustom-paths\u002Fskills\u002Fdefault-skill\u002FSKILL.md",[403],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[405,406],"default","default skill",{"skillNo":408,"name":409,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":410,"categories":411,"keywords":413,"publishedAt":44},"01M71QQQG3FF2HFQHVH8VHA08R","custom-skill","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fcustom-paths\u002Fcustom-skills\u002Fcustom-skill\u002FSKILL.md",[412],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[414,415],"custom skill","custom",{"skillNo":417,"name":418,"nameZh":6,"description":419,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":420,"categories":421,"keywords":422,"publishedAt":44},"01M71QQMBNC76141GHXBSMENSH","method-write","Drafts, revises, and audits evidence-bound manuscripts, sections, abstracts, and reviewer responses with claim provenance. Use when scientific prose must be written or revised (entry point).","https:\u002F\u002Fgithub.com\u002Fsajor2000\u002Fmethodsmith\u002Fblob\u002Fmain\u002Fplugins\u002Fmethodsmith\u002Fskills\u002Fmethod-write\u002FSKILL.md",[],[423,424,425,426,427,428,29,39,429,430,28,431,432,433],"write","method write","point","evidence","entry","claim","provenance","reviewer","scientific","prose","drafts"]