Communitygithub.com

JetBrains/thinkrail

Vibe code with pi 在輕量級真 IDE 中 — 你需要的氛圍

thinkrail 是什麼?

這是一個專為 AI 助手設計的通話任務規劃技能,旨在幫助 AI 助手在與使用者進行開發對話時,高效管理任務和步驟。它提供一個即時同步、僅限於當前通話的 TODO 列表,讓使用者可以隨時檢視進度、新增或移除任務。技能支援 JetBrains IDE 平台,透過一系列工具(todo_list、todo_add、todo_update、todo_remove、todo_write)實現精細的任務管理:每個使用者的提問對應一個任務群組,群組內的步驟依序執行,並明確區分「任務」與「步驟」的層級。它強調以通話內計畫為核心,AI 應先提出計畫再執行,並嚴格遵循「先完成當前步驟,再處理新任務」的原則,確保任務不中斷。同時,技能保留使用者手動新增的鬆散項目,避免 AI 擅自改動,並要求每次操作前重新讀取 TODO 列表以保持同步。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add JetBrains/thinkrail

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

通話 TODO 計畫

它是什麼

  • 一個僅限於此通話的計畫 — 你的通話任務。顯示在使用者的 TODO 面板中;與工作階段共存(不提交到倉儲)。
  • 群組 = 任務,項目 = 步驟。 一個使用者提問 = 一個群組;其標題是結果("修復登入 重新導向"),而不是過程。內部的步驟就是項目 — 每個都有標題、狀態 (pending → in_progress → done)以及可選的備註(把完成條件放在那裡,例如 "login e2e 通過")。任務本身的狀態從不儲存 — 它由其步驟推導得出。
  • 鬆散項目使用者的專屬通道 — 它們位於計畫的結尾。 它們保存 使用者從 UI 新增的內容;你處理它們,但絕不將其分組、重寫或刪除。todo_list 刻意將它們 呈現在最後,在所有群組之後:使用者在進行中任務中途新增的請求會佇列在 你當前工作之後。因此,先完成(或恢復)你正在進行的任務,再處理鬆散項目 — 不要 跳到一個剛新增的使用者項目,而放棄你正在進行的步驟。你不建立鬆散項目 (工具需要 group 或 after 錨點);一個小請求就是一個小群組(1–2 步驟 即可),或者完全不需要列表。
  • 它是 共享且即時的:你維護它,而使用者在您工作時編輯它 — 新增任務、 移除他們已放棄的任務。儲存的列表是事實來源;你記住的東西只是 一個快照。重新讀取它(todo_list) 以保持同步,不要依賴你的記憶。
  • 它是使用者的狀態視窗 — 他們如何一眼了解正在發生的事情,而無需閱讀 通話內容。簡短、具體的步驟標題;狀態始終保持最新。

粒度

請求的大小在計畫中的形式
瑣碎(一個答案、一次編輯)完全不需要列表
1–7 步驟一個群組(一個小請求 = 1–2 步驟的群組,這沒問題)
超過約 10 步驟這些不是步驟,而是任務 — 分成幾個群組

步驟是可驗證的且約等於一次提交大小:"便於邊做邊檢查",而不是"階段 1"。

使用方式

  1. 先提出計畫 — 這就是列表的重點。 一旦你理解一個需要 超過幾個步驟的請求,你的第一個動作就是使用 todo_write 提出你的計畫 — 每個任務一個群組,內部包含步驟 — 在你提出釐清問題之前,也在你開始 工作之前。然後隨著你了解更多,就地修改它。(一個一次性的答案不需要列表。)
  2. 嚴格按順序處理任務,一次一個步驟:
    • 開始一個步驟時將其設為 in_progress,完成時設為 done。開始新步驟時 會自動將其他 in_progress 步驟恢復為 pending — 因此請在繼續之前先完成(標記為 done), 否則上一個步驟會明顯退回開放狀態。
    • 在當前群組有開放步驟時,不要開始下一個群組。唯一的例外是:一個真正 受阻的任務 — 在步驟的 note 中記錄原因,告知使用者,然後繼續進行下一個群組。
    • 在每個下一步驟之前,再次執行 todo_list。 使用者可能在中間編輯過:注意任何新 內容(它會附加在使用者通道的結尾 — 在你正在進行的步驟之後再處理它,不要 搶先處理進行中的工作),如果你計劃的項目消失了,表示使用者已將其放棄 — 跳過它,不要 重新新增它。
    • 工具結果會幫助你:在 done 之後它們會命名任務的下一個步驟;當沒有項目是 in_progress 時,它們會提醒你將正在進行的步驟設為該狀態。根據這些提示行動。
  3. 工作階段中的新請求 = 附加一個新群組(使用 todo_add 搭配 group:,每個步驟一個 — 或者透過 多次 todo_add 呼叫來佈局新任務的步驟)。切勿將新請求的步驟混入 當前群組。在進行中任務中發現的步驟 使用 todo_add after: <current step id> 插入(錨定到你自己的步驟之一 — 錨定到使用者自己的項目會被拒絕,因為你的項目從不位於他們的通道中) — 不要為此使用 todo_write 重構整個計畫。
  4. 在完成之前進行調和。 在一個回合結束時,再次執行 todo_list。如果還有開放步驟(包括 使用者剛剛新增的項目),要麼執行它們,要麼清楚說明還剩下什麼以及原因 — 不要 被動地讓剛新增的項目保持未處理狀態。

不變規則

  • 完成的項目保持不變。 完成一個步驟 = todo_update → done。切勿刪除已完成的項目 — 它是 使用者的歷史記錄。todo_remove 僅在使用者明確要求刪除某項時使用。
  • 精確編輯。 在首次計畫之後,使用 todo_update / todo_add(它們只影響一個項目)。 切勿使用 todo_write 來調整現有列表 — 它會取代所有內容;todo_write 僅用於 佈局全新計畫。
  • 尊重使用者的編輯。 列表是共享的;將他們的新增視為新請求,將他們的 移除視為取消。鬆散項目是他們的 — 處理它們,但在你重新計畫時不要重寫或刪除它們。(todo_write 會為你保留使用者項目和已完成的項目,但不要依賴它 — 請使用 todo_add/todo_update 來編輯,並保留 todo_write 用於真正全新的計畫。)

工具

  • todo_list — 讀取當前計畫(事實來源;重新讀取以捕捉使用者的編輯)。
  • todo_add — 新增一個步驟(到一個 group 中,或在一個現有步驟之後;保持其餘部分不變)。
  • todo_update — 推進一個步驟的狀態(開始時設 in_progress,完成時設 done;完成的項目保持不變)。
  • todo_remove — 刪除一個項目(僅在使用者要求時使用)。
  • todo_write — 佈局一個全新計畫(僅限群組 — 每個任務一個;取代你的開放項目;僅使用一次, 在開始時)。

相關技能