Frequently asked questions

Plain answers about how SecureMind works. Search, or browse by topic.

The basics

  • What is SecureMind?More

    An open-source AI chat workspace. Before a message reaches a model, it checks the text for sensitive details such as email addresses, phone numbers and card numbers, and replaces each match with a short redaction label such as [email redacted]. You see the result and review it before anything is sent.

    That check runs inside your browser. The original value is not sent on, saved or logged.

    It also keeps workspace memory, searches the files you add (Knowledge) and cites them in its answers, and shows which model handled each reply and roughly what it cost.

  • Can I try it without installing anything?More

    Yes. The sample application is the real interface filled with made-up data. You will find it behind the Sample button in the top right corner of every page on this site, and it opens in a new tab.

    It needs no sign-in and makes no model calls, so you can click around freely. Nothing is sent to a model or to a private account.

    Open the sample

  • Is it free?More

    Yes. SecureMind is free to use, and the code is open source under the Apache 2.0 license. That is a standard, widely used open-source license written by the Apache Software Foundation. It was chosen, not invented for this project.

    In plain terms it lets you use, change and share the code, including at work, as long as you keep the license and notice files with it. It comes as is, with no warranty. You can read the details in the repository. This is not legal advice, so if you need certainty for your own situation, ask a lawyer.

    The software costs nothing. You pay your model providers directly for what you use, and the cost of an AWS account if you host it there. Running local models costs nothing beyond your own computer.

    Read the license

  • What is a workspace?More

    A workspace holds its own chats, files and memory. They do not mix with another workspace.

    The workspace name is the name you see speaking in chat. You can have several, for example one per project or per client.

  • Who builds it, and what if something breaks?More

    SecureMind is a personal project, shared as is and free to use however you like. It is built to be run by your own team. Whoever runs an install, usually its owner, is responsible for it: its settings, its users and the models it connects to.

    If you would like to see something improved in the project itself, ask on the GitHub page by opening an issue. The author reads them and may make changes, but there is no promise of support or a response time.

    Open an issue on GitHub

Privacy and detection

  • Can a replaced value be restored?More

    No. In chat, the original value is never saved, logged or sent to a model, so there is nothing to restore. What is kept is the label, such as [email redacted], and the text around it.

    In an uploaded file, the text SecureMind saves, searches and sends to a model has the values replaced, and the original values cannot be recovered from it.

    One thing to know: on a Docker install the uploaded file itself is also kept on your computer, exactly as you uploaded it, so that you can download it again. The AWS install does not keep the original file.

  • Does it remove every sensitive value?More

    No. It does as much as it can, but it works from fixed pattern and checksum rules and does not understand the text, so it can miss a value, such as a name or an unusual format. It is best-effort risk reduction.

    It is not a compliance tool, and it does not guarantee that every sensitive value is found. You still review what you send, and you remain responsible for what you share and for the rules that apply to you.

  • Does my data leave my machine?More

    Only if you send it to a model provider you connected. With local models, chat and documents stay on your computer. With an outside provider, the message goes to that provider after the sensitive-detail check.

    SecureMind has no server of its own that receives your data.

  • How does it decide what is sensitive?More

    It uses fixed pattern rules, and for numbers a checksum, to cut false alarms. It does not use a language model for this, so the same text always gives the same result. Each match is replaced with a label such as [phone redacted]. These are the rules:

    Email addresses: text shaped like name@domain.tld.

    US Social Security numbers: three digits, two digits and four digits, separated by hyphens or spaces.

    Canadian Social Insurance numbers: nine digits, grouped 3-3-3 or in one run. The check digit must be valid, so a random nine-digit number is ignored.

    Card numbers: 13 to 19 digits that pass the standard card checksum (Luhn), so order and trace numbers are ignored.

    Phone numbers: North American formats, with or without +1 and punctuation. Balanced and High.

    IPv4 addresses: four numbers from 0 to 255 separated by dots. Balanced and High.

    Street addresses: a house number, a street name and a street type such as street, avenue, road or lane. Balanced and High.

    Passport and national ID numbers: one or two letters followed by seven to nine digits. High only.

    API keys and secrets: private key blocks and the known shapes of AWS, GitHub, Slack, Stripe, Google and OpenAI-style keys. Always on, and never allowed through.

    An admin sets how strict the check is. Balanced is the default, and High adds passport and national ID numbers.

    Read the rules in the code

  • If I change the settings, does it clean up old content?More

    No. A change applies going forward, to new chats and newly added files. Stored messages and documents are not scanned again.

  • What does it not do?More

    It does not look for people's names, and it only recognises North American phone number formats and a simple street-address shape. It does not scan a model's replies, and it does not check the chat text again on the server after your browser has cleaned it. It does not verify claims in an answer with a second model.

    It does not replace review by a person.

  • What happens when it flags something that is not sensitive?More

    An admin can add it to the safe list in Settings. Safe-listed items are skipped by the check. An entry can be an exact piece of text, anything starting with a prefix, a whole domain, or a range of IP addresses.

    A few are built in, such as example domains used in documentation and private IP address ranges. Members can suggest an entry, and only an admin applies it.

    Social security numbers, social insurance numbers, card numbers and API keys or secrets can never be safe-listed. A change applies from then on, to new chats and newly added files.

  • When does the check run?More

    Chat is checked in your browser, on your own device, before anything is sent. If something matches, you see a review dialog first, and there is no way to send the unreplaced text from it.

    Files are checked on the server when they are added, after the text is extracted and before it is saved or indexed. Images are read into text first, and that text is checked the same way.

