wjs-reframing-video SKILL.md skillA
wjs-reframing-video from jianshuo/claude-skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add jianshuo/claude-skills/wjs-reframing-video@git:20260524.d0cfea4Pins git:20260524.d0cfea4 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- jianshuo/claude-skills
- Path
wjs-reframing-video/SKILL.md- Versions recorded
- 2
- Latest version
- git:20260524.d0cfea4, committed May 24, 2026
- First version recorded
- May 12, 2026
- Size
- 12,257 bytes
- Repository stars
- 138
- License
- MIT
Use when the user wants to convert a video between horizontal and vertical orientations while preserving the inverted aspect ratio (16:9 ↔ 9:16, 4:3 ↔ 3:4, 21:9 ↔ 9:21). The skill crops a narrow band from the source and tracks the active speaker — the person whose mouth is moving — via MediaPipe face landmarks and mouth-aspect-ratio variance, so the talker stays in frame even when other people are visible. Triggers — "横转竖", "竖转横", "做成竖屏发抖音/视频号/小红书", "16:9 to 9:16…
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
# wjs-reframing-video Convert a video's orientation by **cropping** a narrow band from the source — not by physically rotating it. The crop window follows the **active speaker** (the face whose mouth is *moving*), not just the largest or most-confident face. A `.crop.json` sidecar records the crop plan, the per-segment speaker decisions, and the parameters used. The original input is never modified. ## When to use - Repurposing a 16:9 podcast / interview / talk for vertical short-video platforms (WeChat Channels 视频号, Douyin 抖音, Xiaohongshu 小红书, YouTube Shorts, TikTok, Reels). - Repurposing a 9:16 phone recording for horizontal players (YouTube long-form, blog embeds). - Repurposing 4:3 archive footage for 3:4 mobile, or vice versa. The output aspect is the source aspect with width and height swapped — 16:9 → 9:16, not "letterboxed 16:9 in a 9:16 frame". ## When NOT to use - **Multi-person Q&A** where each face needs its own crop — this skill picks one crop track per video. For per-speaker split renders, use **wjs-editing-multicam** instead. - **Animated content / B-roll with no faces** — falls back to center crop, usually wrong for the intent. …
Read the whole file at its exact version.
How to install
mdr add jianshuo/claude-skills/wjs-reframing-video@sha256:b1acc670b38919b9The line at the top of this page pins the label git:20260524.d0cfea4, 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.
[](https://markdownregistry.com/a/art_m7yxb42yr7th4kuf)
2 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 2 versions of this file, between May 12, 2026 and May 24, 2026, about one every 12 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260524.d0cfea4 latest | 2026-05-24 | d0cfea4 | 12,257 B | A | view · diff |
| git:20260512.543ca8b | 2026-05-12 | 543ca8b | 10,127 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (12257 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
jianshuo/claude-skills · 138 stars · license MIT · pushed 2026-11-06 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_m7yxb42yr7th4kuf GET https://markdownregistry.com/api/v1/resolve?ref=jianshuo/claude-skills/wjs-reframing-video GET https://markdownregistry.com/api/v1/blob/b1acc670b38919b9d04655f2921133a61ee8d132c468cc22d105ef7e2b74f739
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.