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/rivet-dev/actors/sanity-checknpx skills add rivet-dev/actors --skill sanity-checkgit clone --depth 1 https://github.com/rivet-dev/actorsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rivet-dev/actors/sanity-check)<a href="https://agentmods.dev/skills/rivet-dev/actors/sanity-check"><img src="https://agentmods.dev/badge/skills/rivet-dev/actors/sanity-check.svg" alt="Measured on agentmods" height="20"></a>What 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.00073 | $0.02489 |
| Opus 5 | $0.00036 | $0.01244 |
| Sonnet 5 | $0.00015 | $0.00498 |
| Haiku 4.5 | $0.00007 | $0.00249 |
Grade C, and why
sanity-check scanned grade C with 2 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 4d 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf "$SANITY_DIR" Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
import { spawn } from "node:child_process"; How it starts
The opening of the file, as written. The whole thing — 224 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Sanity Check
Run a quick end-to-end sanity check of a published rivetkit version: copy the hello-world example to a temp directory, install the specified package version from the public npm registry, start the dev server, and run a client test script that verifies both HTTP actions and WebSocket connections with event broadcasting.
When to use
- User wants to verify a published rivetkit version works (e.g.,
[email protected],rivetkit@latest,[email protected]) - After a preview publish to verify the build is functional
- After a release to verify the package installs and runs correctly
- User says "sanity check", "smoke test", "verify the build", or "test this version"
Inputs
- Version or tag (required) — explicit pkg-pr-new preview, npm dist-tag, or semver. If not provided in the user's message, ask for it.
- Additional test behavior (optional) — e.g., "also verify workflows persist" or "check that KV works." If provided, extend
src/index.ts+test.mjsusing the menu in "Extending with custom tests" below.
Usage
/sanity-check <version>— run in a temp directory on the host/sanity-check docker <version>— run inside anode:22Docker container/sanity-check <version> <custom instructions>— any extra instructions (e.g. "also hit a KV action", "verify state persists across restart", "use pnpm", "test on node 20")
<version> is any npm-resolvable spec: an explicit pkg-pr-new preview (0.0.0-pr.4701.a818b77), an npm dist-tag (latest, rc, next), or a semver (2.3.0-rc.4). If the user omits it, ask for it.
What it tests
npm installofrivetkit,@rivetkit/react, and the platform-specific@rivetkit/rivetkit-napi-*native binding from the public npm registry- Boot the hello-world counter actor server via
registry.start()on port 6420 - HTTP path: call
counter.increment(5),counter.increment(3),counter.getCount()and assert the values - WebSocket path: open a
.connect()conn, subscribe to thenewCountevent, callincrement(10), assert the action response AND the broadcast event value match - Report the resolved versions of
rivetkit+@rivetkit/rivetkit-napi
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.
- 4d ago First seen · 224 lines · 73 tokens per session scan C abe34d8bda65
sanity-check is a skill published in the GitHub repository rivet-dev/actors (6,099 stars, last pushed yesterday), licensed Apache-2.0. It adds 73 tokens to every session and 2,489 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 2 findings (recursive force delete, runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
fix-integration-failures
Diagnose and fix a failing scheduled (or standalone) TMDb Integration workflow run — re-run transients, or fix real drift on a branch off main, then PR and (optionally) merge. Use for the weekly Sunday Integration cron failure, or any red Integration run not tied to an open PR.
playtest
Drive a real browser to play a game and prove it works — smoke checks, scripted bot playtests, softlock detection, canvas/WebGL determinism, screenshots and visual diffs — via vg playtest (agent-browser). Use for canvas/WebGL games (Phaser, Three.js) and for verifying a deployed game. Trigger: "playtest", "test my…
use-agent-browser-for-airi
Test AIRI display-model imports with agent-browser across stage-tamagotchi Electron, stage-web, and stage-pocket mobile web layouts. Use when uploading and verifying contributor-supplied Live2D ZIP, VRM, or MMD ZIP/PMX/PMD files through AIRI's model selector, including onboarding bypass, format-specific import…
cli-e2e-testcase-writer
Use when adding or updating Go CLI E2E coverage for one tests/clie2e/{domain} domain of the compiled lark-cli, especially when the work requires live --help or schema exploration, scenario-based clie2e.RunCmd workflows, and per-domain coverage.md maintenance.
docs-build
Build, preview, and validate the Uno documentation website (DocFX) locally — surface real content errors vs expected noise, drive rendered pages with Playwright, and validate external-doc commit bumps in importexternaldocs.ps1 before a PR. Use when working under doc/, editing articles/ markdown, bumping an external…
verify
Exercise the real app/API/CLI and collect observable evidence; tests alone do not count as end-to-end verification.