Local, Postgres or a state process
For one authorized workspace across machines, use a portable profile and
machine-local bindings (neosian docs profiles). Share the exported selection,
then bind each machine to the same granted HTTP service with its own token.
The operator enables exact-scope/conversation grants; agent accounts are not
authorization. Each client runs a local stdio MCP bridge. Constrained hosted
HTTP MCP remains unavailable. Capture starts off, with explicit local history
or shared-history consent; local capture can accompany remote knowledge.
One binary provides local CLI, MCP and HTTP access. FileStore uses a directory; Postgres uses an operator-owned schema; remote clients use the same wire from any language. No hosted service, model account or Python runtime is needed.
neosian memory view / --root ./state --scope user:demoneosian schema postgres --schema neosian > schema.sql# Review schema.sql, then apply it with your own database connection.NEOSIAN_POSTGRES_DSN='postgresql://user:password@host/database?sslmode=require' neosian memory view / --scope user:demoDSNs are environment-only. Read neosian docs migration for supported
connection options and verified TLS. Use an explicit host/user/database;
libpq service files and implicit PG environment defaults are not consumed.
Serve and connect
Section titled “Serve and connect”NEOSIAN_SERVE_TOKEN='your-private-token' neosian serve --root ./state --scope user:demoNEOSIAN_CLIENT_TOKEN='your-private-token' neosian memory view / --url http://127.0.0.1:6367 --scope user:demoThe default bind is 127.0.0.1:6367. Tokens are required, and never supplied
on argv. /health is unauthenticated liveness only. Terminate TLS at a reverse
proxy for network use; the server does not terminate TLS itself. HTTPS clients
verify trust and hostname, with SSL_CERT_FILE for a private CA bundle.
A token table client:alice=token-a,client:bob=token-b attributes writes to
individual clients. client:alice@user:alice+alice-=token-a restricts memory
scope and conversation ID by literal prefix. These are prefixes, not exact
identity equality. Constrained tokens cannot use whole-store portability,
store-wide history searches or /mcp. A token without an allowance can access
all stored data. Restores preserve original actors rather than stamping the
importing client. See neosian docs wire before sharing a store.
Container
Section titled “Container”docker run -e NEOSIAN_SERVE_TOKEN='your-private-token' -p 6367:6367 -v state:/data ghcr.io/mausa-ai/neosian:2.10.0The image serves the Rust binary as uid 1000 with a private /data volume.
It supports FileStore and Postgres and contains no Python runtime. Pass
NEOSIAN_POSTGRES_DSN and override the default arguments with --schema NAME
when selecting Postgres. Schema application is a separate operator action.
The image has a health check and drains requests on SIGTERM.
For FileStore, coordinate local writers using the shared root lock and stop writers for migrations or consistent archives. Network filesystems are outside that guarantee. Postgres supports distributed writers. Neither remote access nor a shared token automatically makes recordings private; select storage and sharing boundaries intentionally.
Shared procedures and decisions
Section titled “Shared procedures and decisions”Mount personal, project and organization scopes explicitly. The core does not
infer membership from those names. Review metadata describes owners, approval,
effective/expiry dates and supersession; scoped grants remain authority.
Profiles can require effective or approved knowledge in retrieval and context.
Raw authorized reads/history remain available for inspection, so private drafts
need separate scopes/grants. Hosts provide trusted approval workflows and account
mapping. See neosian docs governance.
For one-way local replicas, exchange exports current memory from one authorized
tracked scope on files, Postgres or HTTP. Explicit local receiver roots retain
atomic checkpoints and observed revisions. Source writers pause for export;
conflicts and gaps refuse. No account linking, hosted sync service or raw-turn
sharing is implied. See neosian docs exchange.
Hear about it first: [email protected]· Apache-2.0 · a Mausa AI project · neosian.com