fix(setup): restore non-interactive init#45
Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors the init command to be a non-interactive initialization path that installs recommended defaults, clearly distinguishing it from the interactive setup command. Documentation, help text, installation scripts, and tests have been updated to reflect this change. Additionally, the automatic launching of the interactive Powerlevel10k configuration wizard during init has been removed. I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Zsh startup benchmarkUbuntu 24.04 with Linuxbrew, atuin, fnm, fzf, zoxide, zinit, and the shipped plugins. Lower is better. Warm startup (daily use)
Cache-miss startupCompletion and tool-init caches are removed before every run; installed tools and plugins remain.
|
Background
PR #42 changed the
initroute fromrunSetup({ defaults: true })torunSetup(). That madeinitbehave exactly like interactivesetup, even though the two commands are intended to serve different use cases. The same path could also launchp10k configure, introducing a secondary interactive wizard into an otherwise unattended initialization flow.setupshould collect user choices.initshould pass an explicit option to the shared setup engine so recommended steps, tools, apps, and presets are selected without prompts.Root cause
The CLI stopped passing the recommended-defaults option for
init. Without that parameter, the shared setup engine entered its normal prompt-driven path. In addition, the defaults branch explicitly launched the Powerlevel10k configuration wizard when no existing configuration was found.Changes
initrouting throughrunSetup({ defaults: true })setup/initdesign boundary inAGENTS.mdCLAUDE.mdas a symlink toAGENTS.mdso coding agents share the same project guidanceDesign contract
setupremains interactive and asks for steps and contentinitremains non-interactive and selects recommended content through setup-engine parameters and recommended-value listsp10k configurerequire a later explicit user actionVerification
npm testbash -n install.shgit diff --check