# Dismiss Cookie Banner

> Detects and dismisses cookie consent banners on any site. Use on the first interaction after navigation to any page that may show a banner.

- **Type:** Skill
- **Install:** `agentstack add skill-bettyguo-browser-skills-dismiss-cookie-banner`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [bettyguo](https://agentstack.voostack.com/s/bettyguo)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [bettyguo](https://github.com/bettyguo)
- **Source:** https://github.com/bettyguo/browser-skills/tree/main/skills/dismiss-cookie-banner

## Install

```sh
agentstack add skill-bettyguo-browser-skills-dismiss-cookie-banner
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Dismiss Cookie Banner

## When to invoke

On the first interaction after navigating to a new page, before the agent attempts to interact with content. Especially relevant for sites in EU, UK, California, or Chinese jurisdictions, where banners are near-universal.

The matcher will assign this skill a high score when:
- `is_initial_load = true`
- `cookies_present = true` and DOM contains a cookie-related marker

## Recipe

1. wait_for_dom_ready timeout=2s
2. wait extra=400ms
3. try_each selectors=[
     "#onetrust-accept-btn-handler",
     "button#onetrust-pc-btn-handler",
     ".cc-allow",
     ".cc-accept-all",
     "button.cookie-accept",
     "button:has-text('Accept all cookies')",
     "button:has-text('Accept All Cookies')",
     "button:has-text('Accept all')",
     "button:has-text('Accept cookies')",
     "button:has-text('I Agree')",
     "button:has-text('Agree and continue')",
     "button:has-text('Got it')",
     "[aria-label*='Accept' i][aria-label*='cookie' i]",
     "[data-testid*='cookie-banner-accept']",
     "[data-cookieconsent='accept']",
   ] action=click on_success=stop timeout=1500ms
4. wait extra=300ms

## Success criteria

- assert no_visible_element selector="[aria-label*='cookie' i][role='dialog']" OR no_visible_element selector="#onetrust-banner-sdk" OR no_change_was_needed

## When NOT to use

- The user task is *about* the cookie banner itself — e.g., privacy testing, a screenshot of the pre-consent state, or auditing consent UI.
- The site has already had its banner dismissed in the persistent context (this skill is idempotent but logs an unnecessary execution).

## Known failures

- **Custom CMS banners (~2% of sites):** sites running bespoke consent UIs may not match any of the standard selectors. The vision fallback handles these when an adapter is configured; otherwise the skill returns `failed` and the agent decides.
- **Cross-origin iframe banners (~1%):** banners served from a different origin (e.g., embedded consent providers using ``) cannot be clicked through Playwright's default context. We report `failed` with `reason="iframe_cross_origin"`.
- **"Reject all" intent:** this skill always accepts. If your task requires rejecting cookies, use the future `reject-cookie-banner` skill (post-launch) or override the recipe via the agent.

## Example usage

```
Agent: "Go to bbc.com and tell me the top story."
→ matcher selects [dismiss-cookie-banner, verify-page-loaded, extract-text]
→ invoke_skill("dismiss-cookie-banner") → success in 207ms, deterministic_path=true
→ invoke_skill("verify-page-loaded") → success in 84ms
→ agent reads the top story headline directly
```

## Related skills

- `verify-page-loaded` — typically chained immediately after this one
- `dismiss-newsletter-popup` — sometimes co-occurs on news sites
- `exit-tracking-popup` — for the rare "we use cookies for analytics" upsells that aren't the main consent UI

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [bettyguo](https://github.com/bettyguo)
- **Source:** [bettyguo/browser-skills](https://github.com/bettyguo/browser-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-bettyguo-browser-skills-dismiss-cookie-banner
- Seller: https://agentstack.voostack.com/s/bettyguo
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
