
k-skill 浏览器运行时详解BrowserOS、Aside、Chrome CDP 降级顺序【免费下载链接】k-skill한국인을 위한 스킬 모음집 - 에이전트를 한국인으로项目地址: https://gitcode.com/GitHub_Trending/ks/k-skillk-skill 是为韩国人打造的 AI 技能合集其中许多技能法院拍卖公告查询、电子诉讼支付令、预备军训练信息等需要真正的浏览器会话才能工作。负责这件事的核心组件就是k-skill 浏览器运行时k-skill-browser-runtime它按BrowserOS → Aside → Chrome CDP的降级顺序自动挑选可用的浏览器通道并内置 CAPTCHA、支付、电子签名等停止规则让 AI 代理在需要人工接管时安全停下而不是硬闯。什么是 k-skill 浏览器运行时在 k-skill 中浏览器自动化被集中收敛到一个 Node.js 适配器包里packages/k-skill-browser-runtime/。它的设计原则很清晰只做连接与生命周期管理探测端点、连接 CDP 会话、断开时只关闭自动化创建的标签页绝不关闭用户已有的页面不做站点逻辑具体的导航、选择器、解析规则留在各个技能自己的 SKILL.md 和代码里HTTP 优先如果数据能通过公开 HTTP/RSS/sitemap 直接拿到就不动用浏览器——浏览器只留给需要登录会话或依赖 JS 渲染的场景。官方文档入口在 docs/browser-runtime.mdAPI 与停止规则详情见 packages/k-skill-browser-runtime/README.md。降级顺序auto 模式如何挑选浏览器默认 provider 是auto运行时会按平台顺序逐个探测直到成功为止。源码在 packages/k-skill-browser-runtime/src/provider.js平台降级顺序macOSdarwinAside Browser → BrowserOS CDP → Chrome/Chromium CDP其他平台Linux/Windows 等BrowserOS CDP → Aside Browser → Chrome/Chromium CDP探测逻辑是健康检查 连接两段式见 provider.js对 CDP 端点发起cdpUrl/json/version探测确认服务存活对 Aside 执行一次安全的aside repl探测只列出标签页、不打开任何页面第一个探测通过的 provider 被选中全部失败则抛出类型化错误UNAVAILABLE并在cause中附带最后一个失败原因方便排障。 如果你在 macOS 上装好了 Aside它就会比 BrowserOS 更优先被使用而其他平台则以 BrowserOS 为首选。三大 Provider 分别怎么工作1. BrowserOS只附着不启动browserosprovider 连接的是用户自己手动启动的 BrowserOS GUI 会话默认端点为http://127.0.0.1:9100。运行时明确承诺两件事绝不替用户启动 BrowserOS绝不传递 headless 参数。它也不是 CAPTCHA 破解器、登录求解器或隐身爬取浏览器——这是一个可被人看见、可随时接管的会话浏览器。2. Aside只用官方 CLI REPL 表面asideprovider 通过文档化的aside repl命令行表面工作实现见 packages/k-skill-browser-runtime/src/aside-repl.js 与 aside.js。它不依赖非公开的 localhost 端口、守护进程鉴权或未经文档化的 CDP 端点因此升级 Aside 时更不容易被打断。会话结束只会关闭适配器自己创建的标签页。3. Chrome CDP通用兜底chrome-cdpprovider 连接标准 Chrome/Chromium 远程调试端口默认http://127.0.0.1:9222即你需要自行以--remote-debugging-port9222启动 Chrome 后由运行时附着。三者对比一览摘自 README.mdProvider默认入口是否替用户启动浏览器适用场景auto默认按平台顺序探测否什么都不用配置browseros127.0.0.1:9100否强制使用自己启动的 BrowserOSasideaside replCLI否强制走 Aside 的文档化 REPLchrome-cdp127.0.0.1:9222否强制走 Chrome/Chromium CDP⚠️ 注意失败关闭fail-closed设计未知的 provider 名称会抛出UNKNOWN_PROVIDER类型化错误而不会悄悄回退到 BrowserOS避免你以为在跑 Chrome 其实跑在了别的浏览器上。停止规则什么时候 AI 必须停下来浏览器自动化最大的风险是不小心点了付款/提交。运行时在 packages/k-skill-browser-runtime/src/stop-rules.js 中导出一组类型化停止码各技能据此决定继续还是交还给用户停止码含义典型处理AUTH_REQUIRED需要用户认证/本人登录交给用户手动登录CAPTCHA_DETECTED遇到验证码/反爬检测交还人工绝不绕过PAYMENT_REQUIRED遇到支付步骤经用户确认后走官方流程ELECTRONIC_SIGNATURE需要电子签名交还人工IRREVERSIBLE_BOUNDARY不可逆操作提交/取消等先向用户确认再执行BLOCKED上游被拦截/登录墙停止并说明UNAVAILABLE所有 CDP provider 连不上提示配置浏览器这套规则配合 docs/dolshoi-runtime.md 中的行动模型可回退的步骤加购、草稿、选座、临时占位继续做不可逆的外部效果付款、发消息、最终提交之前必须先取得用户确认。环境配置4 个环境变量搞定全部配置项见 docs/browser-runtime.md变量默认值说明KSKILL_BROWSER_PROVIDERauto选auto/browseros/aside/chrome-cdpKSKILL_BROWSEROS_CDP_URLhttp://127.0.0.1:9100BrowserOS 的 CDP 端点KSKILL_CHROME_CDP_URLhttp://127.0.0.1:9222Chrome/Chromium 的 CDP 端点KSKILL_ASIDE_COMMANDasideAside CLI 的命令名或路径大多数情况下保持auto即可先装好你喜欢的浏览器Aside 或 BrowserOS运行时会自动探测并接入。哪些技能在用这套运行时目前直接复用该运行时的典型技能详见 docs/browser-runtime.mdcourt-auction-notice-search — 法院拍卖信息优先走直接 HTTP失败后回退到运行时浏览器court-payment-order-assistant — 电子诉讼支付令登录后通过 BrowserOS CDP 交还给用户接管yebigun-training — 在用户已登录的预备军首页会话中查询训练日程。而d2b-notice-search、s2b-notice-search这类技能则采取生成浏览器自动化指示语句的路线foresttrip-vacancy、iros-registry-automation等 Python 技能则自带 Playwright/Chromium 会话——它们不在 Node 运行时的管辖范围内各自管理自己的浏览器。给技能作者的三条军规如果你打算基于 k-skill 写新的浏览器技能docs/browser-runtime.md 给出了明确规范不要重复造轮子——复用运行时的connect()/runJob()/ 停止规则而不是内联一套 CDP 或 Playwright 逻辑用 semver 声明依赖——如k-skill-browser-runtime: ^0.1.0避免workspace:协议破坏 npm 发布把站点逻辑留在技能里——导航路径、选择器、解析与 fallback 顺序都记录在该技能的 SKILL.md 中并暴露类型化的 stop/continue 规则。小结k-skill 的浏览器运行时把用哪个浏览器这件烦心事变成了平台感知的降级链macOS 优先 Aside其他平台优先 BrowserOSChrome CDP 兜底把什么时候该停变成了 7 个类型化停止码把绝不做的事启动 BrowserOS、绕验证码、关用户页面写成了硬性边界。对使用者来说零配置开箱即用对开发者来说一个auto 停止规则就能把 AI 代理的浏览器行为约束在安全范围内。【免费下载链接】k-skill한국인을 위한 스킬 모음집 - 에이전트를 한국인으로项目地址: https://gitcode.com/GitHub_Trending/ks/k-skill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考