Community寫作與編輯github.com

Varnan-Tech/opendirectory

根據真實的 HN 表現數據草擬 Show HN 貼文。運用從 250 篇頂尖 HN 貼文中觀察到的模式,最大化得分。

opendirectory 是什麼?

這個技能旨在幫助開發者撰寫能在 Hacker News 上獲得高互動與高分的貼文,特別適用於 Show HN 類型的專案發布。它基於從 2026 年 4 月 18 日爬取的 250 篇頂尖貼文數據,歸納出標題長度、人稱使用、主題選擇與內容格式等關鍵因子對分數的影響。支援所有主流 AI 代理(如 Claude Code、Cursor、Codex),並提供明確的步驟引導使用者從目標設定、標題撰寫、內文取捨到最終格式的完整流程。此技能還包含可選的即時 HN 熱門貼文爬蟲,用於檢查重複性與當前趨勢,確保建議貼文能獲得最大曝光。

相容平台✓Claude Code✓Codex CLI~Cursor✓Antigravity✓Gemini CLI
npx skills add https://github.com/Varnan-Tech/opendirectory/tree/main/skills/show-hn-writer

Installed? Explore more 寫作與編輯 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Show HN 撰稿人 — 數據驅動版

此技能利用從 250 篇真實頂尖貼文中提取的模式來起草 HN 貼文。 以下所有規則皆來自觀察數據,而非慣例。


數據告訴我們的事(在寫任何東西前先內化)

以下是 2026 年 4 月 18 日爬取的 250 篇頂尖 HN 貼文分析結果。這些結果將取代任何關於 HN 寫作的既有觀念。

標題長度是分數最強的單一預測指標。

  • 少於 40 字:平均 248 分(n=82)
  • 40–59 字:平均 192 分(n=68)
  • 60–79 字:平均 150 分(n=91)
  • 80 字以上:平均 131 分(n=9) 預設目標:少於 40 字。硬上限:60。

內文不影響分數。 90% 的貼文沒有內文。有內文的平均分:189。無內文的平均分:193。統計上無顯著差異。只有在你有真正有趣的技術細節,且無法塞進標題時,才值得撰寫內文。切勿為了增加可信度而寫內文。

Show HN 前綴會壓低分數。 Show HN 貼文平均得分 94,而普通陳述句貼文平均超過 186 分。Show HN 標籤暗示「我想聽取大家對我作品的意見」,這會引發更挑剔的閱讀心態。僅在專案確實新穎時使用「Show HN:」。務必同時提供一個純標題的替代方案。

第一人稱標題優於匿名陳述。 第一人稱(「我…」、「我的…」、「我們…」):平均 291 分(n=9)。 普通陳述句:平均 186 分(n=126)。 如果建造者的觀點是故事的一部分,就用第一人稱開頭。

提問型標題會產生更多留言而非讚數。 提問型標題的評論與分數比率平均高於 1.0 倍。最適合用來引發討論,而非追求純粹高分。在撰寫前,先詢問使用者他們是為了哪個目標最佳化。

持續表現優異的主題:

  • 安全 / 後門 / 入侵事件:平均 308 分
  • 隱私 / 監控 / 數據事件:平均 282 分
  • AI / LLM 發布:平均 266 分(42 篇貼文 — 最大類別)
  • 開源發布:平均 485 分(樣本數小,但訊號強烈)

最高分的標題都有一個共同特徵:它們是故事,而非主題。 「有人買了 30 個 WordPress 外掛,並在每個外掛中植入了後門」— 1192 分。 「Google 違背了對我的承諾 – 現在 ICE 掌握我的數據」— 1688 分。 主題是「WordPress 外掛安全」。故事則有角色、行動和利害關係。


步驟 1:在開始之前,先問使用者一個問題

在草擬前,先問:

「兩個簡單的問題:

  1. 您要最佳化的是分數(觸及率)還是留言(討論)?
  2. 這個專案是做什麼的 — 一句話,技術性,不要任何形容詞。」

