Extend & deploy
Admin console & statistics
Deployment admins use Admin to watch usage, manage members and sign-up, install local engines, set mirrors and the outbound proxy, and back up data; everyone gets their own numbers in Statistics.
Interface version 1.9.8 · 2026-10-17
Admin in the sidebar is for deployment admins: how the whole backend runs, who can get in, which local engines are installed, where the money goes. Only deployment admins see it, and every admin endpoint on the backend checks for that role — a workspace admin doesn't count. On a single machine you are the deployment admin and nothing needs changing; these settings only need an owner once the backend is shared with teammates (see Remote deployment).
Admin has five tabs: Overview, Members, Cost rules, Engines, Deployment.
Overview#
Pick a range at the top: the last 7 / 30 / 90 days. Job activity and spend follow the range; accounts, workspaces and assets (across all workspaces) are current totals.

- Job activity: how many jobs ran each day and how many failed; days without jobs still get a slot.
- Who is spending: AI spend per person. Currencies are listed separately, never added up or converted; if usage didn't match any price rule this stays empty — fill in Cost rules.
Members#
- Accounts: who uses this deployment — member, role, last active, workspaces, and each one's client version (self-reported by the desktop app or the browser extension). Each row's ⋯ menu offers Make deployment admin, Remove deployment admin (keep one), or Delete account: it deletes that person and what only belongs to them — their conversations, their keys, their default models, and workspaces where they are the only member; workspaces with other people stay. It cannot be undone.
- Invites without a workspace: when self-serve signup is off, New invite lets someone into this deployment. You get a link (shown only this once — only a hash is stored); it's single-use and expires after 7 days, and the note is for you (who you sent it to). They open it, sign up and set their own password, then create a workspace or get added to one. If it went to the wrong person or got forwarded, Revoke it on its row. Rows are recognized by the last few characters. Invite codes sent before the upgrade are listed here too and keep working until they expire. With signup open, this section says no invites are needed.
- Awaiting your approval: invite links from workspace admins only bring people into the workspace. To let people without an account sign up with one, the workspace admin asks you to approve it — you get a notification, it's listed here with who sent it and the role, and Approve does it. Links you send yourself don't need approval.
To bring someone into a workspace, Settings → Team & members is the shortest way:
- Send an invite link: pick a role and send the link. Someone with an account joins right away when they open it and is switched to it (a toast says whose workspace it is and their role, with Undo); someone without an account signs up with it and becomes a member right away, without creating a workspace of their own first. Links are valid for 7 days, work once, are shown only when created, and can be revoked from the member list. Whether people without an account can sign up with it depends on the deployment: with signup open anyone can; otherwise links from a deployment admin can, and a workspace admin's link needs a deployment admin's approval (until then it only works for existing accounts).
- Invite by username: also works for existing accounts on this Mosael; they accept from their notifications.
Invitations that haven't been accepted or used yet (both kinds) are listed under the members and can be revoked.
When someone forgets their password#
-
A member forgot: choose Reset password in their row's ⋯ menu. Their current password and every signed-in session stop working right away, and a dialog shows a temporary password — shown only once, so copy it and hand it over; they change it in Settings → Account after signing in. Your own password is changed in Settings → Account, not here.
-
You are the only deployment admin and forgot yours: run one command on the computer that runs the backend (no need to quit the app first):
bash# Development (source checkout) cd backend && uv run python -m app.cli reset-password <username> # Installed app (macOS) /Applications/Mosael.app/Contents/Resources/backend/mosael-backend/mosael-backend reset-password <username>On Windows / Linux it lives under
resources/backend/mosael-backend/in the install folder (mosael-backend.exeon Windows). The command prints a temporary password to sign in with and then change; add--password <new password>to set one directly. It uses the same data folder as the backend (~/.mosaelby default, orMOSAEL_DATA_DIRif set); if you don't remember the username, enter any name and the command lists the accounts on this deployment.

