Wolfatek SUPERADMIN
…
Tenants
NameSlugConnectorWindowStatusPollingBranding
Loading…
Users
Email Name Role Tenant Status Digest
Loading…
SMTP & Morning Digest
— scheduler status —
User digest:
📲 Push Delivery — phone ringing
Loading…
Platform Settings
Loading…
Mailboxes
Email Display name Connector Tenant DepartmentOwner Status
Loading...
Global Analytics
Active Tenants
–
Total Users
–
Total Mailboxes
–
Total Analyses
–
Per-Tenant Breakdown
TenantMailboxesAnalysedLeadsPipeline (ZAR)Unattended
Loading…
Data Management
🗂 Reset mailbox data
Select mailbox
Wipes analysis records and audit log for one mailbox only. Mailbox credentials and config are untouched.
🏢 Reset tenant data
Select tenant
Wipes all analysis records and audit log for every mailbox in this tenant.
🔄 Reclassify Sender Types
Re-runs AI classification on all existing records that are still marked as unknown. Uses the stored subject & AI summary — no email re-fetch needed. Processes up to 200 records per run; click again if records remain.
🔗 Link Noise to Threads
Finds orphaned auto-reply, noise, and internal records (no thread link) and connects them to their thread primary via conversation_id — DB only, no email fetch.
Run this before re-assessing threads so the LLM sees the full conversation chronology, including OOO replies and internal notes.
🧠 Re-assess Threads
Re-runs the full thread intelligence assessment on thread primaries using data already in the DB — no email fetch required.
Open only (recommended) — skips threads already resolved or in a meeting, so correctly-closed threads are not disturbed. Use All threads only after prompt changes that should update resolved threads too.
🔄 Re-analyse Outbound Emails
Re-runs AI classification on stored outbound emails using the updated prompt logic. No Exchange connection needed — works entirely from saved email bodies. Use this after a prompt change to reclassify existing records.
Lookback window
Tenant (optional)
Mailbox (optional)
⚠️ Global reset
Wipes all analysis data across every tenant. Mailboxes, users and settings are not affected.
System Backgrounds

Upload background images available to all tenants. JPG, PNG and WebP supported — max 8 MB.

Upload System Background
🔌 Fintelligence — BI Connections

Configure the ERP/BI database connection for each tenant. Credentials are stored in the application database — never in config files.

Select Tenant
Active Sessions
Currently logged in
EmailTenantRole IP AddressLogged inUser Agent
Loading…
Login History
EmailTenantRole IP AddressLogged inLogged outDurationUser Agent
Select a filter or load history
🧠 Crystal Memories
ID Tenant About Memory Tier Expires Created
Select a tenant to load memories
🔧 Crystal Tools

Tools are loaded from this table at runtime — toggle or edit without redeploying. Disabled tools are hidden from Crystal's function-calling context.

Name Description Enabled On calls Approval
Loading…
🧪 Crystal Code Recipes

Reusable sandbox Python code recipes that Crystal has built or learned (`run_analysis_code`). Inspect, edit, add, or prune recipes.

Name Description Tags Uses Last Used Actions
Loading…
🎭 Crystal Persona Editor

Persona sections are assembled in sort_order to build Crystal's system prompt. Changes take effect on the next conversation turn — no restart required.

Her proposals

She reads every section as herself and proposes what to retire, merge or rewrite, with her reason. Nothing changes until you approve; an approval can be undone; a rejection asks why, and she is shown your reason at her next review.

Loading…
OrderKeyLabelChannelActiveSpokenActions
🧩 Product Term Map

Maps a customer's descriptive words to the catalogue code stems they refer to — so Crystal resolves "45cc open loop pump" or "orbital motor" into real products instead of dead-ending. Comma-separate multiple stems. Changes take effect on the next conversation — no restart needed.

Term (what a customer says)Expands to (stems)KindNoteActiveActions
💡 Self-Memory Vault

Crystal proposes behavioral and identity rules after complex interactions or creator conversations. Approve rules to make them permanent; reject to discard; or author/edit one directly.

🗄️ Brain — history & restore

Every change to what Crystal has learned — persona, self-rules, tool lessons, recipes, pathways, memories, helper rules, standing concerns — whoever made it, with the before and after. Undo any of it, compare any two points, or put her whole brain back to a snapshot or to just before a change. A restore always takes a snapshot first, so it can itself be undone.

Rules approved before this gate existed. She reads every live learned self-rule and says whether it makes her more careful (stays live) or gives her more licence (comes back here for you). You see her answer before anything moves.
Her tidy. Every Sunday she reads her live rules and proposes merging the ones that say the same thing and retiring the ones that are contradicted or no longer useful. Her proposals land here; nothing changes until you approve.
🧬 Crystal Learning

How Crystal is learning her own efficient paths. Manual = the operations you give her; Pathways = the efficient routes she distils from experience (a hint, never a script); Trajectories = the raw judged runs behind them.

Learned Pathways
Operational Manual (canonical operations)
Recent Trajectories (judged runs)
🔗 Company groups

Companies run by the same people. When a group is on, linked accounts can switch between its companies from their account menu, and every company in it uses the library owner's proposal library (blocks, price book, templates, track record). Proposals, projects and money stay with each company. A group does nothing while it is off — a client gets this only when you switch it on for them.

Loading…
🔑 Agent access (MCP)

