# Compliance Management

> When the user wants to manage regulatory compliance, ensure supply chain adherence to standards, or navigate trade regulations. Also use when the user mentions "regulatory compliance," "trade compliance," "customs," "import/export regulations," "certification management," "audit management," "REACH," "RoHS," "conflict minerals," "country of origin," or "trade restrictions." For sustainability com…

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

## Install

```sh
agentstack add skill-kishorkukreja-awesome-supply-chain-compliance-management
```

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

## About

# Compliance Management

You are an expert in supply chain compliance and regulatory management. Your goal is to help organizations navigate complex regulatory requirements, ensure adherence to standards, manage certifications, and mitigate compliance risks across global supply chains.

## Initial Assessment

Before implementing compliance management, understand:

1. **Regulatory Landscape**
   - What industries and products are in scope?
   - Geographic regions of operation?
   - Key regulatory frameworks applicable?
   - Recent compliance issues or violations?

2. **Compliance Maturity**
   - Current compliance processes and systems?
   - Dedicated compliance resources?
   - Supplier compliance requirements?
   - Audit and monitoring frequency?

3. **Risk Exposure**
   - Penalties for non-compliance?
   - Business disruption risks?
   - Reputational impact?
   - Customer requirements and audits?

4. **Supply Chain Complexity**
   - Number of suppliers and countries?
   - Product complexity and BOM depth?
   - Regulatory classification of products?
   - Import/export volumes?

---

## Regulatory Compliance Framework

### Key Regulatory Areas

**1. Trade Compliance**
- Import/export regulations
- Customs classification (HS codes)
- Country of origin determination
- Free Trade Agreements (FTA)
- Trade sanctions and embargoes
- Export controls (EAR, ITAR)

**2. Product Safety & Restrictions**
- REACH (EU chemicals)
- RoHS (Restriction of Hazardous Substances)
- Prop 65 (California)
- TSCA (US chemical substances)
- FDA (food, drugs, medical devices)
- CPSC (Consumer Product Safety)

**3. Environmental Compliance**
- WEEE (Waste Electrical Equipment)
- Packaging regulations
- Carbon reporting requirements
- Waste management regulations
- Environmental permits

**4. Social & Ethical Compliance**
- Conflict minerals (3TG: tin, tantalum, tungsten, gold)
- Forced labor (Uyghur Forced Labor Prevention Act)
- Child labor prohibitions
- Modern Slavery Acts (UK, Australia)
- Fair Labor Standards
- Human rights due diligence

**5. Data & Privacy**
- GDPR (EU data protection)
- CCPA (California privacy)
- Data localization requirements
- Cross-border data transfers

**6. Industry-Specific**
- Pharmaceutical (GMP, GDP)
- Automotive (IATF 16949)
- Aerospace (AS9100)
- Food safety (FSMA, HACCP)
- Medical devices (ISO 13485, FDA QSR)

---

## Compliance Management System

### Regulatory Database & Tracking

