Browser Copilot 開源瀏覽器擴展,使用現有或定制的 AI 助手來完成日常 Web 應用程序任務。

一、軟件介紹

文末提供源碼和開源擴展程序下載

? ? ?Browser Copilot 是一個開源瀏覽器擴展,允許您使用現有或定制的 AI 助手來幫助您完成日常 Web 應用程序任務。

? ? ? 目標是提供多功能的 UI 和簡單的框架,以實現和使用越來越多的 copilots(AI 助手)。這些副駕駛可以通過利用瀏覽器擴展功能來幫助完成各種任務。

以下是這些副駕駛可以做什么的幾個示例:

  • 自動激活與特定 Web 應用程序相關的 Copilot。例如,當 Mail Web 應用程序加載到瀏覽器選項卡中時,Mail Copilot 可以激活。
  • 從當前 Web 應用程序中提取信息。例如,副駕駛可以從郵件 Web 應用程序中提取當前郵件內容,并提供郵件摘要,或者用戶可以詢問有關郵件內容的問題。
  • 與 Web 應用程序交互。Copilot 可以根據用戶請求生成郵件正文。它還可以使用適當的測試數據填充 Web 應用程序表單字段。
  • 使用任何服務 API 提取其他信息或自動執行 Web 應用程序流程。例如,副駕駛可以從 Web 應用程序后端檢索有效示例以填充前端表單。
  • 通過將瀏覽器擴展與 AI 和功能LLM相結合,可以探索許多其他想法和功能。

二、用法

  1. 通過從發行版下載最新版本,在瀏覽器中安裝擴展。要從 zip 文件安裝擴展,您需要轉到瀏覽器的“管理擴展”屏幕,啟用開發人員模式,然后拖放擴展 zip 文件。
  2. 通過單擊其圖標打開擴展程序,并通過提供其基本 URL 添加新的 copilot。基 URL 應對應于?manifest.json?和?logo.png?的位置,例如:?http://localhost:8000?如果您的代理在本地運行。
  3. 通過單擊配置的 Copilot 開始新聊天,或者,如果 Copilot 具有自動激活功能,只需使用瀏覽器,Copilot 聊天就會在 Copilot 激活時自動出現。
  4. 直接從聊天中保存您的首選提示。要稍后快速訪問它們,只需在聊天輸入中鍵入“/”即可。

? ? ? 在任何時候,您都可以關閉 Copilot,以便稍后通過擴展圖標或右鍵單擊頁面并選擇?Toggle Browser Copilot?來恢復對話。

? ? ? 如果您不知道任何 copilot URL,此項目在代理文件夾中包含一個簡單的 copilot 實現。您可以通過將 agent/sample.env 復制到?agent/.env?,更改其上的環境變量,然后運行?docker-compose up?(需要 docker) 來啟動它。啟動后,您可以通過添加帶有 URL?http://localhost:8000?的 copilot 來配置擴展以使用它。

? ? ? 當您激活 copilot (單擊 copilot 列表) 時,它將請求一些憑據。使用?test?user 和?test?password 登錄。

? ? ? ?將來,我們計劃添加社區貢獻的 copilots 目錄。因此,如果您創建新的副駕駛,請告訴我們,以便我們可以將它們包含在初始目錄中。

三、代理開發

? ? ? 要開發新的代理,您可以參考 agent-mock、agent-simple 或 agent-extended 文件夾。后者是最完整的,其中包含有關端點和?manifest.json?.

? ? ? 對于開發環境,此項目使用 devbox 和 direnv。

? ? ? 要安裝所有必需的依賴項(在安裝 devbox 和 direnv 之后),請運行以下命令:

devbox run install

接下來,在 中設置?agent-extended/.env?適當的環境變量。

為了加快開發速度,您可以注釋掉 Keycloak 部分,這樣您就不需要在每次想在擴展中嘗試 copilot 時都進行身份驗證。如果你沒有注釋掉 Keycloak 部分,那么你需要運行?devbox run keycloak?以啟動 Keycloak 進行身份驗證,并使用?test?test?憑據進行登錄(當瀏覽器擴展請求時)。

