From 1fa915d712288902da7841dc8ff355a56e37a013 Mon Sep 17 00:00:00 2001 From: wizardchen Date: Wed, 23 Sep 2026 16:35:43 +0800 Subject: [PATCH] chore: update BrowserSkill extension version to 0.3.1 and enhance localization support - Updated the BROWSERSKILL_EXTENSION_PATH in .env.example and Dockerfile.app to reference the new extension version 0.3.1. - Modified localization files for English, Japanese, Korean, Russian, and Chinese to reflect the support for both Chrome and Edge browsers. - Added checks for extension version compatibility in the BrowserConnectionSettings component to improve user experience. This commit ensures that the application is aligned with the latest BrowserSkill extension and enhances the localization for better user guidance. --- .env.example | 2 +- docker/Dockerfile.app | 2 +- frontend/src/i18n/locales/en-US.ts | 17 ++++--- frontend/src/i18n/locales/ja-JP.ts | 17 ++++--- frontend/src/i18n/locales/ko-KR.ts | 17 ++++--- frontend/src/i18n/locales/ru-RU.ts | 17 ++++--- frontend/src/i18n/locales/zh-CN.ts | 17 ++++--- .../settings/BrowserConnectionSettings.vue | 44 ++++++++++++++++--- internal/agent/tools/browserskill_prompt.go | 2 +- scripts/browserskill-release.json | 8 ++-- scripts/browserskill.md | 27 ++++++------ scripts/build_browserskill.sh | 4 +- scripts/test_browserskill_extension.mjs | 2 +- website-docs/05-clients/09-local-browser.md | 23 +++++++--- 14 files changed, 130 insertions(+), 69 deletions(-) diff --git a/.env.example b/.env.example index 847bf6f16..cb17c351e 100644 --- a/.env.example +++ b/.env.example @@ -801,7 +801,7 @@ CONCURRENCY_POOL_SIZE=5 # 单应用实例共用一个 daemon;最多保留的用户配对记录数(默认 32,非实测承载量)。 # BROWSERSKILL_MAX_CONNECTIONS=32 # 供个人设置下载的配套扩展 ZIP(服务器本地绝对路径,Docker 已预设)。 -# BROWSERSKILL_EXTENSION_PATH=/opt/weknora/browserskill/browser-skill-weknora-0.3.0.zip +# BROWSERSKILL_EXTENSION_PATH=/opt/weknora/browserskill/browser-skill-weknora-0.3.1.zip # 多副本:每个节点填写可被其他节点直接访问的地址,不要使用负载均衡地址。 # BROWSERSKILL_INTERNAL_URL=http://10.0.0.12:8080 # 所有副本使用相同的随机密钥(至少 32 字符),从 Secret 注入,不提交到仓库。 diff --git a/docker/Dockerfile.app b/docker/Dockerfile.app index 79f1456bd..21a272928 100644 --- a/docker/Dockerfile.app +++ b/docker/Dockerfile.app @@ -93,7 +93,7 @@ ARG APK_MIRROR_ARG # Pairing derives the gateway URL from the user's page origin by default. ENV BROWSERSKILL_BINARY=/opt/weknora/browserskill/bsk \ - BROWSERSKILL_EXTENSION_PATH=/opt/weknora/browserskill/browser-skill-weknora-0.3.0.zip + BROWSERSKILL_EXTENSION_PATH=/opt/weknora/browserskill/browser-skill-weknora-0.3.1.zip COPY --from=browserskill /opt/weknora/browserskill /opt/weknora/browserskill # Create a non-root user first diff --git a/frontend/src/i18n/locales/en-US.ts b/frontend/src/i18n/locales/en-US.ts index 4e1d2c00a..72c8d854d 100755 --- a/frontend/src/i18n/locales/en-US.ts +++ b/frontend/src/i18n/locales/en-US.ts @@ -68,7 +68,7 @@ export default { "helpHint": "Open the browser from the preview, complete the requested step, then confirm completion in the browser help overlay.", "settingsTitle": "Browser connection", - "settingsDescription": "Pair BrowserSkill with your local Chrome to operate real web pages from conversations.", + "settingsDescription": "Pair BrowserSkill with your local Chrome or Edge to operate real web pages from conversations.", "openSettings": "Open browser settings", "settingsHint": "Connect BrowserSkill in Toolbox to use your local browser here.", "unavailable": "Local browsing is not enabled on this server. Contact your administrator.", @@ -89,26 +89,29 @@ export default { "pairHint": "Open Connection settings → Remote connection in the extension, paste the pairing link, and confirm the server. The link is valid for 5 minutes and can be used once.", "copyPairing": "Copy pairing link", "copied": "Copied", - "windowHint": "Tasks run in a separate Chrome Agent Window. Borrowing existing tabs requires your permission.", + "windowHint": "Tasks run in a separate browser Agent Window. Borrowing existing tabs requires your permission.", "preview": "Local browser task preview", "waiting": "Waiting for a task page", "startHint": "A browser request creates a separate Agent Window.", "revoke": "Revoke device access", "revokeConfirm": "You will need to pair again before using the local browser.", "failed": "Operation failed. Please retry.", - "productDescription": "An open-source Chrome extension that lets agents open pages, read content, and take actions in your browser.", + "productDescription": "An open-source Chrome and Edge extension that lets agents open pages, read content, and take actions in your browser.", "offline": "Offline", "notPaired": "Not paired", "lastSeen": "Last connected", "readyHint": "Ready. Return to the conversation and describe your browser task.", "capabilitiesTitle": "Your agent can", "sidebarStatus": "Show connection status in the sidebar", - "reconnectHint": "Authorization is saved. Keep Chrome and BrowserSkill open to reconnect automatically.", + "reconnectHint": "Authorization is saved. Keep your browser and BrowserSkill open to reconnect automatically.", "replaceDevice": "Change browser", "installExtension": "Install BrowserSkill", - "storeInstall": "Open Chrome Web Store", + "storeInstall": "Chrome Web Store", + "edgeStoreInstall": "Edge Add-ons", + "extensionMinVersion": "Requires BrowserSkill v{version} or later. Works with Chrome and Edge.", + "extensionOutdated": "Extension v{current} is out of date. Update to v{version} or later.", "manualInstall": "Install manually (alternative)", - "storeInstallHint": "Install BrowserSkill from the Chrome Web Store, then return here to pair.", + "storeInstallHint": "Install BrowserSkill from the Chrome Web Store or Edge Add-ons, then return here to pair.", "installHint": "If the store is unavailable or its version is incompatible, download the matching package and install it manually.", "downloadExtension": "Download matching package", "officialExtension": "Official extension (Chrome Web Store)", @@ -121,7 +124,7 @@ export default { "copyAgain": "Copy again", "usageTitle": "How to use", "usageStep1Title": "Install the extension", - "usageStep1Text": "Unzip the downloaded ZIP, enter chrome://extensions in the Chrome address bar, enable Developer mode, choose Load unpacked, and select the extracted extension folder.", + "usageStep1Text": "Unzip the downloaded ZIP, enter chrome://extensions (edge://extensions in Edge) in the address bar, enable Developer mode, choose Load unpacked, and select the extracted extension folder.", "usageStep2Title": "Pair this browser", "usageStep2Text": "Copy the pairing link into Connection settings → Remote connection in the extension and confirm the server. Pair once for all conversations in this space.", "usageStep3Title": "Describe the task in chat", diff --git a/frontend/src/i18n/locales/ja-JP.ts b/frontend/src/i18n/locales/ja-JP.ts index c8f5e4472..9a51ca0b3 100644 --- a/frontend/src/i18n/locales/ja-JP.ts +++ b/frontend/src/i18n/locales/ja-JP.ts @@ -83,7 +83,7 @@ export default { "helpHint": "確認または許可が必要です。プレビューをクリックして移動してください。", "settingsTitle": "ブラウザー接続", - "settingsDescription": "BrowserSkill で手元の Chrome を接続すると、会話から実際のウェブページを操作できます。", + "settingsDescription": "BrowserSkill で手元の Chrome または Edge を接続すると、会話から実際のウェブページを操作できます。", "openSettings": "接続設定を開く", "settingsHint": "ツールボックスで BrowserSkill を接続すると、ここでローカルブラウザーを利用できます。", "unavailable": "サーバーでローカルブラウザーが有効になっていません。管理者に連絡してください。", @@ -104,26 +104,29 @@ export default { "pairHint": "拡張機能の「接続設定 → リモート接続」にリンクを貼り付け、サーバーを確認します。リンクは 5 分間有効で、1 回限り使用できます。", "copyPairing": "ペアリングリンクをコピー", "copied": "コピーしました", - "windowHint": "タスクは独立した Chrome タスクウィンドウで実行されます。既存のタブを借りるには許可が必要です。", + "windowHint": "タスクは独立したブラウザーのタスクウィンドウで実行されます。既存のタブを借りるには許可が必要です。", "preview": "ローカルブラウザーのプレビュー", "waiting": "タスクのページを待っています", "startHint": "ブラウザーへのリクエストで独立したタスクウィンドウが作成されます。", "revoke": "デバイスの認証を取り消す", "revokeConfirm": "取り消すと、ローカルブラウザーを使うには再度ペアリングが必要です。", "failed": "操作に失敗しました。再試行してください。", - "productDescription": "エージェントがブラウザーでページを開き、内容を読み取り、操作できるオープンソースの Chrome 拡張機能です。", + "productDescription": "エージェントがブラウザーでページを開き、内容を読み取り、操作できるオープンソースの Chrome / Edge 拡張機能です。", "offline": "オフライン", "notPaired": "未ペアリング", "lastSeen": "最終接続", "readyHint": "準備完了。会話に戻り、ブラウザーで行うタスクを伝えてください。", "capabilitiesTitle": "エージェントができること", "sidebarStatus": "サイドバーに接続状態を表示", - "reconnectHint": "認証は保存されています。Chrome と拡張機能を開くと自動的に再接続します。", + "reconnectHint": "認証は保存されています。ブラウザーと拡張機能を開くと自動的に再接続します。", "replaceDevice": "ブラウザーを変更", "installExtension": "BrowserSkill をインストール", - "storeInstall": "Chrome ウェブストアへ", + "storeInstall": "Chrome ウェブストア", + "edgeStoreInstall": "Edge アドオン", + "extensionMinVersion": "BrowserSkill v{version} 以降が必要です。Chrome と Edge に対応しています。", + "extensionOutdated": "拡張機能 v{current} は古いバージョンです。v{version} 以降に更新してください。", "manualInstall": "手動インストール(代替手段)", - "storeInstallHint": "Chrome ウェブストアから BrowserSkill をインストールし、ここに戻ってペアリングしてください。", + "storeInstallHint": "Chrome ウェブストアまたは Edge アドオンから BrowserSkill をインストールし、ここに戻ってペアリングしてください。", "installHint": "ストアにアクセスできない場合やバージョンに互換性がない場合は、対応パッケージをダウンロードして手動でインストールできます。", "downloadExtension": "対応パッケージをダウンロード", "officialExtension": "公式拡張機能(Chrome ウェブストア)", @@ -136,7 +139,7 @@ export default { "copyAgain": "再コピー", "usageTitle": "使い方", "usageStep1Title": "拡張機能をインストール", - "usageStep1Text": "ZIP を解凍し、Chrome のアドレスバーに chrome://extensions と入力します。「デベロッパーモード」を有効にし、「パッケージ化されていない拡張機能を読み込む」から解凍した拡張機能フォルダーを選択します。", + "usageStep1Text": "ZIP を解凍し、ブラウザーのアドレスバーに chrome://extensions(Edge では edge://extensions)と入力します。「デベロッパーモード」を有効にし、「パッケージ化されていない拡張機能を読み込む」から解凍した拡張機能フォルダーを選択します。", "usageStep2Title": "ブラウザーをペアリング", "usageStep2Text": "ペアリングリンクを拡張機能の「接続設定 → リモート接続」に貼り付け、サーバーを確認します。同じスペースのすべての会話で共有されます。", "usageStep3Title": "会話でタスクを伝える", diff --git a/frontend/src/i18n/locales/ko-KR.ts b/frontend/src/i18n/locales/ko-KR.ts index 02f58ccf0..a3ce95dea 100755 --- a/frontend/src/i18n/locales/ko-KR.ts +++ b/frontend/src/i18n/locales/ko-KR.ts @@ -68,7 +68,7 @@ export default { "helpHint": "인증 또는 권한 승인이 필요합니다. 미리보기를 클릭하여 이동하세요.", "settingsTitle": "브라우저 연결", - "settingsDescription": "BrowserSkill로 내 Chrome을 연결하면 대화에서 실제 웹페이지를 조작할 수 있습니다.", + "settingsDescription": "BrowserSkill로 내 Chrome 또는 Edge를 연결하면 대화에서 실제 웹페이지를 조작할 수 있습니다.", "openSettings": "연결 설정 열기", "settingsHint": "도구함에서 BrowserSkill을 연결하면 로컬 브라우저를 사용할 수 있습니다.", "unavailable": "서버에서 로컬 브라우저가 활성화되지 않았습니다. 관리자에게 문의하세요.", @@ -89,26 +89,29 @@ export default { "pairHint": "확장 프로그램의 연결 설정 → 원격 연결에 페어링 링크를 붙여넣고 서버를 확인하세요. 링크는 5분 동안 한 번만 사용할 수 있습니다.", "copyPairing": "페어링 링크 복사", "copied": "복사됨", - "windowHint": "작업은 별도의 Chrome 작업 창에서 실행됩니다. 기존 탭을 빌리려면 권한이 필요합니다.", + "windowHint": "작업은 별도의 브라우저 작업 창에서 실행됩니다. 기존 탭을 빌리려면 권한이 필요합니다.", "preview": "로컬 브라우저 미리보기", "waiting": "작업 페이지를 기다리는 중", "startHint": "브라우저 요청을 보내면 별도의 작업 창이 생성됩니다.", "revoke": "기기 인증 취소", "revokeConfirm": "취소하면 다시 연결해야 로컬 브라우저를 사용할 수 있습니다.", "failed": "작업에 실패했습니다. 다시 시도하세요.", - "productDescription": "에이전트가 브라우저에서 페이지를 열고 내용을 읽고 작업을 수행할 수 있게 해 주는 오픈소스 Chrome 확장 프로그램입니다.", + "productDescription": "에이전트가 브라우저에서 페이지를 열고 내용을 읽고 작업을 수행할 수 있게 해 주는 오픈소스 Chrome / Edge 확장 프로그램입니다.", "offline": "오프라인", "notPaired": "연결 설정 필요", "lastSeen": "최근 연결", "readyHint": "준비되었습니다. 대화로 돌아가 브라우저 작업을 요청하세요.", "capabilitiesTitle": "에이전트가 할 수 있는 작업", "sidebarStatus": "사이드바에 연결 상태 표시", - "reconnectHint": "인증이 저장되어 있습니다. Chrome과 확장 프로그램을 열면 자동으로 다시 연결됩니다.", + "reconnectHint": "인증이 저장되어 있습니다. 브라우저와 확장 프로그램을 열면 자동으로 다시 연결됩니다.", "replaceDevice": "브라우저 변경", "installExtension": "BrowserSkill 설치", - "storeInstall": "Chrome 웹 스토어 열기", + "storeInstall": "Chrome 웹 스토어", + "edgeStoreInstall": "Edge 추가 기능", + "extensionMinVersion": "BrowserSkill v{version} 이상이 필요합니다. Chrome과 Edge를 지원합니다.", + "extensionOutdated": "확장 프로그램 v{current}이(가) 오래되었습니다. v{version} 이상으로 업데이트하세요.", "manualInstall": "수동 설치 (대안)", - "storeInstallHint": "Chrome 웹 스토어에서 BrowserSkill을 설치한 후 여기로 돌아와 페어링하세요.", + "storeInstallHint": "Chrome 웹 스토어 또는 Edge 추가 기능에서 BrowserSkill을 설치한 후 여기로 돌아와 페어링하세요.", "installHint": "스토어에 접근할 수 없거나 버전이 호환되지 않으면 호환 패키지를 다운로드하여 수동으로 설치할 수 있습니다.", "downloadExtension": "호환 패키지 다운로드", "officialExtension": "공식 확장 프로그램 (Chrome 웹 스토어)", @@ -121,7 +124,7 @@ export default { "copyAgain": "다시 복사", "usageTitle": "사용 방법", "usageStep1Title": "확장 프로그램 설치", - "usageStep1Text": "ZIP 파일의 압축을 풀고 Chrome 주소창에 chrome://extensions를 입력하세요. 개발자 모드를 켜고 압축해제된 확장 프로그램을 로드합니다를 선택한 뒤 압축을 푼 확장 프로그램 폴더를 선택하세요.", + "usageStep1Text": "ZIP 파일의 압축을 풀고 브라우저 주소창에 chrome://extensions(Edge는 edge://extensions)를 입력하세요. 개발자 모드를 켜고 압축해제된 확장 프로그램을 로드합니다를 선택한 뒤 압축을 푼 확장 프로그램 폴더를 선택하세요.", "usageStep2Title": "브라우저 연결", "usageStep2Text": "페어링 링크를 확장 프로그램의 연결 설정 → 원격 연결에 붙여넣고 서버를 확인하세요. 한 번 연결하면 공간 내 모든 대화에서 공유됩니다.", "usageStep3Title": "대화에서 작업 요청", diff --git a/frontend/src/i18n/locales/ru-RU.ts b/frontend/src/i18n/locales/ru-RU.ts index bbc17ade5..5846c9843 100755 --- a/frontend/src/i18n/locales/ru-RU.ts +++ b/frontend/src/i18n/locales/ru-RU.ts @@ -68,7 +68,7 @@ export default { "helpHint": "Требуется проверка или разрешение. Нажмите предпросмотр для перехода.", "settingsTitle": "Подключение браузера", - "settingsDescription": "Подключите локальный Chrome через BrowserSkill, чтобы управлять реальными страницами из диалогов.", + "settingsDescription": "Подключите локальный Chrome или Edge через BrowserSkill, чтобы управлять реальными страницами из диалогов.", "openSettings": "Открыть настройки", "settingsHint": "Подключите BrowserSkill в разделе «Инструменты», чтобы использовать локальный браузер.", "unavailable": "Локальный браузер не включён на сервере. Обратитесь к администратору.", @@ -89,26 +89,29 @@ export default { "pairHint": "Откройте в расширении «Настройки подключения → Удалённое подключение», вставьте ссылку и подтвердите сервер. Ссылка действует 5 минут и используется один раз.", "copyPairing": "Скопировать ссылку", "copied": "Скопировано", - "windowHint": "Задачи выполняются в отдельном окне Chrome. Заимствование существующих вкладок требует вашего разрешения.", + "windowHint": "Задачи выполняются в отдельном окне браузера. Заимствование существующих вкладок требует вашего разрешения.", "preview": "Предпросмотр локального браузера", "waiting": "Ожидание страницы задачи", "startHint": "Запрос к браузеру создаёт отдельное окно агента.", "revoke": "Отозвать доступ устройства", "revokeConfirm": "После отзыва потребуется повторное подключение, чтобы снова использовать локальный браузер.", "failed": "Операция не удалась. Повторите попытку.", - "productDescription": "Расширение Chrome с открытым исходным кодом: агент открывает страницы, читает их и выполняет действия в вашем браузере.", + "productDescription": "Расширение Chrome и Edge с открытым исходным кодом: агент открывает страницы, читает их и выполняет действия в вашем браузере.", "offline": "Не в сети", "notPaired": "Не подключён", "lastSeen": "Последнее подключение", "readyHint": "Готово. Вернитесь в диалог и опишите задачу для браузера.", "capabilitiesTitle": "Агент может", "sidebarStatus": "Показывать статус подключения на боковой панели", - "reconnectHint": "Авторизация сохранена. Откройте Chrome и BrowserSkill для автоматического подключения.", + "reconnectHint": "Авторизация сохранена. Откройте браузер и BrowserSkill для автоматического подключения.", "replaceDevice": "Сменить браузер", "installExtension": "Установите BrowserSkill", - "storeInstall": "Открыть магазин Chrome", + "storeInstall": "Интернет-магазин Chrome", + "edgeStoreInstall": "Надстройки Edge", + "extensionMinVersion": "Требуется BrowserSkill v{version} или новее. Поддерживаются Chrome и Edge.", + "extensionOutdated": "Версия расширения v{current} устарела. Обновите до v{version} или новее.", "manualInstall": "Установить вручную (альтернатива)", - "storeInstallHint": "Установите BrowserSkill из Интернет-магазина Chrome, затем вернитесь сюда для сопряжения.", + "storeInstallHint": "Установите BrowserSkill из Интернет-магазина Chrome или надстроек Edge, затем вернитесь сюда для сопряжения.", "installHint": "Если магазин недоступен или версия несовместима, скачайте подходящий пакет и установите его вручную.", "downloadExtension": "Скачать совместимый пакет", "officialExtension": "Официальное расширение (Интернет-магазин Chrome)", @@ -121,7 +124,7 @@ export default { "copyAgain": "Копировать ещё раз", "usageTitle": "Как пользоваться", "usageStep1Title": "Установите расширение", - "usageStep1Text": "Распакуйте ZIP, введите chrome://extensions в адресной строке Chrome, включите режим разработчика, нажмите «Загрузить распакованное расширение» и выберите папку расширения.", + "usageStep1Text": "Распакуйте ZIP, введите chrome://extensions (в Edge — edge://extensions) в адресной строке, включите режим разработчика, нажмите «Загрузить распакованное расширение» и выберите папку расширения.", "usageStep2Title": "Подключите браузер", "usageStep2Text": "Вставьте ссылку в «Настройки подключения → Удалённое подключение» расширения и подтвердите сервер. Одно подключение используется во всех диалогах пространства.", "usageStep3Title": "Опишите задачу в диалоге", diff --git a/frontend/src/i18n/locales/zh-CN.ts b/frontend/src/i18n/locales/zh-CN.ts index 8a779faa4..aebb726ec 100755 --- a/frontend/src/i18n/locales/zh-CN.ts +++ b/frontend/src/i18n/locales/zh-CN.ts @@ -68,7 +68,7 @@ export default { "helpHint": "点击预览前往浏览器,完成上述步骤后,在浏览器帮助提示中确认完成。", "settingsTitle": "浏览器连接", - "settingsDescription": "通过 BrowserSkill 连接本机 Chrome,配对后即可在对话中操作真实网页。", + "settingsDescription": "通过 BrowserSkill 连接本机 Chrome 或 Edge,配对后即可在对话中操作真实网页。", "openSettings": "前往浏览器连接", "settingsHint": "在工具箱中连接 BrowserSkill,即可在对话里使用本机浏览器。", "unavailable": "服务端尚未启用本机浏览器,请联系管理员。", @@ -89,26 +89,29 @@ export default { "pairHint": "打开扩展的「连接设置 → 远程连接」,粘贴配对链接并确认服务器。链接 5 分钟内有效,仅可使用一次。", "copyPairing": "复制配对链接", "copied": "已复制", - "windowHint": "任务在独立的 Chrome 任务窗口中运行。借用已有标签页需要你的授权。", + "windowHint": "任务在独立的浏览器任务窗口中运行。借用已有标签页需要你的授权。", "preview": "本机浏览器任务预览", "waiting": "等待任务页面", "startHint": "发起浏览器请求后,会创建独立的任务窗口。", "revoke": "撤销设备授权", "revokeConfirm": "撤销后需要重新配对,才能继续使用本机浏览器。", "failed": "操作失败,请重试", - "productDescription": "开源的 Chrome 扩展,让智能体在你的浏览器里打开网页、读取内容并完成操作。", + "productDescription": "开源的 Chrome / Edge 扩展,让智能体在你的浏览器里打开网页、读取内容并完成操作。", "offline": "离线", "notPaired": "未配对", "lastSeen": "最近连接", "readyHint": "已准备就绪。回到对话,直接描述需要浏览器完成的任务。", "capabilitiesTitle": "智能体可以", "sidebarStatus": "在侧边栏显示连接状态", - "reconnectHint": "保留授权,等待扩展自动重连。请确认 Chrome 和 BrowserSkill 扩展已开启。", + "reconnectHint": "保留授权,等待扩展自动重连。请确认浏览器和 BrowserSkill 扩展已开启。", "replaceDevice": "更换浏览器", "installExtension": "安装 BrowserSkill 扩展", - "storeInstall": "前往 Chrome 商店", + "storeInstall": "Chrome 应用商店", + "edgeStoreInstall": "Edge 加载项", + "extensionMinVersion": "需要 BrowserSkill v{version} 及以上版本,支持 Chrome 和 Edge。", + "extensionOutdated": "当前扩展版本 v{current} 过低,请升级到 v{version} 及以上。", "manualInstall": "手动安装(备用)", - "storeInstallHint": "在 Chrome 应用商店安装 BrowserSkill,再回到这里配对。", + "storeInstallHint": "在 Chrome 应用商店或 Edge 加载项中安装 BrowserSkill,再回到这里配对。", "installHint": "无法访问商店或商店版本不兼容时,可下载配套扩展并手动安装。", "downloadExtension": "下载配套扩展", "officialExtension": "官方扩展(Chrome 应用商店)", @@ -121,7 +124,7 @@ export default { "copyAgain": "再次复制", "usageTitle": "使用方式", "usageStep1Title": "安装扩展", - "usageStep1Text": "下载 ZIP 后解压,在 Chrome 地址栏输入 chrome://extensions,开启「开发者模式」,点击「加载已解压的扩展程序」,选择解压后的扩展目录。", + "usageStep1Text": "下载 ZIP 后解压,在浏览器地址栏输入 chrome://extensions(Edge 为 edge://extensions),开启「开发者模式」,点击「加载已解压的扩展程序」,选择解压后的扩展目录。", "usageStep2Title": "配对这台浏览器", "usageStep2Text": "复制配对链接,在扩展的「连接设置 → 远程连接」中粘贴并确认服务器。配对一次,同一空间的各个对话共用。", "usageStep3Title": "回到对话描述任务", diff --git a/frontend/src/views/settings/BrowserConnectionSettings.vue b/frontend/src/views/settings/BrowserConnectionSettings.vue index 0f9a83207..7488ae9a8 100644 --- a/frontend/src/views/settings/BrowserConnectionSettings.vue +++ b/frontend/src/views/settings/BrowserConnectionSettings.vue @@ -37,6 +37,10 @@

{{ t('localBrowser.reconnectHint') }}

+

+ + {{ t('localBrowser.extensionOutdated', { current: status.extension_version, version: MIN_EXTENSION_VERSION }) }} +

{{ t('localBrowser.capabilitiesTitle') }}