展示HN:我構建了一個AI代理來對我大喊關於我的ADHD
一位ADHD患者開發了名為hex的AI代理,用於管理日程、任務、知識庫等,並集成多種工具和專家系統,幫助應對ADHD帶來的挑戰。文章詳細介紹了hex的功能、技術實現、遇到的困難以及作者的反思。
一位患有ADHD的開發者分享了他構建AI代理“hex”的歷程,旨在幫助自己應對注意力缺陷帶來的挑戰。hex不僅僅是一個任務管理工具,而是一個集成了多種功能的複雜系統,其設計理念是為用户提供全方位的支持,以減少ADHD帶來的日常困擾。
hex的核心工具箱包括日曆管理、任務處理、知識庫訪問、網絡搜索、瀏覽器操作、語音輸出和Telegram界面。具體來説,hex通過FastMail的日曆功能讀取和處理日程事件,並計劃遷移到FastMail的MCP服務器以獲得更好的集成。任務管理方面,hex使用Todoist的MCP服務器,並過濾掉目標工具以減少干擾。知識庫方面,hex能夠查詢用户的Obsidian筆記庫,儘管在開發中使用了Obsidian CLI,但未來計劃採用NotesMD CLI等替代方案。網絡搜索和內容抓取通過Defuddle和Kagi的MCP服務器實現,確保信息的時效性。瀏覽器操作基於Playwright和headless Chromium,用於需要“看到”網站內容的場景。語音輸出使用KittenTTS,而Telegram界面則利用aiogram庫,並受益於最新Bot API中的富消息功能。
為了提高效率和減少上下文污染,hex採用了多層次的記憶系統:滑動上下文記憶結合摘要、Qdrant向量存儲用於事實和臨時記憶,以及SQLite偏好存儲。工具子代理機制確保工具調用不會耗盡主上下文,而專家系統則通過獨立的次級提示運行,用於處理特定領域的請求,如健康或職業諮詢。此外,hex還具備技能系統,能夠根據觸發詞加載額外的提示上下文。
專家系統之一是Freya,專注於健康、睡眠和訓練數據。Freya通過分析Apple Watch和AutoSleep的數據,結合用户的每日健康記錄,提供關於恢復狀態和當天表現的洞察。其分析風格直接、數據驅動,避免空洞的鼓勵,而是提供基於數據的行動建議。另一個專家系統Carrie專注於職業策略和求職,幫助用户篩選遠程工作機會,過濾掉不符合條件的職位,並給出申請建議。Carrie特別強調應用斯多葛哲學,專注於可控因素,同時保持對現實的客觀評估。
物理集成方面,hex通過“Watcher”設備實現面部識別和語音交互。Watcher是一個基於ESP32的定製設備,通過攝像頭定期捕捉圖像,與參考圖像進行面部匹配,然後觸發代理進行推理並通過TTS輸出語音提醒。然而,目前的實現仍不完善,存在高延遲、流程複雜等問題,作者甚至將其描述為“魯布·戈德堡機器”。儘管如此,Watcher仍是項目中的一個重要嘗試,旨在通過物理提醒來克服ADHD帶來的忽視消息的傾向。
作者在實際使用中取得了顯著收益。hex幫助他充分利用Obsidian知識庫填補信息空白和進行事實核查,同時與Carrie協同過濾不合適的求職崗位,並優化日程安排。例如,hex能自動識別會議衝突,建議移除過時任務,並根據當日狀態推薦優先級。不過作者也坦承,並非所有功能都完美運行,項目仍有很大改進空間。
回顧項目,作者總結了幾個關鍵教訓。首先,他強烈建議避免使用DeepSeek-V4模型,因為其標籤泄露問題導致大量麻煩,並指出這是一個已知的廣泛問題。其次,如果條件允許,他更傾向於在本地運行模型以減少依賴外部服務,但這需要昂貴的硬件支持。未來計劃包括轉向本地模型,並進一步完善Watcher的集成。
總體而言,hex已成為作者日常生活中不可或缺的工具,尤其是在求職期間幫助篩選和跟蹤申請。儘管項目仍在開發中,其設計理念和技術實現為其他ADHD患者或AI愛好者提供了有價值的參考,展示了AI輔助生活的潛力。