v1.4.0
本章版本 v1.2.0

微信、网页和在线文档:连接、采集与同步

Echo 可以把微信消息、网页、公众号文章、视频号内容、飞书文档和 Notion 页面保存到当前 Workspace。这些功能都涉及外部平台:连接成功只代表技术通道可用,不代表你拥有下载、复制、改编或发布内容的权利。开始前先确认账号、内容权限、目标 Workspace 和保存目录。

连接器的共同规则

所有外部连接都建议按以下顺序使用:先连接账号或浏览器,再测试一条非敏感内容,确认保存目录和结果格式,最后再启用自动转存或跟随更新。

“已连接”不代表永久有效。Cookie、OAuth Token、二维码登录、浏览器会话和平台授权都可能过期。任务失败时先检查当前连接状态,不要直接重复提交。断开连接只停止之后的访问,不会自动删除已经保存到 Workspace 的文件。

外部任务可能出现“正文成功、图片失败”“元数据成功、视频失败”“本地保存成功、状态回写失败”等部分成功。判断结果时逐项检查正文、媒体、来源信息和目标文件,而不是只看一个总状态。

微信传输助手

从对话输入区的“连接 APP”,或对应连接页面选择“微信传输助手”。首次连接会显示二维码。使用自己的微信扫码并在手机确认,等待 Echo 显示“已连接”。二维码是一次性登录入口,不要截图转发;过期后关闭窗口并重新开始。

设置保存目录

连接后进入“转存设置”,选择当前 Workspace 内的相对目录。建议按内容类型分开,例如:

Raw/微信/
├── 文字/
├── 公众号/
├── 图片/
├── 文件/
├── 音频/
└── 视频/

目录必须位于当前 Workspace。选择 Workspace 外路径时,Echo 应拒绝或要求重选。启用“自动转存”前先测试一条文字和一个文件,确认分类、文件名和时间正确。

支持的消息和常见结果

  • 文字通常保存为可搜索文本。
  • 图片、音频、视频和文件会保存原始媒体或下载后的文件。
  • 公众号链接可能经过网页抓取并转换为 Markdown,同时保存来源。
  • 普通链接可能进入网页采集流程。
  • 视频号卡片需要额外识别、登录或下载步骤。

单条微信消息内容的内部解析上限约为 1 MB;公众号 HTML 处理上限为 5 MB,转换后的 Markdown 上限为 2,000,000 个字符。媒体文件还受微信可下载性、网络、磁盘和具体入口限制,不能把这些文本上限理解成所有文件的统一上限。

最近转存和重复内容

“最近转存”中可以刷新状态、打开预览、在 Finder 中定位或清除记录。清除任务记录与删除磁盘文件不是同一个操作,执行前看清提示。同一消息重复转发可能生成多个记录;按来源、标题、发送时间和文件哈希判断,不要只按相似文件名批量删除。

微信传输失败怎么处理

二维码过期时重新连接;连接突然断开时先检查微信端登录状态,再刷新 Echo。文件下载失败时保留消息记录,确认文件是否过期、是否仍有访问权限和磁盘空间。公众号抓取失败时尝试打开原链接,确认是否需要登录或已经下架。

重试前先看目标目录。如果正文或媒体已经存在,只重试失败部分;不要重新执行整个任务造成重复文件。错误状态不明确时保留记录和来源链接,等待连接恢复。

微信文件还在下载中

微信中的视频、音频或其他媒体,可能先出现在转存记录里,但本地文件还没有下载完成。此时不要马上重复转发,也不要把记录当成“已经保存成功”。

先回到微信,点击文件下载或播放,让微信完成本地下载;然后回到 Echo,等待状态更新,必要时选择重试。若提示“下载未完成,可稍后重试”,先保留这条记录,等微信下载完成后再重试失败项。

如果同时下载多个视频,Echo 可能要求你一次只处理一个。按提示逐个等待和重试,避免多个任务写入同一个目录。

微信视频号

视频号不是普通网页链接。它可能需要先启用功能、确认使用边界,再通过受控登录窗口完成账号状态。对话中可以提出“保存”“下载”或“分析”请求,但三者不是同一操作:保存可能只保留来源和信息,下载需要取得媒体,分析还需要模型读取已经可用的媒体。

