EACI Development Journal · Identity

How Do You Load AI Soul Files Without Exposing Them Publicly?

Identity files belong behind the server boundary. The browser receives behavior through a response, not the private source document.

Identity ~9 min issue-tagged
Issue this fixes

A detailed soul file carries character identity, boundaries, and private continuity rules. Serving it from a public asset path would let any visitor download it, index it, or use it to probe hidden instructions.

The safer shape is to keep the source in a private deployment area and let the server-side chat function combine it with the request. Public code only needs companion identifiers and permitted presentation data.

What was actually going wrong

Loading identity JSON directly from browser JavaScript would make secrecy depend on an interface button.

What I tried

What finally worked

Private soul files are read on the trusted side, while creator-only editing surfaces fail closed when authorization is absent.

Why it worked

Access control is enforced where the file lives, not where a user happens to click.

What I learned

If the browser can fetch a secret, the browser user can eventually read it.

Where EACI uses this today

Main companions use server-loaded identity instructions without publishing the source files.

This journal covers real engineering on EACI Companion / The Veil. Companions include Caelum, Chad, Natalia, Atreus, Luna, Roxy, and Cael. Journal articles stay family-safe in content. See Privacy and Ethics.