Launch games. Understand frames.
Experimental native GTK4 game library and live runtime console for Linux. Game execution requires the modified AnyPS5 fork.
- Scan configured game folders; use metadata titles and stable IDs, search, sorting and recently played games.
- SteamGridDB covers, logos and animated WebP heroes; SQLite/image cache works offline. Credentials stay in the desktop keyring.
- Play converts missing game code and launches one guarded game in an external window. Rebuild replaces only generated code.
- Profiler Live: estimated FPS, mean/P95/worst flip intervals, 60-second history, frame selection, shader/work activity and scoped memory.
- Profiler Logs: colored process output with bounded scrollback; complete logs remain on disk.
- Local HTTP MCP controls the same game session as the UI. UDP supplies independent live runtime telemetry.
- Windows launch, embedded windows and general game compatibility are unverified. Detailed per-frame CPU/GPU attribution, captures and input scripts are planned.
Dependencies and minimum versions: technical stack.
cmake -S . -B build -G Ninja -DCMAKE_INSTALL_PREFIX="$HOME/.local"
cmake --build build
ctest --test-dir build --output-on-failure
./build/framerift- In Settings, add game folders and select the modified AnyPS5 checkout.
- Launch uses its newest complete, current patched CMake build in place; build
relinkerandlibsthere first. - For live telemetry, configure that AnyPS5 build with
-DANYPS5_ENABLE_DEBUG_BRIDGE=ON. - Save the SteamGridDB key in Settings;
STEAMGRIDDB_API_KEYoverrides it. - Local development: desktop launcher points at this checkout's
build/framerift. Packaged installation:cmake --install build. - Cache:
$XDG_CACHE_HOME/framerift(default~/.cache/framerift). Saves/logs:$XDG_DATA_HOME/framerift(default~/.local/share/framerift), keyed by game ID.
Keep FrameRift open; its default endpoint is http://127.0.0.1:47653/mcp.
codex mcp add framerift --url http://127.0.0.1:47653/mcp- Game tools:
list_games,start_game,stop_game,get_game_status,get_game_log. - Bridge tools:
get_bridge_status,get_monitoring_snapshot,get_events,send_command,get_command. - Start/stop are asynchronous; poll status. Game tools work without UDP.
- Managed launches pass a free local UDP port and session identity to the game. After its handshake, FrameRift automatically requests monitoring.
- Monitoring toggles collection; tab changes keep the game and receiver active. Header status means a UDP connection, not rendering progress.
- MCP arguments, configuration and protocol; Live usage and measurement limits.
- Architecture and source map, design
- AnyPS5 launch/storage, build/platforms
- Profiling, MCP/UDP, native profiler screenshots
- Artwork, input, window integration
- Roadmap, open decisions, planned captures/scripts
- Contributing, design image sources
- Original code/docs: AGPL-3.0-or-later, with attribution terms in NOTICE. Preserve FrameRift credit and origin link; distributed derivatives and modified network services must provide corresponding source under the license.
- AnyPS5: GPL-2.0-only. Third-party artwork and trademarks retain their own rights.