? ? ? ?要在開發模式下運行代理,并在代理源文件中檢測到任何更改時啟用自動熱重載,請執行以下命令:

devbox run agent

如果要調試代理,可以使用首選 IDE 啟動代理,指向 devbox 創建的相關虛擬環境,并使用 IDE 的調試器功能運行主腳本。

? ? ? 有關代理的更多詳細信息,請參閱其 readme。

瀏覽器擴展開發

如果您計劃對瀏覽器擴展進行更改,請參閱 browser-extension 文件夾。

要啟動具有熱重載功能的 Chrome 瀏覽器,請使用以下命令:

devbox run browser

要修改默認瀏覽器設置,請參閱 browser-extension/vite.config.ts。

要構建擴展的最終分發,請執行以下命令:

devbox run build

軟件下載

夸克網盤分享

本文信息來源于GitHub作者地址:https://github.com/abstracta/browser-copilot

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/72333.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/72333.shtml
英文地址,請注明出處:http://en.pswp.cn/web/72333.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

selenium等待

通常代碼執行的速度?頁?渲染的速度要快,如果避免因為渲染過慢出現的?動化誤報的問題呢?可以使?selenium中提供的三種等待?法: 1. 隱式等待(Implicit Wait) 隱式等待適用于全局,它告訴 WebDriver 在查找元素時等待一定的時間,直到元素出現。 如果超時,WebDriver 不…

解鎖C++:指針與數組、字符串的深度探秘

目錄 一、指針與數組:親密無間的伙伴 1.1 指針是數組的 “快捷通道” 1.2 數組名與指針:微妙的差別 1.3 動態數組:指針大顯身手 二、指針與字符串:千絲萬縷的聯系 2.1 字符指針與 C 風格字符串 2.2 指針與 std::string 類 2.3 字符串常量與指針 三、指針在數組和字…

20250315-OpenAI-AgentSDK實驗

湊熱鬧。可以用GLM跑。 這里暫時用GLM底座“魔鬼修改”,代碼庫僅供參考(共同進步吧) openai-agents-python-glm: 基于GLM底座運行SDK,學習實驗SDK內的mAGT功能。https://gitee.com/leomk2004/openai-agents-python-glm 自言自語&a…

Qt QML實現彈球消磚塊小游戲

前言 彈球消磚塊游戲想必大家都玩過,很簡單的小游戲,通過移動擋板反彈下落的小球,然后撞擊磚塊將其消除。本文使用QML來簡單實現這個小游戲。 效果圖: 正文 代碼目錄結構如下: 首先是小球部分,邏輯比較麻…

04_Linux驅動_05_pinctrl子系統

以下代碼都在pinctrl相關的驅動函數和設備樹中 pinctrl-rockchip.c驅動,對應的是那個(那些)設備樹呢? 答案:通過.compatible "rockchip,rk3568-pinctrl"連接到rk3568.dtsi根節點下的pinctrl節點 一&#…

Python的那些事第四十五篇:繼承自Nose的測試框架Nose2

Nose2:繼承自Nose的測試框架 摘要 本文深入探討了Nose2這一繼承自Nose的測試框架。在軟件開發過程中,測試是確保代碼質量和穩定性的重要環節,而測試框架為測試工作的開展提供了有力支持。Nose2作為Nose的繼承者,在保留Nose優勢的基礎上進行了諸多改進和擴展,為Python測試…

如何通過 Airbyte 將數據攝取到 Elasticsearch

作者:來自 Elastic Andre Luiz Airbyte 是一個數據集成工具,可自動化并可擴展地將信息從各種來源傳輸到不同的目的地。它使你能夠從 API、數據庫和其他系統提取數據,并將其加載到 Elasticsearch 等平臺,以實現高級搜索和高效分析。…

RBAC 模型的簡單實現