推荐流程

  1. 在视频号设置中完成启用确认。预期:功能状态显示可用或要求登录。
  2. 打开登录窗口并完成账号登录。预期:Echo 确认登录成功,而不是只看到网页打开。
  3. 在对话中发送视频号卡片或明确请求。预期:出现与当前对话绑定的任务卡片。
  4. 查看状态:等待登录、解析中、下载中、分析中、已完成、失败或需要恢复。
  5. 完成后检查视频文件、来源链接、方向、时长和分析结果。

登录会话失效时重新检查,不要把 Cookie 导出给 Echo。媒体输出缺失时保留任务记录,使用恢复动作;如果只获得元数据,应明确告诉用户“视频文件尚未取得”,不能把卡片信息当成完整视频。

视频号内容可能涉及音乐版权、肖像、隐私和平台规则。Echo 只帮助保存或分析用户有权处理的内容,不提供去水印、绕过登录、规避风控或批量抓取。

普通网页和直接媒体

在对话中粘贴 https:// URL,或从采集入口添加链接。Echo 会先识别它是普通网页、公众号文章、直接图片/视频,还是需要特定平台适配器的内容。识别后先查看预览、标题、来源和质量提示,再确认保存位置。

普通网页抓取会提取主要正文,并按可用情况下载媒体。网页图片单项上限为 25 MB;最终正文过大、页面需要登录、媒体类型不支持或 URL 不安全时,任务会失败或部分成功。只允许 https 外部链接;包含用户名、密码、异常端口或可疑跳转的地址不应直接访问。

质量提示怎么看

  • 高质量:正文、标题和来源基本完整,仍需人工抽查。
  • 部分成功:正文或部分媒体已保存,失败项应单独列出。
  • 需要登录:Echo 无权绕过登录墙;改用用户有权访问的授权入口。
  • 页面过大:拆分来源或只保存必要部分。
  • 不支持的媒体:保留原链接,不要伪造本地文件。

网页内容会变化。长期引用时保留来源 URL、采集时间和作者信息。公开网页可读取不等于可以重新发布;涉及转载、商业使用或个人信息时,先确认授权。

飞书连接和授权

Echo 使用你自己的飞书企业自建应用来连接飞书。进入“连接 APP → 飞书”后,准备好飞书应用的 App ID 和 App Secret,再按页面提示完成连接。App Secret 只保存到本机安全存储,不要复制到聊天、Workspace 或截图中。

连接飞书:填写自己的企业自建应用 App ID 和 App Secret
连接飞书:填写自己的企业自建应用 App ID 和 App Secret

按完整设置引导配置应用

展开“不会设置?查看完整设置引导”,按当前界面的步骤操作:

  1. 选择“打开飞书开放平台”,在默认浏览器中进入开发者后台,创建企业自建应用。
  2. 在应用的“凭证与基础信息”中复制 App ID 和 App Secret,回到 Echo 粘贴到对应输入框。
  3. 在飞书应用的“安全设置 → 重定向 URL”中,添加 Echo 引导里显示的完整地址。使用旁边的复制按钮,不要自行拼写地址。
  4. 在“权限管理 → 批量导入/导出权限 → 导入”中,粘贴 Echo 提供的只读权限 JSON。只复制代码框里的 JSON,并按页面提示确认。
  5. 按引导保存并发布应用版本,让配置生效,再回到 Echo 选择“检查并连接”,继续完成账号授权。

完整设置引导包含开放平台入口、重定向 URL 和只读权限 JSON
完整设置引导包含开放平台入口、重定向 URL 和只读权限 JSON

“重定向 URL”是飞书控制台中的字段名称。配置应以你当前 Echo 窗口提供的地址和 JSON 为准。权限用于读取文档、Wiki、评论和文档媒体,不包含写入或删除文档的权限。

没有飞书账号或创建应用的权限时,联系所在组织管理员;暂时不配置,可以选择“稍后配置”。如果创建了应用却没有发布版本,或重定向 URL、权限不一致,连接可能无法完成。授权账号也必须有权访问目标文档。

同步飞书文档

