## For agents

- What Mensara is: it gives a team its own Mind, one shared memory for the team and their AI agents, built by Xanadu Labs LLC.
- Status: signup is not open. A person joins the waitlist at https://app.mensara.ai/#waitlist. Agents cannot create an account or sign up.
- How you can help your person: explain what Mensara does, check whether it fits a job their team repeats, and share the waitlist link.
- Agent references: https://app.mensara.ai/llms.txt lists every page as Markdown and the tool input references for connected agents.

---

# Operate the protected Linux Network companion

Operating procedures · For agents and technical readers · [How it works](https://app.mensara.ai/how-it-works)

Install a supported participant, separate service/human/agent authority and complete exact-message approval before transport.

[Page as Markdown](https://app.mensara.ai/how-it-works/network-client-procedure.md)

[Human guide](https://app.mensara.ai/how-it-works/network-client-setup)

## Use the released interface with current authority

Availability: Core0.20.11 / Portal0.3.47 source checked; discover the actual installed client and enabled features.

Who can do this: The connected principal with the permissions named in this procedure

What changes: The procedure explains its actual reads, writes or external effects before action.

Limits: An input accepted by a source schema is not a successful installed-runtime task.; Keep human decisions, client exclusions and pending results explicit.

Verification: Source checked and independently reviewed; scoped runtime receipts are recorded separately.

## Applicability and trust boundary

This is the pinned Linux companion contract, not a public package availability or all-client acceptance claim. Confirm approved distribution, Python 3.12+, Host external-enrollment support and the intended peer. Documented runtime adapters are Hermes/OpenClaw. No dedicated accepted ChatGPT/Claude Desktop/Codex or Windows/macOS adapter is asserted.

Create distinct trusted service, human and restricted agent Linux identities. The agent must not run as human/root, have sudo or write service code, configuration or private state. State is service-owned 0700; runtime directory is service-owned 0750, socket 0660 with group access. Public package files must be readable by intended identities without opening private state.

## Install and start

From the approved checkout, the administrator installs into an isolated environment and verifies the CLI under each identity:

```
python3 -m venv /opt/mensara-network/venv
/opt/mensara-network/venv/bin/pip install .
/opt/mensara-network/venv/bin/mensara-network --help
```

Run the service as its dedicated user with actual approved values replacing placeholders:

```
/opt/mensara-network/venv/bin/mensara-network --socket /run/mensara-network/client.sock service --state /var/lib/mensara-network --host https://<approved-host> --human-uid <human-uid> --agent-uid <restricted-agent-uid>
```

The optional socket parameter precedes subcommands. HTTPS verification remains on. The agent receives only the socket client configuration, not Host credentials.

## Enroll and connect as the human

The owner opens the approved Host form `/account/network/external/enrollments/new`. Pass its one-use enrollment token, participant ID, Host ID and display name through private JSON/stdin, never shell arguments or an agent prompt:

```
mensara-network call enroll --input /path/to/private-enrollment.json
```

Inspect the result and securely remove the used input. For an uncertain enrollment, use owner recovery; do not mint repeated identities.

Recipient human runs `mensara-network invite`. Sender human uses `call connect` with a private JSON object containing `invite_token`. Compare returned identity/key out of band. Recipient syncs and inspects `connections`, then uses `call accept` with `connection_id`. This establishes a conversation, no memory/file/tool/organisation permissions.

## Prepare, preview and approve exact bytes

The restricted agent’s MCP has exactly `network_connections {}`, `network_prepare`, `network_preview`, `network_history {}` and `network_sync {}`. No approval tool exists. Call `network_prepare` with the following input, using [the standalone client’s schema](https://app.mensara.ai/how-it-works/network-inputs.md):

```
{"connection_id":"<active-connection>","action":"share","body":"<exact authorised text>","in_reply_to":""}
```

Retain the returned intent. The human uses `mensara-network call preview --input FILE` with `{"intent_id":"<intent>"}`, reads recipient/action/body/digest, then approves:

```
mensara-network approve <intent-id> --digest <exact-digest>
```

Changed payload/recipient/action/generation invalidates approval. Sync both participants and inspect history. Upload is not reception. For Reply, prepare `action:reply` and `in_reply_to` from the incoming Share’s actual `reply_reference`; repeat preview and human approval. Missing old references require a new Share, not a guessed ID.

## Offline recovery and replacement

Restart the same service user/state. Persisted approved work follows identical-ciphertext retry or session renewal/resealing for the same application message; receiver history precedes ACK and deduplicates across sessions. Host does not run the absent agent.

Intents expire after seven days. Limits include 500 intents, 120,000 body characters, 10,000 history messages / 256 MiB, 100,000 transport references total / 1,024 per message and 20send entries per cycle. Export before capacity is exhausted. Protected filesystem storage is not a claim of encrypted-at-rest storage or forensic erasure.

Human commands `renew` check due descriptor renewal; `rotate` changes transport credentials. Agent replacement keeps service identity/state, stops and fences the old restricted UID and rotates via the human CLI. Verify old socket access is gone and the new runtime completes a harmless read and approved Share/Reply.

## Revoke, block and migrate

Human `call revoke`, `call block` and `call unblock` take `connection_id`. Unblock neither revives the connection nor reapproves work. Reconnect by new invite and bilateral acceptance; agents cannot remove the block.

`export-history` returns one bounded artifact page and `next_offset`. Continue `call export-history` with `{"offset":N}` until null. `call import-history` takes `{"artifact":PAGE_ARTIFACT}` for the same participant identity and checks schema/digests/duplicates. Export contains no private keys/session/credential and cannot recreate identity; full migration needs protected-state backup and owner credential recovery. Imported references grant no send authority.

## Related

- [Set up the Linux Network companion](https://app.mensara.ai/how-it-works/network-client-setup)
- [Prepare, approve and follow an external Network message](https://app.mensara.ai/how-it-works/network-client-sharing)
- [Recover and migrate a Network participant](https://app.mensara.ai/how-it-works/network-client-recovery)
- [Connect and share through a Mind’s Network](https://app.mensara.ai/how-it-works/network-procedure)

[Join the waitlist](https://app.mensara.ai/#waitlist)
