dsh-backstory: 追溯代碼行的“前世今生”

前言

DeepSeek Harness (DSH) 採用插件化架構,支持運行時動態加載能力。在維護代碼時,git blame 能告訴我們一行代碼是誰寫的、何時提交的,但往往無法解釋“這段代碼具體做什麼”以及“爲什麼要存在”。dsh-backstory 插件通過整合 Git 歷史記錄與智能體的會話歷史,爲任意一行代碼提供其“背景故事”(Backstory),即它做什麼以及爲什麼在這裏。

插件簡介

  • 名稱: dsh-backstory
  • 維護者: MeghanBao
  • 分類: 聯網工具
  • 許可: MIT
  • 定位: 一個 DeepSeek Harness 插件,用於通過 Git 和會話歷史解釋代碼的意圖。

核心功能

該插件主要提供以下能力:
1. 代碼意圖解釋: 詢問任意代碼行的功能及存在理由。
2. 歷史追溯: 將代碼行追溯到具體的提交信息、作者和日期。
3. 智能體溯源: 對於由智能體(DSH 進程)編寫的代碼,重建其編寫時的輪次和提示詞(dsh-native origin)。
4. 持久化賬本: 將所有寫入或編輯記錄到 .dsh/backstory.l 賬本文件中。
5. 防漂移歸屬: 通過內容哈希(content hash)匹配行內容,確保代碼行移動後仍能找到歸屬。
6. Git 提交尾註: 支持通過 Git 提交尾註(commit trailers)進行溯源。
7. 敏感信息脫敏: 自動從提示詞中刪除常見的密鑰和令牌。

安裝與啓用

在已安裝 DeepSeek Harness 的環境中,執行以下命令安裝插件:

dsh plugin add dsh-backstory

使用方法

插件提供 /backstory 命令以及自然語言交互接口。

  1. 指定文件與行號:
    /backstory src/auth.ts:40-60
    /backstory utils/date.ts
  1. 自然語言提問:
    智能體會使用內置的 backstory 工具來回答,例如:
    • “what’s the backstory of src/auth.ts line 88?”
    • “explain utils/date.ts lines 10–40 and why each part is there”

注意事項

  • 脫敏機制: 敏感信息(如 API keys, tokens)的移除是盡力而爲的模式匹配,並非絕對保證,敏感數據仍建議在提交前人工檢查。
  • 運行環境: 插件以當前 DSH 進程的權限運行,請確保對源碼倉庫有讀取權限。
  • 非 Git 環境: 如果不在 Git 倉庫中,插件會優雅降級爲僅返回源碼行。
  • 禁用功能: 如果不想記錄智能體輪次,可以通過環境變量禁用:
    DSH_BACKSTORY_DISABLE=1

總結

dsh-backstory 通過將代碼行的功能解釋與其 Git 歷史及智能體編寫歷史相結合,解決了“代碼爲何存在”的疑問,適合在代碼審查、快速上手或維護遺留代碼時使用。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