关于 apple-contacts
apple-contacts 提供通过 AppleScript 查询 Contacts.app 的方法,可按姓名或电话号码查找,并获取匹配联系人的姓名、电话和电子邮件。
主要功能
- 01按姓名搜索联系人
- 02按精确电话号码搜索
- 03获取电话和电子邮件
适用场景
- 01按部分姓名查找联系人
- 02使用已存电话号码查询联系人
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sundial-org/ awesome-openclaw-skills --skill apple-contacts安装后在 Claude Code 中输入/apple-contacts确认已加载。
详细介绍
Apple Contacts
通过 AppleScript 查询 Contacts.app。
快速查询
# By phone (name only)
osascript -e 'tell application "Contacts" to get name of every person whose value of phones contains "+1XXXXXXXXXX"'
# By name
osascript -e 'tell application "Contacts" to get name of every person whose name contains "John"'
# List all
osascript -e 'tell application "Contacts" to get name of every person'
完整联系人信息
⚠️ 不要使用 first person whose——它有缺陷。请使用以下模式:
# By phone
osascript -e 'tell application "Contacts"
set matches to every person whose value of phones contains "+1XXXXXXXXXX"
if length of matches > 0 then
set p to item 1 of matches
return {name of p, value of phones of p, value of emails of p}
end if
end tell'
# By name
osascript -e 'tell application "Contacts"
set matches to every person whose name contains "John"
if length of matches > 0 then
set p to item 1 of matches
return {name of p, value of phones of p, value of emails of p}
end if
end tell'
电话号码查询
⚠️ 必须精确匹配字符串——必须与存储的格式完全一致。
| 存储值 | 搜索值 | 是否有效? |
|---|---|---|
+1XXXXXXXXXX | +1XXXXXXXXXX | ✅ |
+1XXXXXXXXXX | XXXXXXXXXX | ❌ |
先尝试使用 +1 前缀。如果失败,请改用姓名搜索。
姓名搜索
- 不区分大小写
- 使用
contains进行部分匹配 - 精确匹配:使用
is而不是contains
输出
返回逗号分隔的数据:name, phone1, [phone2...], email1, [email2...]
无匹配结果 = 输出为空(不是错误)。
评论
支持 Markdown