Hydrate Enterprise — join an organisation server
After this page: your local Hydrate instance syncs facts and canon against your organisation's Hydrate server. Shared pinned facts appear in every team member's sessions automatically, without a separate git remote.
Prerequisites
- Hydrate Pro installed and working (
hydrate doctorall-green). See Pro install. - A join code and server URL from your Hydrate admin. The server URL is typically
http://<internal-host>:8095.
Join
hydrate auth join \
--code=<join-code> \
--server=http://<internal-host>:8095 --code is a single-use token your admin generates on the server. It expires after
24 hours. --server is the server's base URL.
You will be prompted for your display name (or pass --display-name="Your Name").
After joining:
hydrate enterprise status Expected output:
sync target: http://<internal-host>:8095
last push: never
last pull: never
queued writes: 0 Verify the connection
hydrate doctor
Look for License: Enterprise in the output. If it shows Pro, the
licence has not propagated yet — run:
hydrate enterprise pull
hydrate server restart
hydrate doctor Environment variables
If the server requires authentication headers or a non-default key, set these before running hydrate auth join:
| Variable | Purpose |
|---|---|
HYDRATE_CONTEXT_API | Server base URL (same as --server) |
HYDRATE_CONTEXT_KEY | API key (X-API-Key header) |
HYDRATE_CONTEXT_USER | User ID path segment (defaults to your machine's user UUID) |
Add them to your shell profile:
export HYDRATE_CONTEXT_API=http://192.168.1.100:8095
export HYDRATE_CONTEXT_KEY=hk_yourteamkey How sync works
After joining, your local Hydrate hooks (claude-context,
claude-capture) read from and write to both your local
~/.hydrate/data.db and the enterprise server. Reads resolve locally first
(lower latency); writes fan out to the server in the background with a 1500 ms timeout.
If the server is unreachable, writes queue in the local DB and flush on the next successful
connection.
To push queued writes immediately:
hydrate enterprise push To pull the latest shared facts:
hydrate enterprise pull Pinned org-wide facts (canon)
Your admin can pin facts that appear in every employee's session. You can view them:
hydrate canon list --project=org-wide These inject automatically — you do not need to do anything to receive them.
Offline operation
Hydrate is designed to be fully functional without the enterprise server. If the server is down:
- All hooks exit 0 (fail-open) and write to the local queue.
/hydrate-laststill returns your personal history from the local store.- Pushes queue and flush automatically when the server comes back.
Leaving the organisation
hydrate uninstall-hooks # remove CC integration first (optional)
hydrate uninstall # removes binaries; prompts whether to delete ~/.hydrate/ Your local ~/.hydrate/data.db is not deleted unless you pass --purge.
What changed on your machine
| Path | Change |
|---|---|
~/.hydrate/enterprise.json | Server URL, join token, your user ID |
~/.hydrate/license.json | Updated to Enterprise edition |
~/.hydrate/config.yaml | Enterprise sync endpoint added |
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
hydrate auth join fails with "invalid code" | Code expired or typo | Ask admin for a new code |
hydrate enterprise status shows connection error | Server unreachable | Check server URL and network; confirm server is running (ssh admin@server 'hydrate-server status') |
Doctor still shows Pro after join | Licence cache | hydrate enterprise pull && hydrate server restart |
| Context injection is slow | High server latency | Raise the hook timeout in ~/.claude/settings.json (default 1500 ms); or run hydrate config set context.timeout_ms=3000 |
Admins: issuing join codes
This is handled on the server side. On the server:
hydrate workspace invite [email protected] The server prints the join code. It is single-use and expires after 24 hours.
Next steps
- Claude Code integration — hook details
- Codex integration — enterprise memory in Codex sessions
- Vibe integration — enterprise memory in Mistral Vibe sessions