Run it
Copy the script and paste it into your executor.
Api_Gemini67 = “ CollectionService = :()
TweenService = :()
HttpService = :()
UserInputService = :()
lp = :().LocalPlayer
G2L = {}
Api_Groq =
Api_GroqGpt =
Icons = (:())()
WindUI = (:())()
New = WindUI.Creator.New
Icons.(New, )
currentAI =
()
totalHeight =
_, child (G2L[]:())
child:() child:() child:()
totalHeight = totalHeight + child.Size.Y.Offset +
G2L[].CanvasSize = .(, , , totalHeight)
yOffset =
_, child (G2L[]:())
child:() child:() child:()
child.Position = .(, , , yOffset)
yOffset = yOffset + child.Size.Y.Offset +
G2L[].CanvasPosition = .(, totalHeight)
(userMessage)
body = HttpService:({
contents = {{ parts = {{ text = userMessage }} }}
})
success, response = (()
({
Url = .. Api_Gemini67,
Method = ,
Headers = {
[] =
},
Body = body
})
)
success
.. (response)
response response.Body
decodeSuccess, data = (()
HttpService:(response.Body)
)
decodeSuccess
.. (data)
data data.candidates data.candidates[]
data.candidates[].content data.candidates[].content.parts
data.candidates[].content.parts[] data.candidates[].content.parts[].text
aiText = data.candidates[].content.parts[].text
aiText
data data.error
.. (data.error.message )
(userMessage, apiKey)
body = HttpService:({
model = ,
max_tokens = ,
messages = {{
role = ,
content = userMessage
}}
})
success, response = (()
({
Url = ,
Method = ,
Headers = {
[] = ,
[] = apiKey,
[] =
},
Body = body
})
)
success
.. (response)
response response.Body
decodeSuccess, data = (()
HttpService:(response.Body)
)
decodeSuccess
data data.content data.content[] data.content[].text
data.content[].text
data data.error
.. (data.error.message )
(userMessage)
body = HttpService:({
model = ,
messages = {{
role = ,
content = userMessage
}},
max_tokens = ,
temperature =
})
success, response = (()
({
Url = ,
Method = ,
Headers = {
[] = ,
[] = .. Api_Groq
},
Body = body
})
)
success
.. (response)
response response.Body
decodeSuccess, data = (()
HttpService:(response.Body)
)
decodeSuccess
data data.choices data.choices[] data.choices[].message data.choices[].message.content
data.choices[].message.content
data data.error
.. (data.error.message )
(userMessage)
body = HttpService:({
model = ,
messages = {{
role = ,
content = userMessage
}},
max_tokens = ,
temperature =
})
success, response = (()
({
Url = ,
Method = ,
Headers = {
[] = ,
[] = .. Api_GroqGpt
},
Body = body
})
)
success
.. (response)
response response.Body
decodeSuccess, data = (()
HttpService:(response.Body)
)
decodeSuccess
data data.choices data.choices[] data.choices[].message data.choices[].message.content
data.choices[].message.content
data data.error
.. (data.error.message )
(userMessage, apiKey)
body = HttpService:({
model = ,
messages = {{
role = ,
content = userMessage
}},
max_tokens = ,
temperature =
})
success, response = (()
({
Url = ,
Method = ,
Headers = {
[] = ,
[] = .. apiKey
},
Body = body
})
)
success
.. (response)
response response.Body
decodeSuccess, data = (()
HttpService:(response.Body)
)
decodeSuccess
data data.choices data.choices[] data.choices[].message data.choices[].message.content
data.choices[].message.content
data data.error
.. (data.error.message )
(userMessage)
currentAI ==
(userMessage)
currentAI ==
(userMessage, ().ClaudeApi)
currentAI ==
(userMessage)
currentAI ==
(userMessage)
currentAI ==
(userMessage, ().ChatGptApi)
(sender, message, isUser)
messageLabel = .()
messageLabel.Size = .(, -, , )
messageLabel.BackgroundTransparency =
messageLabel.TextColor3 = isUser .(, , ) .(, , )
messageLabel.FontFace = Font.(, .FontWeight.Regular, .FontStyle.Normal)
messageLabel.TextSize =
messageLabel.TextWrapped =
messageLabel.TextXAlignment = .TextXAlignment.Left
messageLabel.TextYAlignment = .TextYAlignment.Top
messageLabel.Text = sender .. .. message
messageLabel.Parent = G2L[]
textBounds = :():(
messageLabel.Text,
messageLabel.TextSize,
.Font.Code,
.(messageLabel.AbsoluteSize.X, .huge)
)
messageLabel.Size = .(, -, , .(textBounds.Y + , ))
()
messageLabel
(code, language)
codeFrame = .()
codeFrame.Size = .(, -, , )
codeFrame.BackgroundColor3 = .(, , )
codeFrame.BorderSizePixel =
codeFrame.Parent = G2L[]
codeCorner = .(, codeFrame)
codeCorner.CornerRadius = .(, )
codeBox = .()
codeBox.Size = .(, -, , -)
codeBox.Position = .(, , , )
codeBox.BackgroundTransparency =
codeBox.TextColor3 = .(, , )
codeBox.FontFace = Font.(, .FontWeight.Regular, .FontStyle.Normal)
codeBox.TextSize =
codeBox.TextWrapped =
codeBox.TextXAlignment = .TextXAlignment.Left
codeBox.TextYAlignment = .TextYAlignment.Top
codeBox.Text = code
codeBox.TextEditable =
codeBox.ClearTextOnFocus =
codeBox.MultiLine =
codeBox.Parent = codeFrame
copyButton = .()
copyButton.Size = .(, , , )
copyButton.Position = .(, -, , )
copyButton.BackgroundTransparency =
copyButton.Parent = codeFrame
copyIcon = Icons.({
Icon = ,
Colors = {.(, , )},
Size = .(, , , )
})
copyIcon.IconFrame.Parent = copyButton
copyButton.MouseButton1Click:(()
(code)
copyIcon.IconFrame.ImageColor3 = .(, , )
.()
copyIcon.IconFrame.ImageColor3 = .(, , )
)
executeButton = .()
executeButton.Size = .(, , , )
executeButton.Position = .(, -, , )
executeButton.BackgroundTransparency =
executeButton.Parent = codeFrame
executeIcon = Icons.({
Icon = ,
Colors = {.(, , )},
Size = .(, , , )
})
executeIcon.IconFrame.Parent = executeButton
executeButton.MouseButton1Click:(()
success, err = (()
(code)()
)
success
(, err)
executeIcon.IconFrame.ImageColor3 = .(, , )
.()
executeIcon.IconFrame.ImageColor3 = .(, , )
)
textBounds = :():(
code,
,
.Font.Code,
.(codeBox.AbsoluteSize.X, .huge)
)
codeFrame.Size = .(, -, , .(textBounds.Y + , ))
()
codeFrame
(message)
parts = {}
lastIndex =
codeStart, language, code, codeEnd message:()
codeStart > lastIndex
textBefore = message:(lastIndex, codeStart - )
textBefore:(, ) ~=
.(parts, { = , content = textBefore})
.(parts, { = , content = code, language = language})
lastIndex = codeEnd
lastIndex <= #message
textAfter = message:(lastIndex)
textAfter:(, ) ~=
.(parts, { = , content = textAfter})
#parts ==
.(parts, { = , content = message})
parts
(message)
parts = (message)
senderAdded =
i, part (parts)
part.type ==
senderAdded
(currentAI, part.content, )
senderAdded =
(, part.content, )
part.type ==
(part.content, part.language)
()
loadingLabel = .()
loadingLabel.Name =
loadingLabel.Size = .(, -, , )
loadingLabel.BackgroundTransparency =
loadingLabel.TextColor3 = .(, , )
loadingLabel.FontFace = Font.(, .FontWeight.Regular, .FontStyle.Normal)
loadingLabel.TextSize =
loadingLabel.TextXAlignment = .TextXAlignment.Left
loadingLabel.TextYAlignment = .TextYAlignment.Top
loadingLabel.Text = currentAI ..
loadingLabel.Parent = G2L[]
()
dots =
animationRunning =
.(()
animationRunning loadingLabel.Parent
dots = (dots % ) +
loadingLabel.Text = currentAI .. .. .(, dots)
.()
)
loadingLabel, ()
animationRunning =
G2L[] = .(, :().LocalPlayer:())
G2L[][] = .ZIndexBehavior.Sibling
G2L[][] =
CollectionService:(G2L[], )
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , -)
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , )
G2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
G2L[][] =
G2L[][] = .(, , , )
G2L[][] = .(, , )
G2L[][] =
G2L[][] = .(, , , )
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
G2L[][] = .(, , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , -)
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[][] = .(, , , )
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[][] = .(, , , )
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[][] = .(, , , )
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, )
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[][] =
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] = -
G2L[][] =
G2L[][] = .(, , )
G2L[][] =
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , )
G2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
G2L[][] =
G2L[][] =
G2L[][] =
G2L[][] = .. currentAI ..
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[][] = .(, , )
G2L[][] =
G2L[][] =
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] = .(, -, , -)
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , -)
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] = .(, )
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , -)
G2L[][] =
G2L[][] =
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] = .(, )
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
.(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
.(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
.(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
G2L[][] = .(, , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , -)
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] = .(, )
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , )
G2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
G2L[][] = .(, , , )
G2L[][] =
G2L[][] = .(, , , )
G2L[][] =
G2L[] = .(, G2L[])
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] = .(, , )
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] = .(, )
G2L[] = .(, G2L[])
G2L[][] = .(, , )
G2L[][] =
G2L[] = .(, G2L[])
G2L[][] =
G2L[][] =
G2L[][] = .(, , , )
G2L[][] = .(, , , )
G2L[][] =
G2L[][] =
settingsButton = .(, G2L[])
settingsButton[] =
settingsButton[] =
settingsButton[] = .(, , )
settingsButton[] = .(, , , )
settingsButton[] = .(, , , -)
settingsButton[] =
settingsButton[] =
settingsButton[] = .(, , )
settingsCorner = .(, settingsButton)
settingsCorner[] = .(, )
dropdownOptions = {, , , , }
()
totalHeight =
index, option (dropdownOptions)
optionButton = .(, G2L[])
optionButton[] =
optionButton[] = .(, , )
optionButton[] = .(, -, , )
optionButton[] = .(, , , (index - ) * + )
optionButton[] = option
optionButton[] =
optionButton[] = .(, , )
optionButton[] = Font.(, .FontWeight.Regular, .FontStyle.Normal)
optionButton[] =
optionCorner = .(, optionButton)
optionCorner[] = .(, )
optionButton.MouseEnter:(()
optionButton[] = .(, , )
)
optionButton.MouseLeave:(()
optionButton[] = .(, , )
)
optionButton.MouseButton1Click:(()
currentAI = option
G2L[][] = option
G2L[][] = .. option ..
G2L[][] =
(, .. option .. , )
)
totalHeight = totalHeight +
G2L[][] = .(, , , totalHeight + )
()
G2L[].MouseButton1Click:(()
G2L[][]
G2L[][] =
G2L[][] =
G2L[][] = .(, , , #dropdownOptions * + )
)
G2L[].MouseButton1Click:(()
settingsDisappearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.In)
settingsDisappearTween = TweenService:(G2L[], settingsDisappearInfo, {BackgroundTransparency = })
settingsDisappearTween:()
settingsDisappearTween.Completed:(()
G2L[][] =
G2L[][] =
G2L[][] =
mainAppearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
mainAppearTween = TweenService:(G2L[], mainAppearInfo, {BackgroundTransparency = })
mainAppearTween:()
)
)
settingsButton.MouseEnter:(()
hoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
hoverTween = TweenService:(settingsButton, hoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
hoverTween:()
)
settingsButton.MouseLeave:(()
unhoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
unhoverTween = TweenService:(settingsButton, unhoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
unhoverTween:()
)
settingsButton.MouseButton1Click:(()
G2L[][]
mainDisappearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.In)
mainDisappearTween = TweenService:(G2L[], mainDisappearInfo, {BackgroundTransparency = })
mainDisappearTween:()
mainDisappearTween.Completed:(()
G2L[][] =
G2L[][] =
G2L[][] =
settingsAppearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
settingsAppearTween = TweenService:(G2L[], settingsAppearInfo, {BackgroundTransparency = })
settingsAppearTween:()
)
)
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.UserInputType == .UserInputType.MouseButton1
G2L[][]
mouse = :().LocalPlayer:()
ddFrame = G2L[]
buttonSize = G2L[].AbsoluteSize
buttonPos = G2L[].AbsolutePosition
ddSize = ddFrame.AbsoluteSize
ddPos = ddFrame.AbsolutePosition
mouseX = mouse.X
mouseY = mouse.Y
(mouseX >= buttonPos.X mouseX <= buttonPos.X + buttonSize.X
mouseY >= buttonPos.Y mouseY <= buttonPos.Y + buttonSize.Y)
(mouseX >= ddPos.X mouseX <= ddPos.X + ddSize.X
mouseY >= ddPos.Y mouseY <= ddPos.Y + ddSize.Y)
G2L[][] =
)
G2L[].MouseEnter:(()
hoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
hoverTween = TweenService:(G2L[], hoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
hoverTween:()
)
G2L[].MouseLeave:(()
unhoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
unhoverTween = TweenService:(G2L[], unhoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
unhoverTween:()
)
G2L[].MouseButton1Click:(()
disappearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.InOut)
disappearTween = TweenService:(G2L[], disappearInfo, {
BackgroundTransparency = ,
Position = .(, -, , -)
})
disappearTween:()
disappearTween.Completed:(()
G2L[].Visible =
G2L[].Visible =
appearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
appearTween = TweenService:(G2L[], appearInfo, {Position = .(, , , )})
appearTween:()
)
)
G2L[].MouseButton1Click:(()
hideInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.In)
hideTween = TweenService:(G2L[], hideInfo, {Position = .(, , , -)})
hideTween:()
hideTween.Completed:(()
G2L[].Visible =
G2L[].Visible =
G2L[].BackgroundTransparency =
G2L[].Position = .(, -, , -)
appearInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
appearTween = TweenService:(G2L[], appearInfo, {
BackgroundTransparency = ,
Position = .(, , , -)
})
appearTween:()
)
)
G2L[].MouseEnter:(()
hoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
hoverTween = TweenService:(G2L[], hoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
hoverTween:()
)
G2L[].MouseLeave:(()
unhoverInfo = TweenInfo.(, .EasingStyle.Quad, .EasingDirection.Out)
unhoverTween = TweenService:(G2L[], unhoverInfo, {
BackgroundTransparency = ,
BackgroundColor3 = .(, , )
})
unhoverTween:()
)
sendIcon = Icons.({
Icon = ,
Colors = {.(, , )},
Size = .(, , , )
})
sendIcon.IconFrame.Parent = G2L[]
sendIcon.IconFrame.Position = .(, , , )
sendIcon.IconFrame.AnchorPoint = .(, )
currentAIRequest =
isAIResponding =
(iconName, color)
sendIcon sendIcon.IconFrame
sendIcon.IconFrame:()
sendIcon = Icons.({
Icon = iconName,
Colors = {color},
Size = .(, , , )
})
sendIcon.IconFrame.Parent = G2L[]
sendIcon.IconFrame.Position = .(, , , )
sendIcon.IconFrame.AnchorPoint = .(, )
G2L[].MouseButton1Click:(()
isAIResponding
isAIResponding =
currentAIRequest
.(currentAIRequest)
currentAIRequest =
(, .(, , ))
_, child (G2L[]:())
child.Name ==
child:()
(, , )
userMessage = G2L[].Text
userMessage:(, ) ==
(, userMessage, )
G2L[].Text =
(, .(, , ))
isAIResponding =
loadingMessage, stopAnimation = ()
currentAIRequest = .(()
aiResponse = (userMessage)
isAIResponding
()
loadingMessage loadingMessage.Parent
loadingMessage:()
(aiResponse)
isAIResponding =
currentAIRequest =
(, .(, , ))
)
)
G2L[].FocusLost:((enterPressed)
enterPressed isAIResponding
userMessage = G2L[].Text
userMessage:(, ) ==
(, userMessage, )
G2L[].Text =
(, .(, , ))
isAIResponding =
loadingMessage, stopAnimation = ()
currentAIRequest = .(()
aiResponse = (userMessage)
isAIResponding
()
loadingMessage loadingMessage.Parent
loadingMessage:()
(aiResponse)
isAIResponding =
currentAIRequest =
(, .(, , ))
)
.()
G2L[]:()
)
botIcon = Icons.({
Icon = ,
Colors = {.(, , )},
Size = .(, , , )
})
botIcon.IconFrame.Parent = G2L[]
botIcon.IconFrame.Position = .(, , , )
botIcon.IconFrame.AnchorPoint = .(, )
SettingIcon = Icons.({
Icon = ,
Colors = {.(, , )},
Size = .(, , , )
})
SettingIcon.IconFrame.Parent = settingsButton
SettingIcon.IconFrame.Position = .(, , , )
SettingIcon.IconFrame.AnchorPoint = .(, )
(, .. lp.DisplayName .. , )
(, )
(, , )
G2L[]Loads code from the internet. It downloads more code when it runs (loadstring + HttpGet), which can change after it was posted. From: raw.githubusercontent.com, github.com, generativelanguage.googleapis.com, api.anthropic.com, api.groq.com, api.openai.com.
Completely Keyless Free ChatAi you can Talk a New Update will come where you can talk Ai Grok. Claude. ChatGpt.
Never paste your .ROBLOSECURITY cookie anywhere, and use an alt account with scripts.

Universal