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 alphabravo-oss/guild --skill sightgit clone --depth 1 https://github.com/alphabravo-oss/guildWrote 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/alphabravo-oss/guild/sight)<a href="https://agentmods.dev/skills/alphabravo-oss/guild/sight"><img src="https://agentmods.dev/badge/skills/alphabravo-oss/guild/sight/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/alphabravo-oss/guild/sight"><img src="https://agentmods.dev/badge/skills/alphabravo-oss/guild/sight.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.00058 | $0.09110 |
| Opus 5.5 | $0.00023 | $0.03644 |
| Sonnet 5.5 | $0.00012 | $0.01822 |
| Haiku 4.5 | $0.00006 | $0.00911 |
Grade A, and why
sight 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 1mo 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.
All browser interaction MUST go through these tools — not code reading, not curl, not How it starts
The opening of the file, as written. The whole thing — 703 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Foundry integration: This skill is invoked by Foundry's F2 INSPECT phase as the
sightstream. SIGHT runs in the main thread (Playwright MCP requirement). When run from F2, findings are filed through theFoundry-Defectdoor and land infoundry-archive/{run}/defects.json; sight never writes that file itself. When run standalone, findings are written as a report. Skip with--no-ui.
/foundry:sight — Deep Browser UI Audit
Sight uses Playwright MCP to deeply exercise a web application. It doesn't just visit pages — it clicks every button, fills every form, opens every dropdown, expands every accordion, triggers every modal, and watches what happens. It reads console logs, tracks network requests, and documents everything that's wrong.
Think: a meticulous QA engineer or a frustrated user trying to break things.
Supports headed mode (GUI) and headless mode (CI/remote).
Prerequisites
-
Playwright MCP configured in
.mcp.jsonwith devtools enabled:Headed (default — GUI available):
{ "mcpServers": { "playwright": { "command": "npx", "args": ["@playwright/mcp@latest", "--caps", "vision,devtools"] } } }Headless (no GUI / CI / remote server):
{ "mcpServers": { "playwright": { "command": "npx", "args": ["@playwright/mcp@latest", "--headless", "--caps", "vision,devtools"] } } } -
The target page must be accessible (running locally or deployed)
Invocation
| Command | Behavior |
|---|---|
/foundry:sight <url> |
Deep audit, document findings |
/foundry:sight <url> --parity <reference> |
Compare against a reference design or URL |
Core Principle: Exercise Everything AND Verify Outcomes
DO NOT just visit a page, glance at it, and move on. For every page:
- Find ALL pages — don't rely only on visible navigation. Read the app's router config to discover every defined route and visit it, even if it's not linked in the UI.
- Read the DOM snapshot — understand every element on the page
- Interact with every interactive element:
- Buttons: click them. What happens? New console errors? Network calls? Modal?
- Links: where do they go? Do they 404?
- Form fields: type into them. Do they validate? What happens on submit?
- Dropdowns/selects: open them. Are options populated? Do they filter correctly?
- Toggles/switches: flip them. Does state change? API call fire?
- Tables: check every column. Are cells empty? Do sort headers work? Does pagination work?
- Tabs: click each tab. Does content load? Errors?
- Search boxes: type a query. Does it filter? Debounce correctly?
- Modals/dialogs: trigger them. Do they open/close cleanly? Can you escape?
- Accordions/expandable sections: expand them all
- Action menus (... buttons): click them. What options appear?
- Verify the outcome actually rendered — clicking "View Manifest" must show a manifest, not a blank panel. Every action must produce a visible, correct DOM change. Silent no-ops, empty renders, stale content, and stuck spinners are all findings.
- Check console after every interaction — new errors? warnings?
- Check network after every interaction — failed requests? slow responses?
- Screenshot before and after significant interactions
- Try edge cases:
- Submit empty forms
- Enter invalid data (special chars, extremely long strings, SQL injection patterns)
- Click buttons rapidly
- Use keyboard navigation (Tab, Enter, Escape)
- Scenario enumeration — for each page, don't just test what's visible. Think about
what a real user would TRY to do:
- "I see a list of items — can I sort them? Filter them? Search them? Paginate?"
- "I created an item — can I edit it? Delete it? Duplicate it? Export it?"
- "This form has 5 fields — what if I fill only 1? What if I fill all with garbage?"
- "I'm on the detail page — what if I go back? What if I refresh? Bookmark?"
- "There are 0 items — is there an empty state? Or just a blank table?"
- "There are 100 items — does pagination work? Performance OK?" Count the scenarios you tried vs the scenarios a user would reasonably attempt. If you tried 5 out of 20 reasonable scenarios, go back and try more. The goal is EXHAUSTIVE scenario coverage, not "a few interactions per page."
- Verify data roundtrips: after creating or modifying data through a form,
navigate to the page that DISPLAYS that data and verify the values match.
This catches serialization bugs, missing fields, and data loss:
- Fill and submit a create form (e.g., "Create User" with name "Test User")
- Navigate to the list/detail page that shows the created item
- Verify EVERY field value matches what was submitted
- If values don't match or the item doesn't appear: finding (data loss)
- Check edge cases: special characters, long strings, empty optional fields
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.
- 1mo ago Changed · +7 lines 89992cbd201a
- 1mo ago Changed · +75 lines 09d0a139dde1
- 1mo ago First seen · 628 lines · 58 tokens per session scan A f9d8b70bef57
sight is a skill published in the GitHub repository alphabravo-oss/guild (2 stars, last pushed 11d ago), licensed MIT. It adds 58 tokens to every session and 9,110 once invoked, about $0.0002 per session on Opus 5.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-04.
Other skills, from other repositories
browse
Drive a real browser through Aside: open a page, read it, click through a flow, take screenshots, check console errors. (gstack).
cua-driver
Use Cua Driver for desktop or browser tasks that are awkward or unavailable through Bash/APIs, or when the user explicitly wants GUI interaction: app testing, visual bug reproduction, form filling, calendar entry, screenshots, and demo recording. Also covers Cua setup; not OpenAI Codex Computer Use or web research.
create-verification-skill
Create a repo-local verification skill and exhaustive feature map for driving a real app through its UI, CLI, or API. Use for "create a verification skill", "make a verify skill for this repo", or "document how agents can verify this app".
webapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
browser-qa
A browser-based quality check for deployed web pages and user flows. It uses browser automation to test rendering, navigation, forms, interactions, responsive behaviour, and accessibility-related issues.
test-electron-app
Drive the real running PostHog Electron app (live tRPC, workspace-server, real data) over CDP with agent-browser. Connect to the running app on port 9222, test desktop changes against a local Django stack, snapshot the accessibility tree, inspect network requests, and screenshot only when explicitly asked. Use when…