feat: add progress TUI logging to remove and init commands#64
Open
DecampsRenan wants to merge 3 commits into
Open
feat: add progress TUI logging to remove and init commands#64DecampsRenan wants to merge 3 commits into
DecampsRenan wants to merge 3 commits into
Conversation
Make the progress TUI labels configurable (action/done) instead of hardcoded "Installing"/"Installed", then enable it for all one-shot commands: install, add, remove, and init (both init + install steps). https://claude.ai/code/session_01VhpBic8sMrVS9bFtbENWxY
Test the configurable labels (action/done) across all commands: - View shows correct action label while running (e.g. "Installing...", "Removing...") - View shows correct done label on success (e.g. "Installed in", "Removed in") - View shows "Failed in" on error, never the done label - Output line handling (trim, skip empty, ring buffer) - Line truncation with ellipsis - Config defaults to "Installing"/"Installed" - Dry-run and error edge cases for progress.Run https://claude.ai/code/session_01VhpBic8sMrVS9bFtbENWxY
Document the progress TUI changes (remove/init logging, configurable labels) under [Unreleased]. Add CLAUDE.md requiring agents to update the changelog in the same commit as any user-visible change. https://claude.ai/code/session_01VhpBic8sMrVS9bFtbENWxY
DecampsRenan
commented
Apr 17, 2026
| if err := runner.RunSubprocess(installArgs, dryRun); err != nil { | ||
| return fmt.Errorf("install failed: %w", err) | ||
| } | ||
| } |
Owner
Author
There was a problem hiding this comment.
The if isTTY && !rawOutput { progress.Run(...) } else { runner.RunSubprocess(...) } pattern is duplicated for both init and install steps here, and again in cmd/root.go. Consider extracting a small helper (e.g. runWithProgress(args, dryRun, rawOutput, action, done)) so the TTY decision lives in one place — otherwise future changes to the TTY detection or flag semantics need to be made in three spots.
DecampsRenan
commented
Apr 17, 2026
| if done == "" { | ||
| done = "Installed" | ||
| } | ||
| if len(args) == 0 { |
Owner
Author
There was a problem hiding this comment.
Minor: the empty-args check runs after applying defaults. Move if len(args) == 0 { ... } above the label defaulting so the early-return path doesn't do unnecessary work.
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.
Make the progress TUI labels configurable (action/done) instead of
hardcoded "Installing"/"Installed", then enable it for all one-shot
commands: install, add, remove, and init (both init + install steps).
https://claude.ai/code/session_01VhpBic8sMrVS9bFtbENWxY