Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Daily auto-publish spore from SPORE-INBOX via canonical SPORE-PUBLISH-PIPELINE — pick high-quality entry → 4 hard gate → ship Threads + X → 復盤. Routine fires 10:00 daily; manual via "/twmd-spore-publish" or "發今天的孢子" or "跑 spore publish". TRIGGER when: routine twmd-spore-publish-daily fires / user says "跑 spore publish" / "發今天的孢子" / "從 SPORE-INBOX 選一篇 ship".
.claude/skills/frank890417-twmd-spore-publish/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 176% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 138% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 117% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 160% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 236% | 0% |
Before anything else:跑 /twmd-become write 完整走 BECOME_TAIWANMD.md Step 0-9。Write mode self-test 8-9 題全過才能進 Stage 1。
驗證 ACK 一行(必寫 memory file 頂部,沒寫視為 BECOME 未完成):
✅ BECOME ack: mode=write / 8 organ 最低=<即時 consciousness-snapshot.sh> / Q14 cross-session continuity=PASS不准用記憶中的舊器官分數,跑 bash scripts/tools/consciousness-snapshot.sh 取當前。
bashexport SPORE_ROUTINE_MODE=1
讀 SPORE-INBOX.md §Pending:
Requested: 日期 oldest first)→ 第三順位Entry 含「敏感度: 高」field + cron context(無 observer)→ 一律 defer to human:
撞 MANIFESTO §自主權邊界「政治立場 / 對外溝通需哲宇 judgment」。
REACTIVE 需 observer 親自 ship --> HTML comment(不 mutate entry 本體)+ continue to 下一條 candidate + LESSONS-INBOX append「P0 高敏感 routine defer cycle vc=N」。
identify 並 defer」是 cleaner exit。
/twmd-spore-publish 跑時:observer 在場才能 ship;先讀本條 rule + 由observer 拍板,不准 routine context 的 logic 套到 manual 場景。
REACTIVE 敏感度高,5/27 10:00 routine 跑時靠 image=0 fail 才 skip(碰巧), 下次若 image=≥2 fix 就會直接撞 HG9 牆。需要 Stage 1 SELECT 就 identify。
bashpython3 scripts/tools/article-health.py knowledge/<path>.md --json
| Gate | 閾值 | | -------------------- | ------------------------------------------------------------------------------------------ | | prose-health | ≤ 3 AI 水印密度(v1.1 inversion 後是 ≤ 3,不是 ≥ 8.0;per SPORE-PUBLISH v1.0→v1.1 5/25) | | word-count | ≥ 4500 CJK chars | | footnote-density | ≥ B tier (A=20+ / B=10-19 / C=5-9 / D=<5) | | media-richness | pass (≥ 2 image OR ≥ 1 iframe — INFO-only after v1.1 仍跑) | | lastVerified | ≤ 90d fresh |
任一 fail → entry skip + 下一條(不 mutate INBOX)。 全 candidate fail → skip ship + LESSONS-INBOX append「intake gap」+ exit 0(不算失敗 routine)。
詳見 SPORE-PIPELINE.md Stage 3。SPORE_ROUTINE_MODE=1 auto-decision per v3.7。
Before drafting any prose: 強制 Read 完整 SPORE-WRITING.md(不 head / 不 grep / 不憑記憶)。落 ACK 一行進 memory:
✅ SPORE-WRITING ack: §朋友 tone prime + §模板速查表(6 模板) + §Wave 2 plugin gate + §三板斧 + §晶晶體禁用 全讀完。Family judged = <viral A/B/C/D | F-公開信 | E-串文>沒寫 ACK = Stage 3 未完成。不准用「我熟了」「上次跑過」「等價 prompt」這類藉口跳。
為什麼這條 gate 是 routine 不可省的閘門(2026-05-28 哲宇 callout「為什麼孢子失去『你知道嗎』voice」+ #97 美食「你知道嗎—」破折號 + #101 落日飛車「你知道嗎,」無 emoji + #103 周蕙「走進台灣 KTV」完全無 prefix 三條連續 drift 觸發 root cause audit):
textHasHook 抓 keyword("KTV")不抓 prefix("你知道嗎")— self-attest 自我矇眼寫完 spore body 落 docs/factory/spore-blueprints/{N}-{slug}.md 後強制跑:
bashpython3 scripts/tools/article-health.py docs/factory/spore-blueprints/{N}-{slug}.md --check=spore-writing
Rule #14 v2 HARD — viral spore 第一行必須有友善 prefix 之一:
你知道嗎?{emoji} (最強推薦)你知道嗎,{...} (舊風格逗號變體仍允許)欸,{具體事件} / 欸你{...}身為台灣人 / 想像{一下} / 如果{你/台} / 當你/你們「『引語』」 直接引語開場場景代入 / 第二人稱化 / 日常感不算等效 prime — 必須字面 prefix。 F-公開信 / E-串文 / hook_tier: N/A exempt(plugin auto-detect via frontmatter)。
Plugin hard=1 → revise prose 加 prefix,重跑 plugin。不准 --no-verify 繞過。
routine spore-publish-daily 必須寫 docs/factory/spore-blueprints/{N}-{slug}.md blueprint file(含 fence-wrapped 完整 spore prose),不准只在 session memory inline body。觸發背景:周蕙 #103 inline 而非 blueprint → plugin Rule #14 根本沒跑 → silent voice drift through gate。
Blueprint frontmatter 必填:
yamlspore_number: '#{Threads N} / #{X N+1}' template: <A1 / A2 / B / C / D / E-thread / F-站方公開信> hook_tier: <1a / 1b / N/A>
template: F-... 或 hook_tier: N/A = publicletter family exempt(plugin auto-detect)。
走 SOCIAL-POSTING-PIPELINE.md。
🚨 Pitfall 6 hard rule(2026-05-28 instrument)— post-ship verify:
jsconst before = document.querySelectorAll('[data-pressable-container]').length; // click 發佈 + wait 3s const after = document.querySelectorAll('[data-pressable-container]').length; // after > before → ship success, exit loop // after == before → genuine fail, ONE retry max // after >> before+1 → duplicate, navigate /replies cleanup
Max 1 retry per ship attempt。第二次失敗 → screenshot + LESSONS-INBOX append + escalate observer,不要 silent third retry。觸發背景:5/27 #101 落日飛車 3 次嘗試 + 5/28 #92 大宇雙劍 3 次 retry duplicate ship。詳見 SPORE-HARVEST-PIPELINE §Pitfall 6。
Threads vs X composer 差異:
\n — 單塊 prose OKShip 成功後每平台跑一次 python3 scripts/tools/spore-db.py add-spore --date YYYY-MM-DD --platform threads|x --slug 文章slug --url '<乾淨化URL>' --template '...' --highlight 'ship 一句話'(回傳新 id)→ 跑 python3 scripts/tools/sync-spore-links.py --apply 長 identity pointer。不寫 SPORE-LOG.md(已凍結,validate ERROR)、frontmatter 不放數字。完整敘事寫 blueprint 檔。
SPORE-PUBLISH-PIPELINE §5.2 4 種結構性問題 audit:
Self-review 4 題(必填 memory):
/twmd-finale chain → memory + commit + push main-direct(v2.0)。
memory 必含:BECOME ACK + Stage 1-5 outcome + self-review 4 題 + Handoff 三態 + Beat 5 反芻。
完整 SOP:SPORE-PUBLISH-PIPELINE.md
ARGUMENTS: (none — routine 自己讀 SPORE-INBOX state)
Other measured skills in the registry, with their headline benchmark lift.