Agent Skills
› QuixiAI/Hexis
› crm-lookup
crm-lookup
GitHub管理本地联系人数据库,支持搜索、查看、更新及合并重复记录。用于在对话中持久化人物信息,为会议准备等技能提供上下文,并处理心跳数据中的人物提及。
Trigger Scenarios
查询特定人员详情
其他技能需要联系人上下文
对话中产生新的联系人信息需保存
心跳处理涉及人物的数据
发现并需合并重复联系人
Install
npx skills add QuixiAI/Hexis --skill crm-lookup -g -y
SKILL.md
Frontmatter
{
"name": "crm-lookup",
"aliases": [
"who",
"contact",
"contacts",
"person",
"people",
"company",
"account",
"client",
"customer",
"owe",
"deal"
],
"category": "productivity",
"contexts": [
"heartbeat",
"chat"
],
"requires": {
"tools": [
"search_contacts",
"get_contact"
]
},
"bound_tools": [
"search_contacts",
"get_contact",
"update_contact",
"merge_contacts",
"create_contact",
"ingest_contacts_email",
"ingest_contacts_calendar"
],
"description": "Search, view, update, and merge contacts in the local CRM"
}
CRM Contact Management
Manage the local contacts database -- search for people, view detailed profiles, update records with new information, and merge duplicates.
When to Use
- When the user asks "who is [name]" or "find me [person]'s details"
- When another skill (meeting-prep, email-digest) needs attendee or sender context
- When new information about a contact surfaces during conversation and should be persisted
- During heartbeats when processing ingested data that mentions people
- When duplicates are suspected and need to be consolidated
Step-by-Step Methodology
- Search first: Always start with
search_contactsusing the most specific identifier available (full name, email, company). Avoid overly broad queries that return too many results. - Disambiguate: If multiple contacts match, present the short list to the user (or, in heartbeat mode, pick the most relevant based on recency and relationship strength). Never silently pick the wrong person.
- View details: Use
get_contactto pull the full profile -- name, email, phone, company, role, tags, notes, and interaction history. - Enrich from memory: Cross-reference the contact with
recallto find episodic memories of past interactions. This adds relational context that raw CRM fields may lack. - Update when warranted: If new information surfaces (new role, new company, corrected email), use
update_contactto persist it. Always prefer updating an existing record over creating a new one. - Merge duplicates: If two records clearly represent the same person (same email, or same name + company), use
merge_contactsto consolidate. The merge keeps the most complete data from both records.
Quality Guidelines
- Treat contact data as sensitive. Never expose contact details to external services or tools without explicit user intent.
- When updating contacts, preserve existing data. Do not overwrite a field with empty or less-specific information.
- During merges, prefer the record with more complete data as the primary. Always log the merge as an episodic memory for audit.
- If a search returns no results, say so clearly rather than guessing. Offer to create a new contact if appropriate.
- Keep notes fields factual and professional. Store subjective relationship assessments in memories, not in the CRM record itself.
Version History
-
97f625f
Current 2026-08-29 01:31
修复审批门控缺陷,确保需审批工具不被未授权调用;优化技能可达性,通过别名和默认可用列表提升搜索与联系查找功能的触发率。
- 990da5f 2026-08-20 13:53


