Hugo
Privacy Policy
Effective August 23, 2026
The Short Version
Hugo runs the AI model on your phone. Your tasks, chats, notes, and documents are stored on your phone. Static Hum Studio never receives any of that content, because there is no Hugo server to receive it.
During first-run model setup, Hugo requests a small public model catalog from models.statichum.studio. Choosing one of those models also downloads its file from the address in that catalog. Cloudflare serves both requests and receives the ordinary network details needed to do that, including the request IP, time, path, and headers. Hugo sends no account, device identifier, tasks, chats, notes, or documents with either request.
You can import a compatible model file later in Settings, but opening first-run model setup still requests the catalog. Once setup is finished, using the local model for chats and tasks does not contact Static Hum Studio.
We do not collect analytics. We do not run crash reporting. There are no ads and no tracking libraries we added. One exception we did not choose and cannot switch off: the text-recognition component Hugo uses to read documents reports diagnostics to Google. It sends nothing of what it read. There is a section on it below.
Hugo can reach the internet, but the skills that do are switches you turn on yourself, and those ship off. The exceptions are the voice and setup paths, and each heading below says exactly when its path applies.
What Hugo Stores on Your Device
In a private database only Hugo can read:
- Tasks, due dates, reminders, and completion history
- Chat sessions and every message in them, including images you attached
- Documents you imported, the text extracted from them, and the search index built over that text
- Research runs and their results
As plain markdown files in Hugo’s own folder on your device’s storage:
- Notes and markdown documents you or Hugo wrote
- Links you shared into Hugo, and whatever text was read for them
These are deliberately plain files, so your notes are yours to copy off the phone. On Android 10 and newer, other apps cannot read them. On Android 8 and 9, an app with storage permission may be able to read them. You will also see the files if you browse your phone over USB. They are removed when you clear Hugo’s data or uninstall it.
In Hugo’s private file storage, which no other app can read:
- The AI model files you downloaded
- A copy of every image you attached to a chat, kept as long as the message is
In temporary storage your phone can clear on its own:
- Photos taken with the in-app camera, until you attach one
- Staging files while a document is being imported, or while an image is on its way out to another app
In app preferences:
- Your display name, theme, and which model you are using
- Model tuning settings, whether voice is on, and which skills you turned on
- Any custom personalities you wrote, and whether that feature is unlocked
Encrypted with AES-256, in Android’s hardware-backed keystore:
- The API key you entered for image generation
All of this stays on the device. None of it is transmitted to Static Hum Studio.
Android’s automatic cloud backup is turned off for Hugo, deliberately. Your conversations and tasks are not copied to Google Drive. The trade-off is real and worth stating: if you factory-reset your phone, that data does not come with you.
Android’s phone-to-phone transfer, the one that runs when you set up a new device from your old one, is a separate mechanism, and turning off cloud backup does not turn it off. Hugo opts every one of its storage areas out of it explicitly. Nothing rides across. That is the same trade as above, doubled down: a new phone starts empty, and the way to carry your work over is to export it yourself.
Where Data Can Leave Your Phone
This is the whole list. Rather than summarise which of these are off by default, which has been wrong here more than once, every heading below states its own condition: off until you turn it on, on by default, or no switch at all.
Your Chats (never)
Chatting with Hugo is not on this list, because it is not a network path. The model runs on your phone. Your messages, Hugo’s instructions, your task list, and anything a tool looked up stay on the device for the whole turn.
There is no setting that changes this. Hugo cannot be pointed at an AI service instead, ours or anyone else’s, because there is no such option to turn on.
Web Search (off by default)
When web access is on, search terms go to DuckDuckGo. Wikipedia lookups send the search term or article title to Wikipedia.
Reading a Link (no switch, it follows your lead)
If you hand Hugo a URL to import, or share a link into it, Hugo fetches that page directly from that site. The site sees the request the same way your browser would. There is no toggle on this one, because you asked for it by handing over the link. Research runs follow links the same way, and those are behind the web access switch.
Image Generation (off by default)
Image generation is not local. Turning the switch on sends your Wavespeed API key to Wavespeed straight away, to load the list of available models ... before you have asked for any image. After that, each image sends your prompt as well. The finished image is downloaded from whatever host Wavespeed hands back, which is usually a content network rather than Wavespeed itself. Fetches can happen for on-screen display, opening the viewer, automatic saving, and each Save or Share tap. Save and Share fetch again rather than reusing the copy already on your phone.
Generated images are kept inside Hugo by default, not in your gallery, so clearing Hugo’s data removes them along with everything else. You can choose to send them to your gallery instead, and Settings says plainly what that means before you pick it: files there are yours, they outlive the app, and clearing Hugo will not touch them. Tapping Save on an image also puts a copy in your gallery, because that is what saving a picture means.
Images in a Reply (no switch)
When a reply contains a web address that looks like a picture, the chat screen loads it so you can see it. That is how a generated image appears in the conversation, but the same thing happens to any such address, whichever model produced it ... including the on-device one, and including a link Hugo got wrong.
The request is a plain fetch, the way a browser loads an image on a page. None of your content goes with it ... no chat, no tasks, no notes. What the site does get is what any site gets when your phone asks it for something: your IP address, and the fact that a request was made. That site is not necessarily one you picked, and this happens with image generation and web access both switched off.
Speech to Text (on by default, if you use voice)
Hugo uses your phone’s own recogniser ... whichever one it has selected, which is Google’s on most phones and the manufacturer’s on some. Hugo does not choose it and cannot see inside it. Most send your recorded audio to their maker’s servers. We are not going to tell you that installing an offline speech pack fixes that ... Hugo does not ask the recogniser to stay offline, so it remains free to use the network whatever you have installed. Hugo does not currently offer an on-device speech recogniser. If you never use voice, the recogniser never runs.
Text to Speech (on during calls, switchable)
When Hugo speaks during a call, he hands the reply text to whichever text-to-speech engine you have installed on your phone. Some engines synthesise in the cloud, which means that text leaves the device. That engine’s own privacy terms apply to what it is given.
The control for it is Settings, “hugo speaks during calls”. Turn it off and Hugo listens without speaking ... the reply still appears in the chat, it just is not read aloud, and no text goes to a speech engine. Worth saying that we found this switch wired to nothing while writing this policy, and fixed it before publishing rather than describing a control that did not work.
Model Setup (catalog request first, model download after you choose)
Hugo needs an AI model file to work, and at several gigabytes it is too large to ship inside the app. When first-run setup opens, Hugo fetches the public catalog at models.statichum.studio/hugo/catalog.json over HTTPS. The catalog tells Hugo which models are available, how large they are, their checksums, and which one fits your phone.
Choosing a listed model starts the larger file download from the address named in that catalog. The download worker can fetch the catalog again so it can verify the selected model and its checksum. The live catalog currently points to model files on the same models.statichum.studio host.
Settings can later import a compatible .litertlm file you already have. That can avoid a later replacement download, but it does not make a fresh first run silent because opening first-run model setup still requests the catalog.
Cloudflare serves the catalog and model files. It receives the ordinary network details for those requests, including the request IP, time, requested path, and headers. Hugo adds no account, name, advertising identifier, custom device identifier, or app content. Static Hum Studio does not add analytics to the model delivery path.
Text Recognition (off until you turn it on)
Some PDFs are pictures of pages rather than text ... a scan. To read one, Hugo uses Google’s ML Kit. The recognition itself runs on your phone. The models ship inside the app, and your pages and the text found in them are never uploaded.
What we did not choose: as that component starts up, it reports diagnostics to Google. Your device make, model and Android version, Hugo’s package name and version, an identifier tied to this installation, timings, and error codes. Not your images. Not the text it read. Google publishes the full list, and there is no setting of theirs that turns it off.
So we did the only thing left to us: we made sure it never starts. Reading scanned PDFs is a setting, it ships off, and while it is off the component is never created ... which is the moment the reporting would happen. Nothing is sent, because nothing is running. Turn it on and you get scanned pages read, and Google gets the list above. The setting says so on the screen, whether it is on or off, so you can read the trade before you make it rather than after.
Left off, a scanned page is simply skipped, and Hugo tells you which pages he could not read rather than quietly indexing half a document.
We are telling you at this length because an app that claims to tell you where your data goes does not get to leave out the part that surprised us. This was the one path that reported on Hugo himself rather than carrying something you asked him to carry, and it is now the one path we closed by default instead of only disclosing.
Unencrypted Connections
Hugo permits plain http connections. This is a deliberate choice, and it applies to one thing: reading a link you hand it. There are two ways to do that and they behave differently, so both are worth stating.
Ask Hugo to read a link, or share one into it, and Hugo tries https first, falling back to plain http only when the secure version is actually unreachable. Most http links end up encrypted that way. Add a URL through Sources with an explicit http:// address, though, and Hugo fetches exactly that ... no upgrade attempt, so it is unencrypted.
What this means for you: an unencrypted fetch crosses the internet in the open, and anyone in between can see which page was requested. It is the same exposure your browser has visiting the same link. Nothing of yours is sent along with the request.
What Hugo Does Not Do
- No analytics or usage tracking that we added, and none we receive. See Text Recognition below for the one component that reports to Google
- No crash reporting
- No advertising frameworks or third-party tracking SDKs
- No location data, no contacts, no advertising identifier
- No account. Hugo has no sign-up, no login, and no profile
- No data sent to Static Hum Studio. There is no Hugo server to send it to
- No training. Nothing you say to Hugo is used to train any model by us
Document text recognition and the AI model both run on your phone. Neither one needs a network connection.
Permissions Hugo Asks For
- Notifications: to show reminders. Without it, reminders fire silently and you will miss them
- Alarms and reminders: so a reminder set for 3:00 arrives at 3:00 rather than whenever the system feels like it
- Microphone: only while you are talking to Hugo
- Camera: only when you take a photo to show him
- Start on boot: to re-register your reminders after a restart, so they survive one
- Internet: for the paths listed above, and nothing else
Your Control
- The skills that reach the network are switches in Settings or Skills, and they ship off. Turning one off stops that path immediately. The voice and setup paths differ, and each heading above says how
- Delete any task, chat, note, or imported document from inside the app
- Remove an API key at any time in Settings
- Avoid voice input when you do not want your phone’s speech service to receive audio
- Clear the app’s data or uninstall it to remove everything Hugo owns. See below for the network request caveat
Deleting Your Data
Clearing Hugo’s app data or uninstalling it removes your tasks, chats, notes, imported documents, downloaded models, settings, and saved keys. There is no Hugo account and no Hugo server, so none of that content exists anywhere for us to delete.
Clearing the app cannot erase request records handled outside the app when Hugo fetched the model catalog or a model file. Cloudflare processes those requests under its own terms. Static Hum Studio does not combine that request data with an account or app content, because Hugo sends neither one.
That is not the same as saying nothing exists anywhere. Anything you sent to someone else is theirs now, and clearing Hugo cannot reach it: Cloudflare processed the setup requests, Wavespeed has any image prompts you sent it, the search and lookup sites have those queries, and your phone’s speech engines have whatever audio or reply text passed through them. Each of those is governed by that party’s own policy and deletion process, not ours. We would rather point you at them than imply a wipe you cannot actually perform.
The exception is images you asked us to put in your gallery ... by choosing the gallery as the save location, or by tapping Save on one. Your gallery is not Hugo’s to erase, so those survive clearing app data and they survive uninstalling. Delete them the way you delete any other photo, from your Photos or Files app.
Left on the default, this does not come up: generated images stay inside Hugo and go when Hugo goes.
Children’s Privacy
Hugo is not directed at children under the age of 13, and we do not knowingly collect personal information from children under 13.
To be exact rather than reassuring: we run no account system and receive no app content from anyone, of any age. Model setup does make standard web requests that disclose the request IP and request metadata to Cloudflare, without a name, account, or anything from inside Hugo. If you believe a child under 13 has provided personal information through the app, contact us at Static@StaticHum.Studio and we will take appropriate steps.
Third Parties
Each one’s own privacy policy governs what it does with what it receives. Some are reached only when you turn a feature on; others apply by default or have no switch at all. Each entry below says which it is, so you do not have to hold a list in your head. Sites you hand Hugo a link to, and hosts an image in a reply points at, are not on this list at all ... those are whatever address was involved, and both are covered above.
DuckDuckGo, Wikipedia (only with web access on)
Search and lookup destinations. They receive search terms, not your chats.
Wavespeed (only with image generation on)
Image generation. Receives your prompt and your key.
Your phone’s speech recogniser (used by default)
Google’s on most phones, the manufacturer’s on some. Receives recorded audio while you are dictating. You do not enable this one ... it is the only current backend, so it applies the first time you use voice. Hugo does not currently offer an on-device alternative.
Your phone’s text-to-speech engine (used by default during calls)
Whichever one is installed. Receives the text Hugo speaks during a call. Some synthesise in the cloud. The current control is “hugo speaks during calls”. Turn it off and no reply text goes to a speech engine.
Cloudflare (during first-run model setup)
Serves models.statichum.studio. It receives the catalog request when first-run setup opens, plus the model-file request if you choose a hosted model. Importing a compatible model later avoids a later replacement download, but not the first-run catalog request. See Model Setup above.
Google (text recognition, off until you turn it on)
Receives diagnostics if you switch on reading scanned PDFs and then import one. Leave that setting alone and Google receives nothing, because the component that reports in is never started. See Text Recognition below for exactly what it sends.
Contact
Changes to This Policy
If this policy is updated, the revised version will be posted here with a new effective date. That is the only place it will be announced.