Skip to content

feat: unify MCP access and refresh Mate identities - #588

Merged
chadbyte merged 25 commits into
mainfrom
feat/mcp-mate-release
Oct 14, 2026
Merged

chadbyte merged 25 commits into
mainfrom
feat/mcp-mate-release

Conversation

@chadbyte

@chadbyte chadbyte commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Summary

Make existing MCP integrations usable across supported Clay runtimes and Mates, with owner-scoped discovery and explicit, single-use consent before importing a disabled connection. Preserve vendor tool restrictions, credentials boundaries, and cross-project revocation.

Give Mates an explicit avatar gallery with 96 original portraits plus Clay’s branded lead portrait, all with transparent backgrounds. Preserve custom uploads and originals, migrate legacy Mate choices, widen the reading column, and add a mode-aware Clay rail flip that returns to the previous project/session.

Also includes personal browser management, remaining settings documentation and source concepts, and fixes for cited-message navigation, replay batching, quoted labels, and fresh-server startup. Integrates current main while retaining its authentication, knowledge, and release updates.

Validation

  • Final integrated Node 22 suite: 3,557 passed, 2 optional skips, no failures.
  • Independent Driver verification: 24 focused avatar and Knowledge tests passed.
  • Knowledge moves now tolerate identical same-millisecond history snapshots; avatar rebuild checks compare exact pixels across platforms and bytes within each platform.
  • Client import checks: 361 modules; JavaScript syntax: 827 files.
  • Clean npm ci --ignore-scripts succeeded.
  • All 97 transparent portraits reviewed on light/dark backgrounds; preservation checks cover 109 originals, foreground/floor regions, reproducible builds, and corrupt-output recovery.
  • CI explicitly installs Pillow and retains Git history required by the asset preservation tests.

Boundaries

Antigravity’s current CLI adapter cannot mount session-bound MCP tools; management displays this limitation. No real integrations were imported or activated during testing. Existing source-image crop boundaries are retained. Temporary caches and test-run artifacts are excluded.

Show the black Source Serif wordmark beneath the loading symbol.
Separate historical Mate artwork from user avatar rendering so saved
legacy styles continue to produce deterministic pixel identities.
Preserve per-user attribution and hard-link accounting while avoiding
sequential JavaScript metadata calls. Cache results for five minutes
and let explicit refresh requests start a coalesced fresh scan.
Map breaking commits to minor releases under the v5 product policy.
Refuse publication outside v5, including continuation of the existing
v6 beta until its release history is repaired.
Seed authenticated appearance in app shell responses and preserve it during
client theme initialization. Keep personalized shells out of offline caches.
Keep each PR's actions and checks together at narrow widths, and truncate
check names without hiding their results.
Persist separate primary choices for Linear issues, GitHub issues and PRs.
Protect selections from automatic replacement and require owner confirmation
for agent-requested changes. Add compact pins using Clay's accent colors.
Persist user-owned cookies, localStorage and IndexedDB for Mate browsers
with optional incognito tabs and browser data and history controls.
Keep project browsers incognito and personal settings scoped to Mates.

Render explicit browser links as chat pills that open or reuse pages
in the embedded Browser panel, including split-pane chats.
Use salted versioned scrypt hashes while verifying existing SHA-256
records and upgrading them only after successful login. Keep valid
logins working when migration persistence fails.

Use hash verification for PIN changes and preserve existing sessions,
temporary PIN flows and admin recovery. Document the rollback limit
for older binaries that cannot read migrated hashes.
Add opt-in account PIN-to-password enrollment and optional verified passkeys.
Preserve migrated PIN credentials and legacy single-user authentication,
while disabling redundant Server PIN controls and login in account mode.

Persist expiring hashed sessions, account/IP login limits and explicit HTTPS
proxy trust. Keep device management inside personal settings with accurate
activity metadata and row-local sign-out confirmation.

Validate with 86 targeted regression tests and shared-browser checks.
Remember successfully authenticated accounts with server-side browser
hints and an opaque cookie, without granting authentication authority.

Add progressive sign-in with Clay branding, responsive input cards,
password and PIN transitions, and existing passkey and email options.
Add owner-bound revision-checked deletion with an atomic tombstone and
linked report disposition. Keep deleted knowledge out of active retrieval
and prevent stale curation from restoring it.

Provide a Me deletion dialog with pending and error handling, refresh
other tabs, and preserve the existing Project Log deletion action.
Add session-bound Markdown editing and bounded source-row imports with
stable mappings, revision checks, multiline values, and owner isolation.
Serialize database persistence recovery and compact the NeDB journal.

Preserve unread Mate digest content with durable within-message cursors.
Cover workflows, capacity, restart, backup restore, and failure recovery.
Retain the current 20000-record and 16 MiB database limits.

Validation: 88 combined tests passed, plus syntax and diff checks.
Define an engine-neutral persistence contract and injectable factory.
Move NeDB lifecycle, paths, serialized recovery and maintenance into its
adapter while preserving aggregate data, limits and tool behavior.

Verify independent memory-backed workflows, blocked NeDB loading and
compatibility with existing stored identities, history and receipts.
SQLite implementation remains future work.
Share owner-authorized MCP connections across supported runtimes and
Mates, preserving source policies, identity boundaries and revocation.

Discover vendor configurations and expose disabled-copy imports through
management and agent tools with single-use authenticated owner consent.

Verify the isolated staged snapshot with 275 targeted tests.
Use a shared 860px width for Mate messages, composer and action rows,
with responsive minimum gutters. Update the browser width assertion.
Add 96 selectable clay portraits with persistent legacy migration,
custom-upload preservation, and direct project-strip avatar selection.
Use the logo-inspired lead portrait and flip the Clay entry between
project and Mate modes with previous-project session restoration.

Preserve full-resolution sources, masters, and reproducible packaging.
Preserve all 97 portraits with reviewed foreground masks and retain
original artwork, full-resolution transparent masters, and provenance.
Add reproducible alpha-aware packaging, cache invalidation, and pixel
regressions for pale details, floor removal, and output recovery.
Preserve entry indices through replay batching, reject stale navigation
responses, escape quoted link labels, and guard fresh-server startup.
Align Mate composer controls and provision avatar pixel checks in CI.
Preserve current release metadata and upstream safeguards alongside
owner-scoped MCP access, avatar catalog, and navigation improvements.
Verify avatar rebuild pixels in isolated storage while retaining
same-platform byte idempotence and source preservation checks.
Reuse identical Knowledge snapshots when move and link rewrites
occur within one millisecond; reject conflicting history.
@chadbyte
chadbyte merged commit 09f9813 into main Oct 14, 2026
2 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

This issue has been resolved in version 5.2.0-beta.4 (main).

To update, run:

npx clay-server@5.2.0-beta.4

-- Clay Deploy Bot

Build anything, with anyone, in one place.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant