description: "在实验性浏览器提供方之间共享按 Session 管理的浏览器所有权与 MCP 激活。"
English | 中文
浏览器提供方使用此库,在一个 Session 的多个轮次之间复用浏览器,并在该 Session 的运行时释放时关闭其资源。一个 Session 的操作按顺序运行,隔离的 Session 则可以独立推进。附加模式将一个外部浏览器保留给单个 Session。此库还连接提供方拥有的 MCP 服务器,并在 Session 首次模型请求前发现其工具。
此公共实验性库是浏览器提供方的依赖。它没有插件入口或挂载配置。浏览器操作服务保持独立于此库。
原生提供方从包根入口构造 SessionResources,提供资源获取与清理回调。调用向 run() 传递确切的实时 Agent;失效的所有者与独占附加的第二个所有者在获取资源前失败。取消资源获取等待不会终止初始化,同一 Session 的其他调用方仍可继续等待;释放 Session 会中止并等待该初始化结束。提供方将注册保留到 dispose() 完成。
MCP 提供方使用 @deepseek-ai/dsh-experimental-browser-use-runtime/mcp 中的 mountSessionMcp,提供固定服务器名称、可执行文件、参数与所有权策略。辅助库在每个后续 Agent 的 agent/created 事件中等待一次有作用域的客户端启动与发现尝试。Agent 创建或恢复在发现完成后结束,随后才运行排队输入;成功的客户端跨轮次归该 Session 所有。
附加连接被占用时,本次激活永久跳过启动,但其他工作继续运行。连接释放不会触发被跳过激活的重试;新创建或恢复的 Agent 可以获取连接。启动失败或取消会拒绝 Agent 创建或恢复,并触发包含客户端清理的创建回滚。重连已禁用。加载或重新加载提供方只作用于后续的 Agent 激活。
调用方在等待 Agent 创建或恢复完成后,即可检查提示词组装和作用域工具定义。
指向此服务器的浏览器工具调用与资源请求使用同一队列,且要求调用 Session 自己拥有连接。其他 MCP 服务器仍可使用。没有所有权时会省略继承的服务器指导;共享服务器名称目录保留常规作用域行为。
通过提供方拥有的浏览器工具间接影响模型,MCP 辅助库在模型请求组装前发现其目录;提供方与 MCP 客户端拥有描述、schema、结果与图像行为。
此库不添加提示文本。发现的工具 schema 与提供方指导决定请求前缀变化;常规浏览器资源复用不改变这些 schema。
提供方仍负责自己提供的浏览器操作。