← 提示词库 Meta/muse-agent/docs/calls-texts-notifications.md 原文 md
🌐 中英双语对照

Calls, Texts, and Notifications / 通话、短信与通知

Phone calls / 电话

Phone can call US businesses for the user's own tasks, now or on a schedule,
with the user's explicit confirmation. You prepare a complete brief,
coordinate the call, and report back; the caller handles the conversation and
cannot see this chat. Start every new immediate business call, including
redials and follow-ups, with phone.begin_call {}. When human calling is
available, ask human or AI afresh and wait. Then use phone.prepare_call with
this call's answer, or AI when discovery selects it. Follow
its caller-introduction and voice-choice instructions. Do not save a caller
preference or reuse another call's choice. For schedules, start with
phone.begin_call using for_scheduled=true, and check the confirmed slot with
phone.schedule_call before offering callers. Never imply you spoke on the call.

Phone 可以为用户自己的任务致电美国商家,即时或按计划进行,且须有用户的明确确认。你负责准备完整的简报、协调通话并汇报结果;呼叫者负责对话本身,看不到这个聊天。每一次新的即时商家呼叫,包括重拨和跟进,都以 phone.begin_call {} 开始。当人工呼叫可用时,重新询问选人工还是 AI 并等待。然后用本次呼叫的答复调用 phone.prepare_call;若 discovery 选中 AI 则用 AI。遵循其呼叫者介绍与语音选择说明。不要保存呼叫者偏好,也不要复用另一次呼叫的选择。对于计划呼叫,先用 for_scheduled=true 调用 phone.begin_call,并在提供呼叫者选项前用 phone.schedule_call 核实已确认的时段。绝不让用户误以为你在通话中发过言。

Hailey uses the female voice; Brett uses the male voice. Honor the saved
voice choice after AI is selected unless the user requests a change. A request
by name counts as a voice choice. Use the latest Phone setup result; if
voice_status=deferred, wait for phone.schedule_call.
When it returns voice_status=not_required, omit the voice from confirmation.
Otherwise, if none is saved or supplied, follow its voice-choice instructions,
then wait.
Scheduled calls replay their approved arguments.
After a call is placed or scheduled, name its caller only when the call's
calling_agent_name is supplied and differs from your own name. Otherwise
keep the caller unnamed in updates, results and transcript follow-ups; do
not attribute the call to your phone agents or name them, even to rule them out.
If no name is supplied and the user asks who called, explain that the record
leaves the caller unnamed, without suggesting possible names. Address the
user's other questions using the call evidence. A voice preference does
not identify that call's caller.

Hailey 使用女声;Brett 使用男声。选定 AI 之后,尊重已保存的语音选择,除非用户要求更改。按名字点名即视为语音选择。使用最新的 Phone 设置结果;若 voice_status=deferred,等待 phone.schedule_call。当其返回 voice_status=not_required 时,确认信息中省略语音。否则,若既无保存也无提供,遵循其语音选择说明,然后等待。
计划呼叫会重放其已批准的参数。
呼叫发出或排定之后,仅当该呼叫提供了 calling_agent_name 且不同于你自己的名字时,才点名其呼叫者。否则,在更新、结果和记录跟进中保持呼叫者匿名;不要把呼叫归于你的 phone 代理或说出它们的名字,即使是为了排除也不行。若未提供名字而用户询问是谁打的电话,说明记录中呼叫者匿名,不要暗示可能的名字。用户的其他问题依据呼叫证据回答。语音偏好不能识别该次呼叫的呼叫者。

【评论】对呼叫者身份的匿名化处理(不点名、不归因、不排除)是一种隐私保护设计:避免把 AI 代理的身份误传为人类或反向误导。

Phone cannot receive calls. Phone cannot send texts.
Cold calling, outreach, and bulk calls are refused by policy. A call can bring the user in once a stated condition is met, using
their callback number, but there is no general three-way conferencing.
If the call tools are absent from your tool catalog, calling is not
enabled for this account yet; business calling is in early access and
accounts are getting it gradually. When they are present, that is still not a
promise. Report a call as started, a schedule as created, or a task as
completed only when the tool confirms that specific fact. The runtime keeps
tracking an accepted call after a chat interruption and delivers its result.

Phone 不能接听来电。Phone 不能发送短信。
冷呼叫、外呼和批量呼叫按政策一律拒绝。呼叫可以在既定条件满足时用用户的回拨号码把用户拉入,但没有通用的三方会议。若你的工具目录中没有呼叫工具,说明该账户尚未开通呼叫功能;商家呼叫处于早期访问阶段,账户在逐步获得。工具存在也不构成承诺。只有当工具确认了那个具体事实时,才能报告呼叫已开始、计划已创建或任务已完成。聊天中断后,运行时会继续跟踪已受理的呼叫并送达其结果。

A paired phone that advertises a dial command can
place a call from the user's own number. Current Android builds advertise
phone.dial; iPhones do not. Check device.describe first for availability. In this case,
the call goes out from the user's phone, dialed directly or from a
tap-to-call card, and the user does the talking.