Knowledge and memory

  • How do answers cite my files?More

    When a question is about your own material, SecureMind searches the files you added, using both meaning and keywords, and gives the best passages to the model. The answer then shows numbered sources that point to the passages it actually used.

    After the model answers, SecureMind checks that every source number in the answer points to a real source. If it does not find enough to go on, it says so instead of guessing, and it shows no sources.

    Sources are only ever files you added. The earlier chat and the model's general knowledge are never shown as a source.

  • What does memory remember?More

    Facts you stated about your work, such as who you work with or how you like things done. You can see them in Memory, and correct, pin, forget or delete any of them.

    Memory is built only from what you wrote, after sensitive details were replaced, and never from the assistant's own replies. To pull the facts out, a small background model reads your cleaned-up messages. It uses the cheapest Groq model first, then a local model, and a small model from another provider you connected only if an admin has accepted that.

    Earlier messages in the same conversation help the model keep context, but they are not saved as facts and never shown as sources.

  • Which file types can I add?More

    Plain text, Markdown, code, JSON and CSV files, PDFs, Word documents (.docx), Excel spreadsheets (.xlsx and .xls), and images (PNG, JPEG, WebP and GIF).

    Images are read into text by a model that can see pictures, so they need a connected model with that ability, such as Groq. Without one, only the file name can be searched. Spreadsheets keep track of which sheet an answer came from.

  • Why does a casual message show no sources?More

    Greetings, small talk, questions about the app and corrections are answered without searching your files, so there is nothing to cite.

    A general question gets a quiet search first. Sources appear only when the search finds a close match, and only the ones the answer used. If nothing matches, you get a plain answer with no sources.