RBAC 模型基本介紹 RBAC(Role-Based Access Control,基于角色的訪問控制)是一種廣泛應用的權限管理模型。它的核心思想是通過角色來管理權限,而不是直接分配權限給用戶。用戶被賦予一個或多個角色,而每個角色擁有不同…

數據結構---堆棧和列

一、堆棧 1.棧堆:具有一定操作約束的線性表;(只在一端做插入刪除) 2.棧的順序存儲結構: 由一個一維數組和一個記錄棧頂元素位置的變量組成。定義方式如下: 3.入棧操作: 注意:&…

2023 年全國職業院校技能大賽(中職組)移動應用與開發賽項 賽題第十套

2023 年全國職業院校技能大賽(中職組)移動應用與開發賽項 賽題第十套) 移動應用與開發賽項競賽模塊 A:移動應用界面設計任務 1 環保中心界面設計(7.5 分)任務 2:首頁界面設計(7.5 分…

FPGA為何要盡量減少組合邏輯的使用

在FPGA設計中,組合邏輯的使用確實需要謹慎,尤其是要盡量減少它的復雜性。這并不是因為組合邏輯本身不好,而是因為它在實際應用中容易引發一系列問題,而這些問題往往與FPGA的設計哲學和硬件特性相沖突。讓我從幾個關鍵點來和你聊聊…

c語言筆記 字符串函數---strcmp,strncmp,strchr,strrchr

目錄 函數strcmp與strncmp 以下是錯誤的示范:兩個指針字符型的指針不能直接進行比較 函數strchr與函數strrchr 函數strchr與函數strrchr與strstr函數三者對比 背景:如果說我們要比較兩個字符串是否相等,使用strcmp或者strncmp函數。在c語言中…

合React寶寶體質的自定義節流hook

本文為開發開源項目的真實開發經歷,感興趣的可以來給我的項目點個star,謝謝啦~ 具體博文介紹: 開源|Documind協同文檔(接入deepseek-r1、支持實時聊天)Documind 🚀 一個支持實時聊天和接入 - 掘…

【RTSP】客戶端(五)H264 265處理邏輯

H264處理邏輯 整體邏輯分析 實現邏輯 解析 RTP 包頭:首先檢查 RTP 頭部的有效負載類型(payloadType)是否匹配處理擴展頭:如果 RTP 包包含擴展頭,跳過擴展頭部分,獲取有效負載處理分片數據:H264…

IDEA集成git,項目的克隆,遠程倉庫中文件的添加刪除

目錄 一、克隆項目 二、使用IDEA完成文件的上傳和刪除 1.配置git 2.上傳 3.刪除(通過git bash) 一、克隆項目 點擊克隆,復制url ,如下 打開你想要克隆到哪里,右擊,選擇 open Git Bash here 這一步之后…

神經網絡:定義與核心原理

神經網絡(Artificial Neural Network, ANN)是一種受生物神經系統啟發的計算模型,旨在通過模擬神經元之間的連接與信息傳遞機制,實現復雜的數據處理和模式識別功能。其本質是由大量簡單處理單元(神經元)構成…

將pdf或者word轉換成base64格式

廢話不多說直接上代碼: function fileToBase64(file) {return new Promise((resolve, reject) > {const reader new FileReader();reader.readAsDataURL(file);reader.onload function (event) {const base64Data event.target.result.split(,)[1];resolve(b…

Spring @Bean注解使用場景二

bean:最近在寫一篇讓Successfactors顧問都能搞明白的sso的邏輯的文章,所以一致在研究IAS的saml2.0的協議,希望用代碼去解釋SP、idp的一些概念,讓顧問了解SSO與saml的關系,在github找代碼的時候發現一些代碼的調用關系很難理解&…

ubuntu22.04 關于掛在設備為nfts文件格式無法創建軟連接的問題

最近遇到情況,解壓工程報錯,無法創建軟連接 但是盤內還有130G空間,明顯不是空間問題,查找之后發現是移動硬盤的文件格式是NTFS,在ubuntu上不好兼容,于是報錯。 開貼記錄解決方案。 1.確定文件格式 使用命…