# Upgrade Guide: Instar 0.8.12

## What Changed

### Dashboard — Remote Session Monitoring
You now have a **visual web dashboard** for monitoring and managing your sessions from any device.

- **URL**: `http://localhost:{port}/dashboard` (local) or `{tunnelUrl}/dashboard` (remote via tunnel)
- **Authentication**: Uses a PIN instead of the full bearer token — easier for mobile access
- **Features**: Real-time terminal streaming of all running sessions, model badges, mobile-responsive layout

**What you should do:**
1. The migration automatically generates a `dashboardPin` in `.instar/config.json` if one doesn't exist. Check it's there — you'll need it when telling your user how to access the dashboard.
2. Make sure your CLAUDE.md mentions the dashboard so you remember it exists across sessions.
3. When your user asks to check on sessions remotely, give them `{tunnelUrl}/dashboard` + the PIN. Read the PIN from your config.json.

### Session Names in Dashboard
The dashboard now shows Telegram topic names instead of raw tmux session names. If a session is linked to a Telegram topic, the topic's display name appears in the sidebar.

**What you should do:**
- No action needed. This works automatically from the topic-session registry.

### Knowledge Upgrade Pipeline
This is the system you're reading right now. Every Instar update now ships with an upgrade guide (like this one) that you process intelligently — not just mechanical file patches.

After an update is installed:
1. The new `instar migrate` command runs from the NEW binary (not stale in-memory code)
2. Hooks, scripts, and CLAUDE.md sections are patched mechanically (baseline)
3. **This upgrade guide** is delivered for you to process with full context of your own evolution

**What you should do:**
- After processing this guide, write a note in `.instar/MEMORY.md` about what you learned and any actions you took.
- This helps future sessions understand what upgrades have been applied.

## What to Tell Your User

These are the user-facing highlights. Use your knowledge of your user's workflow to personalize:

- **Dashboard (LEAD WITH THIS)**: "You can now monitor all my sessions from your phone or any browser. Here's the link and your PIN." — This is the headline feature. ALWAYS include the actual tunnel URL and the PIN from your config.json. The user should be able to click and log in immediately. Never mention "bearer tokens" — the PIN is the only thing users need to know about.
- **Session names**: "The dashboard now shows meaningful names instead of technical session IDs." — Minor but shows polish.
- **Upgrade guides**: You can mention that you now automatically learn about new features when updates arrive — you're becoming more self-aware of your own capabilities.

## Summary of New Capabilities
| Capability | How to Use |
|-----------|-----------|
| Dashboard | `http://localhost:{port}/dashboard` — share with user for remote monitoring |
| PIN Auth | Auto-generated by migration — read from config.json, share with user |
| Topic Names | Automatic — sessions show Telegram topic names in dashboard |
| Upgrade Guides | Processed automatically on update — you're reading one now |
