No account. No server. No sync. DeepWork never takes screenshots and never reads what you type. It has no network code at all.
A tracker that reads your window titles has to earn trust. This page says exactly what is kept, and gives you the commands to see for yourself.
| Signal | What is kept | Why |
|---|---|---|
| App name | Always | Which app you were in |
| Window title | Only outside browsers, and never from private apps | Project detection (a file name in your editor) |
| Website | The domain only, like github.com. Never the full URL. Never the page title, unless you turn that on. | Classify the site, show where time went |
| Repo folder name | The folder name only. Never the file path. | A project hint |
| Time and kind | How long, and whether it was deep, shallow or a distraction | The whole point of the app |
| Lock-in sessions | The task name you typed and the apps you allowed | So your history makes sense |
~/Library/Application Support/DeepWork/deepwork.db
A plain SQLite file. Its permissions are 0600, so only your macOS account can read it. Open it with any SQLite viewer. Nothing is hidden or encoded.
Notifications are optional, for the daily summary. Input Monitoring is never requested.
A share card has your totals, your project names, one insight line and the handle you typed. "Post on X" copies the image to your clipboard and opens x.com in your browser. The app uploads nothing.
Shortcuts and tools like Hammerspoon can read one word from DeepWork: your focus phase (idle, warming up, building, deep, peak). Never a title, never a site.
No network connections while the app runs:
lsof -i -a -p $(pgrep -x DeepWork)
prints nothing
The permissions the app is built with:
codesign -d --entitlements :- /Applications/DeepWork.app
one entitlement, for Apple Events. No network entitlement.
No full URL in your own database:
sqlite3 ~/Library/Application\ Support/DeepWork/deepwork.db "SELECT COUNT(*) FROM segments WHERE url != '';"
prints 0
And open the database in any SQLite viewer and look.
The app's build refuses to compile if networking or screen-capture code is ever added. If this policy changes, the date at the top of this page changes with it.