A third party ATProto appview
at main 3.3 kB view raw
1# ============================================================================ 2# INSTANCE MODERATION CONFIGURATION 3# ============================================================================ 4# Configure legal compliance and instance-level content moderation 5# These settings control built-in labeling (separate from third-party labelers) 6 7# ============================================================================ 8# BASIC CONFIGURATION 9# ============================================================================ 10 11# Enable/disable instance moderation entirely 12# Set to 'false' to disable all instance-level moderation 13ENABLE_INSTANCE_MODERATION=true 14 15# Your App View's DID (used as the label source) 16# This identifies your instance as the labeler 17APPVIEW_DID=did:web:appview.yourdomain.com 18 19# ============================================================================ 20# LEGAL JURISDICTION 21# ============================================================================ 22 23# Instance legal jurisdiction (affects which laws apply) 24# Examples: US, EU, UK, DE (Germany), FR (France), AU (Australia), etc. 25INSTANCE_JURISDICTION=US 26 27# Legal contact email for DMCA and takedown requests 28# This email will be used for compliance notices 29LEGAL_CONTACT_EMAIL=legal@yourdomain.com 30 31# ============================================================================ 32# AUTO-MODERATION SETTINGS 33# ============================================================================ 34 35# Automatic hide threshold based on user reports 36# Content reaching this many reports will be auto-hidden pending review 37# Lower = stricter (EU typically 3-5, US typically 10+) 38AUTO_HIDE_THRESHOLD=10 39 40# ============================================================================ 41# JURISDICTION-SPECIFIC EXAMPLES 42# ============================================================================ 43 44# Example: US-based instance (DMCA focus) 45# INSTANCE_JURISDICTION=US 46# LEGAL_CONTACT_EMAIL=dmca@yourdomain.com 47# AUTO_HIDE_THRESHOLD=10 48 49# Example: EU-based instance (GDPR + DSA compliance) 50# INSTANCE_JURISDICTION=EU 51# LEGAL_CONTACT_EMAIL=dsa-contact@yourdomain.eu 52# AUTO_HIDE_THRESHOLD=5 53 54# Example: Germany (NetzDG compliance - 24 hour response requirement) 55# INSTANCE_JURISDICTION=DE 56# LEGAL_CONTACT_EMAIL=netzdg@yourdomain.de 57# AUTO_HIDE_THRESHOLD=3 58 59# Example: Personal/Private instance (minimal moderation) 60# INSTANCE_JURISDICTION=PRIVATE 61# LEGAL_CONTACT_EMAIL=admin@personal.instance 62# AUTO_HIDE_THRESHOLD=999 63 64# ============================================================================ 65# CUSTOM LABEL CONFIGURATION 66# ============================================================================ 67# To add custom labels for your jurisdiction: 68# 1. Edit server/config/instance-moderation.ts 69# 2. Copy a template from instance-moderation.example.ts 70# 3. Set enabled: true for labels you need 71# 4. Restart the server 72 73# ============================================================================ 74# PUBLIC TRANSPARENCY 75# ============================================================================ 76# Your instance moderation policy is publicly accessible at: 77# GET /api/instance/policy 78# 79# This shows: 80# - Jurisdiction 81# - Legal contact 82# - Enabled labels and their severity 83# - Auto-moderation settings 84# 85# Moderation statistics available at: 86# GET /api/instance/stats