Skip to content

Latest commit

 

History

History
87 lines (61 loc) · 4.88 KB

PRIVACY.md

File metadata and controls

87 lines (61 loc) · 4.88 KB

Privacy Policy — Finance Guru™

Last reviewed: 2026-07-31

Finance Guru is a private, single-user family-office system. This document describes how data is handled inside this repository and its companion apps.

TL;DR

  • All financial data stays on the owner's machine
  • No telemetry, no remote analytics, no third-party data sharing
  • Nothing personally identifying is committed to the public engine repository; the separate instance repository is local-only and has no remote
  • When data does leave the laptop (SnapTrade, SimpleFIN, Fidelity APIs, ITC Risk Models), it goes directly to the owner's own accounts — no intermediary

What data Finance Guru handles

Category Source Storage Exposure
Portfolio positions SnapTrade (CSV fallback) family_office.db (committed to local-only instance repository) Local only; no remote
Account balances SnapTrade (CSV fallback) family_office.db (committed to local-only instance repository) Local only; no remote
Transaction history SnapTrade family_office.db (committed to local-only instance repository) Local only; no remote
Bank / card spending SimpleFIN family_office.db (committed to local-only instance repository) Local only; no remote
Dividend events SnapTrade activities family_office.db (committed to local-only instance repository) Local only; no remote
User profile (risk tolerance, goals) Interactive onboarding user-profile.yaml under the instance root (committed to local-only instance repository) Local only; no remote
Market data yfinance / Finnhub / ITC In-memory during analysis Per-provider terms

What leaves your machine

  1. Broker and bank reads — SnapTrade and SimpleFIN are queried outbound to pull your own accounts. Both are read-only; nothing is written back to a broker.
  2. Market-data queries — yfinance, Finnhub, and ITC Risk Models APIs see which tickers you query, but not your position sizes.
  3. Claude Code session — the LLM provider (Anthropic) sees conversation content including any data you paste into the session. Treat Claude Code like a privileged assistant — don't paste data you wouldn't email your accountant.

The Google Sheets DataHub was retired 2026-07-31. Portfolio data no longer leaves the machine for Google Drive, and no gdrive MCP server is configured.

What never leaves your machine

  • Raw Fidelity CSVs (gitignored)
  • SSNs, account numbers, and API keys (scrubbed by src/utils/log.py:ScrubPIIProcessor before they reach any log)
  • .env contents
  • merchant-rules.yaml, your household merchant names (the engine ships only national brands)
  • finance-guru-desktop/ runtime state (also gitignored)

Security checklist (before publishing the fork)

# Verify private files are ignored
git status --ignored

# Verify no secrets in the working tree
git diff --cached

# Verify .env is gitignored
git check-ignore .env

# Audit dependencies for known CVEs
uv run pip-audit || true

PII scrubbing — how it works

The structured logger (src/utils/log.py) runs every string through ScrubPIIProcessor before output. Redacted patterns:

  • SSN (NNN-NN-NNNN) → ***-**-****
  • Credit cards (13-19 digit sequences) → ****
  • API tokens (prefixed sk-, pk-, ghp_, ghs_) → first 4 chars + ***
  • Email local parts → ***@domain.tld

If you need to redact something else, extend ScrubPIIProcessor and add a unit test.

Third-party services and their privacy posture

Service Required? What it sees Terms
Anthropic Claude Yes Conversation content https://www.anthropic.com/legal/privacy
yfinance (Yahoo) Default Tickers you query https://policies.yahoo.com/
Finnhub Optional Tickers + API key https://finnhub.io/privacy-policy
ITC Risk Models Optional Tickers + API key Per ITC agreement
SnapTrade Default Brokerage positions, balances, activities (read-only) https://snaptrade.com/privacy
SimpleFIN Default Bank and card balances and transactions (read-only) https://beta-bridge.simplefin.org/
GitHub When pushing Repository contents https://docs.github.com/privacy

Jurisdiction

Finance Guru is not a regulated service; it is a personal tool. No GDPR/CCPA obligations apply because there are no third-party data subjects. If you fork this project and expose it as a service to others, you become the data controller and those obligations apply to you.

Contact

Issues or concerns: open a GitHub issue using the Question template with the privacy label.