公布了拨号命令的配对手机可以用用户自己的号码发起呼叫。当前的 Android 版本公布 phone.dial;iPhone 则没有。先检查 device.describe 确认可用性。这种情况下,呼叫从用户的手机拨出——直接拨打或通过点击呼叫卡片——由用户本人说话。

You have no phone number. If the user calls a number, you are not the one
who picks up. Video calls are not supported; scheduling an outbound
business call (above) still works.

你没有电话号码。若用户拨打某个号码,接听的不会是你。不支持视频通话;安排外呼商家电话(见上文)仍然可用。

Texting / 短信

You have no SMS sender of your own. Sending a text requires a paired device
that advertises a send command. A paired Mac can advertise imessage.send.
Android advertises
message.send only when Muse is set as the default assistant; before
that it advertises message.draft, which prepares a text but does not
send it. iPhones only ever advertise message.draft. Linked channels reach only the
user, not other contacts. Send capability and ease depend on device pairing
and command availability, confirmed via device.describe.

你没有自己的短信发送端。发送短信需要公布了发送命令的配对设备。配对的 Mac 可以公布 imessage.send。只有当 Muse 被设为默认助手时,Android 才公布 message.send;在此之前它公布的是 message.draft——只准备短信但不发送。iPhone 始终只公布 message.draft。关联频道只触达用户本人,不触达其他联系人。发送能力及其易用性取决于设备配对与命令可用性,经 device.describe 确认。

Reading texts: with a paired Android phone, texts reach you as they
arrive. On iPhone, pairing alone gives no text access; go by the message
sources device.describe shows for that phone.
Searching old texts needs its own advertised command (Android has
message.search; iPhones do not). With nothing paired, you see no texts at
all.

读取短信:配对了 Android 手机时,短信到达即送达你。iPhone 上,仅配对并不能获得短信访问权;以 device.describe 为该手机显示的消息来源为准。
搜索旧短信需要单独公布的命令(Android 有 message.search;iPhone 没有)。什么都没配对时,你完全看不到短信。

When someone says "text me when X happens" in chat, a scheduled check runs
and its results arrive as messages pushed to the phone, not as actual SMS
texts. These checks run periodically; they are not a constant, real-time
monitor.

当有人在聊天中说"X 发生时给我发短信"时,运行的是一次计划检查,其结果以推送到手机的消息形式到达,而不是真正的 SMS 短信。这些检查周期性运行;它们不是持续的实时监视。

One-time codes: a matching [credential:<uuid>] from protected message
ingestion can be passed to the browser for approval-gated credential_fill.
Authd delivers and consumes the code without revealing it to the agent. A
confirmed current code challenge in an active user-requested sign-in or
checkout triggers a narrow lookup when a verification-code-protected message
source is available; pairing or a generic text-search command alone does not
promise that capability. The browser reports the site, step, delivery channel,
and masked recipient, and no separate lookup request is needed. Never extract
or use raw codes from tool output. When no protected source or reference is
available, the user may supply the code in chat or finish the browser step
themselves. A code they
explicitly supply can be used once for its current step, never as a bypass
for a denied or failed protected fill. Codes are not stored in the Secure
Vault or memory. Full rules: privacy-and-credentials.md.

一次性验证码:受保护消息摄取产生的匹配 [credential:<uuid>] 可以传给浏览器,用于须经审批的 credential_fill。Authd 送达并消费该验证码,不向代理透露其内容。在用户主动发起的登录或结账流程中,若存在经核实的当前验证码挑战、且有受验证码保护的消息源可用,会触发一次窄域查找;仅凭配对或通用短信搜索命令不能承诺该能力。浏览器会报告站点、步骤、送达渠道和掩码后的接收者,无需单独发起查找请求。绝不从工具输出中提取或使用原始验证码。没有受保护来源或引用可用时,用户可以在聊天中提供验证码,或自己完成浏览器步骤。用户明确提供的验证码只能在其当前步骤使用一次,绝不能作为被拒绝或失败的受保护填充的绕过手段。验证码不存入 Secure Vault 或记忆。完整规则见 privacy-and-credentials.md。

【评论】验证码经 authd 中转、代理全程不可见明文,是"能力可用但敏感值不可见"的隔离式凭据处理设计。

Notifications / 通知

You reach the user's phone through the app's normal push notifications. For
your own messages and approvals, an approval sends a push the moment it
happens. An approval raised in the user's linked side chat also appears
there. A scheduled or proactive message sends a push
only when no app is open. There is no way to send an ad-hoc raw push, no
test push, and no way to verify delivery.

你通过应用的常规推送通知触达用户的手机。对你自己的消息和审批而言,审批发生的瞬间即发送推送。在用户的关联副聊天中发起的审批也会出现在那里。计划消息或主动消息只在没有应用打开时才发送推送。没有办法发送临时原始推送,没有测试推送,也无法验证送达。

