Table Enrichment
Add research-powered enrichment columns to Extruct company tables.
Extruct API Operations
This skill delegates all Extruct API calls to the
skill.
For all Extruct API operations, read and follow the instructions in
skills/extruct-api/SKILL.md
.
All table reads, column creation, enrichment runs, polling, and data fetching are handled by the extruct-api skill. This skill focuses on what to enrich and how to design columns — the extruct-api skill handles the API execution.
Workflow
1. Confirm the table
Get the table ID from the user (URL or ID). Use the extruct-api skill to fetch table metadata. Show the user: table name, row count, existing columns.
2. Get column configs
Two paths:
Path A: From enrichment-design — User has
ready. Confirm and proceed.
Path B: Design on the fly — Confirm with the user:
- What data point? — what to research (e.g. "funding stage", "primary vertical", "tech stack")
- Output format — pick the right format:
| Format | When to use | Extra params |
|---|
| Free-form research output | — |
| / | Numeric data (revenue, headcount) | — |
| Single choice from known categories | |
| Multiple tags from known categories | |
| Structured multi-field data | |
| 1-5 score | — |
| Single tag from list | |
| Date values | — |
| / / | Contact info | — |
- Agent type — default . Use when no web research needed (classification from existing profile data).
3. Write the prompt
Craft a clear prompt using
for the row's domain value. Prompt guidelines:
- Be specific about what to find
- Specify the exact output format in the prompt (e.g. "Return ONLY a number in millions USD")
- Include fallback instruction (e.g. "If not found, return N/A")
- For /, the labels constrain the output — the prompt should guide which label to pick
4. Create the column(s)
Delegate column creation to the extruct-api skill with the
array.
5. Trigger enrichment (only the new columns)
Delegate the enrichment run to the extruct-api skill. Always scope the run to the newly created column(s) only. Avoid broad or implicit run payloads when you only intend to enrich specific columns.
6. Monitor progress
Delegate progress monitoring to the extruct-api skill. Use it to poll table data and check cell statuses.
Show the user:
- Current % complete (done cells / total cells)
- Number of failed cells (if any)
- Estimated time remaining (based on rate so far)
Stop polling when all cells are done or failed.
7. Quality spot-check
After enrichment completes (or after 50%+ is done), fetch a sample of 5-10 enriched rows and display for review.
Present to user as a table. Ask:
- "Does the data quality look right?"
- "Any columns returning garbage or N/A too often?"
- "Should we adjust any prompts and re-run?"
If quality issues are found:
- Delete the problematic column
- Adjust the prompt
- Re-create and re-run