
Regulatory Compliance
- 45 installs
- 36 repo stars
- Updated July 14, 2026
- oimiragieo/agent-studio
Helps with ai & agent building tasks.
About
regulatory-compliance is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted development.
- regulatory-compliance
- AI & Agent Building
- AI-coding skill
Regulatory Compliance by the numbers
- 45 all-time installs (skills.sh)
- +1 installs in the week ending Aug 4, 2026 (Skillselion tracking)
- Ranked #7,749 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/oimiragieo/agent-studio --skill regulatory-complianceAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 45 |
|---|---|
| repo stars | ★ 36 |
| Last updated | July 14, 2026 |
| Repository | oimiragieo/agent-studio ↗ |
What it does
Helps with ai & agent building tasks.
Files
Regulatory Compliance Skill
Overview
Assess systems, processes, and artifacts against major regulatory frameworks:
- GDPR/CCPA — Data privacy compliance for EU and California/US state laws
- Privacy-by-Design — Proactive privacy embedding following Ann Cavoukian's 7 principles
- ADA/WCAG — Web and software accessibility under ADA and WCAG 2.1/2.2 AA standards
- DPA Validation — Data Processing Agreement completeness and correctness checks
- Regulatory Monitoring — Guidance on tracking regulatory changes across jurisdictions
Output is structured as PASS / CONDITIONAL / FAIL with severity-rated findings and actionable remediation tasks.
When to Use
- Before deploying any feature that collects, processes, or stores personal data
- During architecture review for systems touching PII or user data
- When validating third-party vendor agreements and DPAs
- Before launching products in EU, California, or any jurisdiction with active privacy law
- When auditing accessibility compliance for public-facing interfaces
- As part of CI compliance gates for data pipelines and APIs
Iron Laws
1. NEVER report PASS on partial compliance — if any item fails, the result is CONDITIONAL or FAIL; partial compliance masks violations. 2. ALWAYS include remediation tasks with specific owning agents — vague findings don't produce fixes; every FAIL/CONDITIONAL must specify who fixes it and how. 3. NEVER skip multi-jurisdiction check — GDPR, CCPA, and 20+ US state laws may all apply; document scope clearly. 4. ALWAYS verify privacy-by-design at design time — retrofitting privacy after deployment is significantly more costly and less effective. 5. NEVER treat accessibility as optional — ADA/WCAG compliance carries active litigation risk (ADA lawsuits up 37% H1 2025); all public interfaces must be validated. 6. ALWAYS document regulation version and date assessed — regulatory guidance evolves; stamp every report with the regulation version and assessment date.
Workflow
Step 1: Scope Definition
Define which regulations apply to the subject of the assessment:
## Compliance Scope
- Subject: [System / Feature / DPA / Interface being assessed]
- Jurisdictions: [EU / California / Virginia / Colorado / Other states]
- Applicable Regulations:
- [ ] GDPR (EU General Data Protection Regulation)
- [ ] CCPA/CPRA (California Consumer Privacy Act / California Privacy Rights Act)
- [ ] US State Laws (VCDPA, CPA, CTDPA, etc.)
- [ ] ADA / Section 508 (US accessibility)
- [ ] WCAG 2.1/2.2 AA (Web Content Accessibility Guidelines)
- [ ] DPA Review (vendor data processing agreement)
- Personal Data Categories Involved: [list data types]
- Assessment Date: [YYYY-MM-DD]
- Regulation Versions Referenced: [e.g., GDPR as amended 2024, CPRA effective 2023]Step 2: GDPR/CCPA Compliance Checklist
Execute checklist items relevant to the assessed subject:
Data Inventory & Mapping
- [ ] All personal data types cataloged (name, email, IP, behavioral data, biometrics, etc.)
- [ ] Data flows documented: collection → processing → storage → sharing → deletion
- [ ] Purpose for each data type explicitly defined and limited
- [ ] Legal basis for processing documented (consent, legitimate interest, contract, legal obligation)
- [ ] Data retention periods defined per data type
Consent Management
- [ ] GDPR: Granular consent obtained per processing purpose (not blanket acceptance)
- [ ] GDPR: Consent as easy to withdraw as to give (one-click unsubscribe)
- [ ] CCPA: Opt-out mechanism present for data sale/sharing ("Do Not Sell or Share My Personal Information")
- [ ] Consent records maintained (who consented, when, to what)
- [ ] Cookie consent implemented for tracking cookies (GDPR only)
Consumer Rights Processing
- [ ] Right of access request mechanism exists (DSR/DSAR portal or process)
- [ ] Right to deletion honored within required timeframe (GDPR: 30 days, CCPA: 45 days)
- [ ] Right to portability supported (GDPR: structured, machine-readable format)
- [ ] Right to correct/rectify inaccurate data supported
- [ ] DSR records maintained for 24+ months (audit trail)
Third-Party & Vendor Management
- [ ] DPAs in place with all vendors processing personal data
- [ ] Vendor list maintained and reviewed annually
- [ ] Standard Contractual Clauses (SCCs) present for international data transfers
- [ ] Sub-processor notifications in DPAs
Security Requirements
- [ ] Reasonable security measures implemented (encryption at rest and in transit)
- [ ] Access controls and principle of least privilege enforced
- [ ] Breach notification procedure documented (GDPR: 72 hours to supervisory authority)
- [ ] Security risk assessment conducted for processing activities
Step 3: Privacy-by-Design Review
Evaluate against Ann Cavoukian's 7 Foundational Principles:
| Principle | Assessment |
|---|---|
| 1. Proactive, not reactive | Is privacy built in from design stage, not added after? |
| 2. Privacy as default | Is the most privacy-protective setting the default? |
| 3. Privacy embedded in design | Is privacy integral to system architecture, not a bolt-on? |
| 4. Full functionality | Does privacy coexist with legitimate business objectives? |
| 5. End-to-end security | Is full lifecycle security ensured from collection to deletion? |
| 6. Visibility & transparency | Are policies and practices open and verifiable? |
| 7. Respect for user privacy | Is user-centricity maintained in all design decisions? |
Record each principle as: Implemented / Partial / Missing / Not Applicable
Step 4: ADA/WCAG Accessibility Audit
Evaluate against WCAG 2.1 AA (minimum standard) / WCAG 2.2 AA (current standard):
POUR Principles
- Perceivable: All non-text content has text alternatives; audio/video has captions/transcripts; content is not restricted to color alone; minimum 4.5:1 contrast ratio for normal text
- Operable: All functionality available via keyboard; no keyboard traps; skip navigation links present; sufficient time to interact; no content that seizures (no flashing >3Hz)
- Understandable: Language of page set in HTML; error messages are descriptive and helpful; consistent navigation across pages; form labels and instructions clear
- Robust: Valid HTML/ARIA; compatible with current assistive technologies; ARIA labels and roles correctly applied
AI Interface Specific (2025+)
- [ ] Chatbot interfaces keyboard accessible and screen reader compatible
- [ ] AI-generated content has proper semantic structure
- [ ] Alt text provided for AI-generated images
- [ ] Voice interfaces have visual alternatives
Severity Classification for Accessibility
- CRITICAL: Completely blocks access for users with disabilities (missing keyboard navigation, no screen reader support)
- HIGH: Significantly impedes usage (poor contrast, missing alt text on key images)
- MEDIUM: Creates friction but workarounds exist (missing skip links, inconsistent labels)
- LOW: Best practice improvement (decorative image has non-empty alt text)
Step 5: DPA Validation Checklist
If reviewing a Data Processing Agreement:
Required DPA Elements (GDPR Article 28)
- [ ] Parties clearly identified (controller name/address, processor name/address)
- [ ] Subject matter, nature, and purpose of processing defined
- [ ] Type of personal data and categories of data subjects specified
- [ ] Duration of processing specified
- [ ] Controller obligations and rights documented
- [ ] Processor obligations:
- [ ] Process only on documented controller instructions
- [ ] Ensure confidentiality of processing personnel
- [ ] Implement appropriate technical/organizational security measures
- [ ] Sub-processor rules: require prior written consent; flow-down obligations
- [ ] Assist controller with DSARs and Article 32-36 obligations
- [ ] Delete or return data at end of service
- [ ] Provide audit cooperation and information
- [ ] International transfer mechanism specified (SCCs, adequacy decision, etc.)
- [ ] Breach notification procedure: processor notifies controller without undue delay
- [ ] DPA update trigger: reviewed annually or upon significant processing changes
DPA Quality Flags
- [ ] No vague processing descriptions ("process data as needed") — specificity required
- [ ] Security measures described with appropriate detail (encryption, access controls, staff training)
- [ ] Sub-processor list available and maintained
- [ ] Transfer Impact Assessment (TIA) conducted for high-risk countries
Step 6: Regulatory Monitoring Guidance
Provide guidance on maintaining ongoing compliance:
Monitoring Sources
- GDPR: European Data Protection Board (EDPB) — <https://edpb.europa.eu/>
- CCPA/CPRA: California Privacy Protection Agency — <https://cppa.ca.gov/>
- US State Laws: IAPP State Privacy Legislation Tracker — <https://iapp.org/resources/article/us-state-privacy-legislation-tracker/>
- WCAG: W3C WAI — <https://www.w3.org/WAI/>
- ADA: US DOJ ADA.gov — <https://www.ada.gov/>
Monitoring Cadence
- Monthly: Review enforcement actions from supervisory authorities
- Quarterly: Check for new or amended state privacy laws
- Annually: Full DPA review with all processors; full accessibility audit
- On Change: Re-assess whenever data processing activities, vendors, or interfaces change materially
Step 7: Produce Compliance Decision
Output one of three decisions:
{
"decision": "PASS | CONDITIONAL | FAIL",
"regulationsAssessed": ["GDPR", "CCPA", "WCAG 2.1 AA", "DPA"],
"assessmentDate": "YYYY-MM-DD",
"findings": [
{
"id": "RC-001",
"regulation": "GDPR",
"severity": "CRITICAL | HIGH | MEDIUM | LOW",
"category": "Consent Management",
"description": "Cookie consent banner missing for analytics tracking cookies",
"status": "FAIL",
"remediation": "Implement cookie consent platform with granular purpose-based opt-in",
"owner": "developer",
"deadline": "Before next deployment"
}
],
"requiredMitigations": [],
"evidencePaths": [".claude/context/reports/compliance/"],
"regulatoryLinks": [
"https://edpb.europa.eu/our-work-tools/documents/public-consultations/2023/guidelines-032023-deceptive-design-patterns_en"
],
"nextReviewDate": "YYYY-MM-DD",
"recommendedNextStep": "Assign RC-001 to developer agent; re-assess after remediation"
}Decision Rules:
PASS: All applicable checklist items verified, no open findingsCONDITIONAL: Minor or medium findings present; allowed to proceed with documented remediation planFAIL: Critical or high findings present; must remediate before deployment
Output Protocol
Report Location
Save compliance reports to: .claude/context/reports/compliance/
Naming: {subject}-compliance-{YYYY-MM-DD}.md
Report Sections (Required)
1. Scope definition (Step 1 output) 2. GDPR/CCPA checklist results (Step 2) 3. Privacy-by-design assessment (Step 3) 4. Accessibility audit results (Step 4, if applicable) 5. DPA validation (Step 5, if applicable) 6. Structured decision JSON (Step 7) 7. Remediation task list with owners and deadlines 8. Regulatory monitoring recommendations
Anti-Patterns
| Anti-Pattern | Why It Fails | Correct Approach |
|---|---|---|
| Checking GDPR only, ignoring CCPA/state laws | Multi-jurisdiction exposure missed | Always assess all applicable jurisdictions |
| Reporting PASS when most items pass | Partial compliance is non-compliance | CONDITIONAL/FAIL for any open finding |
| Generic "implement encryption" remediation | Developer cannot act on vague guidance | Specific: "AES-256 encryption for PII fields in users table" |
| One-time audit treated as ongoing compliance | Regulations change quarterly | Establish continuous monitoring cadence |
| Treating accessibility as a nice-to-have | ADA lawsuits are an active legal risk | WCAG 2.1 AA compliance is non-negotiable for public interfaces |
| DPA with vague processing description | Regulators reject vague DPAs | Specify exact data types, processing purpose, retention periods |
Enforcement Hooks
Input validated against schemas/input.schema.json before execution. Output contract defined in schemas/output.schema.json. Pre-execution hook: hooks/pre-execute.cjs Post-execution hook: hooks/post-execute.cjs (emits observability event)
Memory Protocol
Before starting:
cat .claude/context/memory/learnings.mdCheck for:
- Previous compliance assessments on similar systems
- Known regulatory patterns and documented decisions
- Outstanding compliance blockers in issues.md
After completing:
- New compliance findings → Append to
.claude/context/memory/issues.md - Regulatory decisions → Append to
.claude/context/memory/decisions.md - Successful compliance patterns → Append to
.claude/context/memory/learnings.md
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.
Invoke the regulatory-compliance skill and follow it exactly as presented to you
'use strict';
/**
* regulatory-compliance post-execute hook
* Emits observability event via send-event.cjs per Iron Law III.
* Events are appended to .claude/context/runtime/tool-events.jsonl
*/
const path = require('path');
function postExecute(context = {}) {
try {
const sendEventPath = path.resolve(__dirname, '../../../../tools/observability/send-event.cjs');
let sendEvent;
try {
sendEvent = require(sendEventPath).sendEvent;
} catch (_) {
// Fail-open: observability is non-blocking
process.stderr.write(
'[regulatory-compliance/post-execute] send-event.cjs not found — skipping event\n'
);
return;
}
sendEvent({
tool_name: 'regulatory-compliance',
agent_id: context.agentId || process.env.AGENT_ID || 'unknown',
session_id: context.sessionId || process.env.SESSION_ID || 'unknown',
outcome: context.success !== false ? 'success' : 'failure',
metadata: {
subject: context.subject || 'unknown',
decision: context.decision || 'unknown',
regulationsAssessed: context.regulationsAssessed || [],
findingCount: context.findingCount || 0,
},
});
process.stderr.write('[regulatory-compliance/post-execute] Observability event emitted\n');
} catch (err) {
// Fail-open: post hooks must not block workflow
process.stderr.write(`[regulatory-compliance/post-execute] Error (ignoring): ${err.message}\n`);
}
}
module.exports = { postExecute };
'use strict';
/**
* regulatory-compliance pre-execute hook
* Validates skill inputs against schemas/input.schema.json before execution.
* Follows Iron Law I: enforcement hooks must validate before code runs.
*/
const path = require('path');
const fs = require('fs');
const { safeParseJSON } = require('../../../lib/utils/safe-json.cjs');
function preExecute(input = {}) {
try {
// Load schema for validation
const schemaPath = path.join(__dirname, '../schemas/input.schema.json');
if (!fs.existsSync(schemaPath)) {
process.stderr.write(
'[regulatory-compliance/pre-execute] Schema not found — skipping validation\n'
);
return { continue: true };
}
const _schema = safeParseJSON(fs.readFileSync(schemaPath, 'utf8'));
// Validate required fields
if (!input.subject || typeof input.subject !== 'string' || input.subject.trim() === '') {
process.stderr.write(
'[regulatory-compliance/pre-execute] Input validation FAILED: "subject" is required and must be a non-empty string\n'
);
process.exit(2);
}
// Validate jurisdictions enum if provided
const validJurisdictions = [
'EU',
'California',
'Virginia',
'Colorado',
'Connecticut',
'Texas',
'Oregon',
'Montana',
'Florida',
'Global',
];
if (input.jurisdictions) {
if (!Array.isArray(input.jurisdictions)) {
process.stderr.write(
'[regulatory-compliance/pre-execute] "jurisdictions" must be an array\n'
);
process.exit(2);
}
const invalid = input.jurisdictions.filter(j => !validJurisdictions.includes(j));
if (invalid.length > 0) {
process.stderr.write(
`[regulatory-compliance/pre-execute] Invalid jurisdiction(s): ${invalid.join(', ')}. Valid: ${validJurisdictions.join(', ')}\n`
);
process.exit(2);
}
}
// Validate regulations enum if provided
const validRegulations = ['GDPR', 'CCPA', 'CPRA', 'VCDPA', 'ADA', 'WCAG', 'DPA', 'Section508'];
if (input.regulations) {
if (!Array.isArray(input.regulations)) {
process.stderr.write(
'[regulatory-compliance/pre-execute] "regulations" must be an array\n'
);
process.exit(2);
}
const invalid = input.regulations.filter(r => !validRegulations.includes(r));
if (invalid.length > 0) {
process.stderr.write(
`[regulatory-compliance/pre-execute] Invalid regulation(s): ${invalid.join(', ')}. Valid: ${validRegulations.join(', ')}\n`
);
process.exit(2);
}
}
// Validate assessmentScope if provided
const validScopes = [
'full',
'gdpr-ccpa-only',
'accessibility-only',
'dpa-only',
'privacy-by-design-only',
];
if (input.assessmentScope && !validScopes.includes(input.assessmentScope)) {
process.stderr.write(
`[regulatory-compliance/pre-execute] Invalid assessmentScope: "${input.assessmentScope}". Valid: ${validScopes.join(', ')}\n`
);
process.exit(2);
}
process.stderr.write('[regulatory-compliance/pre-execute] Input validation PASSED\n');
return { continue: true };
} catch (err) {
// Fail-open on unexpected errors (advisory hook behavior)
process.stderr.write(
`[regulatory-compliance/pre-execute] Unexpected error (allowing): ${err.message}\n`
);
return { continue: true };
}
}
module.exports = { preExecute };
Regulatory Compliance Research Requirements (2026)
Verified Tech Stack
- Frameworks: GDPR, CCPA, HIPAA, SOC 2, PCI-DSS
- Automation: Compliance-as-code tools
- Audit: Continuous compliance monitoring
Key Regulations by Domain
Data Privacy
- GDPR: EU data protection, consent management, DPO requirements
- CCPA: California privacy rights, opt-out mechanisms
- LGPD: Brazil data protection law
Healthcare
- HIPAA: PHI protection, BAA requirements, audit controls
- HITECH: EHR meaningful use, breach notification
Security
- SOC 2: Trust services criteria (security, availability, confidentiality)
- ISO 27001: Information security management
Financial
- PCI-DSS: Payment card data security
- SOX: Financial reporting controls
Implementation Patterns
Compliance Checklist
## [Regulation] Compliance Checklist
- [ ] Data classification complete
- [ ] Consent mechanisms implemented
- [ ] Audit logging enabled
- [ ] Retention policies defined
- [ ] Breach notification procedures documentedSource References
Regulatory Compliance Rules
Core Principles
- NEVER report PASS on partial compliance — any open finding is CONDITIONAL or FAIL
- ALWAYS validate against all applicable jurisdictions (GDPR, CCPA, state laws) — not just one
- ALWAYS provide specific remediation steps with owning agent for every finding
- Regulations change frequently — stamp every report with assessment date and regulation version
- Privacy-by-design must be validated at design time, not retrofitted post-deployment
- ADA/WCAG compliance is non-negotiable for public-facing interfaces (active litigation risk)
- DPAs must be specific — vague processing descriptions are regulatory failures
Severity Classification
| Severity | Action |
|---|---|
| CRITICAL | Block deployment; remediate immediately |
| HIGH | Remediate before next release |
| MEDIUM | Remediate within 30 days; document in risk register |
| LOW | Best-practice improvement; track in backlog |
Decision Rules
PASS: All applicable checklist items verified, zero open findingsCONDITIONAL: Minor/medium findings with documented remediation plan; deployment allowedFAIL: Any critical or high finding; deployment blocked until remediated
Anti-Patterns
- Checking only GDPR and ignoring CCPA, state laws, and multi-jurisdiction exposure
- Treating accessibility as optional when interfaces are public-facing
- Accepting vague DPA language ("process data as needed") without requiring specificity
- One-time audit without establishing continuous monitoring cadence
- Claiming compliance without evidence — always produce a written report with dated findings
Integration Points
Agents Using This Skill
- compliance-checker (primary): Regulatory compliance assessments
- security-architect (supporting): Overlapping security + privacy concerns
Related Skills
- compliance-policy-check: Framework policy compliance (internal rules)
- security-architect: Security threat modeling and OWASP analysis
- audit-context-building: Deep code review before compliance assessment
- content-security-scan: Automated scanning for external content security
Report Output Location
Reports: .claude/context/reports/compliance/ Naming: {subject}-compliance-{YYYY-MM-DD}.md
When to Invoke
Skill({ skill: 'regulatory-compliance' });- Before deploying any feature handling personal data
- During architecture review for PII-touching systems
- When validating third-party vendor DPAs
- Before EU/California/multi-jurisdiction product launches
- As part of accessibility audits for public-facing interfaces
{
"$schema": "https://json-schema.org/draft-07/schema#",
"title": "RegulatoryCompliance Input",
"description": "Validated inputs for the regulatory-compliance skill execution",
"type": "object",
"required": ["subject"],
"properties": {
"subject": {
"type": "string",
"description": "The system, feature, DPA, or interface being assessed for compliance"
},
"jurisdictions": {
"type": "array",
"items": {
"type": "string",
"enum": [
"EU",
"California",
"Virginia",
"Colorado",
"Connecticut",
"Texas",
"Oregon",
"Montana",
"Florida",
"Global"
]
},
"description": "List of jurisdictions to assess compliance against",
"default": ["EU", "California"]
},
"regulations": {
"type": "array",
"items": {
"type": "string",
"enum": ["GDPR", "CCPA", "CPRA", "VCDPA", "ADA", "WCAG", "DPA", "Section508"]
},
"description": "Specific regulations to check; if omitted all applicable regulations are assessed"
},
"dataCategories": {
"type": "array",
"items": {
"type": "string"
},
"description": "Categories of personal data involved (e.g., name, email, IP address, behavioral data, biometrics)"
},
"assessmentScope": {
"type": "string",
"enum": [
"full",
"gdpr-ccpa-only",
"accessibility-only",
"dpa-only",
"privacy-by-design-only"
],
"description": "Scope of the compliance assessment",
"default": "full"
},
"dpaPath": {
"type": "string",
"description": "File path to the DPA document to validate (required when assessmentScope includes DPA)"
},
"outputPath": {
"type": "string",
"description": "Directory path to write the compliance report; defaults to .claude/context/reports/compliance/"
}
},
"additionalProperties": false
}
{
"$schema": "https://json-schema.org/draft-07/schema#",
"title": "RegulatoryCompliance Output",
"description": "Structured output from the regulatory-compliance skill assessment",
"type": "object",
"required": ["decision", "regulationsAssessed", "assessmentDate", "findings"],
"properties": {
"decision": {
"type": "string",
"enum": ["PASS", "CONDITIONAL", "FAIL"],
"description": "Overall compliance decision: PASS (all items verified), CONDITIONAL (minor/medium findings with remediation plan), FAIL (critical/high findings requiring remediation before deployment)"
},
"regulationsAssessed": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of regulations assessed (e.g., GDPR, CCPA, WCAG 2.1 AA, DPA)"
},
"assessmentDate": {
"type": "string",
"format": "date",
"description": "Date the assessment was performed (YYYY-MM-DD)"
},
"subject": {
"type": "string",
"description": "The system or artifact that was assessed"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"required": ["id", "regulation", "severity", "category", "description", "status"],
"properties": {
"id": {
"type": "string",
"description": "Finding identifier (e.g., RC-001)"
},
"regulation": {
"type": "string",
"description": "Regulation this finding relates to (e.g., GDPR, CCPA, WCAG)"
},
"severity": {
"type": "string",
"enum": ["CRITICAL", "HIGH", "MEDIUM", "LOW"],
"description": "Severity level of the finding"
},
"category": {
"type": "string",
"description": "Compliance category (e.g., Consent Management, Data Inventory, Accessibility)"
},
"description": {
"type": "string",
"description": "Specific description of the compliance gap found"
},
"status": {
"type": "string",
"enum": ["PASS", "FAIL", "CONDITIONAL", "NOT_APPLICABLE"],
"description": "Status of this specific finding"
},
"remediation": {
"type": "string",
"description": "Specific actionable remediation step"
},
"owner": {
"type": "string",
"description": "Agent or role responsible for remediation (e.g., developer, devops, compliance-checker)"
},
"deadline": {
"type": "string",
"description": "Remediation deadline (e.g., Before next deployment, 30 days, YYYY-MM-DD)"
}
}
},
"description": "Individual compliance findings"
},
"requiredMitigations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Mitigations required before deployment (for CONDITIONAL decisions)"
},
"evidencePaths": {
"type": "array",
"items": {
"type": "string"
},
"description": "File paths to evidence or report files generated"
},
"regulatoryLinks": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"description": "Links to authoritative regulatory sources consulted"
},
"nextReviewDate": {
"type": "string",
"format": "date",
"description": "Recommended date for the next compliance assessment"
},
"recommendedNextStep": {
"type": "string",
"description": "Single recommended next action after this assessment"
}
},
"additionalProperties": false
}
#!/usr/bin/env node
'use strict';
/**
* regulatory-compliance/scripts/main.cjs
* CLI entry point for the regulatory-compliance skill.
*
* Usage:
* node .claude/skills/regulatory-compliance/scripts/main.cjs \
* --subject "User Authentication API" \
* --jurisdictions EU,California \
* --regulations GDPR,CCPA,WCAG \
* --scope full
*/
const path = require('path');
const fs = require('fs');
const args = process.argv.slice(2);
function getArg(name) {
const idx = args.indexOf(`--${name}`);
if (idx === -1) return null;
return args[idx + 1] || null;
}
function showHelp() {
console.log(`
regulatory-compliance — Validate systems against GDPR/CCPA, WCAG/ADA, DPA, and privacy-by-design standards.
Usage:
node main.cjs --subject <text> [options]
Options:
--subject Required. The system or artifact being assessed.
--jurisdictions Comma-separated list: EU,California,Virginia,Colorado,Connecticut,Texas,Oregon,Montana,Florida,Global
--regulations Comma-separated list: GDPR,CCPA,CPRA,VCDPA,ADA,WCAG,DPA,Section508
--scope Assessment scope: full|gdpr-ccpa-only|accessibility-only|dpa-only|privacy-by-design-only (default: full)
--output Output directory for compliance report (default: .claude/context/reports/compliance/)
--help Show this help message
Examples:
node main.cjs --subject "User API" --jurisdictions EU,California --regulations GDPR,CCPA
node main.cjs --subject "Login Page" --scope accessibility-only --regulations WCAG,ADA
node main.cjs --subject "Vendor DPA" --scope dpa-only
`);
}
if (args.includes('--help') || args.length === 0) {
showHelp();
process.exit(0);
}
const subject = getArg('subject');
if (!subject) {
console.error('ERROR: --subject is required');
showHelp();
process.exit(1);
}
const jurisdictions = getArg('jurisdictions')
? getArg('jurisdictions')
.split(',')
.map(j => j.trim())
: ['EU', 'California'];
const regulations = getArg('regulations')
? getArg('regulations')
.split(',')
.map(r => r.trim())
: null;
const scope = getArg('scope') || 'full';
const validScopes = [
'full',
'gdpr-ccpa-only',
'accessibility-only',
'dpa-only',
'privacy-by-design-only',
];
if (!validScopes.includes(scope)) {
console.error(`ERROR: Invalid scope "${scope}". Valid: ${validScopes.join(', ')}`);
process.exit(1);
}
const outputDir = getArg('output') || '.claude/context/reports/compliance';
// Ensure output directory exists
if (!fs.existsSync(outputDir)) {
fs.mkdirSync(outputDir, { recursive: true });
}
const today = new Date().toISOString().split('T')[0];
const outputFile = path.join(
outputDir,
`${subject.toLowerCase().replace(/[^a-z0-9]+/g, '-')}-compliance-${today}.md`
);
console.log(`
regulatory-compliance assessment
================================
Subject: ${subject}
Jurisdictions: ${jurisdictions.join(', ')}
Regulations: ${regulations ? regulations.join(', ') : 'All applicable'}
Scope: ${scope}
Output: ${outputFile}
Date: ${today}
This skill is cognitive/prompt-driven. Invoke via agent context:
Skill({ skill: 'regulatory-compliance' })
The skill will:
1. Assess ${subject} against applicable regulations
2. Generate structured PASS/CONDITIONAL/FAIL decision
3. Write compliance report to: ${outputFile}
Reference: .claude/skills/regulatory-compliance/SKILL.md
`);
// Write a starter template to the output path
const reportContent = `<!-- Agent: compliance-checker | Task: # | Session: ${today} -->
# Compliance Assessment Report: ${subject}
**Assessment Date**: ${today}
**Subject**: ${subject}
**Jurisdictions**: ${jurisdictions.join(', ')}
**Regulations Assessed**: ${regulations ? regulations.join(', ') : 'GDPR, CCPA, WCAG 2.1 AA, DPA'}
**Scope**: ${scope}
> This report template was generated by regulatory-compliance/scripts/main.cjs.
> Complete the assessment by invoking Skill({ skill: 'regulatory-compliance' }) via agent context.
## Scope Definition
[Agent to complete: define assessment scope per SKILL.md Step 1]
## GDPR/CCPA Compliance Checklist
[Agent to complete: run checklist per SKILL.md Step 2]
## Privacy-by-Design Review
[Agent to complete: assess 7 principles per SKILL.md Step 3]
## ADA/WCAG Accessibility Audit
[Agent to complete: audit per SKILL.md Step 4]
## DPA Validation
[Agent to complete: validate per SKILL.md Step 5]
## Compliance Decision
\`\`\`json
{
"decision": "PENDING",
"regulationsAssessed": [],
"assessmentDate": "${today}",
"findings": [],
"recommendedNextStep": "Complete assessment via compliance-checker agent"
}
\`\`\`
`;
fs.writeFileSync(outputFile, reportContent, 'utf8');
console.log(`Starter report template written to: ${outputFile}`);
regulatory-compliance Implementation Template
Goal
- Define compliance requirements and acceptance criteria.
- Map to applicable regulatory frameworks.
TDD
1. Red - Define compliance test cases 2. Green - Implement compliance checks 3. Refactor - Optimize and consolidate
Verification
- lint
- format
- targeted tests
- compliance checklist validation
Regulatory Frameworks
1. GDPR (EU data protection) 2. CCPA (California privacy) 3. HIPAA (healthcare) 4. SOC 2 (security controls) 5. PCI-DSS (payment cards)