Drive server (stdin/stdout line protocol) and first MCP plugins #6

Closed
opened 2026-10-28 22:48:01 +00:00 by Gatchan · 2 comments
Owner

ff6cli --serve: run <n> <pad>, peek <name>, poke, save/load <slot> (in memory), shot <png>, quit. Then plugins in tools/mcp/tools/ for the already-configured MCP host (others/mcp/ff6): run frames, screenshot as image, peek by RAM-map name, savestate slots.

`ff6cli --serve`: `run <n> <pad>`, `peek <name>`, `poke`, `save/load <slot>` (in memory), `shot <png>`, `quit`. Then plugins in `tools/mcp/tools/` for the already-configured MCP host (`others/mcp/ff6`): run frames, screenshot as image, peek by RAM-map name, savestate slots.
Author
Owner

Starting (branch drive-server, delegated to a fresh agent; reviewed and merged by the main session). Scope: ff6cli --serve line protocol (run/peek/poke/save/load/shot/info/port/quit), in-memory savestates in the core debug API, MCP plugin tools/mcp/tools/ff6_drive.py for the configured MCP host. Peek by RAM-map name comes with #7.

Starting (branch `drive-server`, delegated to a fresh agent; reviewed and merged by the main session). Scope: `ff6cli --serve` line protocol (run/peek/poke/save/load/shot/info/port/quit), in-memory savestates in the core debug API, MCP plugin `tools/mcp/tools/ff6_drive.py` for the configured MCP host. Peek by RAM-map name comes with #7.
Author
Owner

Merged (PR #13). Reviewed by the main session:

  • release ctest -LE slow: 7/7 (savestate 11.4 s, serve 5.8 s per version); agent run with slow tests: 9/9.
  • Live check through the configured MCP client after mcp_reload: ff6_start us -> ff6_run 700 -> ff6_save_state 1 -> A -> 600 frames -> ff6_screenshot shows the opening narration; ff6_load_state 1 returns to frame 700; ff6_peek wram 0x1F6D works.

Left for later: peek/poke by RAM-map name (needs #7); the cancel path of a pending shadow call has no test yet (only port is reached at ~frame 8800).

Merged (PR #13). Reviewed by the main session: - release `ctest -LE slow`: 7/7 (savestate 11.4 s, serve 5.8 s per version); agent run with slow tests: 9/9. - Live check through the configured MCP client after `mcp_reload`: `ff6_start us` -> `ff6_run 700` -> `ff6_save_state 1` -> A -> 600 frames -> `ff6_screenshot` shows the opening narration; `ff6_load_state 1` returns to frame 700; `ff6_peek wram 0x1F6D` works. Left for later: peek/poke by RAM-map name (needs #7); the cancel path of a pending shadow call has no test yet (only port is reached at ~frame 8800).
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Gatchan/FF6Portage#6
No description provided.