Cost rules#
Price rules for models (per token, image, second or item, optionally with time-of-day prices) let Statistics and the task center add up AI spend. Only deployment admins can edit them; other members see spend computed from them. How rules work and where Prefill prices gets its numbers is covered in Model connections → Cost rules.
Engines#
The things that run locally — transcription, voice cloning, voice separation, noise reduction — need runtimes and model downloads of several GB, installed on the computer the backend runs on, so only deployment admins install them. Other members see "installed by a deployment admin" where they would need one (the transcript, the denoise dialog, subtitle dubbing).
- Download sources: which mirrors packages come from. Dependency source (pip index) serves the local engines' Python dependencies — each pulls 2–3 GB, and the official PyPI is often too slow from mainland China; npm registry serves plugins that install npm packages (such as Remotion). A plugin connection can pick its own; otherwise it follows these. The last row, Model download source (HF mirror, HuggingFace, ModelScope), is where model weights come from: voice cloning, local NSFW detection and the local ComfyUI that Mosael starts all use it.
- Transcription models: runtimes and models for FunASR, sherpa-onnx and WhisperX. After Install runtime, an engine becomes selectable under Settings → Capability providers → Transcription. FunASR and sherpa-onnx run the same SenseVoice model (FunASR on torch, sherpa-onnx on ONNX): the latter installs no torch and carries ~230 MB of weights instead of ~900 MB, so it installs and starts far faster — the price is no speaker diarisation, so pick FunASR to tell speakers apart. FunASR is still the default.
- Voice cloning: runtime and weights for local cloning (F5-TTS, Fish Speech); weights come from the Model download source above.
- Voice and background separation: Demucs. A long asset takes many minutes on a CPU.
- Noise reduction: the built-in method needs nothing; DeepFilterNet downloads once here (about 30 MB); RNNoise ships with the app.

"Installed" here means the engine was actually loaded once, not that a folder exists; an interrupted install reports an incomplete runtime, and installing again fills in what is missing.
Deployment#
- Who can join: with Open self-serve signup on, anyone who can reach this backend can create an account; turn it off as soon as a deployment is public and send invites instead. With it off, third-party sign-in such as Google or Apple can't create new accounts either.
- Web address: where members open Mosael in a browser (e.g.
https://studio.example.com). When set, invite links include a web version — the person may not have the app yet; leave it empty on a single-user desktop install, and invites carry only the desktop app link. - Shared folders: when other members read local files on this computer (a workflow's file-upload node, importing by path) they can only read inside these folders; deployment admins aren't limited. See Remote deployment.
- Outbound proxy: the proxy URL and Bypass hosts (one per line). AI provider requests and subscription sign-in go through it; loopback calls never do. The embedded browser isn't affected (publishing accounts set their own proxy), and a plugin connection can choose follow, direct or its own proxy under Network.
- Internal network access: the workflow HTTP request node, the agent's page fetches and requests, and import from link may
reach only the public internet by default — loopback, private network and cloud metadata addresses are blocked before anything is
sent, and the error says which entry to add. To allow one, Add address here: one host name, IP or CIDR range, where host names and
IPs may carry a port to allow only that port, such as
127.0.0.1:11434(a local Ollama),nas.localor10.0.0.0/8. The check is on the IP the name resolves to, repeated for every redirect. The desktop app works the same way, loopback included — importing someone else's template is just as common there. Plugins' own network access and result addresses returned by providers are not covered by it. - AI runtime: Max retries (0–10, default 3). Every AI call retries with exponential backoff on 429, 5xx and connection failures.
- Data & diagnostics: Full backup saves the database, media (including fonts and avatars), plugins and the local secret key (logs, exports and model caches are left out); Restore from backup validates the archive format, file checksums and database integrity before replacing local data and restarting; the Diagnostic bundle exports versions, system info and the redacted tail of the logs — no database, media or keys — to attach when you report a problem.

Statistics#
Statistics in the sidebar is for everyone and covers the data you can see. It has three tabs; the range is the last 7 / 30 / 90 days (30 by default), every block that follows it says "last N days", and projects, assets, sequences and workflows are current totals.

- Overview: projects, assets, sequences, workflows, running jobs, and AI spend, completed jobs and publishes over the last N days; charts for job activity and asset mix.
- Publishing: publishing activity and the platform mix.
- AI usage: AI spend (per day and per provider; each currency is charted on its own, with a switch), tokens and cache hit rate. When some usage is unpriced, deployment admins can click through to add the missing cost rules.