打开飞书同步页,粘贴完整的 Doc、Wiki 或当前版本明确支持的资源链接。选择连接账号、同步方式和目标目录。目标必须在当前 Workspace 内。

保存当前版本

适合留档、研究快照和不希望外部变化自动影响本地内容的场景。第一次同步成功后,本地文件保持当时版本;以后需要新版本时手动同步或新建快照。

跟随更新

适合需要持续跟踪原文的资料。Echo 会记录来源和最近成功时间,并按支持的触发方式检查更新。跟随更新不是双向协作编辑:本地修改和飞书原文同时变化时可能发生冲突,必须先比较再决定保留哪一方。

同步后检查

确认本地文件名、目标目录、正文、图片、表格或其他资源类型是否完整;查看“最近成功时间”和来源链接。不同飞书资源类型的支持程度可能不同,Doc 成功不能推断表格、幻灯片或多维表格完全支持。

PDF 和来源状态

飞书文档中的 PDF 附件可以随同步任务进入本地结果。同步完成后,检查 PDF 是否出现在目标目录,并确认文件名、来源和同步时间。正文成功不代表所有附件都已经保存;附件缺失时只处理缺失部分。

当飞书原文件被删除或归档,Echo 会在来源列表中显示“文件已删除或已归档”。这表示原来源当前不可用,不代表已经保存到 Workspace 的本地文件被删除。先保留本地文件,再决定是否从其他来源补回内容。

删除一条同步记录时,Echo 会明确提示“本地文件不会被删除”。删除同步记录只会停止这条来源的后续跟踪;以后仍可以使用同一个链接重新同步。若你只是想刷新状态,不要先删除记录,优先选择“立即检查更新”。

飞书更新、冲突和恢复

授权过期时重新授权;文档权限不足时先在飞书侧确认当前账号可以查看;目标目录不在 Workspace 时重新选择。跟随更新失败时保留上一次成功版本,不要先删除本地文件。

如果本地文件和原文都发生变化,先暂停自动更新,查看差异,再选择保留本地、接受远端或另存为新文件。不要自动覆盖用户已经编辑的本地内容。删除同步关联只停止之后的跟踪,不应自动删除已经保存的文件。

重试前查看上一次同步时间、目标文件和任务历史。如果文件已经更新但状态回写失败,只刷新状态,不重复下载整个文档。

连接 Notion 并选择同步范围

Notion 连接使用你在 Notion Developer 中创建的 Internal Connection。它适合把自己明确授权给该 Connection 的页面、子页面和数据库内容,以只读方式保存到当前 Workspace。Echo 不会修改 Notion,也不会把没有授权的页面补全出来。

连接前准备

在 Notion 侧完成两件事:创建 Internal Connection,并把要读取的页面或数据库共享给它。然后在 Echo 的“连接 APP → Notion”中粘贴 Integration Access Token,选择“连接 Notion”。Echo 会验证 Token,并发现当前 Token 实际可访问的资源。

在 Notion Developer 中创建 Connection

按下面的顺序完成一次配置。Notion 的英文界面名称可能随版本略有变化,但入口仍然是 Developer tools 和 Connections。

  1. 在 Notion 中打开“Settings → Developer”,进入 Developer tools。

    在 Notion 设置中打开 Developer,再进入 Developer tools
    在 Notion 设置中打开 Developer,再进入 Developer tools

  2. 在 Developer tools 中打开“Connections”,选择“New connection”。创建时选择“Access token”认证方式;这是 Echo 当前使用的 Internal Connection 方式。

    在 Notion Developer tools 的 Connections 页面创建 New connection,并选择 Access token
    在 Notion Developer tools 的 Connections 页面创建 New connection,并选择 Access token

  3. 创建完成后打开这个 Connection 的配置页。在“Integration token”区域复制 Access token,并确认“Read content”已开启。Echo 只读取页面和数据库内容,不需要通过 Echo 执行 Notion 写入;不要把 Token 发到聊天或提交到 Workspace。

    Notion Connection 配置页中的 Integration token 和 Read content 能力
    Notion Connection 配置页中的 Integration token 和 Read content 能力

  4. 打开“Content access”,选择“Add pages & databases”,搜索并添加需要同步的页面或数据库。只有出现在 Content access 中的内容,Echo 才能在连接后发现;不要把整个 Workspace 的可见性理解为已经自动授权给 Connection。

    在 Notion Connection 的 Content access 中添加需要同步的页面和数据库
    在 Notion Connection 的 Content access 中添加需要同步的页面和数据库

  5. 回到 Echo,打开“连接 APP → Notion”,粘贴刚才复制的 Integration Access Token,选择“连接 Notion”。看到“已连接”后,再进入“选择范围”查看页面列表。

    Echo 的连接 Notion 入口,粘贴 Integration Access Token 后连接
    Echo 的连接 Notion 入口,粘贴 Integration Access Token 后连接

    Notion 已连接,进入选择范围查看可访问页面
    Notion 已连接,进入选择范围查看可访问页面

