Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

DSGVO Guard

thor040175thor04017523 downloads

Find personal data such as IBANs, tax IDs and API keys in your vault, redact it with a single undo, and block risky Git commits. Works offline.

Add to Obsidian
DSGVO Guard screenshot
DSGVO Guard screenshot
DSGVO Guard screenshot
  • Overview
  • Scorecard
  • Updates2

Finds personal data in your Obsidian vault before it ends up where it should not: IBANs, tax IDs, credit cards, API keys and more. Built with German and EU data protection (GDPR, "DSGVO") in mind. Everything runs locally and offline; nothing is sent anywhere.

Prototype (0.1.1). Pattern matching, not legal advice. Deutsche Anleitung: ANLEITUNG.md.

What it detects

Type Check Confidence
API keys (OpenAI, GitHub, AWS, Slack, Google) prefix and length high
IBAN mod 97, German IBANs must have 22 characters high
Credit card Luhn, prefix 2-6 high
German tax ID (Steuer-ID) ISO 7064 mod 11,10 medium
German pension insurance number format, plausible birth date medium
German ID card number (since 2010) ICAO 9303 check digit, letter/digit mix medium
German tax number (written with slashes) format 2/3/5, 3/3/5 or 3/4/4, no check digit medium
Address (street, house number, optional postcode and city) pattern only low
E-mail, German phone number pattern only low

By default findings of medium confidence and higher are shown. Names are never detected.

Special categories (GDPR Art. 9), optional

Off by default. A keyword search for health, religion, political opinion, trade union, ethnic origin, sex life and genetic/biometric data. These are hints only: a keyword does not tell whether a person is affected, so expect false alarms. Hints are never redacted, never block a commit (the hook only prints them) and appear at most once per category and line. The keyword list is ART9_CATEGORIES in main.js.

How it works

  • Status bar: "DSGVO: n note(s) with findings" or "clean", refreshed shortly after each edit. Click it to open the list of findings.
  • Findings list: per note the line, type and confidence, with a masked preview (for example …3000 for an IBAN). Click a finding to jump to it.
  • Redact: replaces findings in the current note with [GESCHWÄRZT:iban] and similar. One undo (Ctrl/Cmd+Z) restores everything, as long as the editor is open. Redacting is permanent afterwards, so keep a backup or use Git.
  • Git hook: checks the staged notes on commit and aborts when real findings are in them. Needs a Git repository in the vault root and Node.js on the machine. Skip once with git commit --no-verify.

Commands

  • Check the whole vault for personal data (also via the ribbon icon)
  • Check the current note
  • Redact findings in the current note
  • Install Git hook / Remove Git hook

Exceptions

A line containing dsgvo-ignore is skipped, for example Hotline: 0800 1234567 <!-- dsgvo-ignore -->. This applies to the status bar, redaction and the Git hook alike. Folders can be excluded in the settings (one path prefix per line, for example Contacts/).

Settings

  • Minimum confidence (high, medium, low)
  • Show special categories (Art. 9) as hints
  • Ignored paths

What the plugin accesses

  • It reads the notes of your vault to scan them. Nothing leaves your computer; there are no network requests and no telemetry.
  • "Install Git hook" writes .git/hooks/pre-commit in your vault folder. The hook runs node on the plugin's own main.js. "Remove Git hook" deletes it again; an existing hook of another tool is never overwritten.
  • Because it uses Node.js APIs for the Git hook, the plugin is desktop only.

Limits

  • Obsidian does not let plugins hook into Obsidian Sync or Publish, so there is no way to stop an upload there. Only the Git hook can block, and only in a Git vault. Without Git the status bar is a warning only.
  • Not detected: names, 13-digit national tax numbers, ID cards issued before 2010.
  • Pattern matching produces false positives, mostly at low confidence and for the Art. 9 keywords.

Installation (manual)

Copy main.js and manifest.json into <vault>/.obsidian/plugins/dsgvo-guard/ and enable the plugin under Settings, Community plugins. Try it in a test vault first.

Development

npm test runs the tests (Node.js required). The plugin is a single main.js without a build step.

Support

DSGVO Guard is free and open source. If it keeps personal data out of places it does not belong, a coffee helps me keep improving it: Buy me a coffee. Built together with an AI assistant.

License

MIT

HealthExcellent
ReviewSatisfactory
About
DSGVO Guard finds personal data in your vault before it ends up where it should not. It checks your notes for IBANs, credit cards, German tax IDs, pension insurance and ID card numbers, tax numbers, API keys and tokens, and optionally addresses, e-mail addresses and phone numbers, using format rules and check digits instead of guesses. A status bar counter shows how many notes contain findings. Click it for a list with masked previews that jumps to each line. Redact findings in a note with one command and undo it in a single step. Mark a line with dsgvo-ignore to approve data on purpose. On desktop, an optional Git pre-commit hook blocks commits that contain real findings. Optional keyword hints point at GDPR Art. 9 special categories such as health data; they never block anything. Everything runs locally: no network requests, no telemetry. Pattern matching, not legal advice.
DataStatus barSearch
Details
Current version
0.1.1
Last updated
2 weeks ago
Created
2 weeks ago
Updates
2 releases
Downloads
23
Compatible with
Obsidian 1.7.2+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Sponsor
Buy Me a Coffee
Author
thor040175thor040175thor040175
GitHubthor040175
  1. Community
  2. Plugins
  3. Data
  4. DSGVO Guard

Related plugins

Smart Connections

Find related notes and excerpts while writing. Your AI link building copilot displays relevant content in graph + list view. A local embedding model powers semantic search. Zero setup. No API key.

Quick Switcher++

Enhanced Quick Switcher, search open panels, and symbols.

Tag Wrangler

Rename, merge, toggle, and search tags from the tag pane.

Omnisearch

Intelligent search for your notes, PDFs, and OCR for images.

Meld Encrypt

Hide secrets in your notes.

Tracker

Track occurrences and numbers in your notes.

CSV Table

Render CSV data as a table within your notes.

Quiet Outline

Make outline quiet and more powerful, including no-auto-expand, rendering heading as Markdown, and search support.

Charted Roots

Family tree visualization with GEDCOM/Gramps import and Canvas/PDF/Markdown export. Charts, maps, timelines, citations, fictional calendars. For genealogists, worldbuilders, and TTRPG campaigns.

WebNovel Assistant

An all-in-one writing studio for novel and story writers. Features accurate word count tracking, daily goals, story timeline board, plot foreshadowing manager, chapter corkboard, and character lore gr