Merged
Conversation
- Phase 12-13: Fix Native Binaries & Prepare Package - Phase 12-14: npm Publication & Verification - Phase 12-15: Homebrew Integration - Phase 12-16: Final Release & Documentation Files changed: - spec/milestone-12-renaming-to-anvs/phase-12-13.md - spec/milestone-12-renaming-to-anvs/phase-12-14.md - spec/milestone-12-renaming-to-anvs/phase-12-15.md - spec/milestone-12-renaming-to-anvs/phase-12-16.md
- Remove old xvn binaries from native/ directory - Remove xvn.ps1 PowerShell script from shell/ - Clean npm package to only contain anvs files - Package size reduced from 12.3MB to 6.1MB Files changed: - shell/xvn.ps1 (deleted) - native/*/xvn (deleted) - anvs-2.0.0.tgz (recreated)
- Fixed binary naming issue (xvn → anvs) - Downloaded and extracted correct artifacts from v2.0.0 release - Created clean npm package (anvs-2.0.0.tgz) with no xvn references - All verification checklist items passed - Ready to proceed to Phase 12-14 (npm Publication & Verification) Files changed: - spec/milestone-12-renaming-to-anvs/phase-12-13.md
Phase 12-15 successfully completed all tasks: Task 12.21: Update Homebrew Tap - ✅ Homebrew workflow ran successfully - ✅ Formula/anvs.rb updated to v2.0.0 - ✅ Download URLs point to v2.0.0 release assets - ✅ SHA256 checksums calculated and updated (ARM64 & x86_64) - ✅ Formula committed to homebrew-anvs repository Task 12.22: Verify Homebrew Formula Content - ✅ Class name is Anvs (not Xvn) - ✅ Version is 2.0.0 - ✅ URLs point to anvs release assets (not xvn) - ✅ SHA256 checksums present for all platforms - ✅ Binary name is anvs - ✅ Test command uses anvs - ✅ Ruby syntax valid Task 12.23: Test Homebrew Installation - ✅ Tap added successfully (olvrcc/anvs) - ✅ brew install anvs succeeded - ✅ Binary installed to /usr/local/bin/anvs - ✅ Version shows as 2.0.0 - ✅ anvs status works - ✅ Shell integration configured All verification checklist items passed. All success criteria met. Next: Proceed to Phase 12-16 (Final Release & Documentation) Files changed: - spec/milestone-12-renaming-to-anvs/phase-12-15.md
…eted Phase 12-16 successfully completed - finalizing the v2.0.0 release: Task 12.24: Verify GitHub Release - ✅ GitHub Release v2.0.0 created and public - ✅ All 4 platform binaries present as assets - ✅ Asset names correct (anvs-* not xvn-*) - ✅ Release marked as "Latest" Task 12.25: Update Release Notes - ✅ Comprehensive release notes added to GitHub Release - ✅ Breaking changes clearly documented - ✅ Installation instructions for npm and Homebrew included - ✅ Migration guide linked - ✅ Old package status explained Final Verification Checklist: - ✅ All tests pass: cargo test - ✅ Linting passes: cargo clippy - ✅ Code formatted: cargo fmt --check - ✅ npm package published: anvs@2.0.0 - ✅ Homebrew installation works: brew list anvs - ✅ GitHub Release created with comprehensive notes - ✅ Release marked as latest - ✅ anvs --version shows 2.0.0 Success Criteria Met: 1. ✅ All tests passing locally 2. ✅ Version 2.0.0 built and tested 3. ✅ Committed and tagged as v2.0.0 4. ✅ GitHub Actions built all platform binaries successfully 5. ✅ Published to npm as anvs@2.0.0 6. ✅ npm installation verified working 7. ✅ Homebrew formula updated and tested 8. ✅ GitHub Release created with comprehensive notes 9. ✅ All verification checklist items passed 10. ✅ No xvn references in published artifacts 🎉 Phase 12 (xvn → anvs rename) is now COMPLETE! The project has been successfully renamed and launched as anvs v2.0.0: - Code fully renamed - Binaries built and distributed - npm package published - Homebrew formula updated - GitHub release created with comprehensive documentation - Migration guide provided Files changed: - spec/milestone-12-renaming-to-anvs/phase-12-16.md
Add ⚡ emoji before "anvs:" prefix in all output messages to give the tool a distinctive visual identity and emphasize its automatic, fast nature. Changes: - Update BRAND constant in output.rs to include ⚡ emoji - Emoji appears before "anvs:" in all output functions: - info(), success(), warning(), error() - switched(), installing() - install_prompt() Example output: Before: anvs: Switched to Node.js 18.0.0 After: ⚡ anvs: Switched to Node.js 18.0.0 The emoji conveys speed, automation, and energy - perfect for an automatic version switcher. Files changed: - src/output.rs
Update BRAND constant from "⚡ anvs" to "⚡ Automatic Node Version Switcher" to display the full tool name in all output messages. This makes the tool's purpose immediately clear to users and creates a more distinctive, memorable brand identity. Example output: ⚡ Automatic Node Version Switcher: Switched to Node.js 18.0.0 ⚡ Automatic Node Version Switcher: Plugins: nvm Files changed: - src/output.rs
Update all output functions to display the brand "⚡ Automatic Node Version Switcher:"
on its own line, followed by the message on the next line.
This creates better visual separation and readability, especially when
multiple messages are displayed.
Example output:
Before:
⚡ Automatic Node Version Switcher: Plugins: nvm
After:
⚡ Automatic Node Version Switcher:
Plugins: nvm
Updated functions:
- info(), success(), warning(), error()
- switched(), installing()
Files changed:
- src/output.rs
Update brand color from bright cyan to lime green (RGB: 50, 205, 50) for better visibility and a more distinctive, energetic appearance. The lime green: - Stands out prominently on both dark and light terminal backgrounds - Conveys energy and automation (complements the ⚡ lightning bolt) - Creates a memorable, distinctive brand identity - Works well alongside the green success messages All output functions updated to use truecolor(50, 205, 50): - info(), success(), warning(), error() - switched(), installing() - install_prompt() - print_header() Example output: ⚡ Automatic Node Version Switcher: (in vibrant lime green) ✓ Switched to Node.js lts/iron (via nvm) (in bright green) Files changed: - src/output.rs
… tasks complete Update all references in README.md from 'anvs setup' to 'anvs init' to reflect the correct command name. The 'setup' command still works as a hidden alias for backward compatibility, but 'init' is the canonical command. Also mark completed backlog items: - ✅ Fix README command references (this commit) - ✅ Setup command already aliased to init (already implemented) - ✅ Brand on new line with better color (completed in previous commits) Changes: - README.md: Replace all 'anvs setup' with 'anvs init' - spec/BACKLOG.md: Mark 4 tasks as complete Files changed: - README.md - spec/BACKLOG.md
Created comprehensive specification for redesigning the anvs init wizard to be faster, cleaner, and more visually appealing. Design Goals: - Speed first: Complete setup in < 30 seconds - Visual excellence: Timeline-style progress indicators (Vite-inspired) - Smart defaults: Auto-detect everything, minimal prompts - Inline feedback: Show detected values within prompts - Progressive disclosure: Quick mode default, advanced mode available Proposed Flow: - Quick mode (default): Auto-detect → single confirmation → done - Advanced mode: 3-step customization with inline detection display - Visual design: Box drawing characters, lime green brand color, clean spacing Implementation Phases: 1. Visual Components (timeline, summary, compact prompts) 2. Quick Mode Implementation 3. Advanced Mode Refinement 4. Polish & Testing Target: v2.1.0 Estimated: 4-6 hours Inspiration: Vite CLI, ShadCN CLI (see screenshots in planning discussion) Files changed: - spec/milestone-13-wizard-redesign/SPEC.md (new) - spec/BACKLOG.md (updated with reference to milestone)
Created comprehensive task checklist for the wizard redesign milestone, organized into 6 phases with 80+ granular tasks. Phases: 1. Visual Components (timeline, summary, prompts) 2. Quick Mode Implementation (auto-detection, progress, completion) 3. Advanced Mode Refinement (3-step flow, inline detection, summary) 4. CLI Integration (flags, help text, routing) 5. Polish & Testing (visual refinement, UX, tests, docs) 6. Final Review & Release (QA, performance, release) Each task is specific and actionable with clear checkboxes. Ready for `/plan:milestone 13` to generate detailed PLAN.md. Files changed: - spec/milestone-13-wizard-redesign/TASKS.md (new)
…vements Added comprehensive implementation plan for wizard redesign: - 20 detailed tasks across 6 phases - Step-by-step implementation with code examples - WizardState struct definition for advanced mode - Clear progress display strategy (newline-based) - Enhanced non-interactive mode with error handling - Brand color constant in prerequisites - Testing strategies for each task - Integration points and success criteria Files changed: - spec/milestone-13-wizard-redesign/PLAN.md (new, comprehensive plan)
Add detailed phase plan for Visual Components (Phase 1): - Task 1.1: Timeline module with box-drawing characters - Task 1.2: Summary display module - Task 1.3: Refactor prompts for compact display Includes: - Complete code examples for all modules - 13 unit tests with expected output - Step-by-step actions with checkboxes - Visual testing instructions for dark/light themes - Verification checklist and success criteria - Rollback plan for each task Estimated duration: 2-3 hours Files changed: - spec/milestone-13-wizard-redesign/phase-1.md (new)
Updated .claude/commands/plan:phase.md to: - Accept any milestone number, not just milestone 12 - Dynamically detect milestone directory (numeric or descriptive) - Reference generic plan files (PLAN.md, SPEC.md, etc.) - Remove milestone-12-specific references - Make instructions milestone-agnostic Files changed: - .claude/commands/plan:phase.md
Streamlined command to be more concise and actionable: - Condensed process steps (4 steps vs lengthy instructions) - Extracted key patterns from phase-0.md examples - Added concrete quality requirements section - Emphasized critical elements: real paths, complete code, runnable commands - Removed reference to specific phase file, incorporated learnings directly - Clearer structure with specific formatting guidelines - Focus on self-contained, executable plans Files changed: - .claude/commands/plan:phase.md
- Add timeline module with box-drawing characters - Add summary display module for detection results - Add compact prompts with inline detection - All tests passing (13 new tests) Files changed: - src/init/timeline.rs (new) - src/init/summary.rs (new) - src/init/prompts.rs (refactored) - src/init/mod.rs (exports) - src/output.rs (BRAND_COLOR constant)
- Add comprehensive auto-detection (detect_all) - Implement quick mode wizard with single confirmation - Add installation progress indicators (4 steps) - Add completion screen with next steps - Wire up to CLI command handler with --advanced flag - Quick mode completes in < 30 seconds Files changed: - src/init/detection.rs (detect_all function) - src/init/wizard.rs (quick mode implementation) - src/init/mod.rs (updated init function) - src/cli.rs (added --advanced flag) - src/output.rs (added brand function)
- Implement 3-step advanced wizard with step counters - Add inline detection display with (detected, recommended) labels - Add configuration preview before applying changes - Support quick->advanced mode transition - All prompt functions handle detection gracefully Files changed: - src/init/wizard.rs (run_advanced_wizard implementation)
- Add comprehensive Phase 4 plan for CLI integration - Document WizardMode enum implementation - Specify help text updates for new default behavior - Include complete test matrix for all flag combinations - Provide detailed verification checklist - Estimated duration: 1-2 hours Files changed: - spec/milestone-13-wizard-redesign/phase-4.md (new file)
- Add WizardMode enum for clean mode selection - Update handle_init() to use enum-based routing - Simplify init() routing logic - Update CLI help text to reflect quick mode as default - Document --advanced flag for 3-step customization - Clarify all flag descriptions and examples - Test all flag combinations and mode transitions Files changed: - src/cli.rs (help text updates) - src/init/mod.rs (routing simplification) - src/init/wizard.rs (WizardMode enum, handle_init refactor) - tests/init_test.rs (added tests for mode detection)
- Visual refinement for cross-terminal compatibility - UX testing and optimization (< 30s quick mode) - Comprehensive integration tests added - Documentation updated for new wizard flow - Troubleshooting and migration guides added Phase 5 complete - ready for final review Files changed: - src/output.rs (added color constants) - tests/wizard_test.rs (new comprehensive wizard tests) - tests/integration.rs (added wizard integration tests) - README.md (updated init flow and troubleshooting) - docs/MIGRATION.md (added v2.1.0 upgrade guide)
…assed - Verified all wizard code for clarity and consistency - Confirmed error messages are user-friendly and actionable - Validated logging uses appropriate levels (info, warn, error) - Checked for TODO comments (found 2 minor items, non-blocking) - Ensured no unused imports or dead code - All tests pass, clippy clean, formatting correct - Documentation generates successfully Files reviewed: - src/init/timeline.rs - src/init/summary.rs - src/init/prompts.rs - src/init/wizard.rs - src/cli.rs - src/output.rs
- Update Cargo.toml version to 2.1.0 - Update package.json version to 2.1.0 - Add comprehensive changelog entry for wizard redesign - Create new Homebrew formula for anvs - Prepare for v2.1.0 release with wizard improvements Features: - Quick mode wizard (< 30s setup) - Advanced mode with full customization - Visual timeline progress indicators - Smart auto-detection with inline display - Modern CLI experience inspired by Vite/ShadCN Breaking changes: - Default anvs init now uses quick mode (was verbose wizard)
- Fix test_version_flag to expect 'anvs 2.1.0' instead of '2.0.0' - Ensures tests pass with new version number - All tests now passing (144 passed, 0 failed)
Wizard Redesign v2.1.0 - All phases complete! 🎉 Phase 6 Summary: ✅ Code review: All quality checks passed (clippy, fmt, tests) ✅ Performance: Quick mode < 30s (measured 0.533s) ✅ QA: Cross-platform testing (macOS Intel, bash/zsh shells) ✅ Release prep: Version bumped to 2.1.0, changelog updated ✅ Testing: All 144 tests pass, integration tests successful ✅ Artifacts: Release binaries built, npm package ready ✅ Git: Tag v2.1.0 created, Homebrew formula prepared Milestone 13: Wizard Redesign - COMPLETE Features delivered: - Quick mode wizard (< 30s setup) - Advanced mode with full customization - Visual timeline progress indicators - Smart auto-detection with inline display - Modern CLI experience inspired by Vite/ShadCN Breaking changes: - Default anvs init now uses quick mode Next: Push to main, create release PR, publish to npm/homebrew
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.
Release v2.1.0: Wizard Redesign
Complete redesign of the
anvs initwizard for speed, clarity, and modern CLI experience.✨ Major Features
--advancedflag--non-interactiveChanges
--advancedand--non-interactiveflagsTesting
Release Checklist