Synapse
Active stableThe reference Matrix homeserver, written in Python/Twisted with Rust modules, maintained by Element.
homeserver · licence AGPL-3.0-or-later OR LicenseRef-Element-Commercial
- Server
- Last commit
- today 4 Nov 2026
- Commits, last year
- 728 278 in 90 days
- Authors, 90 days
- 43 85 in a year, 642 ever
- Bus factor
- 3 authors making half of last year's commits
- Last release
- v1.164.2 2 Nov 2026 · 33 tags in a year
- Lines of code
- 366k Python
AI
AI policy
What the project says about AI-made contributions
Restricted (fits the chosen stance)(against the chosen stance)“AI-assisted contributions are accepted; unreviewed AI output is not. [...] If your PR was made with the help of AI, you must convey that this is the case using the PR template.”
Element-wide policy in element-meta CONTRIBUTING.md (added 2026-11-02), which says it applies to all element-hq repositories; the repo's own CONTRIBUTING does not link it yet. Commit messages may be AI-drafted if reviewed; reviews may use AI tools, but only a human approves or closes a PR.
AI in development
Whether the developers use AI tools on the repository
Occasional (fits the chosen stance)(against the chosen stance)Collector: 27 of 728 commits in the last year credit an AI tool (3.7 %): claude 21, copilot 6. 0 agent files, 0 AI workflows. A lower bound: most AI use leaves no trace.
- 27 of 786 non-bot commits in the last 365 days (3.4 %) carry an AI co-author trailer or similar
- github.com/element-hq/synapse/commit/45175f2247cad19b77ec7c02a1edebf1f50f4aef
- github.com/element-hq/synapse/commit/dec679de1cae379e42ef031971dc4173fc00d71e
- github.com/element-hq/synapse/commit/6472b6a937d01e185f73b10b99b1e9bcb146c1e4
-
45175f2242026-11-04 claude -
dec679de12026-11-03 claude -
6472b6a932026-09-29 claude -
e863ce7fa2026-09-25 claude -
9b5697d372026-09-21 claude
AI in the product
Whether the product itself has AI features
None found (fits the chosen stance)(against the chosen stance)Activity
Languages
Features
| Feature | Value | How we know | Evidence |
|---|---|---|---|
| Language | Python, Rust | — | — |
| Database | yes PostgreSQL (recommended), SQLite | claimed | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Federation | Yes: Yes | claimed | — |
| Spec versions | yes | code | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Appservices | Yes: Yes | claimed | — |
| Admin API | Yes: Yes | claimed | github.com/element-hq/synapse/tree/e3b6b231f6108 |
| OIDC delegation (MAS) | Yes: Yes delegates auth to Matrix Authentication Service via the matrix_authentication_service option | claimed | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Native sliding sync | Yes: Yes MSC4186: unstable | code | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Workers / scaling | Yes: Yes | claimed | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Authenticated media | Yes: Yes MSC3916: stable | code | github.com/element-hq/synapse/blob/e3b6b231f6108 |
| Resource needs | yes "At least 1GB of free RAM if you want to join large public rooms like #matrix:matrix.org" | claimed | github.com/element-hq/synapse/blob/e3b6b231f6108 |
MSCs
| MSC | Title | In this server | Flag | Spec | Source |
|---|---|---|---|---|---|
| MSC1301 | Proposal for improving authorization for the matrix profile API | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC1442 | State Resolution: Reloaded | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC1497 | Advertising support of experimental features in the CS API | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC1659 | Proposal: Change Event IDs to Hashes | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC1721 | Rename m.login.cas to m.login.sso | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC1756 | cross-signing devices using a master identity key | stable | — | merged, v1.1 | github.com/element-hq/synapse/blob/e3b6b |
| MSC1763 | Proposal for specifying configurable message retention periods | experimental | experimental_features.msc1763_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC1767 | Extensible event types & fallback in Matrix (v2) | experimental | experimental_features.msc1767_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC1772 | Matrix spaces | stable | — | merged, v1.2 | github.com/element-hq/synapse/blob/e3b6b |
| MSC1884 | Proposal to replace slashes in event IDs | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC2000 | Server-side password policies | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC2078 | Sending Third-Party Request Tokens via the Homeserver | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC2174 | Move the `redacts` key to a sane place | stable | — | merged, v1.8 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2175 | Remove the `creator` field from `m.room.create` events | stable | — | merged, v1.8 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2176 | Update the redaction rules | stable | — | merged, v1.8 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2197 | Search Filtering in Federation /publicRooms | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC2209 | Alter auth rules to check notifications in m.room.power_levels | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC2261 | Allow `m.room.aliases` events to be redacted by room admins | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC2265 | Proposal for mandating case folding when processing e-mail address localparts | stable | — | merged, v1.1 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2285 | Private read receipts | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2326 | Label based filtering | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC2409 | Proposal to send typing, presence and receipts to appservices | experimental | experimental_features.msc2409_to_device_messages_enabled | merged, v1.13 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2432 | Updated semantics for publishing room aliases | stable | — | merged, v1.2 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2654 | Unread counts | experimental | experimental_features.msc2654_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC2659 | Application service ping endpoint | stable | — | merged, v1.7 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2666 | Get rooms in common with another user | stable | — | merged, v1.19 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2676 | Message editing | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2677 | Annotations and reactions | stable | — | merged, v1.7 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2697 | [WIP] MSC2697: Device dehydration | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC2716 | Incrementally importing history into existing rooms | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC2753 | Peeking via sync (take 2) | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC2815 | Proposal to allow room moderators to view redacted event content | experimental | experimental_features.msc2815_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC2858 | Multiple SSO Identity Providers | stable | — | merged, v1.1 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2918 | Refresh tokens | stable | — | merged, v1.3 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2946 | Spaces Summary | stable | — | merged, v1.2 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2965 | OAuth 2.0 Authorization Server Metadata discovery | stable | — | merged, v1.15 | github.com/element-hq/synapse/blob/e3b6b |
| MSC2967 | API scopes | stable | — | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC3026 | "busy" presence state | experimental | experimental_features.msc3026_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3083 | Restricting room membership based on membership in other rooms | stable | — | merged, v1.2 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3173 | Expose stripped state events to any potential joiner | stable | — | merged, v1.2 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3202 | Encrypted appservices | experimental | experimental_features.msc3202_transaction_extensions | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3381 | Polls (mk II) | experimental | experimental_features.msc3381_polls_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC3389 | Relation redactions | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3391 | API to delete account data | experimental | experimental_features.msc3391_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3440 | Threading via `m.thread` relation | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3575 | Sliding Sync (aka Sync v3) | unstable | experimental_features.msc3575_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3664 | Pushrules for relations | experimental | experimental_features.msc3664_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3720 | Account status | experimental | experimental_features.msc3720_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3757 | Restricting who can overwrite a state event | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3771 | Read receipts for threads | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3773 | Notifications for threads | experimental | experimental_features.msc3773_enabled | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3787 | Allowing knocks to restricted rooms | stable | — | merged, v1.3 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3814 | [WIP] MSC3814: Dehydrated devices with SSSS | experimental | experimental_features.msc3814_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3818 | Copy room type on upgrade | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3820 | Room version 11 | stable | — | merged, v1.8 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3823 | Account Suspension | stable | — | merged, v1.13 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3827 | Filtering of `/publicRooms` by room type | stable | — | merged, v1.4 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3848 | Introduce errcodes for specific event sending failures | experimental | experimental_features.msc3848_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3852 | Expose user agent information on `Device` | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3861 | Next-generation auth for Matrix, based on OAuth 2.0/OIDC | experimental | experimental_features.msc3861_config | merged, v1.15 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3866 | `M_USER_AWAITING_APPROVAL` error code | experimental | experimental_features.MSC3866Config | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3871 | Gappy timelines | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3874 | Filtering threads from the /messages endpoint | experimental | experimental_features.msc3874_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3881 | Remotely toggle push notifications for another client | experimental | experimental_features.msc3881_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3882 | Allow an existing session to sign in a new session | experimental | auth.login_via_existing_enabled | merged, v1.7 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3884 | Sliding Sync Extension: E2EE | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3885 | Sliding Sync Extension: To-Device messages | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3890 | Remotely silence local notifications | experimental | experimental_features.msc3890_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3895 | Federation API Behaviour of Partial-State Resident Servers | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3912 | Redaction of related events | experimental | experimental_features.msc3912_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3916 | Authentication for media | stable | — | merged, v1.11 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3925 | m.replace aggregation with full event | stable | — | merged, v1.7 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3930 | Polls push rules/notifications | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC3931 | Push rule condition for room version features | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3932 | Extensible events room version push rule feature flag | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3933 | Core push rules for Extensible Events | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3959 | Sliding Sync Extension: Account Data | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3960 | Sliding Sync Extension: Receipts | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3961 | Sliding Sync Extension: Typing Notifications | unstable | — | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC3967 | Do not require UIA when first uploading cross signing keys | stable | — | merged, v1.11 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3970 | Scope transaction IDs to devices | stable | — | merged, v1.7 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3981 | `/relations` recursion | stable | — | merged, v1.10 | github.com/element-hq/synapse/blob/e3b6b |
| MSC3983 | Sending One-Time Key (OTK) claims to appservices | experimental | experimental_features.msc3983_appservice_otk_claims | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC3984 | Sending key queries to appservices | experimental | experimental_features.msc3984_appservice_key_query | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4028 | Push all encrypted events except for muted rooms | experimental | experimental_features.msc4028_push_encrypted_events | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4069 | Inhibit profile propagation | experimental | experimental_features.msc4069_profile_inhibit_propagation | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC4075 | MatrixRTC invites and notifications | experimental | experimental_features.msc4075_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4076 | Let E2EE clients calculate app badge counts themselves (disable_badge_count) | experimental | experimental_features.msc4076_enabled | closed | github.com/element-hq/synapse/blob/e3b6b |
| MSC4102 | Clarifying precedence in threaded and unthreaded read receipts in EDUs | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4108 | Mechanism to allow OAuth 2.0 API sign in and E2EE set up via QR code | experimental | experimental_features.msc4108_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4115 | membership information on events | stable | — | merged, v1.11 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4133 | Extending User Profile API with Key:Value Pairs | experimental | experimental_features.msc4133_enabled | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4140 | Cancellable delayed events | experimental | server.msc4140_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4143 | MatrixRTC – Real-time communication over Matrix | experimental | experimental_features.msc4143_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4151 | Reporting rooms (Client-Server API) | stable | — | merged, v1.13 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4155 | Invite filtering | experimental | experimental_features.msc4155_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4156 | Migrate server_name to via | stable | — | merged, v1.12 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4163 | Make ACLs apply to EDUs | stable | — | merged, v1.13 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4169 | Backwards-compatible redaction sending using `/send` | experimental | experimental_features.msc4169_enabled | merged, v1.18 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4186 | Simplified Sliding Sync | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4190 | Device management for application services | experimental | experimental_features.msc4190_enabled | merged, v1.17 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4203 | Sending to-device events to appservices | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4210 | Remove legacy mentions | unstable | experimental_features.msc4210_enabled | merged, v1.17 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4222 | Adding `state_after` to `/sync` | stable | — | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4235 | `via` query param for hierarchy endpoint | experimental | experimental_features.msc4235_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4242 | State DAGs | experimental | experimental_features.msc4242_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4260 | Reporting users (Client-Server API) | stable | — | merged, v1.14 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4262 | Sliding Sync Extension: Profile Updates | experimental | server.include_profile_updates_in_sync | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4263 | Preventing MXID enumeration via key queries | experimental | experimental_features.msc4263_limit_key_queries_to_users_who_share_rooms | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4267 | Automatically forgetting rooms on leave | experimental | experimental_features.msc4267_enabled | merged, v1.18 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4277 | Harmonizing the reporting endpoints | experimental | experimental_features.msc4277_enabled | merged, v1.18 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4284 | Policy Servers | stable | — | merged, v1.18 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4289 | Explicitly privilege room creators | stable | — | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4291 | Room IDs as hashes of the create event | stable | — | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4293 | Redact on kick/ban | experimental | experimental_features.msc4293_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4297 | State Resolution 2.1 | stable | — | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4306 | Thread Subscriptions | experimental | experimental_features.msc4306_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4308 | Thread Subscriptions extension to Sliding Sync | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4311 | Ensuring the create event is available on invites | stable | — | merged, v1.16 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4312 | Resetting cross-signing keys in the OAuth world | stable | — | merged, v1.17 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4319 | Room member events for invite and knock rooms in the `/sync` response | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4326 | Device masquerading for appservices | stable | — | merged, v1.17 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4354 | Sticky Events | experimental | experimental_features.msc4354_enabled | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4370 | Federation endpoint for retrieving current extremities | experimental | experimental_features.msc4370_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4380 | Invite blocking | stable | — | merged, v1.18 | github.com/element-hq/synapse/blob/e3b6b |
| MSC4388 | Secure out-of-band channel for sign in with QR | experimental | experimental_features.msc4388_mode | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4426 | User Status Profile Fields | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4429 | Profile Updates for Legacy Sync | experimental | server.include_profile_updates_in_sync | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4445 | Clarify `/sync` timeline order | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4446 | Allow moving the fully read marker to older events | experimental | experimental_features.msc4446_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4450 | Identity Provider selection for User-Interactive Authentication with Legacy Single Sign-On | experimental | experimental_features.msc4450_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4452 | Preview URL capabilities API | experimental | experimental_features.msc4452_enabled | merged | github.com/element-hq/synapse/blob/e3b6b |
| MSC4455 | Catch-all property for spaces | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4480 | Sliding Sync Extension: Sticky Events | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4491 | Invite reasons in room creation | experimental | experimental_features.msc4491_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4502 | Targeted and unrestricted room member queries | experimental | experimental_features.msc4502_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4508 | Sliding Sync Extensions: Common format and Typing | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4512 | Delegating parts of the Client-Server and Server-Server API to application services | experimental | experimental_features.msc4512_enabled | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4528 | `M_INCOMPATIBLE_SERVER` error code | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4537 | Restore `200 {}` for unset profile fields | unstable | — | open | github.com/element-hq/synapse/blob/e3b6b |
| MSC4548 | Sliding Sync Extensions: Account data | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
| MSC4551 | Sliding Sync Extensions: Receipts | unstable | — | fcp | github.com/element-hq/synapse/blob/e3b6b |
Health signals
- Bus factor (last year)
- 3
- Issue first response
- not measured (the forge did not give it)
- Release cadence
- 33 tags in the last year, latest v1.164.2 (2 Nov 2026)
- CI
.github/workflows/complement_tests.yml.github/workflows/docker.yml.github/workflows/docs-pr.yaml- Tests
- test files found
- Security policy
- none found
- Licence
- AGPL-3.0-or-later OR LicenseRef-Element-Commercial
- Funding
- none listed
- Telemetry SDKs in manifests
- Sentry (pyproject.toml)
Repositories
| Repository | Role | Activity | Last commit | Commits 1y | Authors 90d | Measured at |
|---|---|---|---|---|---|---|
| github.com/element-hq/synapse | main | Active | 4 Nov 2026 | 728 | 43 | e3b6b231f |
Notes
A user asked for a no-LLM policy in https://github.com/element-hq/synapse/issues/19793, which was moved to https://github.com/element-hq/element-meta/issues/3225 and closed as completed on 2026-11-03; Element's answer is the AI policy in element-meta CONTRIBUTING.md (see ai.policy). The issue comments were not readable from this session. Synapse Pro (closed source, Element) is a separate listing. Spec versions come from rust/src/handlers/versions.rs (the /versions handler moved to Rust).
Researched by an AI agent (Claude) on 5 Nov 2026, not checked by a person; metrics collected on 5 Nov 2026. Source file: data/projects/server/synapse.yaml. Spotted a mistake? Open an issue with a link.