# Ketesa: Open-Source Matrix Server Admin Panel

If you have been using Synapse Admin — whether from etke.cc or directly from the upstream project — you may have noticed that the interface at [cloud.ketesa.app](https://cloud.ketesa.app) has evolved well beyond what the original project offered. Today we are making that evolution official.

**Synapse Admin is now [Ketesa](https://etke.cc/help/extras/ketesa/).**

The repository, Docker images, and configuration keys have all been updated. The project has a new name and a new identity, but it remains the same zero-configuration drop-in replacement it always was: no config changes required to migrate.

## Why a new name?

The project started as a fork of [Awesome-Technologies/synapse-admin](https://github.com/Awesome-Technologies/synapse-admin) in August 2024. What began as small quality-of-life improvements grew over time into something different enough — a fully redesigned interface, comprehensive API coverage, multi-language support, and etke.cc-exclusive features — that sharing a name no longer made sense.

Ketesa is its own project now. The name reflects that.

## etke.cc-exclusive features

If you run your server on etke.cc, Ketesa becomes a unified control plane for your entire server — not just user and room management.

### Server Status

A live status badge in the toolbar plus a full dashboard showing every server component with color-coded indicators, error details, and suggested actions. Know what’s wrong before your users do.

![Ketesa Server Status Page](https://etke.cc/img/ketesa/server-status.webp)

### Server Actions

Trigger management commands on demand, schedule them for a precise date and time, or set up recurring weekly jobs. Routine maintenance becomes a few clicks.

![Ketesa Server Actions Page](https://etke.cc/img/ketesa/server-actions.webp)

### Server Notifications

Important server events surface as an in-app feed with an unread badge — health alerts, updates, and overdue payment reminders all in one place.

![Ketesa Server Notifications](https://etke.cc/img/ketesa/server-notifications.webp)

### Billing

View payment history and download invoices without ever leaving the admin panel.

![Ketesa Billing Page](https://etke.cc/img/ketesa/billing-list.webp)

### Support

Open support requests, track their progress, and exchange messages with the etke.cc team — right from the interface you use every day.

![Ketesa Support — Create Ticket](https://etke.cc/img/ketesa/support-create.webp)

![Ketesa Support — Open Thread](https://etke.cc/img/ketesa/support-thread-open.webp)

* * *

## What’s New in v1.0.0

### Full redesign

The entire interface has been rebuilt from the ground up: a cleaner layout, a recolored dark theme, and a consistent visual identity across all pages. Every major section — the user page, reports, room management — has received a focused styling pass.

![Ketesa Login Page](https://etke.cc/img/ketesa/login.webp)

![Ketesa Users List](https://etke.cc/img/ketesa/users-list.webp)

### Mobile-first

Ketesa is now fully responsive. Tables collapse to readable mobile lists, long identifiers wrap gracefully, and every action is reachable on small screens — without sacrificing functionality.

![Ketesa on mobile](https://etke.cc/img/ketesa/mobile.webp)

### Matrix Authentication Service (MAS) — full integration

> **A note on MAS at etke.cc:** We are not offering Matrix Authentication Service to our customers just yet. MAS is moving in a great direction, but it still has rough edges with several components — bridges especially — and we would rather wait until those are smoothed out than ask our customers to take that on. Ketesa being ready for it is a good step forward, and we will get there.

Ketesa now has first-class support for homeservers running [Matrix Authentication Service](https://github.com/element-hq/matrix-authentication-service):

- Browse and revoke active sessions: personal access tokens, browser sessions, OAuth2 sessions, compatibility sessions
- Manage linked email addresses
- View upstream OAuth provider links
- Manage MAS policy data (consent records)
- Create new users through MAS directly
- Registration tokens now expose `created_at`, `last_used_at`, `revoked_at` and support one-click revoke/unrevoke

![Ketesa User Edit Page](https://etke.cc/img/ketesa/users-edit.webp)

### Room management

Block or unblock rooms, purge history, and delete rooms entirely. A built-in messages viewer lets you browse room history with filters and jump-to-date navigation. Spaces now have a dedicated room hierarchy tab.

![Ketesa Rooms List](https://etke.cc/img/ketesa/rooms-list.webp)

![Ketesa Room View](https://etke.cc/img/ketesa/rooms-view.webp)

![Ketesa Room Messages](https://etke.cc/img/ketesa/rooms-view-messages.webp)

![Ketesa Room Hierarchy (Spaces)](https://etke.cc/img/ketesa/rooms-view-hierarchy.webp)

![Ketesa Room Statistics](https://etke.cc/img/ketesa/rooms-stats.webp)

### User management improvements

- **Shadow banning** — silence a user without alerting them
- **Login as user** — impersonate any local user (Synapse-only)
- **Device management** — create new devices, rename existing ones, bulk-remove selected devices
- **Allow cross-signing reset** — unblock a user’s cross-signing key reset
- **System-managed users filter** — hide or show bridge bots and appservice-managed accounts
- **User redaction with live status** — watch deletion progress in real time
- **Improved filters** — all boolean user filters now use nullable tri-state inputs

### Performance and internationalization

Translations are now lazy-loaded with per-locale code splitting — only the active language is downloaded, making the initial load faster for everyone. The `<html lang>` and `dir` attributes are set dynamically, enabling correct RTL rendering for Persian and other RTL languages.

Ketesa ships with full translations in English, German, French, Japanese, Russian, Persian, Ukrainian, Chinese, and Italian — every string is translated, with no untranslated stubs left behind.

### Scheduled tasks

View pending Synapse background tasks directly from the admin panel.

![Ketesa Scheduled Tasks](https://etke.cc/img/ketesa/scheduled-tasks.webp)

* * *

## How to migrate

If you are an etke.cc customer, you do not need to do anything — Ketesa will replace existing Synapse Admin on your server during the automatic maintenance process. Questions? Reach us via the Support section in Ketesa, or [contact us](https://etke.cc/contacts/).

Ketesa is a zero-configuration drop-in replacement for Synapse Admin.

| Method           | How                                                                                                                           |
|------------------|-------------------------------------------------------------------------------------------------------------------------------|
| **Hosted (CDN)** | Already migrated — [cloud.ketesa.app](https://cloud.ketesa.app) runs Ketesa                                                   |
| **Docker**       | Replace your image tag with `ghcr.io/etkecc/ketesa:latest`                                                                    |
| **Static files** | Download `ketesa.tar.gz` from [GitHub Releases](https://github.com/etkecc/ketesa/releases) and replace your `dist/` directory |

The legacy `cc.etke.synapse-admin` config key in `/.well-known/matrix/client` continues to work alongside the new `cc.etke.ketesa` key — existing deployments keep working without any changes.

[Learn more about Ketesa →](https://github.com/etkecc/ketesa)


---
* [llms.txt](https://etke.cc/llms.txt): full site index in markdown
