# Simple-CLI Scope Definition

## 🎯 Purpose
Simple-CLI is a **barebones particle-os proving ground** - a minimal reference implementation that demonstrates the core particle-os concept works.

## ✅ What Simple-CLI Should Have

### Core System
- **Basic OS packages**: systemd, bash, coreutils, vim, less
- **OSTree integration**: Core particle-os immutable functionality
- **Boot system**: bootupd, GRUB, initramfs
- **Kernel**: linux-image-amd64 with basic drivers

### Container & Development
- **Podman**: Basic container runtime
- **Toolbox**: **CRITICAL** - makes immutable distros usable
- **Basic build tools**: Just automation, container building
- **Skopeo**: Container image inspection

### Minimal Utilities
- **Network tools**: curl, wget, basic networking
- **File tools**: Basic file operations
- **Shell tools**: bash-completion, basic shell utilities

### Essential Immutable Distro Tools
- **Hardware monitoring**: lm_sensors, powertop, evtest
- **Network tools**: iwd (wireless), wireguard-tools (VPN)
- **Development tools**: make, gcc, python3-pip
- **System utilities**: bcache-tools, fuse-encfs, libxcrypt-compat
- **Hardware support**: input-remapper, usbmuxd, oddjob-mkhomedir

## ❌ What Simple-CLI Should NOT Have

### Advanced Container Tools
- docker-compose, docker-buildx, podman-compose
- Advanced container orchestration

### System Management
- cockpit, firewalld, pcp monitoring
- Advanced system administration tools

### Storage & File Systems
- ZFS, mergerfs, rclone
- Advanced storage management

### Virtualization
- libvirt, virt-install, KVM tools

### Advanced Networking
- Advanced VPN tools beyond wireguard-tools

## 🚀 What Goes to bosom Instead

**bosom** will be the "batteries included" CoreOS equivalent that includes:
- All the advanced features removed from simple-cli
- Production-ready tooling
- Server and HCI capabilities
- Advanced storage and networking

## 🔧 Why This Scope Matters

1. **Proving Ground**: simple-cli proves particle-os concept works
2. **Reference Implementation**: Minimal example for other variants
3. **Development Focus**: Toolbox makes it usable for development
4. **Clear Separation**: Simple vs. advanced use cases
5. **Maintainability**: Easier to maintain and debug minimal system
6. **Immutable Essentials**: Includes tools needed for immutable distro usability

## 📋 Success Criteria

Simple-CLI succeeds when:
- ✅ Boots and runs as immutable particle-os
- ✅ Toolbox provides usable development environment
- ✅ Basic container operations work
- ✅ OSTree updates and rollbacks function
- ✅ Can be used as reference for other variants
- ✅ Includes essential tools for immutable distro usability
