argus AGENTS.md

An instruction guide for using Argus, a quality-assurance tool that checks websites or applications through an agent host. It describes browser testing, optional macOS screen testing, setup, and available tool profiles.

In plain words
What is it for?
Use it to set up Argus, connect it to an MCP host, check its installation, choose browser or macOS screen testing, and follow its QA workflow. The excerpt does not list the full set of checks.
Why use it?
It provides a repeatable way to review software with evidence instead of relying on visual guesses or assumptions.

Instructions file for CodexOpenCode

Install

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.

agentmods
npx agentmods add instructions/chriswu727/argus/agents-md
Clone the repo
git clone --depth 1 https://github.com/chriswu727/argus

Made for: Codex, OpenCode.

Per session 2,825 This file is loaded in full into every session.
When invoked 2,825 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.02825 $0.02825
Opus 5 $0.01412 $0.01412
Sonnet 5 $0.00565 $0.00565
Haiku 4.5 $0.00282 $0.00282

Measured 3d ago against content hash daa309e5dfa6, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

argus AGENTS.md 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 3d 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.

AGENTS.md · 201 lines

How it starts

The opening of the file, as written. The whole thing — 201 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Argus — Agent Guide

This file is the short version of the README, aimed at an agent using Argus through MCP. Argus is a QA capability inside the host's current task; it does not replace the host agent's identity or authority.

Setup

# Web mode (works everywhere)
pip install argus-testing
playwright install chromium

# Screen mode (macOS only — to test native apps + browser chrome)
pip install 'argus-testing[mac]'
brew install cliclick

# Wire it into the MCP host
claude mcp add argus -- argus-mcp
argus-mcp --version       # confirm host loaded the version you expect
argus-mcp --list-tools    # show the selected profile and public tools
argus-mcp --doctor        # macOS Screen Recording + Accessibility check

The default profile is core. Use --tool-profile screen for native macOS review and --tool-profile full only when the broader network, storage, tabs, crawl, and coordinate surface is needed. The ARGUS_TOOL_PROFILE environment variable provides the same setting.

After pip install -U argus-testing, restart your MCP host so it picks up the new tool table.

Using Argus within the host task

Use an evidence-first QA mindset while reviewing, but continue to follow the user's broader task. The short version:

  • GOAL: Find bugs the dev team would be embarrassed to ship. Tight five-bug reports beat noisy fifty-bug ones.
  • BOUNDARY: Do not infer permission for purchases, publication, or other irreversible external effects. Argus does not prevent in-scope diagnosis or implementation work the user requested.
  • THE RITUAL (start_session returns it once; observe keeps its compact coverage ledger visible): Map → Use it (walk each goal end-to-end, carrying real state) → Hypothesize → Act → Observe → Verify → Record → Cover.

Tools you'll use most

Web mode

