Worktrunk Tend CI Guidance
max-sixty/worktrunk
Adds Worktrunk-specific rules to the tend CI workflows: Codecov polling, Rust test commands, labels and review criteria for pull requests handled in CI.
Capture screenshots of Runyte features by driving the real editor in a pseudo-terminal and rendering its terminal output to PNG or WebP.
$ npx skills add runyte/runyte --skill runyte-screenshots -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install runyte/runyte runyte-screenshots --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/runyte-screenshots .claude/skills/runyte-screenshots && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .claude/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/runyte/runyte/tree/main/skills/runyte-screenshotsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add runyte/runyte --skill runyte-screenshots -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install runyte/runyte runyte-screenshots --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/runyte-screenshots .agents/skills/runyte-screenshots && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .agents/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add runyte/runyte --skill runyte-screenshots -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install runyte/runyte runyte-screenshots --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/runyte-screenshots .cursor/skills/runyte-screenshots && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .cursor/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/runyte/runyte.git --path skills/runyte-screenshots--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add runyte/runyte --skill runyte-screenshots -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install runyte/runyte runyte-screenshots --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/runyte-screenshots .gemini/skills/runyte-screenshots && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .gemini/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install runyte/runyte runyte-screenshotsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add runyte/runyte --skill runyte-screenshots -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/runyte-screenshots .github/skills/runyte-screenshots && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .github/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add runyte/runyte --skill runyte-screenshots -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install runyte/runyte runyte-screenshots --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/runyte/runyte.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/runyte-screenshots .opencode/skills/runyte-screenshots && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "runyte-screenshots" agent skill from https://github.com/runyte/runyte/tree/main/skills/runyte-screenshots into .opencode/skills/runyte-screenshots/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "runyte-screenshots", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
runyte-screenshotsCapture screenshots of Runyte features by driving the real editor in a pseudo-terminal and rendering its terminal output to PNG or WebP.
Runyte Screenshots is an agent skill from runyte/runyte. Capture screenshots of Runyte features by driving the real editor in a pseudo-terminal and rendering its terminal output to PNG or WebP. Use for feature demonstrations, documentation images, and website galleries.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts and reference files (for example `agents/openai.yaml`, `references/driver.md` and `scripts/capture.py`).
It sits in Development. It works with Git and Rust. The repository describes itself as: 🚀 The text editor that ate tmux. The licence is MPL-2.0.
Read from SKILL.md and the folder at commit 18ed42d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Runyte Screenshots loads about 1.1k tokens when it runs, and up to ~3.3k if it reads all its reference files. Until then it costs about 58 tokens; SKILL.md has 627 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from runyte/runyte at commit 18ed42d, republished under its MPL-2.0 licence (© runyte). 627 words, ~1,133 tokens.
.claude/skills/runyte-screenshots/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Use scripts/capture.py to launch a Runyte binary in a PTY, send input,
decode its escape sequences with pyte, and paint the resulting cells with
Pillow. These are captures of real application output; no editor API or desktop
display server is required. The helper contains no fixed scene or gallery.
Locate the requested Runyte checkout and binary. Build it if necessary using that checkout's instructions; record which version/revision was actually built. Check its user guide and keymap reference for the feature's current commands. Use that checkout's UI vocabulary for captions.
Create a temporary demo workspace with small, plausible files relevant to the
feature. Initialize it with git init so startup recognizes the project root;
otherwise handle the initial project-directory prompt before editor commands.
For Git views, commit the demo repository, then make the
changes to show. For LSP features, configure and run the appropriate server.
For integrated terminal features, run the real program. Keep these preparations
in a scene-specific script or recipe, separate from the reusable capture helper.
Default to an isolated demo workspace. The helper isolates XDG directories and the persistent-session registry, passes an explicit config, and removes inherited Runyte parent context. This is not an OS sandbox: programs can still access the filesystem and network, and some use home-directory configuration. Use synthetic content and avoid exposing account details in images or snapshot sidecars. Disable LSP in scenes that do not need it; do not disable the feature being shown.
Read references/driver.md for installation, invocation, the action format, and interactive operation. Choose a monospace font with the glyphs used by the scene. Pass real bold/italic variants when the scene uses them. JetBrainsMono Nerd Font is a useful choice for Runyte's icons.
Use a JSON action sequence for predictable scenes, or --interactive to send
one JSON action per line and inspect the evolving screen. Both modes support raw
keys, editor commands, paste, resize, mouse input, waiting for visible text, and
multiple captures. For custom orchestration, import Capture from the helper
and use it as a context manager with the same action dictionaries.
Wait for feature-specific visible markers before saving. A delay alone cannot prove that a search, syntax parse, language server, or terminal program is ready. Inspect the saved text and open the image using the available image-viewing tool. Check the intended feature, focus, layout, colors, glyphs, and absence of loading states or unexpected errors. Adjust the scene and recapture when needed.
command sends Escape separately before opening : so Crossterm does not
interpret it as an Alt chord. In Terminal Insert, first send Ctrl-\ (\u001c)
to return control to Runyte; Escape alone goes to the child program.
For persistent-session demonstrations, use --state-dir to share one temporary
runtime environment between capture clients and scene-owned hosts. Read the
persistent-session notes in the driver reference. Stop only the hosts created
for the scene before removing their runtime directory.
Save requested images to the requested project destination. Keep temporary
captures and debugging sidecars outside tracked development context. Preserve
a scene recipe and minimal sanitized fixtures in the project when repeatability
is requested; never leave its only copy under /tmp or .runyte/.
Record the source version, theme, cell dimensions, and font with durable images.
The helper writes text and metadata sidecars; --label can add a source revision
or scene description. Review these before committing them. Report that the image
was captured from terminal output and rendered, rather than a desktop screenshot.
The decoder is a practical terminal-text renderer, not a complete terminal emulator. It does not implement terminal graphics, every extended text attribute, or font fallback. If a requested feature depends on unsupported behavior, identify that limitation and extend/test the helper or use an actual terminal capture; do not fabricate missing UI in the image.
© runyte, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in skills/runyte-screenshots of runyte/runyte.
Open the folder on GitHubat commit 18ed42d
Runyte Screenshots next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Runyte Screenshots this skillrunyte/runyte | 105 | — | ~1.1k | Automated safety check: Pass | MPL-2.0 | |
| Worktrunk Tend CI Guidancemax-sixty/worktrunk | 9.1k | — | ~6.4k | Automated safety check: Pass | Custom licence | |
| Worktrunk Release Workflowmax-sixty/worktrunk | 9.1k | — | ~6.9k | Automated safety check: Pass | Custom licence | |
| RustPython Stdlib UpgradeRustPython/RustPython | 22k | — | ~876 | Automated safety check: Pass | MIT | |
| BrDicklesworthstone/beads_rust | 1.1k | — | ~2.7k | Automated safety check: Pass | MIT | |
| Debug Tuitrasta298/keifu | 810 | — | ~1.3k | Automated safety check: Pass | MIT |
max-sixty/worktrunk
Adds Worktrunk-specific rules to the tend CI workflows: Codecov polling, Rust test commands, labels and review criteria for pull requests handled in CI.
max-sixty/worktrunk
Walks a maintainer through cutting a Worktrunk release: sync the release branch, pass two test gates, review the changes, then publish.
RustPython/RustPython
Upgrades a Python standard library module from CPython into RustPython with update_lib, then triages and marks the tests that still fail.
Dicklesworthstone/beads_rust
Official skill for beadsrust (br), a local-first, dependency-aware issue tracker for AI agents.
trasta298/keifu
Drive and debug the real keifu TUI autonomously via its remote-control debug server (--debug-listen) — launch headlessly, inject keys/mouse, dump the rendered screen as text, and inspect app state.
max-sixty/worktrunk
CLI output standards for worktrunk: message functions, ANSI color nesting and the shell integration that changes directory after the wt command exits.
runyte/runyte
Design and record scripted videos of real Runyte features on Linux from a user's demo description.
Categories
Capture screenshots of Runyte features by driving the real editor in a pseudo-terminal and rendering its terminal output to PNG or WebP. Runyte Screenshots is an agent skill from runyte/runyte. Capture screenshots of Runyte features by driving the real editor in a pseudo-terminal and rendering its terminal output to PNG or WebP.
Runyte Screenshots fits situations like: feature demonstrations; documentation images; website galleries.
Run `npx skills add runyte/runyte --skill runyte-screenshots -a claude-code`. Or copy the skill folder (skills/runyte-screenshots in runyte/runyte) into .claude/skills/runyte-screenshots in your project. Claude Code loads it when a task matches its description.
Run `npx skills add runyte/runyte --skill runyte-screenshots -a codex`. Or copy the skill folder (skills/runyte-screenshots in runyte/runyte) into .agents/skills/runyte-screenshots in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add runyte/runyte --skill runyte-screenshots -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/runyte-screenshots, .gemini/skills/runyte-screenshots, .github/skills/runyte-screenshots and .opencode/skills/runyte-screenshots in your project.
Going by SKILL.md and its folder, Runyte Screenshots needs Python for the scripts in its folder and the command-line tools its instructions call (git). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Runyte Screenshots is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Runyte Screenshots: Worktrunk Tend CI Guidance (max-sixty/worktrunk, 9.1k stars), Worktrunk Release Workflow (max-sixty/worktrunk, 9.1k stars), RustPython Stdlib Upgrade (RustPython/RustPython, 22k stars) and Br (Dicklesworthstone/beads_rust, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
runyte (a GitHub organization) maintains it in runyte/runyte, which has 105 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 9, 2026.
Source: runyte/runyte on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.