| name | exclusions |
| description | Append-only Do-Not-Build registry. Each exclusion carries a reason, an owning competitor, and a reopen_trigger that says what evidence would unblock it. Future runs auto-check new ideas against the registry with Korean-aware char-bigram fuzzy match. Use when an idea overlaps with an established competitor (any established competitor in your space), when a previous pivot was killed, or when you want a project's institutional memory to survive across PMs. |
| argument-hint | [add|check|list] <idea or phrase> |
| allowed-tools | ["Read","Write","Bash"] |
| model | inherit |
Exclusions Registry โ Do Not Build, with Reason
Running for: $ARGUMENTS
Core Goal
- "์ง๊ธ ๋ง๋ค์ง ์๋๋ค"์ ์๊ตฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ตฌ์ถํ๋ค. ๋งค hplan run๋ง๋ค ํ๋ฐ๋์ง ์๋๋ก
harness/exclusions.jsonl append-only.
- ๊ฐ exclusion์
reopen_trigger๋ฅผ ๋ช
์ โ ์ด๋ค evidence๊ฐ ์ ๊ธ์ ํธ๋์ง ์ฌ์ ์ ์ โ ๊ฐ์ ์์ด๋์ด๋ฅผ 6๊ฐ์ ๋ค์ ๋ค์ ๋ค๊ณ ์๋ ๊ฐ์ ์๋ฆฌ๋ก ๋๋ฌ.
- ์ ์์ด๋์ด๊ฐ ๋ค์ด์ค๋ฉด token Jaccard + char-bigram Jaccard ์ต๋๊ฐ์ผ๋ก collision detect (ํ๊ตญ์ด ํํ์ ๋ฏธ๋ถ๋ฆฌ์๋ ๊ฐํจ).
Trigger Gate
Use This Skill When
evidence-rubric ์ ์๊ฐ ๋ฎ์๋ฐ ์์ญ์ด ์ด๋ฏธ ์ ์ ๋ ๊ฒ ๊ฐ์ ๋
- ๋ช
์์ ์ผ๋ก "์ด๊ฑด ์ ๋ง๋ค ๊ฑฐ๋ค"๋ฅผ ๊ธฐ๋กํ๊ณ ์ถ์ ๋
- ์ ์์ด๋์ด๊ฐ ๊ณผ๊ฑฐ pivot/hold์ ๊ฒน์น๋์ง ํ์ธํ๊ณ ์ถ์ ๋
- ํ onboarding โ ์ PM์ด ๋ค์ด์์ ๋ "์ด๊ฑด ์ ์ ๋ง๋ค์๋" ๋ต๋ณ ์ ๊ณต
Route to Other Skills When
- COLLISION ๊ฐ์ง + reopen_trigger ์ถฉ์กฑ ๊ฐ๋ฅ โ
evidence-rubric ์ฌ์คํ (์์ ๋ wedge๋ก)
- COLLISION ๊ฐ์ง + reopen_trigger ์ถฉ์กฑ ๋ถ๊ฐ โ
decision-log ์ hold ๋๋ pivot ๊ธฐ๋ก
- CLEAR ๊ฒฐ๊ณผ โ Evidence Gate ์ ์ ์งํ
- ๊ฒฝ์ ์์ฒด๋ฅผ ๊น์ด ๋ถ์ํด์ผ ํ ๋ โ
architect/strategy --focus moat ๋๋ references/competitive-landscape-superpowers-gstack.md
Boundary Checks
- โ ์๊ตฌ ์ญ์ ์์ (append-only). ์๋ชป ์ถ๊ฐํ๋ฉด ์ ํญ๋ชฉ์ผ๋ก supersede.
- โ Jaccard 0.40 threshold๋ ๋ณด์์ default. ํ๊ตญ์ด 1-2 ๋จ์ด ์ฐจ์ด๋ก miss ๊ฐ๋ฅ โ verify ๊ถ์ฅ.
Inputs
python3 hplan/scripts/exclusions_registry.py add "AI marketing copy generator" \
--why "the existing incumbents ์ ์ " \
--reopen "์ํฐํ๋ผ์ด์ฆ ์ปดํ๋ผ์ด์ธ์ค ์ธํฐ๋ทฐ 3๊ฑด+" \
--competitor "Incumbent A" --competitor "Incumbent B"
python3 hplan/scripts/exclusions_registry.py check "generic AI marketing copy tool"
python3 hplan/scripts/exclusions_registry.py list
Steps
- Always
check first when a new idea arrives โ even before evidence-rubric.
- If COLLISION + reopen unmet โ STOP, route to decision-log (hold).
- If COLLISION + reopen met โ log the meeting evidence, proceed with caveat.
- After every
pivot or hold decision, call add so future runs don't repeat the mistake.
Outputs
harness/exclusions.jsonl (append-only)
- check returns
{verdict: "COLLISION"|"CLEAR", matches: [...]} JSON
Verification