Privacy policy

Jarvis — Google and YouTube integration. Last updated 27 August 2026.

Scope of this policy

Jarvis is a personal, single-user assistant that runs on my own Mac. This policy covers one thing: its Google and YouTube integration, and the Google user data that integration handles.

I am the only user. There is no service, no server, no account system, and no other person whose data could be involved. Where this policy says "my", it means David Nealon, the author and sole user.

What Google user data is accessed

With my authorisation, Jarvis reads metadata about my own YouTube channel through the YouTube Data API v3:

No video files, audio, thumbnails, captions, transcripts, comments or analytics are read or downloaded. There is no code path capable of requesting them.

Scopes requested

Exactly one, and it is read-only:

https://www.googleapis.com/auth/youtube.readonly

Jarvis cannot upload, modify, rate, comment on or delete anything on YouTube. The access it holds does not permit those operations.

Why this data is used

So that Jarvis can recognise which of my published videos correspond to which of my own music recordings held on my machine. At present the metadata is recorded and can be listed back; the step that links a video to a recording is not yet enabled, so nothing is currently derived or inferred from it.

Where it is stored

On my Mac, in an append-only local log, as plaintext JSON files readable only by my own macOS user account. The application does not itself encrypt these files. The disk they sit on is protected by macOS FileVault full-disk encryption.

A separate encrypted local database holds an index of these records — identifiers, timestamps and a content hash — but not their contents.

Retention and deletion

Records are appended to a local evidence log and are not automatically deleted or expired. Removing them means deleting that log, which I can do at any time as its sole owner.

Does this data leave my machine?

Not to anyone else. No third party receives it, and none of it is sent to any hosted or external model or service. Requests made to Google carry only the credentials and query parameters needed to read my own channel; the component that talks to Google has no access to any other data held by Jarvis.

It leaves my Mac in exactly one circumstance: when I manually run Jarvis's backup command, the whole local log — this metadata included — is copied into an encrypted backup repository on storage I own. That backup is not automatic, is not scheduled, and is not shared with anyone.

Sharing with third parties

None. Google is the source of this data. No other party receives it, and it is never sold, transferred, published, or used for advertising.

OAuth credentials and tokens

Two items are stored in my Mac's login Keychain: the OAuth client downloaded from the Google Cloud console, and the refresh token my consent produced. Both are marked device-only and never synchronise to iCloud or any other device.

Access tokens are not stored. One is created from the refresh token at the start of each run and is discarded when the process exits. No credential value is written to any log, printed, or included in any file this project produces.

Revoking access

Access can be revoked at any time at myaccount.google.com/permissions, which immediately invalidates the stored token and ends all access. The local Keychain items can be removed separately using the macOS security command.

Revoking access does not delete metadata already recorded locally; that is covered by Retention and deletion above.

Google API Services User Data Policy

Jarvis's use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.

Changes to this policy

If the integration's behaviour changes, this policy will be updated to match before the change is used, and the date at the top will be revised.

Contact

davidnealon73@gmail.com