Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Drafts publication-ready cookie policies, banner copy, and consent-flow language under GDPR/ePrivacy, CCPA/CPRA, and major U.S. state privacy laws. Converts a verified cookie inventory into enforceable policy sections with lawful-basis mapping, granular opt-in controls, withdrawal mechanics, and user-rights handling. Use when asked for cookie policy, cookie banner, tracking notice, consent management, do-not-sell notice, or privacy rights messaging.
.claude/skills/thomasmoreai-cookie-consent-policy/SKILL.md| Model | Eval pass | Runs |
|---|---|---|
| gemini-3.6-flash | 99% | 96 |
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 70% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -7% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -3% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 180% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 108% | 0% |
Drafts an enforceable cookie policy and compliant banner framework from a verified cookie inventory and jurisdiction scope.
Gather all inputs; apply and label defaults if user says "use defaults."
| Input | Required | Default if missing | |---|---|---| | Jurisdictions served | yes | US + EU | | Cookie inventory | yes | [VERIFY] — complete inventory required | | Consent mechanism | yes | banner + preference center | | User rights contact | yes | privacy@ [CLIENT TO SPECIFY] | | Update cadence | yes | 6–12 months + material-change notices |
Generate in this order:
| Section | Mandatory fields | EU/US notes | |---|---|---| | Purpose & scope | organization, websites, users affected, last-updated date | include EEA processing basis and non-EU logic | | What are cookies | definition + non-cookie trackers (pixels, web beacons, local storage) | examples required | | Cookie categories | strict table by category (see Step 3) | essential cookies exempt from consent where lawful | | How we use cookies | purpose + legal basis + processors/recipients | map each non-essential use to explicit consent | | Your choices | accept all / reject non-essential / customize | no bundling consent with account creation | | Managing preferences | withdrawal and edits anytime | explain functional limits if opt-outs selected | | Rights | GDPR, CCPA/CPRA, state-law rights | include agency contact + complaint route | | Changes | versioning + notice method + effective date | material changes require renewed consent | | Contact | email/portal/address + response SLA | U.S. and EU contact as applicable |
Every cookie must appear in this format:
| Cookie | Type | Provider | Purpose | Legal Basis | Duration | Category | Third-Country Transfer | Retention | Opt-out Method | |---|---|---|---|---|---|---|---|---|---| | [name] | first/third-party | [provider] | [specific] | consent / legitimate interest / etc. | [days/months] | essential / analytics / ads / functionality / prefs | yes/no + country | [period] | [method] |
Separate from the policy. Requirements:
[CLIENT TO SPECIFY] details[CLIENT TO SPECIFY] for unknowns[VERIFY][VERIFY]Key changes from the original:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-15 | pass→pass | 11,710 | 12,218 | +4% | 1 | 1 | 0% | 1,992 | 3,502 | +76% | 0 | 0 | — |
case-01 | fail→pass | 16,859 | 21,590 | +28% | 1 | 1 | 0% | 3,423 | 5,810 | +70% | 0 | 0 | — |
case-02 | fail→pass | 31,846 | 23,765 | -25% | 1 | 1 | 0% | 6,233 | 5,773 | -7% | 0 | 0 | — |
case-03 | fail→pass | 34,906 | 25,252 | -28% | 1 | 1 | 0% | 6,225 | 6,010 | -3% | 0 | 0 | — |
case-04 | pass→pass | 23,986 | 22,299 | -7% | 1 | 1 | 0% | 4,236 | 5,765 | +36% | 0 | 0 | — |
case-05 | pass→pass | 16,408 | 19,197 | +17% | 1 | 1 | 0% | 3,017 | 5,081 | +68% | 0 | 0 | — |
case-06 | pass→pass | 23,441 | 31,554 | +35% | 1 | 1 | 0% | 4,473 | 6,728 | +50% | 0 | 0 | — |
case-07 | pass→pass | 17,883 | 19,633 | +10% | 1 | 1 | 0% | 3,618 | 5,185 | +43% | 0 | 0 | — |
case-08 | fail→pass | 10,277 | 22,500 | +119% | 1 | 1 | 0% | 2,008 | 5,615 | +180% | 0 | 0 | — |
case-09 | pass→pass | 9,469 | 10,348 | +9% | 1 | 1 | 0% | 1,678 | 3,165 | +89% | 0 | 0 | — |
case-10 | fail→pass | 8,226 | 9,163 | +11% | 1 | 1 | 0% | 1,365 | 2,844 | +108% | 0 | 0 | — |
case-11 | pass→pass | 8,088 | 13,360 | +65% | 1 | 1 | 0% | 1,422 | 3,590 | +152% | 0 | 0 | — |
case-12 | fail→pass | 10,376 | 14,950 | +44% | 1 | 1 | 0% | 1,910 | 3,936 | +106% | 0 | 0 | — |
case-13 | pass→pass | 15,404 | 14,627 | -5% | 1 | 1 | 0% | 2,694 | 4,229 | +57% | 0 | 0 | — |
case-14 | pass→pass | 13,944 | 26,032 | +87% | 1 | 1 | 0% | 2,827 | 5,952 | +111% | 0 | 0 | — |
case-16 | pass→pass | 12,272 | 14,356 | +17% | 1 | 1 | 0% | 2,136 | 3,810 | +78% | 0 | 0 | — |
case-17 | fail→pass | 10,235 | 8,816 | -14% | 1 | 1 | 0% | 1,632 | 2,746 | +68% | 0 | 0 | — |
case-18 | fail→pass | 10,116 | 9,431 | -7% | 1 | 1 | 0% | 1,709 | 2,995 | +75% | 0 | 0 | — |
case-19 | pass→pass | 10,179 | 14,460 | +42% | 1 | 1 | 0% | 1,793 | 3,327 | +86% | 0 | 0 | — |
case-20 | pass→pass | 14,913 | 24,078 | +61% | 1 | 1 | 0% | 3,006 | 6,028 | +101% | 0 | 0 | — |
case-21 | pass→pass | 28,594 | 22,765 | -20% | 1 | 1 | 0% | 6,166 | 5,571 | -10% | 0 | 0 | — |
case-22 | fail→pass | 17,088 | 20,775 | +22% | 1 | 1 | 0% | 2,820 | 4,568 | +62% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +41 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.