Renforge

io.github.alex-jordan547由 GitHub 帳號 alex-jordan547 發布v0.7.3更新於 Nov 4, 2026

Inspect, drive and debug a running Ren'Py game: state, screenshots, guarded clicks, saves, builds.

概覽

AI 產生的概覽

針對 Ren'Py 視覺小說專案的 MCP 伺服器、CLI 與儀表板:可檢視專案、啟動並操控執行中的遊戲、擷取畫面以及建置發行檔。

可以做什麼
  • 檢視 Ren'Py 專案:彙整結構,掃描腳本、標籤與素材,解析 lint 輸出
  • 啟動並操控執行中的遊戲:推進對話、選擇選項、求值運算式、讀寫 store 變數、送出文字/按鍵/捲動輸入、輪詢事件、擷取畫面
  • 以結構化場景樹讀取畫面(邊界、層級、樣式),並量測對齊、間距、重疊與對比度
  • 在 Live Editor 中編輯畫面上的控制項,支援原始碼安全預覽與儲存;自動試玩並回報標籤覆蓋率
  • 稽核素材與翻譯:找出孤立或缺少的檔案、列出語言、產生翻譯檔、匯出對話文字
  • 執行桌面與網頁建置,並檢索 Ren'Py 離線文件
適用情境
適合助理處理 Ren'Py 視覺小說時使用:了解陌生專案、排查版面或執行問題、以數值核對場景擺放,或自動化試玩與翻譯工作。它面向本機桌面開發,而非無介面或網頁環境。
執行需求
透過 uvx 以 stdio 在本機執行,需要 Python 3.11+ 與 uv。不必事先安裝 Ren'Py:RenForge 會沿用電腦上既有的 SDK,或在首次啟動時自動下載。每次工具呼叫都需傳入 project_path 參數。安裝選用的儀表板會帶入額外相依套件。
安裝前請注意
啟動遊戲會注入遊戲內橋接與 Live Editor,Live Editor 可寫入受保護的 .rpy 原始碼檔案;建置與翻譯產生也會寫入專案。軟體處於 alpha 階段,API 可能變動。儀表板預設只監聽本機。依賴前請先檢查對原始碼的變更。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Renforge,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

RenForge

[PyPI] [Python] [License: MIT] [CI]

RenForge is an MCP (Model Context Protocol) server, CLI, and web dashboard for working with Ren'Py visual-novel projects.

It lets an AI agent — or a human via the dashboard — inspect a project, launch a game with the Live Editor enabled by default, select and inspect on-screen controls, preview layout changes before writing guarded .rpy source, drive runtime state, capture screenshots, generate translations, find orphaned assets, run builds, and search Ren'Py's docs.

Status: alpha, actively developed. The core surfaces (MCP tools, in-game bridge, Live Editor, CLI, dashboard) are functional; APIs may still change.

[RenForge Live Editor — selected editable control with scene tree, handles, inspector, and style panel]

Live Editor — select an editable control, inspect it, preview moves, then Save to source

[RenForge dashboard — live control of a running game] [Live Editor — locked selection with a clear human-readable reason]
Dashboard — live control of a running gameLive Editor — locked targets stay inspectable with a clear reason
[Story map — interactive graph of labels and transitions] [Assets — orphaned, missing and undefined asset audit]
Story map — click a node to warp the running gameAsset audit — orphans, missing files, undefined images

Quick start — dashboard

Requires Python 3.11+ and uv — nothing else. You don't even need Ren'Py installed: RenForge reuses an SDK it finds on your machine, or downloads one automatically on first launch.

bash
uvx --from "renforge[ui]@latest" renforge ui

Then choose your game in the dashboard's project picker — no path to type. (Or skip the picker with --project /path/to/your/game.) Launch the game and click the floating RF control to open the Live Editor.

Live Editor

The Live Editor is the headline 0.7 feature: edit eligible on-screen controls inside the running game, preview layout changes at runtime, and Save only when a target is source-safe. Locked or unsupported targets stay inspectable with a clear reason — they are not silently forced.

AudienceStart here
HumanDashboard or game window → launch → click RF → select from canvas or scene tree → inspect / move where editable → Save → stop cleanly.
AI agentrenforge_info (read live_editor) → renforge_launch → poll renforge_launch_status → renforge_screenshot / renforge_scene_tree → guarded renforge_click_at or renforge_click_element → verify → renforge_stop.

Full human and agent workflows, source-safety rules, and screenshots: docs/LIVE_EDITOR.md.

Install

uvx needs no install at all. For a persistent renforge command on your PATH, use pipx:

bash
# Full install — MCP + CLI + web dashboardpipx install "renforge[ui]"renforge ui
# Slim install — MCP server + CLI only (no dashboard deps)pipx install renforgerenforge serve

[ui] pulls in the optional dashboard stack (Starlette, uvicorn, watchfiles). Skip it if you only need the MCP server or CLI.

On managed systems (Debian/Ubuntu), plain pip install is blocked by PEP 668 — use uvx or pipx instead.

Update

Installed withHow to update
uvx … @latestNothing to do — @latest fetches the newest release on each start
pipx (full or slim)pipx upgrade renforge
pip / venvpip install -U "renforge[ui]" (or renforge for slim)

What's new: CHANGELOG.md · GitHub releases.

Set up the MCP server (AI agents)

The server command is the same for every client:

bash
uvx renforge@latest serve

Every RenForge tool takes a project_path argument, so the agent passes your game's path on each call — copy the configs below as-is, no path substitution.

Claude Code

bash
claude mcp add renforge -- uvx renforge@latest serve

Codex CLI

bash
codex mcp add renforge -- uvx renforge@latest serve

Claude Desktop, Cursor, Windsurf, Cline, Gemini CLI — same mcpServers JSON shape in each client's config file:

json
{  "mcpServers": {    "renforge": {      "command": "uvx",      "args": ["renforge@latest", "serve"]    }  }}
ClientConfig file
Claude Desktopclaude_desktop_config.json
Cursor.cursor/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json
Clinecline_mcp_settings.json
Gemini CLI~/.gemini/settings.json

VS Code (Copilot), Zed, Windows PATH issues, and the pipx variant are covered in the MCP guide.

Verify it works — ask the agent:

Inspect my Ren'Py project at /path/to/game

The agent should call renforge_inspect_project with that path and return a JSON summary of the project (labels, scripts, assets, and related metadata).

What it does

  • Live Editor (default on launch) — in-game selection, inspection, and source-safe preview/Save for editable controls; locked targets stay inspectable. Guide: docs/LIVE_EDITOR.md.
  • Project inspection — summarize structure, scan scripts/labels/assets, parse lint output.
  • Live game control — launch a project with an injected in-game bridge and Live Editor, then advance dialogue, list/select choices, evaluate expressions, get/set store variables, send focused text/key/scroll input, poll pushed events, and capture frames the model can literally see.
  • Scene perception (pixel-perfect, no vision needed) — read the whole frame as structured logical-coordinate nodes (renforge_scene_tree): every sprite, control, and text block with bounds, z-order, colour, and style, plus an ASCII wireframe and structural scene diffs. Then renforge_measure reports alignment, spacing, overlap, fit, and WCAG contrast as numbers an agent can act on.
  • Autopilot — auto-play choices backed by Ren'Py menu items across fresh replays, including custom-named and one-item menus, while reporting label coverage and crashes. Custom call_screen interactions that do not expose Ren'Py menu items are not currently explored automatically.
  • Assets & translations — find orphaned/missing image+audio assets, list languages, compute translation stats, generate/update game/tl/<lang>/ files, export dialogue as text.
  • Builds — package desktop distributions and web builds.
  • Docs — search and read Ren'Py's offline documentation.
  • Web dashboard — live story map, activity log, autopilot coverage, lint view, and game-state controls (default 127.0.0.1:8765).

CLI

bash
renforge --versionrenforge inspect <project>      # lightweight project summary (JSON)renforge serve [--project .]    # start the MCP server (stdio transport)renforge ui [--project <project>] [--port 8765]  # start the web dashboard

Documentation

  • Live Editor — human and agent workflows, editable vs locked targets, source-safety, public screenshots.
  • MCP guide — full tool catalogue, agent workflows (Live Editor, hot reload, saves, pixel-perfect placement, scene perception).
  • Runtime policy — operation-level risk enforcement vs MCP ToolAnnotations, authorization, and the compatibility plan.
  • Architecture — code layout, live-control flow, Ren'Py SDK resolution, packaging.
  • Contributing — dev setup, frontend build, PRs.
  • Cloud / CI environment — Cursor Cloud Agents, Xvfb, Ren'Py SDK bootstrap, and env smoke.
  • Changelog — release history.
  • examples/demo_game/ — small sample Ren'Py project to try everything on.

License

MIT

Contributors

Special thanks to the people who have contributed to RenForge:

  • @AxelBeary — complete Simplified Chinese dashboard translation and related internationalization fixes.

來源:README.md,提交 3fb9031

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.7.3最新Oct 7, 2026
  2. v0.7.2Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分