Skip to content

Vibecoder79/jarvis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

121 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jarvis — Security Policy

Version: 1.11.0 | Stand: 2026-04-21

Scope

Privacy-First Voice Assistant auf MacBook Air M2. Verarbeitet Sprache, steuert Mac, hat Zugriff auf lokale Dateien, Shell, AppleScript, und (je nach Tier) Cloud-APIs.

API-Key-Policy

  • Alle API Keys ausschliesslich in .env (nie in Git)
  • .env in .gitignore (verifiziert)
  • Kein Key im Chat, Commit oder Log
  • Bei Verdacht auf Leak: sofort rotieren
  • Keys pro Scope minimal (Principle of Least Privilege)

Privacy-Tiers

Tier Scope Kontrolle
0 100% lokal — Ollama, faster-whisper, Kokoro, SQLite Default, keine externe Uebertragung
1 Selektiv Claude API mit Redaktion data_filter.py Pflicht
2 Full Cloud — Claude + Fish Audio + Composio data_filter.py Pflicht + Tier-Switching via Voice

backend/privacy/data_filter.py redigiert vor jedem Cloud-Call:

  • Emails
  • Tokens (Bearer, API-Keys)
  • File-Pfade mit PII
  • Telefonnummern
  • IBANs / Kreditkarten

Threat Model (Initial)

Threat Vektor Mitigation
Prompt Injection via Voice Unbefugte Nutzer sprechen mit Mac Wake-Word + ggf. Voice-Identification (spaeter)
API-Key-Leak Key in Log/Commit .gitignore + Log-Redaktion + Secret-Scan im CI
Shell-Command-Injection Sprachbefehl triggert os.system Allowlist in backend/tools/
PII im Cloud-Transit Claude/Fish Audio sieht Emails data_filter.py vor jedem Cloud-Call
Man-in-the-Middle (Telegram) Telegram-Nachrichten abgefangen Nur HTTPS, Bot-Token in .env
Ollama-Modell-Substitution Manipulierter Modell-Download Modell-Hash in ADR festhalten
OpenClaw VPS kompromittiert HTTP-Bridge als Einfallstor mTLS / API-Token, Allowlist-IPs

Ausfuehrliches Threat-Modeling via /security-architect vor Features mit Privacy-Impact.

Incident Response

  1. Feature sofort deaktivieren (.env Flag)
  2. Linear Issue anlegen (Label: incident, privacy oder security)
  3. /breakfix Workflow (sobald Skill vorhanden)
  4. SecondBrain: ADR "Incident YYYY-MM-DD" anlegen
  5. CLAUDE.md-Regel ergaenzen um Wiederauftreten zu verhindern

Compliance

DSGVO/GDPR: Jarvis verarbeitet personenbezogene Daten lokal. Cloud-Nutzung nur nach expliziter Tier-Auswahl. Loeschkonzept: backend/memory/store.py erlaubt SQL-Delete auf Session-Ebene.

Details via /dpo Skill bei Features mit personenbezogenen Daten.

About

Privacy-First Voice Assistant for macOS M2 - Wake-Word, Fish Audio Jarvis Voice, Tier-based Local/Cloud Architecture

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors