Community生產力與協作github.com

qbarev/para-plugin

在 Obsidian PARA 資料庫中處理「封存」——將已完成或已放棄的專案(資料夾及待辦事項應用程式中的對應項目,例如 Todoist)或筆記移至封存區、列出封存區內容,或將項目從封存區還原至使用中的資料夾。

para-plugin 是什麼?

這個技能讓 AI 助手能夠在 Obsidian PARA 資料庫中管理封存操作。它專為處理已結束或已擱置的項目而設計,提供三種主要指令:將目標(專案資料夾或獨立筆記)移至封存區 `Archive/`、列出封存區內容,以及將項目從封存區還原回 `Projects/`、`Areas/` 或 `Resources/` 等使用中的資料夾。對於專案,它還會處理待辦事項(例如 Todoist)的配對操作,確保前端資料夾和後端待辦事項都被正確封存或還原。此技能特別強調封存是「移動」而非「刪除」;永久刪除需使用 `/remove` 指令。它支援多種觸發詞,包括英文和俄文,例如「archive this」、「move to archive」、「close the project」、「заархивируй」、「верни из архива」等。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/qbarev/para-plugin/tree/HEAD/skills/archive

Installed? Explore more 生產力與協作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

封存區

資料庫中的 Archive/ 區域:所有已完成或已擱置的內容都會移到這裡,而且封存永遠是移動——絕不是刪除。永久刪除是 /remove。專案的後端配對會與其資料夾一起封存和還原。

基礎層

在行動之前閱讀,每個檔案相對於此技能的基礎目錄為 ../../para/<file>.md——這些檔案包含共享規則,請勿憑記憶重述:

  • ../../para/paths.md——始終需要,包括「語言」:下面的字串來自 lang/<LANG>.md
  • ../../para/find-target.md——用於接受目標的子指令
  • ../../para/move.md——始終需要
  • ../../para/confirm.md——始終需要
  • ../../para/dod.md——當目標是專案時需要
  • ../../para/tasks.md——當目標是專案時需要:操作、配對、區域專案
  • ../../para/note-format.md——當編輯 frontmatter 時需要;「舊版欄位」

子指令

$ARGUMENTS 的第一個單字決定子指令。list 和 restore 是唯一的關鍵字——其他任何內容都是封存的目標,所以 /archive project c 會封存該專案。空的 $ARGUMENTS → 顯示三個子指令並詢問。


<target> — 放入封存區

  1. 尋找目標 根據 find-target.md,操作為「封存」。

  2. 如果目標是專案:

    • 先處理開啟的任務。 讀取配對專案的任務(task.list,開啟中,帶有 project_ref)。如果有任務開啟,列出它們並詢問一次(Tier 1.5)要怎麼處理:完成它們(對每個任務執行 task.complete)、將它們移動到一個區域專案(使用 area 參數執行 task.move),或者將它們留在已封存的專案內。如果配接器標記 task.complete「不支援」,則第一個選項會改為 archive.close_in_app 字串,並且不會為此呼叫任何內容。在繼續之前先取得答案。在 pairing: separate 模式下,一個未配對的專案如果帶有舊版的 Tasks/ 資料夾,則沒有後端端;dod.md 說明了如何檢查其任務。在 pairing: none 模式下,任務是專案自己的 Tasks/ 筆記,並會隨資料夾一起移動。
    • 套用 dod.md 並指出所有不成立的條件。該檔案會決定結果是「已完成」還是「已放棄」;請勿在此重現它的推理過程,也不要將其軟化。
    • 將整個資料夾(內部結構不變)從 Projects/PROJ-xxxx <title>/ 移動到 Archive/PROJ-xxxx <title>/。名稱保持不變:ID 會與專案終生綁定,並且 ID 發佈程序會掃描 Archive/ 以保持其保留狀態(project-id.md)。
    • 當有配對時(在 pairing: none 模式下也總是執行;在那裡是空操作),執行 project.archive。保留 tasks_ref: 在概覽中——還原時需要它。
    • 舊版欄位(status 等)保持原樣(note-format.md):一個已封存的專案會保留其歷史。
  3. 如果目標是獨立筆記(區域、資源或來自 Inbox/ 的孤立筆記):將單一 .md 檔案移動到 Archive/。

    • 區域本質上是持續進行的,通常不應封存。詢問使用者的意圖(Tier 1.5)——通常表示筆記已過時,而不是責任結束。
    • 位於未被封存的專案內的舊版任務筆記:移動它不會破壞任何有用的東西,而且很可能不是使用者的意圖——請詢問(Tier 1.5)。任務現在應該在後端關閉。
  4. 在移動前檢查基礎名稱是否有衝突(move.md、note-format.md)。重複名稱會使所有指向該名稱的連結變得模糊——Tier 1.5,詢問而非移動。

  5. 關閉循環——僅限專案。 在回報之前,提出一個問題並等待答案:archive.ask_changed 字串。不是問產出了什麼——dod.md 的條件 2 已經涵蓋了產出——而是問現在它結束了,有什麼不同,以及它是否值得所付出的代價。

    在提問之前,大聲讀出 project.value 區段——使用者在專案開始時寫下的好處(note-format.md,「關於成果的三個部分」)——並使用 archive.expected 字串({value} = 他們寫下的內容,例如「每週減少 5 小時的審查時間」)詢問它是否實現了。如果該區段為空或不存在,則直接提問,不要憑空創造一個期望。

    在概覽主體的最後寫入 project.what_changed 區段。其第一行是根據 dod.md 得出的結果——project.outcome.completed 或 project.outcome.abandoned 字串({reason} 為使用者的話)——然後是使用者用自己的話回答的內容;不要用自己的話總結。如果答案提到了某個比專案更長久的東西,那就是 dod.md 的條件 4;將其路由到 Areas/ 或 Resources/,而不是留在封存區中。

    如果使用者不想回答,則只寫入結果行並說明跳過了循環。切勿憑空捏造其餘內容。

  6. 回報:移動了什麼、它的新路徑、結果行、開啟的任務發生了什麼、後端專案是否已封存、以及任何警告。


list — 顯示封存區內容

唯讀。切勿打開此處列出的名稱以外的筆記。

  1. 列出 Archive/——包括專案資料夾和鬆散的 .md 檔案。
  2. 對於每個專案資料夾,讀取概覽 frontmatter(id、deadline)以及 project.what_changed 區段的第一行(如果該區段存在的話)。
  3. 使用 LANG 語言列印兩個區段,每個區段按字母順序排列,並在標題中顯示計數(archive.list.projects 和 archive.list.notes 字串)。顯示的結果對於已完成的專案,是去掉句點的第一行;對於已放棄的專案,則是冒號前的單詞(不重複原因);截止日期使用 archive.list.deadline 字串;以下使用英文字串顯示:
**已封存的專案 (N)**
1. PROJ-0005 專案 D — 已完成,截止日期 2026-09-30
2. PROJ-0007 專案 F — 已放棄
3. PROJ-0003 專案 C — 無記錄的結果
4. 舊專案 — 無後設資料

**已封存的筆記 (N)**
1. 某個筆記

僅當 project.what_changed 區段的第一個非空白行恰好是 project.outcome.completed 字串,或以 project.outcome.abandoned 字串開頭直到其冒號時,才讀取結果。否則——該區段缺失,或者以使用者自己的話開頭,就像在此規則之前封存的專案——則列印 archive.no_outcome 字串;切勿從自由文字或舊版 status 推斷結果。common.no_metadata 字串——完全沒有 frontmatter。空的封存區也是一個有效的答案:直接說清楚。


restore <target> — 將東西帶回來

  1. 尋找目標 根據 find-target.md,操作為「從封存區還原」。
  2. 確定它要回到哪裡。 專案回到 Projects/。筆記回到其 frontmatter 暗示的 PARA 資料夾——area/<slug> → Areas/,resource/<slug> → Resources/。如果標籤沒有說明,或者筆記早於此慣例,則詢問它應該屬於哪裡。任何東西都不會還原到 Inbox/——它不是一個目的地(paths.md)。
  3. 如上檢查基礎名稱是否有衝突,然後移動。
  4. 任務端——僅限專案。 使用 ref 執行 project.restore。在 pairing: separate 模式下且沒有 tasks_ref: 時,提供建立配對的選項(tasks.md「配對」);如果同意,則執行 project.create,添加 tasks_ref: 鍵並填入值。在 pairing: none 模式下,沒有要提供的配對。保持 project.dod 區段和 project.what_changed 區段中的已勾選核取方塊不變——編輯它們是 Tier 2 且很少需要。
  5. 回報:什麼回來了、回到哪裡、以及其後端配對的狀態。

注意事項

  • 永遠不要在這裡刪除任何東西。封存永遠是移動到 Archive/;如果使用者想要刪除某些東西,請使用 /remove。
  • 所有面向使用者的文字和 LANG 中的每個 frontmatter 值;固定字串來自 lang/<LANG>.md。

Individual skills in this repo

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

qbarev/para-plugin

Work with Areas in the Obsidian PARA vault — create an area of ongoing responsibility, or review which areas have gone quiet and what has drifted in them. Use when the user says "create an area", "new area", "review the areas", "which areas have gone quiet", "заведи область", "новая сфера", "добавь область", "обзор областей", "что по областям", "какие сферы провисают", "ревью сфер".

qbarev/para-plugin

Work with the inbox of the PARA vault, which lives in the task app's inbox — capture a raw thought into it, list what is sitting there unprocessed, or process captures one by one into their proper PARA folder. Use when the user wants to capture a note, mentions their task app's inbox (Todoist «Входящие», for example), or says "capture this", "add to the inbox", "what is in the inbox", "process the inbox", "запиши", "закинь в инбокс", "что в инбоксе", "покажи инбокс", "разбери инбокс", "разгреби инбокс".

qbarev/para-plugin

Set up a folder as a PARA vault run by this plugin, or bring an already set-up vault up to date — detect what the folder is, ask the setup questions one at a time, show one plan, apply it on one «yes», report. Re-running fills in what is missing and migrates an older vault schema. Use when the user says "set up the vault", "init the vault", "initialise PARA", "migrate the vault", "run /para:init", "настрой хранилище", "инициализируй хранилище", "подключи PARA", "мигрируй хранилище".

qbarev/para-plugin

Work with Projects in the Obsidian PARA vault and their pairs in the task app — list the active projects, create a project (folder plus a project in the task app), summarize where a project stands, or add a task to a project in the task app (Todoist, for example). Use when the user says "list projects", "show projects", "what am I working on", "create a project", "new project", "project overview", "project status", "add a task", "какие проекты", "список проектов", "покажи проекты", "что у меня в работе", "заведи проект", "новый проект", "саммари по проекту", "обзор проекта", "что по проекту", "статус проекта", "где я по проекту", "добавь задачу", "заведи задачу".

相關技能