-
Notifications
You must be signed in to change notification settings - Fork 1
Contributing
This is a contributor and maintainer guide, not an end-user setup page. For product usage, start with the Beginner Guide or Commands Reference. Contributors should also follow the Documentation Standards.
Good changes improve one of these areas:
- live-console reliability
- command clarity
- output quality
- documentation accuracy
- release quality
- integration surface for external tools
Every contribution should leave the command surface clearer, safer, or easier to automate.
- Do not silently change command meaning.
- Do not widen the scope of a dangerous command without an explicit flag or confirmation path.
- Prefer explicit subcommands over overloaded positional behavior.
- Commands that should fail fast must not hang for long periods.
- Console-disconnect behavior must be handled honestly.
- If a command can trigger a reboot or disconnect, document that and check the post-state where possible.
- Human-readable output should stay clean and scannable.
- JSON output should remain stable enough for scripts.
- Help text must describe what the user can do, not hidden implementation details.
Any command or behavior change should update the relevant public docs in the same change set.
Minimum docs coverage:
-
README.mdfor user-visible feature additions -
wiki/Commands.mdfor new commands or flags -
wiki/CLI-Help.mdwhen help output changes -
wiki/Frameworks.mdwhen user-visible behavior meaningfully changes -
wiki/Releases.mdwhen shipped product behavior changes in a release-facing way
Build the Release CLI, then generate the exhaustive reference from that executable:
dotnet build ./src/Xbox360.Remote.Cli/Xbox360.Remote.Cli.csproj --configuration Release --no-restore
pwsh ./tools/update-cli-help.ps1 -ExecutablePath ./src/Xbox360.Remote.Cli/bin/Release/net10.0-windows/rgh.exeThe generator discovers canonical commands, omits duplicate shortcut trees, and validates every emitted section against --help. Do not edit CLI-Help.md by hand.
For console-facing features, check behavior on a live target or other realistic setup where available.
Examples:
-
statusreturns promptly and shows the expected fields -
titleresolves the active title correctly -
modules loadandmodules unloadmatch the reported module state -
save injectpreserves data on a round trip - screenshot output is viewable and not corrupted
Say exactly what was confirmed and what was left unverified.
Unacceptable:
- implying a feature was confirmed when it only built
Acceptable:
command builds, but live confirmation was blocked by missing JRPC2
Submitted changes should not include:
- local machine paths that reveal a local setup
- IP addresses
- console IDs or serials
- personal account data
- tokens or keys
- unredacted screenshots or logs
XeCLI documentation for the rgh command. For release downloads, use the latest release.