{"id":"59a866f3-b4be-434a-b04a-4b5448b9e388","entityType":"agent","slug":"crewai-maithreshvaddi-27-ai-game-dev-crew","name":"AI-Game-Dev-Crew","canonicalUrl":"https://www.xpersona.co/agent/crewai-maithreshvaddi-27-ai-game-dev-crew","canonicalPath":"/agent/crewai-maithreshvaddi-27-ai-game-dev-crew","generatedAt":"2026-10-10T05:56:46.832Z","source":"GITHUB_REPOS","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":null},"description":"AI crew (CrewAI + Gemini) that turns a one-line game idea into a playable browser game — design, code, and QA agents collaborate, then auto-build with pygbag and share a live link via ngrok. AI Game Development Crew A CrewAI multi-agent pipeline that turns a one-line game idea into a playable, browser-hosted 2D Pygame game. Three agents — Game Designer, Senior Python Developer, QA Reviewer — work sequentially, then the generated code is built with pygbag and shared over a public ngrok link. Workflow 1. **Game Designer Agent** turns your idea into a design doc (objective, controls, entities, win/lose cond","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. Last updated 10/9/2026.","installCommand":null,"sourceUrl":"https://github.com/MaithreshVaddi-27/AI-Game-Dev-Crew","homepage":null,"primaryLinks":[{"label":"View Source","url":"https://github.com/MaithreshVaddi-27/AI-Game-Dev-Crew","kind":"source"}],"safetyScore":66,"overallRank":23.2,"popularityScore":0,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"AI crew (CrewAI + Gemini) that turns a one-line game idea into a playable browser game — design, code, and QA agents collaborate, then auto-build with pygbag an"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[{"label":"crewai","status":"self-declared"},{"label":"multi-agent","status":"self-declared"}],"verifiedCount":0,"selfDeclaredCount":3,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"},{"key":"crewai","type":"capability","support":"supported","confidenceSource":"profile","notes":"Declared in agent profile metadata"},{"key":"multi-agent","type":"capability","support":"supported","confidenceSource":"profile","notes":"Declared in agent profile metadata"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"}},"adoption":{"evidence":{"source":"no-adoption-signals","verified":false,"confidence":"low","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":"No source adoption metrics were available."},"stars":0,"forks":0,"downloads":null,"packageName":null,"latestVersion":null,"tractionLabel":null},"release":{"evidence":{"source":"agent-index","verified":false,"confidence":"medium","updatedAt":"2026-10-09T13:51:01.006Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T13:51:01.017Z","lastCrawledAt":"2026-10-09T13:51:01.006Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-16T13:51:01.006Z","lastVerifiedAt":null,"highlights":[]},"execution":{"evidence":{"source":"GITHUB REPOS","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":null,"setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"GITHUB_REPOS","generatedAt":"2026-10-10T05:56:46.832Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/crewai-maithreshvaddi-27-ai-game-dev-crew/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"GITHUB REPOS","verified":false,"confidence":"high","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":null},"readme":"# AI Game Development Crew\r\n\r\nA CrewAI multi-agent pipeline that turns a one-line game idea into a playable, browser-hosted 2D Pygame game. Three agents — Game Designer, Senior Python Developer, QA Reviewer — work sequentially, then the generated code is built with `pygbag` and shared over a public `ngrok` link.\r\n\r\n## Workflow\r\n\r\n1. **Game Designer Agent** turns your idea into a design doc (objective, controls, entities, win/lose conditions).\r\n2. **Senior Python Game Developer Agent** writes a complete, standalone Pygame script from that design (with Serper web search as a tool).\r\n3. **QA Reviewer Agent** reviews and fixes the code for bugs, playability, and completeness.\r\n4. Final code saved to `output/main.py`.\r\n5. `pygbag` builds it into a browser-ready web game.\r\n6. A local HTTP server + `ngrok` tunnel give you a public link to play and share it.\r\n\r\nThe build disables pygbag's media-engagement gate because these generated games do not use audio. This prevents the browser from remaining on the `Ready to start!` preloader screen. The launcher also patches a pygbag 0.9.3 template issue where the gate can remain active despite `--ume_block 0`.\r\n\r\n## Features\r\n\r\n- Gemini LLM through CrewAI (defaults to `gemini/gemini-3.1-flash-lite`, overridable via `GEMINI_MODEL`)\r\n- Serper web search tool for the developer agent\r\n- Sequential 3-agent Crew process\r\n- Auto-detects and strips markdown code fences if the model ignores the code-only instruction, including an unterminated/truncated fence with no closing ` ``` `\r\n- `.env` based configuration\r\n- Idea via `--idea` flag, or interactive prompt if not given\r\n\r\n## Project Structure\r\n\r\n```text\r\nAI-Game-Dev-Crew/\r\n├── crew.py\r\n├── requirements.txt\r\n├── README.md\r\n├── LICENSE\r\n├── .env.example\r\n├── .gitignore\r\n└── output/\r\n    └── .gitkeep\r\n```\r\n\r\n`crew.py` is the launcher — it never gets overwritten. Generated game code and pygbag build output land in `output/`, kept out of git.\r\n\r\n## Requirements\r\n\r\n- Python 3.11 or newer\r\n- Google Gemini API key\r\n- Serper API key (web search)\r\n- Ngrok auth token\r\n- `pygbag` needs a working internet connection at build time (pulls from its CDN)\r\n\r\n## Setup\r\n\r\nClone the repo:\r\n\r\n```bash\r\ngit clone https://github.com/MaithreshVaddi-27/AI-Game-Dev-Crew.git\r\ncd AI-Game-Dev-Crew\r\n```\r\n\r\nCreate and activate a virtual environment.\r\n\r\nmacOS or Linux:\r\n\r\n```bash\r\npython3 -m venv avenv\r\nsource avenv/bin/activate\r\n```\r\n\r\nWindows PowerShell:\r\n\r\n```powershell\r\npython -m venv avenv\r\navenv\\Scripts\\Activate.ps1\r\n```\r\n\r\nInstall dependencies:\r\n\r\n```bash\r\npython -m pip install --upgrade pip\r\npython -m pip install -r requirements.txt\r\n```\r\n\r\n## Environment Variables\r\n\r\nCreate `.env` from the example file:\r\n\r\n```bash\r\ncp .env.example .env\r\n```\r\n\r\nUpdate the values:\r\n\r\n```env\r\nGEMINI_API_KEY=your_gemini_api_key\r\nSERPER_API_KEY=your_serper_api_key\r\nNGROK_AUTH_TOKEN=your_ngrok_auth_token\r\n```\r\n\r\n### Where to Get Each Key\r\n\r\n| Key | Get it from |\r\n|---|---|\r\n| `GEMINI_API_KEY` | https://aistudio.google.com/apikey — Google AI Studio, free tier available |\r\n| `SERPER_API_KEY` | https://serper.dev — sign up, free tier includes 2,500 search credits |\r\n| `NGROK_AUTH_TOKEN` | https://dashboard.ngrok.com/get-started/your-authtoken — free ngrok account required |\r\n\r\n### Optional: `GEMINI_MODEL`\r\n\r\nAll three keys above are required. `GEMINI_MODEL` is optional and left commented out in `.env.example`. If unset, the crew uses `gemini/gemini-3.1-flash-lite`. To use a different Gemini model, uncomment and set it in `.env`:\r\n\r\n```env\r\nGEMINI_MODEL=gemini/gemini-2.5-flash\r\n```\r\n\r\nThe `gemini/` prefix (required by LiteLLM, which `crewai`'s `LLM` class uses under the hood) is added automatically if you leave it off, so `GEMINI_MODEL=gemini-2.5-flash` also works.\r\n\r\n## Running\r\n\r\nRun without an idea — you'll be prompted to type one:\r\n\r\n```bash\r\npython crew.py\r\n```\r\n\r\nOr pass the idea directly from the command line:\r\n\r\n```bash\r\npython crew.py --idea \"A fun endless runner where a character jumps over obstacles\"\r\n```\r\n\r\nAnother example:\r\n\r\n```bash\r\npython crew.py --idea \"A top-down maze game where you collect coins while avoiding a patrolling guard\"\r\n```\r\n\r\nThe script prints a public `ngrok` URL when the game is ready. Keep it running while sharing the link — press `Ctrl+C` to stop the server and kill the tunnel cleanly.\r\n\r\n## How It Works\r\n\r\n1. Loads and validates environment variables from `.env`.\r\n2. Initializes Gemini as the LLM for all three agents.\r\n3. Runs the Crew sequentially: design → code → review.\r\n4. Extracts the final Python code (strips markdown fences if present), validates it contains `import pygame`.\r\n5. Writes it to `output/main.py`.\r\n6. Runs `pygbag` to build a browser-playable version into `output/build/web`.\r\n7. Serves that folder locally on port 8000, opens an `ngrok` tunnel, prints the public link.\r\n8. Blocks until you press `Ctrl+C`, then shuts down the server and tunnel cleanly.\r\n\r\n## Known Behavior\r\n\r\n- **Blocking by design**: unlike the original notebook (where the Colab kernel just stays alive), this script blocks in a loop after printing the play link so the server and tunnel don't die the instant the script would otherwise exit. `Ctrl+C` stops it cleanly (`server.terminate()` + `ngrok.kill()` in a `finally` block).\r\n- **Output path changed from the original notebook**: the notebook wrote generated game code straight to `./main.py`. If converted 1:1 into a repo where the launcher is also `main.py`, running it would overwrite the launcher itself with AI-generated game code — a self-destructive bug. Fixed here: launcher is `crew.py`, generated code goes to `output/main.py` (pygbag's build step requires the entry script to be named `main.py`), and the `pygbag` build path (`output/build/web`) was updated to match.\r\n- **No retry/validation loop**: if the QA agent's final output still isn't valid Pygame code (missing `import pygame`), the script raises and stops — it does not re-prompt the crew automatically.\r\n- **`pygbag` build time varies** — first run downloads its runtime from the CDN, can take a minute or more depending on connection.\r\n- **Asyncio-wrapped game loop required**: `pygbag` runs the game in-browser via Pyodide (WASM), which needs the game loop to yield control every frame with `await asyncio.sleep(0)`. Task instructions now require the Developer and QA agents to wrap the loop in `async def main():` ending with `asyncio.run(main())`. Generated code missing this raises a clear error before build instead of shipping a game that loads then freezes/blanks in the browser.\r\n\r\n## Troubleshooting\r\n\r\n### Missing Environment Variable\r\n\r\nIf you see `Missing GEMINI_API_KEY`, `Missing SERPER_API_KEY`, or `Set NGROK_AUTH_TOKEN in .env before publishing.`, check `.env` has every key from `.env.example`.\r\n\r\n### `CrewAI did not return a valid Pygame script`\r\n\r\nThe QA agent's final output didn't contain `import pygame`. Re-run with a more specific game idea, or check the printed Crew output above the error for what actually came back.\r\n\r\n### Generated code is missing the asyncio-wrapped game loop\r\n\r\nRaised if `output/main.py` would compile locally but lacks `import asyncio` / `await asyncio.sleep(0)` — meaning it would freeze/blank-screen once loaded in the browser via `pygbag`. Re-run the crew; if it keeps happening, the model is ignoring the web-compatibility instruction in `code_only_rule` — try a more capable Gemini model via `GEMINI_MODEL` in `.env` (see Environment Variables above) or inspect `output/main.py` and add the wrapper manually (see Known Behavior above for the required shape).\r\n\r\n### Browser link loads then goes blank/frozen\r\n\r\nSame root cause as above, from a build made *before* this fix. Delete `output/`, re-run `python crew.py`, confirm the new `output/main.py` contains `await asyncio.sleep(0)` inside the loop before it builds.\r\n\r\n### `pygbag build failed.`\r\n\r\nCheck the printed `stderr` above the error. Common causes: `pygbag` not installed correctly, or the generated code has a syntax error the QA agent missed — inspect `output/main.py` directly.\r\n\r\n### `pygbag output folder was not found`\r\n\r\nBuild reported success but `output/build/web` is missing — check for a `pygbag` version mismatch or a build path change; re-run with `pygbag --build output/main.py` manually to see full output.\r\n\r\n### Dependency Error\r\n\r\nMake sure the virtual environment (`avenv`) is active, then reinstall:\r\n\r\n```bash\r\npython -m pip install -r requirements.txt\r\n```\r\n\r\n## Security\r\n\r\n- Do not commit `.env`.\r\n- Do not expose API keys in logs, screenshots, or public repositories.\r\n- Rotate API keys if they are accidentally shared.\r\n- `ngrok` links are public — anyone with the URL can access your locally hosted game while the tunnel is open.\r\n\r\n## License\r\n\r\nReleased under the [MIT License](LICENSE). This project is intended for educational, research, and learning purposes.\r\n","readmeExcerpt":"AI Game Development Crew A CrewAI multi-agent pipeline that turns a one-line game idea into a playable, browser-hosted 2D Pygame game. Three agents — Game Designer, Senior Python Developer, QA Reviewer — work sequentially, then the generated code is built with pygbag and shared over a public ngrok link. Workflow 1. **Game Designer Agent** turns your idea into a design doc (objective, controls, entities, win/lose cond","codeSnippets":[],"executableExamples":[],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[],"languages":["python"],"docsSourceLabel":"GITHUB REPOS","editorialOverview":"AI crew (CrewAI + Gemini) that turns a one-line game idea into a playable browser game — design, code, and QA agents collaborate, then auto-build with pygbag and share a live link via ngrok. AI Game Development Crew A CrewAI multi-agent pipeline that turns a one-line game idea into a playable, browser-hosted 2D Pygame game. Three agents — Game Designer, Senior Python Developer, QA Reviewer — work sequentially, then the generated code is built with pygbag and shared over a public ngrok link. Workflow 1. **Game Designer Agent** turns your idea into a design doc (objective, controls, entities, win/lose cond","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":418,"uniquenessScore":62,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T13:51:01.017Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T05:56:46.832Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/github_repos","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}