界面怎么用
打开 Remote 后先看到电脑上的会话列表。点一张卡片,打开的就是电脑上那个会话,不是副本,也不是截图。
手机是一屏一张,从会话左缘右滑可以回到列表。窗口宽到 720px 以上(平板、桌面浏览器)时,列表留在左边,会话在它右边,见 平板和桌面浏览器。下面先按手机讲;讲到长按打开菜单的地方,用鼠标时是右键。
列表
默认 按工作区 分组,也就是按项目目录。列表右上角的 工作区 按钮打开 分组方式:
- 工作区 — 按 Herdr 工作区分组(默认)
- Agent — 按 Agent 种类分组
- 全部 — 不分组,一条列表
同一个面板里还有 全部展开 / 全部折叠。卡片和分组按你最近点开的顺序排,状态变化不会挪动位置。宽屏时列表一直在会话旁边,接连点开会话不会让它重排;换电脑、换分组方式、刷新页面或切回这个浏览器标签页之后,才按最近点开的顺序重排。
分组后点标题可以展开或折叠。默认只展开第一组,其余先收着。有 置顶 时,置顶和它下面那一组默认展开。
有会话在等你时,列表顶部会出现 需要你 一栏,列出这些会话,点一下直接进去。
卡片大字只放一个身份:有会话名就用会话名;没有的话,若工作区名不是当前目录名,就用工作区名;再否则用终端里像任务的标题(会去掉 Thinking / Waiting for response 和末尾的 - grok)。都没有时,有 Agent 就写 claude,纯终端写 终端。下一行永远是坐标,顺序是 claude · pairfob(Agent · 目录 · 非默认标签页),不重复大字里已经有的词,也不展示 main。不会拿内部 ID 当名称。
- 会话名:这一块终端画面的名字;改它只影响当前会话
- 标签页名:装着一个或多个会话的标签页;改它会影响整个标签页的识别
- 工作区名:最外层项目容器的名字;按工作区分组时就是分组标题
| 状态 | 意思 |
|---|---|
| 等你 | agent 在等确认或输入,卡片更醒目 |
| 工作中 | 正在跑 |
| 本轮结束 | 这一轮做完了 |
| 等待输入 | 空着,等你给下一件事 |
| 空闲 | 连着但没在忙 |
| 启动中 | Agent 正在启动 |
| 未知 | 电脑没有报告状态,或暂时确认不了 |
已连接但列表为空时,说明 Herdr 里还没有会话,可以新建一个或在电脑上打开终端。只有页面明确显示 电脑上的 Herdr 没在运行 时,才需要打开 Herdr;也可以在电脑上执行 remote doctor 确认状态。
新建 在电脑支持时出现:手机上在右下角,宽屏时是左栏顶部的 +。列表长按或会话 ··· 里的 新建标签页,以及会话 ··· 里的 分屏,用同一份 Agent 种类列表:可以选一个 Agent,也可以选 终端。电脑没有列出 Agent 种类时,对话框仍然能开,结果是一个纯终端会话。正在新建的 Worktree 会出现在列表上方,完成前可以取消。
点卡片进去。长按(用鼠标时右键)打开这张卡片的菜单:置顶、改会话名、关闭会话、看标签页布局,以及在同一工作区 新建标签页。置顶的会话出现在列表最上面的 置顶 分组,不再留在原来的工作区或 Agent 组里;再长按 取消置顶。标签页已经有可见名字、或正在分屏时,才会出现 改标签页名;关闭标签页 只在分屏时出现。按工作区时,长按分组标题(或点标题右边的 ···)可以 新建标签页、在画板中打开、改工作区名,或 关闭工作区;其他分组方式下,改工作区名 和 关闭工作区 在卡片菜单最底下。电脑支持新建标签页时,新建入口才会出现。分屏仍在点进会话后的 ··· 里。
用手指时,卡片左滑露出 置顶 和 更多(就是上面那个菜单);有未读完成的卡片右滑标为 已读。
画板(卡片长按里的 看标签页布局、会话 ··· → 布局 里的 在画板中查看 也能进)照电脑上的样子画出当前标签页:每一格的位置和大小都和 Herdr 里一致,格子里是那一格的真实画面,跟着捏合(用鼠标时 Ctrl + 滚轮)一起缩放;每格顶部的标题条显示 Agent、名字和状态。点标题切换工作区,下面一排是这个工作区的标签页;+ 新建标签页(长按是 再开一个),长按标签页可以 改标签页名、新建标签页 或 关闭标签页。这里切换工作区或标签页不会抢走电脑上的焦点。
点一格就打开那个会话;一根手指在一格上竖着拖动,会滚动那一格在电脑上的画面,两根手指拖动是移动画板。长按一格(用鼠标时右键,或点标题条上的 ···)是这一格的操作:分屏、调整大小、交换位置、在电脑上铺满、改会话名 和 关闭会话。也可以直接拖格子之间的分隔线调整大小。用手指长按一格会把它提起来:拖到相邻的格子上松手是交换位置,原地松手是打开菜单,标签页那一行会提示松手之后发生什么。这些操作会立刻改变电脑上的分栏;每项要电脑支持才会出现,重新连接期间画板只能看、不能改。
宽屏时画板在主栏,左栏照常是会话列表;窗口不到 900px 宽时画板占满整页,左上角返回列表。用鼠标时,横向滚动或 Shift + 滚轮是移动画板,竖向滚轮滚动指针下那一格在电脑上的画面;画板放大到超出窗口时,竖向滚轮和竖向拖动都先移动画板,到边之后滚轮才滚动那一格。画布获得焦点后也能用 Herdr 的键:方向键选格,Shift + 方向交换,Option + 方向调整大小,v / - 分屏,z 铺满,x 关闭,0 适配。
手机底部是 会话 / 画板 / 设置 三个标签,有会话在等你时 会话 上会显示数字。宽屏时 画板 和 设置 在左栏最底下,新建和切换电脑在左栏顶部。
点进会话
默认用 自动:P2P 直连、浏览器支持 WebGL2 且未开启省流时进入真终端,否则进入控制。电脑上已经打开的会话仍在电脑上运行,不是远程桌面,也不是浏览器里再开一个终端。
标题栏:
- 左:返回列表(手机;宽屏只在左栏给文件与更改让位时才有)。有其他会话在等你时,返回键上会显示数量
- 中:Agent 图标、会话名和状态。只是显示,不能点;换会话请回列表,或从左缘右滑
- 右:文件夹 查看文件与更改,然后
···会话操作(怎么看、怎么输入,以及改这一格的名字、关掉这一格)
停止正在工作的 Agent 在输入框右侧的按钮上,见下面的 控制。
四个选项在 ··· 最上面切换。某个会话里改过,只记住那一个。设置里可以改点开会话时的默认。
| 模式 | 做什么 |
|---|---|
| 自动 | 打开会话时选择:P2P 直连、支持 WebGL2 且未开启省流时用终端,否则用控制 |
| 控制 | 查看终端画面,用系统键盘和按键垫操作这个会话 |
| 终端 | 真终端。vim、全屏 TUI 才需要。手机默认保持 80 列、左右滑动;自适应 会把电脑上的终端缩到这块屏幕的宽度。上下滑和鼠标滚轮都是远端滚动;点画面里的网址会在新标签页打开 |
| 对话 | 和 Agent 发消息。任务从这里发,不在 ··· 菜单。每一轮的执行过程收在一张过程卡里,运行中展开,结束后收成一行结果。Claude Code、Codex、Grok、Pi、Cursor、Hermes、opencode 的会话可用;后三种要等 Agent 把会话存下来才能进入,Cursor 是在发出第一条消息之后。Cursor 不记录步骤结果,所以它的步骤只显示“已结束”,不区分成功或失败。Hermes 需要电脑上有 sqlite3;opencode 1.2 及以后的版本暂时读不了 |
控制里:
- 底部输入框用系统键盘,听写和自动更正都可用,可以写多行。手机键盘的回车默认换行,写完点 发送;想让回车直接发送,在设置里打开 回车键发送。外接键盘上 Enter 发送、Shift+Enter 换行
- 输入框右侧的按钮随情况变化:
- 有草稿:发送,文字进终端并按下 Enter
- 没有草稿、Agent 正在工作:停止。点一下向终端发送 Esc;如果它还在工作,按钮变成 强制停止,再点一次才发送 Ctrl+C,而且只发一次。有草稿时长按 发送 也能停止
- 其他时候:Enter(↵),向终端发送回车
- 组字 / 实时 在
···→ 输入与显示 → 输入 里切换,只影响这个会话;实时模式下输入框里会标出 实时 - 终端里的确认选项保留原样;按提示用按键垫的 ↑/↓ 选择,再按 Enter 确认。需要输入字母或文字时,按终端提示输入
- 点某一行可以 复制、复制路径、引用 到输入框,或 选择 文本
- 上滑或页↑是给当前画面翻页,不是拉取历史
- 字号会记住
- 长行可以自动折行,也可以关掉
- 按键垫第一排是 Esc、方向键和退格。点
···展开后,可以在 按键 和 命令 之间切换:按键里有 控制(Ctrl、Alt、Shift、Cmd、Tab、Shift+Tab、Enter、Ctrl+C 等)和 选择与编辑 两页;命令里是 Agent 的斜杠命令(/clear这类;点一下会放到草稿开头,实时输入时直接写进终端,都不会替你按回车,Remote 也不解释)和你自己的常用指令,可以新建、编辑、拖动排序
对话模式里 Agent 等你时,这一轮会出现 需要你确认 卡,显示终端里的提示。提示是编号选项时(Claude Code、Codex 的批准列表),可以直接在卡上选一项再点 发送选择:发送前电脑会核对终端画面没有变,变了就重新读取,让你再选一次,不会自动重发。其他提示只显示终端里的最后几行。任何时候都可以点 去终端处理 切到 控制;确认前先读清操作和当前选项。
电脑和手机操作的是同一个终端中的确认框,一边完成确认后,另一边会看到更新后的状态。如果手机看不到提示,先在电脑上处理,并反馈手机所在模式、Agent / 扩展版本和脱敏录屏。
平板和桌面浏览器
布局只看窗口宽度,操作方式看你用手指还是鼠标:横屏平板和同样宽的笔记本窗口栏数相同,前者保留左右滑、长按和按键垫,后者多出悬停操作和快捷键。
| 窗口宽度 | 布局 |
|---|---|
| 720px 以下 | 手机布局:一屏一张,底部三个标签 |
| 720–899px | 左栏 + 会话。查看文件与更改 和画板各占整页,左上角返回 |
| 900–1199px | 左栏 + 会话。打开 查看文件与更改 时它排在会话右边,左栏让位;会话左上角出现返回键,带着其他在等你的会话数量,点它关上这一栏、回到列表 |
| 1200px 以上 | 三栏:列表、会话、文件与更改 |
手机横过来,宽度不到 900px 时仍是手机布局;终端 模式在手机上始终占满整屏。
会话无论哪种模式都留在列表旁边,终端 也是。还没选会话时,主栏列出需要你的会话,并给出 新建会话 和 搜索或跳转。
左栏
从上到下:
- 电脑名和连接状态。点它打开 电脑 菜单:切换电脑、连接详情、添加电脑。同一行右边是分组方式和 +
- 搜索或跳转…:搜会话、工作区或操作。没输入时在等你的会话排最前,回车打开选中的那一条。macOS 上也可以按 ⌘K;其他系统没有这个快捷键,点搜索框
- 需要你 一栏,点一张直接进去
- 会话列表
- 最底下是 画板 和 设置
+ 用鼠标点开的是一个菜单,列出最近用过的组合,最后一行 新建会话 打开完整的新建面板;没有最近的组合时直接打开面板。用手指点是新建面板,长按才是最近的组合。
鼠标和键盘
- 鼠标移到列表的一行上,右侧出现 置顶 和 更多,有未读完成时还有 已读,就是手指左右滑露出的那几个按钮
- 右键一行、分组标题、画板上的一格或标签页,打开它的菜单
- 菜单和面板在点的地方打开,对话框是居中的卡片;用手指点时仍是底部面板
- 控制 里按键垫收在输入框旁的 按键 里,输入框下面多一个 组字 / 实时 开关;终端画面里的文字可以直接拖选
实体键盘:
| 按键 | 作用 |
|---|---|
| F6 / Shift+F6 | 在列表、会话、文件与更改之间移动 |
| ↑ / ↓ | 焦点在列表里时逐行移动;→ 进入这一行的操作,← 回来 |
| Esc | 有菜单、面板或对话框开着时,关掉最上面那一层。焦点在文件与更改里时,先关打开的文件或 diff,再关这一栏。会话拿着键盘时,控制 和 终端 里的 Esc 发给程序 |
| PageUp / PageDown | 给会话翻页 |
| ⌘K | 搜索与跳转,只在 macOS |
会话拿着键盘时,直接打字就进它的输入框,不用先点。焦点在列表、文件与更改或任何菜单里时,按键不会发给会话,所以在 diff 上按 Ctrl+C 是复制,不会打断旁边的 Agent。
- 组字:Enter 发送,Shift+Enter 换行,Ctrl+C、Ctrl+D 这类 Ctrl 组合键发给程序。输入框空着时 Tab 发给程序,有草稿时 Tab 离开输入框;Shift+Tab 总是离开输入框
- 实时:每个键都发给程序,Tab 和 Shift+Tab 也是;只有 F6 把键盘移出会话
- 选中了终端里的文字时,Ctrl+C 是复制而不是中断。macOS 上复制用 ⌘C,Ctrl+C 始终发给程序
触屏平板
触屏平板保留手机的操作:左右滑、长按、底部面板和按键垫。接上实体键盘后,按下第一个实体键就按实体键盘处理:Enter 发送,上面的按键也都可用;屏幕键盘再弹出来时,回车又是换行。
查看文件与更改
会话顶栏的文件夹不是 Worktree 菜单,打开的是这一格的工作区。顶部显示当前分支和领先的提交数:
- 文件 — 目录列表和文本预览
- 更改 — 未提交的 Git 状态,分成 已暂存的更改 和 更改 两组;点文件看 diff
- diff 页可以在 已暂存 和 工作区 之间切换,打开文件 看全文,底部 上一个 / 下一个 逐个翻改动的文件
- 点 diff 的一行写批注,再 发给 Agent
- 分支列表只读;切换工作走 Worktree
窗口宽到 900px 以上时,文件夹按钮开合的是会话右边的一栏,不离开会话:
- 这一栏里 更改 在前、文件 在后;不是 Git 仓库时只有文件
- 打开一个文件或 diff 后,列表收成顶上的文件名,点它回到列表
- 批注就写在那一行下面。Esc 是先放一边:写了的字留在那一行下面,标着 未保存,点它接着写;取消 才是丢弃
- 发给 Agent 发到旁边这个会话
- 右上角可以 整页打开,也可以关上这一栏。窗口变窄时这一栏先收起,变宽后回到原来的文件或 diff,没写完的批注还在
- 终端 模式下,开合这一栏不会改变电脑上终端的大小,多行草稿也不会
电脑端 daemon 还不支持时,页面会说明。
上传附件
点输入框左侧的附件按钮 添加附件,用系统的选择器选文件、照片或拍照;也可以直接粘贴。入口只在电脑端支持附件上传时出现;如果看不到,先确认已连接,并更新电脑端 Remote。
上传并交给 Agent
- 选好的文件出现在输入框上方的附件栏。图片可以先编辑,每张都能在 智能压缩 和 原图 之间切换。
- 已经是 P2P 直连 时会自动开始上传;还没直连时,附件栏提示 需要直连才能上传,点 连接。
- 写好说明,点 发送。已上传的附件路径会按附件栏的顺序附在正文后面一起发出;还有附件在上传时,按钮显示 等待上传 N%,传完自动发送,点一下可以取消等待。有附件传不完时会提示,可以 重试、连接,或 不带它发送。
- 想把某个路径放在正文里的指定位置,对这个附件选 放进正文。
文件保存到当前会话的电脑工作区。只上传不会发送任务,也不会按下终端 Enter;只有你点 发送 时才一起发出。文件传递不依赖运行的是哪种 Agent;Agent 能否读取 PDF、识别图片或解析 Office 文档,取决于它自己的模型和工具。
文件类型与大小
PDF 可以上传,并按原文件传输。 系统选择器不限制扩展名,也可选择文本、Markdown、JSON、图片、Office 文档、压缩包和音视频等。文件能上传不代表 Remote 提供该格式的预览或解析。
电脑端使用受控文件名保存附件。浏览器正确识别的 PDF 会保存为 .pdf;未专门映射或未识别的类型可能保存为 .bin,内容不变。
| 限制 | 当前值 |
|---|---|
| 每个会话的附件队列 | 最多 5 个文件 |
| 实际上传的单个文件 | 不超过 20 MiB |
| 同一队列的实际上传总量 | 不超过 40 MiB |
| 本机保留的源文件总量 | 不超过 80 MiB |
符合条件的 JPEG 照片可以先选择最大 40 MiB 的源文件,但压缩后的实际文件仍须满足上传限制。PDF 和其他普通文件在选择时就限制为 20 MiB。本机保留容量不是上传额度;如果压缩失败或选择原图后仍超限,需要先减小文件。
图片智能压缩
图片默认用 智能压缩,在 P2P 就绪、开始上传时处理,不是在选中时立即压缩:
- 大于 256 KiB 的普通 JPG/JPEG 照片会尝试压缩,最长边不超过 2048 像素;由 JPEG 照片编辑生成的 PNG 也可能进入这一流程。
- 普通 PNG、WebP、AVIF、HEIC/HEIF、GIF 和 SVG 保留原图;识别为截图的文件名也会跳过自动压缩。
- 选择 原图 时跳过这一步压缩,并保留已经做过的编辑。
- 文件不超过 256 KiB、压缩失败或节省不足 10% 时保留原图。
预览 → 信息 里会显示实际节省的大小,或保留原图的原因。文字截图、报错信息和细小图表可以点 改为原图。
断线、检查状态与继续上传
文件上传只走 P2P。 Relay 可以查看会话,但不能开始、继续或检查上传。P2P 不可用时,未发送的队列任务会停下;已有的图片准备结果可以复用。直连恢复后,还没开始的文件会自动上传;显示 暂停 的文件点 继续上传,失败的点 重试,上次没传完的点 全部继续。
结果不确定时(例如取消后电脑没有确认),文件上会改为 检查状态:需要时先建立直连,然后只查询电脑已收到的进度,不会自动续传。刷新页面后,浏览器会尝试恢复本机保存的未完成附件;若浏览器存储不可用或记录已被清理,则无法保证恢复,请按页面提示处理。
点开附件的 预览,再点 信息,可以看到大小、保存路径,以及 压缩、校验、本机保存、发送 等各阶段的耗时。本机保存 是浏览器在写入本机恢复记录,排在该文件的网络发送之前。
会话操作里可能出现的操作
点会话标题栏右侧 ···。电脑当时做不到的项不会出现。改标签页名、改工作区名、关闭标签页、关闭工作区 在列表长按菜单里,不在这里。用鼠标时这个面板贴着 ··· 打开,用手指时是底部面板。
| 分组 | 可能有 |
|---|---|
| 模式 | 自动、控制、终端(vim / TUI)、对话 |
| 快捷格 | 复制文本、新建标签页、分屏、改会话名 |
| 输入与显示 | 输入:组字 / 实时、字号、长行自动折行(控制)、宽度:自适应 / 80 / 100 / 120 列(终端)。对话模式下不显示 |
| 会话 | 布局(拖动分隔线调大小、长按这一格拖到别处交换、铺满)、Worktree(列表、新建、打开)、Agent 信息、关闭会话 |
对话把一轮里的思考和工具收进一张过程卡。卡头先说结果:等你确认、改了哪些文件、共几步和用时。中途失败又被 Agent 继续处理的步骤只在列表里标出,停在失败的一步时卡头才会说明。运行中展开显示最近几步,结束后收成一行;步骤多时可以只看失败或编辑的步骤。点任一步打开详情,看命令或参数和输出,可以复制,也可以 上一步 / 下一步 翻看。完成的回答下面可以 复制,代码块可以单独 复制代码;线程很长时 加载更早内容。
网页不会任意执行命令、删 worktree,也不会把电脑窗口抢到前台。
设置
手机上点底部的 设置;宽屏时在左栏最底下。
- 电脑卡片:上面是电脑名,下面一条从 这台设备 到 电脑 的连线,线上是当前路径和往返时延(没连上时是 未连接)。点这张卡片进入这台电脑的页面,里面的 网络路线 有 自动 / 仅 P2P / 仅 Relay:自动优先直连,不通时用中继;仅 P2P 只尝试直连,不通时暂走中继并在后台继续重试(再点一次立即重试);仅 Relay 只用中继。这个选择会留在这台浏览器上。同一页还有 已配对设备、导出连接诊断 和 解除这台设备的配对。切换电脑 打开 电脑 列表,在那里点 添加电脑 再配一台,不会替换现在这台。点会话列表顶部的电脑名(宽屏在左栏顶部),也能切换和添加电脑
- 订阅余量:这台电脑已登录账号的额度(Codex、Claude Code、GitHub Copilot、Cursor、Grok、Antigravity)。每个服务一行,带进度条和剩余百分比;全部余量 里看各窗口,那一页可以 刷新余量。没有数据或已过期时不会显示成零
- 语言:跟随浏览器,或固定 中文 / English。只作用于这台设备上的 Remote。文档右上角有自己的语言菜单,两者记的是同一个
pairfob_lang偏好 - 模式:点开会话时默认用 自动,也可以固定为 控制 / 终端 / 对话。某个会话里再切换,只记住那一个
- 输入:新会话默认用组字(写完点发送)还是实时(边打边进终端)。会话里
···→ 输入与显示 再切换,只影响那个会话 - 回车键发送:默认关,屏幕键盘回车换行,用发送键发送;打开后回车直接发送。外接键盘始终是 Enter 发送、Shift+Enter 换行;用鼠标的桌面浏览器和接了实体键盘的平板上,这一行写作 屏幕键盘回车发送
- 通知:见 通知。开启后,Agent 等你处理或完成任务时会通知这台设备;电脑端没开推送时,这一行会说明,点 怎么开启 展开设置步骤
- 已配对设备(在电脑页面里):名称、在线或离线、最近使用、通知。当前设备标成 这台设备。其他设备可以点 解除;已解除的不再列出
- 导出连接诊断(在电脑页面的 诊断 里):连接出问题时导出最近的连接事件,见 常见问题
- 更新电脑端:列表上会提醒,设置里 电脑端版本 一行可以 检查更新 / 更新电脑端(用户服务安装才支持从 Remote 里更新)。确认后会短暂断开再连上。不会自动安装。命令行见 命令行
- 解除这台设备的配对:在电脑页面最下面。之后必须重新配对
丢失的手机如果还能打开 Remote,也可以从设置里解除其他设备。立刻在电脑上 remote forget 那台手机,见 多台设备。
命名 Herdr 会话
如果电脑上跑着不止一个 Herdr 服务(herdr --session <name>),手机可以在它们之间切换。当有命名会话正在运行,或当前选择的是命名会话时,会话列表顶部会显示当前 Herdr 会话的胶囊按钮(宽屏时在左栏),设置里也有 Herdr 会话 一行。选中的命名服务停止后,切换入口仍保留,方便返回默认会话。点任意一处即可换一个;列表会标出哪些正在运行。
命名 Herdr 会话默认开启。如果 HERDR_SOCKET_PATH 设置为非默认路径(即不是 ~/.config/herdr/herdr.sock),而 PAIRFOB_MULTI_SESSION 未设置或为空,多会话功能保持关闭。设置 PAIRFOB_MULTI_SESSION=1 可在固定 socket 时开启;其他非空值保持关闭。
要关闭这个功能,在电脑上用你平时安装时的同一个 shell 运行:
PAIRFOB_MULTI_SESSION=0 remote service installservice install 会按当前 shell 的环境变量重写用户服务,所以安装时设过的其他变量(例如 HERDR_SOCKET_PATH)也要一起导出,否则会丢失。之后这个设置在重启和 remote update 后都保留。要重新开启,不带它再运行一次 remote service install。
每次运行都会列出原服务定义的环境里被移除或改动的内容,包括手工加进去的条目。只有 service install 自己写入的变量才显示值。原服务定义无法读取比较时,会在状态目录里保留一份副本,并打印它的路径。
目前的限制:
- Remote 只会自动启动配置的默认服务,命名服务需要自行启动。只使用命名会话时,电脑重启后会多出一个空的默认服务;设置
PAIRFOB_HERDR_AUTOSTART=0可关闭自动启动 - 通知只来自默认 Herdr 会话
- 不支持这个功能的旧版电脑端不显示切换入口
另一个窗口
同一台已配对设备上,另一个浏览器窗口打开 Remote 时,旧窗口可能提示「这台设备的连接被另一个窗口接管了」。只用一个打开的页面。
加到主屏幕
见 开始使用。iOS 建议用 Safari 添加到主屏幕后再日常使用。