```python
import pandas as pd
import numpy as np
from datetime import datetime, timedelta

class ComplianceManager:
    """Comprehensive compliance management system"""

    def __init__(self):
        self.regulations = {}
        self.products = {}
        self.suppliers = {}
        self.certifications = []
        self.compliance_violations = []

    def add_regulation(self, reg_id, regulation_name, region, category,
                      effective_date, review_frequency_days=365):
        """
        Add regulation to track

        category: 'trade', 'product_safety', 'environmental', 'social', 'data'
        """

        self.regulations[reg_id] = {
            'regulation_name': regulation_name,
            'region': region,
            'category': category,
            'effective_date': effective_date,
            'review_frequency_days': review_frequency_days,
            'last_review_date': None,
            'next_review_date': None,
            'compliance_status': 'Pending Review'
        }

    def add_product(self, product_id, product_name, hs_code, materials,
                   target_markets, applicable_regulations):
        """
        Add product and its compliance requirements

        materials: list of material components
        applicable_regulations: list of regulation IDs that apply
        """

        self.products[product_id] = {
            'product_name': product_name,
            'hs_code': hs_code,
            'materials': materials,
            'target_markets': target_markets,
            'applicable_regulations': applicable_regulations,
            'compliance_status': {},
            'certifications_required': [],
            'certifications_obtained': []
        }

        # Initialize compliance status for each regulation
        for reg_id in applicable_regulations:
            self.products[product_id]['compliance_status'][reg_id] = 'Not Assessed'

    def assess_product_compliance(self, product_id):
        """
        Assess product compliance against applicable regulations

        Returns compliance gaps and required actions
        """

        if product_id not in self.products:
            return None

        product = self.products[product_id]
        compliance_assessment = {
            'product_id': product_id,
            'product_name': product['product_name'],
            'overall_status': 'Compliant',
            'regulations_assessed': [],
            'compliance_gaps': [],
            'actions_required': []
        }

        for reg_id in product['applicable_regulations']:
            if reg_id not in self.regulations:
                continue

            regulation = self.regulations[reg_id]

            # Check specific compliance based on regulation type
            gap_found = False

            if regulation['category'] == 'product_safety':
                # Example: Check for restricted substances
                if self._check_restricted_substances(product):
                    gap_found = True
                    compliance_assessment['compliance_gaps'].append({
                        'regulation': regulation['regulation_name'],
                        'issue': 'Product contains restricted substances',
                        'severity': 'Critical'
                    })
                    compliance_assessment['actions_required'].append({
                        'action': 'Reformulate product or obtain exemption',
                        'owner': 'Product Development',
                        'timeline': '90 days'
                    })

            elif regulation['category'] == 'trade':
                # Example: Check for proper classification
                if not product['hs_code']:
                    gap_found = True
                    compliance_assessment['compliance_gaps'].append({
                        'regulation': regulation['regulation_name'],
                        'issue': 'Missing HS code classification',
                        'severity': 'High'
                    })
                    compliance_assessment['actions_required'].append({
                        'action': 'Complete customs classification',
                        'owner': 'Trade Compliance',
                        'timeline': '30 days'
                    })

            # Update status
            status = 'Non-Compliant' if gap_found else 'Compliant'
            product['compliance_status'][reg_id] = status

            compliance_assessment['regulations_assessed'].append({
                'regulation_id': reg_id,
                'regulation_name': regulation['regulation_name'],
                'status': status
            })

            if gap_found:
                compliance_assessment['overall_status'] = 'Non-Compliant'

        return compliance_assessment

    def _check_restricted_substances(self, product):
        """Check if product contains restricted substances"""

        # Simplified check - in reality would check against substance database
        restricted_materials = ['lead', 'cadmium', 'mercury', 'hexavalent_chromium']

        for material in product['materials']:
            if material.lower() in restricted_materials:
                return True

        return False

    def add_supplier(self, supplier_id, supplier_name, country,
                    certifications, audit_date=None):
        """Add supplier and track compliance"""

        self.suppliers[supplier_id] = {
            'supplier_name': supplier_name,
            'country': country,
            'certifications': certifications,
            'last_audit_date': audit_date,
            'next_audit_date': self._calculate_next_audit(audit_date),
            'audit_frequency_days': 365,
            'compliance_score': None,
            'violations': []
        }

    def _calculate_next_audit(self, last_audit_date, frequency_days=365):
        """Calculate next audit date"""
        if last_audit_date:
            if isinstance(last_audit_date, str):
                last_audit_date = datetime.strptime(last_audit_date, '%Y-%m-%d')
            return last_audit_date + timedelta(days=frequency_days)
        return None

    def track_certification(self, entity_id, entity_type, cert_name,
                          cert_number, issue_date, expiry_date, status='Active'):
        """
        Track certifications for products, suppliers, or facilities

        entity_type: 'product', 'supplier', 'facility'
        """

        self.certifications.append({
            'entity_id': entity_id,
            'entity_type': entity_type,
            'certification_name': cert_name,
            'certification_number': cert_number,
            'issue_date': issue_date,
            'expiry_date': expiry_date,
            'status': status,
            'days_to_expiry': self._calculate_days_to_expiry(expiry_date)
        })

    def _calculate_days_to_expiry(self, expiry_date):
        """Calculate days until certification expires"""
        if isinstance(expiry_date, str):
            expiry_date = datetime.strptime(expiry_date, '%Y-%m-%d')

        today = datetime.now()
        days = (expiry_date - today).days

        return days

    def get_expiring_certifications(self, days_threshold=90):
        """Get certifications expiring within threshold"""

        expiring = []

        for cert in self.certifications:
            if cert['days_to_expiry'] = 0:
                urgency = 'Critical' if cert['days_to_expiry']  0 else 0
            },
            'suppliers': {
                'total': total_suppliers
            },
            'certifications': {
                'total': total_certs,
                'active': active_certs,
                'expiring_soon_90_days': expiring_soon,
                'expired': expired
            },
            'violations': {
                'total': len(self.compliance_violations)
            }
        }

# Example usage
compliance_mgr = ComplianceManager()

# Add regulations
compliance_mgr.add_regulation(
    'REG001',
    'RoHS Directive (EU)',
    region='European Union',
    category='product_safety',
    effective_date='2006-07-01'
)

compliance_mgr.add_regulation(
    'REG002',
    'REACH Regulation',
    region='European Union',
    category='product_safety',
    effective_date='2007-06-01'
)

compliance_mgr.add_regulation(
    'REG003',
    'Export Administration Regulations',
    region='United States',
    category='trade',
    effective_date='1979-03-30'
)

# Add products
compliance_mgr.add_product(
    'PROD001',
    'Electronic Widget',
    hs_code='8543.70.9900',
    materials=['plastic', 'copper', 'silicon'],
    target_markets=['EU', 'US', 'CN'],
    applicable_regulations=['REG001', 'REG002']
)

compliance_mgr.add_product(
    'PROD002',
    'Industrial Controller',
    hs_code='8537.10.9000',
    materials=['aluminum', 'steel', 'lead'],  # Contains restricted substance
    target_markets=['EU'],
    applicable_regulations=['REG001']
)

# Assess product compliance
assessment1 = compliance_mgr.assess_product_compliance('PROD001')
print(f"Product: {assessment1['product_name']}")
print(f"Overall Status: {assessment1['overall_status']}")
print(f"Compliance Gaps: {len(assessment1['compliance_gaps'])}")

assessment2 = compliance_mgr.assess_product_compliance('PROD002')
print(f"\nProduct: {assessment2['product_name']}")
print(f"Overall Status: {assessment2['overall_status']}")
if assessment2['compliance_gaps']:
    print("Gaps found:")
    for gap in assessment2['compliance_gaps']:
        print(f"  - {gap['issue']} (Severity: {gap['severity']})")

# Add suppliers
compliance_mgr.add_supplier(
    'SUP001',
    'Acme Manufacturing',
    country='China',
    certifications=['ISO9001', 'ISO14001'],
    audit_date='2025-06-15'
)

# Track certifications
compliance_mgr.track_certification(
    'SUP001',
    'supplier',
    'ISO 9001:2015',
    'ISO-9001-12345',
    issue_date='2022-06-15',
    expiry_date='2025-06-15',
    status='Active'
)

compliance_mgr.track_certification(
    'PROD001',
    'product',
    'CE Mark',
    'CE-2024-0001',
    issue_date='2024-01-10',
    expiry_date='2026-03-15',
    status='Active'
)

compliance_mgr.track_certification(
    'PROD001',
    'product',
    'FCC Certification',
    'FCC-ID-XYZ123',
    issue_date='2024-02-01',
    expiry_date='2026-02-20',
    status='Active'
)

# Get expiring certifications
expiring = compliance_mgr.get_expiring_certifications(days_threshold=180)
print("\n\nExpiring Certifications (next 180 days):")
if not expiring.empty:
    print(expiring[['certification', 'entity_id', 'days_remaining', 'urgency']])
else:
    print("None")

# Dashboard
dashboard = compliance_mgr.generate_compliance_dashboard()
print("\n\nCompliance Dashboard:")
print(f"Products: {dashboard['products']['compliant']}/{dashboard['products']['total']} compliant ({dashboard['products']['compliance_rate']}%)")
print(f"Certifications: {dashboard['certifications']['active']} active, {dashboard['certifications']['expiring_soon_90_days']} expiring soon")
```

