{"id":49286913,"url":"https://github.com/tmhsdigital/cfx-developer-tools","last_synced_at":"2026-06-17T03:05:45.130Z","repository":{"id":350045419,"uuid":"1205040231","full_name":"TMHSDigital/CFX-Developer-Tools","owner":"TMHSDigital","description":"AI-powered Cursor IDE plugin for FiveM and RedM resource development. 9 skills, 6 rules, 6 MCP tools, 12,000+ natives, 101 events, 24 snippets, 11 templates.","archived":false,"fork":false,"pushed_at":"2026-04-24T16:41:48.000Z","size":1259,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-24T17:12:28.056Z","etag":null,"topics":["cfx","cursor","cursor-plugin","fivem","game-development","gta5","lua","mcp","rdr3","redm"],"latest_commit_sha":null,"homepage":"https://tmhsdigital.github.io/CFX-Developer-Tools/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TMHSDigital.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-08T15:19:23.000Z","updated_at":"2026-04-24T16:41:51.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/TMHSDigital/CFX-Developer-Tools","commit_stats":null,"previous_names":["tmhsdigital/cfx-developer-tools"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/TMHSDigital/CFX-Developer-Tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TMHSDigital%2FCFX-Developer-Tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TMHSDigital%2FCFX-Developer-Tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TMHSDigital%2FCFX-Developer-Tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TMHSDigital%2FCFX-Developer-Tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TMHSDigital","download_url":"https://codeload.github.com/TMHSDigital/CFX-Developer-Tools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TMHSDigital%2FCFX-Developer-Tools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32278249,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T18:29:39.964Z","status":"ssl_error","status_checked_at":"2026-04-25T18:29:32.149Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cfx","cursor","cursor-plugin","fivem","game-development","gta5","lua","mcp","rdr3","redm"],"created_at":"2026-04-25T22:01:44.676Z","updated_at":"2026-06-17T03:05:45.122Z","avatar_url":"https://github.com/TMHSDigital.png","language":"Python","funding_links":["https://github.com/sponsors/TMHSDigital"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/logo.png\" alt=\"CFX Developer Tools\" width=\"200\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eCFX Developer Tools\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eAI-powered development toolkit for FiveM and RedM resource development in Cursor IDE.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://creativecommons.org/licenses/by-nc-nd/4.0/\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-CC%20BY--NC--ND%204.0-lightgrey.svg\" alt=\"License: CC BY-NC-ND 4.0\"\u003e\u003c/a\u003e\n  \u003ca href=\"CHANGELOG.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/version-0.10.1-blue.svg\" alt=\"Version\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/TMHSDigital/CFX-Developer-Tools/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/TMHSDigital/CFX-Developer-Tools?style=flat\" alt=\"GitHub stars\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://tmhsdigital.github.io/CFX-Developer-Tools/\"\u003e\u003cimg src=\"https://img.shields.io/badge/docs-online-blue?logo=materialformkdocs\u0026logoColor=white\" alt=\"Documentation\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"docs/GETTING-STARTED.md\"\u003e\u003cstrong\u003eGetting Started\u003c/strong\u003e\u003c/a\u003e \u0026bull;\n  \u003ca href=\"https://tmhsdigital.github.io/CFX-Developer-Tools/\"\u003eDocumentation\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#quick-start\"\u003eQuick Start\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#mcp-server\"\u003eMCP Server\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#skills-9\"\u003eSkills\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#rules-6\"\u003eRules\u003c/a\u003e \u0026bull;\n  \u003ca href=\"#roadmap\"\u003eRoadmap\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  9 skills \u0026nbsp;\u0026bull;\u0026nbsp; 6 rules \u0026nbsp;\u0026bull;\u0026nbsp; 6 MCP tools \u0026nbsp;\u0026bull;\u0026nbsp; 12,000+ natives \u0026nbsp;\u0026bull;\u0026nbsp; 101 events \u0026nbsp;\u0026bull;\u0026nbsp; 24 snippets \u0026nbsp;\u0026bull;\u0026nbsp; 11 templates\n\u003c/p\u003e\n\nScaffold complete FiveM/RedM resources, look up native functions, generate manifests, detect frameworks, search documentation, and write optimized scripts in Lua, JavaScript, and C# -- all from within Cursor's AI chat. Covers the full CFX development lifecycle from project setup to database integration.\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"docs/GETTING-STARTED.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/%F0%9F%93%96_Getting_Started_Guide-blue?style=for-the-badge\" alt=\"Getting Started Guide\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003e **First time here?** The **[Getting Started guide](docs/GETTING-STARTED.md)** walks you through every step -- from installing Git, Python, and Cursor to building and deploying your first FiveM/RedM resource. No prior experience required.\n\n## How It Works\n\n```mermaid\nflowchart LR\n    A[\"You ask Cursor\\na CFX question\"] --\u003e B[\"Cursor loads\\na Skill\"]\n    B --\u003e     C{\"MCP server\\navailable?\"}\n    C -- Yes --\u003e D[\"CFX MCP Server\\n(6 tools)\"]\n    C -- No --\u003e E[\"Skill guidance\\nonly\"]\n    D --\u003e F[\"Scaffold, lookup,\\ngenerate, search,\\ndetect, docs\"]\n    E --\u003e G[\"AI-assisted answer\\nin Cursor chat\"]\n    F --\u003e G\n```\n\n**Skills** teach Cursor how to handle CFX development prompts. **Rules** enforce FiveM/RedM best practices in your code. The **MCP server** provides programmatic tools so skills can scaffold resources, look up natives, and generate manifests directly.\n\n## Quick Start\n\nAlready have Git, Python 3.10+, and Cursor installed? Here's the short version:\n\n```bash\ngit clone https://github.com/TMHSDigital/CFX-Developer-Tools.git\n# Open CFX-Developer-Tools folder in Cursor (File \u003e Open Folder)\ncd mcp-server \u0026\u0026 pip install -r requirements.txt\n```\n\nThen ask the AI agent to scaffold a resource, look up a native, or generate a manifest.\n\n\u003e **Need more detail?** The **[Getting Started guide](docs/GETTING-STARTED.md)** covers installing prerequisites, troubleshooting, and building your first resource step by step.\n\n## Features\n\n- **Resource scaffolding** -- Generate complete resources in Lua, JavaScript, or C# with proper `fxmanifest.lua`\n- **Framework detection** -- Automatically detect and adapt to ESX, QBCore, Qbox, ox_core, VORP, RSG, or standalone\n- **Native function lookup** -- Search GTA5/RDR3 native functions by name or description via MCP tools\n- **Performance-aware coding rules** -- Catch common mistakes (`Wait(0)` in loops, runtime hashing, etc.)\n- **Snippet library** -- 24 copy-paste-ready code patterns across all three runtimes\n- **NUI development support** -- Skills and patterns for building in-game web UIs\n- **Database integration** -- oxmysql query patterns, schema templates, and migration guidance\n- **Event reference** -- Searchable database of 101 FiveM/RedM events across CFX, ESX, QBCore, Qbox, ox_core, VORP, and RSG\n- **Documentation search** -- Query the FiveM/RedM docs index by keyword or section via MCP tools\n- **Framework auto-detection** -- MCP tool that scans workspace files to detect ESX, QBCore, Qbox, ox_core, VORP, RSG, or standalone\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eSupported Frameworks\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Framework | Game | Status |\n|:----------|:-----|:-------|\n| ESX | FiveM | Supported |\n| QBCore | FiveM | Supported |\n| Qbox | FiveM | Supported |\n| ox_core | FiveM | Supported |\n| VORP | RedM | Supported |\n| RSG | RedM | Supported |\n| Standalone | Both | Supported |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eSupported Languages\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Language | Client | Server |\n|:---------|:-------|:-------|\n| Lua | Yes | Yes |\n| JavaScript | Yes | Yes |\n| C# | Yes | Yes |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eSupported Games\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Game | Platform |\n|:-----|:---------|\n| GTA5 | FiveM |\n| RDR3 | RedM |\n\n\u003c/details\u003e\n\n## Skills (9)\n\n| Skill | What it does |\n|:------|:-------------|\n| **Resource Scaffolding** | Generate complete resource boilerplate for any framework and language |\n| **Native Functions** | Look up GTA5/RDR3 natives by name, hash, or description |\n| **fxmanifest** | Author and validate `fxmanifest.lua` files with correct directives |\n| **Client-Server Patterns** | Correct event communication, threading, and state sync patterns |\n| **Framework Detection** | Auto-detect ESX, QBCore, Qbox, ox_core, VORP, RSG, or standalone and adapt code accordingly |\n| **Performance Optimization** | Identify and fix CFX-specific performance pitfalls |\n| **NUI Development** | Build in-game web UIs with proper message passing and devtools setup |\n| **Database Integration** | oxmysql queries, schema design, migrations, and connection pooling |\n| **State Bags** | Modern data sync with Entity/Player/Global state bags, change handlers, and security |\n\n## Rules (6)\n\n| Rule | What it does |\n|:-----|:-------------|\n| **Lua Conventions** | Enforces CFX Lua idioms -- locals, proper event handlers, vector types, variable attributes |\n| **JavaScript Conventions** | Enforces CFX JavaScript patterns -- async/await, proper exports, event typing |\n| **C# Conventions** | Enforces CitizenFX C# patterns -- `[FromSource]`, `BaseScript`, tick handlers |\n| **fxmanifest Standards** | Validates manifest structure, version strings, dependency declarations |\n| **Security Best Practices** | Flags server-side validation gaps, exposed endpoints, insecure patterns |\n| **Performance Rules** | Catches `Wait(0)`, runtime hashing, unnecessary tick handlers, memory leaks |\n\n## Snippets (24)\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eLua (14)\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Snippet | Description |\n|:--------|:------------|\n| `client-event.lua` | Client-side event handler template |\n| `server-event.lua` | Server-side event handler with source validation |\n| `register-command.lua` | Command registration with permission checks |\n| `thread-loop.lua` | Thread with proper `Wait()` usage |\n| `nui-callback.lua` | NUI callback handler for client-side |\n| `export-function.lua` | Exported function pattern |\n| `config-template.lua` | Shared config file structure |\n| `state-bag-entity.lua` | Entity state bag set/read pattern |\n| `state-bag-player.lua` | Player state bag set/read pattern |\n| `state-bag-handler.lua` | State bag change handler |\n| `backtick-hash.lua` | Compile-time hashing with backticks |\n| `routing-bucket.lua` | Routing bucket (instance) management |\n| `variable-attributes.lua` | Lua 5.4 `\u003cconst\u003e` and `\u003cclose\u003e` attributes |\n| `ace-permissions.lua` | ACE permission checks and config |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eJavaScript (7)\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Snippet | Description |\n|:--------|:------------|\n| `client-event.js` | Client-side event handler |\n| `server-event.js` | Server-side event handler |\n| `register-command.js` | Command registration |\n| `thread-loop.js` | Tick-based loop pattern |\n| `nui-callback.js` | NUI callback registration |\n| `state-bag-entity.js` | Entity state bag set/read pattern |\n| `state-bag-handler.js` | State bag change handler |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eC# (3)\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Snippet | Description |\n|:--------|:------------|\n| `base-script.cs` | `BaseScript` class template |\n| `tick-handler.cs` | Tick handler with async pattern |\n| `register-command.cs` | Command registration with attributes |\n\n\u003c/details\u003e\n\n## Templates (11)\n\n| Template | Description |\n|:---------|:------------|\n| **Standalone** | Minimal Lua resource -- no framework dependency |\n| **ESX** | ESX Legacy-ready resource with `es_extended` integration |\n| **QBCore** | QBCore-ready resource with `qb-core` integration |\n| **Qbox** | Qbox-ready resource with `qbx_core` integration |\n| **ox_core** | ox_core-ready resource with `ox_lib` integration |\n| **VORP** | VORP-ready RedM resource with `vorp_core` integration |\n| **RSG** | RSG-ready RedM resource with `rsg-core` integration |\n| **JavaScript** | Full JS resource with `node_version '22'`, client/server structure |\n| **C#** | .NET resource with `.csproj`, compiled DLL pattern |\n| **NUI Vite** | Modern NUI with Vite + React, postMessage bridge, and HMR |\n| **NUI Svelte** | Modern NUI with Vite + Svelte 5, Runes, postMessage bridge |\n\n## MCP Server\n\nThe companion MCP server provides programmatic tools that Cursor's AI agent can call directly. Configuration lives in `.cursor/mcp.json`.\n\n**Prerequisites:** Python 3.10+\n\n```bash\ncd mcp-server\npip install -r requirements.txt\n```\n\nThe server starts automatically when Cursor invokes an MCP tool.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eAvailable Tools (6)\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Tool | Description |\n|:-----|:------------|\n| `scaffold_resource_tool` | Create a new resource with boilerplate files for any framework/language combo. Inherits author from workspace. |\n| `lookup_native_tool` | Search natives by name, hash, description, or category. Browse namespaces. |\n| `generate_manifest_tool` | Generate a complete `fxmanifest.lua` with correct directives. Auto-detects scripts and NUI from workspace. |\n| `search_events_tool` | Search 101 events by name, side, game, or framework (cfx, esx, qbcore, qbox, oxcore, vorp, rsg, baseevents, chat) |\n| `detect_framework_tool` | Scan workspace files to detect ESX, QBCore, Qbox, ox_core, VORP, RSG, or standalone with confidence score |\n| `search_docs_tool` | Search the FiveM/RedM documentation index by keyword or section |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eUsage Examples\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n**Scaffold a resource:**\n```\nCreate a new QBCore resource called \"qb-garage\" with client and server scripts in Lua\n```\n\n**Look up a native:**\n```\nWhat native function gets a vehicle's current speed?\n```\n\n**Generate a manifest:**\n```\nGenerate an fxmanifest.lua for an ESX resource with NUI, targeting both FiveM and RedM\n```\n\n**Search events:**\n```\nWhat events fire when a player connects to the server?\n```\n\n**Search documentation:**\n```\nHow do I set up NUI callbacks?\n```\n\n**Detect framework:**\n```\nWhat framework does this resource use?\n```\n\n\u003c/details\u003e\n\n## Project Structure\n\n```\nCFX-Developer-Tools/\n  .cursor-plugin/      Plugin manifest\n  .cursor/             MCP server configuration\n  skills/              AI skill files (9 skills)\n  rules/               Coding convention rules (6 rules)\n  snippets/            Code snippets -- Lua, JS, C# (24 files)\n  templates/           Resource starter templates (11 sets)\n  mcp-server/          Python MCP server (6 tools) and data files\n  docs/                Architecture, roadmap, contributing guide, docs site landing page\n  assets/              Logo and images\n  .github/             CI/CD workflows (validate, release, update-natives, update-docs-index, stale, deploy-docs)\n  mkdocs.yml           Documentation site configuration\n```\n\n## Roadmap\n\nSee [docs/ROADMAP.md](docs/ROADMAP.md) for the full project roadmap.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eRelease Plan\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n| Version | Milestone | Status |\n|:--------|:----------|:-------|\n| **v0.1.x** | Foundation -- skills, rules, snippets, templates, MCP server, CI/CD | Done |\n| **v0.2.0** | AGENTS.md and .cursorrules for AI agent guidance | Done |\n| **v0.3.0** | Native DB expansion -- 6300+ GTA5, 5800+ RDR3, category browsing, deprecation flags | Done |\n| **v0.4.x** | Content expansion -- State Bags skill, NUI Vite template, vector docs, FiveM/RedM balance | Done |\n| **v0.5.0** | M3 Expansion -- docs search, 82 events, framework detection, smart code gen | Done |\n| **v0.6.0** | M3.5 Research Alignment -- Qbox/VORP/RSG, Svelte NUI, 101 events, 24 snippets, 11 templates | Done |\n| **v1.0.0** | Stable release -- marketplace listing, full documentation | Planned |\n\n\u003c/details\u003e\n\n## Contributing\n\nSee [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md) for guidelines on adding skills, rules, and improvements.\n\n## Support\n\nIf this plugin is useful to you, consider [sponsoring the project](https://github.com/sponsors/TMHSDigital).\n\n## License\n\nCC BY-NC-ND 4.0 -- see [LICENSE](LICENSE) for details.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eCFX Reference Links\u003c/strong\u003e\u003c/summary\u003e\n\n\u0026nbsp;\n\n- [CFX Developer Tools Documentation](https://tmhsdigital.github.io/CFX-Developer-Tools/)\n- [FiveM/RedM Documentation](https://docs.fivem.net/docs/)\n- [GTA5 Native Reference](https://docs.fivem.net/natives/)\n- [RDR3 Native Reference](https://rdr3natives.com/)\n- [Cfx.re Forums](https://forum.cfx.re/)\n- [Cfx.re Platform](https://cfx.re/)\n\n\u003c/details\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eBuilt by \u003ca href=\"https://github.com/TMHSDigital\"\u003eTMHSDigital\u003c/a\u003e\u003c/strong\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmhsdigital%2Fcfx-developer-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftmhsdigital%2Fcfx-developer-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmhsdigital%2Fcfx-developer-tools/lists"}