領域(Areas)
領域是沒有結束日期的持續責任——健康、財務、職涯。 它們不是專案,也永遠不會「完成」。一個已經沉寂的領域正是此技能旨在揭露的:與專案不同,沒有任何跡象會表明一個領域已被忽略。
領域如何組織不在這裡決定。 areas.md 負責定義模型:是否有分組層、群組如何命名、哪個 frontmatter 欄位記錄群組,以及新筆記應放在何處。此技能持有演算法並讀取模型——它永遠不會硬編碼群組名稱或假設有多少個群組。
基礎層
在採取行動之前閱讀,每個檔案相對於此技能的基礎目錄為 ../../para/<file>.md——這些檔案包含共享規則,不要憑記憶重述:
../../para/paths.md—— 總是包含,包括「語言」:下面的字串來自lang/<LANG>.md.claude/para/areas.md(儲存庫根目錄下的庫設定)—— 總是包含;沒有模型,此技能就沒有意義../../para/note-format.md—— 用於create;用於review下的TASKS = files和「舊有欄位」../../para/find-target.md—— 當review需要解析一個命名的領域時../../para/confirm.md——create會寫入;review不寫任何內容../../para/thresholds.md—— 用於review
子命令
$ARGUMENTS 的第一個單詞決定子命令:create 或 review。空值 → 顯示兩者並詢問。
create <name> —— 開始一個領域
- 從磁碟讀取
Templates/Area.md,逐字讀取。 - 決定群組。 從描述中選擇
areas.md中GROUPS列出的一個值。如果確實不清楚,請詢問——分組欄位決定了檔案存放位置,因此不能留空。 若GROUPING = none,則此步驟不適用。 - 填入 frontmatter,依照
note-format.md中領域行的模式:title、tags: [area/<slug>],其中 slug 依照note-format.md填入,如果模型有分組欄位,則加入該欄位。 - 填入內容:
common.links區段——相關筆記的 wiki 連結,否則使用模板的空白-。area.current_state區段——此責任目前的狀態,以使用者自己的話從描述中獲取。如果他們沒有提及,則留空。area.notes區段——留空;它會隨時間累積。
- 寫入到
areas.md中PLACEMENT給出的路徑,如果描述暗示子資料夾則深入。首先檢查基本檔名是否與整個庫衝突。 - 報告路徑和群組。
如果描述有結束狀態和目標,那它就是一個專案,而不是領域——請說明並提供 /projects create。
review —— 有哪些已沉寂
唯讀。回答「我的哪些責任我沒有在看」。帶有參數時,僅檢視該領域;無參數時,檢視 GROUPS 列出的每個群組——無論有多少個。
-
遞迴遍歷
Areas/。對於每個筆記:路徑、分組欄位和修改時間(stat -f '%m %N')。在TASKS = files下,排除*/Tasks/*:那些是任務筆記,不是領域筆記(note-format.md「舊有欄位」)。 -
讀取每個筆記的 frontmatter,以及存在的
area.current_state區段。不要讀取完整的內容——這是一次掃描,不是對每個筆記的摘要。 -
計算每個群組:有多少筆記、該群組最後一次被觸及的時間,以及哪些個別筆記已超過
thresholds.md中的領域沉寂閾值,該閾值故意設定得比專案的寬鬆得多。 -
僅標記實際觸發的項目:
- 一個完全沒有任何筆記的群組;
- 超過該閾值的筆記——說明已經過了多久,而不是說它不好;
- 違反
PLACEMENT_CHECK的筆記——其分組欄位與所在資料夾不一致。當模型設定PLACEMENT_CHECK = none時跳過; - 一個帶有空白的
area/標籤 slug 的領域筆記; - 完全沒有 frontmatter 的筆記(早於該慣例——陳述事實,不要遷移它);
common.links區段中的懸掛 wiki 連結;- 一個包含看起來像專案工作的領域——一個帶有結束狀態的目標。指出並提供將其拆分出來。
-
以
LANG渲染,按照REVIEW_GROUPING的設定,丟棄任何沒有需要報告的群組,使用areas.review.*字串。輸出的確切格式存放在areas.md中——它依賴於模型,因此寫在模型所在的位置。 -
不寫任何內容。 如果檢視發現了值得做的事情,說出來並讓使用者決定。
備註
- 領域中的沉寂是資訊,不是評判。要事實地報告——「74 天未更改」,絕不要說「你放棄了它」。
- 領域很少被歸檔;持續的責任不會結束。如果被要求歸檔一個,那通常意味著筆記過時了,而不是責任過時了——請參閱
/archive。 - 一切內容都在
LANG中。