Skip to content

About

Multi-agent AI team inside Roblox Studio — Coordinator, Planner, Coder, Reviewer & Test Engineer that build, edit and test your game. Open-source, much better testing than roblox-studio-mcp.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

AI Studio — a multi-agent AI team inside Roblox Studio

MIT Luau + Rojo Node/TS Providers

A team of AI agents that collaborate in a chat inside Roblox Studio to build, edit, and test your game — reading/writing scripts, creating instances, running Luau, inserting Marketplace models, capturing the viewport, and reading playtest logs. A Coordinator delegates to a Planner, Coder, Reviewer, and Test Engineer, and you watch them work in real time.

AI Studio goes far beyond a raw tool bridge like the official roblox-studio-mcp: instead of exposing tools to one external model, it runs a coordinated multi-agent team with a polished in-Studio UI, per-role model selection, chat history, context compaction, and a testing workflow built in.


How it works

Architecture diagram

  • Plugin (Luau) = a thin chat UI + a tool executor. It long-polls the backend, runs each tool against the live DataModel (ScriptEditorService, Instance.new, ChangeHistoryService, LogService, CaptureService…), and posts the result back. Every AI action is one undo step.
  • Backend (Node/TS, Vercel AI SDK) orchestrates the agents. A Coordinator delegates to specialists; their tool calls are proxied to the plugin so the real Studio work happens in Luau.
  • Your API keys never enter Studio — they live on the backend; the plugin only talks to 127.0.0.1.

AI Studio vs. roblox-studio-mcp

roblox-studio-mcp AI Studio
Interface External MCP client In-Studio chat panel (dockable, monochrome)
Agents Single model, one loop Multi-agent team (Coordinator → Planner / Coder / Reviewer / Tester)
Providers Whatever the client uses Anthropic + OpenAI + OpenRouter, per-role picker, keys from the UI
Testing Run code, read console run_tests runner + Test Engineer + get_logs + QA loop
Assets — Creator Store search + insert, in-engine capture_viewport vision
Conversation Stateless Chat history, context compaction, stop button, token usage

Features

🤝 Multi-agent team Coordinator delegates to Planner, Coder, Reviewer, Test Engineer — visible live with avatars + handoffs
🧪 Testing first run_tests spec runner, get_logs, and a Test Engineer that writes & runs tests until green
👁 Vision capture_viewport (in-engine, any OS incl. Wayland) + host-side screen_capture — the agents see what they built
🧱 Real assets search_creator_store + insert_model to build with free Marketplace models
🔎 Code-aware script_grep across the whole project, read_all_scripts, inspect_instance
🎛 Configurable Per-role model picker + API keys, all from the settings panel (no .env editing needed)
🎮 Playtest simulate_input drives keyboard/mouse in a playtest + get_run_state to assert behavior
💬 Great chat UX Markdown + syntax-highlighted code blocks, streaming with a stop button, chat history, token usage
🛡 Trust Optional approval mode (preview each change before it applies) + one-click revert of a whole turn
💸 Budget guard Cap tokens per turn so a runaway loop can't burn your balance
🐳 Easy deploy docker compose up — no local Node setup needed
♻️ Safe Every action is one undo step; context auto-compacts on long chats

Quick start

1 · Backend

cd backend
npm install
cp .env.example .env      # add ANTHROPIC_API_KEY (or set keys later from the UI)
npm run dev               # http://127.0.0.1:31700

Defaults are all Claude, so ANTHROPIC_API_KEY alone is enough — or leave .env blank and paste keys into the plugin's Settings → API Anahtarları.

2 · Plugin

rokit install                                        # Rojo + StyLua + selene + lune
rojo build plugin/default.project.json -o AIStudio.rbxm

Copy AIStudio.rbxm into your Studio Plugins folder (or rojo serve), restart Studio, and click the AI Studio toolbar button. The status dot turns green when connected. Prefer a one-file download? Grab the latest release. See docs/INSTALL.md for per-platform paths (incl. Linux/Vinegar).


Using it

Type a task (Enter to send):

  • “Add an anchored bright-green Part named Spawn to Workspace.” → done directly.
  • “Build a jump-pad system — plan, code, review, and test it.” → the team collaborates; you see each agent, delegation handoffs, tool calls, and Markdown replies.
  • “Insert a sports car from the Creator Store and add a seat.” → searches the Marketplace and inserts it.
  • “Capture the viewport and tell me if the UI looks right.” → the agent sees a screenshot and iterates.

⚙ Settings — pick a model per role + set provider keys. 🕘 History — past chats are saved. ■ Stop — interrupt a running turn anytime.

Testing workflow and vision details: docs/TESTING.md.


Development

cd backend && npm run typecheck && npm test     # tsc + node:test
stylua plugin/src && selene plugin/src          # format + static analysis (Roblox API)
lune run plugin/test/markdown.test.luau         # pure-Luau unit tests
rojo build plugin/default.project.json -o /tmp/AIStudio.rbxm
node backend/test/fakePlugin.mjs "Build a jump pad — plan, code, review."  # headless E2E

CI runs all of the above on every push. PRs welcome — see CONTRIBUTING.md.

Notes

  • Host-side screen_capture works on macOS, X11 Linux, and wlroots Wayland; GNOME Wayland blocks it (Mutter security) — use the in-engine capture_viewport there.
  • run_luau uses loadstring in the plugin context — only run AI Studio against projects you trust.

License

MIT — see LICENSE.

About

Multi-agent AI team inside Roblox Studio — Coordinator, Planner, Coder, Reviewer & Test Engineer that build, edit and test your game. Open-source, much better testing than roblox-studio-mcp.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages