Onboarding — invite teammates during setup, price the whole invite batch before sending, pick your client, and get a tour that forks for Claude Code and Codex engineers versus everyone else.
Invitations — send up to 50 invitations at once, with per-address results and a seat-add preview for the batch.
Brains — a brain's Contents tab lists the sessions it holds, cards carry a sessions count, and the feed names the brain a session lives in. This is the one cross-user list: in a brain you can view, you see every member's sessions, each row naming its author.
Routines — author a Linear trigger from chat, scoped to a team.
Routines — read GitHub from a routine: granted repos, staging/main commit history, pull requests, and repo files.
Routines — schedule one with no brain attached, as long as it delivers to Slack or email.
Routines — select more than one skill when you create one.
CRM sync — HubSpot records refresh on a schedule instead of waiting for a manual re-import.
Sources — request a connector we don't support yet from the Add source modal, and the request is kept so the demand gets counted.
Chat — the composer takes Office documents and folds the extracted text into the message rather than rejecting the file.
Slack — @MemHub dm <teammate> … answers under the recipient's brain grants, and their answer goes to them alone — it's never echoed back to whoever asked. It sends without a confirmation step.
Improvements12
Routines — Linear and GitHub event triggers debounce per routine and object, so a burst of activity is one run rather than a storm of duplicates.
CRM Manage — the sync bar shows the last successful import and the earliest next automatic refresh, instead of grant creation time or a claim that sync is manual.
GitHub — repo grants show the branch being tracked and drop the code/issues/PR toggles that never did anything, matching how ingestion actually works.
Sources — clearer header actions, a "How to use" guide, safer handling of org versus private sources, and tab state that survives a reload.
Brains — cards count the people a brain is actually shared with, rather than everyone in the workspace.
Brains — the detail header and share flow add keyboard shortcuts, a clearer list of who has access, invite/revoke/permission changes, and safer disabled states while grants reload.
Brains — leave a brain someone shared with you, from the card menu.
Sessions — the Insights engineer picker offers every org member, including idle teammates and people past the first page of the roster.
Sessions — the page header says what the surface is for in one sentence, whoever you are, with the role badge carrying the admin/member distinction.
Studio — the sidebar shows a profile mark derived from your org instead of the same hardcoded "X" for everyone.
Website — shared links describe XTrace MemHub as "Team memory for coding agents," with a refreshed social card.
Chat — CRM answers put table rows on their own lines, so they're readable.
Fixes22
Studio — the task board filters out add_memory captures, so it lists tasks someone actually started rather than empty imported rows.
Sessions — turn counts, spans, and metrics count messages in the workspace where the session's turns really live.
Sessions — Insights counts sessions scoped to a brain, session memories read from the partition they were saved in, and a late-arriving title becomes the session name.
Sessions — a deleted brain's label no longer breaks transcripts, metrics, org drill-ins, or PATCH echoes; stale labels fall back safely.
Sessions — activity lanes stay visible when work happens inside the selected window, even if the session started before it.
Brains — deleting a brain no longer breaks its conversations; the merge-back and delete-only paths relabel or remove them consistently.
Brains — removing a brain-owned fact retracts it rather than erasing it, and the UI no longer offers recovery it can't perform.
Brains — "remove from this brain" accepts the documented cb_id scope for facts, episodes, and artifacts instead of failing validation before the handler runs.
Routines — Linear teams can be named the way you'd name them, while the guard resolves handles to live team ids before authorizing any write.
Routines — Linear dispatch deduplicates by the change itself, avoids self-trigger loops, and rejects conditions it doesn't support rather than ignoring them silently.
Code review — a transient GitHub 429, 5xx, or rate-limit blip no longer fails the whole review when it can retry.
GitHub — Connect repositories no longer sends removed grant fields, which the backend was rejecting with a 422.
Invitations — a batch recovers per address after a database failure, keeps invitation tokens out of the logs, handles blank addresses one at a time, and caps email fan-out.
Billing — the seat-add preview clamps fallback proration between 0 and 1, so a Stripe outage can't produce a negative charge or a more-than-full-period quote.
People — admins no longer get a role control that would demote them from their own org.
CRM — a successful import at grant time stamps last_synced_at, so the scheduler stops immediately re-importing data it just fetched.
CRM — availability checks follow the caller and the workspace that will use the CRM, not the brain's home workspace.
Slack — task deliveries no longer fail silently, and linking errors point at the setup path that works.
Ingest — document RAPTOR work runs off the API event loop, and a non-string id no longer breaks the drop-mark path.
MCP server — the SDK 2.0 migration fixes camelCase/snake_case misses in production, and recall_directives reads the agent brain partition.
Chat — save_result and save_to_agent_brain can write to a brain created earlier in the same turn.
Deploys — a busy agent-jail Lambda no longer silently cancels the staging deploy.
Security5
Routines — Linear issue and comment text is fenced with per-call nonces and recursive delimiter stripping before it reaches an agent holding org write credentials.
Routines — PR bodies, commit messages, and other GitHub-authored text go through the shared hardened data fence instead of the older escapable marker stripping.
Routines — org-identity Linear writes are limited to granted teams, capped per run, and audited without storing argument values.
Routines — repo, branch, path, and truncation guards keep GitHub reads bounded, so a path or ref can't pivot a read into broader repo access.
Dependencies — cryptography is updated to 50.0.0 for CVE-2026-69247. Our usage never reached the vulnerable PKCS#7 path, but the patched version now ships.