Telemetry & Privacy

Last Updated: June 2026

1. About This Telemetry Statement

Jolli Memory collects anonymous, opt-out, content-free usage telemetry. We use it to understand whether the memory pipeline actually works in the wild and how the tools are adopted — nothing more.

This page is the plain-language version of our policy. The exact, complete list is generated directly from the event registry the code uses, so this page can never claim less than the software does. If you ever want to see the raw events queued on your own machine before they're sent, run jolli telemetry inspect.

In one line: we collect anonymous counts and yes/no facts about which features get used — never your code, files, prompts, or any text you write.

2. What We Collect

  • A random per-machine identifier (installId) and which surface you're using (cli, vscode, or intellij) plus its version.
  • Coarse environment facts: operating system, CPU architecture, runtime version, and which Jolli environment your client points at (local / dev / preview / prod).
  • The events listed below — each carrying only a small bag of bucketed or boolean properties. For example, a result count is sent as "1-5", never as the actual number.

3. What We Never Collect

  • No source code, file contents, or file paths.
  • No repository or branch names, commit messages, search queries, or AI prompts.
  • Counts are bucketed ("0", "1-5", "6-20", "21-100", "100+").
  • Any identifier that must persist is salted and hashed, never sent in the clear.
  • Text lengths (e.g. a query) are bucketed as short / medium / long — the text itself is never sent.
  • As a final safety net, a client-side scrubber drops anything that looks like a path, URL, email address, or secret before an event leaves your machine, and it bounds how deeply nested a property can be.

4. What Identifies You

  • installId — a random UUID minted once per machine. It is anonymous: it is not derived from your name, email, hostname, or any account.
  • accountId never sent by your client. If you sign in, our backend attributes events to your account from your API key at the moment they're received; until you sign in, every event is fully anonymous.

5. Where the Data Goes

Events are first buffered on your own disk, then sent in small batches over HTTPS to Jolli's telemetry endpoint (/api/telemetry/events). The client will only ever transmit to an official Jolli origin — it refuses to post telemetry (or your API key) anywhere else.

6. How to Turn It Off

Telemetry is on by default and is silenced the moment any of the following is true:

  • The DO_NOT_TRACK environment variable is set to anything other than 0.
  • You run jolli telemetry off (re-enable any time with jolli telemetry on).
  • (VS Code) your editor's telemetry is disabled via telemetry.telemetryLevel.
  • (IntelliJ) you've declined the IDE's data-sharing consent.

Your choice and your installId live in the machine-global file ~/.jolli/jollimemory/config.json, so a single decision applies across all three surfaces (CLI, VS Code, and IntelliJ).

7. The Complete List of Events

These are every event we send, exactly as the code defines them.

Install & setup

EventWhen it fires
app_installedFirst run after install; installId minted (once per machine).
surface_enabledA surface was enabled in a repo.
surface_disabledA surface was disabled / opted out.
settings_openedThe settings UI was opened (VS Code / IntelliJ).
ai_provider_selectedYou chose Jolli vs. Anthropic for summarization.
memory_bank_migratedA Migrate-to-Memory-Bank run completed.

Sign-in

EventWhen it fires
signin_startedYou initiated OAuth sign-in.
signin_completedAn API key was minted (the conversion event).
signed_outYou logged out.

Using your memory

EventWhen it fires
command_invokedAny CLI command ran (auto-emitted; sends the command name only).
recall_performedA recall was run.
search_performedA search was run.
memory_pushedMemories were pushed/shared.
export_performedAn export was run.
recall_prompt_copiedA recall prompt was copied to the clipboard.

Capturing & summarizing

EventWhen it fires
ai_source_detectedA new AI-tool transcript source was detected.
ingest_completedAn ingest run finished.
queue_drainedThe background worker finished a drain.
sync_completedA Memory Bank sync round finished.

Tool window (VS Code / IntelliJ)

EventWhen it fires
toolwindow_openedThe memory tool window was opened.
view_switchedThe tool-window view was switched (current / bank / knowledge).
memory_committedYou committed a memory via the Commit button.
memory_expandedA committed memory's details were expanded.
memory_item_openedAn item inside a memory was opened (conversation / file / context).
session_resumedA conversation session was resumed in a terminal.
memory_pinnedAn item was pinned.
memory_unpinnedAn item was unpinned.

Reliability

EventWhen it fires
error_occurredA structured error code was raised (the code only — no message text).
key_rejectedThe server rejected an API key (HTTP 401/403).
reauth_completedRe-authentication after a rejected key finished.

Last updated: June 2026. Questions or concerns? Email support@jolli.ai.