Tool Purpose
start_session(url, review_mode=..., goals=[...], constraints=[...], time_budget_minutes=...) Launch Playwright, establish the review contract, and return the one-time QA protocol plus initial observation. The budget is advisory; 0 means none.
observe() URL + interactive elements (description-keyed) + visible feedback + counts + ARIA + viewport state. Read this first, after every action.
coverage_update(goal, status, evidence) Mark a goal in_progress before its journey to open a precise evidence window. exercised and blocked require an explanation and automatically link URLs, value-redacted actions, screenshots, checks, and findings; Argus never guesses semantic completion.
click_what(description) Click the element matching description. Returns the top candidates if ambiguous — rephrase rather than guess.
type_into(description, text) / select_into(description, value) Inputs and dropdowns by description.
test_action(target, expect=...) Click + before/after diff in one call. Pass expect to PREDICT the outcome ({"count":{"label":"tasks","delta":1}}, {"gains":"Buy milk"}, {"removes":...}, {"text_present":...}, {"toast":...}, {"url_changed":true}) and Argus reports MATCH / SURPRISE — a surprise is a bug lead. Also shows CROSS-STACK: which requests the click fired (methods/statuses) and a CHECK nudge when a message appeared without a matching write.
verify_persistence(expect, target_text, after_url) Forces a fresh GET; reports whether target_text is present / absent. The "Saved!" toast is not proof — this is.
capsule_save(name, liveness_marker) / capsule_restore(name) Snapshot the logged-in/seeded state (cookies+storage) after minting it through the UI, then restore it later (with a mandatory live/stale re-check). Restore is a CLEAN replace, so save→branch A→restore→branch B runs two journeys from a byte-identical state for differential testing.
regression_check() Re-test the findings journaled in prior runs against the CURRENT build: STILL-PRESENT / NO-LONGER-REPRODUCES / INCONCLUSIVE. "Did my fix land, did anything come back?"
inspect_element(description) Computed styles + ARIA + outerHTML + truncation flag for interactive or visible non-interactive content.
check_layout() Bounded viewport signals for horizontal overflow, clipped text, small targets, and fixed/sticky overlays.
screenshot(name, element="", full_page=False) Full viewport, full page, or a tight crop; waits for finite CSS transitions, then returns the image plus its absolute evidence path.
screenshot_diff(before, after) Pillow diff with red-tint overlay; returns the image plus its absolute evidence path.
eval_js(code) Arbitrary JS in the page context. Off by default (argus-mcp --unsafe to enable).
record_bug(title, severity, evidence, verify=...) Call this once you've confirmed a real bug. Verify text with (expect, target_text, at_url), or an HTTP failure with (expect_status, at_url); absent checks need the URL where the item should be. For a MULTI-STEP text bug add "replay": true to re-drive the recorded journey from a cold start. Severity: critical / high / medium / low / info.
record_observation(title, evidence, category) Preserve qualitative visual, usability, content, responsive, or accessibility evidence without inflating it into a bug.
get_errors() Drain captured console + network events. Events retain the page where they occurred; matching console/network symptoms attach to an existing root cause, while new causes are tagged "auto-captured / not independently verified".
check_links() / check_performance() Probe-style helpers — return raw data, no auto-bug.
crawl_site() Page discovery: crawls internal links, auto-capturing only console/network events (tagged). Walk the surfaced pages and record_bug what you confirm.
end_session() Close session; write HTML, JSON, JUnit, and SARIF reports with separate tool-call and recorded-step counts.

Read the full file on GitHub · 201 lines

Changes

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.

  1. 3d ago First seen · 201 lines · 2,825 tokens per session scan A daa309e5dfa6

Subscribe to this mod's changes

argus AGENTS.md is an instructions file published in the GitHub repository chriswu727/argus (2 stars, last pushed 24d ago), licensed MIT. It adds 2,825 tokens to every session, about $0.0141 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-31.

Related

Other instructions, from other repositories

playwright-fieldkit CLAUDE.md

Instructions for jpbaking/playwright-fieldkit, a project described as: Playwright FieldKit: gives coding agents hands and eyes on the web — crawl, debug, record, and test live sites via deterministic scripts; portable Agent Skill for Codex, Claude Code, Antigravity, and Cline.

jpbaking/playwright-fieldkit · 5 tokens

playwright-mcp CLAUDE.md

Claude Code instructions for microsoft/playwright-mcp, covering commit convention, ... make changes .., summary, rolling playwright and preparing a release.

microsoft/playwright-mcp · 363 tokens

webqa-agent CLAUDE.md

Instructions for MigoXLab/webqa-agent, covering claude.md, 模块化规则引用, 研究和规划 (critical), 1. 使用 context7 mcp 工具 and 2. 使用联网搜索.

MigoXLab/webqa-agent · 4,877 tokens

Argus CLAUDE.md

Instructions for ironclawdevs27/Argus, covering argus — project context for claude code, what this project is, skill reference, project structure and running the test harness.

ironclawdevs27/Argus · 21,088 tokens

claude-browser-test-skills CLAUDE.md

Instructions for Autodesk/claude-browser-test-skills, covering claude.md, what this repo is, layout, conventions when editing skills and validate before publishing.

Autodesk/claude-browser-test-skills · 694 tokens

sniff AGENTS.md

Instructions for Aboudjem/sniff, covering agents.md: sniff, what this repo is, how an agent should use sniff, handling the playwright setup gate and finding output schema.

Aboudjem/sniff · 1,901 tokens