split-to-prs SKILL.md skillA

split-to-prs from riot-org/riot is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add riot-org/riot/split-to-prs@git:20261014.9c3854a

Pins git:20261014.9c3854a in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
riot-org/riot
Path
crates/riot-kernel/builtin/skills/split-to-prs/SKILL.md
Versions recorded
2
Latest version
git:20261014.9c3854a, committed Oct 14, 2026
First version recorded
Aug 17, 2026
Size
2,510 bytes
Repository stars
22
License
a license file GitHub does not identify

把一堆改动拆成几个各自能审的小 PR 时用。先提拆分方案、经用户确认才动 git;动手前先做不碰工作区的可恢复快照,只暂存计划内的文件。.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# 拆成小 PR

一堆混在一起的工作(脏工作区、一条大分支、或一个巨型 PR),拆成
几个审得动的小 PR。

`[约束]` 两条硬规则,整个流程都压着:

- **方案没经用户确认前,不建分支、不提交、不推送、不开 PR。**
- **不销毁用户的工作。** `reset --hard`、`clean -fdx`、删分支、
  force-push 一律不做,除非用户明说。

## 1. 看清现状

对比默认分支,把**已提交的和未提交的**都算进来:

```bash
BASE=$(git rev-parse --abbrev-ref origin/HEAD 2>/dev/null) \
  || BASE=$(git rev-parse --verify -q origin/main >/dev/null && echo origin/main || echo origin/master)

git status --short
git log --oneline "$BASE"..HEAD
git diff --stat "$BASE"...HEAD
```

`origin/HEAD` 在有些克隆里没设置,所以开头带了回退。

从改动本身和对话历史里恢复意图:这堆工作实际包含几件事。

## 2. 提方案

切分的判据,按优先级:

- **一个 PR 一句话说得清**——标题写不出来的切片是切错了;
- **审阅人边界**:有 `CODEOWNERS` 之类的就先看,不同 owner 的
  改动别混在一个 PR 里;
- 耦合紧的留在一起,别为了小而把一次接口改动和它的调用方拆开
  ——那样每个 PR 单独都跑不过 CI。

默认从默认分支各切各的、互相独立;只有依赖是真实的(B 编译依赖
A 的新接口)才叠 stack,并在方案里说明合并顺序。

方案给用户看:每片一个 PR 标题,标题说不清的补一行范围说明。
**等确认。**

## 3. 执行

工作区有未提交的东西时,先做快照——`stash create` 只创建对象
不动工作区,比 `git stash` 安全:

```bash
SHA=$(git stash create "pre-split")
[ -n "$SHA" ] && git update-ref "refs/backup/pre-split-$(date +%s)" "$SHA"
```

然后逐片来:从正确的基底建分支,**只暂存这一片计划内的文件**
(禁 `git add -A` / `git add .`),提交、推送、开 PR。`gh` 不可用
或没登录时,推完分支把「怎么手动开 PR」告诉用户,不要卡死在这一步。

## 4. 汇报
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add riot-org/riot/split-to-prs@sha256:b91fd0dc886b1bab

