- Blind, screen reader user
- Experience level: asked during setup → adjust communication
- User directs, Codex codes and explains
- Uncertainties: ask briefly, then act
- Output: NO
|tables, use lists
On greeting:
- Read
project_status.md— summarize phase, last work, pending tests, notes - If pending tests exist, ask user for results before continuing
- Suggest next steps or ask what to work on
Update
project_status.mdon significant progress and before session end.
- OS: Windows (Bash/Git Bash)
- Game directory:
I:\SteamLibrary\steamapps\common\Blippo+ - Architecture: 64-bit
- Mod Loader: MelonLoader
dotnet build BlippoAccess.csproj- Target framework:
net472(game runtimenet35) - Output:
bin/Debug/net472/BlippoAccess.dll-> auto-copied toI:\SteamLibrary\steamapps\common\Blippo+\Mods\
- Unity
6000.0.58f2 - Game localization uses
NobleRobot.LanguageUtility.currentLanguage
- Handler classes:
[Feature]Handler - Private fields:
_camelCase - Logs/comments: English
- Build:
dotnet build [ModName].csproj - XML docs:
<summary>on all public classes/methods. Private only if non-obvious. Critical for dev integration. - Localization from day one: ALL ScreenReader strings through
Loc.Get(). No exceptions.Loc.cs= Phase 2 framework, not later addition. Even for single-language mods.
- Playability — play as sighted do; cheats only if unavoidable
- Modular — separate input, UI, announcements, game state
- Maintainable — consistent patterns, extensible
- Efficient — cache objects, skip unnecessary work
- Robust — utility classes, edge cases, announce state changes
- Respect game controls — never override game keys, handle rapid presses
- Submission-quality — clean enough for dev integration, consistent formatting, meaningful names, no undocumented hacks
Patterns: docs/ACCESSIBILITY_MODDING_GUIDE.md
- Null-safety with logging: never silent. Log via DebugLogger AND announce via ScreenReader.
- Try-catch ONLY for Reflection + external calls (Tolk, changing game APIs). Normal code: null-checks.
- DebugLogger: always available, active only in debug mode (F12). Zero overhead otherwise.
- Search
decompiled/for real class/method names — NEVER guess - Check
docs/game-api.mdfor keys, methods, patterns - Only use safe mod keys (game-api.md → "Game Key Bindings")
- Large files (>500 lines): targeted search first (Grep/Glob), don't auto-read fully
- Feature done → suggest new conversation to save tokens. Update
project_status.md. - ~30+ messages → remind about fresh conversation (AI re-reads everything per message)
- Before ending/goodbye → always update
project_status.md - Never re-read decompiled code already documented in
docs/game-api.md - After new code analysis → document in
docs/game-api.mdimmediately - Problem persists after 3 attempts → stop, explain, suggest alternatives, ask user
project_status.md— central tracking (read first!)docs/ACCESSIBILITY_MODDING_GUIDE.md— code patternsdocs/technical-reference.md— MelonLoader, BepInEx, Harmony, Tolkdocs/unity-reflection-guide.md— Reflection (Unity)docs/state-management-guide.md— multiple handlersdocs/localization-guide.md— localizationdocs/menu-accessibility-checklist.md— menu checklistdocs/menu-accessibility-patterns.md— menu patternsdocs/game-api.md— keys, methods, patternsdocs/distribution-guide.md— packaging, publishingdocs/git-github-guide.md— Git/GitHub introtemplates/— code templatesscripts/— PowerShell helpers