---
name: moc-split
description: 肥大化した MOC を分割して親子構造にする。TRIGGER: 「MOCが大きすぎる」「分割したい」「サブテーマが独立し始めた」など、既存 MOC の分割を求められたとき。
user-invocable: true
allowed-tools: Bash, Read, Write, Edit, Glob, Grep, Skill
context: fork
model: sonnet
---

# MOC Split

## Run

### Step 1: 切り出し対象の島を見つける

```bash
obsidian outline path="Brain/MOC/<対象MOC>.md" format=json
```

リンク密度と 2-hop 結果から独立した塊を見つける。切り出すのは、特定グループが8件以上あり、外部より内部結合が強く、独立した説明ができるサブテーマに限る。種別ではなくサブテーマ単位で切る。method 型は方法のまとまりで切り、定義だけ・根拠だけの孤立 MOC を量産しない。

### Step 2: 子 MOC を作る

`moc-build` を呼んで子 MOC を新規作成する。`moc-build` には親 MOC のタイトルを `Up:` の対象として渡し、`moc_type` は原則親から継承するよう指示する。子 MOC の内部フォーマットは `moc-build` の責任範囲。

重要な bridge note は親または両方に残し、親子で双方向リンクを保つ。PermanentのWikiLinkの後に説明文を付けない（命題形タイトルが説明を兼ねる）。

### Step 3: 親を更新する

親 MOC から切り出したノートの詳細リストを削る。`## 📁 テーマ別MOC` セクション（最初の見出し。なければ作る）に子 MOC リンクを `- [[子MOC名]] — スコープの説明` の形で置く。子 MOC が適切な root からも参照されるよう `moc-add` で配置する。

### Step 4: 監査する

```bash
python3 ".claude/skills/moc-split/scripts/audit_moc_split.py" --path "Brain/MOC/<親MOC>.md" --min-sections 2 --min-links-per-section 3 --split-threshold 8
python3 ".claude/skills/moc-split/scripts/audit_moc_split.py" --path "Brain/MOC/<子MOC>.md" --require-up-link --min-sections 2 --min-links-per-section 3 --split-threshold 8
```

親子のどちらも監査が通るまで完了扱いにしない。さらに `SPLIT_SUGGESTION:` が出たら、再分割や root の中間化を検討する。
