Skip to content

feat(bootstrap): align cli with config sections#10613

Merged
jdx merged 3 commits into
mainfrom
codex/bootstrap-config-cli
Jun 25, 2026
Merged

feat(bootstrap): align cli with config sections#10613
jdx merged 3 commits into
mainfrom
codex/bootstrap-config-cli

Conversation

@jdx

@jdx jdx commented Jun 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • reshape mise bootstrap subcommands so the visible CLI maps to config sections (packages apply, dotfiles, mise-shell-activate, macos defaults, macos launchd-agents, linux systemd-units, repos)
  • keep existing short/legacy forms as hidden compatibility aliases where practical
  • update generated CLI docs, man/usage output, schema text, hints, and e2e coverage

Tests

  • cargo fmt --check
  • cargo check
  • cargo build
  • git diff --check
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_bootstrap
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_bootstrap_shell_activate
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_system_defaults
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_dotfiles_files
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_system_login_shell
  • MISE_E2E_BIN=$PWD/target/debug/mise e2e/run_test e2e/cli/test_system_status

This PR was generated by an AI coding assistant.


Note

Medium Risk
User-facing CLI renames and nesting may break scripts that relied on old command paths; behavior is largely preserved via aliases, but discoverability and automation need updating.

Overview
Restructures the experimental mise bootstrap CLI so visible commands mirror config layout: packages apply (replacing install), bootstrap dotfiles, mise-shell-activate, macos defaults, macos launchd-agents, and linux systemd-units.

Legacy paths (mise dotfiles apply during bootstrap, packages install, shell, macos-defaults, launchd, systemd) remain as hidden or aliased compatibility shims. Top-level mise bootstrap and --only / --skip are updated to the new part names (with old short names still accepted).

Docs, generated CLI help, man pages, usage KDL, JSON schema, doctor/install hints, Fig completions, and e2e tests are updated to the new command strings throughout.

Reviewed by Cursor Bugbot for commit 93e4575. Bugbot is set up for automated code reviews on this repo. Configure here.

Summary by CodeRabbit

  • New Features
    • Added clearer, part-specific mise bootstrap subcommands for dotfiles, shell activation, macOS defaults/LaunchAgents, and Linux systemd units, each with apply/status.
    • Introduced bootstrap dotfiles apply and bootstrap dotfiles status as documented bootstrap-managed workflows.
  • Bug Fixes
    • Updated bootstrap package guidance and status/missing examples to use packages apply consistently; install remains accepted as an alias.
    • Improved bootstrap status output details (including JSON “reason” when states differ).
  • Documentation
    • Refreshed CLI docs, completions, and man pages to match the new command tree, part names, and options.
  • Tests
    • Updated end-to-end bootstrap tests to assert the new command names and outputs.

@coderabbitai

coderabbitai Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 01626585-5053-4fd5-a348-73c48a2855f0

📥 Commits

Reviewing files that changed from the base of the PR and between bf09572 and 93e4575.

📒 Files selected for processing (6)
  • docs/cli/bootstrap/dotfiles/apply.md
  • docs/cli/bootstrap/dotfiles/status.md
  • docs/cli/dotfiles/apply.md
  • mise.usage.kdl
  • src/cli/bootstrap.rs
  • src/cli/dotfiles/apply.rs
💤 Files with no reviewable changes (2)
  • src/cli/dotfiles/apply.rs
  • docs/cli/dotfiles/apply.md
✅ Files skipped from review due to trivial changes (2)
  • docs/cli/bootstrap/dotfiles/status.md
  • docs/cli/bootstrap/dotfiles/apply.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • mise.usage.kdl
  • src/cli/bootstrap.rs

📝 Walkthrough

Walkthrough

Bootstrap docs, generated help, and CLI specs were updated to use the new part names and apply/status subcommands. The bootstrap root wiring and package, dotfiles, shell, macOS, and Linux command paths were renamed accordingly.

Changes

Bootstrap command namespace refresh

