fabro/lib/crates/fabro-cli/src
Bryan Helmkamp 0344cffce2
feat(cli): add fabro uninstall command
Adds a top-level `fabro uninstall` command that reverses `fabro install`
and `install.sh`. Defaults to dry-run (preview) mode, requiring `--yes`
to execute.

Features:
- Inventory and dry-run preview with sizes and `--json` support
- Server shutdown (guarded — only when server is running)
- Safety guardrails (refuses to delete /, $HOME, or dirs without markers)
- Shell config cleanup (exact `# fabro` sentinel match, PATH validation,
  atomic write via temp+rename)
- Binary status reporting with tailored brew/cargo/manual hints
- Exit code: 0 on success, 1 on critical failure

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 16:31:32 -04:00
..
commands feat(cli): add fabro uninstall command 2026-04-08 16:31:32 -04:00
shared refactor(billing): unify the LLM billing domain 2026-04-07 14:33:35 -04:00
sleep_inhibitor Consolidate unsafe process code into fabro-proc crate 2026-04-01 17:49:29 -04:00
args.rs feat(cli): add fabro uninstall command 2026-04-08 16:31:32 -04:00
logging.rs feat(logging): add daily log rotation and 7-day cleanup 2026-04-06 19:08:26 -04:00
main.rs feat(cli): add fabro uninstall command 2026-04-08 16:31:32 -04:00
manifest_builder.rs refactor(home): remove dead settings path fallbacks 2026-04-06 13:59:17 -04:00
server_client.rs fix(test): use no_proxy client in detach signal test to prevent macOS timeout flakes 2026-04-08 12:51:34 -04:00
server_runs.rs refactor(billing): unify the LLM billing domain 2026-04-07 14:33:35 -04:00
sse.rs refactor(cli): stream run attach over SSE 2026-04-07 12:58:37 -04:00
user_config.rs fix(clippy): restore workspace lint cleanups after main merge 2026-04-07 18:01:53 -04:00