在得到兩個答案之前,不要繼續。


步驟 2:決定正確的貼文類型

根據專案與目標,決定使用哪種格式:

純標題(建議預設) 無前綴。直接說明是什麼或發生了什麼事。平均分數最高。 使用時機:分享發布、文章、工具或事件。

Show HN: 前綴(謹慎使用) 僅在以下情況使用:專案是運作中的展示品、建造者在場回答問題、且實作方式本身是趣味所在。 平均分數較低(94),但當專案確實新穎時,它能傳遞真實性。 務必同時草擬一個純標題的替代方案以供比較。

Ask HN: 前綴 使用時機:目標是討論,而非推廣。平均參與比例 > 1.0 倍。 最適合用於「誰在使用 X?」或「我該不該做 Y?」之類的貼文。

Tell HN: 前綴 用於吹哨、究責或揭露。一個數據點為 819 分。 僅在貼文內容事實明確、可驗證且建造者姓名已知時使用。


步驟 3:草擬標題

標題就是整篇貼文。 將內文視為可選項目。

根據數據得出的規則:

  • 目標少於 40 字。超過此數每多 20 字,平均約損失 30 分。
  • 寫一個故事,而非一個類別。角色 + 行動 + 利害關係勝過名詞片語。
  • 當建造者的觀點很重要時,第一人稱(「我…」)相較於普通陳述句平均增加約 100 分。
  • 不要用行銷用形容詞。除非是字面規格(例如「35B-A3B」是規格,「強大」則不是),否則不要用「快速」、「簡單」、「強大」、「輕量」。
  • 具體勝於籠統。「30 個 WordPress 外掛」勝過「流行的 CMS 外掛」。
  • 用方括號表示年份,以傳達經典必讀感:(2008)、(1956)。在連結歷久不衰的舊內容時使用。
  • 使用長破折號(–)作為副標題格式:「產品名稱 – 功能介紹」。不要用連字號(-)。

草擬三種變體:

  1. 最短可能(目標少於 35 字)— 刪除所有非必要內容
  2. 故事角度 — 角色 + 行動 + 利害關係
  3. 技術角度 — 以有趣的工程決策開頭

然後套用長度測試:計算每個變體的字數。標記任何超過 60 字的。


步驟 4:決定是否撰寫內文

捫心自問:技術實作中是否有無法塞進標題,且 HN 工程師會覺得確實有趣的細節?

如果「是」:撰寫內文(參見步驟 5)。 如果「否」:停留在標題。沒有內文比添加無用的內文更好。

數據顯示內文不會提高分數。撰寫內文的唯一理由是:實作方式夠有趣,工程師會想問「這是怎麼做到的?」,而你希望預先回答。


步驟 5:撰寫內文(僅在步驟 4 回答「是」時執行)

結構 — 保持簡潔:

第 1 行: 一句話。你做了什麼以及為什麼。使用第一人稱。 不要寫「介紹 X。」也不要寫「X 是一個可以…的工具。」直接寫:「我做了 X 是因為 Y。」

第 2–4 行: 真實原因。誠實且具體。是自己遇到的問題?還是工作上的挫折?或是出於好奇心?「我感到惱火,因為…」優於「開發者常常會在…方面遇到困難」。建造者的聲音是重點。

第 5–8 行: 實際運作方式。這正是 HN 讀者想看的內容。 明確指出具體的技術選擇。說明你所做的取捨及其原因。一個有趣的工程決策遠勝於一長串功能列表。

第 9 行: 一句話說明當前狀態。開源嗎?免費嗎?Alpha 版嗎?個人專案?你已經投入多少時間。

第 10 行: 一句結束語,邀請回饋或提問。 「歡迎提問關於實作的問題。」/「歡迎批評指教。」 切勿索取讚數、分享或註冊。

