今は着手しない。条件がそろったら計画へ。
docsweep は、AI や人が作る作業 Markdown を状態・期限・安全な archive で整える道具です。 「何からやる?」「これは寝かせる?」「もう片づけていい?」を、同じルールで扱えます。
Python 3.10+ / Windows・macOS・Linux / CLI + Web UI + MCP / MIT License
S-02 · Install
配布は PyPI です。別バイナリは作らず、Python の module として起動します。
コアだけなら 1 行目。Web UI・対話レビュー・MCP まで使うなら 2 行目を選びます。
pip install docsweep
pip install 'docsweep[all]'
extras は web / review / mcp /
watch / resurrect / all があります。
初回だけ init を実行します。設定は全 OS 共通で ~/.docsweep/ に置かれます。
python -m docsweep init
PATH を汚さない。docsweep ... は Scripts/bin が PATH にある人向けの短縮形です。
何も思い出せない状態でも、brief が「まずこれ」を 1 件に断定します。
python -m docsweep brief # cwd のプロジェクト
python -m docsweep brief --all # 全プロジェクト横並び
python -m docsweep cross # 横断の俯瞰
画面で見渡したいときは Web UI を起動します。バインドは 127.0.0.1 固定です。
python -m docsweep serve --root ~/dev
python -m docsweep mcp を登録します。
再現性を上げるなら command に Python 実行ファイルの絶対パスを指定してください。
各プロジェクトへ運用ルールを配るときは python -m docsweep inject、
新しい作業メモは python -m docsweep new plan <topic> で作ります。
S-03 · State model
H1 ラベルと frontmatter の docsweep_state を同期し、状態ごとに「次にできる操作」を決めます。
これが、AI と人が同じ運用を共有する土台です。
「完了」と「様子見」は別の状態です。様子見は守る。完了・廃止だけを archive 対象にします。
今は着手しない。条件がそろったら計画へ。
やることを残す。古くなれば要判断として見える。
現在の仕事。期限があれば「今日」と「やり忘れ」に出る。
直ったが再発確認中。sweep は勝手に触らない。
判断済み。archive へ移せる。
不要と判断。削除せず archive へ隔離する。
S-04 · Daily loop
判断の粒度を小さくします。毎回この流れを完璧にやる必要はありません。迷いが出た時だけ、同じ入口に戻れます。
brief / triage で、残作業から今やる 1 件を選びます。
計画・実行中・様子見を、H1 と frontmatter で揃えます。AI も同じ操作を使います。
「実装済みなのに計画」のズレを減らす。修正後は様子見へ。卒業期限を付け、必要なら今回だけ日数も変えられます。
早すぎる完了にも、放置にも寄らない。期限到来分を下見し、昇格・archive を実行します。削除はしません。
現役フォルダが、いまの仕事だけになる。S-05 · Watching
「もう閉じてよいか」という曖昧な記憶を、見直す日付へ変えます。 それでも最終的に archive へ送る判断は、明示操作のままです。
期限は「自動削除の時刻」ではなく、再確認する合図です。到来分だけを下見してから昇格します。
due.default_offset_days.plan_watching と
bugfix_watching で、様子見の標準日数を持てます。
設定ファイルを変えず、その状態遷移にだけ適用されます。MCP なら watching_days=5 です。
python -m docsweep apply --path <md> \
--action relabel --to watching --watching-days 5
due 到来(当日を含む)かつ様子見の文書だけが対象です。期限が無いもの・未来のものは動きません。
python -m docsweep promote --due-expired --dry-run
python -m docsweep promote --due-expired
promote --due-expired / --watching-days は v0.5.0 で追加しました。
それ以前の版では、様子見からの昇格は手動のラベル変更で行います。
S-06 · Interfaces
入口が違っても、結果のルールがずれません。Web UI は新しい特権を持たず、CLI / MCP と同じ内部関数を呼びます。
看板で、期限・やり忘れ・様子見を見渡す。カードで状態や期日を操作する。
dry-run、JSON、CI、定期処理。確認できる出力を先に取り、明示して実行する。
自然言語の入口から brief、triage、apply、promote を呼び、AI の行動を記録可能にする。
S-07 · Boundaries
物理削除の口を持たず、完了・廃止は archive へ。過去の判断を失いません。
期限到来は「確認する時期」。自動で完了や archive にはしません。
CLI、MCP、Web UI の明示操作で初めて状態が変わります。dry-run で先に対象も確認できます。
S-08 · FAQ
状態を変える操作をしない限り、本文には触れません。archive も移動であって削除ではなく、
物理削除の口を実装として持っていません。CLI は --dry-run で先に対象を確認できます。
片づきません。due は「もう一度見る合図」です。完了・廃止・昇格は、人または明示的な操作でだけ起きます。
様子見の文書は sweep の自動移送対象からも外れています。
既定はプロジェクト相対の docs/local/ ですが、設定で変えられます。
Git ignore された非公開の queue を使う運用も想定していて、その場合は書き込み前に
ignore されているかを確認します。
使えます。cross と SQLite 索引で、リポジトリをまたいだ優先順位を見渡せます。
プロジェクト単位で有効・無効も切り替えられます。
MCP と CLI は人と同じ状態モデル・同じ境界の上で動きます。
--auto / --json は非対話を厳守するので、プロンプトで止まりません。
一括で大量に動かすときは 2 段階の確認が入ります。