Skip to main content
macOS support is implemented and functional but needs more real-world testing. We welcome feedback from beta testers!

Architecture

OISP Sensor on macOS uses a Network Extension to transparently intercept HTTPS traffic to AI providers:
┌─────────────────────────────────────────────────────────────┐
│                  OISP Menu Bar App (SwiftUI)                 │
│  Status display, settings, extension control                │
└────────────────────────┬────────────────────────────────────┘
                         │ Unix Domain Socket
┌────────────────────────▼────────────────────────────────────┐
│                   oisp-sensor (Rust)                         │
│  Receives events, decodes HTTP, emits to dashboard/exports  │
└────────────────────────▲────────────────────────────────────┘
                         │ Unix Domain Socket
┌────────────────────────┴────────────────────────────────────┐
│               OISP Network Extension                         │
│  NETransparentProxyProvider + TLS MITM + Event Emission     │
└─────────────────────────────────────────────────────────────┘

What’s Implemented

ComponentStatusDescription
Network Extension✅ DoneNETransparentProxyProvider for traffic interception
TLS Interceptor✅ DoneMITM proxy with dynamic certificate generation
Certificate Authority✅ DoneLocal CA for signing intercepted connections
AI Endpoint Filter✅ DoneFilters traffic to AI provider domains only
Process Attribution✅ DoneIdentifies which app made each request via audit token
Menu Bar App✅ DoneSwiftUI app for status and control
Unix Socket Bridge✅ DoneIPC between extension and oisp-sensor

Supported AI Providers

Traffic to these endpoints is automatically intercepted:
ProviderEndpoints
OpenAIapi.openai.com
Anthropicapi.anthropic.com
Google AIgenerativelanguage.googleapis.com, aiplatform.googleapis.com
Azure OpenAI*.openai.azure.com
AWS Bedrockbedrock-runtime.*.amazonaws.com
Cohereapi.cohere.ai, api.cohere.com
Mistralapi.mistral.ai
Groqapi.groq.com
Together AIapi.together.xyz, api.together.ai
Fireworksapi.fireworks.ai
Perplexityapi.perplexity.ai
OpenRouteropenrouter.ai, api.openrouter.ai
Replicateapi.replicate.com
Hugging Faceapi-inference.huggingface.co
DeepSeekapi.deepseek.com
xAI (Grok)api.x.ai
Local (Ollama)localhost, 127.0.0.1

Requirements

  • macOS 13.0 (Ventura) or later
  • Apple Silicon (M1/M2/M3/M4) or Intel Mac
  • Admin access for extension approval
  • Trust the OISP CA certificate

How It Works

  1. Network Extension intercepts outbound HTTPS connections to AI providers
  2. TLS Interceptor performs MITM using a locally-generated CA
  3. Plaintext HTTP is extracted and sent to oisp-sensor via Unix socket
  4. oisp-sensor decodes AI-specific fields and exports events

What Needs Testing

  • Long-running stability
  • Edge cases with different AI SDKs
  • Certificate trust flow UX
  • Memory usage under load
  • Different macOS versions

Next Steps