projm 0.11.0

CLI for projm — project organizer and navigator
# PROJM-CLI

CLI binary (`projm`) — thin dispatch layer on `projm_core`.

## STRUCTURE

```
src/
├── main.rs        # Clap parse → subcommand match → delegate (73 lines)
├── main_cli.rs    # Cli struct with Clap derives (~80 lines)
├── init_setup.rs  # Shell integration, zoxide install, completions setup (529 lines)
├── blueprints.rs  # Interactive scaffolding: add/list/run/delete/rename (350 lines)
└── completions.rs # clap_complete shell completion emission (~50 lines)
```

## WHERE TO LOOK

| Module | Commands | Role |
|--------|----------|------|
| `main.rs` | All (match dispatch) | Routes `Commands` variants to projm_core or local modules |
| `init_setup.rs` | `init` | Shell function gen, zoxide auto-install (5 OS package managers) |
| `blueprints.rs` | `blueprint` subcommands | CRUD for project templates with `{name}` placeholders |
| `completions.rs` | `completions` | Shell completions via clap_complete |

## CONVENTIONS

- Clap derive API for CLI definition
- `projm_core::` prefix for all core logic calls
- Shell functions (`pg`, `pn`) emitted as eval-compatible stdout
- Interactive UI via dialoguer writes to stderr
- `colored` for output styling (matches core conventions)

## ANTI-PATTERNS

- Do NOT add business logic here — delegate to `projm_core`
- Do NOT add shell function definitions — generated by `init_setup.rs`
- Do NOT hardcode OS detection — use `std::env::consts::OS` + platform checks in init_setup