嚴格規則:

  • 150–300 字。通常低於 200 字更好。
  • 全文使用第一人稱。
  • 無項目符號。無標題。無粗體。
  • 內文中不要有連結。URL 請放在提交欄位。
  • 不要使用行銷用語:顛覆性、革命性、強大、穩健、無縫、創新、同級最佳、簡化、運用、轉型、尖端。

步驟 6:輸出前的自我檢查

逐一檢查此清單。在輸出前修正任何不符合的項目。

標題:

  • 少於 60 字(請計算)
  • 無行銷用形容詞
  • 是故事還是主題?(故事 = 較佳)
  • 如果建造者的觀點有加分,使用第一人稱
  • 無驚嘆號

內文(如果有的話):

  • 以「我做了…」或「在過去 N 個月…」開頭
  • 至少包含一個具體的技術名稱或架構決策
  • 少於 300 字
  • 無連結
  • 以邀請回饋作結,而非行動呼籲
  • 零個行銷用語(請檢查步驟 5 的清單)

貼文類型:

  • 如果使用 Show HN 前綴:是否也草擬了純標題的替代方案?
  • 如果目標是留言:是提問還是具爭議性的框架?
  • 如果目標是分數:是陳述句,而非提問?

步驟 7:呈現輸出

格式完全如下。前後不要有任何評論。

## HN 貼文

### 建議標題
[標題 — 最短、最強的變體]

### 替代標題
1. [變體 2]
2. [變體 3]

---

### 內文
[內文,如果步驟 4 決定不寫內文,則寫「不建議 — 僅有標題即足夠。」]

---

### 備註
- 目標:[分數 / 留言] — 根據步驟 1 使用者的回答
- 使用的貼文類型:[純標題 / Show HN / Ask HN / Tell HN]
- 標題長度:[N 字]
- 最佳發布時間:週二至週四,美國東部時間上午 8–10 點
- 發布後:在最初兩小時內回覆每一則留言
- 24 小時內不要在其他地方分享連結 — HN 會懲罰連環投票

步驟 8:可選 — 爬取當前 HN 頂尖貼文以取得背景資訊

如果使用者想檢查近期是否有類似貼文被提交,或想了解當前在他們所屬類別中表現最佳的內容,請執行爬蟲:

import requests
from concurrent.futures import ThreadPoolExecutor

HN_API = "https://hacker-news.firebaseio.com/v0"

def fetch_item(id_):
    try:
        r = requests.get(f"{HN_API}/item/{id_}.json", timeout=10)
        return r.json() if r.ok else None
    except Exception:
        return None

ids = requests.get(f"{HN_API}/topstories.json").json()[:250]
with ThreadPoolExecutor(max_workers=20) as ex:
    items = [i for i in ex.map(fetch_item, ids) if i]

# 根據使用者專案的相關關鍵字進行篩選
keyword = "您的關鍵字"
matches = [i for i in items if keyword.lower() in i.get("title","").lower()]

for i, item in enumerate(matches, 1):
    score = item.get("score", 0)
    title = item.get("title", "")
    by = item.get("by", "")
    print(f"{i:>2}. [{score:>4}pts] {title} — {by}")

print(f"\n總計符合:{len(matches)}")

使用結果來:

  • 檢查過去 48 小時內是否有幾乎相同的貼文被提交(避免重複)
  • 查看當前在此類別中哪些標題模式表現良好
  • 確定此主題領域的分數基準線

如果使用完整爬蟲,結果也會自動附加到 hn_log.csv 檔案。


參考資料:來自資料集的頂尖表現者

這些是前 250 篇中的真實貼文。研究它們的標題模式。

