Agent skill

Check

by VibiumDev in VibiumDev/vibium

Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI.

Apache-2.0Auto-check passedProduct & Project Management

Install Check

skills CLI
$ npx skills add VibiumDev/vibium --skill check -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install VibiumDev/vibium check --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/VibiumDev/vibium.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/check .claude/skills/check && rm -rf skills-src

Use ~/.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/

Facts

Skill name
check
GitHub stars
2.9k
Token cost
~2k tokens
SKILL.md length
1,062 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
Apache-2.0

At a glance

Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI.

  • Works in 6 steps: Turn the requested behavior into a… → Run the application and exercise the… → Record the flow. If the user already has… → …
  • A formal verification step in the development loop
  • SKILL.md covers Setup, Development loop, Browser cleanup and Recording and report flags, plus 1 more section
  • Needs OPENAI_API_KEY and XAI_API_KEY

What it does

Check is an agent skill from VibiumDev/vibium. Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI. Use for a formal verification step in the development loop, with PASS, FAIL, or INCONCLUSIVE and recorded evidence.

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Product & Project Management, covering User stories. It works with OpenAI. The repository describes itself as: The verification layer for coding agents. The licence is Apache-2.0.

When your agent uses it

  • A formal verification step in the development loop
  • INCONCLUSIVE and recorded evidence

Example prompts

  • “/check”

Requirements

  • A credential in OPENAI_API_KEY
  • A credential in XAI_API_KEY

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Turn the requested behavior into a concrete, observable claim. Keep the
  2. Run the application and exercise the relevant flow through the existing
  3. Record the flow. If the user already has a recording active, keep it active.
  4. Run vibium check --json "" in that same session. The command
  5. Read the JSON result and report the actual verdict, concise evidence, and
  6. When a check fails and fixing the application is within the user's task,

What it can do on your machine

Read from SKILL.md and the folder at commit d16a6aa. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • OPENAI_API_KEY
    • XAI_API_KEY
    • ANTHROPIC_API_KEY
    • GOOGLE_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Check loads about 2k tokens when it runs. Until then it costs about 58 tokens; SKILL.md has 1,062 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~58
When it runs · the whole SKILL.md, loaded when a task matches
~2k

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.

Safety

Auto-check passed

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from VibiumDev/vibium at commit d16a6aa, republished under its Apache-2.0 licence (© VibiumDev). 1,062 words, ~1,952 tokens.

