Standalone
Agency-Admin Configuration
Panneau d'administration complet avec interface vitrée, gestion des joueurs, contrôles serveur, générateur.
v1.4.0Payant5 Pages

01Configuration
Installation rapide · config.lua · Agency-Admin
Config = {}
-- ┌─────────────────────────────────────────┐
-- │ GENERAL SETTINGS │
-- └─────────────────────────────────────────┘
Config.Locale = 'en' -- en | de | cs | esm | fr | it | nl | pl | pt | ro | ru | sv | tr
Config.Framework = 'auto' -- auto | qb | esx | ox | standalone
-- ┌─────────────────────────────────────────┐
-- │ COMMANDS & KEYBINDS │
-- └─────────────────────────────────────────┘
Config.Commands = {
Primary = 'aadmin',
Short = 'agencyadmin',
Tools = 'aa'
}
Config.Keybind = 'F10'
Config.ToolsKeybind = 'F9'
-- ┌─────────────────────────────────────────┐
-- │ PERMISSIONS │
-- └─────────────────────────────────────────┘
-- Permissions, Ranks & Staff Groups are managed
-- 100% in-game via Settings > Ranks & Permissions.
-- Data is stored in ranks_data.json (auto-migrated on first boot).
-- ┌─────────────────────────────────────────┐
-- │ NOTIFICATIONS │
-- └─────────────────────────────────────────┘
Config.Notifications = {
Duration = 8000,
Type = 'info',
UseAgencyNotify = true,
PlaySound = true
}
-- ┌─────────────────────────────────────────┐
-- │ ADMIN DUTY │
-- └─────────────────────────────────────────┘
Config.AdminDuty = {
Command = 'aaduty',
Model = 'mp_m_freemode_01',
NameTag = {
Enabled = true, -- Enable/disable nametags globally
OffsetZ = 1.15 -- Height above head (applies to all ranks)
},
-- Ranks, clothing and permissions are managed 100% in-game
-- via Settings > Ranks & Permissions. Data is stored in ranks_data.json.
}
-- ┌─────────────────────────────────────────┐
-- │ WEATHER │
-- └─────────────────────────────────────────┘
Config.WeatherTypes = {
'EXTRASUNNY', 'CLEAR', 'CLOUDS', 'OVERCAST',
'RAIN', 'THUNDER', 'CLEARING', 'SMOG',
'FOGGY', 'XMAS', 'SNOWLIGHT', 'BLIZZARD', 'SNOW'
}
-- ┌───────────────────────────────────────────────┐
-- │ AGENCY AI (Groq) https://groq.com/ │
-- └───────────────────────────────────────────────┘
Config.AgencyAI = {
Enabled = true,
ApiKey = '',
Model = '',
SystemPrompt = 'You are AgencyAI, a helpful assistant for FiveM server admins. Answer briefly and precisely.',
MaxTokens = 256
}
-- ┌─────────────────────────────────────────┐
-- │ DISCORD WEBHOOK LOG │
-- └─────────────────────────────────────────┘
-- Sends every admin action to a Discord channel via webhook.
Config.DiscordWebhook = {
Enabled = false,
Url = '', -- https://discord.com/api/webhooks/xxx/yyy
Username = 'Agency Admin',
AvatarUrl = 'https://i.imgur.com/DrIn7M6.png', -- optional avatar URL — must be a direct image URL (content-type image/*), not an album/page link
EmbedColor = 3447003, -- decimal color (3447003 = blue)
Title = '', -- embed title; leave empty to use localized default from locales/*.lua (webhook_title)
IncludeIdentifiers = true -- include steam/license/discord identifiers
}
-- ┌─────────────────────────────────────────┐
-- │ REPORTS INTEGRATION │
-- └─────────────────────────────────────────┘
Config.Reports = {
Enabled = true, -- master switch for the whole report system (player UI + admin UI)
MessageMaxLength = 500, -- max characters per chat message
ShowClosedDays = 30, -- reserved: future auto-hide of old closed reports
Commands = {
Submit = 'areport', -- player command: open the own-reports UI
AdminUI = 'areports' -- admin command: open Agency-Admin panel directly on the Reports tab
},
-- Categories shown in the player submit form (value goes into DB, label is shown).
Categories = {
{ value = 'vdm', label = 'VDM' },
{ value = 'rdm', label = 'RDM' },
{ value = 'failrp', label = 'FailRP' },
{ value = 'support', label = 'General Support' },
{ value = 'bug', label = 'Bug Report' },
{ value = 'other', label = 'Other' }
},
-- In-game notification behaviour for both players and admins.
Notifications = {
Duration = 8000,
Type = 'info',
UseAgencyNotify = true, -- fall back to Agency:Notify:Send event when framework notify unavailable
PlaySound = true
},
-- Per-report Discord webhook (new report, claim, close, delete). Optional
-- and separate from Config.DiscordWebhook (which logs admin-panel actions).
Discord = {
Enabled = false,
Webhook = {
Url = '',
MentionRoleId = '', -- Discord role ID to ping, leave empty to disable
Username = 'Agency Reports',
AvatarUrl = ''
},
Invite = {
Enabled = false, -- show a "copy invite" button in the player UI
Link = 'https://discord.gg/EECYq3XUsV'
}
},
-- AI-assisted drafting + in-chat replies. Disabled by default.
AI = {
Enabled = false,
Provider = 'groq', -- 'groq' (free) | 'openrouter'
ApiKey = '',
Endpoint = '', -- auto-filled based on Provider if empty
Model = '', -- auto-filled based on Provider if empty
Temperature = 0.4,
MaxTokens = 220,
SiteUrl = '', -- only used by OpenRouter
SiteName = 'Agency Reports',
SystemPrompt = 'You generate concise FiveM report drafts. Return strict JSON only: {"title":"...","description":"..."}.'
}
}
-- ┌─────────────────────────────────────────┐
-- │ INTERNAL (do not edit) │
-- └─────────────────────────────────────────┘
Config.Vehicles = Config.Vehicles or {}
Config.VehicleCards = Config.VehicleCards or Config.Vehicles
Config.Weapons = Config.Weapons or {}
Config.WeaponCards = Config.WeaponCards or Config.Weapons
Config.Peds = Config.Peds or {}
Config.PedCards = Config.PedCards or Config.Peds
Config.CustomPeds = Config.CustomPeds or {}
Config.Objects = Config.Objects or {}
-- =====================================================
-- Agency Companion app (iOS / Android) — admin on the go
-- =====================================================
-- ADMIN-ONLY pairing: the server only mints a QR for a player who currently
-- has panel access, and every command re-verifies the paired admin's rank +
-- permission LIVE server-side. The linked device inherits exactly the admin's
-- rights — nothing more. Writes require the admin to be in-game; monitoring
-- reads work while offline for rank-assigned / override admins.
Config.Companion = {
Enable = true, -- master toggle for pairing + relay
EnableRemote = true, -- allow paired devices to reach the panel via the relay
RelayUrl = 'https://api.agencyg.de', -- the Agency relay origin
TokenTTL = 300, -- seconds a QR / 6-digit code stays valid
}