Skip to content

What the AI sees ​

Nothing leaves this Mac unless you say so. I'm strict about that.

Lily's AI features run a command-line tool on your Mac (Claude Code, Codex or OpenCode). That tool is local, but the model is not: it sends the prompt to its provider (Anthropic, OpenAI, or whatever OpenCode is set up for) through your own account. Lily has no AI server and sees nothing.

So whatever goes into a prompt leaves your Mac. This page lists what that is.

Never sent ​

  • Passwords, keys and secrets.
  • Host names and ports.
  • Rows, for every feature not listed under "Rows" below.

Schema only ​

These features send table and column names, types, keys and the business context from Understand, and no rows:

  • Understand this database, query ideas and semantic search
  • Change with AI, Document with AI
  • the Health Check architecture review
  • generating fake data (column names and types only)
  • SQL to MongoDB conversion

SQL as you wrote it ​

Explain this query, Optimize, Fix with AI and Generate from prompt send your SQL as it is, values included. Fix also sends the database's error message.

SQL with values removed ​

Investigate, Speed up this query, Suggest indexes and Trace's Explain why it's slow replace every value in the query and its plan with ? before sending.

Rows ​

FeatureRows sentMasked
Ask your data (SQL)up to 40yes, after a scan
Summarize resultup to 50yes, after a scan
Ask on MongoDBup to 20 documentsno
Ask on DynamoDBup to 20 itemsno
MongoDB to SQL conversionup to 3 sample values per columnno

Sensitive columns ​

When you open Understand on a schema, Lily also asks the AI to classify its columns by name and type:

  • High: identifiers, government IDs (CPF, CNPJ, SSN, passport…), financial data (cards, IBAN, PIX keys, salary), credentials, health, biometrics and special categories.
  • Medium: contact details (email, phone) and location (address, postal code, coordinates).
  • Low: date of birth, age, gender, nationality.

From then on, Ask and Summarize on that connection replace high and medium values with ‹redacted› before they reach the AI. Low ones pass through. The entity details in Understand show how many sensitive columns a table has.

Things to know:

  • The mask only exists after the scan. Before you open Understand on a schema, Ask and Summarize send rows as they are.
  • The scan sees the first 16 columns of each table.
  • Columns are matched by name, so a renamed or computed column in your query (email AS contact) is not masked.
  • MongoDB and DynamoDB answers are not masked.

What runs on its own ​

Some features call the AI as soon as you open them, without another click: Understand (and its sensitive-data scan), the Health Check review, Speed up this query, fake data, and the title of a query you are saving. Everything else waits for you.

Turning it off ​

Turn off every provider in Settings › AI and Lily sends nothing to any AI. The rest of the app works the same.

For what Lily itself sends (nothing, unless you turn it on), see Privacy.

Lily DB is free for personal and commercial use.