Download SKILL.mdSave it as .claude/skills/check/SKILL.md (or your agent's skills folder).
name
check
description
Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI. Use for a formal verification step in the development loop, with PASS, FAIL, or INCONCLUSIVE and recorded evidence.

Check with Vibium

Use vibium check "<claim>" to hand a specific acceptance claim to a fresh verifier context. The coding agent builds and fixes the application; Vibium's verifier investigates the running behavior with constrained browser tools. Your own browser inspection does not substitute for this invocation.

Setup

Use the project's configured Vibium binary. Otherwise try vibium, ./clicker/bin/vibium, then ./node_modules/.bin/vibium. Confirm vibium check --help works. Local Chrome is the tested baseline for live checks. For initial live setup, run vibium ready browser --json with the selected engine/channel. It inspects browser and driver files without launching them or touching the current browser; launch and BiDi connectivity remain untested. Follow its install/fix guidance if needed. Saved-input checks do not require a browser; skip browser readiness for them.

For OpenAI, export VIBIUM_AI_PROVIDER=openai, VIBIUM_AI_MODEL, and OPENAI_API_KEY. For xAI, select xai and export XAI_API_KEY (for example --model grok-4). For Anthropic, select anthropic and export ANTHROPIC_API_KEY; for Google, select google and export GOOGLE_API_KEY. Set a model available to that provider. Leave VIBIUM_AI_REASONING_EFFORT unset for Anthropic/Google. local uses the compatible adapter, defaults to http://127.0.0.1:8080/v1, and requires no key. Never manage or install a model runtime as part of Check.

An OpenAI-compatible service uses VIBIUM_AI_PROVIDER=openai-compatible and VIBIUM_AI_BASE_URL. Use the project's existing configuration. Vibium loads ~/.config/vibium/ai.env for empty AI variables; nonempty process environment still wins. If none exists, tell the user to run vibium config init and fill in that file — do not write credentials to it yourself. Never print or log credentials. Do not choose another provider or model to work around a missing configuration without the user's direction.

After loading settings, run vibium ready ai --json during initial setup or when provider configuration changes. Exit 0 and result.ready: true mean the configuration and provider tool round-trip passed; exit 1 includes failed checks and fixes. It makes up to two small model requests and does not launch or change a browser. It does not check the application or replace Check. Resolve reported setup problems before the browser workflow; do not rerun it before every claim when the configuration is unchanged.

Run accomplishes a browser goal; its completed result does not replace a Check verdict. Check never inherits Run's conversation. For guidance on Run and general browser automation, use the browser skill if installed.

For a user-requested provider comparison or eval, pass --provider, --model, --ai-base-url, and --reasoning-effort per invocation. Pass the same overrides to vibium ready ai. Changing provider clears the inherited model, endpoint, and effort, so supply a model and any custom endpoint explicitly. Same-provider calls keep unspecified defaults; use --ai-base-url "" or --reasoning-effort "" to reset them. Credentials stay in the runtime environment. Overrides do not change later calls or weaken Check's independence.

Development loop

  1. Turn the requested behavior into a concrete, observable claim. Keep the acceptance condition faithful to the request. For example: “Changing the timezone persists after refresh.” State any boundaries needed for the task, such as inspecting a cart without proceeding to checkout. If several independent behaviors matter, check them separately.
  2. Run the application and exercise the relevant flow through the existing Vibium CLI. Use go, map, find, click, and fill; inspect fresh refs after page changes. Reuse the current browser, page, and --session or VIBIUM_SESSION throughout setup and verification. Create a named session only when starting a new isolated test, not when verifying existing state.
  3. Record the flow. If the user already has a recording active, keep it active. Otherwise start one with vibium record start (the default filename is unique) and stop/save the recording you started after verification, even when the check fails. Do not stop someone else's browser or recording.
  4. Run vibium check --json "<claim>" in that same session. The command starts a fresh verifier conversation; do not send the builder transcript, source code, or a suggested verdict. It may operate the page to test the claim. Let it finish before continuing browser work.
  5. Read the JSON result and report the actual verdict, concise evidence, and recording path. The Check group contains verifier-driven child actions. A passed check applies to the stated claim and observed session.
  6. When a check fails and fixing the application is within the user's task, investigate the evidence, fix the cause, and rerun the original claim. Preserve the earlier result. Do not weaken the claim or retry unchanged behavior until a model happens to pass it. For INCONCLUSIVE, address the missing evidence or report the limitation. Stop when the requested claims pass or a concrete blocker requires user input.
Show full SKILL.md (317 more words)Show less

Browser cleanup

Check preserves an existing browser session. If it starts a browser itself, it closes that browser after saving any requested recording, on all verdicts and execution errors. Use --keep-open when a standalone check should leave the browser available for inspection or more work. Do not assume it stays open just because --output saved a recording. --keep-open is live-only and cannot be combined with --input.

Recording and report flags

Use -o verification.zip to record the verification run automatically when no recording is active. It includes video when supported (Firefox 154+), finalized before browser cleanup. With an active recording, it exports the whole current chunk through Check without stopping or resetting it; the export excludes continuous video. Choose a new path different from the active recording's output. Use --report verdict.json for a separate JSON verdict; --json still controls stdout. Files are not overwritten, and available recording evidence is saved even if the verifier encounters an operational error.

When asked to verify saved evidence, use vibium check -i record.zip "<claim>" instead of the live browser steps above. --input accepts Vibium recordings and compatible Playwright version 8 traces. Inspect the actual evidence behind earlier verdicts; do not treat an embedded PASS as proof. Report that the result concerns the recorded run. --input cannot be combined with --output; use --report to save this verdict. --record and --trace are not input flags.

Result contract

Successful execution returns:

json
{"ok":true,"result":{"status":"passed","claim":"…","summary":"…","evidence":[{"type":"observation","summary":"…"}]}}

result.status is passed, failed, or inconclusive, displayed as PASS, FAIL, or INCONCLUSIVE. All three verdicts have CLI exit code zero. A script that gates completion must inspect result.status; exit zero alone is not a pass. Provider, configuration, and browser execution failures are errors, not FAIL verdicts. Report them separately and retain available evidence.

For browser automation, exploration, and recording, use the browser skill if installed. It supplies a broader CLI reference; this skill can run on its own using vibium <command> --help when needed.

© VibiumDev, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/check of VibiumDev/vibium.

Open the folder on GitHubat commit d16a6aa

Compare with similar skills

Check 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.

Check compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Check this skillVibiumDev/vibium2.9k—~2kAutomated safety check: PassApache-2.0
User Story Writerdeanpeters/Product-Manager-Skills7.2k2 repos~2.9kAutomated safety check: PassCustom licence
Ralph Tui Create Beadssubsy/ralph-tui2.5k1 repos~2.6kAutomated safety check: PassMIT
Agile Product Owneralirezarezvani/claude-skills28k3 repos~3.2kAutomated safety check: PassMIT
Adversarial Speczscole/adversarial-spec5561 repos~8.3kAutomated safety check: NotesMIT
Final Release Reviewopenai/openai-agents-python30k—~5.4kAutomated safety check: PassMIT

Similar skills

  • User Story Writer

    deanpeters/Product-Manager-Skills

    Writes user stories in Mike Cohn's format with Gherkin acceptance criteria, turning user needs into development-ready work with testable conditions.

    7.2k GitHub starsUsed in 2 repos~2.9k tokens
    Product & Project ManagementAuto-check passed
  • Ralph Tui Create Beads

    subsy/ralph-tui

    Convert PRDs to beads for ralph-tui execution. An agent skill from subsy/ralph-tui.

    2.5k GitHub starsUsed in 1 repo~2.6k tokens
    Product & Project ManagementAuto-check passed
  • Agile Product Owner

    alirezarezvani/claude-skills

    Writes INVEST-checked user stories with acceptance criteria, splits epics, plans sprints from velocity and ranks the backlog with a weighted score.

    28k GitHub starsUsed in 3 repos~3.2k tokens
    Product & Project ManagementAuto-check passed
  • Adversarial Spec

    zscole/adversarial-spec

    Iteratively refine a product spec by debating with multiple LLMs (GPT, Gemini, Grok, etc.) until all models agree.

    556 GitHub starsUsed in 1 repo~8.3k tokens
    Product & Project ManagementAuto-check: notes
  • Final Release Review

    openai/openai-agents-python

    Official

    Assess a Python SDK release candidate or release plan against the previous release and recommend ship or block.

    30k GitHub stars~5.4k tokensUpdated today
    Product & Project ManagementAuto-check passed
  • Convert PRDs to beads for ralph-tui execution using beads-rust (br CLI).

    2.5k GitHub starsUsed in 1 repo~2.8k tokens
    Product & Project ManagementAuto-check passed

More from VibiumDev/vibium

  • Browser

    VibiumDev/vibium

    Automate browsers with the Vibium CLI. An agent skill from VibiumDev/vibium.

    2.9k GitHub stars~4.8k tokensUpdated today
    Auto-check passed

Works with

Questions about Check

What does Check do?

Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI. Check is an agent skill from VibiumDev/vibium. Independently check application acceptance criteria in a live browser or saved recording with the Vibium CLI.

When should I use Check?

Check fits situations like: A formal verification step in the development loop; INCONCLUSIVE and recorded evidence.

How do I install Check in Claude Code?

Run `npx skills add VibiumDev/vibium --skill check -a claude-code`. Or copy the skill folder (skills/check in VibiumDev/vibium) into .claude/skills/check in your project. Claude Code loads it when a task matches its description.

How do I install Check in Codex?

Run `npx skills add VibiumDev/vibium --skill check -a codex`. Or copy the skill folder (skills/check in VibiumDev/vibium) into .agents/skills/check in your project. Codex loads it when a task matches its description.

Can I use Check in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add VibiumDev/vibium --skill check -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/check, .gemini/skills/check, .github/skills/check and .opencode/skills/check in your project.

What does Check need to run?

Going by SKILL.md and its folder, Check needs credentials named OPENAI_API_KEY, XAI_API_KEY, ANTHROPIC_API_KEY and GOOGLE_API_KEY. Our summary lists: A credential in OPENAI_API_KEY; A credential in XAI_API_KEY.

Does Check access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Check safe to install?

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. Review the folder before installing.

What licence does Check use?

Check is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Check use?

About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Check?

Skills that share tags, products or a category with Check: User Story Writer (deanpeters/Product-Manager-Skills, 7.2k stars), Ralph Tui Create Beads (subsy/ralph-tui, 2.5k stars), Agile Product Owner (alirezarezvani/claude-skills, 28k stars) and Adversarial Spec (zscole/adversarial-spec, 556 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Check?

VibiumDev (a GitHub organization) maintains it in VibiumDev/vibium, which has 2,936 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 6, 2026.

Source: VibiumDev/vibium on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.