project-card-mergelisted
Install: claude install-skill SungFeng-Huang/research-cards
# Project Card Merge — consolidate cluster-appended progress (Mac-side)
## Backend
卡片讀寫經由 rewrite_lib 路由(obsidian 模式可用),但 Research-Projects hub 的 card id
為 Heptabase UUID——obsidian 模式需改用 vault 內對應卡的 id。主要工作流仍以 heptabase/both 為準。
The cluster session appends dated `📥 cluster 補充/進度 YYYY-MM-DD` blocks to a
project card via the `hb` bridge (append-only — it cannot overwrite). This skill
is the **Mac-side counterpart**: it merges those blocks (and any leftover
`📝 待補成 paper 級參考` brief) back into one coherent, focused, paper-reference-grade
card. Three-layer principle (same as the cards already follow):
**card = synthesis + 發想; raw logs stay in the codebase; keep paper-grade detail but no append sprawl.**
Mechanics live in `card-rewrite`'s `rewrite_lib` (builders + `finalize`); this
skill's `merge_lib` adds the Research-Projects index, a merge-readiness scan, and
a table builder.
```python
import sys, os; sys.path.insert(0, os.environ.get("CLAUDE_PLUGIN_ROOT", os.path.expanduser("~/.claude/skills/research-cards")) + "/skills/project-card-merge")
import merge_lib as M # M.L is rewrite_lib
```
## Step 1 — Pick the target card(s)
```bash
python3 ${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/skills/research-cards}/skills/project-card-merge/merge_lib.py # list project cards + which NEED MERGE
python3 ${CLAUDE_PLUGIN_ROOT:-$HOME/.claude/skills/research-cards}/skills/project-card-merge/merge_lib.py <cardId> # scan one (appended blocks, brief, size, figs)
```
- If the user n