Operating it

Security

Each guarantee tied to the thing that enforces it — a guard, a test, a compilation property — and the ones nothing enforces yet, said plainly.

AVAILABLEWritten and covered by tests — not yet observed in a live runFinexia · published · updated · 4 sources · Finexia OS 0.0.23

Shipped in the current build. You can do this on your own machine today.

A security page that lists intentions is a marketing page. Every line below names what enforces it, and the lines that nothing enforces yet say so.

GuaranteeEnforced byStatus
Vendor keys never leave the macOS keychainNo code path writes a key to a file, a database or a logEnforced
No write path to a brokerThe market feed exposes no write method — verifiable by compilationEnforced
A role only sees the tools its capabilities coverThe tool registry filters by capability; two tests hold the doorTested
No role holds both user data and arbitrary outward accessA startup audit over the whole roster; a violation stops the application from openingEnforced at startup
Running code and reaching outward never combineThe same audit — the sandbox cuts the network, the audit keeps the cut meaningfulEnforced at startup
Writing a workbook opens no networkThe capability is classified among those without outward accessTested
A tool call cannot choose its own file pathThe tool schema carries no path key; a guard inspects the schemaTested
A source address carrying a secret is redacted before the journalThe provenance writer redacts on the way inTested
A card runs in its own isolated workspaceOne card, one process, one workspaceTested
A card cannot read a neighbouring card’s workspaceStrict configuration mode on the CLI, plus the deposited deny listMeasured 2026-08-26
Quitting stops every process the app startedThe quit path iterates the started processesTested
A missing engine costs nothingPreflight refuses the format before any process startsObserved in a live run
The server never sees your dataThe control plane schema is checked by a machine guard, so the list cannot quietly growTested

#The local tool server

It binds the loopback address on a port the system picks, and every call carries a bearer token issued to one card. A call without a known token is refused without being told why.

  • AVAILABLEBearer token per cardEach card points at the same server with its own token, and no card sees another’s. The token is written into the card’s own workspace declaration.
  • AVAILABLELoopback onlyNo other machine can reach it. The address is not configurable, and a third-party connector may not take the server’s name.
  • PLANNEDOrigin validation on every requestThe current transport revision requires a server to validate the origin of incoming requests and refuse an invalid one, precisely to defend a local server against a page in a browser 3. This server predates that revision and relies on the per-card token instead. It is a conformance gap, and it is written here rather than left unsaid.

#Fetched content is data, never instruction

Anything a tool retrieves from outside — a filing, a wire item, a page — is treated as data. It is never executed as an instruction to the agent. This is a design rule of the capability system rather than a filter applied after the fact, and tools that return third-party prose declare it, so the warning is attached by the server instead of being left to whoever wrote the tool to remember.

#What is not proven

  • The sub-agent boundary is written and tested, and nothing calls it. Inheritance of reach and budget is therefore untested in a real delegation.
  • A hard kill from outside the application bypasses the quit path. One orphan process was observed exactly that way. This is expected behaviour of a signal, not a leak in the quit path.
  • There is no published vulnerability reporting channel yet. See the security page under Resources for what that means today.

#Sources

  1. Finexia OS — product state at 0.0.23Finexiainternal handover report · Finexia OS 0.0.23 · commit produit 5968ef0 · lu à bcae42d · published 2026-09-10 · read 2026-09-10Internal document, not published
  2. The canonical role registry, mirrored on this siteFinexiainternal registry · roster registry mirror · read 2026-09-10Internal document, not published
  3. Model Context Protocol — Streamable HTTP transportModel Context Protocol projectofficial documentation · revision 2026-07-28 · published 2026-07-28 · read 2026-09-10https://modelcontextprotocol.io/specification/2026-07-28/basic/transports/streamable-http
  4. The tool registry, mirrored on this siteFinexiainternal registry · tool registry mirror of mcp::tools::TOOLS, crossed with the roles’ declared capabilities · read 2026-09-10Internal document, not published