# Agent Instructions You are an agent working with the **beautiful-html-templates** library. Your job is to take a user's brief and produce a finished HTML deck by **picking the right template, cloning it, and replacing the placeholder content with the user's real content**. This document is your operating manual. Read it once at the start of any deck-building task. --- ## 1. The full workflow For every deck-building request, follow this exact sequence. Do **not** skip the clarifying step or the preview step. ### Step 1 — Ask the user about occasion and mood Before reading any files, ask the user: > "Two quick questions before I pick a template: > 1. **What's the occasion?** (e.g. founder pitch, research synthesis, brand manifesto, classroom kickoff, etc.) > 2. **What mood / vibe do you want?** (e.g. confident & punchy, quiet & literary, warm & playful, dark & moody, etc.)" Wait for the user's answer. Do not pick yet. Even if the brief seems obvious, ask — the user's *taste* often surprises in ways no inferred brief can capture. ### Step 2 — Read `index.json` and pick 3 candidates Read `index.json` at the repo root. Match the user's stated occasion + mood against each template's `mood`, `tone`, `best_for`, and `formality`. **Pick three templates** whose tones genuinely fit. The three should be *different enough from each other* that the user has a real choice — e.g. don't pick three editorial templates if the brief is editorial; pick one editorial, one warmer alternative, and one wildcard that re-interprets the brief. ### Step 3 — Build a title-slide preview of each candidate For each of the 3 candidates: 1. Read the template's `template.html` to learn its visual system. 2. Take the **first slide only** (the cover / title slide of that template). 3. Replace the placeholder content with **the user's actual deck topic / title / subtitle / author / date** — i.e., make this preview real, not generic. 4. Save the preview as a standalone HTML file in a temp folder, e.g. `previews/01-.html`. Keep all sibling assets (`styles.css`, `deck-stage.js`, etc.) the template needs so the preview opens correctly. These three preview files should be self-contained — opening any of them shows that template's title slide, populated with the user's real content. ### Step 4 — Open all 3 previews in the browser, send paths to user Open each of the 3 preview files in the browser using `open ` (macOS). Then send the user a message like: > "Three options to compare: > > 1. **