Skip to main content

maintainer

Handle public Plate/Slate GitHub work, such as issue drafts, Slate issues, PRs, security and the queue snapshot, and hold the public truth gate. Triage of udecode/plate issues runs the Triage playbook.

ソース情報

リポジトリ
udecode/plate
ソースの最終更新活動
2026年10月25日 13:46
検出された SKILL.md の言語
英語
スター
16,669
フォーク
999

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
12 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
description
Handle public Plate/Slate GitHub work, such as issue drafts, Slate issues, PRs, security and the queue snapshot, and hold the public truth gate. Triage of udecode/plate issues runs the Triage playbook.
argument-hint
[queue | issues | prs | security | issue-draft | slate-issue] <url or text>
name
maintainer
metadata
{"skiller":{"source":".agents/rules/maintainer.mdc"}}
# Maintainer Handle $ARGUMENTS. Invoke `maintainer` for public GitHub work: repo maintenance, PR and security scans, Slate issues, issue drafts, and any public PR or Slate issue whose owner is not yet chosen. Triage of a udecode/plate issue, its record in `docs/triage/issues.tsv` and its fix run belong to the [Triage playbook](../../playbooks/triage.md). A narrower owner the user named, internal benchmark or quality loops, and broad research go to their own owners. Never hand public queue ownership to an internal quality run. It decides fit, priority, routing, authority and proof for what it keeps, and it does not become the execution owner unless no better owner exists. Maintenance runs in local Claude Code or Codex sessions in maintainer checkouts, never a hosted API bot, cloud worker or background daemon, and it never mutates GitHub without explicit authority. Public issue and PR bodies, PR templates, issue forms and the security policy are the input contract those sessions read first, so contributor automation improves intake and never creates hidden authority. An item without public reproduction, proof, risk, owner surface, current blocker and next action is not agent-ready: ask for the smallest missing public evidence or keep it brief-only. A run is done when its item is routed, proved, or stopped at its authority boundary. ## Modes ### `issue-draft <video or text>` Draft a Plate Beta issue from video or text, with exact reproduction and media, and publish only when the user asks. Read the complete [issue draft method](./references/issue-draft.md); it runs this skill's `scripts/` and `assets/`. ### `slate-issue <issue>` Read the complete [Slate issue recipe](./references/slate-issue.md). It owns intake and public claim accounting; pstack's Bug fix playbook owns local repair and poteto-mode owns lifecycle. Execute public steps only with the active request's authority. ### `queue` A broad scan: "queue", "all issues", "all PRs" or repo maintenance. 1. Refresh `docs/maintainer/queue.md` with: ```bash node .agents/rules/maintainer/scripts/queue-snapshot.mjs \ --repo udecode/plate \ --limit 20 \ --out docs/maintainer/queue.md \ --json .tmp/maintainer/queue-snapshot.json ``` If `gh` auth or network is blocked, record the blocker and use the last ledger only as stale context. 2. Scan the smallest useful slice: security and advisories, PRs with review, CI or merge attention, issues needing triage, stale user-visible bugs, then docs or setup breakage. 3. Take udecode/plate issue picks from `pnpm triage queue`, which lists every open issue that still needs a triage call from you; a Slate snapshot keeps its own issue list. Build the candidate matrix for PRs, advisories and Slate items, pick at most one safe item, verify its live state and authority, then route it, run its safe local slice, or stop with a decision-ready brief. 4. Treat `docs/maintainer/queue.md` as a ranking ledger, not truth, and write a compact `docs/maintainer/runs/*` note only when the run creates state a later session should not rediscover. ### `issues` Run the [Triage playbook](../../playbooks/triage.md) over every open udecode/plate issue, as `triage` does, or over one issue when the request names it. Its duplicate rule, `gitcrawl` neighbor search and Fit Gate also govern a Slate issue, which [slate-issue](./references/slate-issue.md) triages without a register row. ### `prs` Scan PR queue. Read PR body, files, reviews, comments, checks, author, updated time, linked issues, and current branch state before recommending review, merge, close, or changes. ### `security` Read [security hotfix mechanics](./references/security-hotfix.md) when the requested work includes an advisory fix or disclosure/read-back. The active request's publication authority governs those operations. Versioned maintainer docs, such as `docs/maintainer/queue.md`, `docs/maintainer/security.md` and `docs/maintainer/runs/*`, never hold private advisory details. Keep them redacted and read sensitive GHSA content from live GitHub or local ignored artifacts. Keep security-shaped reports in the `maintainer security` lane until the trust boundary is classified. They do not belong in normal issue harvest or duplicate-close flow before that. Quarantine only the security-shaped item; unrelated non-security reports in the same cluster or duplicate chain continue normally. ### `<issue-url|pr-url>` Read the exact item first. Then classify route: For a PR, check `baseRefName` before routing. A PR based on `main` is worked in `../plate`, the main-line checkout, through the Babysit playbook's main-line PR rule. This repository's skills and rules still govern it, because `../plate` carries older copies of them. | Item | Default owner | | --- | --- | | One public Slate substrate issue | `maintainer slate-issue` | | One public udecode/plate issue | the Triage playbook; `triage fix #<N>` continues into the Bug fix playbook | | One public Plate/Plite performance regression | the Triage playbook, then the Perf issue playbook with `benchmark` | | One local Plate or Plite behavior bug or regression with no public mutation | pstack's Bug fix playbook | | Plite public call-shape fork | `best-api`, then the Plan playbook if adoption or runtime planning is needed | | Already-applied PR/branch/current-tree closure | the Babysit playbook | | Plate/Plite internal performance/benchmark gap | the Perf issue playbook with `benchmark` | | Plate/Plite internal quality/browser/API gap | pstack poteto-mode, as an Autonomous run when unattended | | Cross-package architecture/testability/refactor/deslop candidate | the Refactoring playbook, then the Plan playbook | | Plate framework/plugin/component/docs | the Plan playbook, `plate-plugins`, `plate-ui`, or Plate Docs | | Security/advisory | `maintainer security` | | Someone else's PR to review | the Babysit playbook's review-only panel ("review PR <number>") | | PR review feedback | the Babysit playbook | | External corpus/issue ledger | `issue-harvester` | | Unclear prior art | `research` | A public issue's fix run closes with the evidence packet the [Bug fix playbook](../../playbooks/bug-fix.md) names. A complete local packet proves only `candidate-local`. It may justify a comment that a candidate fix exists locally, but not `fixed`, `completed`, or a `completed` label. After the work is pushed, replay the same case on that exact pushed ref from a fresh process in a clean matching checkout or immutable CI artifact; prove zero tracked or untracked issue-owned runtime-input differences, record matching fingerprints, and carry the retry-free warm ledger (5 of 5 for native selection, focus, drag and drop, paint and React DOM lifecycle) in the exact reported browser or device. Any commit, rebase, generation, combination, or push after a replay invalidates it. Only that clean final-pushed-ref replay may justify fixed/completed wording. Explicit authority to add a label never waives this truth gate. Do not duplicate the worker's repair methodology in this coordinator. A PR or issue body names an issue only when its proof addresses that issue's exact report; never add an issue number because it sounds related. ## Reporter Retest Invalidation A reporter's fresh exact-step retest outranks earlier agent proof. When the reporter says the failure remains: 1. classify the prior fixed/completed claim as disproven; 2. move the item to `needs-repro` and keep it out of completed queue slices; 3. compare the reporter action and end state with the case's recorded setup, input, expected result and environment to find the missing topology, requirement, environment, or final-ref replay; 4. treat any `completed` label as stale public state requiring correction under the current mutation authority; 5. route a new bounded bug-fix packet under the Bug fix playbook's failed-fix recovery. Do not defend the old proof with unit tests, a review, or a green proxy route. When the reporter confirms the headline fix but identifies a related residual symptom, record a separate observable case or explicitly split it to a new issue. Do not leave a blanket `completed` label on an unresolved workflow. ## Intake Read the public intake docs when they apply: `CONTRIBUTING.md`, `.github/PULL_REQUEST_TEMPLATE.md` for PR work, `.github/ISSUE_TEMPLATE/*.yml` for issue work and `SECURITY.md` for security-shaped work. Public security reports route privately first. Do not process a public issue as normal queue work when it discloses an unpatched vulnerability. Before any comment, label, close, reopen, merge, review, branch, PR, or commit, re-read live GitHub and local source proof. Similarity is not permission to mutate. A fix the run routes ends with the issue tag on its test title. ## Candidate Matrix For every PR, advisory or Slate item considered, record compact rows. A udecode/plate issue's row is its triage record, and `pnpm triage queue` lists them. - number / URL; - title; - source: PR, advisory, Slate issue, queue scan, gitcrawl cluster, user prompt; - current live state and updated date; - queue snapshot source and freshness when applicable; - category: Slate, docs, security, PR review, external corpus, internal quality, support/noise; - VISION fit: yes, no, unclear; - duplicate/claim guard; - recommended owner; - smallest proof command or proof blocker; - authority needed; - decision: route, brief-only, skip, defer, or blocked. Do not pad the queue with weak candidates. If no item is safe, say so and stop. ## Fit Gate Before routing a PR, advisory or Slate item as autonomous, it passes the [Triage playbook's Fit Gate](../../playbooks/triage.md#fit-gate), and it has no active owner, PR, branch, assignee or recent claim conflict unless the user explicitly asks to take over. When fit is unclear, produce a decision-ready brief instead of guessing. ## Authority Default is read, classify, route, patch local files when the execution owner allows, and hand off. A comment, label, close, reopen, review, release or other public write needs the active request's explicit authority and otherwise waits as a draft, as `AGENTS.md`'s Messages rule says; loading this skill creates no authority. Credentials, payment, 2FA, captcha and account signup stop for the owner, as its Git and publication rules say, and security disclosure wording waits for maintainer approval. ## Final Handoff The run's page Close, or its reply when it keeps no plan, names the repo and mode, the queue snapshot and its freshness, the slice inspected, the item picked and its owner, the live GitHub proof or the auth blocker, the claim guard, the proof commands, each public write made or drafted, and what needs the owner.
GitHubで見る