/as:product-enrich — Product Enrichment

SkillProductivity

Enrich FF&E schedule rows with categories, colors, materials, and style tags. Use to tag, categorize, or fill those missing fields; not to research new products.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the /as:product-enrich — Product Enrichment skill

What this skill tells your AI

The instructions your AI receives, as published by alpacalabsllc/skills-for-architects in skills/product-enrich/SKILL.md and read by ahel’s review.

Harness note: use /as:<skill> on Claude Code and $<skill> on Codex. Resolve <skill-root> as the directory containing this loaded SKILL.md and <plugin-root> as the plugin root that contains skills/, and use equivalent native tools when host tool names differ.

Takes product rows from the nearest project's product-library.csv or pasted data and proposes missing category, color, material, and style metadata.

When to Use

  • After a bulk import where products are missing categories or tags
  • When a designer clips products quickly without filling in details
  • To standardize metadata across products from different sources
  • Before generating an FF&E schedule (enriched data makes better schedules)

Step 1: Accept Input

Accept product data in any format:

CSV file:

/as:product-enrich ./products.csv

Pasted data:

/as:product-enrich
Eames Lounge Chair, Herman Miller
Saarinen Tulip Table, Knoll
PH 5 Pendant, Louis Poulsen
Togo Sofa, Ligne Roset

Step 2: Analyze Each Product

For each product, infer the following fields:

Category

Map to the canonical vocabulary (22 terms) defined in ../../schema/product-schema.md.

Subcategory

More specific classification within the category:

  • Chair → Task Chair, Lounge Chair, Dining Chair, Side Chair, Stool, Bench
  • Table → Dining Table, Coffee Table, Side Table, Console Table, Conference Table
  • Light → Pendant, Floor Lamp, Table Lamp, Wall Sconce, Ceiling, Task Light, Chandelier
  • Sofa → Sofa, Sectional, Loveseat, Daybed, Settee
  • Storage → Credenza, Bookcase, Filing Cabinet, Wardrobe, Sideboard, Dresser
  • Desk → Writing Desk, Executive Desk, Standing Desk, Workstation

Primary Color

The dominant color of the product as typically sold:

  • Use standard color names: Black, White, Gray, Brown, Beige, Navy, Blue, Green, Red, Orange, Yellow, Pink, Purple, Natural, Walnut, Oak, Teak, Chrome, Brass, Copper, Multi

Material

Primary materials, comma-separated:

  • Wood (specify type if known: Walnut, Oak, Maple, Teak, Birch, Ash, Beech)
  • Metal (specify: Steel, Aluminum, Brass, Chrome, Iron, Copper)
  • Upholstery (specify: Leather, Fabric, Velvet, Bouclé, Mohair, Linen, Wool)
  • Other: Glass, Marble, Concrete, Ceramic, Plastic, Fiberglass, Rattan, Cane, Acrylic

Style Tags

2-4 descriptive tags from:

  • Period/movement: Mid-Century Modern, Art Deco, Bauhaus, Scandinavian, Japanese, Industrial, Contemporary, Traditional, Minimalist, Postmodern, Memphis
  • Character: Organic, Geometric, Sculptural, Modular, Stackable, Compact, Statement, Classic, Iconic
  • Context: Residential, Contract, Hospitality, Healthcare, Education, Outdoor

Image Analysis

If product data includes the named Image URL field, use image analysis to verify and refine the enrichment. The image may reveal:

  • Actual color (not just what the name suggests)
  • Material details not in the product name
  • Style characteristics

Step 3: Present Preview

Show a preview of the enrichment before applying:

## Product Enrichment Preview

| Product | Brand | Category | Subcategory | Color | Material | Style Tags |
|---------|-------|----------|-------------|-------|----------|------------|
| Eames Lounge Chair | Herman Miller | Chair | Lounge Chair | Walnut/Black | Molded plywood, Leather | Mid-Century Modern, Iconic, Residential |
| Saarinen Tulip Table | Knoll | Table | Dining Table | White | Marble, Aluminum | Mid-Century Modern, Sculptural, Organic |
| PH 5 Pendant | Louis Poulsen | Light | Pendant | White | Aluminum | Scandinavian, Classic, Iconic |
| Togo Sofa | Ligne Roset | Sofa | Sofa | Brown | Fabric | Contemporary, Organic, Sculptural |

4 products enriched. Apply? (y/n)

Flag any products where enrichment is uncertain:

⚠ "Custom Reception Desk" — unknown product, category set to Desk but verify

Step 4: Apply

To the project library

Read ../../schema/product-schema.md and ../../schema/csv-conventions.md. Map enrichment only to canonical named fields: Category, Materials, Colors/Finishes, and appended Tags; place noncanonical subcategory detail in Notes. Do not overwrite a populated field unless the preview explicitly calls that out.

For multiple enriched rows, materialize the complete proposed 33-column CSV as a temporary or user-visible review file. Validate it, preview every material change and the target product-library.csv once, then use the single confirmation gate. After approval, invoke python3 "<plugin-root>/skills/master-schedule/scripts/csv-library.py" import product --project <project-root> --source <review.csv> exactly once for one atomic replacement; never loop update. A genuinely single-record enrichment may use the same plugin-root helper's update command once with a uniquely matching stable field.

To conversation

Output the enriched table in markdown.

Step 5: Summary

✓ Enriched 4 products
  Categories: 4 assigned (0 already had values)
  Colors: 4 assigned
  Materials: 4 assigned
  Style tags: 14 total tags across 4 products
  Uncertain: 1 (flagged for review)

Pairs With

  • /as:product-spec-bulk-fetch — fetch specs first, then enrich the results
  • /as:product-data-cleanup — cleanup normalizes formatting, enrich adds metadata
  • /as:product-data-import — enriched products make better formatted schedules
  • /as:product-match — enriched tags help find better matches

Signals

GitHub stars
352
Forks
73
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
product-enrich
Source
github.com/alpacalabsllc/skills-for-architects