From gtm-skills
Parses company data from pasted lists, CSVs, or tables to create or update Extruct tables, uploads domains in batches, adds optional enrichment columns, and triggers agents.
npx claudepluginhub extruct-ai/gtm-skills --plugin gtm-skillsThis skill uses the workspace's default tool permissions.
End-to-end workflow: parse company data → create/reuse Extruct table → upload rows → add columns → run enrichment.
Adds research-powered enrichment columns (e.g., funding, verticals, tech stack) to Extruct company tables. Use to run column configs from enrichment-design, design on-the-fly, trigger runs, or monitor progress.
Bulk enriches lists of companies, people, or products with web-sourced fields like CEO names, funding, and contacts. Processes CSV files or inline data; supports multi-turn context chaining.
Extracts knowledge from Airtable bases into vault as linked entity pages via TypeScript/Bun pipeline. Sonnet extracts, Opus reviews at ≥95% gate with mandatory HITL re-anchor for new bases. For seeding company historical data.
Share bugs, ideas, or general feedback.
End-to-end workflow: parse company data → create/reuse Extruct table → upload rows → add columns → run enrichment.
This skill delegates all Extruct API calls to the extruct-api skill.
For all Extruct API operations, read and follow the instructions in skills/extruct-api/SKILL.md.
All table creation, row uploads, column creation, and enrichment runs are handled by the extruct-api skill. This skill focuses on parsing input data and orchestrating the flow — the extruct-api skill handles the API execution.
Accept data in any of these formats:
Pasted list (most common): User pastes company names, URLs, and metadata as freeform text. Parse into structured records. Extract domains by stripping protocol, www., and trailing slashes.
CSV file: Read CSV, map columns to find the URL/domain column.
Extruct table URL: Use the extruct-api skill to fetch data from existing table.
Key rules:
Ask the user:
https://app.extruct.ai/tables/{id})Delegate row upload to the extruct-api skill with the parsed domains.
Report progress to the user.
If the user wants enrichment columns (industry, funding, etc.), delegate column creation to the extruct-api skill.
Column types by use case:
| User says | Agent type | Output format | Notes |
|---|---|---|---|
| "add industry" | llm | select with labels | Classification from profile, no web research needed |
| "add funding" | research_pro | text | Needs web research |
| "classify by vertical" | llm | select with labels | Classification |
| "find their tech stack" | research_pro | text | Needs web research |
| "score fit 1-5" | llm or research_reasoning | grade | Assessment |
| "tag multiple categories" | llm | multiselect with labels | Multiple tags |
See the list-enrichment skill for full column types and output formats.
Delegate the enrichment run to the extruct-api skill, scoped to only the newly added agent columns.
If no agent columns were added, skip this step.
Provide:
https://app.extruct.ai/tables/{table_id}Company Name
URL (or "Stealth")
Country
Industry
Funding Stage
Parse by splitting into 5-line chunks. Filter where URL == "Stealth".
Map columns: look for "website", "url", "domain", "Company Website". Extract domain from whichever column contains URLs.
example.com
startup.io
company.ai
Direct upload — each line is a domain.
https://www.example.com/ → example.comselect/multiselect, collect unique values from user data to build the label list