Skip to content

fix(setup): restore non-interactive init#45

Merged
ChangeHow merged 1 commit into
mainfrom
fix/non-interactive-init
Jul 13, 2026
Merged

fix(setup): restore non-interactive init#45
ChangeHow merged 1 commit into
mainfrom
fix/non-interactive-init

Conversation

@ChangeHow

Copy link
Copy Markdown
Owner

Background

PR #42 changed the init route from runSetup({ defaults: true }) to runSetup(). That made init behave exactly like interactive setup, even though the two commands are intended to serve different use cases. The same path could also launch p10k configure, introducing a secondary interactive wizard into an otherwise unattended initialization flow.

setup should collect user choices. init should 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

  • restore init routing through runSetup({ defaults: true })
  • keep Powerlevel10k personalization out of the non-interactive flow
  • document the permanent setup/init design boundary in AGENTS.md
  • add CLAUDE.md as a symlink to AGENTS.md so coding agents share the same project guidance
  • synchronize CLI help, installer messaging, and both README translations
  • update regression tests to assert the recommended-defaults parameter and non-interactive messaging

Design contract

  • setup remains interactive and asks for steps and content
  • init remains non-interactive and selects recommended content through setup-engine parameters and recommended-value lists
  • package installation stays non-interactive after selections are resolved
  • secondary personalization tools such as p10k configure require a later explicit user action

Verification

  • npm test
    • 234 Vitest tests passed
    • 12 Zsh performance tests passed
  • bash -n install.sh
  • git diff --check

@gemini-code-assist gemini-code-assist Bot 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.

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.

@github-actions

Copy link
Copy Markdown

Zsh startup benchmark

Ubuntu 24.04 with Linuxbrew, atuin, fnm, fzf, zoxide, zinit, and the shipped plugins. Lower is better.

Warm startup (daily use)

Command Mean [ms] Min [ms] Max [ms] Relative
current (0ab5769) 99.5 ± 0.9 98.4 101.9 1.00
main (7617db0) 100.2 ± 2.9 95.7 110.1 1.01 ± 0.03
previous commit (7617db0) 100.8 ± 3.7 97.8 110.5 1.01 ± 0.04

Cache-miss startup

Completion and tool-init caches are removed before every run; installed tools and plugins remain.

Command Mean [ms] Min [ms] Max [ms] Relative
current (0ab5769) 768.7 ± 3.7 763.2 775.7 1.01 ± 0.01
main (7617db0) 767.6 ± 5.6 761.2 779.8 1.01 ± 0.01
previous commit (7617db0) 763.1 ± 3.4 757.8 766.9 1.00

@ChangeHow
ChangeHow merged commit 38ced78 into main Jul 13, 2026
2 checks passed
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.

1 participant