TITO Command Reference

Master the TinyTorch CLI

Complete command reference for building ML systems efficiently

Purpose: Quick reference for all TITO commands. Find the right command for every task in your ML systems engineering journey.

Quick Start: Three Commands You Need

1. Check Your Environment

tito system health

Verify your setup is ready for development

2. Build & Export Modules

tito module complete 01

Export your module to the TinyTorch package

3. Run Historical Milestones

tito milestone run 03

Recreate ML history with YOUR code

Commands by User Role

TinyTorch serves three types of users. Choose your path:

Student / Learner

You’re learning ML systems by building from scratch

Your Workflow:

# Start learning
tito module start 01

# Complete modules
tito module complete 01

# Validate with history
tito milestone run 03

# Track progress
tito module status

Key Commands:

  • tito module - Build components
  • tito milestone - Validate
  • tito module status - Track progress

Instructor

You’re teaching ML systems engineering

Your Workflow:

# Initialize nbgrader environment
tito nbgrader init

# Generate assignments
tito nbgrader generate 01

# Distribute to students
tito nbgrader release 01

# Collect & grade
tito nbgrader collect 01
tito nbgrader autograde 01

# Provide feedback
tito nbgrader feedback 01

# View analytics & export grades
tito nbgrader status
tito nbgrader analytics 01
tito nbgrader report

Key Commands:

  • tito nbgrader - Assignment management
  • tito module - Test implementations
  • tito milestone - Validate setups

Developer / Contributor

You’re contributing to TinyTorch modules

Your Workflow:

# Edit source code
# src/01_tensor/01_tensor.py

# Export to notebooks & package
tito dev export 01
tito dev export --all

# Test implementations
tito dev test --unit
tito dev test --inline --module 01

# Before merging
tito dev test --all

Key Commands:

  • tito dev test - Run tests
  • tito dev export - Rebuild curriculum
  • tito milestone - Validate with history

Complete Command Reference

Setup Command

Purpose: First-time environment and profile setup

Command Description Guide
tito setup Set up development environment (venv, packages, profile) Module Workflow

System Commands

Purpose: Environment health, validation, and configuration

Command Description Guide
tito system health Environment health check and validation Module Workflow
tito system info System resources (paths, disk, memory) Module Workflow
tito system jupyter Start Jupyter Lab server Module Workflow
tito system update Check for and install updates Module Workflow
tito system reset Reset TinyTorch to pristine state Troubleshooting

Module Commands

Purpose: Build-from-scratch workflow (your main development cycle)

Command Description Guide
tito module list List all available modules Module Workflow
tito module start XX Begin working on a module (first time) Module Workflow
tito module view XX Open module notebook (no status update) Module Workflow
tito module resume XX Continue working on a module Module Workflow
tito module complete XX Test, export, and track module completion Module Workflow
tito module test XX Run module tests independently Module Workflow
tito module status View module completion progress Module Workflow
tito module reset XX Reset module to clean state Module Workflow

See: Module Workflow Guide for complete details

Milestone Commands

Purpose: Run historical ML recreations with YOUR implementations

Command Description Guide
tito milestone list Show all 6 historical milestones (1958-2018) Milestone System
tito milestone run XX Run milestone with prerequisite checking Milestone System
tito milestone info XX Get detailed milestone information Milestone System
tito milestone status View milestone progress and achievements Milestone System
tito milestone timeline Visual timeline of your journey Milestone System
tito milestone test XX Test milestone achievement requirements Milestone System
tito milestone demo XX Run milestone capability demonstration Milestone System

See: Milestone System Guide for complete details

Progress & Data Commands

Purpose: Track progress and manage user data

Command Description Guide
tito module status View module completion progress Progress & Data
tito milestone status View milestone achievements Progress & Data
tito module reset XX Reset a specific module Progress & Data

See: Progress & Data Management for complete details

Community Commands

Purpose: Join the global TinyTorch community and track your progress

Command Description Guide
tito community login Log in to the community via web browser Community Guide
tito community logout Log out of the community Community Guide
tito community profile View/edit your community profile Community Guide
tito community status Show login status and user info Community Guide
tito community map Open global community map Community Guide

See: Community Guide for complete details

Benchmark Commands

Purpose: Validate setup and measure performance

Command Description Guide
tito benchmark baseline Quick setup validation (“Hello World”) Troubleshooting
tito benchmark capstone Full Module 20 performance evaluation Troubleshooting

See: Troubleshooting for validation and benchmark help

Developer Commands

Purpose: Source code development, testing, and contribution (for developers only)

Command Description Use Case
tito dev export <module> Export src/ → modules/ → tinytorch/ After editing source files
tito dev export --all Export all modules After major refactoring
tito dev test Run unit tests (default) Quick validation
tito dev test --inline Run inline tests from src/ After editing modules
tito dev test --unit Run pytest unit tests Component validation
tito dev test --cli Run CLI tests After CLI changes
tito dev test --integration Run integration tests Cross-module validation
tito dev test --e2e Run end-to-end tests User journey validation
tito dev test --milestone Run milestone tests Full package validation
tito dev test --all Run all test types Before PRs
tito dev test --release Full release validation (destructive) Before releases only

Note: These commands work with src/XX_name/XX_name.py files and are for TinyTorch contributors/developers. Students use tito module commands to work with generated notebooks.

See: Developer Testing Guide for complete testing documentation

Directory Structure:

src/              ← Developers edit here (Python source)
modules/          ← Students use these (generated notebooks)
tinytorch/        ← Package code (auto-generated)

Command Groups by Task

First-Time Setup

# Install TinyTorch (downloads and sets up everything)
curl -sSL mlsysbook.ai/tinytorch/install.sh | bash
cd tinytorch
source .venv/bin/activate

# First-time profile setup
tito setup

# Verify environment
tito system health

Student Workflow (Learning)

# Start or continue a module
tito module start 01      # First time
tito module resume 01     # Continue later

# Export when complete
tito module complete 01

# Check progress
tito module status

Developer Workflow (Contributing)

# Edit source files in src/
vim src/01_tensor/01_tensor.py

# Export to notebooks + package
tito dev export 01

# Run tests
tito dev test --unit           # Quick validation
tito dev test --inline --module 01   # Test specific module

# Test implementation
python -c "from tinytorch import Tensor; print(Tensor([1,2,3]))"

# Before PR: run all tests
tito dev test --all

Achievement & Validation

# See available milestones
tito milestone list

# Get details
tito milestone info 03

# Run milestone
tito milestone run 03

# View achievements
tito milestone status

Progress Management

# View all progress
tito module status
tito milestone status

Typical Session Flow

Here’s what a typical TinyTorch session looks like:

1. Start Session

cd tinytorch
source .venv/bin/activate
tito system health         # Verify environment

2. Work on Module

tito module start 03       # Or: tito module resume 03
# Edit in Jupyter Lab...

3. Export & Test

tito module complete 03

4. Run Milestone (when prerequisites met)

tito milestone list        # Check if ready
tito milestone run 03      # Run with YOUR code

5. Track Progress

tito module status         # See module progress
tito milestone status      # See milestone achievements

Command Help

Every command has detailed help text:

# Top-level help
tito --help

# Command group help
tito module --help
tito milestone --help

# Specific command help
tito module complete --help
tito milestone run --help

Detailed Guides

Back to top