Skip to content

refactor: reduce to one command and show checksums before applying - #32

Merged
Stensel8 merged 3 commits into
mainfrom
claude/bypassnro-simplify-docs-3bb0xi
Sep 19, 2026
Merged

Stensel8 merged 3 commits into
mainfrom
claude/bypassnro-simplify-docs-3bb0xi

Conversation

@Stensel8

@Stensel8 Stensel8 commented Sep 19, 2026

Copy link
Copy Markdown
Member

bypass.ps1:

  • drop all parameters (-UnattendUrl, -Destination, -Force, -NoReboot) and the
    Start-BitsTransfer fallback, backup-existing-answer-file and exit-code paths
    that only existed to support them
  • print the SHA256 of unattend.xml and bypass.ps1 and ask the reader to compare
    them with the checksums on https://bypassnro.thectic.nl/ before continuing

The project documented four ways to run this (iex one-liner, CMD wrapper,
script block with -Force, script block with -NoReboot) plus a separate
autounattend.xml-on-USB path. Only the one-liner is needed:

    iex(irm bypassnro.thectic.nl/bypass.ps1)

bypass.ps1:
- drop all parameters (-UnattendUrl, -Destination, -Force, -NoReboot) and the
  Start-BitsTransfer fallback, backup-existing-answer-file and exit-code paths
  that only existed to support them
- print the SHA256 of unattend.xml and bypass.ps1 and ask the reader to compare
  them with the checksums on https://bypassnro.thectic.nl/ before continuing
- spell out in the prompt what is about to happen: the account names Admin
  (Administrators, no password, auto sign-in once) and User (Users, no
  password), the restart into OOBE, and setting passwords afterwards
- nothing is written until the confirmation is answered, so a mismatched
  checksum can still be backed out of
- separate the download failure and the "this is not an answer file" messages

unattend.xml: drop the five empty <settings> passes and trim the header.

README and site: one command, no flags, no USB path. Record that the method was
last tested on 19 September 2026 on build 26200.9457 (Windows 11 25H2) and
looks unaffected on 26H2, and republish both checksums.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BqTk2sxf7NP6DRHe91T3iq
Windows setup runs OOBE under a temporary account called defaultuser0, so that
is who you are in the console Shift+F10 opens. Any other account means the
computer is most likely already set up, where Sysprep /oobe sends the whole
machine back through setup instead of just skipping an account screen.

The script now names the account it found, says what continuing would do, and
requires the word CONTINUE before it downloads anything. A plain y is not
enough, so answering the later confirmation out of habit cannot reset a working
computer. defaultuser0 goes straight through as before.

Documented on both language versions and in the README, and republished the
bypass.ps1 checksum.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BqTk2sxf7NP6DRHe91T3iq
Nothing calls Get-Help on a script that is fetched and executed in one go, so
the 35-line help block only added weight. A nine-line header says what it does
and what it costs; the details it repeated are already in the README and on the
site.

Puts bypass.ps1 back at 188 lines, the size it was before the checksum display
and the defaultuser0 warning were added.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BqTk2sxf7NP6DRHe91T3iq
Copilot AI lite review requested due to automatic review settings September 19, 2026 14:51
@Stensel8
Stensel8 merged commit d25008b into main Sep 19, 2026
9 of 10 checks passed
@Stensel8
Stensel8 deleted the claude/bypassnro-simplify-docs-3bb0xi branch September 19, 2026 14:52

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Fix checksum verification to hash the executed payload and remove the obsolete USB-path instruction.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 High severity

Open (1)
What changed in this PR

Refactors BypassNRO to a single interactive PowerShell command with checksum confirmation and refreshed documentation.

Changes:

  • Simplifies bypass.ps1 and removes legacy options.
  • Trims unattend.xml.
  • Updates English/Dutch documentation, README, and contribution guidance.
File Summary
src/​static/​unattend.xml Removes empty settings passes; retains an outdated USB-path instruction (nit).
src/​static/​bypass.ps1 Simplifies download and confirmation flow; checksum verification hashes a separate fetch (critical).
src/​content/​_index.nl.md Updates Dutch usage guidance and checksums.
src/​content/​_index.md Updates English usage guidance and checksums.
README.md Documents the single-command workflow.
CONTRIBUTING.md Updates the commit-message example.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/static/bypass.ps1
Comment on lines +84 to +87
# bypass.ps1 is downloaded a second time purely so its checksum can be shown
# below; only unattend.xml is used for anything.
Invoke-WebRequest -Uri $unattendUrl -OutFile $answerFile -UseBasicParsing
Invoke-WebRequest -Uri $scriptUrl -OutFile $scriptCopy -UseBasicParsing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants