qbarev/para-plugin

Obsidian PARA 保管庫でアーカイブを操作します。完了または放棄したプロジェクト(フォルダと、Todoist などのタスクアプリ内のプロジェクト)やノートをアーカイブに移動したり、既存のアーカイブを一覧表示したり、アーカイブから復元したりします。ユーザーが「これをアーカイブ」「アーカイブに移動」「プロジェクトを閉じる」「アーカイブには何がある?」「アーカイブを表示」「アーカイブから復元」「заархивируй」「перенеси в архив」「закрой проект」「что в архиве」「покажи архив」「верни из архива」「восстанови проект」と言ったときに使用します。

para-plugin とは?

このスキルは、Obsidian の PARA メソッドに基づいた保管庫内で、プロジェクトやノートのアーカイブを管理するためのものです。主な機能として、指定したターゲット(プロジェクトフォルダやノート)を `Archive/` ディレクトリに移動するアーカイブ、アーカイブの内容を一覧表示するリスト、アーカイブから元の場所に戻す復元の3つのサブコマンドを提供します。プロジェクトをアーカイブする際は、関連するタスクの処理(完了、移動、または保持)を確認し、プロジェクトの完了定義 (DoD) をチェックして完了か放棄かを判定します。また、プロジェクトの価値セクションを読み上げ、何が変わったかをユーザーに問いかけ、その回答をフロントマターに記録します。リスト表示では、プロジェクトの完了状況や期限を明確に表示し、復元時には元のフォルダ構造とタスクアプリの連携を復元します。このスキルは、Twitter や Slack などのAIエージェントプラットフォームで動作するように設計されており、ユーザーが自然言語で指示を出すだけで、複雑なアーカイブ操作を安全に実行できます。また、多言語対応 (LANG) により、ユーザーの言語設定に応じたメッセージを表示します。

対応~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に質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

アーカイブ

保管庫の 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 — フロントマターを編集する場合。「レガシーフィールド」

サブコマンド

$ARGUMENTS の最初の単語でサブコマンドを選択します。list と restore のみがキーワードです。 それ以外はアーカイブのターゲットなので、/archive project c はそのプロジェクトをアーカイブします。 空の $ARGUMENTS → 3つのサブコマンドを表示して質問します。


<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. ターゲットがスタンドアロンノートの場合 (Area、Resource、または Inbox/ からの浮遊ノート): 単一の .md ファイルを Archive/ に移動します。

    • Area は定義上継続中であり、通常はアーカイブされません。何を意味していたのか質問します (Tier 1.5) — 通常はノートが古くなったという意味であり、責任が終わったという意味ではありません。
    • アーカイブされていないプロジェクト内のレガシータスクノート: それを移動しても有用なものは壊れず、おそらく意図されたものではありません — 質問します (Tier 1.5)。タスクはバックエンドで閉じられているはずです。
  4. 移動前にベース名の衝突をチェックします (move.md、note-format.md)。重複があると、その名前へのすべてのリンクがあいまいになります — Tier 1.5、移動する代わりに質問します。

  5. ループを閉じる — プロジェクトのみ. 報告する前に、1つの質問をして回答を待ちます: archive.ask_changed 文字列。何が生み出されたかではなく (dod.md の条件2がすでに成果物をカバーしています)、終わったことで何が変わったのか、そしてその代償に見合う価値があったのかどうかです。

    質問する前に、project.value セクションを声に出して読みます — プロジェクトが開始されたときにユーザーが書き留めた利益 (note-format.md、「結果に関する3つのセクション」) — そして、それが実現したかどうかを 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. 各プロジェクトフォルダについて、概要のフロントマター (id、deadline) と、project.what_changed セクションの最初の行(セクションが存在する場合)を読み取ります。
  3. LANG で2つのセクションを印刷します。各セクションはアルファベット順で、ヘッダーにカウントが含まれます (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 文字列 — フロントマターがまったくありません。空のアーカイブも有効な回答です: そのまま伝えてください。


restore <target> — 何かを戻す

  1. ターゲットを見つける find-target.md に従い、操作は「アーカイブから復元」です。
  2. どこに戻すかを決定します。 プロジェクトは Projects/ に戻ります。ノートは、そのフロントマターが示す 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 で。固定文字列は 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", "какие проекты", "список проектов", "покажи проекты", "что у меня в работе", "заведи проект", "новый проект", "саммари по проекту", "обзор проекта", "что по проекту", "статус проекта", "где я по проекту", "добавь задачу", "заведи задачу".

関連スキル