Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/skyvern-ai/rustwright/version-upgradenpx skills add Skyvern-AI/rustwright --skill version-upgradegit clone --depth 1 https://github.com/Skyvern-AI/rustwrightWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00058 | $0.02406 |
| Opus 5 | $0.00029 | $0.01203 |
| Sonnet 5 | $0.00012 | $0.00481 |
| Haiku 4.5 | $0.00006 | $0.00241 |
Grade A, and why
version-upgrade scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 198 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Version Upgrade
Release one Rustwright version through the repository's existing PyPI and npm
workflows. Treat "npm and Node.js" as one target: npm is the registry for the
Node.js package. The two release targets are Python on PyPI and Node.js on npm.
Do not publish rustwright-core to crates.io.
Arguments and mode
Read $ARGUMENTS for an exact SemVer version and an optional mode.
- Accept stable versions such as
0.1.1and prereleases in the shared Cargo/npm/PyPI subset:0.2.0-alpha.1,0.2.0-beta.1, or0.2.0-rc.1. Reject other SemVer prerelease labels because PyPI may not accept or may ambiguously normalize them. - If the caller asks only to check, verify, or report a release or registry status, enter verify-only mode. Perform read-only GitHub, Git, PyPI, and npm queries and return the result without creating a branch, changing a file, dispatching a workflow, merging, tagging, or publishing.
- If no version is supplied, use the helper's default: increment a stable patch version or the final numeric prerelease component.
- Treat
prepare,PR only, ordry runas prepare-only mode. Stop after the release PR and both successful preview artifact dry runs. - Enter full-release mode only when the caller explicitly says
publish,release now, orfull releasein the current request. Invoking this skill, asking for a version bump, or omitting a mode never by itself authorizes an irreversible registry publication; default those cases to prepare-only mode. - Do not pause for choices that can be derived from the repository. Stop only for a dirty worktree, missing authorization or secret, failed validation, a required human review, or another condition that makes publishing unsafe.
1. Inspect current state
- Read
AGENTS.mdanddocs/RELEASING.md; repository instructions and the current workflows override examples in this skill. - Require a clean worktree. Never discard local changes.
- Fetch
origin/mainand all tags. Start from the currentorigin/main, not a stale local branch. - Inspect
.github/workflows/release-pypi.ymland.github/workflows/release-npm.yml. Both must still publish from the samev<version>tag. - Search open and merged release PRs, Git tags, PyPI, and npm before deciding
where to start. For PyPI, compare every release key after canonicalizing
both sides with
packaging.version.Version; for example, PyPI may represent0.2.0-alpha.1as the equivalent0.2.0a1. Compare npm versions with SemVer rules. - Require monotonic releases across all three histories. A new target must be
strictly newer than every release version in Git tags, PyPI, and npm. A
prepared or tagged target may equal the newest version, but must never be
published if any newer release already exists in any history. Treat an
invalid
v*release tag as a blocker rather than silently ignoring it. - Classify the target as new, on an open release PR, prepared on main, tagged
or publishing, partially published, or fully published. Reuse an existing
PR only after inspecting its complete commit history and diff. Its head must
be in this repository, its base must be current
main, every version field must equal the target, and its diff must contain only the expected version files. A filename allowlist is not sufficient: inspect every hunk and require changes only to the exact version fields plus the two local package entries regenerated in the lockfiles. Reject dependency changes, unrelated lines in an allowed file, mode changes, renames, binaries, or extra commit content. When uncertain, reproduce the bump from the PR base in a clean temporary worktree and compare the resulting patch. Rerun every check and preview against its current head. Treat an unexpected file, commit, base, or fork as a blocker rather than inheriting it. If the target is already consistent onorigin/mainbut has no tag or registry publication, treat it as a prepared release and resume at the final merged-commit dry runs in section 4. If it is fully published, report success without mutation. Handle partial publication as described below. Never reuse an equivalent published version or move a release tag. - Before resuming any existing tag, validate its provenance. Require an
annotated
v<version>tag whose target commit is reachable from currentorigin/main, contains the same target in every version field, and matches theheadShaof its tag-triggered release runs. Stop on a lightweight tag, mismatched metadata or run SHA, unreachable commit, or unexpected tag target. Do not approve or rerun publication from an unverified tag.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 198 lines · 58 tokens per session scan A 9e55f748a8e2
version-upgrade is a skill published in the GitHub repository Skyvern-AI/rustwright (863 stars, last pushed 7d ago), licensed MIT. It adds 58 tokens to every session and 2,406 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
chrome-agent
Local browser automation with structured, verified outcomes. Use for web navigation, scraping and extraction, form interaction, screenshots and downloads, network or console checks, responsive testing, or page-scoped device emulation.
scrape-structured-data
Get the repeating records off a web page (product grids, search results, job listings, news feeds, tables) as JSON, without writing CSS selectors and without spending a model call to read the HTML. Works on sites with no API, including ones behind a login or bot protection. Runs locally, one binary, no API key. Use…
project-release
Prepare, publish, verify, or recover a cloakbrowser-mcp release only when the user explicitly requests release work. Require a Prompt MCP-confirmed target version and stability, follow the repository's version, changelog, PR, GitHub Release, npm, Docker, MCP Registry, and docs process, and never tag, publish…
owb
Open Web Bridge (OWB) — drive the user's own real browser with the owb command. Read pages behind their existing logins, gather and cross-check information, fill forms, walk multi-step flows, debug their site, audit responsive/accessibility behavior, and capture or reverse-engineer network traffic. Use this whenever…
nekoro-browser
浏览器自动化——打开网页、搜索、点击、截图、执行 JS、填表、上传文件、处理对话框。通过 Chrome 扩展的 chrome.debugger API 操控用户日常浏览器,保留登录态,不开调试端口。触发词:"浏览器"、"打开网页"、"搜索"、"截图"、"点击"、"填表"、"上传文件"、"自动化操作"。.
map
Per-site navigation memory for tandem's shared browser. Profiles that describe a site's skeleton (routes), its durable locators, navigation recipes, and gotchas, so you navigate KNOWING instead of re-deriving the DOM each time. Use it when you start operating a site (check whether a profile already exists), when you…