What PrismaLens reads and never does
PrismaLens puts a coding agent next to your code. This page says what that agent can reach, what leaves your machine, and where PrismaLens keeps its data.
The short version
Section titled “The short version”- The agent works in a git worktree at the service’s last commit, never in your checkout. Uncommitted changes aren’t read.
- The agent runs as your user, with no sandbox. Your permission level decides what it may do without asking.
- PrismaLens never calls a model. Your agent sends what it reads to its model provider.
- PrismaLens sends usage counts after telling you, and you can turn them off. It never sends your code, alerts or reports.
- Everything PrismaLens keeps is in one folder,
~/.prismalens.
What the agent can reach
Section titled “What the agent can reach”The agent runs as your user, so it can reach what your user can. PrismaLens limits which of its requests run without you through the permission level. It adds no wall at the operating-system level. For a real boundary, run PrismaLens under a user or in a VM that can read only what it should, and give the agent read-only credentials for anything outside the repository.
The agent gets the environment your terminal has, minus PrismaLens’s own
secrets, so its own git and gh work. Settings → Agent → Only pass named
variables limits it to the basics, the agent’s provider keys and the
variables you set.
What leaves your machine
Section titled “What leaves your machine”- From your agent: what it reads, including source code, command output and the alert, goes to its model provider, as it would if you used the agent directly.
- Usage counts: on by default, after a notice. The first start prints the
notice and sends nothing. From the next start, PrismaLens counts feature use
under a random install id. It never sends your code, a repository, an alert
or a report. Events go to PostHog Cloud EU. Settings →
Usage data turns it off and shows what was recently sent. So do
PRISMALENS_TELEMETRY=offandDO_NOT_TRACK=1, and it is always off whenCIis set. The exact list of what is sent is in the source. - Update check: once a day PrismaLens asks GitHub Releases whether a newer
version exists, with no identifier.
PRISMALENS_UPDATE_CHECK=offorDO_NOT_TRACK=1turns it off. - From git: fetching a repository by URL contacts that host with your git credentials.
Who can open it
Section titled “Who can open it”There are no accounts. A browser gets in only by opening a one-time link that
pl up or pl pair prints on this machine. No address grants access by itself,
localhost included. Revoke a paired device under Settings → Devices.
Where your data lives
Section titled “Where your data lives”Everything is under ~/.prismalens, or the folder you pass to --workspace.
| Path | Contents |
|---|---|
prismalens.db |
Incidents, alerts, services, runs and reports |
runs/<id>/ |
Each run’s events and report |
worktrees/ |
The worktrees runs read, kept until the incident resolves by default |
repos/ |
Copies of repositories added by URL |
logs/ |
App logs |
To remove everything, stop PrismaLens and run pl reset.
These websites
Section titled “These websites”prismalens.io and docs.prismalens.io count visits with PostHog Cloud EU, without cookies or browser storage. They record which pages are opened and when a download link or install command is used, how fast pages load, and JavaScript errors a page hits. The landing site also records where on the page people click, as a heatmap. Requests for the install scripts are counted, with no IP address or other identifier stored. Nothing typed into a page is recorded, IP addresses are not stored, and a visit is never linked to an install of PrismaLens.
Docs text is licensed CC-BY-4.0. PrismaLens is open source under Apache-2.0.