Dropstone 如何在工作中學習
Dropstone 是一個自我學習的代理。它會記錄從修正、完成的工作以及你要求它研讀的來源中學到的內容,並在下次無需指示的情況下加以運用。以下是這個循環的運作方式。
一個在對話之間會忘記一切的助手,其能力上限永遠取決於你每次給予的指示。Dropstone 的設計圍繞著一個不同的理念:你使用它的時間越長,它就應該越擅長與你協作,而你無需費心管理。
本頁說明促成此效果的循環。
循環
Dropstone 處理的每一項任務都會經歷相同的四個步驟。
回想
在開始之前,它會檢查記憶中是否有相關內容:既有規則、關於此專案的事實、它研讀過的資料、過去關於同一主題的對話。凡是符合的內容都會被納入任務中。
執行
它會完成工作,並運用所回想起來的內容。當某段記憶改變了它的做法時,它會用一句簡短的話說明,讓你能看到其中的關聯。
捕捉
在你糾正它、拒絕某種做法或表達偏好時,它會立即記錄這個教訓。它不會等到任務完成才記錄,因為糾正是它在一次工作階段中能學到的最有價值的內容,不應因對話繼續進行而遺失。
反思
在完成某件非瑣碎的任務後,它會自問剛才發生的事情中是否有值得長期保留的教訓。例如你在程式碼庫中發現的慣例、你遇到並繞過的陷阱、某種失敗的方法及其原因。如果有,它會記錄通用的教訓,而非具體的細節。
下一項任務會再次從「回想」開始,而此時它的記憶已比先前略勝一籌。
什麼才算教訓
Dropstone 記錄的是可重複使用的策略,以足夠通用的方式陳述,以便下次套用。
而不是「config.ts 第 40 行有個拼寫錯誤」。那個拼寫錯誤只屬於一項任務;而這個慣例則適用於之後的每一項任務。
它會在適當時一併記錄原因:是什麼事件讓它學到這個教訓。這個脈絡能讓它在日後判斷該教訓是否仍然適用。
它不會記錄僅適用於單一任務的事物,也不會記錄它已知的內容。如果某個教訓與它已有的教訓相符,它會保留原有的教訓,而非新增重複項目,而且它不會在沒有學到新東西時告訴你它學到了新東西。
按需求研讀
除了從工作中學習之外,你也可以將某個內容指向 Dropstone,請它學習。例如一個頁面、一份文件、一份 API 參考、一份規格。它會閱讀來源,以它自己的話保留所學,並附上來源出處。
下次該主題出現時,它會運用所研讀的內容並引用來源,而非再次搜尋網路來找它已經讀過的東西。當它研讀的兩份內容互相矛盾時,它會偏好較新的那份,並告訴你它們彼此衝突。
它不會做的事
它不會假裝。如果它沒有與任務相關的記憶,它不會提及記憶,也不會暗示它記得某件它無法指出的內容。
它不會憑自己的判斷遺忘。只有你能移除記憶,而且僅限於你提出要求時。請參閱變更或遺忘記憶。
它不會從無痕聊天中學習。在那裡說的任何內容都不會被記錄。
這與系統提示詞有何不同
你可以把偏好寫進固定的指示中,然後貼到每次對話裡。差別在於由誰來做這件事,以及當情況改變時會發生什麼。
使用固定指示時,維護責任在你身上。你要留意它是否過時。你要記得在每個使用的工具中都包含它。
使用 Dropstone 時,記憶會從你本來就會做出的修正中自我維護,它會跟著你的帳號進入每個介面而無需貼上,而且你可以隨時查看和編輯所有內容。
Related articles
- How Dropstone remembers youDropstone keeps a persistent memory that follows your account across chat, the CLI, and the SDK. Correct it once and it should not need correcting again, anywhere you use it.
- Rules and factsDropstone keeps two kinds of memory. Standing rules apply to every task without being searched for. Facts are recalled only when they are relevant. Here is why the difference matters and how it decides.
- See what Dropstone has learnedAsk Dropstone what it remembers and it lists everything, standing rules separately from facts. You can also ask what memory it used on a specific reply. Nothing is hidden from you.
- Change or forget a memoryTell Dropstone to forget something and it stops applying it. Tell it a fact should be a rule, or a rule is too broad, and it adjusts. Only you can remove a memory. It never forgets on its own.
- Memory across chat, CLI, and SDKDropstone memory belongs to your account, not to one app. A rule you set in the CLI applies in chat, and something learned in chat is available to the SDK. One memory, every surface.