Borrowing it
Nothing to install: this file belongs to lxman/obsbot-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/lxman/obsbot-mcp/master/.claude/skills/verify/SKILL.mdgit clone --depth 1 https://github.com/lxman/obsbot-mcpWrote 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/lxman/obsbot-mcp/verify)<a href="https://agentmods.dev/skills/lxman/obsbot-mcp/verify"><img src="https://agentmods.dev/badge/skills/lxman/obsbot-mcp/verify/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/lxman/obsbot-mcp/verify"><img src="https://agentmods.dev/badge/skills/lxman/obsbot-mcp/verify.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00039 | $0.01798 |
| Opus 5.5 | $0.00016 | $0.00719 |
| Sonnet 5.5 | $0.00008 | $0.00360 |
| Haiku 4.5 | $0.00004 | $0.00180 |
Grade A, and why
verify 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 2mo 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 — 166 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Verifying obsbot-mcp
The product is camera control. Tests and typecheck prove nothing here — drive the real camera.
This skill covers macOS and Linux. Steps that differ are marked; where only one is given, it applies to both. Read the section for your platform — running the macOS commands on Linux is a waste of a turn.
Build both halves
The Node stack loads the prebuilt helper, not the one next to the source. Always rebuild both, or you will verify a stale binary. This has burned us repeatedly, most recently with a helper 11 days out of date — the failure is silent, because a stale binary answers every op correctly and merely lacks whatever you just added, so hardware checks pass against code you did not write:
npm run build:all # TypeScript -> dist/, AND helper -> native/prebuilt/
build:all is build + build:helper; build:helper (scripts/build-helper.mjs)
configures CMake for the current platform, builds, and stages the binary into
native/prebuilt/<platform>-<arch>/. Use it rather than invoking CMake by
hand — HelperProcess.resolveBinaryPath() reads only the staged copy, so a
raw cmake --build leaves the old binary in place.
Confirm the staged binary really is the one you just built before trusting any result:
ls -la native/prebuilt/*/obsbot-helper # timestamp should be seconds old
strings native/prebuilt/*/obsbot-helper | grep <a-string-you-just-added>
Is the camera actually there?
Check before blaming the code.
macOS:
system_profiler SPCameraDataType # should list OBSBOT Tiny 2
ioreg -r -c IOUSBHostDevice -w0 | grep '"USB Product Name"'
Linux:
lsusb | grep -i obsbot # -> ID 3564:fef8 ... OBSBOT Tiny 2
v4l2-ctl --list-devices # -> /dev/videoN pair for the Tiny 2
uname -r # which kernel? see "Linux kernel note" below
The Tiny 2 exposes two video nodes; the lower-numbered one carries the
Extension Unit. enumerate lists both, and opening the wrong one gives
"no XU extension unit found" on stderr before the helper retries.
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.
- 2mo ago First seen · 166 lines · 39 tokens per session scan A 7792ee7ae136
verify is a skill published in the GitHub repository lxman/obsbot-mcp (2 stars, last pushed 29d ago), licensed MIT. It adds 39 tokens to every session and 1,798 once invoked, about $0.0002 per session on Opus 5.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-31.
Other skills, from other repositories
jetson-video-pipeline
Use when planning, executing, and independently validating Jetson Video Codec SDK or PyNvVideoCodec encode/decode, transcode, segmentation, container decode, AV1, or concise acceptance workflows.
mixed-signal-cosim
Run mixed-signal co-simulation — digital gate-level Verilog + analog behavioral models together. Use when the user says "mixed-signal sim", "co-simulation", "digital-analog integration test", or at Step A9 of the analog track.
rtl-p5s-integration-test
P5 Tier 4 integration tests: cross-module data flow, reset propagation, boundary handshakes. Triggers 'integration test', 'end-to-end system verification'.
rtl-p5s-integration-test-policy
Internal reference: rtl p5s integration test policy (agent-loaded; do not invoke).
native-sim
Host-based simulation using the Zephyr nativesim board. Covers building for Linux/macOS/Windows, automated testing, host-side debugging (GDB, Valgrind), and host-target integration. Trigger when developing application logic without hardware or setting up CI/CD tests.
meshtastic-e2e
Closed-loop end-to-end testing of a Meshtastic device and a Meshtastic app (Android, Apple, or the Compose desktop app) together. Use when validating that an action on the radio (send a text, change config, a node beacon, a power-cycle) surfaces correctly in the app UI, or that an action in the app produces the…