全部文档

帮助动作链接

帮助智能体回答中的可点击跳转,用用户能懂的说法描述;实现协议为 mindlink://action/…。

来源 docs/core-mechanisms/帮助动作链接.md

表述:帮助智能体回答中的可点击跳转,用用户能懂的说法描述;实现协议为 mindlink://action/…

何时用:仅当用户问 「如何 / 怎么 / 怎样」 打开某页时,用动作链接作入口。用户说 「打开工作区协作页面」 这类办事请求时,主站应 直接切到该页 并保持浮动帮助对话,不要只给「点这里」。实现见 helpNavigation.tstryHelpNavigationFromChat

目标

在帮助文档中插入“可点击的操作链接”,让用户在阅读回答时一键跳到对应操作界面(例如“创建工作区”)。

链接协议

帮助文档使用自定义协议:

主站白名单以 client/web/src/helpActions.ts 为准(嵌入挂件同源列表见 sdk/host-embed/widget/src/mindlinkAction.ts):

  • mindlink://action/workspace.create
  • mindlink://action/module.workspace(可选 section=;客服队列 section=support,再可选 cs=requests|local|group|inbound;能力包/数据连接等可用 pack / data / conn / http / script
  • mindlink://action/module.chat(可选 user_agent_id / session_id 定位会话)
  • mindlink://action/chat.new-session
  • mindlink://action/module.skills(可选 skill / id 打开指定技能)
  • mindlink://action/module.agents(打开智能体市场子区)
  • mindlink://action/module.scheduled(定时任务)
  • mindlink://action/module.me(账号与偏好)
  • mindlink://action/module.apps(可选 app= 打开工作区应用;plugin=hr 打开平台插件,并可带 tab=
  • mindlink://action/module.workflows(可选 def= / instance= 深链)
  • mindlink://action/module.im(联络;主站切到消息)

语法示例:

`创建工作区`

执行流程

  1. 帮助文档(Markdown)包含 mindlink://action/* 链接。
  2. 前端 HelpOnboardingPanel 在 Markdown 渲染时拦截该协议。
  3. 链接触发 onHelpAction(action, params)
  4. AppHome 通过白名单分发动作(见上表):工作区协作、创建工作区、消息/新建会话、技能中心、智能体市场、定时任务、账号、应用桌面、工作流、联络。

当前实现已将动作白名单抽到 client/web/src/helpActions.ts,由 executeHelpAction() 统一分发。

安全策略

  • 不执行任意脚本,不使用 javascript:
  • 仅允许白名单动作;未知动作只提示“暂不支持”。
  • 外部 http/https 链接保持正常新窗口打开。

嵌入场景(宿主页)

协议 相同mindlink://action/…),但 执行方不同

场景拦截与分发
Cadau 主站帮助HelpOnboardingPanelhelpActions.ts → 主站模块路由
网站嵌入挂件用户点击或 auto_execute_navigationwidget.on("action") → 宿主页白名单(如 executeHostAction
  • 主站动作(module.workspacechat.new-session 等)在嵌入场景 无效,除非宿主页自行映射。
  • 嵌入须维护 动作登记表 并写入智能体知识,见 ../../sdk/host-embed/宿主知识文档撰写要求.md../../sdk/host-embed/网站集成说明.md §5。
  • HR 范例白名单:examples/hr-multi-tenant/web/src/mindlinkHostActions.ts

扩展建议

  • 已支持基础埋点(本地队列):trackHelpActionEvent()

- stage=clicked:用户点击了动作链接 - stage=executed:动作执行结果(ok/reason) - 存储键:mindlink_help_action_events(最多保留 200 条)

  • 可将本地队列定时上报后端,纳入 MemoryForge 分析。