Sentinel: Config Reference
Configure the Sentinel Agent with YAML or JSON to customize monitoring, policy enforcement, and reporting behavior.
Configuration File Location
Windows:
C:\ProgramData\TruthVouch\Sentinel\config.yamlmacOS:
/Library/Application Support/TruthVouch/Sentinel/config.yamlLinux:
/etc/truthvouch/sentinel/config.yamlFull Configuration Schema
# Agent identificationagent: # Display name for this agent name: "CORP-LAP-001"
# Organization/tenant ID organization_id: "org-abc123def"
# Device ID (auto-generated if not set) device_id: "dev-xyz789"
# Cloud connectivitycloud: # API endpoint api_endpoint: https://api.truthvouch.io
# Custom endpoint (on-prem) custom_endpoint: https://sentinel-policy.company.local
# API key for authentication api_key: ${SENTINEL_API_KEY}
# TLS certificate verification verify_ssl: true
# Certificate path for custom CA ca_cert_path: /etc/truthvouch/sentinel/ca.crt
# Policy synchronizationpolicy: # Policy sync URL sync_url: https://api.truthvouch.io/api/v1/policy
# Sync interval (minutes) sync_interval: 60
# Retry on sync failure retry_on_failure: true
# Max retries before disabling sync max_retries: 5
# Retry backoff (seconds) retry_backoff_seconds: 30
# AI tool monitoringmonitoring: # Enable monitoring enabled: true
# Tools to monitor tools: - name: ChatGPT enabled: true executables: - "chrome.exe" - "firefox.exe" - "Safari" domains: - "openai.com" - "chat.openai.com"
- name: GitHub Copilot enabled: true executables: - "Code.exe" - "code" - "VSCode" domains: - "github.com"
- name: Google Gemini enabled: true executables: - "chrome.exe" - "chromium" domains: - "gemini.google.com"
- name: Anthropic Claude enabled: true executables: - "chrome.exe" - "firefox.exe" domains: - "claude.ai"
# Monitor clipboard access clipboard_monitoring: true
# Monitor network traffic network_monitoring: true
# Process monitoring mode process_mode: "automatic" # automatic, disabled
# Policy enforcementenforcement: # Enable enforcement enabled: true
# Action on policy violation action: "block" # block, warn, log
# Show notification to user notify_user: true
# Log all activity log_all: true
# Log only violations log_violations_only: false
# DLP (Data Loss Prevention) rulesdlp: # PII detection pii: enabled: true
patterns: ssn: true # 123-45-6789 credit_card: true # 1234-5678-9012-3456 phone: true # (555) 123-4567 passport: true # AB123456 health_insurance: true
# Credential/secret detection secrets: enabled: true
patterns: aws_key: true # AKIA... github_token: true # ghp_... api_key: true # sk-... password: true # password=... patterns
# Proprietary content proprietary: enabled: true
keywords: - "confidential" - "proprietary" - "restricted" - "trade secret"
# Reportingreporting: # Enable telemetry reporting enabled: true
# Report URL report_url: https://api.truthvouch.io/api/v1/telemetry
# Report interval (minutes) interval: 60
# Report on shutdown report_on_shutdown: true
# Encrypt reports encryption_enabled: true
# Report compression compression: true
# Logginglogging: # Log level level: INFO # DEBUG, INFO, WARN, ERROR
# Log file location file_path: /var/log/truthvouch/sentinel.log
# Max log file size (MB) max_size_mb: 50
# Retain how many rotated logs max_backups: 10
# Log format format: json # json, text
# Include PII in logs include_pii: false
# Log to console console: false
# Local databasedatabase: # SQLite database path path: /var/lib/truthvouch/sentinel/sentinel.db
# Max database size (MB) max_size_mb: 100
# Log retention (days) retention_days: 30
# Encryption encrypted: true
# Advanced settingsadvanced: # Excluded users (system accounts) excluded_users: - "SYSTEM" - "LOCAL SERVICE" - "NETWORK SERVICE" - "root"
# Excluded processes excluded_processes: - "svchost.exe" - "explorer.exe"
# Timeout for policy checks (milliseconds) policy_check_timeout_ms: 100
# Offline grace period (days) offline_grace_period_days: 7
# Auto-update enabled auto_update: true
# Update check interval (hours) update_check_interval: 24
# Telemetry opt-out telemetry_opt_out: false
# Windows-specificwindows: # Run as service run_as_service: true
# Service name service_name: "TruthVouchSentinel"
# Windows Firewall exception add_firewall_exception: true
# SYSTEM account for service run_as_system: true
# macOS-specificmacos: # Run as daemon run_as_daemon: true
# Daemon label daemon_label: "io.truthvouch.sentinel"
# Require accessibility permissions require_accessibility: true
# Linux-specificlinux: # Run as systemd service run_as_service: true
# Service name service_name: "truthvouch-sentinel"
# Run as root (for network monitoring) require_root: trueCommon Configurations
Development
monitoring: enabled: true process_mode: "manual"
enforcement: action: "warn" # Warning, not blocking
reporting: enabled: false # No cloud reporting
logging: level: DEBUGProduction
monitoring: enabled: true clipboard_monitoring: true network_monitoring: true
enforcement: enabled: true action: "block" # Block violations notify_user: true
reporting: enabled: true interval: 60
logging: level: WARN include_pii: falseHigh Security
enforcement: action: "block" log_all: true
dlp: pii: enabled: true patterns: # Enable all patterns ssn: true credit_card: true email: true phone: true
reporting: encryption_enabled: true compression: true
logging: include_pii: false retention_days: 90Environment Variables
Reference environment variables in config:
cloud: api_key: ${SENTINEL_API_KEY} custom_endpoint: ${SENTINEL_ENDPOINT}Set via:
Windows (PowerShell):
$env:SENTINEL_API_KEY = "sk-..."macOS/Linux:
export SENTINEL_API_KEY="sk-..."Tool Configuration
Add Custom Tool
monitoring: tools: - name: "Custom LLM App" enabled: true executables: - "custom-app.exe" - "custom-app" domains: - "api.customllm.com" ports: - 8080 - 5000Disable Tool Monitoring
monitoring: tools: - name: ChatGPT enabled: falseDLP Pattern Examples
PII Patterns
dlp: pii: patterns: ssn: true # 123-45-6789 credit_card: true # 1234-5678-9012-3456 phone: true # (555) 123-4567, +1-555-123-4567 passport: true # 6-9 alphanumeric health_insurance: true # Various formats driver_license: true # State-specificSecret Patterns
dlp: secrets: patterns: aws_key: true # AKIA... github_token: true # ghp_..., ghu_... api_key: true # api_key=..., apikey:... private_key: true # -----BEGIN PRIVATE KEY----- password: true # password=..., pass=...Validation
Test configuration:
# Windows& "C:\Program Files\TruthVouch\Sentinel\sentinel.exe" --validate-config
# macOS/Linux/usr/local/bin/sentinel --validate-configReload Configuration
Reload without restart:
# Windows (PowerShell)Restart-Service TruthVouchSentinel
# macOSlaunchctl stop io.truthvouch.sentinellaunchctl start io.truthvouch.sentinel
# Linuxsudo systemctl restart truthvouch-sentinelConfiguration History
View config changes:
# WindowsGet-EventLog -LogName "TruthVouch Sentinel" -Newest 20
# Linuxtail -20 /var/log/truthvouch/sentinel.logSee Policy Synchronization for policy management.