大家好,我是程序員魚皮。
前兩天,我受邀參加了微軟 AI Tour 大會,還在會上做了一場演講。
主題是「帶你看 GitHub Copilot 的另一面:智能體裝機,不只在 IDE」。這名字是大會方包裝的,說實話我自己看著都一頭霧水。。。
![]()
簡單來說就是:手把手教大家如何用 GitHub + Copilot,打造屬于自己的 AI 智能體。
真沒想到有這么多人來聽分享,看來大家對這個選題確實很感興趣。
![]()
這篇文章就是演講的完整文字版,希望能給大家一些啟發和幫助。
背景和思考
最近「一人公司」和「龍蝦」的概念特別火,很多人都在玩 AI 智能體,比如 OpenClaw 養蝦、Hermes Agent 養馬什么的。
現在的 AI 智能體不只是聊天,能持續干活、越用越懂你、隨處使用。
但是,你有沒有想過,扒開所有花哨的包裝,一個 AI 智能體的本質到底是什么?
我覺得是四樣東西:角色、記憶、技能、工作空間。
沒有工作空間,角色無處定義、記憶無處存儲、技能無處掛載。
![]()
除了自己的電腦之外,還有其他的工作空間嗎?
作為一名開源作者,我本能地想到 GitHub 這個全球最大的代碼托管平臺,它的倉庫天然就是 持久化的文件空間;而 GitHub Copilot 又提供了強大的 AI 代理執行能力,還支持網頁版使用。
那干脆把 GitHub 倉庫當成養 AI 智能體的「個人電腦」,不就可以了么?
所以下面我要手把手教大家:怎么用 GitHub 打造一只你自己的 AI 小龍蝦。
我把它稱為「給蝦」:
![]()
接下來我會一步步演示,如何利用 GitHub 搭建一個超級智能體,不需要打開 IDE,也能完成從需求分析到全棧開發、測試、文檔生成、部署上線、SEO 優化、代碼審查、自動處理 Issues、定時任務的全流程。
1、初始化 Agent
打開 GitHub 網頁版,你會發現 GitHub Copilot 的對話入口隨處可見,已經融入到 GitHub 的各個角落了。
![]()
我們先新建一個叫 github-claw 的倉庫,作為 AI 智能體的工作空間。
創建倉庫時就可以填入初始化的提示詞,這其實就是我們給這只 AI 小龍蝦注入靈魂的過程。
![]()
在開始之前,建議先從右上角進入 GitHub Copilot 的設置,開啟聯網搜索功能,這樣 AI 能獲取更新的信息。
![]()
然后我們填入初始化 Agent 的提示詞。這段提示詞定義了龍蝦的角色、行為規則和記憶機制:
你是這個倉庫中長期駐留的個人 AI 助手與主要代理,像 OpenClaw 一樣,不只是回答問題,還要持續做事、積累記憶、維護角色,并讓這個倉庫逐漸成為可長期演化的個人 AI 空間。
請先參考 OpenClaw 官方文檔,理解它作為 "能做事的個人 AI 助手" 的定位,以及角色、記憶、技能和工作空間的思路:https://docs.openclaw.ai
然后把這個倉庫初始化為適合 GitHub Copilot 網頁版長期使用的個人 AI 工作空間,讓我以后在新的 Copilot 對話里,也能繼續沿用同一個角色、記憶和工作方式。
請先創建并提交一個簡潔、可長期復用的 AGENTS.md,在里面定義:
- 你是誰
- 你如何在這個倉庫中工作
- 你如何管理任務與記憶
- 你每次完成任務后要做的收尾動作
要求:
- 把倉庫當作持久化的文件與記憶空間,可保存任何有用文件
- 用文件作為記憶的真實來源,不把重要信息只留在當前對話里
- 將長期記憶與每日/臨時記錄區分開
- 規則簡潔、實用、可擴展,不要過度設計如果確有必要,可以補充最少量的 MEMORY.md、memory/ 或 SOUL.md,但請保持輕量,并以 AGENTS.md 為核心。
可以看到,Copilot 自動初始化了一個工作空間,還自動集成了 GitHub 的 MCP 工具:
![]()
任務完成后,它會自動創建一個 PR。我們人工檢查一下,沒問題就合并。
![]()
對了,如果你發現有「網絡連接失敗」的提示,是因為 Copilot coding agent 默認有防火墻限制。需要到倉庫設置里關閉防火墻:
![]()
Agent 初始化完成后,你可以跟它打個招呼,它會通過文檔獲取到記憶:
![]()
2、開發上線網站
Agent 初始化好了,接下來讓它干活。
讓它幫我的開源 AI 知識庫項目 ai-guide 開發一個高顏值的導航官網,提示詞如下:
請為我開源的 AI 知識庫項目(ai-guide)開發并部署一個高顏值的導航官網,突出項目介紹、精選內容、路線圖、更新日志、增長趨勢等,吸引更多人關注我的開源倉庫。必須使用 UI-UX-PRO-MAX 技能全面優化前端界面,完成后直接給出可上線訪問的地址。必須自主完成任務
在倉庫的 Agents 面板中,可以直接發起新的對話任務。
Copilot 會通過 GitHub MCP 獲取我的開源項目信息,然后自動開始開發網站:
![]()
生成代碼后,它還會自動執行代碼檢查,發現問題就自主修復:
![]()
接著它會自動創建 GitHub Actions 工作流,利用 GitHub Pages 完成靜態網站的部署:
![]()
合并 PR 后,還需要進入倉庫設置里的 GitHub Pages,選擇「從工作流部署」(注意倉庫必須是公開的):
![]()
然后手動觸發一次工作流,后續每次推送代碼都會自動觸發部署:
注意檢查 workflow 里的分支名配置,要和你倉庫的默認分支一致(比如 master 還是 main)。
成功部署后,頁面就可以正常訪問了:
![]()
3、使用技能
不過你可能注意到了,雖然我在提示詞里提到了要用 UI-UX-PRO-MAX 技能,但 AI 并沒有真正安裝它。
當我命令它用技能時,它反而自己造了一個,這就不對了。
![]()
所以我們需要新開一個對話,通過提示詞教會 AI 如何正確發現、安裝和使用技能:
請優化當前倉庫的工作流與 AGENTS.md,讓這個倉庫中的主要 AI 代理具備穩定的技能發現、安裝和使用機制。
明確約定如下:
- 項目級技能統一保存在 .agents/skills/
- 每個技能使用獨立目錄,例如 .agents/skills//
- 技能的主入口文件為 SKILL.md
- 如果技能包含腳本、模板或資源文件,也與 SKILL.md 放在同一技能目錄下請在 AGENTS.md 中加入簡潔、可執行的規則,使代理在后續工作中遵循以下流程:
1. 接到任務后,先檢查本地 .agents/skills/ 中是否已有可復用技能
2. 如果本地沒有合適技能,再自動到 GitHub 開源倉庫和 Skills.sh 搜索相關技能
3. 優先選擇來源清晰、結構規范、說明完整、風險較低的技能
4. 安裝技能時,將其保存到 .agents/skills//
5. 安裝后更新必要說明,使后續對話能夠直接復用這些技能
6. 如果找不到合適技能,再自行完成任務,但優先沉淀成可復用技能
7. 避免重復安裝相同技能,并盡量保持技能目錄整潔、命名清晰、可維護
AI 順利完成了任務,制定了技能標準:
![]()
搞定了技能規范,接下來讓 AI 正確安裝并使用 UI-UX-PRO-MAX 技能來優化網站:
幫我廢棄掉原來錯誤的 UI-UX-PRO-MAX 技能,安裝正確的 UI-UX-PRO-MAX 技能,并利用這個技能優化之前的 ai-guide 導航網站
這次成功了!AI 智能體從 GitHub 上正確復制了技能目錄,并用技能優化了網站的 UI:
![]()
頁面移除了多余的 Emoji,看起來更專業了:
![]()
更重要的是,它還更新了 AGENTS.md 工作流、記憶和任務文件,實現了 AI 智能體的進化,之后它就能自己發現和使用技能了:
![]()
4、文檔生成
文檔是開源項目的牌面,我們讓 AI 幫忙生成一份圖文并茂的項目介紹文檔 README.md。
這里有個小技巧,先人工挑選一個靠譜的 AI 生圖技能,然后到 魚皮 AI 導航 上找一個你喜歡的繪圖風格提示詞模板,一起提供給 AI 參考。
![]()
給 AI 的提示詞:
請先閱讀當前倉庫中的 ai-guide 導航網站,并為它生成一份高質量的 README.md 項目介紹文檔,同時配套生成幾張幫助理解和宣傳網站的動漫風格圖片,保存并在 README 中引用。
請先安裝并使用這個 AI 生圖技能:npx skills add https://github.com/inferen-sh/skills --skill ai-image-generation。我可以提供 Gemini NanoBanana 的 API Key,請安全使用,不要寫入倉庫。AI 生圖的風格參考下面的提示詞模板:@已經復制的模板
AI 完成任務后會請求一個生圖 API Key,我們到 Google AI Studio 上獲取后發給 AI。它會注重安全性,僅臨時使用這個密鑰:
![]()
AI 智能體成功調用技能,生成了圖文并茂的文檔:
![]()
不過這次它誤改了網站首頁的文件。沒關系,通過 PR 我們發現了這個問題,不合并就行,再讓 AI 自主修復。
這里也提醒大家:雖然 AI 寫代碼能力很強了,但代碼審查依然很重要。
![]()
5、SEO 優化
開源項目上線后,想把它推廣出去,需要做好 SEO 搜索引擎優化,讓用戶能在搜索引擎上搜索到你的網站。
我們用一個專業的 SEO 技能來優化網站:
請先閱讀當前倉庫中的 ai-guide 導航網站,并對它進行一輪高質量的 SEO 優化,直接完善站點的標題、描述、結構化信息、頁面語義、鏈接結構和可索引性。做法上,請先安裝并使用這個 SEO 技能:npx skills add https://github.com/coreyhaines31/marketingskills --skill seo-audit,然后把優化結果直接落實到項目代碼中。
GitHub Copilot 整合了 Claude 等多個模型,可以直接在云端啟動不同的 AI 來完成任務:
![]()
直接在網頁端爽用 Claude 模型:
![]()
很快 AI 就完成了 SEO 優化,網站更容易被搜索引擎收錄了:
![]()
效果如圖,網頁上增加了一堆搜索關鍵詞:
![]()
可以看出,我們的 AI 智能體已經能夠熟練運用各種技能了。之后你再新開一個對話,就可以直接使用已經安裝好的技能,把 GitHub 當成安全隔離的「電腦空間」來用。
6、開發前后端全棧項目
既然 GitHub 提供了完整的工作空間,那也可以用來開發包含后端的全棧項目。
比如輸入下面的提示詞,讓 AI 幫我開發個《多媒體處理平臺》:
在當前倉庫內新開發一個完整可運行的《多媒體處理平臺》前后端項目:
- 前端使用 Vue 實現多頁面,支持圖片、音頻和視頻的壓縮與格式轉換
- 后端使用 Python + SQLite + FFmpeg 等
請自主完成項目的前后端開發、聯調、依賴配置、示例數據、必要文檔和本地運行方式,并主動進行測試驗證,確保圖片、音頻和視頻的壓縮與格式轉換流程都能實際可用。除非確實必要,否則不要中途停下來向我確認,直接持續推進到可運行狀態。
AI 會自己完成環境安裝、前后端開發、自動化測試、文檔生成,全流程一條龍:
![]()
注意,這些全部都是在云端執行的。哪怕你把網頁、網絡甚至電腦都關了,也不影響它繼續工作。
![]()
7、測試驗證
涉及后端的項目還是得好好測試一下。有 2 種方式可以訪問和測試。
本地接管測試
開發完成后,你可以在 AI 工作的對話框中點擊「Open in VS Code」,或者用 Copilot CLI 在本地接管項目:
![]()
VS Code 接管項目后,會自動克隆倉庫到本地并打開。
然后你可以讓 AI 幫你運行項目:
幫我運行這個項目的前后端
它會自動創建 Python 虛擬環境,關鍵步驟會找你確認(比如安裝依賴和執行命令),非常安全:
![]()
然后人工打開瀏覽器測試,有問題再讓 AI 修復就好:
![]()
在線運行測試
如果不想開本地 IDE,還可以用 GitHub Codespaces。
Codespaces 是 GitHub 提供的云端開發環境,可以在瀏覽器里直接編輯代碼、運行項目,體驗和本地 VS Code 幾乎一樣。
![]()
需要先讓 AI 幫忙創建 Codespaces 所需的配置,這樣創建環境后就會自動完成初始化并運行項目:
請繼續為這個項目補全 GitHub Codespaces 開發環境配置,創建 .devcontainer/ 相關文件,使其適配這個前后端項目,并確保在創建 Codespace 后能夠自動安裝前后端依賴、安裝 FFmpeg、初始化必要環境、自動啟動 Vue 前端與 Python 后端,并正確轉發訪問端口。
AI 創建了所需的配置文件:
![]()
然后在 GitHub 上創建 Codespace:
![]()
創建完成后,正常情況下可以直接訪問前端和后端(注意前端請求后端的地址可能需要調整):
![]()
如果訪問不了,也可以進入 Codespace 的終端手動執行啟動腳本(注意腳本的執行路徑要正確):
![]()
你看,這個操作界面是不是和本地的 VS Code 一樣?而且還能直接在網頁版里使用 Copilot。
8、代碼審查
代碼審查是保障代碼質量的關鍵環節。GitHub Copilot 提供了自動和手動兩種審查方式。
自動代碼審查
Copilot coding agent 開發的代碼,本身就會自動執行一輪代碼審查:
![]()
同時還會自動執行安全檢測:
![]()
此外,你還可以在倉庫設置中開啟對所有 PR 的自動審查。
![]()
把 Copilot 當成你的「同事」就好,只要把它加為 Reviewer,就會自動觸發審查:
![]()
審查結果還支持快捷修復,你可以根據它的建議直接采納修改,一鍵提交。也可以通過自定義指令來調整審查的側重點:
![]()
手動代碼審查
把 GitHub Copilot 當成你的同事,只要在 PR 中把它設置為 Reviewers,就會觸發代碼審查:
![]()
你也可以在 PR 的評論里直接 @copilot,比如讓它把端口號恢復成原樣。
這種方式更適合讓 Copilot 根據審查意見直接改代碼、修復 Bug:
![]()
9、處理 Issues
維護開源項目的過程中,肯定少不了處理用戶提的 Issues(問題),這也是很花時間的事情,可以讓 AI 智能體自動完成。
手動處理 Issues
GitHub Copilot 官方支持讓 Copilot coding agent 接手 Issue、自動創建 PR 并修復。
操作很簡單,進入一個 Issue,把它分配給 Copilot 就行:
![]()
Copilot 會自動創建一個 PR:
![]()
同時創建一個工作會話來分析和修復這個 Issue:
![]()
自動回復 Issues + 自動修復 Bug
還可以讓 AI 全自動幫我們回復 Issues 并修復 Bug。
利用 GitHub Actions 的自動化能力,我們只需要補一個「自動派單」的工作流就行。
給 AI 一段提示詞:
為當前倉庫創建一套 Issue 自動化處理工作流:當有新的 Issue 創建時,先自動回復一條簡潔的確認與補充信息提示;如果該 Issue 被識別為 bug(比如帶有 bug 標簽或滿足明確的 bug 條件),則自動將該 Issue 分配給 GitHub Copilot coding agent 處理,并讓 Copilot 后續自動開 PR 修復。請直接完成所需的 GitHub Actions 工作流、必要配置和說明,優先采用簡潔、穩定的實現方式。
不過需要注意的是,自動生成的腳本可能會有問題,比如只回復了卻沒有真正分配給 Copilot 去修復:
![]()
這時候可以再讓 AI 根據官方文檔修復。核心要注意幾點:
請修復當前倉庫中 Issue 自動化工作流的 Copilot 分配邏輯。現在工作流雖然會自動評論"已分配給 Copilot",但實際上并沒有真正成功分配。
請參考 GitHub 官方對 Copilot coding agent 的 Issue API 分配方式,改成正確可用的實現:使用正確的 Copilot assignee copilot-swe-agent[bot]、必要的 agent_assignment 參數,并且只有在真實確認分配成功后才發表評論;如果分配失敗,也要給出明確、真實的失敗提示,不要誤報成功。另外,請順手優化這個工作流的結構:opened 事件只負責自動回復,labeled + bug 事件只負責分配給 Copilot,保證整體邏輯更清晰穩定。
而且這里需要用戶級別的 Personal Access Token(PAT),不能用默認的 GITHUB_TOKEN。
先到 GitHub 申請 PAT,開通相應的倉庫權限:
![]()
然后把密鑰存放到倉庫的 Secrets 中,在工作流腳本中通過 secrets.COPILOT_ASSIGN_TOKEN 引用:
![]()
引用 token 的示例代碼如下:
- name:AssignissuetoCopilotcodingagent
uses:actions/github-script@v7
with:
github-token:${{secrets.COPILOT_ASSIGN_TOKEN}}
script:|
然后我只要提一個打了 bug 標簽的 Issue,就會觸發 GitHub Actions,自動把 Bug 分配給 AI 處理:
![]()
10、定時任務
OpenClaw 的一大亮點是可以執行定時任務,那咱們的 “給蝦” 也要有!
但是 GitHub 倉庫不是一臺常駐運行的電腦,怎么做定時任務呢?
我有個主意,利用 GitHub Actions 的 schedule 觸發器,就能給 AI 智能體補上「定時觸發」的能力。
比如讓它每天自動推送最新的 AI 科技熱點:
為當前倉庫創建一個可長期使用的定時任務工作流,利用 GitHub Actions 模擬 OpenClaw 風格的定時觸發能力。
目標:每天北京時間中午 13 點,自動收集并總結本周最新的 AI 科技熱點,并以 "推送日報" 的形式發送給我。優先采用簡單穩定的實現方式:默認先推送到 GitHub Issue;如果倉庫中已有郵箱等其他 webhook 配置,也可以優先復用。
當然,你還可以選擇對接更多第三方渠道,比如郵件、Telegram 等:
![]()
任務完成,創建了定時觸發的 GitHub 工作流:
![]()
之后,每天會自動生成一份 AI 科技日報:
![]()
注意,GitHub Actions 的 schedule 定時觸發會有延遲,官方文檔也說明了在高負載時段(尤其是每小時開頭)可能延遲甚至丟棄任務,所以不適合對執行時間要求精準的場景。
11、封裝 AI 智能體
到這里,我們的 AI 小龍蝦已經養得很肥了。它有了角色、記憶、技能、自動化流水線。不妨把它封裝起來,分享給別人用。
于是,我給 Copilot 這段提示詞,讓它幫我封裝成一個 Agent Skill:
請把當前倉庫里已經實現的所有 "把 GitHub Copilot 變成小龍蝦" 的能力,系統化封裝成一個可復用的 agent skill,名稱為 github-claw,并放到倉庫的 skills/github-claw/ 目錄下。
在開始之前,請先參考 anthropics/skills 倉庫中的 skill-creator 結構與規范,按規范創建完整技能文件,而不是只寫一個簡單的 SKILL.md:
https://github.com/anthropics/skills/tree/main/skills/skill-creator這個 github-claw skill 的目標是:讓其他用戶只要安裝這個技能,就能盡可能快速地把 GitHub Copilot 倉庫工作流變成一個 OpenClaw 風格的小龍蝦系統,具備并串聯以下能力:
- 角色與人格
- 文件化記憶與長期上下文
- 技能發現、安裝與管理
- 定時任務 / GitHub Actions 自動化
- Issue 自動回復與自動分配給 Copilot
- PR 審查與自動化工作流
- 編碼開發、部署、網站生成與項目推進
封裝好的 github-claw 技能被單獨放到了一個干凈的分支:
![]()
這樣一來,以后任何人只要新建一個 GitHub 倉庫,安裝上這個技能,就能立刻擁有一只自己的 AI 小龍蝦了。
GitHub Claw 項目開源:https://github.com/liyupi/github-claw
至此,我們全程沒有打開 IDE,利用 GitHub 網頁版就打造了自己的 AI 智能體。
你可以讓它幫你完成從需求分析到全棧開發、測試、文檔、部署上線、SEO 優化、代碼審查、Issue 自動處理、定時任務的全流程。
而且因為 GitHub Copilot 深度融合在網頁端,以上所有任務都可以通過手機打開 GitHub 網頁或 GitHub Mobile App 完成,隨時隨地使用。
![]()
Copilot 的優勢在于:
1)全程云端執行:Copilot coding agent 在 GitHub Actions 支持的臨時環境中獨立工作,非常安全。你可以關掉網頁甚至關機,AI 會繼續干活。
2)端到端交付能力:GitHub Copilot 能夠貫穿整個開發生命周期,從寫代碼到 PR 審查到部署,全部在 GitHub 生態內閉環完成。
3)多模型靈活選擇:GitHub 提供了多個模型供選擇,可以根據不同任務類型適配最合適的模型,節省成本。
![]()
GitHub Copilot 更多能力
除了今天演示的核心流程,GitHub Copilot 還有很多值得探索的能力:
1)Coding Agent MCP 配置:在倉庫設置中可以配置 Copilot 的權限、工具和 MCP Server(比如接入 Context7、Firecrawl 等 MCP),擴展 Copilot 的外部數據獲取和操作能力。
2)GitHub 內置 Memory:Copilot 可以自動存儲它在倉庫工作中推斷出的有用信息,形成持久化的倉庫級記憶。后續它在這個倉庫里工作時會自動調用這些記憶,效果越用越好。目前處于 Public Preview 階段。
3)Copilot Spaces:一種上下文共享空間,你可以把代碼、文檔、設計稿等多種資源聚合到一個 Space 里,讓 Copilot 在回答和工作時始終基于正確的上下文,適合團隊協作場景。
4)GitHub Spark:通過自然語言描述你的想法,Spark 可以秒出全棧 Web 應用原型,支持實時預覽和一鍵部署到 Azure,不需要寫代碼。還可以從 Spark 創建 GitHub 倉庫,雙向同步。
5)GitHub Copilot CLI:這是一個獨立的命令行 AI 工具,可以閱讀代碼、編輯文件、執行命令、創建 PR,還能把任務委派給專門的 Agent。支持遠程會話恢復,在任何終端上都能接著干。
除了前面主要展示的 Copilot 網頁端,桌面端的 GitHub Copilot(VS Code 等 IDE 插件版本)也非常好用,能靈活切換多個大模型,還集成了網絡搜索等各種主流工具,支持 MCP 和 Skills,平時我也經常用它帶大家開發完整項目。
比如我的 AI 熱點監控工具項目,就是完全利用 GitHub Copilot 在 IDE 中開發出來的。
![]()
以上就是本期分享,如果你想系統學習 AI 編程,可以看看我免費開源的 《AI 編程零基礎入門教程》 ,里面有 GitHub Copilot 的零基礎實戰教程,從零開始帶你學會用 AI 開發上線自己的產品。
開源倉庫:https://github.com/liyupi/ai-guide
![]()
我是魚皮,專注做 AI 編程知識分享,覺得有用的話,記得點贊收藏和關注,也歡迎在評論區聊聊你用 AI 編程的體驗~
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.