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 skills add andregusman-raiz/a-gusman-claude --skill ag-testar-e2egit clone --depth 1 https://github.com/andregusman-raiz/a-gusman-claudeWrote 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/andregusman-raiz/a-gusman-claude/ag-testar-e2e)<a href="https://agentmods.dev/skills/andregusman-raiz/a-gusman-claude/ag-testar-e2e"><img src="https://agentmods.dev/badge/skills/andregusman-raiz/a-gusman-claude/ag-testar-e2e/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/andregusman-raiz/a-gusman-claude/ag-testar-e2e"><img src="https://agentmods.dev/badge/skills/andregusman-raiz/a-gusman-claude/ag-testar-e2e.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 2 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 30 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
- medium Excessive Agency · line 4 Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
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.00038 | $0.07000 |
| Opus 5 | $0.00019 | $0.03500 |
| Sonnet 5 | $0.00008 | $0.01400 |
| Haiku 4.5 | $0.00004 | $0.00700 |
Grade A, and why
ag-testar-e2e scanned grade A with 1 finding 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 7d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s http://localhost:3000 > /dev/null 2>&1 || (bun run dev & bunx wait-on http://localhost:3000 --timeout 30000) How it starts
The opening of the file, as written. The whole thing — 722 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ambiente E2E
- Playwright: !
/opt/homebrew/bin/playwright-cli --version 2>/dev/null || echo "not found" - Specs count: !
find . -name "*.spec.ts" -path "*/e2e/*" 2>/dev/null | wc -l | tr -d ' '
ag-testar-e2e — Testar E2E (Playwright)
Papel
O Usuario Automatizado: nao le codigo — usa a aplicacao. Clica, preenche, navega, verifica. Quando algo quebra, captura evidencia completa: screenshot, console log, network request, passo exato da falha.
Diferenca de ag-testar-codigo: "a funcao retorna o valor certo" (logica) vs "o usuario consegue fazer login" (experiencia).
Pre-requisitos
# 1. Playwright instalado?
ls node_modules/@playwright/test 2>/dev/null || bun run playwright init --quiet
bunx playwright install --with-deps chromium # so Chromium por default; multi-browser depois
# 2. App esta rodando?
curl -s http://localhost:3000 > /dev/null 2>&1 || (bun run dev & bunx wait-on http://localhost:3000 --timeout 30000)
# Detectar porta em: package.json scripts | vite.config.ts | next.config.js | .env (PORT=)
playwright.config.ts (referencia)
import { defineConfig } from '@playwright/test';
export default defineConfig({
testDir: './tests/e2e',
timeout: 30_000,
retries: process.env.CI ? 2 : 0,
workers: process.env.CI ? 1 : undefined,
use: {
baseURL: process.env.PLAYWRIGHT_TEST_BASE_URL ?? process.env.PLAYWRIGHT_BASE_URL ?? 'http://localhost:3000',
screenshot: 'only-on-failure',
video: 'on-first-retry',
trace: 'on-first-retry',
viewport: { width: 1280, height: 720 },
actionTimeout: 10_000,
navigationTimeout: 15_000,
},
// Skip webServer quando testando contra URL remota (Vercel deploy)
webServer: process.env.PLAYWRIGHT_TEST_BASE_URL && !process.env.PLAYWRIGHT_TEST_BASE_URL.includes('localhost')
? undefined
: {
command: 'bun run dev',
url: 'http://localhost:3000',
reuseExistingServer: true,
timeout: 30_000,
},
reporter: [['html', { open: 'never', outputFolder: 'tests/e2e/report' }], ['list']],
projects: [
{ name: 'setup', testMatch: /.*\.setup\.ts/ },
{
name: 'chromium',
use: { storageState: 'tests/e2e/.auth/user.json' },
dependencies: ['setup'],
},
{
name: 'smoke',
testDir: './tests/e2e/smoke',
use: { storageState: 'tests/e2e/.auth/user.json' },
dependencies: ['setup'],
timeout: 30_000,
},
],
});
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.
- 7d ago First seen · 722 lines · 38 tokens per session scan A e202b56962f3
ag-testar-e2e is a skill published in the GitHub repository andregusman-raiz/a-gusman-claude (19 stars, last pushed 2d ago), licensed MIT. It adds 38 tokens to every session and 7,000 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
ui-test
Runs UI tests described in plain English by driving real Chrome via the Claude-in-Chrome extension. Covers end-to-end flows (clicks, forms, assertions), visual checks (screenshot + optional baseline diff), accessibility (axe-core), performance (Web Vitals + light Lighthouse-style metrics), and an interactive --debug…
audit-ui-e2e
Runs a beginner-mind end-to-end UI audit of any running app — local dev server, staging, production, or a specific URL. Drives Chrome through every interactive element on the target surface, collects structured findings (severity, category, where, symptom, impact, repro, triage), and hands the result off to…
capture-screens
Automatically navigates a web app using Playwright MCP and captures context-aware named screenshots at each product feature state. Names each file semantically based on context (e.g., checkout-payment-form-filled.png). Outputs a manifest.json mapping filenames to descriptions and a summary report. Use when documenting…
browse
Fast headless browser for QA testing and site dogfooding. Navigate any URL, interact with elements, verify page state, diff before/after actions, take annotated screenshots, check responsive layouts, test forms and uploads, handle dialogs, and assert element states. 100ms per command. Use when you need to test a…
test-browser
Run browser tests on pages affected by current PR or branch.
verify
Drive the Vite desktop SPA to verify AppShell / Workbench sidebar changes.