We do not move your data out to process it
A company running real customer data through an off-the-shelf AI tool is transferring personal data to a processor abroad. The usual answer to that is contractual, and it works by legitimising the transfer. Ours is architectural. The transfer does not happen.
No business data is kept here
one route or the other
Your own server
Nothing leaves at all
An outside provider
Personal data leaves masked
Transfer abroad
Every AI call the operating system makes can go to a model on your own server. Agents, questions asked of your data, report writing, all of it. One config file, no code change.
Retention and minimisation
Business data is not stored here. It is processed, and the result is written back to your own systems.
Purpose limitation
A field's security marking carries who may read it and for which purpose. If the purpose does not match, the value comes back masked.
Security of processing
Masking on the way out is on by default and closes on failure. If the policy cannot be read it masks rather than leaks, and if the masking engine cannot answer the whole egress is cancelled.
Turkish personal data
Recognizers for the national ID number, the tax number, IBAN and Turkish phone formats. The first two run the official checksum rather than trusting a pattern match.
Erasure
Deleting a workspace reaches every store the way that store is keyed, rather than assuming one shape for all of them. Nothing is left behind for a later sweep to miss.
Portability
A whole workspace leaves as one file: its configuration, its semantic map and its memory. It installs on a machine with no internet connection.
Auditability
Every masking decision is recorded, the ones that let a value through as well as the ones that masked it. Where a person approved something, who decided, when and on what grounds stays on the record.
On your own premises
The operating system can run entirely on your own servers, with no connection to the outside.
Measured in our end to end test, September 2026
- 200/200Finding personal dataTurkish ID numbers, tax numbers, IBANs, phone numbers and e-mails, 200 of 200 found for each kind.
Compliance is yours, and that is in your favour
Meeting the law is the data controller's obligation, which means yours. No piece of software is compliant on its own, and any vendor who tells you otherwise is selling you a sentence rather than a control. We are a processor. What we do is make those obligations easier to meet and narrow the surface you have to defend. It is the same thing we mean by taking on the work rather than the responsibility.
Masked, and we say which kind
Personal data is masked on the way out. The default method is reversible, so in legal terms it is pseudonymisation and not anonymisation, and the difference matters: anonymised data leaves the scope of the law and pseudonymised data does not. Lifting a mask is a separate action that needs an authorised approval, and that approval is itself recorded. Irreversible methods can be chosen where you want them.
Eight controls, all on by default
Not a policy document. Each of these is a control the operating system applies on every run.
Your data is not kept by us
Your business data is read where it already lives, processed, and the results are written back to your own systems. On the DEHA box it never leaves your building.
Secrets stay encrypted
Connection details and keys are stored encrypted and decrypted only at the moment they are used. A resolved secret never reaches a log line.
Who can do what is explicit
Roles, single sign-on and API keys. Which agents, flows, screens and tables a person can reach are four separate limits, not one blanket permission.
Every workspace is separate
Workspaces are isolated from one another all the way down: data, configuration and usage counters never share a shelf.
A sensitive step asks first
Before an agent takes an action that matters, the flow stops and waits for your decision. Approve it and the run continues exactly where it paused.
Everything leaves a trail
Who changed what and when, and which run produced which result. All of it recorded, and all of it followable along a single thread.
Outbound calls are fenced
The operating system only calls out to addresses you have allowed. Your internal network is off limits by default, and outgoing notifications are signed so the receiver can prove they came from you.
Limits are real limits
Usage caps per workspace and a ceiling on how much can run at once, so one heavy job cannot starve everything else on the system.
An agent runs inside your rules
An agent is the part of the operating system that acts on its own, which makes it the part with the most limits drawn around it. These six apply to every run, and none of them is something the agent can turn off.
It only holds the tools you gave it
You pick which tools and which flows an agent may use. Everything outside that list is taken away before the model is even asked, so the agent never learns those tools exist.
It sees no more than you
An agent working on your behalf carries your access, and cannot widen it at any step. Which tables, which flows, which screens: your limit is its limit, and an agent it hands the work to stays inside the same one.
Only known addresses can trigger it
An endpoint that opens an agent to the outside world can be locked to the IP addresses and ranges you name. A call from anywhere else is refused, and an unsigned one is refused too.
Code runs in a sealed box
When an agent writes code to solve something, that code runs in a single-use container with no route to anything else. The container is destroyed when the job ends.
Personal data is masked on the way out
Whatever an agent sends out is checked for personal data and masked first. If that check cannot run, the answer does not leave. It is on by default and cannot be switched off.
Every run has a ceiling
How long it may run, how many times it may hand work on, how many jobs may run at once and how much it may spend. All four are capped, so an agent cannot loop forever or run up a bill on its own.
Try it now, see the result.
Sign in and ask your own question.

