create-image-fal
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent. image_urls…
AI-agent-powered lead enrichment using Sixtyfour as primary source. Takes an email (+ optional name) and returns comprehensive person + company data with funding, AI/B2B classification, and full error visibility. Higher cost (~$0.20/lead) but simpler architecture.
$ npx -y skills add gooseworks-ai/goose-skills --skill gtm-enrichment-deep --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/gtm-enrichment-deepContext preview
The summary Claude sees to decide when to auto-load this skill.
AI-agent-powered lead enrichment using Sixtyfour as primary source. Takes an email (+ optional name) and returns comprehensive person + company data with funding, AI/B2B classification, and full error visibility. Higher cost (~$0.20/lead) but simpler architecture.
name: gtm-enrichment-deep description: AI-agent-powered lead enrichment using Sixtyfour as primary source. Takes an email (+ optional name) and returns comprehensive person + company data with funding, AI/B2B classification, and full error visibility. Higher cost (~$0.20/lead) but simpler architecture. source: orthogonal
Read your credentials from ~/.gooseworks/credentials.json:
export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`
All endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"`
Enrich a lead from an email address (+ optional name) using Sixtyfour's AI agents as the primary enrichment source. Returns person data, company data, funding history, and AI/B2B classification.
**Cost**: ~$0.20-$0.22 per lead **Latency**: ~30-60s (Sixtyfour AI agents browse the web)
Required:
Optional:
Extract the domain from the email address. Example: `jane@acme.com` -> domain: `acme.com`
Fire both calls simultaneously. These are the primary data sources.
**Enrich Lead** ($0.10):
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"sixtyfour","path":"/enrich-lead"}'
"lead_info": {
"email": "{email}",
"first_name": "{first_name_if_known}",
"last_name": "{last_name_if_known}",
"company": "{company_name_if_known}",
"domain": "{domain}"
},
"struct": {
"full_name": "Full legal name of this person",
"first_name": "First name",
"last_name": "Last name",
"title": "Current job title at their company",
"linkedin_url": "LinkedIn profile URL (full URL starting with https://linkedin.com/in/)",
"city": "City where the person is located",
"state": "State or region where the person is located",
"country": "Country where the person is located"
}
}'**Enrich Company** ($0.10):
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"sixtyfour","path":"/enrich-company"}'
"target_company": {
"domain": "{domain}"
},
"struct": {
"company_name": "Official company name",
"description": "One-paragraph description of what the company does",
"linkedin_url": "LinkedIn company page URL (full URL starting with https://linkedin.com/company/)",
"hq_city": "Headquarters city",
"hq_state": "Headquarters state or region",
"hq_country": "Headquarters country",
"employee_count": "Approximate number of employees (number only)",
"founded_year": "Year the company was founded (number only)",
"total_funding_amount_usd": "Total funding raised in USD (number only, no $ sign)",
"latest_funding_date": "Date of most recent funding round (YYYY-MM-DD format)",
"latest_funding_stage": "Stage of most recent funding round (e.g., Series A, Series B, Seed)",
"latest_funding_amount_usd": "Amount raised in most recent round in USD (number only)",
"is_ai_company": "true or false - does this company build or primarily use AI/ML technology?",
"ai_evidence": "Brief explanation of why this is or is not an AI company",
"is_b2b_saas": "true or false - is this a B2B SaaS company?",
"b2b_evidence": "Brief explanation of why this is or is not B2B SaaS"
}
}'Record the status, latency, and any errors for both calls.
**ONLY run if Sixtyfour /enrich-lead did NOT return a LinkedIn URL.**
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"apollo","path":"/api/v1/people/match"}'
"email": "{email}",
"reveal_personal_emails": true
}'Cost: $0.01. Extract `linkedin_url`, and also grab `name`, `title`, `organization` as cross-reference data.
**ONLY run if Sixtyfour /enrich-company did NOT return funding data** (total_funding_amount_usd is null/empty).
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"apollo","path":"/api/v1/organizations/enrich","query":{"domain":"{domain}"}}'Cost: $0.01. Extract funding events, total funding, latest funding stage, and latest funding amount.
Merge all data into the output format below. Apply these rules:
1. **Sixtyfour is primary** — use its data first for all fields 2. **Apollo is fallback** — only used to fill gaps Sixtyfour missed 3. **Source tracking** — for each field, note whether it came from `sixtyfour` or `apollo` 4. **Confidence**:
Present the results as a JSON code block:
{
"person": {
"full_name": "string",
"title": "string",
"linkedin_url": "string",
"location": {"city": "string", "state": "string", "country": "string"},
"email_verified": "unknown",
"confidence": "high | medium | low",
"source": "sixtyfour | apollo"
},
"company": {
"name": "string",
"domain": "string"Put your AI agent on the growth team. Research customers and competitors, analyze what is working, create the next campaign, and learn from the result.
Repo: gooseworks-ai/goose-skills
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent. image_urls…
Generate a single photoreal or designed image with OpenAI gpt-image via fal.ai. Supports gpt-image-1 (default, fixed sizes — the FAL fallback for Higgsfield's…
Generate an instrumental music bed via ElevenLabs Music, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Trims any sparse intro, loudnorm, fades…
Image-to-video (or text-to-video) via any FAL video model (Kling, Seedance, Veo), ROUTED THROUGH THE GooseWorks fal-proxy so the call bills the Ads agent. The…
Generate a voiceover (VO) clip via ElevenLabs text-to-speech, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Voice id + script text come from…
Scrape competitor ads from Google Ads by domain. Returns ad creatives, formats, and campaign details. Use for competitive ad research and messaging analysis.