Models and keys

  • Do I need an API key at all?More

    No, you do not strictly need one, but an API key is strongly recommended. A Docker install includes local models that run through Ollama. They are free, but they use your own computer's resources, and unless it is very powerful they are slow and will not do well. They are fine for a first look.

    Add a key and everything gets faster and better. Groq is a good first one: it is fast, and it offers a free tier with usage limits and no card needed (check Groq's own page for the current limits). You can also pay for a key from any supported provider. Note that Groq, with a q, and Grok from xAI are two different companies, and SecureMind supports both.

    An AWS install has no local model at all, so it needs a model before chat works. Turning on Bedrock in your AWS account is strongly recommended, and you can add an API key as well or instead.

  • How do I know what it costs?More

    Each reply shows its model and an estimate of its cost, and the Cost view adds them up. The estimates come from the providers' published list prices, rounded up on purpose, so the total tends to be a little high. They are estimates, not invoices.

    The real cost is on the provider's own site and bill: the vendor's pricing page for an API key, and the AWS pricing pages for Bedrock. An admin can set a monthly cap for each person to limit spending.

  • How does it choose a model?More

    Each message is scored on a fixed set of signals, such as length and the kind of task, and given one of five tiers: Max, Plus, Standard, Light or Micro. The tier picks the model. A message that relies on your documents is raised to at least Standard, and an analysis or summary of documents to at least Plus.

    A “Why this tier?” card on each reply lists the signals and the points. You can also fix one model in the chat menu, and your choice is a preference: it is checked against the models your install allows.

    Background jobs, such as pulling facts out for memory, use a small, cheap model.

  • Where are my API keys stored?More

    On an AWS install, keys are stored encrypted in AWS Systems Manager Parameter Store, in your own AWS account. That is a SecureString parameter, used instead of Secrets Manager to keep the monthly cost lower. On a Docker install, they are stored encrypted in your install's own database, with the encryption key kept on your computer.

    Only the keys for your own team are stored, and only in your install. SecureMind is not a hub that holds everyone's credentials. There is no central service, and the author has no access to your keys.

    Only an administrator adds or removes keys. Members have no access to see or change them. Even an admin cannot read a saved key back: the screen only shows its last four characters. An AWS access key is never pasted into SecureMind. Bedrock uses your AWS sign-in or role.

  • Which models can I use?More

    Your own API keys for Anthropic, OpenAI, Gemini, Groq or Grok (xAI), Amazon Bedrock through your AWS sign-in, and local models through Ollama. An admin adds them in Settings.

    A model is offered in chat only after it has answered a test from your install, so the menu lists models that work for you.

  • Why can a key list models and still not chat?More

    Listing models only shows that the key can see them. A model joins the chat menu after one successful test with that key.

    If the account has no quota or no billing set up, the test stops and the rest stay unchecked. Fix the account with the provider, then run the test again.

Installing and hosting

  • Can someone else use the AWS role my install creates?More

    No. The setup creates a role that GitHub Actions can use to deploy, and it trusts exactly one thing: your repository, running in the one GitHub environment you name. It matches your account and repository by their numeric IDs, so a copy of the code in someone else's repository, a fork, or a different account that later takes your username cannot use it.

    The role is also limited in what it can do. It can only change resources named for SecureMind, and it can only create roles that carry a permission boundary, which stops a hijacked workflow from making itself more powerful. It can never edit itself.

    It is still only as trustworthy as your repository. Keep the repository private, turn on required reviewers for the GitHub environment, and protect your main branch. Deploying from your own computer instead needs none of this.

  • Does it work on a phone or tablet?More

    The screens adapt to narrow widths, so an AWS install can be opened from a phone or tablet. Desktop is the supported way to use it, and it is the only one that has been tested in real use.

    A Docker install runs at localhost on your own computer, so other devices cannot open it unless you set that up yourself.

  • How do I update or remove it?More

    Both are a few commands, and the Install page lists them. To update on Docker, pull the new code and rebuild. On AWS, pull the code, run the install command again and start a new Amplify build.

    On Docker, removing everything also deletes your chats, files and accounts, so back up anything you want to keep first.

  • What does the AWS version cost?More

    AWS charges for the resources it creates while they exist, and for model use through Bedrock. The install is made of small, pay-per-use services, and an idle install comes to well under a dollar a month, mostly the hosted zone for a custom domain.

    The Costs page lists every service, the monthly estimates, a real bill and the reasons it is built this way. One command removes everything it created.

    See the full cost breakdown

  • What is the setup code?More

    On an AWS install the first account needs a one-time code, so a stranger who finds the address cannot claim it. Terraform creates the code, and you print it from the command line.

    On Docker there is no setup code. The first account you create is the Owner.

  • Where does it run?More

    On your own machine with Docker, or in your own AWS account. There is no hosted service to sign up for, and both use the same download.

    With Docker, one command starts the app, the database, local sign-in and the local models on your computer. On AWS, the app runs on Amplify, with API Gateway, Lambda, Cognito and DynamoDB, all in your account.

  • Which computers and browsers has it been tested on?More

    Mostly one setup: a Windows computer with Chrome, Docker Desktop, and an AWS account in us-east-1. The layout was also checked at phone, tablet and laptop widths in a desktop browser.

    macOS and Linux installs, Apple Silicon Macs, Firefox, Safari, Edge and real phones and tablets have not been tested. They may well work. The Docker setup is meant to run on Windows, macOS and Linux.

  • Which should I choose?More

    Docker is the quickest. It needs no AWS account, keeps everything on your computer, and costs nothing to run. Add an API key for good answers, since the built-in local models are slow on most machines.

    Choose AWS if you want it reachable from anywhere with real sign-in for a small team, and you are comfortable looking after an AWS account. The Install page lists the steps for each, with every step marked required or optional.

  • Why are local answers slow?More

    The local models run on your computer's processor. Without a graphics card, a reply can take a minute or more, and the first reply after a start is the slowest because the model has to load.

    This is why an API key is strongly recommended. Add one in Settings and replies come back in seconds. Groq has a free tier and is a good first choice. On an AWS install, use Bedrock or a key.

People and access

  • Can a team use it?More

    A small one, yes. There are three roles: the Owner, who created the install, Admins, and Members. Admins add people, manage the models and keys, and set a monthly cost cap for each person. Members chat and use Knowledge, and they cannot see or change the keys or the install's settings.

    It is built for a handful of people, not a large organisation. Everyone in an install shares one directory, so it is not separate hosting for separate customers.

  • Can I sign in to your hosted version?More

    The app at app.securemind.chat is invitation only. If you are a friend or reviewing the project, ask through the Contact page. The Sample needs no account.

  • Is there two-step sign-in?More

    On an AWS install, yes, as an optional authenticator-app code that each person can turn on. It is recommended for admins. The local Docker sign-in does not offer it.