AI News HubLIVE
站内改写2 分鐘閱讀

PhD_fleet:透過Slack管理虛擬AI博士生研究實驗室

PhD_fleet 是一個Python工具包,允許單一研究人員(導師)透過Slack生成和與Claude Code代理群進行對話。每個代理擁有獨立的工作區,透過Slack訊息驅動互動,檔案系統作為長期記憶。還包括一個教練代理,提供基於證據的反饋以提升指導技能。

來源Hacker News AI作者: canatara

PhD_fleet 是一個面向研究人員的Python工具包,旨在透過Slack平臺管理一個由AI代理組成的虛擬研究實驗室。該工具允許單一研究人員(稱為“導師”)生成多個Claude Code代理,每個代理模擬一名博士生,在獨立的工作區內進行科研活動。代理之間透過Slack訊息進行互動,每個訊息驅動一個回合(turn),而檔案系統則充當長期記憶,確保工作狀態在機器人重啟後仍然保留。

每個AI學生代理擁有自己的工作目錄,其中包含個人資料、專案簡介、研究日誌(JOURNAL.md)和筆記。導師可以透過Slack向特定代理傳送訊息,代理將以研究方向相關的回覆進行互動。代理的工作狀態和檔案系統會持續儲存,即使機器人重啟也不會丟失。此外,每個代理的配置檔案中包含許可權黑名單,防止訪問敏感路徑(如.env、.ssh)或執行特權命令(如sudo、chmod),從而增強安全性。機器人僅接受配置中指定的單一使用者ID傳送的訊息,進一步降低風險。

除了學生代理,PhD_fleet 還配備了一個“教練”代理。教練代理監控導師與學生的互動,並基於教育學理論(如GROW模型、SBI模型、Vygotsky最近發展區等)提供反饋,幫助導師提升指導技能。教練代理僅在收到命令時響應,不會自動介入。導師可以透過/coach-review命令請求對特定學生的指導進行回顧,教練會分析過去一段時間內的互動,指出優點和改進點,並維護一個縱向觀察檔案。

該工具提供三個主要的Slash命令:/new-student 用於建立新學生代理,它會自動搭建工作區、建立Slack頻道並啟動第一個回合;/coach-review [天數] 用於請求教練對特定學生的指導進行回顧;/claude-status 用於快速檢視所有代理的狀態摘要,包括回合數、上下文大小、累積令牌數、模型、成本和GitHub連結(如果有)。此外,每個代理的工作區可以透過配置自動提交到GitHub分支,便於審閱。如果未配置GitHub源,此步驟會靜默跳過。

安裝相對簡單:首先克隆倉庫,安裝依賴(推薦使用虛擬環境),然後配置Slack應用令牌和使用者ID,最後執行bot.py即可。工具支援Socket Mode,無需開放入站埠,適合在NAT或私有子網中執行。要求Python 3.11及以上版本,並需要Claude Code CLI和Claude.ai訂閱或Anthropic API金鑰。設定過程包括建立Slack應用、獲取令牌、配置環境變數、設定Claude認證(推薦使用訂閱方式)等步驟。對於長期執行,建議使用程序管理器如tmux或systemd。

工作原理方面,每個學生代理位於students/<name>/目錄下,包含CLAUDE.md(角色和專案簡介)、JOURNAL.md(只追加的研究日誌)、notes/(私人筆記)以及實際工作成果。共享論文庫library/位於專案根目錄,所有代理都可以讀取和寫入:第一個閱讀者寫入規範摘要,後續閱讀者新增單獨的筆記檔案,索引由機器人在每個回合後自動重新生成。引用鍵衝突透過字母后綴解決。如果配置了GitHub源,機器人在每個回合後會將代理的工作區強制推送到一個分支,Slack訊息中包含審查連結。

安全模型採用縱深防禦,但並非沙箱。每個代理的.claude/settings.json包含許可權黑名單,禁止讀取敏感路徑(如.env、.ssh)和執行特權命令(如sudo、chmod)。然而,這並不能完全防範提示注入攻擊。因此,建議僅在可接受風險的主機上執行,並只允許單個配置的導師使用者。

侷限性包括:僅支援單導師模式,無團隊或多導師功能;代理僅是被動響應,不會主動提議或提問。此外,機器人在短暫斷開時能重新連線,但程序退出後無法自行恢復。

總體而言,PhD_fleet 為獨立研究人員提供了一個有趣且實用的工具,透過AI代理模擬研究團隊,既促進科研產出,又幫助培養指導能力。其模組化設計和清晰的文件降低了使用門檻,但需注意當前僅支援單一導師模式,且代理的響應完全被動。