Run assay on a web page you just wrote or changed. An agent skill from sickn33/agentic-awesome-skills.

MITAuto-check passed

Install Assay

skills CLI
$ npx skills add sickn33/agentic-awesome-skills --skill assay -a claude-code

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

GitHub CLI
$ gh skill install sickn33/agentic-awesome-skills assay --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/sickn33/agentic-awesome-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/assay .claude/skills/assay && 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
assay
GitHub stars
47k
Token cost
~2k tokens
SKILL.md length
1,173 words
Files
1
Skills in repo
1,497
Repo updated
First seen
Licence
MIT

At a glance

Run assay on a web page you just wrote or changed. An agent skill from sickn33/agentic-awesome-skills.

  • Works in 4 steps: Install the CLI once → Run assay on the page you changed → Report the one line assay printed,… → …
  • SKILL.md covers Overview, When to Use This Skill, How It Works and Examples, plus 6 more sections
  • Calls pip and npm

What it does

Assay is an agent skill from sickn33/agentic-awesome-skills. Run assay on a web page you just wrote or changed. It opens the page in a real browser, drives every control, and reports where the page contradicts itself. Deterministic, no API key, no network.

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.

The repository describes itself as: AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and planning, backed by 2,400+ agentic skills. Includes… The licence is MIT.

Example prompts

  • “/assay”

Requirements

  • Python 3
  • Node.js

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Install the CLI once
  2. Run assay on the page you changed
  3. Report the one line assay printed, verbatim
  4. Report the finding and stop

What it can do on your machine

Read from SKILL.md and the folder at commit b84d35a. 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

    Shell commands in SKILL.md call:

    • pip
    • npm

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

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com
    • pypi.org

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

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

Always · name and description, kept in context so the agent knows when to use it
~50
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 sickn33/agentic-awesome-skills at commit b84d35a, republished under its MIT licence (© sickn33). 1,173 words, ~1,981 tokens.

