CRM Lead Enrichment & Scoring – Emails, Phones, Social Links
Skill package: crm_data_enrichment_agent
What This Skill Does
Enrich CRM contacts and B2B leads with company data, validated emails, phone numbers, social links, and website signals. Supports JSON, CSV, and Apify datasets with deduplication, lead scoring, and optional Clearbit/Hunter enrichment for sales prospecting and automation workflows.
This skill is Hermes-ready and designed for Hermes Agent skill workflows. It is also compatible with skill-style agent systems that read markdown instructions, a manifest, and a JSON input schema.
When To Use It
- Clean and enrich CRM contact lists with public web signals and third‑party enrichment.
- Extract company and website metadata (titles, descriptions, contact pages, addresses).
- Reduce manual research by automating website crawling for contact and company signals.
Inputs Expected From Normal Users
emailField(string) - Property or column name for the contact's email in your data.- Advanced, internal, and cost-sensitive fields remain available in
input_schema.json, but the agent should not ask about them by default.
Output Expected
The workflow returns an array of records from the Actor's default Dataset.
Common record fields:
place_name(string) - Business or place name when available.address(string) - Detected street address or location text when available.website(string) - Business website URL when available.rating(number) - Google Maps rating when available.
Step-By-Step Workflow
- Read the user's goal and map it to one of the detected capabilities.
- Validate required inputs against
input_schema.json. - Ask for missing required values before making any external call or Actor run.
- Execute the documented API, repository tool, or Apify Actor workflow described by the source.
- Return a concise summary, structured result data, and any relevant links or dataset references.
- For long-running work, report progress and preserve enough context for retry.
How This Skill Calls The Apify Actor
- Actor slug:
solutionssmart/crm-data-enrichment-agent - Required secret:
APIFY_TOKEN - Start run endpoint:
https://api.apify.com/v2/acts/solutionssmart~crm-data-enrichment-agent/runs - Run-sync endpoint:
https://api.apify.com/v2/acts/solutionssmart~crm-data-enrichment-agent/run-sync-get-dataset-items - Expected result: dataset items from the default dataset
- Input schema source:
apify_actor_metadata - Readiness level:
executable
Before Running
- Verify
APIFY_TOKENexists in the agent secret store. - Validate user input against
input_schema.json. - Use the run-sync endpoint for small jobs.
- Use the async run endpoint for larger jobs and then fetch dataset items.
Required And Conditional Inputs
Always-required fields:
contactsSource
Conditional requirements depend on the selected mode, action, operation, or task:
- No high-confidence conditional requirements were inferred.
Field Guidance For Agents
By default, the agent should only ask about agentDefaultFields. Advanced fields should be used only when the user explicitly requests expert control.
Default Workflow
- Default mode:
not inferred - Ask first:
emailField
Ask The User First
emailField
Conditional-Only Fields
none
These fields are valid and user-facing, but they should not be requested by default. Ask for them only when the user selects a mode, action, or operation that requires them.
Apply conditionalRequirements before asking for these fields.
Ask Only If Needed
none
These are technical or expert options. Use them only when the user asks for advanced behavior or operational tuning.
Do Not Ask Normal Users
datasetId
These are billing, debug, storage, telemetry, or internal fields. Normal users should not be asked about them.
Cost-Sensitive Fields
maxContacts, enrichment
These can increase runtime, compute, memory use, scraping depth, or external requests. Warn the user before enabling or increasing them.
Cost-Safe Execution
- Risk level:
high - Recommended test input:
{
"contactsSource": "json",
"emailField": "email"
}
- Safe defaults:
{}
- High-cost fields:
maxContacts,enrichment
Agent guidance:
- Start with a small maxPlaces, maxItems, or maxResults value for test runs.
- Disable review scraping unless explicitly requested.
- Disable website enrichment for first validation runs.
- Use async runs for large jobs.
Error Handling
- If an input is missing or ambiguous, ask a targeted follow-up question.
- If the source API or Actor returns a validation error, explain the failing field and suggest a corrected input.
- If rate limits or transient network errors occur, retry once with backoff and then report the failure clearly.
- If the source documentation is incomplete, state the assumption and keep raw response details visible.
Safety And Rate-Limit Notes
- Respect the terms, robots policies, and rate limits of the source service.
- Do not expose API keys, Apify tokens, or personal data in logs or final answers.
- Prefer small test runs before large scraping or API jobs.
- Avoid browser rendering unless the workflow explicitly requires it.
Example User Commands
- "Use
crm_data_enrichment_agentto run the default workflow for this source." - "Generate a request for
crm_data_enrichment_agentusing these parameters: ..." - "Validate this
crm_data_enrichment_agentinput before running it." - "Retry the failed
crm_data_enrichment_agentoperation and explain what changed."
Integration Notes For Hermes Agent
Copy this folder into ~/.hermes/skills/<category>/crm_data_enrichment_agent/ or install it with hermes skills install <url>. Keep SKILL.md, manifest.json, and input_schema.json together so the agent can load the instructions and validate user input.