Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计提醒

enrich-company-name丰富公司名称

Agent Skill

enrich-company-name 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,668

周安装

109

GitHub Stars

公开资料未说明

下载量

863
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:enrich-company-name(丰富公司名称)
来源仓库:https://github.com/tomgranot/enrich-company-name
安装命令:
openclaw skills install enrich-company-name
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install enrich-company-name

简介

enrich-company-name 用于自动填充 HubSpot 联系人记录中缺失的公司名称字段。

  • 适合在 CRM 数据清洗或联系人信息补全场景中提升数据完整性。
  • 通过可选 API 回填功能,确保联系人继承关联公司记录的准确名称信息。
  • 安装命令为 openclaw skills install enrich-company-name,需确认 HubSpot API 访问权限。
  • 建议检查目标联系人记录状态,避免重复调用导致数据冲突或配额超限。

SKILL.md

name
enrich-company-name
description
Populate missing contact company name fields from associated company records using a HubSpot workflow with optional API backfill. Ensures contacts inherit their company name for segmentation, personalization, and ICP classification.
license
MIT
metadata
author
tomgranot
version
1.0
category
data-enrichment

Enrich Contact Company Name from Associated Company

Populate missing contact-level company name fields by copying the value from the associated company record. Uses a HubSpot workflow for ongoing enrichment and optionally an API backfill script for immediate results.

Why This Matters

Contacts missing a company name cannot be matched to ICP-classified companies, break email personalization tokens, and are invisible to company-based segmentation. In a typical neglected CRM, 40-60% of contacts may be missing this field even though the vast majority have a company association.

Prerequisites

  • HubSpot Marketing Hub Professional or Sales Hub Professional (for Workflows)
  • Phase 1 hygiene processes completed (invalid/deleted contacts removed first)
  • HubSpot auto-association enabled: Settings > Objects > Companies > "Create and associate companies with contacts" toggle must be ON. This lets HubSpot automatically create company records from email domains and associate them.

Plan

  1. Enable auto-association if not already on
  2. Audit how many contacts are missing company name (before state)
  3. Build a workflow that copies company name from the associated company record
  4. Optionally run an API backfill script for immediate results
  5. Verify enrichment results (after state)

Before State

Run a before-state audit to capture the baseline.

Script approach (recommended):

import os
from hubspot import HubSpot
from dotenv import load_dotenv

load_dotenv()
api_client = HubSpot(access_token=os.getenv("HUBSPOT_API_TOKEN"))

# Count contacts missing company name
result = api_client.crm.contacts.search_api.do_search(
    public_object_search_request={
        "filterGroups": [{
            "filters": [{
                "propertyName": "company",
                "operator": "NOT_HAS_PROPERTY"
            }]
        }],
        "limit": 0
    }
)
print(f"Contacts missing company name: {result.total}")

Manual approach: Go to Contacts > filter by Company name > is unknown. Record the count.

Save the count. This is your baseline for measuring success.

Execute

Method 1: HubSpot Workflow (Recommended — Handles Backlog + Future)

  1. Go to Automation > Workflows > Create workflow
  2. Select Contact-based > Blank workflow
  3. Name: AUTO-ENRICH: Copy Company Name from Association

Enrollment trigger:

  • Contact property > Company name > is unknown

Re-enrollment:

  • Enable re-enrollment when associated company changes. This is the safety net: if an association forms after the workflow already ran, the contact gets re-enrolled.

Action 1: Delay 10 minutes

  • This delay is critical. When a new contact enters HubSpot, the auto-association engine needs time to parse the email domain, find or create a matching company, and create the association. Without this delay, the workflow checks for an association before one exists.

Action 2: If/then branch

  • Condition: Associated company > Company name (or Name) > is known
  • YES branch: Add a Copy property action:

- Copy FROM: Company > Name - Copy TO: Contact > Company name

  • NO branch: Leave empty (contact exits). These are typically contacts with personal email addresses (gmail, yahoo, etc.) where no company can be determined.

Activate:

  • Click Review > Turn on
  • When prompted, select Yes, enroll existing contacts. This enrolls the entire backlog.

Method 2: API Backfill Script (Optional — Immediate Results)

Use this if you need the data populated immediately rather than waiting for workflow processing.

# Pattern: Fetch contacts missing company name,
# look up their associated company, copy the name
from hubspot import HubSpot

api_client = HubSpot(access_token=os.getenv("HUBSPOT_API_TOKEN"))

# 1. Search for contacts missing company name
# 2. For each, get associations to companies
# 3. Fetch the primary company's name
# 4. Batch update the contact's company property

Key API notes:

  • Use the Search API to find contacts where company NOT_HAS_PROPERTY
  • Search API caps at 10,000 results. Segment by createdate ranges if needed.
  • Use Associations API v4 to get contact-to-company associations
  • Batch update contacts using crm.contacts.batch_api.update
  • Respect rate limits: 100 requests per 10 seconds

Why Do Both?

  • The workflow handles both backlog (enrolled on activation) AND future contacts automatically. It is the long-term solution.
  • The API backfill provides immediate results if you cannot wait for workflow processing (which may take hours for large databases).
  • If you only do the workflow, that is perfectly fine. It will process the backlog since existing contacts meeting the trigger criteria get enrolled on activation.

After State

Wait 1-2 hours after activating the workflow (longer for very large databases), then verify.

Script approach:

# Same search as before-state script
result = api_client.crm.contacts.search_api.do_search(
    public_object_search_request={
        "filterGroups": [{
            "filters": [{
                "propertyName": "company",
                "operator": "NOT_HAS_PROPERTY"
            }]
        }],
        "limit": 0
    }
)
print(f"Contacts still missing company name: {result.total}")

Verification checklist:

  1. The "missing company name" count should have dropped dramatically (typically from 40-60% to under 10%)
  2. Remaining contacts without company names should primarily be those with personal email addresses (gmail.com, yahoo.com, etc.)
  3. Spot-check 10-20 contacts to confirm the company name matches their associated company record
  4. Check workflow history for errors:

- Property type mismatch (copying to wrong field type) - Multiple associated companies (HubSpot uses the primary company)

  1. Verify the workflow continues processing new contacts by checking for recent enrollments

Key Technical Learnings

  • The 10-minute delay is a balance. Auto-association typically completes in a few minutes, but 10 minutes provides a comfortable buffer. If many contacts go down the NO branch and later get associations, increase to 15-20 minutes.
  • Re-enrollment is the safety net. Even if the delay is not long enough, re-enrollment on "associated company changes" catches late associations. The delay handles the common case; re-enrollment handles edge cases.
  • Primary company wins. If a contact is associated with multiple companies, HubSpot copies from the primary associated company. Verify primary associations are correct for key contacts.
  • This workflow does NOT overwrite existing values. The enrollment trigger requires "Company name is unknown", so contacts with an existing company name are never touched.
  • Property type matters. Contact "Company name" is a single-line text field by default. If someone changed it to a dropdown, the copy action may fail. Check in Settings > Properties before running.
  • Personal email domains exit on the NO branch. Contacts with gmail.com, yahoo.com, hotmail.com, outlook.com, etc. will not get enriched. This is expected. They need manual enrichment or a third-party tool (ZoomInfo, Clearbit, Apollo) to determine their company.
  • Company name is a prerequisite for ICP Tier classification. Run this enrichment before creating ICP Tier workflows.
  • Schedule the "after" verification script. Workflow processing for large databases takes time. Do not check results immediately — schedule the verification for 2-4 hours after activation.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

82.82%
按下载量换算715

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills