Access that is physical,
not a prompt.
Before any inference, Astry builds a fresh sandbox holding only the files you are cleared to see, then runs the model with that directory as its entire world. You cannot prompt-inject your way to a file that is not there.
The agent has only these read-only tools, and they see only the sandbox — no access to the real vault or the network.
A physical copy, not a link — the sandbox holds no pointers to the real vault. The agent cannot read a discarded file: it does not exist for it.
full cycle: 4.2 s298 copied to sandbox · 346 discarded, never read
Five deterministic steps before the model runs.
Access is decided in plain code, before the model exists for your request. Each step runs in order, every time. Nothing about the result depends on how the question is phrased.
- 01
Verify identity
Astry reads the OIDC token issued by your identity provider and resolves the asker, their groups and their clearance. No parallel account, no second password.
- 02
Compute the authorized set
It intersects the files that are semantically relevant to the question with the files the asker is actually permitted to read. Permissions inherit from the source system, so the set is exact.
- 03
Project into a sandbox
Real copies of those files, never symlinks, are written into a fresh per-request temporary directory. Nothing outside the authorized set is present on disk.
- 04
Run the model, scoped
The working directory is the sandbox and nothing else. Tools are read-only, the network is off, and the run is cost-bounded. The model can reach only what was projected for this request.
- 05
Audit, destroy, return
Every file ID is written to an append-only record, the sandbox is deleted in a finally block, and the cited answer is returned. The evidence outlives the sandbox.
Security you can point to.
Not a policy the model is asked to respect. A boundary built into where the files live and where the model can look.
A filesystem boundary, not a prompt rule
Permissions inherit from the source
Per-request sandbox, then destroyed
Every decision logged
Unlisted, so unreachable
Runs inside your own cloud
The guarantees, at a glance.
Good to know.
Filtering normally happens inside or after retrieval, where a model is already in the loop. Here the filtering happens in plain code before the model exists for your request, and unauthorized files are physically absent from the sandbox rather than hidden behind a rule.
Trust is the architecture, not a clause.
See how a single request is projected, scoped and destroyed inside your own cloud.