Community研究與資料分析github.com

ARQAWA/cursor-pi

自動清理僅包含可丟棄的筆記記錄的當前已完成任務;無範圍的直接公開調用會刪除整個當前會話的記事本。

cursor-pi 是什麼?

此技能專為 Cursor 任務環境設計,用於自動清理已完成任務的臨時筆記記錄,避免干擾後續操作。它嚴格區分兩種模式:在「當前任務」範圍下,只刪除經過驗證的、屬於該次執行的可丟棄記錄,並保留所有必要的原始資料、結果、連結以及未完成任務的延續資訊。如果直接公開調用(無指定範圍),則會授權刪除整個當前 Cursor 會話的任務筆記本目錄,包括所有已完成的記錄。技能透過驗證 session ID、目錄結構、所有權和排除清單來確保安全,僅刪除經過精確識別和驗證的目標,並嚴格遵循不跟隨符號連結、不使用強制刪除或萬用字元等安全性原則。它支援自動選擇(由主任務或指定擁有者觸發)和顯式請求(透過手動提供 notebook plan.md 路徑)兩種調用方式。

相容平台~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/ARQAWA/cursor-pi/tree/HEAD/research/history/codex-harness-cursor/plugins/scope-focus/cursor/skills/cleanup-notebook

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

清理筆記本

由主要任務或其指定的擁有者進行的自動選擇,始終僅使用以下 scope=current-task,絕不使用整個會話的預設值。僅在證明存在可丟棄的記錄、結果和必要檢查完成、以及任務暫存清理已使用其所有權/連結完成之後使用。否則,請勿啟動清理工作流程。保留說明、請求的筆記本結果、必需的原始檔案以及仍在使用中的連結為排除項目。不要為了啟用刪除而移動或歸檔它們。暫停、阻塞、等待批准、回合結束、代理停止以及取消但不捨棄均不視為完成;請保留所需的延續內容。未經該範圍的直接公開調用,則授權刪除此 Cursor 會話的整個任務筆記本目錄,包括已完成的記錄。對於此公開預設,請勿等待任務完成或要求第二次確認。

整個會話的公開預設

僅在目前 Cursor 任務明確提供 session_id 時才取得該值。使用 Node.js 內建模組,計算 sessionKey 為 Buffer.from(session_id, 'utf8').toString('hex'),然後計算精確目標為 path.join(os.tmpdir(), 'scope-focus', 'task-notebook', sessionKey)。需要非空的 session ID。如果無法取得,則不刪除任何內容並回報無法識別當前會話的筆記本。切勿從目錄列表、舊的筆記本或其他任務推斷出一個 session。

如果目標不存在,回報無需刪除。如果存在,請驗證 Scope Focus 筆記本根目錄和目標是真實目錄,而不是符號連結。當 plan.md 存在時,要求它是一個常規檔案,而不是符號連結,並要求其 Session: 標頭與當前 session ID 相符。列舉其內容,並在刪除前重新檢查精確目標和排除項目。不要跟隨目標外部的連結,也不要刪除其他會話目錄、儲存庫檔案或儲存在別處的 HTML 報告。

僅使用 fs.rmSync(target, { recursive: true }) 刪除已驗證的目標,不使用 force 或萬用字元。之後確認目標已不存在並回報結果。如果所有權或目標不明確,則不刪除任何內容並回報確切原因。請勿自動建立替代筆記本。

scope=current-task

自動用於符合條件的當前任務記錄,或根據明確要求命名此範圍時使用。它絕不授權整個會話的刪除。 等待實際的實質結果、必需的證據以及每個已選取或強制的 CLEAN,加上仍在待清理的已關閉筆記本結果。當滿足以下任何條件時,保留延續所需的記錄:

要求精確的任務金鑰、其與此已完成執行的關係,以及明確可用的當前 session_id 或明確提供的相同選取任務的筆記本 plan.md 路徑(在任務筆記本的手動延續合約下)。請勿搜尋筆記本或從目錄或舊記錄推斷當前會話。對於當前會話,計算上述現有的 session-key 路徑。對於提供的下手動路徑,針對其 session-key 目錄以及與此任務的明確關係驗證原始 Session: 標頭;不要將其重新分配給當前會話。

使用 fs.realpathSync 解析實際的 os.tmpdir()。要求筆記本會話目錄直接在其 scope-focus/task-notebook 命名空間內。命名空間、會話和任務目錄必須是真實目錄,而不是符號連結;入口 plan(如果存在)必須是常規檔案。在變更之前驗證規範包含和每個受影響的路徑組件。任務金鑰必須是一個安全的檔案系統基本名稱,絕不能是分隔符、. 或 ..。檢查 Session:、Task:、直接選取或具有其順序來源和需求的自動選取,以及精確的執行關聯。主要任務提供的根定位器優先於子任務的本地鉤子定位器;僅後設資料不賦予所有權。提供的下手動路徑必須通過與計算路徑相同的位置和所有權檢查。

僅列舉精確目標和排除項目。僅當其內容經證明是此執行的記錄時,才移除任務金鑰目錄;保留必需的原始檔案、結果、其他任務以及每個未知或不明確的條目。未知的所有權會阻止刪除該目標,但不會阻止刪除其父目錄。僅當其標頭仍命名此執行時,才移除會話條目 plan.md。如果它現在屬於另一個任務,請保留它並使用此任務目錄的既有所有權記錄;該不同的標頭不是移除另一個任務的權限。缺失或矛盾的證據不授權任何刪除。

在刪除前立即重新檢查精確路徑、所有權、完成狀態和排除項目。對已驗證的目標使用 Node.js 內建模組,不使用 force、萬用字元或跟隨符號連結。僅當會話和命名空間父目錄實際為空時才移除它們;保留其他任務金鑰和會話。確認選取的目標已不存在且排除項目仍在。如果已不存在,則不要建立任何內容。回報實際結果或具體限制;請勿建立替代筆記本、遷移或歸檔。

如果所需的合格刪除仍未完成,請保留所需的延續並回報具體的剩餘工作。未知或保留的記錄被排除在自動刪除之外,而不是允許刪除其父目錄。當強制性工作仍存在時,請勿聲明完全完成。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

相關技能