The line at the top of this page pins the label git:20261014.9c3854a, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_ogasfjvbfxs3ke6c.svg)](https://markdownregistry.com/a/art_ogasfjvbfxs3ke6c)

5 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 2 versions of this file, between Aug 17, 2026 and Oct 14, 2026, about one every 58 days.

versioncommittedcommitsizeaudit
git:20261014.9c3854a latest2026-10-14 9c3854a 2,510 BA view · diff
git:20260817.d4dfa412026-08-17 d4dfa41 2,279 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (2510 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

riot-org/riot · 22 stars · license a license file GitHub does not identify · pushed 2026-11-05 · branch master

API

GET https://markdownregistry.com/api/v1/artifacts/art_ogasfjvbfxs3ke6c
GET https://markdownregistry.com/api/v1/resolve?ref=riot-org/riot/split-to-prs
GET https://markdownregistry.com/api/v1/blob/b91fd0dc886b1babba4deb7e51e5e2b4a79ea80762b05e43c04b2d89f8b3a443

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from riot-org/riot

add-command SKILL.md skill
riot-org/riot · .riot/skills/add-command/SKILL.md · 给前端加一个 Tauri 命令时用。要改五处,漏了其中三处只表现为运行时「command not found」;权限文件还有个先后顺序的坑会让 build.rs 直接 panic。
git:20260817.d00a470 · audit A · 22 stars
add-tool SKILL.md skill
riot-org/riot · .riot/skills/add-tool/SKILL.md · 给 Riot 加一个模型能调的工具时用。Tool trait 的必答项、fail-closed 默认值的判据、注册位置、以及几条写错了不报错只是行为悄悄降级的规则。
git:20261011.281dcd7 · audit A · 22 stars
commit-batch SKILL.md skill
riot-org/riot · .riot/skills/commit-batch/SKILL.md · 工作区堆了多个不相关主题的改动、要整理成提交时用。按主题切分而不是拆成一堆小提交,并照这个仓库的消息风格写。
git:20260817.d00a470 · audit A · 22 stars
mutate SKILL.md skill
riot-org/riot · .riot/skills/mutate/SKILL.md · 动过权限决策链、Bash 分析、路径围栏、安全检查、文件工具或进程执行器之后用。跑变异测试,并正确解读存活的变异。
git:20260817.d00a470 · audit A · 22 stars
protocol-change SKILL.md skill
riot-org/riot · .riot/skills/protocol-change/SKILL.md · 改了 crates/riot-protocol 里的类型之后用。重新生成绑定,并检查 serde tag 撞名这类 Rust 类型层面看不出来的问题。
git:20260817.d00a470 · audit A · 22 stars
review SKILL.md skill
riot-org/riot · .riot/skills/review/SKILL.md · 审查一批改动时用。缺陷优先,并按这个仓库特有的失效方式去找问题——那些编译通过、类型正确、看起来合理的写法。
git:20260817.d00a470 · audit A · 22 stars
verify SKILL.md skill
riot-org/riot · .riot/skills/verify/SKILL.md · 改完代码要验证时用。按这个仓库的分层防线依次跑,并说明每一层拦的是什么。别只跑 cargo build 就当验证过了。
git:20260817.d00a470 · audit A · 22 stars
add-mcp SKILL.md skill
riot-org/riot · crates/riot-kernel/builtin/skills/add-mcp/SKILL.md · 用户想加、改、排查 MCP 服务器,或从 Cursor / Claude Desktop / VS Code 搬 MCP 配置过来时用。用户级只认 stdio(远程走 mcp-remote 桥)、config.json…
git:20261014.9c3854a · audit B · 22 stars
commit SKILL.md skill
riot-org/riot · crates/riot-kernel/builtin/skills/commit/SKILL.md · 要把改动提交成 git commit 时用。先看清工作区里有几件事、按主题分组、只暂存这一组,以及消息里该写什么不该写什么。
git:20261014.9c3854a · audit A · 22 stars
create-plugin SKILL.md skill
riot-org/riot · crates/riot-kernel/builtin/skills/create-plugin/SKILL.md · 用户想写一个 Riot 插件、把已有的技能/命令/hooks/MCP 打包分发、或把 Claude Code / Cursor 插件搬到 Riot 时用。目录布局、三种清单格式、dev.riot 扩展字段、本地链接调试流程和市场发布。
git:20261014.9c3854a · audit A · 22 stars
debug SKILL.md skill
riot-org/riot · crates/riot-kernel/builtin/skills/debug/SKILL.md · 排查 bug 时用。顺序是硬的:先复现、再让证据淘汰假设、修根因、用原始复现路径验证。不要看到第一个可疑点就动手改。
git:20260817.d4dfa41 · audit A · 22 stars
extend-riot SKILL.md skill
riot-org/riot · crates/riot-kernel/builtin/skills/extend-riot/SKILL.md · 用户想加技能、斜杠命令、hook、项目约定(AGENTS.md),或要给命令配 API key、密码这类机密时用。各扩展点的目录、格式限制和优先级规则。MCP 服务器转 add-mcp,打成可分发的插件转 create-plugin。
git:20261014.9c3854a · audit B · 22 stars

Every file in riot-org/riot

Other files named split-to-prs

split-to-prs SKILL.md skill
kensaurus/skills · skills-cursor/split-to-prs/SKILL.md · Split current work into small reviewable PRs. Use when the user asks to split a chat, branch, or change set. Whole…
git:20260820.950107c · audit A · 9 stars
split-to-prs SKILL.md skill
kensaurus/cursor-kenji · skills-cursor/split-to-prs/SKILL.md · Split current work into small reviewable PRs. Use when the user asks to split a chat, branch, or change set. Whole…
git:20260820.950107c · audit A · 9 stars

Browse by kind, by grade A, or by owner.