分數標題
1941Claude Opus 4.7
1688Google broke its promise to me – now ICE has my data
1244Qwen3.6-35B-A3B: Agentic coding power, now open to all
1192Someone bought 30 WordPress plugins and planted a backdoor in all of them
1141DaVinci Resolve – Photo
990Codex for almost everything
982Stop Flock
909A new spam policy for "back button hijacking"
893GitHub Stacked PRs
819Tell HN: Fiverr left customer files public and searchable
668I wrote to Flock's privacy contact to opt out of their domestic spying program
619Measuring Claude 4.7's tokenizer costs
561God sleeps in the minerals
503Want to write a compiler? Just read these two papers (2008)

最佳 Show HN 標題(依分數排列): 341 | Show HN: Smol machines – subsecond coldstart, portable virtual machines 199 | Show HN: PanicLock – Close your MacBook lid disable TouchID → password unlock 187 | Show HN: Every CEO and CFO change at US public companies, live from SEC 177 | Show HN: I made a calculator that works over disjoint sets of intervals 152 | Show HN: MacMind – A transformer neural network in HyperCard on a 1989 Macintosh

最高留言對分數比率(適用於以討論為目標的貼文): 1.91× | Why is IPv6 so complicated? 1.43× | Ask HN: Building a solo business is impossible? 1.20× | Ohio prison inmates built computers and hid them in ceiling 1.13× | Ask HN: Who is using OpenClaw? 1.05× | The future of everything is lies, I guess: Where do we go from here?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Varnan-Tech/opendirectory

Use when the user asks to generate a blog cover image, thumbnail, or article header. Automatically uses modern typography, brand logos, and Google Search grounding to create beautiful 16:9 images with Gemini 3.1 Flash Image Preview.

Varnan-Tech/opendirectory

World-class brand strategist and naming expert. Uses an interrogation-led discovery phase to extract your brand's DNA, then applies scientific naming frameworks (Phonosemantics) and automated multi-TLD domain checking.

Varnan-Tech/opendirectory

Use when the user asks to generate or update a project's CLAUDE or AGENTS context file from a codebase scan. Writes a focused file under 100 lines containing only the non-obvious build commands, conventions, and gotchas Claude Code needs.

Varnan-Tech/opendirectory

Use when the user wants to verify cold emails, enrich a lead list, or autonomously guess email addresses from a CSV using ValidEmail.co or the open-source Reacher engine.

Varnan-Tech/opendirectory

Competitive intelligence orchestrator tracking companies across 8+ platforms (GitHub, Twitter, Reddit, HN, PH, YC Jobs) with heat scores and AI briefings.

Varnan-Tech/opendirectory

Give it your product URL or description. It finds your top 5 competitors, runs three-track PR research across all of them (editorial, podcasts, communities), identifies which channels appear most frequently, looks up the journalist or host for each, and returns a tiered outreach list with story angles and ready-to-send cold pitch drafts tailored to your product. Use when asked to find PR opportunities, discover where competitors got featured, build a media outreach list, find which journalists cover my space, or get pitch templates for press coverage.

Varnan-Tech/opendirectory

Generate high-converting, deep-dive growth case studies in MDX format. Use this skill when asked to write a case study or blog post about a company's growth, tech stack, or product-led strategy. It handles the full pipeline (researching the company via Tavily, generating a 16:9 cover image, quality checking the draft, uploading assets to cloud storage, and pushing directly to the target repository).

Varnan-Tech/opendirectory

Scans your project for outdated npm, pip, Cargo, Go, or Ruby packages. Runs a CVE security audit. Fetches changelogs, summarizes breaking changes with Gemini, and opens one PR per risk group (patch, minor, major). Includes Diagnosis Mode for install conflicts. Use when asked to update dependencies, check for outdated packages, open dependency PRs, scan for package updates, audit for CVEs, or flag breaking changes in upgrades. Trigger when a user says "check for outdated packages", "update my dependencies", "open PRs for dependency updates", "scan for CVEs", or "which packages need upgrading".

Varnan-Tech/opendirectory