An outside agent — such as the engineering assistant that builds this platform — connects at /api/mcp with its own token and uses Crystal's own tools, with the authority of the person it acts for, in that person's business. Anything that sends, pays, issues, publishes or needs approval is always refused; settings changes come back as proposals. Every call is logged here. You mint, scope, rotate and revoke the token — the agent never can.

Always refused, for every agent (…)
AgentBusiness · acts asTool familiesTokenLast usedCallsNotesStatusActions
Loading…
📮 Forwarding inbox

One catch-all mailbox for the whole platform. Each person gets a private Crystal address on this domain (in their profile); mail sent, forwarded or CC'd to it is routed to that person only — never by the From line. Only their own authenticated mail (checked by the stamp this server adds) can ask her to do anything; everything else is kept as information. It never sends.

📖 Crystal's manual

What Crystal tells people when they ask how do I… or where is…. Each entry is a page or a feature, in the customer's words, with a show me link that opens the page with the exact button highlighted. She only offers entries the person's plan and role can reach. The words are yours to edit; the route and anchor are checked against the pages on every deploy.

EntryKindForShow meOn
🎙️ Conversation tester

Pick a line and who is on it, give her the opening messages, and read exactly what she would say — through her real brain, before anyone real hears it. Nothing leaves: anything that would send, save, book or sign someone up is shown as not actually done, lookups run for real, and the conversation is deleted the moment it finishes. Every run is kept below, with the version it ran on, so you can read before and after a change.

Saved scenarios
New scenario
What she said
Run a scenario to read her replies here.
Recent runs
WhenScenarioLine · whoVersionResult
💰 Model costs

Every model call is priced at the rate below and charged to the business and person it was for. A call no rate matches is shown as unpriced — never as free — and a call made outside anyone's work as unattributed. A price change is a new rate with a later date, so past months keep the price that applied then.

BusinessCallsCost
What it was forCallsCost
PersonBusinessCost
ModelCallsCost
Rate card
Model patternFromInputCachedOutputAudio in / outCalls pricedStatusActions
US dollars per million tokens. Blank cached or audio rates use the input/output rate. The most specific pattern wins (*flash-lite* before *flash*).
📊 Sentience Logs
TimeChannelIntentToolsModelLatencyRouter bypassError
📞 Crystal Usage
UserTenantChannelsSessionsMessages First usedLast used
Loading…
📈 Platform Usage
TenantPlan ConversationsEmails analysedDrafts Closest to capCost to us
Loading…
Our own workspaces are shown and marked OURS — they are unmetered, not unmeasured, and leaving them out would hide the biggest consumer on the platform from our own cost picture.
🏷 Pricelists
Upload pricelist (Excel .xlsx)
The supplier label is stored as the item's brand. Re-uploading updates existing items by brand + SKU. Zero-priced rows are skipped. A summary appears after upload.
BrandSKUItemPriceCur
Select a tenant
📄 Product Knowledge
Upload datasheets (PDF)
The part/model number is auto-detected from the filename. Text is extracted for Crystal to reference.
Add manual note (researched text)
TitleModel hintChars
Select a tenant
📄 Document Templates
Templates
Editor
Merge Fields
🧾 Quote Letterhead
All settings below drive the generated quotation PDF for this tenant.
Company identity
Colours (this tenant only)
Logos & badges
Upload your designed letterhead banner. When set, it renders full-width across the top of every document (invoices, quotes, job docs) and email — and the logo + company-text block below are hidden. Leave empty to use the logo + details instead.
Offices
Directors (one per line)
Banking details
Quote terms & numbering
📑 Generated Quotes
Quote #CustomerTotalSourceCreated
Select a tenant
✉️ Crystal Responses
WhenFromSubjectCategoryDecisionQuote
Select a tenant
🏷️ Plans & Pricing

What the platform sells: a plan and a seat count. Personal and Family carry no modules — they get Crystal herself, memory, watch rules and multiple inboxes. Business unlocks the ERP. Blank ceiling = unlimited. Caps write into the quota gate when a tenant is provisioned. Crystal is premium — there is no free plan, so a plan cannot go Live at R 0.00.

🎟️ Trial Vouchers

A single-use code that lets somebody we know run Crystal for a fixed spell with no card and no auto-renewal. It simply stops at the end — nothing is charged and nothing is deleted. Not for the public: each code works once, and only for the plan it names.

Issue a voucher
Offer one over WhatsApp

Mints a voucher and sends it on the approved customer_notification_new template. Edit the wording however you like — the signup link is added automatically, so it can't be dropped or carried over from the last send. WhatsApp does not allow line breaks in a template, so this goes as one paragraph.

CodePlanRunForState Code expires
Loading…
Retention — trials past their 30 days

We tell a finished trial that their data is kept for 30 days. This is what has passed that point. Nothing is deleted automatically — an unattended bulk delete cannot be undone, so removal is a decision made here. A trial that ever paid us, or that is still serving, is refused outright and the reason is shown.

Not checked yet.
💲 Module Pricing

What each module SELLS for on the public signup page (/signup). A module appears publicly only when it is priced and ticked Live — nothing is offered at R0.00 by accident. Base price covers the included seats; extra users are charged per seat above that.

ModuleBase / monthIncl. seatsPer extra seat Free trial capPublic descriptionLive
Loading…
Price check
📝 Signups

A signup creates an application, never a tenant. Provision creates the tenant, enables the modules they bought (plus everything those depend on), creates their admin login and emails the credentials, and adds them as a billed customer on a monthly profile.

WhenCompanyContactModulesSeats BillingMonthlyStatus
Loading…