Status
Deferred after the Cycle 3 research gate. Issue #16 ranked this below runnable SDK documentation examples. No report identified a problem in Agent Fighter, and its second-player arrow keys already address the specific mismatch described in the external demo report.
User and workflow
A person trying OpenController Agent Fighter from the keyboard may be unable or unwilling to use the fixed key assignments. They need to discover the controls and choose bindings that fit their keyboard, input preferences, or accessibility setup without editing demo source code.
Direct evidence
- 2026-02-16 — OpenAI developer forum, “2D game built with Codex and agent skills”: a player said arrow keys did not move the character because that demo mapped only WASD; the author added arrow and space mappings. Direct thread
This is one human-player report about a different demo. It establishes one concrete mapping mismatch and a source-level workaround, not prevalence or an OpenController user complaint.
Cycle 3 also reviewed Accessible-Chess issue #5, opened 2026-08-14, which requests configurable app-owned shortcuts, conflict warnings, and keyboard-only recovery. Its comments include many project-owner status updates, so the count is not independent corroboration; the request is about a different product. A Hacker News comment on a 2026-06-18 assistive-gaming article recounts one indirect anecdote about a player being banned for third-party remapping software. The article itself returned HTTP 403. These sources support remapping as a broader accessibility concern but do not establish Agent Fighter demand or justify this demo-specific scope.
Repository fit and interpretation
Agent Fighter currently hard-codes two keyboard layouts in examples/agent-fighter/src/client.js: player one uses WASD and selected letter keys, and player two uses arrows plus other fixed keys. This repository owns the demo and can make its keyboard controls inspectable and configurable. The current second layout already handles the specific arrow-key movement example, so the external report is a motivation for configurable bindings, not proof that the current demo has the same bug.
Proposed outcome
Revisit only if future evidence identifies demand for app-owned remapping in this demo or a broader repository-owned accessibility path. The general remapping sources above do not, by themselves, justify implementing a settings UI in Agent Fighter.
Acceptance criteria if selected
- Show both players' keyboard bindings in the demo UI and allow each action to be rebound without editing source files.
- Reject or resolve duplicate action bindings and conflicts with Agent Fighter's own shortcuts, including the current
F/fullscreen conflict; prevent a key from triggering both an action and an unrelated global command.
- Warn when bindings overlap browser- or OS-reserved keys where detectable, and document that full detection is platform-dependent.
- Persist the selected bindings locally and provide a reliable reset to documented defaults.
- Verify movement, jump, attack, block, and special actions for each player after remapping; keep gamepad input working independently.
- Document keyboard controls and the limitation that browser/OS shortcuts may intercept certain keys.
Dependencies
Deferred outside the active Cycle 3 milestone after research gate #16 ranked the repository-owned documentation coverage improvement above this demo-specific work. Do not implement in this cycle.
Non-goals
- No general accessibility framework or OS-wide remapping tool.
- No changes to the core SDK's semantic action-map API unless research demonstrates a separate package-level need.
- No claim that configurable keys alone address broader accessibility requirements.
Status
Deferred after the Cycle 3 research gate. Issue #16 ranked this below runnable SDK documentation examples. No report identified a problem in Agent Fighter, and its second-player arrow keys already address the specific mismatch described in the external demo report.
User and workflow
A person trying OpenController Agent Fighter from the keyboard may be unable or unwilling to use the fixed key assignments. They need to discover the controls and choose bindings that fit their keyboard, input preferences, or accessibility setup without editing demo source code.
Direct evidence
This is one human-player report about a different demo. It establishes one concrete mapping mismatch and a source-level workaround, not prevalence or an OpenController user complaint.
Cycle 3 also reviewed Accessible-Chess issue #5, opened 2026-08-14, which requests configurable app-owned shortcuts, conflict warnings, and keyboard-only recovery. Its comments include many project-owner status updates, so the count is not independent corroboration; the request is about a different product. A Hacker News comment on a 2026-06-18 assistive-gaming article recounts one indirect anecdote about a player being banned for third-party remapping software. The article itself returned HTTP 403. These sources support remapping as a broader accessibility concern but do not establish Agent Fighter demand or justify this demo-specific scope.
Repository fit and interpretation
Agent Fighter currently hard-codes two keyboard layouts in
examples/agent-fighter/src/client.js: player one uses WASD and selected letter keys, and player two uses arrows plus other fixed keys. This repository owns the demo and can make its keyboard controls inspectable and configurable. The current second layout already handles the specific arrow-key movement example, so the external report is a motivation for configurable bindings, not proof that the current demo has the same bug.Proposed outcome
Revisit only if future evidence identifies demand for app-owned remapping in this demo or a broader repository-owned accessibility path. The general remapping sources above do not, by themselves, justify implementing a settings UI in Agent Fighter.
Acceptance criteria if selected
F/fullscreen conflict; prevent a key from triggering both an action and an unrelated global command.Dependencies
Deferred outside the active Cycle 3 milestone after research gate #16 ranked the repository-owned documentation coverage improvement above this demo-specific work. Do not implement in this cycle.
Non-goals