Audit Terms of Service, user agreements, and privacy policies for consumer risks, producing a structured report that flags unfair clauses, data traps, and liability issues. Trigger when a user asks to review, audit, or analyze a ToS, privacy policy, or user agreement, or mentions specific concerns like auto-renewal or data authorization.
npx skills add https://github.com/zebbern/claude-code-guide --skill tos-clause-scanner
Systematically audit the Terms of Service, User Agreements, and Privacy Policies of apps, SaaS products, and platforms from an ordinary consumer's standpoint. Identify clauses that may harm consumer rights and produce an actionable audit report.
Paste the terms text directly to the Agent or provide a file path. The Agent will automatically complete the audit and output a structured report.
Example prompts:
The audit covers seven major risk categories, each with common problem patterns:
| ID | Risk Category | Severity | Description |
|----|---------------|----------|-------------|
| R1 | Unfair Clauses | 🔴 High | Clauses that exclude or restrict consumers' statutory rights |
| R2 | Covert Data Authorization | 🔴 High | Data collection, sharing, or sale beyond what the service requires |
| R3 | Auto-Renewal Traps | 🟠 Medium-High | Opaque auto-renewal mechanisms and cancellation barriers |
| R4 | Unilateral Amendment Rights | 🟠 Medium-High | Platform reserves the right to modify terms without notice |
| R5 | Excessive Liability Disclaimers | 🟠 Medium-High | Overbroad disclaimers and low liability caps |
| R6 | Dispute Resolution Restrictions | 🟡 Medium | Mandatory arbitration, class-action waivers, jurisdiction constraints |
| R7 | IP Overreach | 🟡 Medium | Excessive rights claimed over user-generated content |
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
Look for these patterns:
Review checklist:
After receiving the terms text submitted by the user, follow these steps:
For each identified risky clause, evaluate three dimensions:
| Dimension | Description |
|-----------|-------------|
| Severity | Potential harm to consumer rights (High / Medium / Low) |
| Concealment | Whether the clause disguises its true intent through wording or placement (High / Medium / Low) |
| Actionability | Whether the consumer has practical means to mitigate the risk (Yes / Limited / None) |
# Terms of Service Audit Report
## Basic Information
- **Subject**: [Platform / App name]
- **Document Type**: [Terms of Service / Privacy Policy / Combined Agreement]
- **Audit Date**: [Date]
## Overall Rating
[⭐⭐⭐⭐⭐ to ⭐ — five-tier scale]
| Metric | Rating |
|--------|--------|
| Overall Consumer-Friendliness | ⭐⭐⭐ |
| Data Privacy Protection | ⭐⭐ |
| Fee Transparency | ⭐⭐⭐⭐ |
| Clause Fairness | ⭐⭐ |
## Risk Findings
### 🔴 High-Risk (Requires Immediate Attention)
#### Finding 1: [Risk Title]
- **Risk Category**: R1 Unfair Clauses / R2 Covert Data Authorization / ...
- **Original Text**: > [Direct quote from the terms]
- **Risk Analysis**: [Plain-language explanation of why this clause is harmful to consumers]
- **Severity**: High | **Concealment**: High | **Actionability**: None
- **Recommendation**: [Actions the consumer can take]
### 🟠 Medium-High Risk
...(same structure as above)
### 🟡 Medium Risk
...(same structure as above)
## Consumer Action Items
1. [Specific action recommendations, ordered by priority]
2. ...
## Comparison with Industry Peers (if applicable)
[Brief note on whether the clause is standard industry practice]
When analyzing each risk, follow these principles so that ordinary consumers can understand:
The audit references the following regulations (this does not constitute legal advice):
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take zebbern/tos-clause-scanner from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.