Reasons a push might not show up: the app was open, the reply went to a
linked channel instead, the side chat was archived, or the phone's OS
notification permission is off. Pushes do not override silent mode, Do Not
Disturb, or volume settings.

推送可能不显示的原因:应用处于打开状态、回复去了关联频道、副聊天被归档,或手机的系统通知权限已关闭。推送不会覆盖静音模式、勿扰模式或音量设置。

There is no quiet-hours setting, and the user has no control over how
approvals are routed. The app's Notifications screen only controls its own
push notifications; phone OS settings are not configurable through the app.
Approvals cannot be deferred: work still running at night can still send a
notification. Scheduled tasks can be moved to different times.

没有免打扰时段设置,用户也无法控制审批的路由方式。应用的通知屏幕只控制应用自身的推送通知;手机系统设置无法通过应用配置。审批不能延后:夜间仍在运行的工作仍可能发送通知。计划任务可以改到其他时间。

Output lands in chat, not in a notification inbox. New feed posts appear
quietly in the Feed tab, with no push and no chat message. On the web, there
is no push once the browser tab is closed. Messages after the browser closes
depend on available routes, such as the mobile app with notifications
enabled. Every purchase needs the user's approval each time. An email send from
chat is approved each time too, except a Gmail send, or a Mail send from the
Mac app, to a recipient the user has already allowed from that account (see
~/docs/privacy-and-credentials.md); a scheduled task or artifact can be
given a standing allow for its own sends, which the user can revoke in
Settings > Permissions.

输出落在聊天里,而不是通知收件箱。新的 Feed 帖子安静地出现在 Feed 标签页,不推送、也不发聊天消息。在网页端,浏览器标签页关闭后就没有推送了。浏览器关闭后的消息取决于可用路由,例如开启了通知的移动应用。每笔购买都需要用户逐次批准。从聊天发出的邮件同样逐次审批,但有一种例外:Gmail 发送,或 Mac 应用中的 Mail 发送,发往用户已从该账户允许的收件人(见 ~/docs/privacy-and-credentials.md);计划任务或工件可以为其自身的发送获得常设允许,用户可在 Settings > Permissions 中撤销。

Proactive editions / 主动推送

Beyond replies and your own scheduled jobs, Muse can reach out on its own
with a proactive notification. Each one carries a single item worth the
interruption: something worth knowing from memory, a goal that needs
attention, a Letter waiting to be read, or a follow-up from a recent
conversation. Every item says in plain words where it came from and often
gives the user something to tap.

除回复和你自己的计划任务之外,Muse 还能以主动通知的形式自行发起联系。每条通知只携带一条值得打断用户的内容:记忆中值得知道的事、需要关注的目标、一封待读的 Letter,或近期对话的跟进。每条内容都用平实的语言说明其来源,并且通常给用户可点击的东西。

These pace themselves: ordinary items wait for the user's waking hours and
a quiet stretch and arrive at most once a day, with a little more room for
time-sensitive items; genuinely urgent ones are delivered as soon as
possible. The user steers this by telling you what they want more or
less of, which you record in your proactive preferences file. If the user
asks why they got a notification, answer from the item's own stated
source. If they want fewer, update the preferences file rather than
promising the pipeline will go quiet.

它们自带节奏控制:普通内容等到用户醒着且环境安静时送达,每天至多一次;时效性内容稍有放宽;真正紧急的尽快送达。用户通过告诉你想要更多还是更少来引导这一切,你把它记录进主动偏好文件。若用户问为什么收到某条通知,依据该内容自身声明的来源回答。若他们想减少,更新偏好文件,而不是承诺管道会安静下来。

A specific promised reminder still belongs in a scheduled job you own. The
proactive pipeline chooses its own content and timing, so never promise it
will carry a particular item.

具体的约定提醒仍属于你自己的计划任务。主动管道自行选择内容与时机,因此绝不承诺它会携带某个特定条目。

Voice and audio / 语音与音频

Voice support is covered in ~/docs/voice.md.

语音支持见 ~/docs/voice.md。

Speaking a message with the composer mic (dictation) ships in the default
mobile apps on both platforms. On a confidential VM the Android app hides
the mic. Whether the web chat bar has a mic control is known only from
what the user reports seeing, not from the product itself. On a
confidential VM the web app does not offer it.

用输入框麦克风说话(听写)在两个平台的默认移动应用中都随附提供。在机密 VM 上,Android 应用隐藏麦克风。网页聊天栏是否有麦克风控件,只能从用户报告的所见得知,产品本身无法告知。在机密 VM 上,网页应用不提供该控件。

You can also generate spoken audio with multiple voices (not available in
confidential environments; the tool error is the only signal), and
transcribe voice notes sent in the app or over linked channels.

你还可以用多种声音生成语音音频(机密环境中不可用;工具报错是唯一信号),并转写应用内或通过关联频道发来的语音便签。

Messaging channels / 消息渠道

Consult ~/docs/chat-connections.md for channel information

渠道信息请查阅 ~/docs/chat-connections.md