---

## Trade Compliance

### HS Code Classification

```python
class TradeComplianceManager:
    """Manage trade compliance including HS codes, duties, and regulations"""

    def __init__(self):
        self.hs_code_database = self._load_hs_codes()
        self.duty_rates = {}
        self.fta_eligibility = {}

    def _load_hs_codes(self):
        """Load HS code database (simplified)"""
        return {
            '8543.70': {'description': 'Other electrical machines with individual functions',
                       'typical_duty_us': 0.028},
            '8537.10': {'description': 'Control panels with voltage ≤1000V',
                       'typical_duty_us': 0.026},
            '8471.30': {'description': 'Portable computers',
                       'typical_duty_us': 0.000},  # Duty-free under ITA
        }

    def classify_product(self, product_description, material_composition,
                        intended_use, suggested_hs_code=None):
        """
        Assist with HS code classification

        Returns classification with confidence level
        """

        # In reality, this would use ML/NLP and extensive HS code database
        # Simplified example

        classification = {
            'product_description': product_description,
            'suggested_hs_code': suggested_hs_code,
            'confidence': 'Medium',
            'classification_rationale': [],
            'requires_expert_review': False
        }

        # Check if suggested code is valid
        if suggested_hs_code:
            if suggested_hs_code[:7] in self.hs_code_database:
                classification['confidence'] = 'High'
                classification['classification_rationale'].append(
                    f"HS code {suggested_hs_code} is valid and matches product type"
                )
            else:
                classification['confidence'] = 'Low'
                classification['requires_expert_review'] = True
                classification['classification_rationale'].append(
                    "Suggested HS code not found in database - expert review needed"
                )

        # Check for complex products
        if len(material_composition) > 5:
            classification['requires_expert_review'] = True
            classification['classification_rationale'].append(
                "Complex multi-material product - binding ruling recommended"
            )

        return classification

    def calculate_landed_cost(self, product_cost,

…

## Source & license

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

- **Author:** [kishorkukreja](https://github.com/kishorkukreja)
- **Source:** [kishorkukreja/awesome-supply-chain](https://github.com/kishorkukreja/awesome-supply-chain)
- **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-kishorkukreja-awesome-supply-chain-compliance-management
- Seller: https://agentstack.voostack.com/s/kishorkukreja
- 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%.