Generates and updates README.md and API reference docs by reading your codebase's functions, routes, types, schemas, and architecture. Uses graphify to build a knowledge graph first, then writes accurate docs from it. Use when asked to write docs, generate a README, document an API, update stale docs, create an API reference from code, add an architecture section, or document a project in any language. Trigger when a user says their docs are missing, outdated, or wants to document their codebase without writing it manually.

Varnan-Tech/opendirectory

Evaluates expired domain candidates against a target niche, scores them by topical relevance, historical activity level, and history cleanliness, then outputs a ranked shortlist with explainable reasoning and risk flags.

Varnan-Tech/opendirectory

Brutally honest developer-experience audit for a GitHub repo. Scores 10 DX dimensions (time-to-first-success, README clarity, visual proof, install, quick-start, docs, examples, community, trust, marketing), writes a shareable roast in the requested tone (brutal/honest/kind), produces a prioritized action plan ranked by impact × effort, and sketches an ideal README. Trigger when user says "roast my repo", "audit my README", "dx audit", "developer experience review", "score my GitHub project", "before launch checklist", or "make my repo shareable".

Varnan-Tech/opendirectory

Drafts and designs a complete HTML email newsletter from a topic or content brief. Outputs paste-ready HTML for Loops, Mailchimp, Beehiiv, Resend, or any standard email platform. Includes subject line options and plain-text fallback. Trigger when a user says "write a newsletter", "draft an email newsletter", "create an HTML email", "design an email for my subscribers", or "write a newsletter about [topic]".

Varnan-Tech/opendirectory

Takes a GitHub PR URL or the current branch and writes a plain-English explanation of what it does and why, then posts it as a PR comment. Use when asked to explain a PR, summarize a pull request, write a plain-English description of a PR, add a summary comment to a PR, or understand what a PR changes. Trigger when a user says "explain this PR", "summarize this pull request", "what does this PR do", "add a comment explaining the PR", or shares a GitHub PR URL and asks what it does.

Varnan-Tech/opendirectory

Audit how often LLMs recommend your brand vs competitors and generate a GEO action plan.

Varnan-Tech/opendirectory

Takes a competitor's public GitHub repo URL, fetches their open issues via the GitHub REST API, filters noise locally, clusters issues into 6 demand categories, computes a demand score per issue and per cluster, and outputs a ranked demand gap report with a GTM messaging brief. Use when asked to scan a competitor's GitHub issues, find what their users are begging for, turn GitHub complaints into product positioning, identify competitor feature gaps, or generate messaging from real user demand. Trigger when a user says "scan competitor issues", "what are users asking for on X repo", "find demand gaps in Y", "turn GitHub issues into messaging", or "what should I build based on competitor complaints".

Varnan-Tech/opendirectory

Find recurring confusion in your repo's GitHub Discussions, rank it by urgency, and draft the actual docs fixes and content angles — with verbatim community quotes and source links as evidence.

Varnan-Tech/opendirectory

SEO keyword research workflow for blog generation using Google Trends data. Use when writing blog posts, planning content calendars, or optimizing articles for search engines. Finds breakout keywords, builds content structure, and generates SEO-optimized blog outlines targeting tech and developer audiences.

Varnan-Tech/opendirectory

Generates a professionally designed case study PDF for B2B SaaS sales and marketing. Supports 7 page layouts, 9 style presets, 1-4 page output. Trigger when user says "create a case study", "write a customer story", "make a case study PDF", "design a success story", "turn this customer win into a PDF".

Varnan-Tech/opendirectory

Generates data visualization charts (bar, line, area, pie, doughnut, scatter, radar, treemap) as PNG using Apache ECharts v6. 1080×1080px default, 5 style presets, highlight annotations. Trigger when user says "create a chart", "visualize data", "make a bar chart", "line graph", "pie chart", "data visualization", "chart this data", "plot", "graph", or "visualize these numbers".

Varnan-Tech/opendirectory

Fetches low-star App Store and Google Play reviews, clusters them into broken-promise patterns, and generates a ranked copy brief with positioning opportunities.

相關技能