DRUGPilot Administration
Admin Console
Manage members, online activity, and AI usage limits.
{{ message }}
Loading admin data…
Administrator sign-in
Sign in with an authorized administrator account.
Administrator access required
Current account: {{ user.email }}
Check your administrator access or sign out and use another account.
Back to workspaceTotal members
{{ number(data.stats.members) }}{{ number(data.stats.enabled) }} enabled
Online members
{{ number(data.stats.online) }}Signed-in members active in the last 2 minutes
Tokens today
{{ number(data.stats.used) }}{{ number(data.stats.reserved) }} reserved · {{ number(data.stats.estimated) }} estimated usage
AI calls today
{{ number(data.stats.calls) }}Includes analysis and comparison model calls
Traffic & feature usage
Page entries and run-button clicks, grouped by connection country. All periods use Taiwan time (UTC+8).
Loading analytics…
{{ metric.label }}
{{ number(analyticsTotals[metric.key]) }}Country breakdown
| Country | {{ metric.label }} | |||
|---|---|---|---|---|
| {{ countryName(row.code) }} | {{ number(row[metric.key]) }} | |||
| No activity recorded for this period and country. | ||||
Each home or workspace page entry counts, including guests, repeat visits, and reloads. These are not unique visitors. Clicks count the Search, Run batch analysis, and Generate comparison actions (including Enter); quick-search examples, tab changes, and individual model calls are excluded. Failed runs still count as clicks.
Tracking starts with this update; earlier activity is not reconstructed. First recorded event: {{ time(analytics.firstRecordedAt) }}. Country is estimated from the connection IP; VPNs and unknown locations may affect it. Full IP addresses are not stored in analytics.
Members
Manage member access and individual limits. New members are added when they sign in.
Check Admin access to allow a member to manage users, usage limits, and settings. Uncheck to revoke access. Changes save automatically. Your account and the initial administrator are protected.
| Member | Admin access | Role / status | Tokens today | Last active | Actions |
|---|---|---|---|---|---|
| {{ member.email }}{{ member.online ? '● Online' : 'Offline' }} | Protected administratorEnable and verify this member first | {{ member.role === 'admin' ? 'Administrator' : 'Member' }}{{ member.enabled ? 'Enabled' : 'Disabled' }} | {{ number(member.used) }}Limit {{ number(member.daily_limit ?? data.settings.dailyTokens) }} · Reserved {{ number(member.reserved) }} | {{ time(member.last_seen) }} | |
| No matching members. Try another search or import members with verified emails. | |||||
Recent usage
The latest 50 model calls. Tokens include input, output, and reasoning. Limits for {{ data.day }} reset at midnight, Taiwan time.
| Time / member | Feature / model | Input | Output | Total / status |
|---|---|---|---|---|
| {{ time(entry.created_at) }}{{ entry.email }} | {{ featureName(entry.feature) }}{{ entry.model }} | {{ entry.input_tokens === null ? '—' : number(entry.input_tokens) }} | {{ entry.output_tokens === null ? '—' : number(entry.output_tokens) }} | {{ number(entry.state === 'pending' ? entry.reserved : entry.tokens) }}{{ entry.state === 'pending' ? 'Reserved / pending' : entry.state === 'failed' ? 'Incomplete' : 'Completed' }}{{ entry.estimated ? ' · estimated usage' : '' }} |
| No usage recorded yet. Tracking starts when the admin service is enabled. | ||||
If a response is interrupted or usage data is missing, the reserved amount is counted to enforce the limit.
AI usage limits
Defaults apply to all members. Individual limits can override them.
Security & recovery
{{ data.security.emailConfigured ? 'Security email delivery is configured.' : 'Security email delivery needs a sending service. Alerts remain visible here.' }}
Latest encrypted backup: {{ data.security.backup ? JSON.parse(data.security.backup).completedAt : 'Not completed yet' }}
Events in the last hour
{{ event.kind }}: {{ number(event.count) }}
No security events recorded.
Recent alerts
- {{ alert.message }}
{{ time(alert.created_at) }} · {{ alert.sent_at ? 'Email accepted for delivery' : 'Pending email delivery' }}
Settings change history
The latest 20 administrative actions.
- {{ change.action === 'settings' ? 'Global settings' : change.action === 'import' ? 'Existing members' : change.target }} · {{ actionName(change.action) }}
{{ change.actor }} · {{ time(change.created_at) }}
View changes
{{ formatDetail(change.detail) }}
No administrative actions recorded yet.