Layer / File(s) Summary
Top-level bootstrap tree
src/cli/bootstrap.rs, docs/.vitepress/cli_commands.ts, docs/bootstrap.md, docs/cli/bootstrap.md, docs/cli/index.md, man/man1/mise.1, mise.usage.kdl, xtasks/fig/src/mise.ts, src/system/mod.rs
Bootstrap docs, generated CLI pages, the man page, and the completion spec switch visible names and examples to the new part and subcommand layout.
System package apply rename
src/cli/bootstrap.rs, src/cli/doctor/mod.rs, src/cli/install.rs, src/cli/system/..., src/system/packages/brew/..., schema/mise.json, settings.toml, e2e/cli/test_system_install_*, e2e/cli/test_system_login_shell, e2e/cli/test_system_status
The bootstrap root dispatcher and package path route through packages apply, and package-related warnings, schema text, and e2e checks follow the renamed command.
Dotfiles bootstrap commands
src/cli/bootstrap.rs, src/cli/dotfiles/*.rs, docs/cli/bootstrap/dotfiles*.md, docs/cli/dotfiles*.md, docs/bootstrap.md, docs/cli/index.md, mise.usage.kdl, e2e/cli/test_bootstrap
The bootstrap dotfiles command group is wired in with apply and status subcommands, and the dotfiles bootstrap check follows those names.
Shell activation status rename
src/cli/bootstrap.rs, src/system/shell_activation.rs, docs/bootstrap/shell.md, docs/cli/bootstrap/mise-shell-activate*.md, e2e/cli/test_bootstrap_shell_activate
Shell activation status now uses direct edit checks and inline JSON under mise-shell-activate, with the shell-activation e2e flow updated.
Platform bootstrap groups
src/cli/bootstrap.rs, src/cli/doctor/mod.rs, src/system/defaults.rs, schema/mise.json, docs/bootstrap/launchd.md, docs/bootstrap/macos-defaults.md, docs/bootstrap/packages/*.md, docs/bootstrap/systemd.md, docs/cli/bootstrap/linux*.md, docs/cli/bootstrap/macos*.md, docs/cli/bootstrap/packages*.md, docs/bootstrap.md, docs/cli/bootstrap.md, docs/cli/index.md, man/man1/mise.1, mise.usage.kdl, e2e/cli/test_bootstrap, e2e/cli/test_system_defaults
macOS defaults/LaunchAgents and Linux systemd-units are split into separate bootstrap groups, with matching wiring and platform checks.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

  • jdx/mise#10376: Introduces the dotfiles bootstrap flow that this PR renames to bootstrap dotfiles.
  • jdx/mise#10610: Introduces the shell-activation bootstrap path that this PR renames to bootstrap mise-shell-activate and updates status handling for.
  • jdx/mise#10399: Introduces the Linux systemd bootstrap surface that this PR renames to bootstrap linux systemd-units.

Poem

🐰 Hop, the bootstrap map is new today,
Dotfiles and shell now find their way.
Apply and status scamper in a row,
Mac and Linux units tidy up the flow.
I nibble carrots; the command tree grows!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 18.75% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: aligning bootstrap CLI names and structure with config sections.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 markdownlint-cli2 (0.22.1)
docs/cli/bootstrap/dotfiles/apply.md

markdownlint-cli2 v0.22.1 (markdownlint v0.40.0)
Error: Unable to use configuration file '/coderabbit-0.markdownlint-cli2.jsonc'; ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at throwForConfigurationFile (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:48:9)
at readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:169:5)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
[cause]: Error: ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at async open (node:internal/fs/promises:640:25)
at async Object.readFile (node:internal/fs/promises:1287:14)
at async readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:141:17)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/coderabbit-0.markdownlint-cli2.jsonc'
}
}

docs/cli/bootstrap/dotfiles/status.md

markdownlint-cli2 v0.22.1 (markdownlint v0.40.0)
Error: Unable to use configuration file '/coderabbit-0.markdownlint-cli2.jsonc'; ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at throwForConfigurationFile (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:48:9)
at readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:169:5)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
[cause]: Error: ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at async open (node:internal/fs/promises:640:25)
at async Object.readFile (node:internal/fs/promises:1287:14)
at async readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:141:17)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/coderabbit-0.markdownlint-cli2.jsonc'
}
}


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@greptile-apps

greptile-apps Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Reshapes the mise bootstrap CLI so visible subcommands mirror config section hierarchy (packages apply, dotfiles apply/status, mise-shell-activate, macos defaults, macos launchd-agents, linux systemd-units), while preserving all old paths as hidden aliases. Generated docs, man pages, usage KDL, Fig completions, schema strings, doctor/install hints, and e2e coverage are updated to match.

  • packages install becomes packages apply (alias kept); shell becomes mise-shell-activate (alias kept); macos-defaults splits into macos defaults; launchd/systemd move under macos launchd-agents/linux systemd-units respectively.
  • A new bootstrap dotfiles apply/status subcommand is added, delegating to the existing DotfilesApply/DotfilesStatus structs via #[clap(flatten)].
  • The two shell_activation_state/shell_activation_json helper functions are removed and their logic inlined at both call sites (BootstrapStatus and BootstrapShellStatus).

Confidence Score: 5/5

Safe to merge — all renamed commands retain hidden aliases and the e2e suite exercises both old and new forms.

Every renamed command retains a hidden alias, so existing scripts keep working. The new bootstrap dotfiles subcommand correctly delegates through the BootstrapDotfiles::run experimental guard before reaching DotfilesApply/DotfilesStatus. The inlining of shell_activation_state/shell_activation_json is mechanical and both sites are identical. E2e tests cover the new paths, the legacy alias paths, and cross-platform skipping behaviour.

No files require special attention.

Important Files Changed

Filename Overview
src/cli/bootstrap.rs Core CLI restructuring: adds BootstrapDotfiles, BootstrapMacos, BootstrapLinux subcommand groups; renames packages install→apply, shell→mise-shell-activate; inlines shell_activation_state/json helpers; adds legacy hidden aliases throughout
src/cli/doctor/mod.rs Updates warning messages to point users at new command names (packages apply, macos defaults apply)
src/cli/dotfiles/mod.rs Exports DotfilesApply and DotfilesStatus as pub(crate) so bootstrap.rs can flatten them into BootstrapDotfilesApply/Status
src/cli/system/install.rs Doc string and examples updated from install→apply; notes that install is accepted as alias
e2e/cli/test_bootstrap New assertions verify both new long-form commands (dotfiles status, macos launchd-agents, linux systemd-units) and legacy aliases (packages install) still work
e2e/cli/test_bootstrap_shell_activate All shell→mise-shell-activate renames applied; a legacy alias smoke-test (bootstrap shell status) is added
e2e/cli/test_system_defaults macos-defaults→macos defaults command path updated throughout; no alias smoke-tests for old macos-defaults form (acceptable given hidden alias exists)
src/system/shell_activation.rs Module-level doc comment updated to reference new mise bootstrap mise-shell-activate apply path
mise.usage.kdl Generated usage/completion file updated with new command hierarchy
xtasks/fig/src/mise.ts Fig completion spec updated to reflect new command structure with dotfiles, macos, linux subgroup names

Reviews (3): Last reviewed commit: "fix(bootstrap): use scoped dotfiles exam..." | Re-trigger Greptile

@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown

Hyperfine Performance

mise x -- echo

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.6.13 x -- echo 21.8 ± 2.8 18.8 38.8 1.00
mise x -- echo 22.1 ± 1.1 19.7 28.1 1.01 ± 0.14

mise env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.6.13 env 22.0 ± 1.3 18.9 26.7 1.00
mise env 22.7 ± 1.6 19.7 29.4 1.03 ± 0.10

mise hook-env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.6.13 hook-env 21.8 ± 1.4 19.0 26.6 1.00
mise hook-env 24.2 ± 1.2 21.9 29.7 1.11 ± 0.09
⚠️ Inconclusive: hook-env measured 11% slower, but the relative uncertainty overlaps the 10% threshold.

mise ls

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.6.13 ls 18.4 ± 1.4 15.9 27.0 1.00
mise ls 19.5 ± 1.3 16.3 23.6 1.06 ± 0.11

xtasks/test/perf

Command mise-2026.6.13 mise Variance
install (cached) 150ms 151ms +0%
ls (cached) 69ms 70ms -1%
bin-paths (cached) 74ms 75ms -1%
task-ls (cached) 146ms 148ms -1%

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 8

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/cli/bootstrap.md`:
- Around line 4-5: The bootstrap docs header metadata is incorrect: the Usage
line is too strict and the Source code link points to the wrong module. Update
the bootstrap documentation header so it reflects that the command can run
without a subcommand, matching the `command: Option<Commands>` behavior in
`bootstrap.rs`, and change the source reference to the actual
`src/cli/bootstrap.rs` location. Use the `Usage` and `Source code` entries in
the docs header as the place to fix this.

In `@docs/cli/bootstrap/dotfiles/apply.md`:
- Around line 34-42: The examples block still uses the legacy dotfiles command
spelling, so update the usage samples in the apply docs to consistently use the
bootstrap namespace. Replace the `mise dotfiles apply` variants with the
corresponding `mise bootstrap dotfiles apply` forms, keeping the same flags and
examples, so the documented CLI matches the renamed surface.

In `@docs/cli/bootstrap/dotfiles/status.md`:
- Around line 27-35: The examples in the dotfiles status docs still mix the old
CLI form with the bootstrap namespace, so update the example block in the status
documentation to use the bootstrap command consistently. Keep the existing
`status` examples, but rewrite the `mise dotfiles ...` invocations to `mise
bootstrap dotfiles ...` so the docs match the renamed CLI surface and the
`status` section stays consistent.

In `@docs/cli/bootstrap/packages/status.md`:
- Around line 23-25: The command examples in the status docs are triggering
MD014 because they show prompted shell commands without any accompanying output.
Update the examples under the packages status section by either removing the “$”
prompt prefixes or adding representative output for the commands, using the
existing status command examples to keep the docs lint-clean.

In `@docs/cli/bootstrap/packages/upgrade.md`:
- Around line 53-58: The command examples in the package upgrade docs are
written as prompted shell commands only, which triggers MD014. Update the
examples in the bootstrap packages upgrade section by either removing the
leading shell prompt symbols from the commands or adding corresponding output
lines so the examples are no longer prompt-only; keep the example set consistent
across the listed mise bootstrap packages upgrade variants.

In `@docs/cli/bootstrap/packages/use.md`:
- Around line 51-53: The example block in the packages use docs is triggering
MD014 because it shows prompted commands without any output. Update the examples
under the use command documentation by either removing the leading shell prompts
or adding representative output for the listed commands, keeping the examples
consistent with the rest of the doc.

In `@docs/cli/dotfiles/apply.md`:
- Around line 37-41: The usage examples for DotfilesApply include an unsupported
--verbose flag that is not exposed by the command. Update the examples in the
docs block for apply to remove the --verbose case and keep only valid
invocations of mise dotfiles apply and its supported options, using the
DotfilesApply command name as the reference point.

In `@mise.usage.kdl`:
- Around line 519-522: The BootstrapPackagesCommands::Apply CLI spec advertises
an alias that the runtime does not currently support, causing a mismatch between
docs and behavior. Update the clap definition in
BootstrapPackagesCommands::Apply to either add support for the short alias i or
remove it from the mise.usage.kdl spec so generated help/man pages match the
actual command behavior.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 0a834412-3ba6-4f24-9d59-8b1c0f73b9a8

📥 Commits

Reviewing files that changed from the base of the PR and between 4ef22b1 and e5afc5a.

📒 Files selected for processing (86)
  • docs/.vitepress/cli_commands.ts
  • docs/bootstrap.md
  • docs/bootstrap/launchd.md
  • docs/bootstrap/macos-defaults.md
  • docs/bootstrap/packages/apk.md
  • docs/bootstrap/packages/apt.md
  • docs/bootstrap/packages/dnf.md
  • docs/bootstrap/packages/index.md
  • docs/bootstrap/packages/mas.md
  • docs/bootstrap/packages/pacman.md
  • docs/bootstrap/shell.md
  • docs/bootstrap/systemd.md
  • docs/cli/bootstrap.md
  • docs/cli/bootstrap/dotfiles.md
  • docs/cli/bootstrap/dotfiles/apply.md
  • docs/cli/bootstrap/dotfiles/status.md
  • docs/cli/bootstrap/launchd.md
  • docs/cli/bootstrap/launchd/apply.md
  • docs/cli/bootstrap/launchd/status.md
  • docs/cli/bootstrap/linux.md
  • docs/cli/bootstrap/linux/systemd-units.md
  • docs/cli/bootstrap/linux/systemd-units/apply.md
  • docs/cli/bootstrap/linux/systemd-units/status.md
  • docs/cli/bootstrap/macos-defaults.md
  • docs/cli/bootstrap/macos-defaults/apply.md
  • docs/cli/bootstrap/macos-defaults/status.md
  • docs/cli/bootstrap/macos.md
  • docs/cli/bootstrap/macos/defaults.md
  • docs/cli/bootstrap/macos/defaults/apply.md
  • docs/cli/bootstrap/macos/defaults/status.md
  • docs/cli/bootstrap/macos/launchd-agents.md
  • docs/cli/bootstrap/macos/launchd-agents/apply.md
  • docs/cli/bootstrap/macos/launchd-agents/status.md
  • docs/cli/bootstrap/mise-shell-activate.md
  • docs/cli/bootstrap/mise-shell-activate/apply.md
  • docs/cli/bootstrap/mise-shell-activate/status.md
  • docs/cli/bootstrap/packages.md
  • docs/cli/bootstrap/packages/apply.md
  • docs/cli/bootstrap/packages/brew/tap.md
  • docs/cli/bootstrap/packages/brew/untap.md
  • docs/cli/bootstrap/packages/import.md
  • docs/cli/bootstrap/packages/prune.md
  • docs/cli/bootstrap/packages/status.md
  • docs/cli/bootstrap/packages/upgrade.md
  • docs/cli/bootstrap/packages/use.md
  • docs/cli/bootstrap/shell.md
  • docs/cli/bootstrap/shell/apply.md
  • docs/cli/bootstrap/shell/status.md
  • docs/cli/bootstrap/systemd.md
  • docs/cli/bootstrap/systemd/apply.md
  • docs/cli/bootstrap/systemd/status.md
  • docs/cli/dotfiles.md
  • docs/cli/dotfiles/apply.md
  • docs/cli/dotfiles/status.md
  • docs/cli/index.md
  • docs/tips-and-tricks.md
  • e2e/cli/test_bootstrap
  • e2e/cli/test_bootstrap_shell_activate
  • e2e/cli/test_dotfiles_files
  • e2e/cli/test_system_defaults
  • e2e/cli/test_system_install_apk
  • e2e/cli/test_system_install_apt
  • e2e/cli/test_system_install_brew_linux
  • e2e/cli/test_system_install_brew_macos_slow
  • e2e/cli/test_system_install_brew_source_slow
  • e2e/cli/test_system_login_shell
  • e2e/cli/test_system_status
  • man/man1/mise.1
  • mise.usage.kdl
  • schema/mise.json
  • src/cli/bootstrap.rs
  • src/cli/doctor/mod.rs
  • src/cli/dotfiles/apply.rs
  • src/cli/dotfiles/mod.rs
  • src/cli/dotfiles/status.rs
  • src/cli/install.rs
  • src/cli/system/driver.rs
  • src/cli/system/install.rs
  • src/cli/system/upgrade.rs
  • src/cli/system/use.rs
  • src/system/defaults.rs
  • src/system/mod.rs
  • src/system/packages/brew/mod.rs
  • src/system/packages/brew/pour.rs
  • src/system/packages/brew/source.rs
  • src/system/shell_activation.rs
💤 Files with no reviewable changes (12)
  • docs/cli/bootstrap/shell/apply.md
  • docs/cli/bootstrap/shell/status.md
  • docs/cli/bootstrap/macos-defaults/status.md
  • docs/cli/bootstrap/systemd.md
  • docs/cli/bootstrap/macos-defaults.md
  • docs/cli/bootstrap/launchd.md
  • docs/cli/bootstrap/systemd/status.md
  • docs/cli/bootstrap/macos-defaults/apply.md
  • docs/cli/bootstrap/launchd/status.md
  • docs/cli/bootstrap/systemd/apply.md
  • docs/cli/bootstrap/launchd/apply.md
  • docs/cli/bootstrap/shell.md

Comment thread docs/cli/bootstrap.md Outdated
Comment thread docs/cli/bootstrap/dotfiles/apply.md
Comment thread docs/cli/bootstrap/dotfiles/status.md
Comment thread docs/cli/bootstrap/packages/status.md Outdated
Comment thread docs/cli/bootstrap/packages/upgrade.md Outdated
Comment thread docs/cli/bootstrap/packages/use.md Outdated
Comment thread docs/cli/dotfiles/apply.md Outdated
Comment thread mise.usage.kdl Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@xtasks/fig/src/mise.ts`:
- Around line 1371-1377: The bootstrap part suggestion arrays in mise.ts are
missing the legacy systemd alias, so update the `--only` and `--skip`
suggestions in the relevant bootstrap option setup to include `"systemd"`
alongside the existing legacy entries like `shell`, `defaults`, and `launchd`.
Make the change in the code paths that build the suggestions for the bootstrap
command so the completion list stays consistent with the supported usage
choices.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 152e8b82-0407-4b42-8db9-a58432851e99

📥 Commits

Reviewing files that changed from the base of the PR and between e5afc5a and bf09572.

📒 Files selected for processing (14)
  • docs/.vitepress/cli_commands.ts
  • docs/cli/bootstrap.md
  • docs/cli/bootstrap/dotfiles/apply.md
  • docs/cli/bootstrap/dotfiles/status.md
  • docs/cli/bootstrap/packages/apply.md
  • docs/cli/bootstrap/packages/upgrade.md
  • docs/cli/dotfiles/apply.md
  • docs/cli/dotfiles/status.md
  • docs/cli/index.md
  • man/man1/mise.1
  • mise.usage.kdl
  • settings.toml
  • src/cli/bootstrap.rs
  • xtasks/fig/src/mise.ts
✅ Files skipped from review due to trivial changes (11)
  • docs/cli/bootstrap/dotfiles/apply.md
  • docs/cli/bootstrap/dotfiles/status.md
  • docs/cli/bootstrap/packages/upgrade.md
  • docs/cli/dotfiles/apply.md
  • docs/cli/dotfiles/status.md
  • settings.toml
  • docs/cli/bootstrap/packages/apply.md
  • docs/cli/bootstrap.md
  • docs/.vitepress/cli_commands.ts
  • docs/cli/index.md
  • man/man1/mise.1
🚧 Files skipped from review as they are similar to previous changes (2)
  • src/cli/bootstrap.rs
  • mise.usage.kdl

Comment thread xtasks/fig/src/mise.ts
@jdx jdx merged commit 9cefccc into main Jun 25, 2026
35 checks passed
@jdx jdx deleted the codex/bootstrap-config-cli branch June 25, 2026 01:25
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