Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Qbox Lua - CfxLua & FiveMNew to Visual Studio Code? Get it now.
Qbox Lua - CfxLua & FiveM

Qbox Lua - CfxLua & FiveM

Qbox

|
7 installs
| (1) | Free
CfxLua language support for FiveM resource development: native completion, Lua diagnostics, formatting, navigation and client/server checks.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Qbox duck logo

Qbox Lua

CfxLua language tools for FiveM resource development.

Install from VS Code Marketplace · Release notes · Report an issue

Write Lua resources with native completion, diagnostics, formatting and navigation in one extension. Qbox Lua understands CfxLua syntax and reads fxmanifest.lua to track client, server and shared scripts, resource dependencies, exports and events.

The language server is included. You can work on a single resource or an entire resources folder, without installing Rust or a separate language server.

Built for resource development

Feature What it helps you do
Completion and hover Look up FiveM natives, runtime globals, exports and LuaCATS types as you write.
Diagnostics and quick fixes Find Lua mistakes, missing manifest imports and event/export mismatches in the Problems panel.
Client/server context Catch calls used on the wrong side and see the current file's side in the status bar.
Navigation and rename Follow definitions and references across your workspace and rename supported symbols.
Formatting Format Lua with shared project settings in qbxlint.toml.
Syntax and editor hints Read CfxLua backtick hashes, LuaCATS annotations, semantic highlighting, signature help and parameter hints.
Resource snippets Add common manifest and resource patterns from the editor.

Analysis comes from qbx-lua-ls and qbx-lint. The editor and command-line linter share rule configuration, so your local feedback and CI checks can agree.

Get started

  1. Install Qbox Lua - CfxLua & FiveM from the VS Code Marketplace.
  2. Open a resource folder containing fxmanifest.lua, or your server's resources folder.
  3. Open a Lua file. Disable other Lua language-server extensions for that workspace if they produce duplicate diagnostics or completions.

Resources referenced by the manifest and located beside the open resource are found automatically. If a dependency lives elsewhere, add its folder to qbxLua.library in VS Code settings:

{
  "qbxLua.library": [
    "/path/to/server/resources/[ox]/ox_lib",
    "/path/to/server/resources/[qbx]/qbx_core"
  ]
}

This extension runs in your editor. It does not need to be added to server.cfg or started as a FiveM resource.

Supported environments

  • VS Code 1.85 or newer on Windows x64, Linux x64/ARM64, and macOS x64/ARM64.
  • FiveM / GTA V resources using CfxLua, including client, server and shared scripts.
  • Qbox-specific checks are included; the Lua and FiveM tooling also works with resources that do not use Qbox.

RedM: the manifest completion includes rdr3, but the bundled native database targets FiveM and currently excludes RedM-specific natives. Full RedM language support is not advertised. Dynamic code, encrypted scripts and dependencies outside the indexed workspace can also limit analysis.

Project configuration

Add qbxlint.toml to your workspace to share lint and formatting preferences with the qbx-lint CLI and GitHub Action. For example:

exclude = ["web/**", "**/vendor/**"]

[rules]
"unused-argument" = "off"

[format]
indent_width = 4
use_tabs = false
quote_style = "preserve"

See the configuration reference and rule list.

Editor settings

Search for qbxLua in VS Code Settings.

Setting Default Description
qbxLua.library [] Extra dependency folders to index.
qbxLua.diagnostics.enable true Show diagnostics.
qbxLua.diagnostics.workspace true Include files that are not open.
qbxLua.diagnostics.rules {} Override rule levels: off, hint, info, warning or error.
qbxLua.inlayHints.enable true Show parameter names beside literal arguments.
qbxLua.semanticTokens.enable true Enable semantic highlighting.
qbxLua.warnAboutOtherLuaExtensions true Warn about other active Lua language servers.
qbxLua.server.path "" Advanced: use a custom language-server binary.
qbxLua.trace.server "off" Advanced: trace language-server communication with messages or verbose.

Commands and troubleshooting

Open the Command Palette and search for Qbox Lua:

  • Show Snippets opens the snippet picker.
  • Show Status and Show Output help diagnose server startup and indexing.
  • Reindex Workspace refreshes indexed files and manifests.
  • Restart Language Server also reloads library and workspace configuration.

If a resource dependency is missing from completion or navigation, check that it is available beside the workspace or included in qbxLua.library. When reporting an issue, include the extension version, operating system and a small reproduction.

Other editors

The bundled server, qbx-lua-ls, is also available as a standalone executable. The editor setup guide includes Neovim 0.11+ and Helix configuration examples. Those examples have not been integration-tested in those editors; VS Code has an automated integration suite.

Other LSP clients need their own configuration or adapter. The VS Code commands, status bar and syntax grammars are part of this extension. A JetBrains integration is not included.

Manual installation

Marketplace installation selects the matching platform package and supports normal extension updates. For an offline or manual installation, download your platform's .vsix from GitHub Releases and run Extensions: Install from VSIX in VS Code.

You can also install from the Marketplace through the terminal:

code --install-extension qbox.qbx-lua

Development

To build the extension, run its tests or use the Extension Development Host, see CONTRIBUTING.md.

License

GPL-3.0-or-later.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft