前言¶
在 DeepSeek Harness(DSH)裏做多 Session 開發時,工作目錄、上下文佔用、已裝插件和未提交改動往往分散在不同界面或需要切頁才能對齊。Session Rail 把 Environment、Context、Plugins、Git Changes 按固定順序收進當前 Session 的右側欄預覽,並在同一處發起「讓 Agent 提交工作區」或跳轉到指定 Review 頁查看 diff。下面介紹它的定位、能力與本地安裝方式。
這是什麼¶
Session Rail(session-rail,維護者 wzc520pyfm)是面向 DSH Web 的客戶端插件:爲每個 Session 提供右側欄標籤頁,展示該 Session 範圍內的環境信息、上下文投影、插件清單,以及工作區 Git 變更。它不替代 DSH 核心,而是讀取 DSH 公開的只讀數據並在瀏覽器側組織展示;Git 提交由 Session 內 live Agent 通過常規工具完成,插件本身不 stage、commit、push,也不改文件。
社區目錄頁:https://www.skillhub.cn/plugins/wzc520pyfm/session-rail
源碼與說明:https://github.com/wzc520pyfm/session-rail(MIT,當前 package 版本 0.1.2)
核心功能¶
Environment¶
展示當前 Session 的項目文件夾名、完整路徑,以及當前 Git 分支。
Context¶
讀取 DSH 的 token-meter 投影:在可用時顯示 pressure、capacity;估算 system / tool / message 等類別;累計 provider 用量作爲單獨參考。投影值取決於當前 DSH composition,不可用項會明確標爲不可用。
Plugins¶
插件名稱及 enabled / runtime 狀態來自 DSH 公開的只讀插件清單。
Git Changes¶
列出 Session 工作區內變更文件、 staged / unstaged 狀態與行數統計。
- Commit changes:向該 Session 的 live Agent 發送固定用戶消息
Commit the working tree changes with a sensible message.,由 Agent 按正常流程提交;Session Rail 不參與暫存或寫庫。 - Review page:可在字段中選擇 Review 頁 kind(例如
codex-review)。候選項來自 DSHsidebarRightTabsregistry 中已發佈的活躍頁籤,也支持手輸 kind;選擇保存在瀏覽器localStorage。若所選頁不可用,會提示安裝並回退到帶邊界的行內 unified diff。二進制文件只顯示元數據,不渲染內容。
切換 Session 時,側欄使用各自的工作區與上下文投影。入口包括右側欄標籤選擇器,以及 Session 頭上的小按鈕。
安裝與啓用¶
依賴(README 原文):
- DSH Web 需具備右側欄 tab 相關包(
@deepseek-ai/dsh-client-ui-sidebar-right注入鏈路由插件 manifest 聲明)。 - DSH Host 上 Node.js
>=22.19.0。
本地構建並安裝(在插件包目錄內執行):
npm install
npm run typecheck
npm run build
dsh plugin --profile web add "file:$PWD"
若 loader 未立即激活新條目,需重啓或 reload DSH Web profile。
移除:
dsh plugin --profile web remove session-rail
資料中未給出從 GitHub 遠程一鍵 dsh plugin add 的安裝命令;請以 README 中的 file:$PWD 流程爲準。
典型用法¶
- 在 DSH Web 中打開目標 Session,從右側欄標籤選擇器或 Session 頭按鈕打開 Session Rail。
- 在 Environment 確認路徑與分支是否與預期工作區一致。
- 在 Context 查看 token 壓力與容量(若 composition 提供投影),輔助決定是否壓縮上下文或換模型策略。
- 在 Plugins 覈對當前 Session 可見的插件啓用與 runtime 狀態。
- 在 Git Changes 瀏覽變更列表;需要提交時點 Commit changes,由 Agent 生成合理 commit message 並執行提交。
- 點擊某個變更文件:若已配置 Review page 且對應頁可用,會打開該 kind 的 Review;否則查看行內 diff。按需在下拉或手輸中調整 Review page kind,設置會留在本機
localStorage。
適用場景與注意¶
適合: 經常在 DSH Web 裏切換 Session、需要快速對照「目錄 / 分支 / 上下文 / 插件 / 未提交 diff」的開發者;希望在側欄一鍵把提交意圖交給 Agent、而不是自己跑 git 命令的用戶。
注意:
- 插件以當前 DSH 進程及 Web 客戶端權限運行;安裝前請閱讀源碼與 MIT 許可證,確認側欄讀取的數據與「Commit changes」觸發的 Agent 行爲符合你的安全與合規要求。
- Context 與 Plugins 信息依賴 DSH 對外暴露的只讀接口;composition 或版本差異可能導致部分字段長期不可用,屬預期行爲而非插件單獨 bug。
- Review 頁依賴
sidebarRightTabs生態;未安裝對應 Review 插件時會回退 inline diff。 - SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;星標與分類以目錄頁展示爲準(客戶端類,GitHub 1 stars)。
結尾¶
Session Rail 把 Session 級環境、上下文、插件清單和 Git 變更收束到 DSH 右側欄,並區分「只讀預覽」與「通過 Agent 提交」的邊界。需要詳情與 issue 時見 GitHub:https://github.com/wzc520pyfm/session-rail ;目錄入口:https://www.skillhub.cn/plugins/wzc520pyfm/session-rail 。