--- name: product-research description: Find and compare current FF&E candidates from a design brief, with sourced purchasing facts and optional CSV-library save. Use to research or source products; not to match from an image or pair coordinating items. allowed-tools: - Read - Write - Edit - Bash - Glob - Grep - WebFetch - WebSearch - AskUserQuestion --- # /as:product-research — Product Research Receives a brief from a designer, researches products across the web, and returns a curated shortlist. Selected products can be saved to the nearest project's `product-library.csv`. ## How It Works ``` Designer gives a brief ↓ Claude searches the web ↓ Presents candidates with specs + reasoning ↓ Designer picks winners ↓ Saved to project product library ``` ## Step 1: Take the Brief The designer describes what they're looking for. A brief can be loose or specific: **Loose:** > "I need acoustic panels for a tech office lobby" **Specific:** > "Looking for a round dining table, 48-54" diameter, solid wood top (walnut or oak preferred), steel or brass base, under $3,000, needs to be in stock or <6 week lead time" ### What to capture from the brief Extract as many of these as the designer provides. **Don't ask for fields they didn't mention** — work with what you have. | Field | Examples | |-------|---------| | **Category** | Table, seating, lighting, acoustic panel, planter, storage | | **Use context** | Office lobby, conference room, outdoor terrace, home office | | **Style / aesthetic** | Scandinavian, mid-century, industrial, minimal, warm, bold | | **Materials** | Solid wood, marble, steel, fabric, mesh, recycled | | **Dimensions** | "48-54 inch diameter", "under 30 inches tall", "fits a 6x4 space" | | **Budget** | Under $3,000, $500-$1,000 range, high-end, budget-friendly | | **Sustainability** | GREENGUARD, FSC, Cradle to Cradle, recycled content, B Corp | | **Lead time** | In stock, under 6 weeks, no rush | | **Quantity** | 1 hero piece, 12 for a conference room, 50+ for open office | | **Indoor/Outdoor** | Indoor, outdoor, both | | **Must-haves** | Stackable, COM available, ADA compliant, weatherproof | | **Brands to consider** | "I like Muuto and HAY", "no Herman Miller" | | **Brands to avoid** | "Not Ikea", "nothing from Amazon" | **Don't interview the designer.** If the brief is "acoustic panels for a lobby," that's enough to start searching. You can clarify *after* showing initial results if needed ("I found options in fabric, felt, and wood slat — any preference?"). ## Step 2: Research Search the web for products matching the brief. Use multiple targeted queries to cover different angles: ### Search strategy For a brief like "round dining table, walnut, under $3,000": 1. **Category + material search**: `round walnut dining table` 2. **Design-focused search**: `best round wood dining tables architects designers` 3. **Trade/contract search**: `contract round dining table solid wood specifications` (for commercial projects) 4. **Specific brand searches** if the designer mentioned preferences: `Muuto round table`, `HAY dining table` 5. **Sustainability search** if relevant: `FSC certified round dining table` Run **3-5 searches** depending on brief complexity. Aim for breadth — different price points, brands, styles. ### For each candidate found Attempt to fetch the product page with WebFetch to extract full specs. If the page is JS-rendered and returns no data: - Use the search result only to identify the candidate and locate another current, authoritative source. - Never fill price, availability, lead time, dimensions, finishes, certifications, or other purchasing facts from model memory. - Label any volatile fact without a current manufacturer, authorized-dealer, or certification-registry source as `Not verified`; do not turn a search snippet into a confirmed fact. For every price, availability, lead-time, finish, dimension, and certification claim, retain the source URL and access date. Prefer the manufacturer's current product page or price list; use an authorized dealer only when the manufacturer does not publish the fact. A candidate may remain useful with `Not verified` fields, but the shortlist must make those gaps visible. **Target: 6-10 candidates** that genuinely match the brief. Don't pad the list with weak matches. ## Step 3: Present Candidates Show results as a numbered shortlist with enough detail to evaluate: ``` ## Product Research: Round Dining Tables (walnut, under $3,000) ### 1. Alle Table Round — Hem Designer: Staffan Holm · 59" dia × 29"H Materials: Solid oak top, powder-coated steel base Price: $2,399 USD · Lead: 8-12 weeks Finishes: Natural oak, smoked oak, walnut stain Indoor · COM: N/A 🔗 hem.com/en-us/furniture/tables/alle/30421 Why: Clean Scandinavian lines, strong scale for a lobby, within budget. Walnut stain option available. Hem has good contract pricing. ### 2. Snaregade Round — Menu Designer: Norm Architects · 54" dia × 28.5"H Materials: Oak veneer top, powder-coated steel base Price: $2,195 USD · Lead: 6-8 weeks Finishes: Dark stained oak, light oak Indoor · COM: N/A 🔗 menuspace.com/snaregade-round Why: Norm Architects pedigree, slightly under budget, faster lead time. Veneer top (not solid) — flag if that matters. ### 3. ... --- ## Summary | # | Product | Brand | Ø | Price | Lead | Material | Notes | |---|---------|-------|---|-------|------|----------|-------| | 1 | Alle Round | Hem | 59" | $2,399 | 8-12w | Solid oak | Walnut stain ✓ | | 2 | Snaregade Round | Menu | 54" | $2,195 | 6-8w | Oak veneer | Not solid wood | | 3 | ... | ... | ... | ... | ... | ... | ... | Which ones should I save to your product library? ``` ### Presentation rules - **Lead with the summary table** if there are 6+ candidates — designers scan visually - **Include "Why"** for each — explain why this product matches the brief, and flag any compromises - **Flag trade-offs honestly** — "veneer not solid", "over budget but worth seeing", "long lead time" - **Don't oversell** — if a product is a weak match, say so or don't include it - **Group by angle** if useful — "Budget options", "Premium picks", "Fastest delivery" ## Step 4: Save to the project library When the designer picks candidates ("save 1, 3, and 5"), prepare rows for the nearest project-root `product-library.csv`. A project root is the nearest ancestor containing `PROJECT.md`; do not create a library outside one. ### Row format Read `../../schema/product-schema.md` for the exact 33-column row contract and `../../schema/csv-conventions.md` for local-file rules. Preview all selected products and the target path, then use the single confirmation gate. After approval, serialize all complete rows as one JSON array and invoke `python3 "${CLAUDE_PLUGIN_ROOT}/skills/master-schedule/scripts/csv-library.py" append product --project --row-json ` exactly once. The helper validates the complete batch and library before one atomic replacement; never loop per row or hand-edit persistent CSV. Skill-specific column values: - **AG (Source):** `research` - **AF (Status):** `saved` - **AD (Tags):** From brief context (e.g. "lobby-reno, walnut") - **AE (Notes):** The "Why" reasoning from the presentation - **T (Selected Color/Finish):** Blank (designer hasn't configured yet) ### After saving ``` ✓ Saved 3 products to your library (rows 48-50). Tagged: lobby-reno, walnut Want me to refine the search? Different style, budget, or materials? ``` ## Step 5 (Optional): Iterate The designer may want to refine: - **"More like #1 but cheaper"** → Search for alternatives in that style/brand tier - **"What about outdoor versions?"** → New search with added constraint - **"Can you find the spec sheet PDF for #3?"** → Search for manufacturer cut sheet - **"Compare #1 and #3 side by side"** → Detailed comparison - **"Any of these have GREENGUARD?"** → Check certifications for the shortlist Each iteration can add more products to the library. ## Conversation Style - **Don't over-ask before searching.** A one-line brief is enough to start. - **Show results, then refine.** It's faster to react to real options than to specify everything upfront. - **Be opinionated.** The designer wants a knowledgeable research assistant, not a search engine. Flag the best options, note trade-offs, suggest alternatives. - **Know the industry.** Reference relevant brands, designers, trade platforms. Understand contract vs. residential, COM/COL, lead times, certifications. ## Notes - **JS-rendered product pages** are common (Hem, Muuto, Vitra, etc.). If WebFetch returns no data, use search result snippets + general knowledge. Note when specs are unverified. - **The library is shared.** Products from this skill live alongside bulk-fetch imports and PDF extractions. The `Source` field (`research`) identifies where each row came from.