Download SKILL.mdSave it as .claude/skills/assay/SKILL.md (or your agent's skills folder).
name
assay
description
Run assay on a web page you just wrote or changed. It opens the page in a real browser, drives every control, and reports where the page contradicts itself. Deterministic, no API key, no network.
category
testing
risk
safe
source
https://github.com/awss1i/assay
source_repo
awss1i/assay
source_type
community
date_added
2026-10-08
author
awss1i
tags
testing, qa, web, browser, playwright, html
tools
claude, cursor, gemini, codex
license
MIT

Assay

Overview

A page you have just written has no tests yet. assay serves the page locally, opens it in a real Chromium browser through Playwright, finds every control on it, uses all of them, and reports where the page contradicts itself. There are no tests to write, no LLM, no API key, and no network. The same page gives the same result every time.

Use this skill after you create or change a web page, to run assay on that page and report the one line it prints. The skill reports the result and does not change code because of it unless you ask.

When to Use This Skill

  • Use when you have just created an HTML page and want to know whether its controls work before you move on.
  • Use when you changed a page, or the JavaScript or CSS that a page loads, and want to confirm the page still holds together.
  • Use when the user asks you to check, QA, or smoke-test a local web page.
  • Run it once at the end, after the last edit, on each page you changed. Do not run it while you are still making changes.

How It Works

Step 1: Install the CLI once

Install assay from PyPI. The package is named assay-ui and the command it installs is assay.

bash
pip install assay-ui

It needs Python 3.10 or newer. On the first run assay downloads the Chromium build Playwright uses.

Step 2: Run assay on the page you changed

Point assay at the page itself and ask for the one-line summary.

bash
assay <the page you changed> --one-line

Point it at a file such as todo.html or dist/index.html. A folder also works and opens the index.html inside it. The page is often a folder or two above the file you edited, so a change to a script or stylesheet still means running assay on the page that loads it. assay needs no key, network, or configuration. A small page takes seconds, and a busy one can take a minute or more.

Step 3: Report the one line assay printed, verbatim

Put assay's output, word for word, as the last thing in your reply. It is already one line, or one line and a short list. Do not summarize it, reformat it, add to it, or write your own version.

A clean run looks like this, with assay's own numbers and wording.

text
assay: checked todo/todo.html, 8 checks, nothing flagged.

A run that flagged something looks like this, followed by a short list.

text
assay: checked notes/index.html, 12 checks, 4 flagged:

Report the line whether it flagged anything or not. Without it, the reader cannot tell a clean page from a check that never ran.

If the command did not run, say so in your own words, name the page, and quote what the shell actually printed. Never describe a check that did not happen as one that passed, and never guess at a cause.

Step 4: Report the finding and stop

Report what assay found and stop. Do not edit code in response to a finding in the same reply. If the user then asks you to fix it, fix it.

Examples

Example 1: A page that checks out clean

User: I added a to-do list at todo/todo.html. Does it work?

bash
assay todo/todo.html --one-line
text
assay: checked todo/todo.html, 8 checks, nothing flagged.

Report that line as the last thing in the reply, and do not change the page.

Example 2: A page where assay flagged something
bash
assay notes/ --one-line
text
assay: checked notes/index.html, 12 checks, 4 flagged:
  - draw on canvas twice, then press Undo twice: it reacted one press late

Report the whole line and its short list, say that a finding is a place to look rather than a confirmed bug, and wait for the user to ask before changing anything.

Example 3: The command did not run
bash
assay dist/index.html --one-line
text
assay: error: dist/index.html does not exist

Say that assay did not run, name the page, and quote the message. Do not report a check that never happened as one that passed.

Best Practices

  • ✅ Run assay once, at the end, on each page you changed.
  • ✅ Point it at the built page, such as dist/index.html, not at a source template.
  • ✅ Print assay's one line exactly as it came out, as the last thing in your reply.
  • ✅ When assay flags something, treat it as a place to look and wait to be asked before changing code.
  • ❌ Do not run assay while you are still editing the page.
  • ❌ Do not summarize, reword, or invent the result, and never report a check that did not run as one that passed.
Show full SKILL.md (466 more words)Show less

Limitations

  • assay will not build your project. Point it at built output. Given a source tree, it says so and names the command to run, and it will not run npm install for you, because installing dependencies executes their setup scripts.
  • assay checks one page. It does not crawl, so run it on each page you changed.
  • assay cannot check intent. A control that runs but does the wrong thing usually is not caught, because assay presses what the page offers and reports what followed without knowing what the page is for.
  • A finding is a place to look, not a confirmed bug. A control can correctly do nothing in the state it was pressed in, and a value can be limited on purpose.

Security & Safety Notes

  • assay runs locally, needs no API key, and makes no network calls of its own. It serves the folder over loopback rather than opening the file directly.
  • assay drives every control it finds in the browser, so if the page is wired to a live backend, a click can trigger that backend. Point assay at a local page or a local build, not at a production URL.
  • assay is read-only toward your code. It does not edit your files and writes nothing to disk unless you pass --report to save an HTML report.
  • assay will not run a project's build or install steps, because installing dependencies runs their setup scripts and this is a tool for checking code nobody has read yet.

Common Pitfalls

  • Problem: assay is pointed at a source file or template and reports that it cannot run. Solution: Build the project first and point assay at the built page, such as dist/index.html.
  • Problem: The reply rewrites or summarizes assay's result. Solution: Paste assay's line verbatim as the last thing in the reply, with its own numbers and wording.
  • Problem: Code gets changed in the same reply because assay flagged something. Solution: Report the finding and stop. Change code only when the user asks.
  • Problem: A page that changed its script or stylesheet is left unchecked because only the HTML looks like "the page". Solution: Run assay on the page that loads the changed script or stylesheet, which is often a folder or two above the file you edited.
  • @mock-hunter audits a live page for mock data, hardcoded values, and broken endpoints, for when you need to know whether the values on screen are real.
  • @accesslint-diff diffs a page's accessibility violations against a baseline, for when you care about accessibility rather than whether the controls work.

Additional Resources

© sickn33, MIT. 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/assay of sickn33/agentic-awesome-skills.

Open the folder on GitHubat commit b84d35a

Compare with similar skills

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

Assay compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Assay this skillsickn33/agentic-awesome-skills47k—~2kAutomated safety check: PassMIT
Drug Bioactivity Assaylearningmatter-mit/AtomisticSkills176—~693Automated safety check: PassMIT
Personal Writing Style Setupasgeirtj/system_prompts_leaks69k—~11kAutomated safety check: PassCC0-1.0
Investigating CI FailuresPostHog/posthog40k—~2.9kAutomated safety check: PassCustom licence
Finnish Humanizergithub/awesome-copilot40k1 repos~1.7kAutomated safety check: PassMIT
Deslopevery-app/open-seo23k—~602Automated safety check: PassMIT

Similar skills

  • Drug Bioactivity Assay

    learningmatter-mit/AtomisticSkills

    Fetch biological assays and target proteins a chemical has been tested against via PubChem.

    176 GitHub stars~693 tokensUpdated 3 days ago
    Auto-check passed
  • Personal Writing Style Setup

    asgeirtj/system_prompts_leaks

    Learns your writing voice from messages and documents you wrote and sent, then saves a voice profile as the my-writing-style skill so later drafts sound like you.

    69k GitHub stars~11k tokensUpdated today
    Writing & ContentAuto-check passed
  • Official

    Investigates a specific CI failure to a verdict: whose fault, which commit, who wrote it, and whether it's fixed.

    40k GitHub stars~2.9k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Finnish Humanizer

    github/awesome-copilot

    Official

    Detect and remove AI-generated markers from Finnish text, making it sound like a native Finnish speaker wrote it.

    40k GitHub starsUsed in 1 repo~1.7k tokens
    Writing & ContentAuto-check passed
  • Deslop

    every-app/open-seo

    Remove AI writing patterns from prose so it reads like a person wrote it.

    23k GitHub stars~602 tokensUpdated 2 days ago
    Writing & ContentAuto-check passed
  • Korean AI-Text Humanizer

    epoko77-ai/im-not-ai

    Rewrites Korean text written by AI so it reads like a human wrote it, detecting translationese and other AI patterns while leaving the content untouched.

    5.9k GitHub stars~4.5k tokensUpdated 15 days ago
    Writing & ContentAuto-check passed

More from sickn33/agentic-awesome-skills

All 1,497 skills in this repo
  • Liuguang Banlan UI

    sickn33/agentic-awesome-skills

    Implements an interface in one of two named color modes, iridescent white or colorful black, from a parameterized starter that reports measured color intensity.

    47k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • User Thoughts Memory

    sickn33/agentic-awesome-skills

    Saves a user's project decisions, rules and preferences into a project-local mdbase so later sessions and other agents can recover the intent.

    47k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Using LWC Memory and Graphs

    sickn33/agentic-awesome-skills

    Keeps project decisions, research and verified results available across coding-agent sessions through LWC memory, a document Wiki graph and a CodeGraph code index.

    47k GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Find Complementary Founders

    sickn33/agentic-awesome-skills

    Guides an agent through assessing its own owner for cofounder fit, publishing an approved profile, and ranking complementary profiles other agents published for their owners.

    47k GitHub starsUsed in 1 repo~4.8k tokens
    Auto-check passed
  • Whatsapp Cloud API

    sickn33/agentic-awesome-skills

    Integracao com WhatsApp Business Cloud API (Meta). An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 2 repos~4.5k tokens
    Auto-check passed
  • Cline Pilot

    sickn33/agentic-awesome-skills

    Acts as a proxy for the Cline CLI, dispatching coding tasks one at a time, monitoring runs by hard evidence, relaying decisions to you and learning per-project preferences.

    47k GitHub starsUsed in 1 repo~4.6k tokens
    Auto-check passed

Questions about Assay

What does Assay do?

Run assay on a web page you just wrote or changed. An agent skill from sickn33/agentic-awesome-skills. Assay is an agent skill from sickn33/agentic-awesome-skills. Run assay on a web page you just wrote or changed.

How do I install Assay in Claude Code?

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

How do I install Assay in Codex?

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

Can I use Assay 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 sickn33/agentic-awesome-skills --skill assay -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/assay, .gemini/skills/assay, .github/skills/assay and .opencode/skills/assay in your project.

What does Assay need to run?

Going by SKILL.md and its folder, Assay needs the command-line tools its instructions call (pip and npm). Our summary lists: Python 3; Node.js.

Does Assay access the network?

SKILL.md names 2 domains. As links in the text: github.com and pypi.org. This is read from the text; nothing was executed.

Is Assay 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 Assay use?

Assay is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Assay use?

About 2k tokens (SKILL.md is roughly 7.9k 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 Assay?

Skills that share tags, products or a category with Assay: Drug Bioactivity Assay (learningmatter-mit/AtomisticSkills, 176 stars), Personal Writing Style Setup (asgeirtj/system_prompts_leaks, 69k stars), Investigating CI Failures (PostHog/posthog, 40k stars) and Finnish Humanizer (github/awesome-copilot, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Assay?

sickn33 (a GitHub user) maintains it in sickn33/agentic-awesome-skills, which has 47,405 GitHub stars. The repository holds 1,497 skills in this directory. The repository was last updated on October 9, 2026.

Source: sickn33/agentic-awesome-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.