|
1 | 1 | --- |
2 | 2 | name: site-spec |
3 | | -description: Gather user preferences before building a WordPress site. Asks about purpose, audience, brand personality, aesthetic direction, colors, and content structure. Run this before creating any new site. |
| 3 | +description: Gather the site name and layout preference before building a WordPress site. Run this before creating any new site. |
4 | 4 | user-invokable: true |
5 | 5 | --- |
6 | 6 |
|
7 | 7 | # Site Spec Discovery |
8 | 8 |
|
9 | | -Before creating a new WordPress site, gather the user's preferences through a short interactive discovery phase. This produces a **Site Spec** that guides all subsequent design and development decisions. |
| 9 | +Before creating a new WordPress site, gather the user's basic preferences through a short interactive discovery phase. This produces a **Site Spec** that guides all subsequent design and development decisions. |
10 | 10 |
|
11 | 11 | ## How to Run |
12 | 12 |
|
13 | | -Gather preferences through 3-4 rounds, building on previous answers. Keep it concise — no more than 6-7 questions total. |
| 13 | +Gather preferences through 2 rounds. Keep it concise. |
14 | 14 |
|
15 | 15 | **AskUserQuestion constraints**: Each call supports 1-4 questions, each with 2-4 options. An "Other" free-form option is automatically provided by the system — do NOT add one yourself. Keep option labels short (1-5 words). Only use AskUserQuestion for questions that have meaningful predefined options. For open-ended questions (like asking for a name), just ask in your text output — the user will type their answer in the prompt. |
16 | 16 |
|
17 | 17 | ### Round 1 — Name |
18 | 18 |
|
19 | 19 | Ask the user for their business/site name in your text output. **Stop here and wait for their reply** — do NOT call any tools or continue to the next round. The user needs a chance to type their answer in the prompt. |
20 | 20 |
|
21 | | -### Round 2 — Purpose & Audience |
| 21 | +### Round 2 — Layout |
22 | 22 |
|
23 | 23 | After the user provides the name, use AskUserQuestion for: |
24 | | -- What is this site for? (e.g., business type, portfolio, blog, community, e-commerce, agency, restaurant, etc.) |
25 | | -- Who is the target audience? (e.g., professionals, consumers, creatives, developers, local community, etc.) |
26 | | - |
27 | | -### Round 3 — Brand & Aesthetic Direction |
28 | | - |
29 | | -Adapt based on previous answers. Ask about: |
30 | | -- What tone or personality should the site convey? (e.g., professional, playful, minimalist, bold, luxurious, raw, editorial, retro, organic, etc.) |
31 | | -- Any reference sites or brands you admire? Or styles you want to avoid? |
32 | | - |
33 | | -### Round 4 — Visual & Structural Preferences |
34 | | - |
35 | | -Adapt based on previous answers. Ask about: |
36 | | -- Color preferences or existing brand colors? (or let the user say "surprise me") |
37 | 24 | - One-page site or multi-page site? (e.g., single scrollable page with sections vs. separate pages for each area) |
38 | | -- What pages/sections do you need? (e.g., homepage, about, services, blog, contact, shop, gallery, etc.) — adapt the phrasing based on the one-page vs. multi-page answer |
39 | | - |
40 | | -## Synthesize the Site Spec |
41 | 25 |
|
42 | | -After gathering answers, produce a concise **Site Spec** document: |
| 26 | +## After Gathering Answers |
43 | 27 |
|
44 | | -``` |
45 | | -Site Spec: [Site Name] |
46 | | -- Purpose: [what the site is for] |
47 | | -- Audience: [who it's for] |
48 | | -- Tone: [personality/voice] |
49 | | -- Aesthetic direction: [visual style, references] |
50 | | -- Color palette: [colors or direction] |
51 | | -- Layout: [one-page or multi-page] |
52 | | -- Pages/Structure: [list of pages or sections and key features] |
53 | | -- Key differentiator: [the one thing that makes this site memorable] |
54 | | -``` |
55 | | - |
56 | | -Show the spec to the user, then use AskUserQuestion to ask for confirmation (e.g., "Ready to build this site?" with options like "Yes, let's go" / "I'd like to adjust something"). Do NOT just print a text question and wait — always use the AskUserQuestion tool for confirmation so the user gets interactive options. |
57 | | - |
58 | | -## After Confirmation |
59 | | - |
60 | | -1. Call `site_create` with an appropriate name derived from the spec. |
61 | | -2. Save the site spec to `{site_path}/.agents/site-spec.md` using the Write tool, so it persists for future sessions. |
62 | | -3. Use the spec to guide ALL subsequent design decisions — theme, typography, colors, layout, content tone, and page structure. |
| 28 | +Call `site_create` with the provided name and use the layout preference to guide all subsequent design decisions. |
63 | 29 |
|
64 | 30 | ## When to Skip Discovery |
65 | 31 |
|
66 | 32 | Do NOT ask questions if: |
67 | | -- The user already provided an answer for that specific question in the initial prompt. (e.g., "build me a dark minimalist portfolio for a photographer with these 5 pages using navy and gold colors"). Instead, synthesize the spec directly from their request and confirm. |
| 33 | +- The user already provided the name and layout preference in the initial prompt. Proceed directly with site creation. |
68 | 34 | - The user says "just build something" or "surprise me". Pick a bold creative direction yourself and proceed. |
69 | 35 | - The user explicitly asks to skip the setup or says they don't want questions. |
70 | | - |
71 | | -In all skip cases, still synthesize and show a Site Spec before creating the site. |
0 commit comments