Token 只用于连接 Notion,不要把它粘贴到对话、Workspace 文件或截图中。页面是否可见由 Notion 的共享设置和 Connection 权限决定;Echo 不能替你扩大访问范围。

选择页面、子页面和数据库

连接完成后,在 Notion 窗口的“选择范围”中操作:

  1. 在“保存目录”中选择当前 Workspace 内的目标目录,默认是 在线文档/Notion。
  2. 浏览或搜索已授权资源。列表会区分根页面、子页面、数据库和数据库条目;点击箭头可展开层级。
  3. 选择一个或多个根页面。多个根页面可以组成一个 Teamspace 范围;选择父页面后,其子页面会随范围进入同步,不必逐个勾选。
  4. 选择“同步选中内容”。Echo 会为选中的页面创建同步任务,并切换到“同步”查看结果。

数据库是内容容器,不会被压成一篇没有层级的长文。数据库条目会按可访问范围分别同步,并保留页面之间的导航关系。未共享、已删除或 Notion API 没有返回的内容不会出现在列表中。

同步结果和媒体附件

Notion 页面会以 Markdown 和页面元数据保存到本地目录;图片和附件会尽量下载到本地结果中。某个附件暂时无法下载时,正文仍可能完成,页面状态会提示部分附件失败。此时先打开本地 Markdown 和媒体目录,只处理缺失的附件,不要因为一个图片失败就重复创建整组同步任务。

在“同步”页可以查看标题、来源、最近同步状态,并使用“立即重新同步”“在 Finder 中显示”或删除同步记录。删除同步记录不会删除已经保存到 Workspace 的文件;断开 Notion 也只会清除本地连接凭据和之后的访问,不会删除已保存内容。

Notion 首期连接是只读的:Echo 不回写 Notion,不提供双向冲突合并,也不把同步任务当作 MCP、Skill 或 Agent Run。需要跟踪远端变化时,先在同步列表中重新同步,并在覆盖本地修改前检查冲突提示。

Notion 常见边界

  • “搜索页面”只搜索当前 Connection 能看到的资源,不是整个 Notion Workspace 的完整目录。
  • 页面权限和读取能力必须在 Notion 侧配置;Token 有效不代表每个页面都已共享。
  • 数据库字段会尽量转换为可读内容,但 Echo 不提供 Formula、Rollup、Relation 的原生查询语义。
  • 页面正文成功不代表每个图片、附件或远程资源都已本地化;以同步结果和本地文件为准。

连接器数据和权限边界

微信登录信息、飞书 OAuth 凭据、Notion Integration Access Token 和其他敏感连接信息应保存在系统安全存储,不写入 Workspace。采集或同步结果会写入用户选择的 Workspace。内容发送给模型分析时,还会受到模型 Provider 的隐私政策影响。

用户应确认自己有权访问、保存和处理外部内容。连接器的技术成功不构成平台许可或版权授权。组织账号、客户资料、内部文档和个人信息还可能受公司政策或保密协议限制。

给 Agent 的判断

连接器状态必须从当前连接和任务记录判断,不能根据保存过凭据推断仍然有效。外部任务失败时先检查部分结果和第三方状态,再重试。下载、同步、更新或分析前确认目标 Workspace、保存目录和内容权利;遇到登录墙、付费权限、验证码、DRM 或不明确授权时停止,不得指导绕过。