- Implement tito benchmark baseline and capstone commands
- Add SPEC-style normalization for baseline benchmarks
- Implement tito community join, update, leave, stats, profile commands
- Use project-local storage (.tinytorch/) for user data
- Add privacy-by-design with explicit consent prompts
- Update site documentation for community and benchmark features
- Add Marimo integration for online notebooks
- Clean up redundant milestone setup exploration docs
- Finalize baseline design: fast setup validation (~1 second) with normalized results
- Remove redundant module.py command file
- Consolidate module functionality into module_workflow.py
- Update command registration and help system
- Improve setup command and community integration
- Rename SyncCommand to ExportCommand and sync.py to export.py
- Update all CLI references from 'tito package sync' to 'tito package export'
- Update help text and internal messages to use 'Export' terminology
- Update imports across all command files
- Update help text in main CLI, reset, clean, info, and notebooks commands
- Command now clearly communicates that it exports notebook code to Python package
- Maintains same functionality but with clearer naming for user experience
- Add new CleanCommand for cleaning up module directories
- Supports cleaning notebooks (*.ipynb) and cache files (__pycache__, *.pyc)
- Can clean specific modules or all modules
- Provides preview of files to be cleaned with confirmation
- Includes --force flag to skip confirmation
- Integrates with module command group as 'tito module clean'
- Preserves Python source files (*_dev.py) and other important files
- Fixes issue with duplicate file removal from __pycache__ directories
- Add system, module, and package command groups for clear subsystem separation
- Create SystemCommand, ModuleCommand, and PackageCommand classes
- Maintain backward compatibility with existing flat commands
- Enhanced help system with contextual guidance at each level
- Updated main CLI to show organized command groups
- Added comprehensive documentation for CLI reorganization
New structure:
- tito system (info, doctor, jupyter)
- tito module (status, test, notebooks)
- tito package (sync, reset, nbdev)
Benefits:
- Clear subsystem separation
- Intuitive command discovery
- Better extensibility for future commands
- Reduced cognitive load for users
- Rename 'modules' command to 'status' for intuitive module status checking
- Consolidate all testing functionality into 'test' command:
- 'tito test --module X' for individual module testing with detailed output
- 'tito test --all' for all modules with progress bar
- Remove confusing redirection from test to modules
- Simplify 'info' command to focus on system information and course navigation:
- Remove module implementation status table (moved to status command)
- Add quick command reference panel
- Clean separation between system info and module status
- Update all imports and registrations for renamed command
Result: Clean, intuitive CLI with no duplication:
- 'tito status' → Module development status
- 'tito test' → All testing functionality
- 'tito info' → System info and navigation
No more confusing overlaps or redirections between commands.
- Ported all commands from bin/tito.py to new tito/ CLI architecture
- Added InfoCommand with system info and module status
- Added TestCommand with pytest integration
- Added DoctorCommand with environment diagnosis
- Added SyncCommand for nbdev export functionality
- Added ResetCommand for package cleanup
- Added JupyterCommand for notebook server
- Added NbdevCommand for nbdev development tools
- Added SubmitCommand and StatusCommand (placeholders)
- Fixed missing imports in tinytorch/core/tensor.py
- All commands now work with 'tito' command in shell
- Maintains professional architecture while restoring full functionality
Commands restored:
✅ info - System information and module status
✅ test - Run module tests with pytest
✅ doctor - Environment diagnosis
✅ sync - Export notebooks to package
✅ reset - Clean tinytorch package
✅ nbdev - nbdev development commands
✅ jupyter - Start Jupyter server
✅ submit - Module submission
✅ status - Module status
✅ notebooks - Build notebooks from Python files
The CLI now has both the professional architecture and all original functionality.