Sync and manage CardDAV contacts (Google, iCloud, Nextcloud, etc.) using vdirsyncer + khard.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install carddav-contacts或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install carddav-contacts⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/carddav-contacts/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: carddav-contacts description: Sync and manage CardDAV contacts (Google, iCloud, Nextcloud, etc.) using vdirsyncer + khard. metadata: {"clawdbot":{"emoji":"📇","os":["linux"],"requires":{"bins":["vdirsyncer","khard"]},"install":[{"id":"apt","kind":"apt","packages":["vdirsyncer","khard"],"bins":["vdirsyncer","khard"],"label":"Install vdirsyncer + khard via apt"}]}} ---
vdirsyncer syncs CardDAV contacts to local .vcf files. khard reads and manages them via CLI.
Always sync before querying to ensure you have the latest contacts:
vdirsyncer sync
If configured with default_action = list (standard), you can search directly without subcommands:
khard "john" # Search for "john" in all fields
khard "pilar" # Search for "pilar"
Use list if you need specific flags or if the implicit search doesn't match your config.
khard list # List all contacts
khard list "john" # Search explicitly
khard list -a work # List only from 'work' address book
khard list -p # Parsable output (tab-separated)
khard show "john doe" # Show details (pretty print)
khard show --format yaml "john" # Show as YAML (good for editing)
Extract specific info (great for piping):
khard email "john" # List emails only
khard phone "john" # List phone numbers only
khard postaddress "john" # List postal addresses
khard new # Create new contact (interactive editor)
khard edit "john" # Edit contact (interactive editor)
khard remove "john" # Delete contact
khard move "john" -a work # Move to another address book
~/.config/vdirsyncer/config)[pair google_contacts]
a = "google_contacts_remote"
b = "google_contacts_local"
collections = ["from a", "from b"]
conflict_resolution = "a wins"
[storage google_contacts_remote]
type = "carddav"
url = "https://www.googleapis.com/.well-known/carddav"
username = "[email protected]"
password.fetch = ["command", "cat", "~/.config/vdirsyncer/google_app_password"]
[storage google_contacts_local]
type = "filesystem"
path = "~/.local/share/vdirsyncer/contacts/"
fileext = ".vcf"
~/.config/khard/khard.conf)Critically, set default_action = list to enable quick search.
[addressbooks]
[[google]]
path = ~/.local/share/vdirsyncer/contacts/default/
[general]
default_action = list
editor = vim
merge_editor = vimdiff
[contact table]
display = formatted_name
sort = last_name
mkdir -p ~/.local/share/vdirsyncer/contacts
vdirsyncer discover google_contacts
vdirsyncer sync安装 CardDAV Contacts 后,可以对 AI 说这些话来触发它
Send a Slack message to the #engineering channel about the deployment
Formats and sends the message with relevant context, tagging the right people
Summarize all unread messages in my inbox from today
Reads messages across connected channels and returns a prioritized summary
Draft a reply to this customer complaint and send it for review
Writes an empathetic, professional response and routes it to the approval queue
将技能文件夹放到 ~/.claude/skills/carddav-contacts/ 目录(个人级,所有项目可用),或 .claude/skills/carddav-contacts/(项目级)。重启 AI 客户端后,用 /carddav-contacts 主动调用,或让 AI 根据上下文自动发现并使用。
CardDAV Contacts 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
CardDAV Contacts 可免费安装使用。请查阅仓库了解许可证信息。
Sync and manage CardDAV contacts (Google, iCloud, Nextcloud, etc.) using vdirsyncer + khard.
CardDAV Contacts 属于「Communication」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。