The AI assistant
What the dashboard's AI assistant does, which providers it runs on, who pays for each message, and what it can change.
For the Full Stack package
What it does
The assistant has its own page in the dashboard, AI Assistant. You ask in plain words, in English or Arabic, and it answers from the dashboard's own data:
- Figures and cards. User counts as the dashboard's stat tiles, the split of verified, unverified and deleted users as a donut, lists of people, and a user's profile card, each with a link to the screen it comes from.
- Charts. Sign-ups per day or per month as a bar or line chart, in the colour you ask for.
- Lookups. Find a user by name, email or username, list the newest sign-ups or the deleted users, list the admins with their roles, read the app settings.
- Changes. Create, edit, delete and restore users, and change an app setting.
- Images. Attach up to 6 images of up to 10 MB each, which the model reads.
Conversations are saved per admin and listed in a history sidebar, where they can be renamed, archived and deleted. The empty screen suggests questions about what your data holds right now, such as the unverified users or this week's sign-ups, and each answer can end with follow-up suggestions. Where the model thinks before answering, its reasoning shows in a panel you can open.
Providers and who pays
| Provider | Models in the picker |
|---|---|
| Google Gemini | Five Gemini models, Flash first; free keys work |
| OpenAI | Four GPT models; billing must be enabled on the key |
| DeepSeek | DeepSeek Flash |
- Each provider runs on a key the API holds, set by whoever installs the dashboard. Every message is billed to that key, at the provider's prices, unless the person has added their own key for that provider: their own key is always used first.
- A provider with no key on the server still works: the assistant asks each person for their own key for it. That key is kept in their browser only, sent with their own requests, and never saved or logged on the server.
- One key is enough: the picker lists every provider's models, and a model whose provider has no key asks for one when it is picked.
What it is allowed to do
- Using the assistant needs the
ai_chat.usepermission. Of the seeded roles, Super Admin, Admin, Manager and Editor have it; Viewer does not. - Every tool the assistant runs checks the signed-in admin's own permissions, the same ones the dashboard's routes check. An admin who may not delete users cannot have the assistant delete one, and the model is not even told about tools the admin may not use.
- A deleted user is soft deleted, as on the Users page, and can be restored.
Without keys
- With no key on the server, the assistant opens the key dialog: "The server has no key for this model's provider. Add your own API key to keep going."
- A key whose quota is used up answers that the model has no requests left, and suggests another model.
- On the built-in mock API, the assistant offers one model, Aniq Demo, and answers from the sample data with scripted replies, cards and a chart. It needs no provider and no key.
Keys and models
Included with your purchase. Sign in to read, or open it in your download.
The variable for each provider, the exact models in the picker, and how a request picks the key it bills.
Tools, prompts and widgets
Included with your purchase. Sign in to read, or open it in your download.
The assistant's 16 tools and the permission each needs, how its prompt is built, and the cards it draws.
The MCP server
Included with your purchase. Sign in to read, or open it in your download.
Connecting a coding agent or another MCP client to the dashboard's tools, and what that key allows.