Stage 1-C-1 完了報告(部分完遂版)¶
結論¶
| タスク | 結果 | 備考 |
|---|---|---|
| Task A CLAUDE.md 拡充版配置 | ⏸ 待機 | 拡充版 CLAUDE-md-expanded-*.md が Code 環境未到着 |
| Task B-1 被参照置換コマンド草案 | ✅ 完了 | 実行せず・草案のみ |
| Task B-2 中核 4 件 frontmatter 取得 | ✅ 完了 | kudo-context-routing / kudo-shared-storage-protocol / kudo-project-state-recovery / kudo-ecosystem-cascade-protocol |
| Task C-1 LaunchAgent plist 全件取得 | ✅ 完了 | 8 plist 確認 |
| Task C-2 catch-up 機構診断 | ✅ 完了 | 5 つの cron LaunchAgent が catch-up 機能なし |
| Task C-3 Stage 1-C-5 改修案草案 | ✅ 完了 | 実行せず・草案のみ |
| Task D 5 文書の Vault 配置 + watchlist Entry | ⏸ 待機 | 全 5 文書が Code 環境未到着 |
全タスク非破壊:書込みゼロ。読取り・調査・草案作成のみ。
Task A:CLAUDE.md 拡充版 Vault 配置 → ⏸ 待機¶
A-1. 到着確認結果¶
find ~ /mnt 2>/dev/null -maxdepth 6 -iname 'CLAUDE-md-expanded*' -o -iname 'CLAUDE-md-2026*'
→ 0 hit
/mnt/user-data も accessible でない。~/Downloads/、~/Desktop/ の最新ファイル列にも該当なし。
HANDOFF §A-1 規定通り、Task A 全項目を待機。拡充版到着次第、A-2(バックアップ)→ A-3(配置)→ A-4(8 項目検証)→ A-5(commit/push)を順次実行する。
A-2 / A-3 / A-4 / A-5 → 拡充版到着待ち¶
Task B-1:被参照置換コマンド草案¶
対象ファイル(実機 grep 結果)¶
grep -rln 'kudo-workflowy-double-save' ~/KUDO-Vault --include='*.md' で 17 ファイル:
memory/decisions/2026-05-18-kudo-vault-stage0-setup.md
.claude/skills/kudo/kudo-ai-error-watchlist/SKILL.md
.claude/skills/kudo/kudo-autonomous-execution-protocol/SKILL.md
.claude/skills/kudo/kudo-context-routing/SKILL.md
.claude/skills/kudo/kudo-cowork-code-handoff-protocol/SKILL.md
.claude/skills/kudo/kudo-gemini-image-bridge/SKILL.md
.claude/skills/kudo/kudo-html-publish/SKILL.md
.claude/skills/kudo/kudo-naming-unification-protocol/SKILL.md
.claude/skills/kudo/kudo-persist-settings/SKILL.md
.claude/skills/kudo/kudo-personal-settings-changelog/SKILL.md
.claude/skills/kudo/kudo-project-state-recovery/SKILL.md
.claude/skills/kudo/kudo-proposal-deck/SKILL.md
.claude/skills/kudo/kudo-schedule-budget/SKILL.md
.claude/skills/kudo/kudo-shared-storage-protocol/SKILL.md
.claude/skills/kudo/kudo-skill-cross-reference-resolver/SKILL.md
.claude/skills/kudo/kudo-skill-tree-ssot-map/SKILL.md
.claude/skills/kudo/kudo-workflowy-double-save/SKILL.md ← 自身
① 推奨実行順(Stage 1-C-2 着手時の手順)¶
# Step 0: 改訂版 kudo-triple-store-write/SKILL.md を Chat から受領
# Step 1: 既存スキル dir を git mv(履歴保持)
cd ~/KUDO-Vault
git mv .claude/skills/kudo/kudo-workflowy-double-save \
.claude/skills/kudo/kudo-triple-store-write
# Step 2: 改訂版 SKILL.md を新 dir に配置(git mv 直後の SKILL.md を上書き)
cp /path/to/chat-drafted-revised-SKILL.md \
~/KUDO-Vault/.claude/skills/kudo/kudo-triple-store-write/SKILL.md
# Step 3: dry-run(1 ファイルで挙動確認)
TARGET=$(grep -rln 'kudo-workflowy-double-save' ~/KUDO-Vault --include='*.md' | grep -v 'kudo-triple-store-write/SKILL.md' | head -1)
diff <(cat "$TARGET") <(sed 's/kudo-workflowy-double-save/kudo-triple-store-write/g' "$TARGET")
# Step 4: 一括置換(改訂版 SKILL.md 自身は触らない)
grep -rln 'kudo-workflowy-double-save' ~/KUDO-Vault --include='*.md' \
| grep -v 'kudo-triple-store-write/SKILL.md' \
| xargs sed -i '' 's/kudo-workflowy-double-save/kudo-triple-store-write/g'
# Step 5: 検証(自身以外で残存ゼロ確認)
grep -rln 'kudo-workflowy-double-save' ~/KUDO-Vault --include='*.md' \
| grep -v 'kudo-triple-store-write/SKILL.md'
# → 空であること
# Step 6: 各ファイル目視(特に kudo-persist-settings の 12 件参照)
# → 文脈崩れがないこと
# Step 7: git add / commit / push
git add -A
git commit -m "rename: kudo-workflowy-double-save → kudo-triple-store-write (Stage 1-C-2)"
git push origin master
② 注意点(実行前に検討すべき事項)¶
a) 改訂版 SKILL.md 自身は sed 対象から除外する(grep -v で)。理由:改訂版本文には新名称のみ書かれているはずなので、sed 対象に入れると新名称中の kudo-triple-store-write 周辺の文字列に誤マッチするリスクは無いが、安全のため除外。
b) frontmatter name: フィールド:改訂版を配置すれば name: kudo-triple-store-write になっている前提。sed 一括置換とは独立。
c) 自己参照(旧 SKILL.md 内の 5 件):改訂版で完全置換されるので、機械的 sed は不要。Chat 起草の改訂版が新名称で書かれていることが前提。
d) 歴史的記述(_claude_workspace_global/handoffs/ reports/)には触らない:grep 対象を ~/KUDO-Vault/ に限定。HANDOFF・report は当時の状況の記録なので原則改変しない。
③ 和文セクション参照 19 件のアンカー化対応表(Chat 起草必須)¶
機械的 sed では危険なため、Chat 起草の改訂版が新 anchor 体系を提供し、各ファイルで個別に書換える必要がある:
| ファイル:行 | 現在の参照(和文) | 候補 anchor 化 |
|---|---|---|
kudo-persist-settings/SKILL.md:38 |
kudo-workflowy-double-save §運用ルール SSOT |
kudo-triple-store-write#operating-rules |
kudo-persist-settings/SKILL.md:72 |
kudo-workflowy-double-save §運用ルール SSOT(一次ソース) |
同上 |
kudo-persist-settings/SKILL.md:87 |
kudo-workflowy-double-save §運用ルール SSOT(v3.0 で昇格) |
同上 |
kudo-persist-settings/SKILL.md:196 |
kudo-workflowy-double-save §運用ルール SSOT(WorkFlowy・v3.0) |
同上 |
kudo-persist-settings/SKILL.md:198 |
kudo-workflowy-double-save §運用ルール SSOT 参照 |
同上 |
kudo-persist-settings/SKILL.md:211 |
kudo-workflowy-double-save §運用ルール SSOT(v3.0 で昇格) |
同上 |
kudo-persist-settings/SKILL.md:284 |
kudo-workflowy-double-save §運用ルール SSOT §1(親IDロック) |
kudo-triple-store-write#parent-id-lock |
kudo-persist-settings/SKILL.md:491 |
kudo-workflowy-double-save §運用ルール SSOT §4(書込み前チェックリスト) |
kudo-triple-store-write#pre-write-checklist |
kudo-persist-settings/SKILL.md:556 |
kudo-workflowy-double-save §運用ルール SSOT §4 |
同上 |
kudo-persist-settings/SKILL.md:1049 |
kudo-sync-cycle §... → kudo-workflowy-double-save §... に置換 |
history 記述(触らない) |
kudo-schedule-budget/SKILL.md:16 |
kudo-workflowy-double-save §運用ルール SSOT |
kudo-triple-store-write#operating-rules |
kudo-proposal-deck/SKILL.md:16 |
同上 | 同上 |
kudo-context-routing/SKILL.md:72 |
kudo-workflowy-double-save §運用ルール SSOT 参照 |
同上 |
kudo-context-routing/SKILL.md:245 |
kudo-workflowy-double-save §運用ルール SSOT §読込先優先順位 |
kudo-triple-store-write#read-priority |
kudo-ai-error-watchlist/SKILL.md:274 |
kudo-workflowy-double-save §1 SSOT で「過去生成ログ」修正 |
history 記述(触らない) |
kudo-ai-error-watchlist/SKILL.md:278 |
kudo-workflowy-double-save §1 SSOT の参照ID修正 |
history 記述(触らない) |
kudo-naming-unification-protocol/SKILL.md:544 |
kudo-workflowy-double-save §1.1〜§1.3 |
kudo-triple-store-write#write-categories 等 |
→ Chat 起草の改訂版で 新 anchor 体系(#operating-rules / #parent-id-lock / #pre-write-checklist / #read-priority / #write-categories 等)を確定すれば、上記対応表に基づいて個別書換可能。
Task B-2:中核 4 件 frontmatter + 冒頭セクション取得¶
下記 4 件の frontmatter + 冒頭プロトコル定義部分(30-50 行)を verbatim で取得済み。本完了報告にはサマリのみ載せ、Chat 起草時に必要な verbatim 全文は Code が別途供給可。
① kudo-context-routing v1.2 (273 行)¶
- frontmatter:
name/descriptionのみの 2 行 minimal(version / parent / anchors 未定義) - 位置付け:動詞群5 SSOT スキル、4経路(claude.aiプロジェクト・WorkFlowy・Cowork・スキル)の経路設計
- 核心:命名規則の統一ルール(クライアント名で4経路ハブ連動)
- 主要セクション:このスキルの位置付け / 命名規則 / 4経路の役割分担 / 経路選択ルール / 自走判定 / Claude作業フォルダ規律 SSOT
- v1.2 新設:
_claude_workspace作業フォルダ規律 SSOT(命名・配置・4区分内部構造・確認プロトコル・chat↔ローカル↔Code3点接続)
② kudo-shared-storage-protocol v1.0 (356 行)¶
- frontmatter:唯一
verb_group: 5parent: null明示あり(他スキルと違いやや充実) - 位置付け:3 環境(Chat / Cowork / Code)共通参照可能な SSOT ストレージの確立
- 核心:
_claude_workspace_global/(Drive ID: 1EXyQOuWn2tvaBqBnhyeIhAH7Gox3jMsF)への集中 - 主要セクション:目的・核心思想 / 起動トリガー / フォルダ構造 / 各環境からのアクセス方法 / 新規バージョン主義
- v1.2 で §5.5 集中原則ガバナンス新設:違反禁止リスト・既存 SKILL 波及計画を内蔵
③ kudo-project-state-recovery v1.4 (144 行)¶
- frontmatter:
name/descriptionのみの 2 行 minimal - 位置付け:長期プロジェクトの状態再構成プロトコル
- 核心:状態再構成の優先順位(CLAUDE.md §4.3 が一次ソース)
- 主要セクション:状態再構成の優先順位(優先度1〜5)/ PART A 読む側 / PART B 書く側 / PART C 過剰撤退禁止
- v1.4 で
kudo-workflowy-double-saveへの参照:4 箇所(line 14, 38, 49, 139, 144) - v1.4 ハードコード除去:旧記述のノードIDを CLAUDE.md §4.3 参照に変更
④ kudo-ecosystem-cascade-protocol v1.2 (237 行)¶
- frontmatter:
name/descriptionのみの 2 行 minimal - 位置付け:4 層 SSOT 生態系(個人設定 / kudo-brand-tokens.json / SKILL.md×50 / CLAUDE.md global / memory)の層を跨ぐ書き換え腐敗防止
- 核心:Tier A/B/C 規律(ハードコードの可否を文脈別に 3 段階規律)
- 主要セクション:4 層 SSOT 構造 / Tier 規律 / カスケード編集順序(Phase 0〜6b) / validate_design_tokens.py 検証パイプライン / 既知失敗ケース DB
- CLAUDE.md global と密接に関連:Layer 3 として明示参照
Chat 起草支援用:verbatim 供給可¶
Chat が改訂起草に着手時、上記 4 件の任意セクション(特に kudo-context-routing §Claude作業フォルダ規律 SSOT、kudo-shared-storage-protocol §3 フォルダ構造、kudo-project-state-recovery §優先度1〜5、kudo-ecosystem-cascade-protocol §1 4層構造)の verbatim 全文を Code が即時供給可能。
Task C-1:LaunchAgent plist 全件取得¶
一覧(com.kudo. / com.kudotakuma. で 8 plist)¶
| Label | 種別 | Schedule | RunAtLoad | KeepAlive | catch-up |
|---|---|---|---|---|---|
| com.kudo.meeting-watcher | 常駐 | (none) | True | True | ✅ |
| com.kudo.regenerate-brand-tokens-css | cron | Mon 03:30 | (not set→false) | (not set) | ❌ |
| com.kudo.regenerate-ssot-map | cron | Sun 03:00 | False 明示 | (not set) | ❌ |
| com.kudo.skills-snapshot | cron | Daily 03:30 | False 明示 | (not set) | ❌ |
| com.kudo.stage1b2-pilot-observer | interval | StartInterval 3600 | True | (not set) | ✅ |
| com.kudo.validate-design-tokens | cron | Mon 03:15 | (not set→false) | (not set) | ❌ |
| com.kudo.validate-naming-consistency | cron | Mon 04:00 | False 明示 | (not set) | ❌ |
| com.kudotakuma.typeless-mic | 常駐 | (none) | True | True | ✅ |
各 plist の詳細¶
com.kudo.regenerate-ssot-map(最重要 cron)¶
Label: com.kudo.regenerate-ssot-map
ProgramArguments: [~/.claude/scripts/regenerate_ssot_map_weekly.sh]
StartCalendarInterval: {Weekday=0, Hour=3, Minute=0} ← 日曜 03:00
RunAtLoad: False ★ catch-up なし
KeepAlive: (not set)
StdOut: ~/.claude/skill-ssot-cron.stdout.log
StdErr: ~/.claude/skill-ssot-cron.stderr.log
com.kudo.skills-snapshot(auto-snapshot.sh)¶
Label: com.kudo.skills-snapshot
ProgramArguments: [/bin/bash, -c, ~/.claude/skills.git-mirror/auto-snapshot.sh]
StartCalendarInterval: {Hour=3, Minute=30} ← 毎日 03:30
RunAtLoad: False ★ catch-up なし(本日 03:56 boot で missed の原因)
KeepAlive: (not set)
StdOut: /tmp/kudo-skills-snapshot.out
StdErr: /tmp/kudo-skills-snapshot.err
com.kudo.validate-design-tokens¶
Label: com.kudo.validate-design-tokens
ProgramArguments: [~/.claude/scripts/.venv/bin/python, ~/.claude/scripts/validate_design_tokens.py]
StartCalendarInterval: {Weekday=1, Hour=3, Minute=15} ← 月曜 03:15
RunAtLoad: (not set, default false) ★ catch-up なし
KeepAlive: (not set)
StdOut: ~/Library/Logs/kudo-validate-design-tokens.log
StdErr: ~/Library/Logs/kudo-validate-design-tokens.err
com.kudo.regenerate-brand-tokens-css¶
Label: com.kudo.regenerate-brand-tokens-css
ProgramArguments: [~/.claude/scripts/.venv/bin/python, ~/.claude/scripts/generate_brand_tokens_css.py]
StartCalendarInterval: {Weekday=1, Hour=3, Minute=30} ← 月曜 03:30
RunAtLoad: (not set, default false) ★ catch-up なし
com.kudo.validate-naming-consistency¶
Label: com.kudo.validate-naming-consistency
ProgramArguments: [~/.claude/venv-naming/bin/python, ~/.claude/scripts/validate_naming_consistency.py]
StartCalendarInterval: {Weekday=1, Hour=4, Minute=0} ← 月曜 04:00
RunAtLoad: False ★ catch-up なし
Task C-2:catch-up 機構の現状診断¶
結論:5 つの cron LaunchAgent が catch-up 不能¶
| Agent | catch-up 状況 | 失効間隔 |
|---|---|---|
| com.kudo.regenerate-ssot-map(日曜) | ❌ Mac off で完全喪失 | 次回まで 最大 7 日 |
| com.kudo.skills-snapshot(毎日) | ❌ Mac off で完全喪失 | 次回まで 最大 1 日 |
| com.kudo.validate-design-tokens(月曜) | ❌ 同上 | 最大 7 日 |
| com.kudo.regenerate-brand-tokens-css(月曜) | ❌ 同上 | 最大 7 日 |
| com.kudo.validate-naming-consistency(月曜) | ❌ 同上 | 最大 7 日 |
詳細所見¶
1. RunAtLoad: True を持つのは常駐型 / interval 型のみ¶
| Agent | 用途 |
|---|---|
| com.kudo.meeting-watcher | 会議検出常駐 |
| com.kudo.stage1b2-pilot-observer | hourly interval(Stage 1-B2-R 観察用、現役) |
| com.kudotakuma.typeless-mic | マイク監視常駐 |
これらは launchd ロード時に即実行、KeepAlive: True のものはプロセス終了時に自動再起動。cron 系には RunAtLoad: True が無い。
2. macOS launchd の挙動¶
StartCalendarInterval 単独設定(RunAtLoad なし)の場合:
- 指定時刻に Mac が awake で launchd active なら実行
- 指定時刻に Mac off / sleep 中だった missed run は catch-up しない(macOS 12 以降の標準動作)
- 起動後の最初の指定時刻まで待つ
3. 実例(本日の状況)¶
- 2026-05-20 03:30 JST:
com.kudo.skills-snapshot予定時刻(Mac は前夜から off) - 2026-05-20 03:56 JST:Mac boot
- launchd は catch-up 走らず:
runs = 0、last exit code = (never exited) - 次回実行は 2026-05-21 03:30(明朝、Mac on なら)
同様の状況が regenerate-ssot-map(日曜 03:00)でも発生し得る。現状の最終 cron 成功は 2026-05-17 03:00(5 日前)。
4. 重い処理が boot 直後に走るリスク¶
RunAtLoad: True を追加した場合:
- Mac boot 時に validate_design_tokens.py(35451 bytes、47 SKILL.md スキャン)が走る → 起動時間遅延の可能性
- regenerate_ssot_map.py(26939 bytes、anchors 抽出 + reference walk)も同様
- generate_brand_tokens_css.py(5559 bytes、軽量)は問題なし
- auto-snapshot.sh(rsync + git)は I/O 重め、5 分程度の重さ
→ 単純な RunAtLoad: True 追加では「boot 時 + 指定時刻」の 1 日 2 回実行になり、特に skills-snapshot は同日 2 回実行で git commit が空になる(Stage 1-B+ で修正済みの挙動)。ロックファイルで「同日 2 回目スキップ」併用が必要。
Task C-3:Stage 1-C-5 改修案草案(実行せず)¶
① RunAtLoad: True を追加する候補 plist(5 件)¶
各 plist の <dict> 直下に以下を追加:
対象:
1. ~/Library/LaunchAgents/com.kudo.regenerate-ssot-map.plist(False 明示を True に変更)
2. ~/Library/LaunchAgents/com.kudo.skills-snapshot.plist(同上)
3. ~/Library/LaunchAgents/com.kudo.validate-design-tokens.plist(追加)
4. ~/Library/LaunchAgents/com.kudo.regenerate-brand-tokens-css.plist(追加)
5. ~/Library/LaunchAgents/com.kudo.validate-naming-consistency.plist(False 明示を True に変更)
② ロックファイル方式で「同日 2 回目スキップ」を組み込むスクリプト¶
候補スクリプト:
| スクリプト | 現状ロック | 必要追加 |
|---|---|---|
~/.claude/skills.git-mirror/auto-snapshot.sh |
Stage 1-B+ で porcelain scope 修正済み(同日空回り解消) | 追加不要(既に同日 2 回 OK) |
~/.claude/scripts/regenerate_ssot_map_weekly.sh |
なし | 要追加(重い処理) |
~/.claude/scripts/validate_design_tokens.py |
なし | 要追加 |
~/.claude/scripts/generate_brand_tokens_css.py |
なし | 軽量だが要追加 |
~/.claude/scripts/validate_naming_consistency.py |
なし | 要追加 |
ロック実装案(4 件のスクリプト先頭に追加)¶
# ~/.claude/scripts/regenerate_ssot_map_weekly.sh の先頭付近に追加
LOCK_DIR="$HOME/.cache/kudo"
LOCK_FILE="$LOCK_DIR/regenerate_ssot_map.last-run"
TODAY=$(date +%Y-%m-%d)
mkdir -p "$LOCK_DIR"
if [ -f "$LOCK_FILE" ] && [ "$(cat "$LOCK_FILE")" = "$TODAY" ]; then
echo "[$(date)] already ran today, skip" >> "$LOG"
exit 0
fi
echo "$TODAY" > "$LOCK_FILE"
Python スクリプトの場合は同等処理を冒頭に追加(pathlib.Path で実装)。
③ 改修順序とリスク評価¶
推奨順序(リスク低→高):
- com.kudo.regenerate-brand-tokens-css 最初に試す(処理軽量、副作用最小)
- com.kudo.skills-snapshot 次に(Stage 1-B+ でロック相当済み、副作用なし)
- com.kudo.validate-design-tokens 中量
- com.kudo.validate-naming-consistency 中量
- com.kudo.regenerate-ssot-map 重量(最後)
各 plist 改修前に .bak.YYYY-MM-DD 退避、改修後に launchctl bootout → launchctl bootstrap で reload、boot 時実行の dry-run 検証(起動時に走ったか log で確認)。
④ 残懸念¶
- 電源管理との干渉:macOS の
pmsetで power nap が有効になっていれば、sleep 中も一部の launchd job は走る。だがクリーンな対応はRunAtLoad: True+ ロック。 - 起動時間への影響:5 つ全てが boot 時に走ると、Mac boot 直後の数分間 CPU/IO 高負荷。
StartIntervalで boot 後 N 分待ってから走らせるオプションも検討可。 - ロックファイル方式の同期問題:複数 launchd job が同時に走ると lock 競合の可能性。
flock系の atomic lock 検討。
Task D:5 文書の Vault 配置 → ⏸ 待機¶
到着確認結果¶
find ~ /mnt 2>/dev/null -maxdepth 6 -iname 'RESEARCH-skill-ecosystem*' → 0 hit
find ~ /mnt 2>/dev/null -maxdepth 6 -iname 'DESIGN-kudo-triple-store-write*' → 0 hit
find ~ /mnt 2>/dev/null -maxdepth 6 -iname 'DESIGN-47-skill-health*' → 0 hit
find ~ /mnt 2>/dev/null -maxdepth 6 -iname '*watchlist-entry-pat-leak*' → 0 hit
find ~ /mnt 2>/dev/null -maxdepth 6 -iname 'STRATEGY-stage1c*' → 0 hit
全 5 文書が Code 環境未到着。Task D 全項目を待機。
到着次第、CLAUDE.md(拡充版)で定めた frontmatter を付与して以下に配置:
- 1, 2, 3, 5 → ~/KUDO-Vault/03-Resources/research/
- 4 → ~/KUDO-Vault/.claude/skills/kudo/kudo-ai-error-watchlist/SKILL.md への Entry 追記
各配置後 git add / commit / push。watchlist Entry 追加後の Entry 件数も報告予定。
実機調査中に発見した新たな問題(記録のみ・修正未実施)¶
問題 1:present_files 経由のファイル受け渡しが今セッションでは機能していない¶
5 文書 + CLAUDE.md 拡充版すべてが Code 環境に到着していない。/mnt/user-data も accessible でない。
過去セッションでは present_files が /mnt/user-data/uploads/ 経由で渡された事例があったが、現セッションでは同経路が空。
→ Chat 起草物の受け渡し経路の確認が必要。または、Chat 側で起草未完了の可能性。
問題 2:cron LaunchAgent の RunAtLoad 設定混在(3 種類)¶
- False 明示:regenerate-ssot-map, skills-snapshot, validate-naming-consistency
- 未設定(default false):regenerate-brand-tokens-css, validate-design-tokens
- True:cron 系には 1 件もなし
設定の意図的判断(False 明示)と単純な未設定が混在しており、Stage 1-C-5 改修時に「なぜ False 明示か」の経緯確認が必要。Cowork チャット履歴 or 工藤さんの記憶頼り。
問題 3:skills-snapshot の StartCalendarInterval は Weekday フィールドなし¶
com.kudo.skills-snapshot.plist の StartCalendarInterval は {Hour=3, Minute=30} のみで Weekday 指定なし → 毎日 03:30 に実行。
これは設計通り(HANDOFF・kudo-ecosystem-cascade-protocol で「skills-snapshot 毎日」と整合)だが、他の cron が全て週次(Weekday 指定)の中で例外的。Stage 1-C-5 改修時の混同を避けるため、改修案には「skills-snapshot は毎日」と明記必要。
工藤さん・Chat への申し送り¶
1. Chat 側へ:起草物の受け渡し経路の確認¶
5 文書 + CLAUDE.md 拡充版が Code 環境に到着していない。以下のいずれか:
- Chat 側で present_files 経由の送付が必要だが未実施
- Chat 側で起草が未完了
- present_files の経路が今セッションでは機能していない
Chat 側で起草状況を確認のうえ、各文書を Code 環境に送付してほしい。送付後に Stage 1-C-1 の Task A / D を再開する。
2. Chat 側へ:Stage 1-C-2 着手前に Code から供給可能なもの¶
kudo-workflowy-double-saveSKILL.md verbatim 全文(要請時)- 中核 4 件の任意セクション verbatim 全文(要請時)
- 47 スキル frontmatter の生 YAML 抽出データ(B-1 表の元データ)
- 被参照 17 ファイルの該当行抜粋(rename grep 一括置換時の対象)
3. 工藤さんへ:Stage 1-C-5 改修方針の判断要請¶
C-3 改修案に対する判断:
- A 案:5 plist 全てに
RunAtLoad: True追加 + 4 スクリプトに同日重複防止ロック追加(推奨) - B 案:skills-snapshot のみ
RunAtLoad: True追加(最小変更) - C 案:何もしない(cron missed のリスクを受け入れる)
→ Stage 1-C-5 着手時の HANDOFF で確定。今回は調査のみで草案化までで停止。
4. 工藤さんへ:Cowork セッションで daily-chat-digest 確認は依然申し送り¶
Stage 1-C 着手準備完了報告 §A-6 で申し送った Cowork tasks(daily-chat-digest-2330 等)の生存・最終実行時刻の確認は本 HANDOFF でも実施未了(Code 範囲外)。Cowork セッションで mcp__scheduled-tasks__list_scheduled_tasks 実行をお願いしたい。
検証チェックリスト¶
- Task A-1:CLAUDE.md 拡充版到着確認 → 未着・待機
- Task A-2〜A-5:拡充版到着後に実施
- Task B-1:被参照置換コマンド草案を本報告に含める(17 ファイル / 19 件 anchor 対応表)
- Task B-2:中核 4 件の frontmatter + 主要セクション取得(kudo-context-routing / kudo-shared-storage-protocol / kudo-project-state-recovery / kudo-ecosystem-cascade-protocol)
- Task C-1:LaunchAgent plist 全件取得(8 件、5 cron + 3 常駐/interval)
- Task C-2:catch-up 機構の現状診断(5 cron が catch-up 不能と判明)
- Task C-3:Stage 1-C-5 改修案草案(5 plist 改修 + 4 スクリプトロック)
- Task D:5 文書配置 → 全 5 件未着・待機
- 本 HANDOFF では Stage 1-C-2 以降の実作業(SKILL.md 改訂・LaunchAgent 改修)は実施せず
ファイル一覧¶
新規作成¶
~/working/_claude_workspace_global/reports/stage1c-1-completion-2026-05-20.md(本ファイル)
変更¶
- なし(全タスク非破壊・読取と調査のみ)
未配置(present_files 待ち)¶
~/KUDO-Vault/CLAUDE.mdへの拡充版上書き~/KUDO-Vault/03-Resources/research/配下 4 文書~/KUDO-Vault/.claude/skills/kudo/kudo-ai-error-watchlist/SKILL.mdへの Entry 追記