Full example
Complete XLQP Gen1 example with the AI agent, current controls, grids, nested tabs, media, and optional key system.
Full example
This is the supplied current example, published without code comments and connected to the official XLQP Gen1 loader. The input filename says v26; its own branding and runtime notification identify the example as AI Agent v28.
Download the full example or copy it below. The same loader URL continues to serve the updated source.
Before running
The script demonstrates many systems at once, including the AI agent, controls, charts, media, navigation, option grids, and element grids. Start with the parts you need. Provider requests depend on the selected AI service and network availability.
The key gate is disabled by default through UseKeySystem = false. Set it to true and configure your own key or provider before distributing a gated interface. A note about key expiry is display text; expiry must be enforced by your validator or provider.
The supplied example sends demonstration prompts and changes the agent to Read only after three seconds. Read AI agent for controller methods and Key system for the new gate.
local XLQP = loadstring(game:HttpGet("https://raw.githubusercontent.com/josediaz765/XLQP-UIS/main/xlqp%20gen1"))()
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local UseKeySystem = false
local Window = XLQP:CreateWindow({
Branding = {
Name = "XLQP Gen1",
SubName = "AI Agent v28",
Icon = "sparkles",
Tags = {
{Text = "AI", Variant = "New"},
{Text = "v28", Variant = "Beta"}
},
IntroText = "XLQP Gen1",
IntroIcon = "sparkles"
},
Config = {
Enabled = true,
Folder = "XLQPGen1Example"
},
Appearance = {
NewUI = true,
Shiny = true,
BigUI = false,
LiquidGlass = true,
AutoResizeText = true,
CornerRadius = 12,
ShowTabInfo = true,
ColorfulTabs = true,
SidebarWidth = 190,
SidebarCollapsedWidth = 64,
Size = UDim2.fromOffset(720, 460),
Font = "Gotham",
LiveColor = false,
LiveColorTheme = "Aurora",
LiveColors = {Color3.fromRGB(90, 140, 255), Color3.fromRGB(170, 90, 255), Color3.fromRGB(40, 220, 160)},
LiveColorSpeed = 1,
RainbowUpdateRate = 30,
LiveColorRotation = 45,
LiveColorTransparency = 0,
LiveColorBackground = false,
LiveColorElements = false,
LiveColorFolder = "XLQPGen1Example/LiveColors",
LiveColorScriptsEnabled = false,
BackgroundEnabled = false,
BackgroundLink = "rbxassetid://8834748103",
BackgroundTransparency = 0.6,
BackgroundScaleType = Enum.ScaleType.Crop,
GifBackgroundUrl = "",
GifBackgroundEnabled = false,
GifBackgroundTransparency = 0.6,
ResizeHandle = true,
CustomCursor = false,
DecorationsEnabled = false,
DecorationStyle = "Crystal Sparkles",
DecorationLink = "",
WindowDesignsEnabled = false,
WindowDesignStyle = "Corners",
BetaButtonsList = false,
Widgets = false,
TabListSpacing = 4,
StatusBar = true,
UIShadow = true
},
Loading = {
IntroEnabled = true,
IntroText = "XLQP Gen1",
IntroIcon = "sparkles",
IntroSubtitle = "Starting the AI agent",
IntroAccentColor = Color3.fromRGB(90, 140, 255),
IntroDuration = 1.2,
LoadingProgress = true,
FastLoad = true,
AutoInit = false,
Delay = 0.1,
ReadyQuietTime = 0.08,
LoadTimeout = 20,
MinimumVisibleTime = 0.1,
PerformanceMode = true,
BuildFrameBudget = 0.004,
BuildBatchMinOps = 8
},
Behavior = {
ToggleKey = Enum.KeyCode.RightShift,
UnlockMouse = true,
Guide = false,
AutoStartGuide = false,
EditableAllElements = false
},
Navigation = {
Enabled = true,
Tabs = {"AI", "Controls", "Text", "Data"},
SidebarTab = false,
SidebarWidth = 190,
SidebarCornerRadius = 12,
TabListGap = 6,
QuickMenuGap = 8,
Logo = "sparkles",
TabList = {
Detached = false,
Width = 190,
CornerRadius = 12,
Gap = 6,
QuickMenuGap = 8,
Logo = "sparkles"
}
},
Typewriter = {
Enabled = false,
Multiple = false,
Text = "XLQP Gen1",
Speed = 0.05,
SoundDelay = 0.05,
Sound = false,
Pitch = 1
},
Discord = {
Enabled = false,
Invite = "QEW8ap3MuV",
InviteUrl = "https://discord.gg/QEW8ap3MuV",
AuthEnabled = false,
AutoStartAuth = false,
PollInterval = 2,
Timeout = 120,
Whitelist = {}
},
Security = {
AntiLogger = true,
Mode = "Better",
DiscordWebhookWhitelist = {}
},
KeySystem = UseKeySystem and {
Enabled = true,
Title = "XLQP Gen1",
Description = "Enter your key to continue",
Note = "Keys reset every 24 hours",
Key = {"XLQP-EXAMPLE-KEY"},
SaveKey = true,
FileName = "XLQPGen1ExampleKey",
URL = "https://example.com/getkey"
} or nil,
Setup = {
Enabled = false
},
Search = {
Enabled = true
},
SaveUIPosition = true,
SaveUISize = true,
TabButtonsStyle = {
Gap = 4,
Padding = 8,
CornerRadius = 6,
Indicator = true,
IndicatorWidth = 2,
IndicatorHeight = 20
},
KeybindPanel = false,
PrivateTabs = false,
ShowIcon = true,
CenterOnOpen = true,
AlwaysOnTop = false,
BlurEnabled = false,
GlowEnabled = false,
GlowColor = Color3.fromRGB(90, 140, 255),
GlowSpeed = 1,
RainbowOutline = false,
Haptics = true,
InterfaceScale = 1,
ScaleEngine = true,
AdaptiveSizing = true,
AdaptiveSizingMargin = 24,
ElementCornerRadius = 10,
RichText = true,
ReduceLag = false,
AntiIdleGuard = true,
PluginsEnabled = false,
PluginsFolder = "XLQPGen1Example/Plugins",
Theme = "Plant-Dark",
CloseCallback = function()
print("XLQP Gen1 closed")
end
})
local AI = Window:CreateTab({
Name = "AI",
Icon = "sparkles",
Group = "Assistant",
GroupIcon = "bot",
TabColor = Color3.fromRGB(90, 140, 255),
LayoutOrder = 1
})
local Agent = AI:CreateTextbox({
Name = "XLQP Agent",
Ai = true,
Gui = true,
Height = 620,
PermissionMode = "Ask first",
Effort = "Balanced",
AgentPlanner = true,
WorkspaceTools = true,
ShowContextDetails = false,
MultilineInput = false,
Placeholder = "Ask the agent anything...",
LayoutOrder = 1,
PromptTransform = function(prompt, textbox)
return prompt
end,
OnResponse = function(response, provider, prompt, textbox)
print("Agent replied with", provider, #tostring(response), "characters")
end
})
AI:AddXLQPGen1AI({
Name = "XLQP Gen1 AI Chat",
Height = 420,
Ai = true,
Gui = true,
UltraAI = false,
ultraai = false,
LayoutOrder = 2
})
AI:AddTextbox({
Name = "Plain Textbox",
Title = "Plain Textbox",
Text = "Plain Textbox",
Default = "Hello world",
Placeholder = "Type here...",
Flag = "PlainTextbox",
Save = false,
Locked = false,
Callback = function(text)
print("Textbox:", text)
end
})
AI:AddTextArea({
Name = "Notes",
Title = "Notes",
Content = "Write multi line notes",
Description = "Write multi line notes",
Default = "",
Placeholder = "Start typing...",
Height = 140,
Callback = function(text)
print("Notes:", text)
end
})
local Controls = Window:CreateTab({
Name = "Controls",
Icon = "sliders-horizontal",
Group = "Elements",
GroupIcon = "layout-grid",
LayoutOrder = 2
})
Controls:AddButton({
Name = "Button",
Title = "Button",
Flag = "Button",
Icon = "mouse-pointer-click",
Image = "rbxassetid://8834748103",
Locked = false,
Callback = function()
print("Button pressed")
end
})
Controls:AddButton({
Text = "Func Button",
Func = function()
print("Func button pressed")
end
})
Controls:AddButton({
Title = "Function Button",
Function = function()
print("Function button pressed")
end
})
Controls:AddButton({
Name = "Universal Element Properties",
Callback = function()
print("Universal properties button")
end,
Tag = {Text = "NEW", Variant = "New"},
Tags = {
{Text = "BETA", Variant = "Beta"},
{Text = "INFO", Variant = "Info", Position = "Bottom"}
},
TagPosition = "Right",
TagOffset = 8,
TagGap = 4,
TagHeight = 20,
TagAnchorY = 0.5,
TagZIndex = 12,
Style = {
BackgroundColor = Color3.fromRGB(28, 30, 40),
BackgroundTransparency = 0.1,
CornerRadius = 10,
StrokeColor = Color3.fromRGB(90, 140, 255),
StrokeThickness = 1,
StrokeTransparency = 0.4,
TitleColor = Color3.fromRGB(235, 238, 245),
DescriptionColor = Color3.fromRGB(160, 165, 180),
TitleSize = 15,
Font = Enum.Font.GothamBold,
Height = 44
},
TextColor = Color3.fromRGB(235, 238, 245),
CursorGlow = true,
Moveable = true,
LockedTo = {LocalPlayer.UserId},
LockReason = "This element is locked.",
Premium = false,
LiveColor = false,
LiveColorTheme = "Ocean Pulse",
LiveColorSpeed = 1,
ConfigCloud = true,
ConfigCloudKey = "UniversalButton",
ConfigCloudProfile = "Main",
ConfigCloudTitle = "Universal Button",
ConfigCloudAutoSend = false,
ConfigCloudInterval = 60
})
local MainToggle = Controls:AddToggle({
Name = "Toggle",
Title = "Toggle",
Icon = "zap",
IconSize = 18,
Default = false,
Color = Color3.fromRGB(90, 140, 255),
Flag = "MainToggle",
Save = true,
Locked = false,
Image = "rbxassetid://8834748103",
Checkbox = false,
Binded = true,
DefaultBind = "Q",
Settings = true,
Callback = function(value)
print("Toggle:", value)
end
})
Controls:AddToggle({
Name = "Checkbox Toggle",
Text = "Checkbox Toggle",
Default = true,
Checkbox = true,
ImageIcon = true,
ImageId = "rbxassetid://8834748103",
Callback = function(value)
print("Checkbox toggle:", value)
end
})
Controls:AddSmoothToggle({
Name = "Smooth Toggle",
Title = "Smooth Toggle",
Description = "Animated switch with live colors",
Content = "Animated switch with live colors",
Default = true,
Color = Color3.fromRGB(90, 140, 255),
LiveColor = true,
livecolor = true,
LiveColorTheme = "Galaxy",
LiveColors = {Color3.fromRGB(90, 140, 255), Color3.fromRGB(220, 90, 255)},
LiveColorSpeed = 1,
Save = false,
Locked = false,
Flag = "SmoothToggle",
Callback = function(value)
print("Smooth toggle:", value)
end
})
Controls:AddCheckbox({
Name = "Checkbox",
Text = "Checkbox",
Description = "Standalone checkbox",
Desc = "Standalone checkbox",
Content = "Standalone checkbox",
Default = false,
CurrentValue = false,
Value = false,
Disabled = false,
Color = Color3.fromRGB(90, 140, 255),
Locked = false,
Save = false,
Flag = "Checkbox",
Callback = function(value)
print("Checkbox:", value)
end
})
Controls:AddSlider({
Name = "Slider",
Title = "Slider",
Text = "Slider",
Description = "Classic number slider",
Content = "Classic number slider",
Min = 0,
Max = 100,
Increment = 1,
Rounding = 0,
Default = 50,
ValueName = "%",
Suffix = "%",
Color = Color3.fromRGB(90, 140, 255),
Color2 = Color3.fromRGB(170, 90, 255),
Flag = "Slider",
Save = true,
Locked = false,
Input = true,
input = true,
TextBox = true,
Smooth = true,
DisplayFormattedInput = true,
FormatValue = "{value}/{max}",
ParseValue = function(text)
return tonumber((tostring(text):gsub("[^%d%.%-]", "")))
end,
Callback = function(value)
print("Slider:", value)
end
})
local EffortStops = {
{Name = "Instant", Value = "Instant", Description = "Quick answers"},
{Name = "Balanced", Value = "Balanced", Description = "Default speed"},
{Name = "Deep", Value = "Deep", Description = "Thinks longer"}
}
local EffortStyle = {
Height = 74,
TrackHeight = 16,
FullWidth = true,
ValuePosition = "TopRight",
KnobWidth = 30,
KnobHeight = 30
}
local EffortPlugin = {
Build = function(context, value, parameter, index)
print("Slider plugin built", value)
end,
Changed = function(context, value, parameter, index)
print("Slider plugin changed", value)
end,
DragStart = function(context)
print("Slider drag start")
end,
DragEnd = function(context)
print("Slider drag end")
end
}
Controls:AddSlider({
Name = "Effort Slider",
Description = "Slider with named stops",
Parameters = EffortStops,
Points = EffortStops,
Stops = EffortStops,
Modes = EffortStops,
Default = "Balanced",
ShowDots = true,
ParameterArrow = true,
ShowParameterDescription = true,
DotSize = 5,
ActiveDotSize = 8,
KnobWidth = 30,
KnobHeight = 26,
Preset = "Compact",
StylePreset = "Compact",
AllowSmall = false,
AllowMini = false,
Style = EffortStyle,
CustomStyle = EffortStyle,
FormatParameter = function(value, index, parameter)
return parameter.Name
end,
Plugin = EffortPlugin,
CustomPlugin = EffortPlugin,
SliderPlugin = EffortPlugin,
Callback = function(value, parameter, index)
print("Effort:", value, parameter and parameter.Name, index)
Agent:SetEffort(value)
end
})
Controls:AddCustomSlider({
Name = "Custom Slider",
Min = 1,
Max = 10,
Increment = 0.5,
Default = 5,
Callback = function(value)
print("Custom slider:", value)
end
})
Controls:AddDropdown({
Name = "Dropdown",
Title = "Dropdown",
Text = "Dropdown",
Options = {"Alpha", "Beta", "Gamma"},
Default = "Alpha",
Flag = "Dropdown",
Save = true,
Locked = false,
Image = "rbxassetid://8834748103",
Search = true,
Fill = true,
FillColor = Color3.fromRGB(90, 140, 255),
FillTransparency = 0.85,
Outline = true,
OutlineColor = Color3.fromRGB(90, 140, 255),
MaxElements = 6,
MaxVisible = 6,
Callback = function(value)
print("Dropdown:", value)
end
})
Controls:AddDropdown({
Name = "Multi Dropdown",
Options = {"Speed", "Jump", "Fly", "Noclip"},
Default = {"Speed"},
MultiSelect = true,
SelectAllButtons = true,
InitialCallback = false,
AdvancedDrop = true,
advanceddrop = true,
Advanced = true,
Callback = function(values)
print("Multi dropdown:", values)
end
})
Controls:AddDropdown({
Name = "Player Dropdown",
Players = true,
players = true,
player = true,
Whitelist = true,
whitelist = true,
PVP = false,
pvp = false,
Callback = function(player)
print("Player dropdown:", player)
end
})
Controls:AddDropdown({
Name = "Font Dropdown",
Options = {"Gotham", "Arial", "SourceSans", "Code"},
Default = "Gotham",
FontPreview = true,
PreviewFonts = true,
Callback = function(font)
print("Font:", font)
end
})
Controls:AddColorpicker({
Name = "Colorpicker",
Default = Color3.fromRGB(90, 140, 255),
Flag = "Colorpicker",
Save = true,
Locked = false,
Image = "rbxassetid://8834748103",
Alpha = 0,
Live = true,
LiveDelay = 0.05,
ThemePicker = false,
Callback = function(color)
print("Color:", color)
end
})
Controls:AddColorpicker({
Name = "Gradient Colorpicker",
Gradient = true,
Default = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 80, 120)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(90, 140, 255))
}),
Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(1, 0.2)
}),
Rotation = 90,
Callback = function(sequence, transparency)
print("Gradient:", sequence, transparency)
end
})
Controls:AddBind({
Name = "Keybind",
Default = Enum.KeyCode.K,
Type = "Bind",
Hold = false,
MenuVisible = true,
Flag = "Keybind",
Save = true,
Locked = false,
Image = "rbxassetid://8834748103",
UIBind = false,
Callback = function()
print("Keybind pressed")
end
})
Controls:AddKeyPicker({
Name = "Hold Key Picker",
Default = Enum.KeyCode.LeftAlt,
Hold = true,
MenuVisible = true,
Flag = "HoldKeyPicker",
Save = false,
Locked = false,
Image = "rbxassetid://8834748103",
UIBind = false,
Callback = function(held)
print("Key picker:", held)
end
})
Controls:AddCommandBar({
Name = "Command Bar",
Placeholder = "Type a command...",
ButtonText = "Run",
Default = "",
Callback = function(command)
print("Command:", command)
end
})
Controls:AddStepper({
Name = "Stepper",
Min = 0,
Max = 10,
Increment = 1,
Default = 3,
Callback = function(value)
print("Stepper:", value)
end
})
Controls:AddRadioGroup({
Name = "Radio Group",
Title = "Radio Group",
Options = {"One", "Two", "Three"},
Values = {"One", "Two", "Three"},
Default = "One",
Flag = "RadioGroup",
Save = false,
Callback = function(value)
print("Radio:", value)
end
})
Controls:AddSegmentedControl({
Name = "Segmented Control",
Title = "Segmented Control",
Options = {"Clean", "Glass", "Debug"},
Values = {"Clean", "Glass", "Debug"},
Default = "Glass",
Flag = "Segmented",
Save = false,
Callback = function(value)
print("Segment:", value)
end
})
Controls:AddRating({
Name = "Rating",
Title = "Rating",
Max = 5,
Default = 4,
Value = 4,
Color = Color3.fromRGB(255, 200, 60),
AllowClear = true,
Flag = "Rating",
Save = false,
Callback = function(stars)
print("Rating:", stars)
end
})
Controls:AddQuickToggleRow({
Name = "Quick Toggle Row",
Options = {"Clean", "Glass", "Debug"},
Items = {},
Default = "Clean",
Callback = function(option, enabled)
print("Quick toggle:", option, enabled)
end
})
Controls:AddMiniButtons({
Name = "Mini Buttons",
Buttons = {
{Name = "Start", Callback = function() print("Start") end},
{Name = "Stop", Callback = function() print("Stop") end},
{Name = "Reset", Callback = function() print("Reset") end}
}
})
Controls:AddActionRow({
Name = "Action Row",
Outline = true,
OutlineColor = Color3.fromRGB(90, 140, 255),
Buttons = {
{Name = "Run", Callback = function() print("Run") end},
{Name = "Reset", Callback = function() print("Reset") end}
}
})
Controls:AddCooldownButton({
Name = "Cooldown Button",
Description = "Can only be pressed every 5 seconds",
Desc = "Can only be pressed every 5 seconds",
ButtonText = "Use",
ActionText = "Using...",
CooldownText = "Wait",
Duration = 5,
Cooldown = 5,
Color = Color3.fromRGB(90, 140, 255),
StartOnClick = true,
AutoStart = false,
Callback = function()
print("Cooldown used")
end,
Completed = function()
print("Cooldown finished")
end
})
Controls:AddCopyButton({
Name = "Copy Button",
Title = "Copy Button",
Description = "Copies the place id",
Desc = "Copies the place id",
ContentDescription = "Place id",
Value = tostring(game.PlaceId),
TextToCopy = tostring(game.PlaceId),
Content = tostring(game.PlaceId),
Text = tostring(game.PlaceId),
Icon = "copy",
Locked = false,
Disabled = false,
Callback = function(text)
print("Copied:", text)
end
})
Controls:AddFlipButton({
Name = "Front side",
Text = "Front side",
Front = "Front side",
Back = "Back side",
SecondText = "Back side",
BackText = "Back side",
Locked = false,
Disabled = false,
Callback = function(isBack)
print("Flipped:", isBack)
end
})
Controls:AddRippleButton({
Name = "Ripple Button",
Text = "Ripple Button",
Description = "Button with a ripple effect",
Desc = "Button with a ripple effect",
RippleColor = Color3.fromRGB(90, 140, 255),
Locked = false,
Disabled = false,
Callback = function()
print("Ripple pressed")
end
})
local TextTab = Window:CreateTab({
Name = "Text",
Icon = "type",
Group = "Elements",
GroupIcon = "layout-grid",
LayoutOrder = 3
})
TextTab:AddLabel({
Name = "Label",
Text = "<b>Rich</b> label text",
Content = "<b>Rich</b> label text",
RichText = true,
IsRich = true,
Size = 15,
TextSize = 15,
Wrap = true,
DoesWrap = true,
Visible = true,
Icon = "info",
Image = "rbxassetid://8834748103",
Font = "Gotham",
BackgroundTransparency = 0.15,
TextXAlignment = Enum.TextXAlignment.Left,
TextYAlignment = Enum.TextYAlignment.Center
})
TextTab:AddParagraph({
Name = "Paragraph",
Title = "Paragraph",
Content = "A basic paragraph with <font color='#5A8CFF'>rich text</font>.",
Desc = "A basic paragraph",
RichText = true,
IsRich = true,
Color = Color3.fromRGB(90, 140, 255),
Locked = false
})
TextTab:AddParagraph({
Name = "Image Paragraph",
Content = "Paragraph with an image on the left",
image = true,
Image = "rbxassetid://8834748103",
ImageId = "rbxassetid://8834748103",
ImageSize = 64,
ImagePosition = "left",
ImageCorner = true,
ImageTransparency = 0,
TextOffset = 0,
Hover = true,
IsButtons = false
})
TextTab:AddParagraph({
Name = "Profile Paragraph",
Content = "Shows your avatar headshot",
UserProfile = LocalPlayer.UserId,
Thumbnail = "rbxassetid://8834748103",
ThumbnailSize = 120,
ThumbnailPosition = "top"
})
TextTab:AddParagraph({
Name = "Discord Paragraph",
Content = "Join the Discord server",
discordpar = "QEW8ap3MuV",
DiscordPar = "QEW8ap3MuV",
DiscordInvite = "QEW8ap3MuV",
OpenMode = "Browser",
DiscordOpenMode = "Browser",
RememberOpenMode = true,
DontAskAgain = false
})
TextTab:AddParagraph({
Name = "Collapsible Paragraph",
Content = string.rep("This paragraph can be opened and closed. ", 8),
Openable = true,
OpenA = true,
opena = true,
Collapsible = true,
MaxHeight = 480
})
TextTab:AddParagraph({
Name = "Icon Text Paragraph",
Content = "Title with colored icon words",
custom = true,
texticon = true,
name = {"AI", "Agent"},
color = "blue"
})
TextTab:AddParagraph({
Name = "Plain Paragraph",
Content = "Paragraph without a card background",
NoCard = true,
nocard = true,
Card = false,
card = false,
Style = "plain"
})
TextTab:AddCode({
Name = "Code",
Title = "Code",
Language = "luau",
Height = 160,
CodeHeight = 160,
Content = "local XLQP = loadstring(game:HttpGet(url))()\nprint(XLQP)",
Code = "local XLQP = loadstring(game:HttpGet(url))()\nprint(XLQP)",
Desc = "Example code block"
})
TextTab:AddBadge({
Name = "Badge",
Text = "Online",
Content = "Online",
Color = Color3.fromRGB(40, 220, 150)
})
TextTab:AddBanner({
Name = "Banner",
Title = "Banner",
Content = "Banner with a background image",
Description = "Banner with a background image",
Height = 140,
Image = "rbxassetid://8834748103",
BackgroundImage = "rbxassetid://8834748103",
ImageTransparency = 0.15,
ShadeTransparency = 0.35,
Icon = "sparkles",
Actions = {
{Name = "Open", Text = "Open", Icon = "external-link", ShowText = true, Width = 90, Callback = function() print("Banner open") end},
{Name = "Star", Icon = "star", IconOnly = true, Callback = function() print("Banner star") end}
},
ActionCallback = function(action)
print("Banner action:", action)
end,
Callback = function()
print("Banner clicked")
end
})
TextTab:AddNotice({
Name = "Notice",
Text = "This is a notice",
Content = "This is a notice",
Color = Color3.fromRGB(255, 200, 60)
})
TextTab:AddInfoCard({
Name = "Info Card",
Content = "Cards show quick information",
Description = "Cards show quick information",
Icon = "info",
Image = "rbxassetid://8834748103",
Color = Color3.fromRGB(90, 140, 255)
})
TextTab:AddStatusBox({
Status = "success",
Title = "Success",
Content = "Everything loaded"
})
TextTab:AddStatusBox({
Variant = "error",
Name = "Error",
Description = "Something failed"
})
TextTab:AddStatusBox({
Kind = "warning",
Text = "Warning",
Message = "Be careful with this option"
})
TextTab:AddStatusBox({
Type = "neutral",
Icon = "info",
Title = "Information",
Content = "Neutral information box",
Height = 76
})
TextTab:AddStatusDot({
Name = "Status Dot",
Content = "Connected",
Description = "Connected",
Color = Color3.fromRGB(40, 220, 150)
})
TextTab:AddCopyBox({
Name = "Copy Box",
Content = "XLQP-EXAMPLE-KEY",
Text = "XLQP-EXAMPLE-KEY",
Callback = function(text)
print("Copied:", text)
end
})
TextTab:AddChecklist({
Name = "Checklist",
Items = {
{Text = "Loaded", Checked = true},
{Text = "Ready", Checked = false}
},
Callback = function(item, checked)
print("Checklist:", item, checked)
end
})
local TimelineItems = {
{Title = "Boot", Description = "Started", Time = "Now", Color = Color3.fromRGB(73, 230, 150)},
{Title = "Agent", Description = "Agent ready", Time = "+1s"}
}
TextTab:AddTimeline({
Name = "Timeline",
Color = Color3.fromRGB(90, 140, 255),
Items = TimelineItems,
Logs = TimelineItems
})
TextTab:AddKeyValueList({
Name = "Key Value List",
Items = {
{Key = "Status", Value = "Ready"},
{Key = "Version", Value = "28"}
}
})
TextTab:AddFilterList({
Name = "Filter List",
Placeholder = "Filter actions...",
Height = 180,
Items = {
{Name = "Refresh", Description = "Refresh data", Callback = function() print("Refresh") end},
{Name = "Rejoin", Description = "Rejoin the server", Callback = function() print("Rejoin") end}
},
Callback = function(item)
print("Filter list:", item)
end
})
TextTab:AddToastAction({
Name = "Toast Action",
Content = "Shows a notification",
Description = "Shows a notification",
ButtonText = "Show",
Notification = "Toast",
NotifyText = "Toast action fired",
Image = "rbxassetid://8834748103",
Time = 4,
Callback = function()
print("Toast action")
end
})
TextTab:AddNotify({
Name = "Notify",
Content = "Sends a notification",
Description = "Sends a notification",
ButtonText = "Notify",
Time = 4,
Seconds = 4,
NotifyName = "XLQP Gen1",
NotifyContent = "Hello from the notify element",
Image = "rbxassetid://8834748103",
Icon = "bell",
Pos = "TopRight",
Buttons = {
{Name = "OK", Callback = function() print("Notify OK") end}
},
Callback = function()
print("Notify sent")
end
})
TextTab:AddShortcutHint({
Name = "Shortcut Hint",
Key = "RightShift",
Bind = "RightShift",
Content = "Toggle the UI",
Description = "Toggle the UI"
})
TextTab:AddTagCloud({
Name = "Tag Cloud",
Height = 90,
TagWidth = 96,
Tags = {
{Text = "UI", Color = Color3.fromRGB(90, 140, 255)},
{Text = "AI"},
{Text = "Agent"}
},
Items = {}
})
TextTab:AddPillList({
Name = "Pill List",
Height = 60,
Width = 320,
Items = {
{Text = "Ready", Color = "Green"},
{Text = "Beta", Color = "Purple"}
},
Tags = {}
})
TextTab:AddChangelog({
Name = "Changelog",
Content = "Version 28",
Height = 160,
Logs = {"Added full configuration reference", "Improved examples"},
Items = {}
})
TextTab:AddChangelogParagraph({
Name = "Changelog Paragraph",
Title = "Version 28",
Content = "What changed",
Description = "What changed",
Desc = "What changed",
RichText = true,
Color = Color3.fromRGB(90, 140, 255),
Accent = Color3.fromRGB(90, 140, 255),
Entries = {
{Text = "Added agent planner", Description = "Multi step tasks", Tag = {Text = "NEW", Variant = "New"}},
{Text = "Fixed workspace tools", Tag = {Text = "FIX", Variant = "Updated"}}
},
Logs = {},
Items = {},
Callback = function(entry)
print("Changelog entry:", entry)
end
})
TextTab:AddLog({
RichText = true,
IsRich = true,
DoesWrap = true,
Size = 14
})
TextTab:AddPinnedList({
Name = "Pinned List",
Title = "Pinned List",
PinnedTitle = "Pinned",
Items = {
{Name = "Speed", Description = "Walk speed", Icon = "zap", Pinned = true},
{Name = "Jump", Description = "Jump power", Icon = "arrow-up"}
},
Callback = function(item, pinned)
print("Pinned:", item, pinned)
end
})
TextTab:CreateFAQ({
Name = "FAQ",
Exclusive = true,
AllowMultiple = false,
AnimationTime = 0.2,
QuestionSize = 14,
AnswerSize = 12,
Gap = 6,
RichText = true,
DefaultOpen = 1,
OpenItem = 1,
OpenFirst = true,
Items = {
{Question = "What is XLQP Gen1?", Answer = "A Roblox UI library with an AI agent."},
{Question = "How do I toggle it?", Answer = "Press RightShift."}
},
Callback = function(item, open)
print("FAQ:", item, open)
end
})
TextTab:AddScrollHint({
Name = "Scroll Hint",
Text = "Scroll for more",
Icon = "chevrons-down",
ScrollAmount = 200,
AutoScroll = false,
AutoStart = false,
Callback = function()
print("Scroll hint")
end
})
TextTab:AddCursorTag({
Name = "Cursor Tag",
Text = "Hover me",
Hint = "This follows your cursor",
Height = 40,
Color = Color3.fromRGB(90, 140, 255),
TextColor = Color3.fromRGB(255, 255, 255),
OffsetX = 14,
OffsetY = 14,
Icon = "mouse-pointer",
IconSize = 14,
Callback = function()
print("Cursor tag")
end
})
local Data = Window:CreateTab({
Name = "Data",
Icon = "chart-line",
Group = "Elements",
GroupIcon = "layout-grid",
LayoutOrder = 4
})
Data:AddStatCard({
Name = "Stat Card",
Value = 128,
Description = "Requests today",
Desc = "Requests today"
})
Data:AddStat({
Name = "Animated Stat",
Value = 1500,
Delta = "+12%",
Change = "+12%",
Duration = 1,
Prefix = "",
Suffix = " pts",
Decimals = 0,
Image = "rbxassetid://8834748103",
Icon = "trophy",
Callback = function(value)
print("Stat:", value)
end
})
Data:AddRevenueCard({
Name = "Revenue Card",
Value = 2450,
StartValue = 0,
Prefix = "$",
Suffix = "",
Decimals = 0,
Change = "+12%",
Trend = "+12%",
Color = Color3.fromRGB(40, 220, 150),
Duration = 1,
Image = "rbxassetid://8834748103",
Icon = "dollar-sign",
MiniStats = {
{Name = "Health", Value = "100 HP", Change = "+5", Color = Color3.fromRGB(40, 220, 150)}
},
Stats = {
{Name = "FPS", Value = 144, Change = "+12"}
},
Items = {},
Actions = {
{Name = "Copy Value", Icon = "copy", Callback = function() print("Copy value") end}
},
Chart = {Points = {10, 18, 14, 24, 30}},
Callback = function(value)
print("Revenue:", value)
end
})
Data:AddChart({
Name = "Line Chart",
Prefix = "",
PointPrefix = "",
Suffix = " fps",
PointSuffix = " fps",
LabelPrefix = "",
Decimals = 0,
Color = Color3.fromRGB(90, 140, 255),
Filled = true,
Smooth = true,
Dots = true,
MaxPoints = 20,
Height = 160,
Duration = 0.4,
Animate = true,
Points = {60, 58, 62, 61, 59, 60},
Data = {60, 58, 62, 61, 59, 60},
Value = 60,
Image = "rbxassetid://8834748103",
Icon = "activity",
Callback = function(value)
print("Chart:", value)
end,
PointCallback = function(point)
print("Chart point:", point)
end
})
local BarPoints = {
{Label = "Mon", Value = 12},
{Label = "Tue", Value = 18},
{Label = "Wed", Value = 9}
}
Data:AddBarChart({
Name = "Bar Chart",
Prefix = "",
Suffix = "",
Decimals = 0,
Color = Color3.fromRGB(170, 90, 255),
Height = 160,
Duration = 0.4,
MaxBars = 8,
Animate = true,
Points = BarPoints,
Data = BarPoints,
Image = "rbxassetid://8834748103",
Icon = "chart-column",
Callback = function(value)
print("Bar chart:", value)
end,
PointCallback = function(point)
print("Bar:", point)
end
})
Data:AddStackedChart({
Name = "Stacked Chart",
Prefix = "",
Suffix = "",
Decimals = 0,
Duration = 0.4,
Height = 180,
Animate = true,
Series = {"Wins", "Losses"},
Rows = {
{Name = "Week 1", Values = {5, 2}},
{Name = "Week 2", Values = {7, 1}}
},
Data = {
{Name = "Week 1", Values = {5, 2}},
{Name = "Week 2", Values = {7, 1}}
},
Colors = {Color3.fromRGB(42, 220, 166), Color3.fromRGB(245, 105, 120)},
Image = "rbxassetid://8834748103",
Icon = "chart-bar-stacked",
Callback = function(row)
print("Stacked:", row)
end
})
Data:AddProgressBar({
Name = "Progress Bar",
Value = 40,
Default = 40,
Min = 0,
Max = 100,
Color = Color3.fromRGB(90, 140, 255),
Description = "Read only progress",
Desc = "Read only progress"
})
Data:CreateProgressBar({
Name = "Read Only Progress",
Text = "Read Only Progress",
Description = "Formatted read only bar",
Desc = "Formatted read only bar",
Min = 0,
Max = 100,
Value = 65,
CurrentValue = 65,
Default = 65,
Prefix = "",
Suffix = "%",
Color = Color3.fromRGB(40, 220, 150),
Color2 = Color3.fromRGB(90, 140, 255),
Format = function(value, max, percent, bar)
return tostring(math.floor(value)) .. " / " .. tostring(max)
end,
ValueText = "{value} / {max} ({percent}%)",
TweenTime = 0.25,
Callback = function(value)
print("Read only progress:", value)
end
})
Data:AddProgress({
Name = "Progress",
Description = "Animated progress",
Desc = "Animated progress",
Min = 0,
Max = 100,
Value = 0,
CurrentValue = 0,
Progress = 0,
Default = 0,
Prefix = "",
Suffix = "%",
ValueName = "%",
Decimals = 0,
Color = Color3.fromRGB(90, 140, 255),
Color2 = Color3.fromRGB(170, 90, 255),
TweenTime = 0.25,
AnimationTime = 0.25,
Icon = "loader",
Image = "rbxassetid://8834748103",
DownloadTime = 5,
AutoStart = true,
Save = false,
Flag = "Progress",
Callback = function(value)
print("Progress:", value)
end,
Completed = function()
print("Progress completed")
end
})
Data:AddDownloadProgress({
Name = "Download Progress",
Icon = "download",
Min = 0,
Max = 100,
Suffix = "%",
Description = "Fake download",
Desc = "Fake download",
AutoStart = true,
Duration = 6,
DownloadTime = 6,
Completed = function()
print("Download completed")
end,
Cancelled = function()
print("Download cancelled")
end
})
Data:AddCountdown({
Name = "Countdown",
Title = "Countdown",
Content = "Event starts in",
Description = "Event starts in",
Color = Color3.fromRGB(90, 140, 255),
ShowDays = false,
Duration = 60,
Seconds = 60,
Time = 60,
AutoStart = true,
OnTick = function(remaining)
print("Countdown:", remaining)
end,
Callback = function()
print("Countdown callback")
end,
OnFinished = function()
print("Countdown finished")
end
})
Data:AddClock({
Name = "Clock",
Format = "%I:%M:%S %p",
Description = "Local time"
})
Data:AddPlayerCount({
Name = "Player Count",
Description = "Players in this server"
})
Data:AddMeterGroup({
Name = "Meter Group",
Color = Color3.fromRGB(90, 140, 255),
Items = {
{Name = "CPU", Value = 42, Min = 0, Max = 100},
{Name = "Memory", Value = 68, Max = 100, Color = Color3.fromRGB(170, 90, 255)}
}
})
Data:AddRuntimeMonitor({
Name = "Runtime Monitor",
Interval = 1,
AutoStart = true,
Metrics = {"FPS", "Ping", "Memory", "Players"},
Provider = function(monitor)
return {Players = #Players:GetPlayers()}
end
})
Data:AddDataTable({
Name = "Data Table",
Searchable = true,
SearchPlaceholder = "Search players...",
EmptyText = "No players found",
Height = 200,
RowHeight = 34,
Columns = {
{Name = "Player", Key = "Player", Width = 1.7},
{Name = "User ID", Key = "UserId", Width = 1}
},
Rows = {
{Player = LocalPlayer.Name, UserId = LocalPlayer.UserId}
},
Callback = function(row)
print("Data table:", row)
end
})
Data:AddTableContents({
Name = "Table Contents",
Title = "Table Contents",
Description = "Simple key value table",
Content = "Simple key value table",
Height = 150,
RowHeight = 34,
Columns = {
{Name = "Key", Key = "Key", Width = 140},
{Name = "Value", Key = "Value", Width = 180}
},
Rows = {
{Key = "Status", Value = "Ready"},
{Key = "Agent", Value = "Online"}
},
Values = {}
})
local CardItems = {
{Title = "Card A", Content = "First card", Image = "rbxassetid://8834748103", ButtonText = "Open", Color = Color3.fromRGB(90, 140, 255)},
{Name = "Card B", Description = "Second card", ButtonText = "Open"},
{Title = "Card C", Desc = "Third card", Callback = function() print("Card C") end}
}
Data:AddCards({
Name = "Cards",
Title = "Cards",
ShowTitle = true,
Columns = 2,
CardHeight = 110,
Items = CardItems,
Cards = CardItems,
Callback = function(card)
print("Card:", card)
end
})
Data:AddProfileCards({
Name = "Profile Cards",
Title = "Profile Cards",
ShowTitle = true,
Columns = 2,
Players = false,
LoadServer = false,
AutoRefresh = false,
Items = {
{Name = LocalPlayer.Name, DisplayName = LocalPlayer.DisplayName, UserId = LocalPlayer.UserId, Subtitle = "Local player", Color = Color3.fromRGB(90, 140, 255), Tag = {Text = "YOU", Variant = "Info"}}
},
Profiles = {
{Name = LocalPlayer.Name, DisplayName = LocalPlayer.DisplayName, UserId = LocalPlayer.UserId, Subtitle = "Local player", Color = Color3.fromRGB(90, 140, 255), Tag = {Text = "YOU", Variant = "Info"}}
},
Callback = function(profile)
print("Profile:", profile)
end
})
Data:AddLoadoutGroup({
Name = "Loadout",
Title = "Loadout",
Color = Color3.fromRGB(90, 140, 255),
Font = "Gotham",
ButtonText = "Equip",
Items = {
{Name = "Health", Icon = "shield"},
{Name = "Guard", Icon = "activity"},
{Name = "Charge", Icon = "zap", Color = Color3.fromRGB(255, 200, 60)}
},
Icons = {
{Name = "Health", Icon = "shield"},
{Name = "Guard", Icon = "activity"},
{Name = "Charge", Icon = "zap", Color = Color3.fromRGB(255, 200, 60)}
},
OnSelect = function(item)
print("Loadout selected:", item)
end,
OnEquip = function(item)
print("Loadout equipped:", item)
end,
EquipCallback = function(item)
print("Loadout equip callback:", item)
end,
Callback = function(item)
print("Loadout:", item)
end
})
Data:AddFriends({
Name = "Friends",
Color = Color3.fromRGB(90, 140, 255),
Height = 160,
ExpandedHeight = 320,
Columns = 4,
ViewAll = true,
AutoRefresh = false,
RefreshRate = 30,
Callback = function(player)
print("Friend:", player)
end
})
local Layout = Window:CreateTab({
Name = "Layout",
Icon = "layout-dashboard",
Group = "Elements",
GroupIcon = "layout-grid",
LayoutOrder = 5
})
local Section = Layout:AddSection({
Name = "Section",
Title = "Section",
Subtitle = "Sections can collapse",
Description = "Sections can collapse",
Desc = "Sections can collapse",
Collapsible = true,
Open = true,
DefaultOpen = true,
Color = Color3.fromRGB(90, 140, 255),
Callback = function(open)
print("Section open:", open)
end
})
Layout:AddBoxSection({
Name = "Box Section",
Title = "Box Section",
Content = "Boxed section header",
Description = "Boxed section header",
DefaultOpen = true
})
Layout:AddDivider({
Name = "Divider"
})
Layout:AddSpace(12)
Layout:AddSpacer({
Size = 12,
Height = 12
})
local DependentBox = Layout:AddDependencyBox({
Name = "Dependency Box",
BackgroundTransparency = 0.82,
Dependency = MainToggle,
Element = MainToggle,
Value = true,
Equals = true,
Operator = "==",
Predicate = function(value)
return value == true
end,
Invert = false,
Mode = "All",
DefaultVisible = false
})
DependentBox:AddLabel({Text = "Only visible while the Controls toggle is on"})
Layout:AddDependencyBox({
Name = "Multi Dependency Box",
Dependencies = {
{Element = MainToggle, Value = true},
{Dependency = MainToggle, Equals = false, Operator = "!=", Invert = false},
{Element = MainToggle, Predicate = function(value) return value == true end}
},
Mode = "Any",
DefaultVisible = false
}):AddLabel({Text = "Visible when any rule passes"})
local Panel = Layout:AddDropdownPanel({
Name = "Dropdown Panel",
Title = "Dropdown Panel",
Open = false
})
Panel:AddToggle({Name = "Inside Panel", Default = false, Callback = function(value) print("Panel toggle:", value) end})
local MiniTabs = Layout:AddMiniTab({
Name = "Mini Tabs",
Title = "Mini Tabs",
Position = UDim2.new(1, -380, 0, 82),
Side = "Left",
Color = Color3.fromRGB(90, 140, 255),
IconSize = 18,
CellSize = 42,
Gap = 6,
Height = 200,
Width = 320,
ShowText = true,
Fill = true,
LayoutOrder = 1,
Tabs = {
{Name = "Home", Title = "Home", Icon = "home"},
{Name = "Settings", Title = "Settings", Icon = "settings", Badge = "2"}
},
Items = {},
Callback = function(tab)
print("Mini tab:", tab)
end
})
local ExtraMini = MiniTabs:AddTab({Name = "Extra", Icon = "plus"})
ExtraMini:AddLabel({Text = "Mini tab page"})
local SubTabs = Layout:AddSubTabs({
Name = "Sub Tabs",
Title = "Sub Tabs",
Height = 220,
Gap = 6,
ButtonHeight = 34,
Accent = Color3.fromRGB(90, 140, 255),
Color = Color3.fromRGB(90, 140, 255),
Fill = true,
Callback = function(tab)
print("Sub tab:", tab)
end
})
local SubMain = SubTabs:AddTab({
Name = "Main",
Icon = "home",
Width = 110,
TabAccent = Color3.fromRGB(90, 140, 255),
BackgroundColor = Color3.fromRGB(28, 30, 40),
BackgroundImage = "rbxassetid://8834748103",
ImageColor = Color3.fromRGB(255, 255, 255),
ImageTransparency = 0.82
})
SubMain:AddLabel({Text = "Sub tab content"})
local SubOther = SubTabs:AddTab({Name = "Other", Icon = "circle"})
SubOther:AddButton({Name = "Sub tab button", Callback = function() print("Sub tab button") end})
Layout:AddSubTab({
Name = "Auto Sub Tab",
Icon = "layers",
Height = 160,
TabAccent = Color3.fromRGB(170, 90, 255),
Color = Color3.fromRGB(170, 90, 255)
}):AddLabel({Text = "Created with AddSubTab"})
Layout:AddOptionGrid({
Name = "Option Grid",
Title = "Option Grid",
Icon = "grid-3x3",
HeaderIcon = "grid-3x3",
SettingsIcon = "settings",
ShowHeaderIcon = true,
ShowSettingsButton = true,
ShowSettingsSummary = true,
Height = 260,
Custom = false,
Width = 500,
Rows = true,
Multi = false,
MultiSelect = false,
CardWidth = 88,
CardHeight = 88,
Spacing = 6,
Columns = 0,
Default = "speed",
Value = "speed",
Flag = "OptionGrid",
Save = false,
Options = {
{
Name = "Speed",
Value = "speed",
Image = "rbxassetid://8834748103",
Elements = {
{Type = "Slider", Config = {Name = "WalkSpeed", Min = 16, Max = 100, Default = 16, Callback = function(value) print("WalkSpeed:", value) end}}
}
},
{
Name = "Jump",
Value = "jump",
Build = function(api)
api:AddToggle({Name = "Infinite Jump", Default = false, Callback = function(value) print("Infinite jump:", value) end})
end
},
{Name = "Locked", Value = "locked", Disabled = true}
},
Callback = function(value)
print("Option grid:", value)
end
})
Layout:AddElementGrid({
Name = "Element Grid",
Title = "Element Grid",
Height = 220,
Custom = false,
Width = 500,
Rows = true,
Columns = 3,
CellWidth = 180,
CellHeight = 64,
Spacing = 8,
AutoHeight = true,
MinHeight = 120,
MaxHeight = 400,
Elements = {
{Type = "Button", Config = {Name = "Grid Button", Callback = function() print("Grid button") end}},
{Type = "Toggle", Config = {Name = "Grid Toggle", Default = false, Callback = function(value) print("Grid toggle:", value) end}},
{Type = "Badge", Config = {Name = "Grid Badge", Text = "Grid"}}
}
})
local LeftGroup = Layout:AddLeftGroupbox({
Name = "Left Group",
Title = "Left Group",
Icon = "box",
Image = "box",
Pin = true,
Pinnable = true,
Popout = true,
PopOut = true,
Detachable = true,
Dockable = true,
DockResizable = true,
DockSnapDistance = 110,
DockHoldTime = 0.08,
DockDragThreshold = 8,
DockClampToScreen = true,
Pinned = false,
PopoutHeight = 480,
Height = 480,
PopoutWidth = 360,
Width = 360,
PopoutPosition = UDim2.new(1, -380, 0, 82),
Detached = false,
StartDetached = false
})
LeftGroup:AddToggle({Name = "Groupbox Toggle", Default = false, Callback = function(value) print("Groupbox toggle:", value) end})
local RightGroup = Layout:AddRightGroupbox({
Name = "Right Group",
Title = "Right Group",
Icon = "box",
Pin = true,
Pinnable = true,
Popout = true,
PopOut = true,
Detachable = true,
Dockable = true,
DockResizable = true,
DockSnapDistance = 110,
DockHoldTime = 0.08,
DockDragThreshold = 8,
DockClampToScreen = true,
DockWidth = 360,
DockHeight = 420,
DockMinWidth = 220,
DockMinHeight = 220,
DockMaxWidth = 760,
DockMaxHeight = 720,
Pinned = false,
PopoutHeight = 480,
Height = 480,
PopoutWidth = 360,
Width = 360,
PopoutPosition = UDim2.new(1, -380, 0, 82),
Detached = false,
StartDetached = false
})
RightGroup:AddSlider({Name = "Groupbox Slider", Min = 0, Max = 10, Default = 5, Callback = function(value) print("Groupbox slider:", value) end})
Layout:SetColumnRatio(0.5)
local LeftTabbox = Layout:AddLeftTabbox({
Name = "Left Tabbox",
Title = "Left Tabbox",
TabSize = 42,
ButtonHeight = 42,
Height = 260,
Icon = "layout-grid",
IconOnly = false
})
local TabboxMain = LeftTabbox:AddTab({Name = "Main", Icon = "home"})
TabboxMain:AddLabel({Text = "Tabbox page"})
local TabboxIcon = LeftTabbox:AddTab({Name = "Icon", Icon = "star", IconOnly = true, ShowText = false, Width = 42, ButtonWidth = 42})
TabboxIcon:AddButton({Name = "Tabbox button", Callback = function() print("Tabbox button") end})
local RightTabbox = Layout:AddRightTabbox({
Name = "Right Tabbox",
Title = "Right Tabbox",
TabSize = 42,
ButtonHeight = 42,
Height = 260,
Icon = "layout-grid",
IconOnly = false
})
RightTabbox:AddTab({Name = "Info", Icon = "info"}):AddLabel({Text = "Right tabbox page"})
local QuickMenu = Layout:AddRightSidebarMenu({
Name = "Quick Menu",
Title = "Quick Menu",
Icon = "panel-right",
MinWidth = 220,
MinHeight = 200,
MaxWidth = 680,
MaxHeight = 760,
Width = 300,
Height = 360,
Side = "Right",
Resizable = true,
Gap = 8,
DimBackground = false,
CloseOnOutside = true,
Transparency = 0.05,
CornerRadius = 12,
MatchWindowHeight = true,
Open = false,
DefaultOpen = false
})
Layout:AddLeftSidebarMenu({
Name = "Left Quick Menu",
Title = "Left Quick Menu",
Icon = "panel-left",
MinWidth = 200,
MinHeight = 180,
MaxWidth = 520,
MaxHeight = 640,
Width = 260,
Height = 320,
Side = "Left",
Resizable = true,
Gap = 8,
DimBackground = true,
CloseOnOutside = true,
Transparency = 0.05,
CornerRadius = 12,
MatchWindowHeight = false,
Open = false,
DefaultOpen = false
})
Layout:AddButton({
Name = "Toggle Quick Menu",
Callback = function()
if QuickMenu then
QuickMenu.Toggle()
end
end
})
Layout:AddKeybindList({
Name = "Keybind List",
Title = "Keybind List",
Icon = "keyboard",
Width = 260,
Height = 236,
Position = UDim2.new(1, -380, 0, 82),
Detached = false,
DockHeight = 236,
Pin = true,
Pinnable = true,
Popout = true,
PopOut = true,
Detachable = true,
PopoutPosition = UDim2.new(1, -380, 0, 82),
LayoutOrder = 1,
StartDetached = false
})
local Media = Window:CreateTab({
Name = "Media",
Icon = "image",
Group = "Elements",
GroupIcon = "layout-grid",
LayoutOrder = 6
})
Media:AddImage({
Name = "Image",
Image = "rbxassetid://8834748103",
Asset = "",
Height = 160,
Transparency = 0,
BackgroundTransparency = 0.15,
Color = Color3.fromRGB(255, 255, 255),
ScaleType = Enum.ScaleType.Crop
})
Media:AddVideo({
Name = "Video",
Video = "",
Asset = "",
Height = 180,
Looped = true,
Volume = 0.5
})
Media:AddViewport({
Name = "Viewport",
Object = LocalPlayer.Character,
Model = LocalPlayer.Character,
Instance = LocalPlayer.Character,
Height = 220,
Interactive = true,
AutoFocus = true,
Visible = true,
Clone = true,
BackgroundTransparency = 0.15,
Camera = Instance.new("Camera")
})
Media:AddPlayerVisualizer({
Name = "Player Visualizer",
Height = 240,
Player = LocalPlayer,
UserId = LocalPlayer.UserId,
Username = LocalPlayer.Name,
Boxes = true,
LiveColor = false,
LiveColorTheme = "Cyber",
LiveColors = {Color3.fromRGB(90, 140, 255), Color3.fromRGB(40, 220, 160)},
LiveColorSpeed = 1,
BoxCallback = function(enabled, player, box)
print("Visualizer box:", enabled, player and player.Name, box and box.Name)
end,
Callback = function(...)
print("Visualizer:", ...)
end
})
Media:AddNametags({
Name = "Nametags",
Content = "Custom player nametags",
Description = "Custom player nametags",
Default = false,
Open = false,
ShowHealth = true,
ShowDistance = true,
ShowDecimal = false,
ShowTeam = false,
Color = Color3.fromRGB(90, 140, 255),
CustomName = "Example",
PreviewName = "Example",
Health = 100,
PreviewMaxHealth = 100,
UseDisplayName = false,
MaxDistance = 1000,
Height = 240,
IncludeLocalPlayer = false,
TeamCheck = false,
FadeWithDistance = true,
NameFunction = function(player)
return player.DisplayName
end,
Format = function(player, info)
return info.Name .. " [" .. tostring(math.floor(info.Health or 0)) .. "]"
end,
Callback = function(enabled)
print("Nametags:", enabled)
end
})
Media:AddDrawingGrid({
Name = "Drawing Grid",
Height = 220,
Columns = 16,
Rows = 16,
CellWidth = 12,
BoxWidth = 12,
CellHeight = 12,
BoxHeight = 12,
Boxes = true,
BrushSize = 1,
Color = Color3.fromRGB(90, 140, 255),
Callback = function(grid)
print("Drawing grid:", grid.Tool, grid.Boxes)
end
})
Media:AddMediaPlayer({
Name = "Media Player",
Default = "",
Pitch = 1,
AutoPlay = false,
Loop = true,
Visualizer = true,
VisualizerHeight = 150,
VisualizerBars = 64,
NotifySupport = false,
Playlist = {
{Name = "Roblox", Url = "rbxassetid://1843529631"}
},
Callback = function(state)
print("Media player:", state)
end
})
Media:AddBytebeat({
Name = "Bytebeat",
Default = "t*(t>>5|t>>8)",
Mode = "Bytebeat",
DefaultPreset = "Classic",
Playlist = {
{Name = "Classic", Mode = "Bytebeat", Code = "t*(t>>5|t>>8)"},
{Name = "Pulse", Mode = "Bytebeat", Code = "t*(t>>7&t>>12)", Hz = 8000, Volume = 0.6},
{Name = "Float Soft", Mode = "Floatbeat", Code = "sin(t/18)*0.7+sin(t/53)*0.25", Channels = 2, Looped = true}
},
Visualizer = true,
VisualizerHeight = 150,
VisualizerBars = 64,
MaxSeconds = 300,
MaxDuration = 300,
MaxHz = 96000,
Hz = 22050,
HzIncrement = 50,
Seconds = 30,
Duration = 30,
Pitch = 1,
Speed = 1,
Volume = 0.5,
Looped = true,
Cache = true,
FrameBudget = 0.004,
WriteBlock = 4096,
Callback = function(state)
print("Bytebeat:", state)
end
})
Media:AddDiscordImg({
Name = "Discord",
Invite = "QEW8ap3MuV",
InviteCode = "QEW8ap3MuV",
discordpar = "QEW8ap3MuV",
Content = "Join our Discord",
OpenMode = "Browser",
RememberOpenMode = true,
DontAskAgain = false
})
Media:AddSoccer({
Name = "Soccer",
Height = 260,
RefreshTime = 60,
League = "Premier League",
Leagues = {
["Premier League"] = "eng.1",
["La Liga"] = "esp.1",
["MLS"] = "usa.1"
},
LeagueOrder = {"Premier League", "La Liga", "MLS"},
AutoRefresh = false,
AutoLoad = false,
ShowLogos = true,
Callback = function(match)
print("Soccer:", match)
end
})
local PassFrame = Instance.new("Frame")
PassFrame.Size = UDim2.new(1, 0, 1, 0)
PassFrame.BackgroundColor3 = Color3.fromRGB(90, 140, 255)
PassFrame.BackgroundTransparency = 0.6
Media:AddPassthrough({
Name = "Passthrough",
Height = 80,
Instance = PassFrame
})
local UIPassFrame = Instance.new("TextLabel")
UIPassFrame.Size = UDim2.new(1, 0, 1, 0)
UIPassFrame.BackgroundTransparency = 1
UIPassFrame.Text = "Your own GuiObject"
UIPassFrame.TextColor3 = Color3.fromRGB(255, 255, 255)
Media:AddUIPassthrough({
Name = "UI Passthrough",
Height = 60,
Instance = UIPassFrame
})
local Advanced = Window:CreateTab({
Name = "Advanced",
Icon = "terminal",
Group = "Tools",
GroupIcon = "wrench",
LayoutOrder = 7
})
local ConsoleLines = {
{Level = "Log", Text = "Console initialized"},
{Level = "Code", Text = "print('hello')"}
}
local Console = Advanced:AddDebugConsole({
Name = "Debug Console",
Title = "Debug Console",
Height = 220,
MaxLines = 200,
TextSize = 13,
AutoScroll = true,
CaptureOutput = false,
CaptureRoblox = false,
Default = ConsoleLines,
Lines = ConsoleLines,
Messages = ConsoleLines,
OnLog = function(entry)
return entry
end,
Callback = function(entry)
print("Console:", entry)
end
})
Advanced:AddExecutor({
Name = "Executor",
Default = "print(game.PlaceId)",
Height = 260,
TextSize = 15,
MetaTextSize = 13,
TitleTextSize = 18,
Callback = function(code)
local fn = loadstring(code)
if fn then
fn()
end
end
})
Advanced:AddGameSession({
Name = "Game Session",
Height = 260,
HistoryLimit = 20,
HistoryFile = "XLQPGen1Example/history.json",
AutoExecute = false,
AutoReExecute = false,
AutoExecuteSource = false,
ReExecuteSource = false,
QueueSource = "",
AutoExecuteUrl = "",
ReExecuteUrl = "",
SourceUrl = "",
AutoExecFile = false,
AutoExecuteFile = false,
AutoExecFolder = "XLQPGen1Example/autoexec",
AutoExecName = "XLQPGen1Example.lua",
SupportedGameIds = {game.PlaceId},
GameIds = {game.GameId},
Games = {game.PlaceId},
IdType = "Place",
MaxPlayers = 50,
OnJoin = function()
print("joined")
end,
OnRejoin = function()
print("rejoined")
end,
OnServerHop = function()
print("server hop")
end,
OnLeave = function()
print("leaving")
end
})
Advanced:AddGlobalChat({
Name = "Global Chat",
Height = 320,
RefreshTime = 2,
BotId = "1351947660151750759",
BotID = "1351947660151750759",
AppId = "XLQPGen1Example",
Rules = "Be respectful. No spam or personal information.",
SendCooldown = 1,
ReportCooldown = 5,
NotifyPos = "TopLeft",
Pos = "TopLeft",
MaxMessageLength = 350,
MessageLength = 350,
PVP = false,
pvp = false,
ShowTimestamps = true,
SoundOnMessage = false,
FastUpdates = false,
SystemId = "XLQPGen1Example",
ConversationFile = "XLQPGen1Example/chat_dms.json",
DisclaimerFile = "XLQPGen1Example/chat_disclaimer.json",
DisclaimerText = "Messages are public. Do not share personal information.",
Limit = 50,
MessageSoundId = 0,
MessageSoundVolume = 0.5
})
Advanced:AddScriptHub({
Name = "Script Hub",
Height = 320,
Icon = "search",
Description = "Search ScriptBlox",
Collapsed = false,
MaxResults = 10,
Mode = "free",
Patched = false,
Key = false,
Universal = false,
Verified = true,
SortBy = "updatedAt",
Order = "desc",
Strict = false,
Owner = "",
PlaceId = game.PlaceId,
ImageCacheFolder = "XLQPGen1Example/ScriptBloxImages"
})
Advanced:AddPlugins({
Name = "Plugins",
Folder = "XLQPGen1Example/Plugins",
AutoLoad = false,
AllowRemote = false,
AllowInline = true,
SaveInline = false,
RemotePlugins = {},
URLs = {},
NameTextbox = "Plugin name (optional)",
CodeTextbox = "Paste plugin code, command, or raw URL",
Callback = function(plugin)
print("Plugin:", plugin)
end
})
Advanced:AddStudioTool({
Name = "Studio Tool",
Content = "Build parts in the workspace",
Description = "Build parts in the workspace",
Default = false,
PartType = "Block",
PartName = "XLQPPart",
MeshId = "",
TextureId = "",
Grid = 1,
PartSize = 4,
Anchored = true,
CanCollide = true,
Color = Color3.fromRGB(90, 140, 255),
ButtonColor = Color3.fromRGB(90, 140, 255),
Path = "workspace",
ParentPath = "workspace",
TargetPath = "workspace",
Callback = function(part)
print("Studio part:", part and part.Name)
end,
ToggleCallback = function(enabled)
print("studio", enabled)
end,
OnToggle = function(enabled)
print("studio toggle", enabled)
end
})
Advanced:AddButton({
Name = "Print Element Parameters",
Callback = function()
for _, name in ipairs(Advanced:GetElementParameterNames()) do
local info = Advanced:GetElementParameters(name)
print(name, info.Category, info.Count)
end
end
})
Window:SetWatermarkText("XLQP Gen1 | AI Agent v28")
Window:SetWatermarkVisibility(true)
Window:SetTabButtonsStyle({
Gap = 4,
Padding = 8,
CornerRadius = 6,
Indicator = true,
IndicatorWidth = 2,
IndicatorHeight = 20
})
XLQP:MakeNotification({
Name = "XLQP Gen1",
Content = "AI Agent v28 loaded",
Image = "rbxassetid://8834748103",
Time = 5,
Pos = "TopRight",
Buttons = {
{Name = "OK", Callback = function() print("Notification OK") end}
}
})
XLQP:MakeToast({
Title = "Agent ready",
Content = "Type a request in the AI tab",
Time = 4,
Variant = "Success",
Icon = "sparkles",
Closable = true,
Progress = true
})
Agent:Send("hello")
task.delay(1, function()
Agent:Send("inspect this game's workspace and remotes, figure out how the egg system works, then write a complete collector script")
end)
task.delay(2, function()
local taskName, plan, blocked = Agent:GetCurrentTask()
print("Current task:", taskName)
print("Blocked:", blocked)
for index, step in ipairs(plan or {}) do
print(index, step)
end
end)
task.delay(3, function()
Agent:SetPermissionMode("Read only")
Agent:SetEffort("Deep")
Agent:SetMultiline(true)
Agent:SetAgentPlanner(true)
for name, tool in pairs(Agent:GetTools()) do
print("Tool:", name, tool.Risk, tool.Description)
end
print(Agent:CallTool("list_remotes", {limit = 20}))
print(Agent:CallTool("instance_tree", {path = "Workspace", depth = 2}))
print("Last response:", Agent:GetLastResponse())
Console:Log("Agent tools listed")
end)