🚀 PixelPilot Copilot
The AI coding assistant built specifically for FiveM / GTA5 server development.
Generate complete, production-grade Lua + NUI scripts that actually run — no stubs, no placeholders, no // TODO.
PixelPilot Copilot is a VS Code extension that ships a multi-agent coding system tuned for FiveM. It detects your stack (ESX, QBCore, qbox, ox_lib, oxmysql) on the first request and writes resources that match your project's conventions — fxmanifest.lua, client / server / NUI separation, framework-aware imports, real native calls. A stub-protection runtime blocks half-baked output at the diff stage so you never ship a client.lua that's just three event handlers and a comment.
✨ What makes it different
- 🎮 FiveM-native by default. First-class understanding of resource layout, framework idioms, NUI focus management, and persistence via oxmysql. The default agent is the FiveM Coder, ready to ship complete resources from a one-line prompt.
- 🛡️ Stub protection. Every file the agent writes is inspected before it touches disk.
client.lua under 35 lines? Blocked. Output contains -- Existing code... or // TODO? Blocked. The agent gets a focused re-prompt and a third (and final) attempt to produce production-grade code.
- 🧠 Smart loop guards. Doom-loop detection breaks repeated no-op tool calls. Planning-loop interception forces execution after one plan. No-action prose detector kicks the agent back into fenced-block output. Auto-continue resumes truncated writes from the exact next character.
- 🔌 Bring your own AI. OpenRouter, Anthropic, OpenAI, Google Gemini, Vercel AI Gateway, GitHub Copilot, or any OpenAI-compatible custom provider. Or sign in to the PixelPilot Gateway for managed quota and one place to see your plan & credits.
- 🆓 Try before you buy. Three free prompts on a fresh install, no signup required. A pulsing orange banner under the chat input tracks your remaining trial.
🏎️ Quick start
- Install the extension from VS Code Marketplace (or
code --install-extension pixelpilot-copilot-3.0.1.vsix).
- Open a workspace — FiveM projects work out of the box. PixelPilot detects
fxmanifest.lua and adapts to your stack.
- (Optional) Sign in for full features:
- Click the Profile icon in the PixelPilot sidebar → Sign in
- Your browser opens pixelpilotai.com/vscode-token
- Click 🚀 Send token to VSCode automatically — your API token gets pushed straight into VS Code Settings
- Type a prompt in the chat —
"Create a custom HUD with health, armor, hunger, and thirst bars"
- Review the diffs and Accept what you want. Done.
Don't want to sign in yet? You get 3 free prompts to try the FiveM Coder. The banner below the input shows your remaining count.
🤖 Built-in agents
PixelPilot Copilot ships with three specialized FiveM agents. Switch between them in the agent picker on the chat input.
🟡 FiveM Coder (default)
The workhorse. Writes complete, production-grade resources end-to-end: fxmanifest.lua, client/main.lua, server/main.lua, NUI assets, locale files. Enforces:
local everywhere (no globals leaking into the resource state)
CreateThread / Wait (no legacy Citizen.* calls)
RegisterNetEvent + AddEventHandler with correct source parameter on server handlers
lib.callback and lib.notify from ox_lib when present, framework fallback otherwise
- Real native calls (
GetEntityHealth, GetPedArmour, exports['esx_status']:getStatus) — never -- Placeholder value
🟣 FiveM Architect
Plan first, code later. Designs scalable resource structures, fxmanifest dependency graphs, database schemas, and network sync patterns. Outputs markdown blueprints + a structured todo list for the Coder to execute against. Use it when the request is "design a banking system" instead of "build me a banking script".
🔵 FiveM Debugger
Hunts the FiveM-specific failure modes:
- SQL injection (forces oxmysql prepared queries with
? parameters)
- Tight
Citizen.Wait(0) loops killing client ms
- Unvalidated client events handing out money/items/admin
- NUI callbacks that never return
{} (causes JS freezes)
- State replication bugs across hot reloads
🛡️ Stub protection in detail
The single most-requested feature: AI agents that don't ship skeleton code.
When the agent calls <write> for any file, the runtime inspects the content:
| Category |
Minimum non-empty lines |
client.lua / server.lua / main.lua |
35 |
html/script.js |
25 |
html/index.html |
18 |
style.css |
25 |
Generic .lua / .js / .ts |
20 |
The runtime also rejects any file containing:
-- Existing code... / // existing code (silently deletes real code via fenced-block overwrite)
// rest of code / -- rest of file
-- TODO implement later / // TODO
-- Placeholder value, replace with...
// implement your logic here
When a file fails the check, the agent receives a focus-fire kicker — the current content quoted back verbatim plus a per-category checklist (e.g. "client.lua needs every RegisterNetEvent, real native calls, framework hooks from [DETECTED STACK]"). Up to three attempts per file before the runtime gives up and lets the user inspect what's there.
The result: when you accept a diff, the file is genuinely complete.
🔌 Providers
Pick whichever AI provider fits your workflow:
- PixelPilot Gateway — sign in with pixelpilotai.com, generate a
pp_xxxxx API token, and let the gateway proxy AI calls. Plan, quota, and credits show live in the Profile view.
- OpenRouter — first-party support for OpenRouter free-tier coder models with cross-model failover: if the active model rate-limits or drops a TCP connection mid-stream, the runtime rotates through up to seven backup models while preserving partial output.
- Anthropic, OpenAI, Google Gemini, Vercel AI Gateway, GitHub Copilot, custom OpenAI-compatible providers — connect from the Providers tab in Settings.
Default model on fresh installs: openrouter/deepseek/deepseek-chat-v3.1:free (strong coder, no rate-limit burn).
⚙️ Configuration
All settings live under pixelpilot-copilot.new.* in VS Code Settings.
| Setting |
Purpose |
apiToken |
Your pp_xxxxx token from pixelpilotai.com/dashboard. Required for the Profile view and PixelPilot Gateway. |
apiBaseUrl |
PixelPilot backend URL. Default https://pixelpilotai.com. Override only for self-hosted instances. |
openRouterApiKey |
OpenRouter API key for direct OR routing without the gateway. |
claudeCodeCompat |
Load CLAUDE.md instructions + skills from your Claude Code config into PixelPilot sessions. Requires restart. |
browserAutomation.enabled |
Enable Playwright-powered browser automation tool. |
selectedModel |
Override the default model picker selection. |
Project-level config lives in .pixelpilot/ at the repo root: custom agents in .pixelpilot/agent/, commands in .pixelpilot/command/, MCP servers in .pixelpilot/pixelpilot.jsonc. Legacy .kilo/ and .kilocode/ paths still load existing configs but new writes always land in .pixelpilot/.
📜 License
PixelPilot Copilot is proprietary software. © PixelPilot AI Labs. All rights reserved.
See LICENSE for the full text.