knowledge-flushlisted
Install: claude install-skill choiyounggi/dev-loop
# knowledge-flush — queued insights → verified wiki PR
Turn the `★ Insight` candidates harvested from your sessions into a wiki
contribution, **PR-only** — you (the repo owner) review each PR and merge or
reject it. This skill NEVER auto-merges and NEVER pushes to `main`.
The queue lives at `~/.dev-loop/queue/*.jsonl` (written by the Stop hook). Each
row is a candidate: `trigger, directive, why, evidence, domain, tags, content`.
## Non-negotiable order (a PreToolUse gate enforces it)
`hooks/pre-flush-pr-gate.sh` blocks `gh pr create` on a knowledge branch unless
an `INGEST_REPORT.md` with three filled sections exists. So do the work first:
0. **Acquire the shared flush lock — before anything else, including the
checkout reset in step 1.** This skill and the `hooks/auto-flush.sh` Stop
hook are the two entry points that drain the same queue; both serialize
through the same lock (`scripts/flush-lock.sh`, issue #77).
Generate this run's id **once, here**, and record it — **every** later
`flush-lock.sh` call in this flush (the abort-path release below, and
step 5's release) must be prefixed with it. This is mandatory, not a
style choice: each step in this skill runs in its own fresh shell, so
nothing carries between them on its own — an unprefixed call computes a
brand-new run id that no longer matches the one that acquired the lock,
so `release` is refused as a foreign caller and the lock leaks for the
full TTL.
```sh
RUNID="flush-$(da