feat: hand the Windows office install to the user as a right-click .cmd - #244
Merged
Conversation
Field diagnosis with a controlled experiment: Kaspersky Endpoint Security silently kills powershell.exe when it is a child of node.exe running the office setup script - no exception, no crash record, no Defender log - while the IDENTICAL script from the IDENTICAL folder (~/.codev-hub/office) finishes with "Verification passed" when a user launches it in an elevated shell. The trigger is process ancestry, not path or content, and endpoint policy is not changeable in the affected environments. `codevhub skill office` on Windows therefore no longer spawns the installer. It stages the script and bundle as before, writes an Install-CoDev-Office.cmd (Uninstall- for --uninstall) next to them with any --skip-verify/--force-skills flags baked in, opens the folder in Explorer, and prints three steps: right-click, Run as administrator, approve. The .cmd reproduces the verified-good ancestry (explorer -> cmd -> powershell) and ends with `pause` so the closing "Verification passed" (or a [FAIL]) stays on screen for low-tech users. Ubuntu/macOS keep the automatic flow. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…back Some environments strip "Run as administrator" from the context menu, and some users have no admin rights at all. The staged .cmd now handles both from a plain double-click: - not elevated -> relaunches itself elevated via a UAC prompt (Start-Process -Verb RunAs) - elevation declined or unavailable -> continues non-elevated, which the setup script explicitly supports: each component installer raises its own permission prompt, and a declined one only skips that component (fatal for the .NET SDK alone) The printed steps now say double-click instead of right-click, with the no-admin-rights path spelled out. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Owner
Author
|
Added a second commit: the staged .cmd is now self-elevating — a plain double-click requests admin rights itself via a UAC prompt ( |
This was referenced Aug 5, 2026
quickbeard
pushed a commit
that referenced
this pull request
Aug 6, 2026
`codevhub skill office` ships four skills — minimax-docx, minimax-xlsx, pptx-generator and minimax-pdf — but `codevhub help` and the README both advertised only DOCX and XLSX, so users had no way to learn that PPTX and PDF authoring were installed too. `src/lib/office.ts` already documented all four; only the user-facing copy was stale. Pin the list with a help test so it can't drift from the bundle again. Two adjacent README claims in the same section were stale against the code and are corrected here as well: - Bundle sizes (610 MB / 820 MB / 1.4 GB) contradicted APPROX_BUNDLE_MB. Rather than restate numbers the README has to track, point at the heads-up runSkillOffice already prints from that constant. - The download path and Windows behavior: officeDownloadsDir() returns %PUBLIC%\Downloads\codev-office on Windows, and since #244–#246 codevhub deliberately prints the elevated-PowerShell command instead of launching the installer. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
quickbeard
added a commit
that referenced
this pull request
Aug 6, 2026
* docs: name all four office formats in help and README `codevhub skill office` ships four skills — minimax-docx, minimax-xlsx, pptx-generator and minimax-pdf — but `codevhub help` and the README both advertised only DOCX and XLSX, so users had no way to learn that PPTX and PDF authoring were installed too. `src/lib/office.ts` already documented all four; only the user-facing copy was stale. Pin the list with a help test so it can't drift from the bundle again. Two adjacent README claims in the same section were stale against the code and are corrected here as well: - Bundle sizes (610 MB / 820 MB / 1.4 GB) contradicted APPROX_BUNDLE_MB. Rather than restate numbers the README has to track, point at the heads-up runSkillOffice already prints from that constant. - The download path and Windows behavior: officeDownloadsDir() returns %PUBLIC%\Downloads\codev-office on Windows, and since #244–#246 codevhub deliberately prints the elevated-PowerShell command instead of launching the installer. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * docs: say what the office skills do, not "authoring" "Authoring" dates to #233, when the bundle was DOCX-only. It reads as write-only, and all four skills also read and edit existing files: minimax-xlsx is "open, create, read, analyze, edit, or validate"; pptx-generator "generate, edit, and read"; minimax-pdf has FILL and REFORMAT modes alongside CREATE. Name the verbs instead. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Quickbeard <quickbeard@gmail.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes out the silent-death investigation on Windows with a controlled field experiment (companion to the diagnosability work in quickbeard/codev-scripts#20):
~/.codev-hub/office), launched by the user in an elevated shell: runs to "Verification passed - codev-office skills are ready".So the trigger is process ancestry, not path or content — and endpoint policy is centrally managed and unchangeable in the affected environments. The affected user base is low-tech, so the fix optimizes for zero typing:
codevhub skill officeon Windows no longer spawns the installer. It stages the script + bundle exactly as before, then:Install-CoDev-Office.cmd(Uninstall-CoDev-Office.cmdfor the hidden--uninstallflow) next to them, with any--skip-verify/--force-skillsflags baked in;The
.cmdreproduces the verified-good ancestry (explorer → cmd → powershell) and ends withpause, so the closing green "Verification passed" — or a[FAIL]from the scripts' new error traps — stays on screen. Ubuntu/macOS keep the fully automatic flow (KES isn't in play there), and--download-only/cross-platform staging also get the wrapper, which is handy for staging onto USB for another machine.Test plan
pnpm typecheck,pnpm check, full download/office suite: 33 passed%~dp0,pause); the Windows-host test now asserts the handoff instead of the old spawnerrorevent handled, not just try/catch)codevhub skill officeon a KES machine → right-click flow → full "Verification passed" (matches the manual procedure already validated in the field today)🤖 Generated with Claude Code