← ClaudeAtlas

hn-brieflisted

Personalized Hacker News brief, ranked against a stored interest profile that learns from what gets opened. Use for "hn brief", "hacker news digest", "tech news for me", "what's on HN today", and for managing interests with add, forget, explore, or keep.
ArchitektApx/HackerNews-Brief · ★ 1 · AI & Automation · score 74
Install: claude install-skill ArchitektApx/HackerNews-Brief
# hn-brief ``` REF=${CLAUDE_PLUGIN_ROOT}/skills/hn-brief/reference ``` `hn-brief` is on the Bash tool's PATH and is the only command to run. Write it bare, one invocation per Bash call: no path, no `python3`, no second statement. Any other shape makes the user re-approve almost every run. Never edit the profile JSON by hand. ## Routing The argument picks the mode, and natural phrasing maps to the same routes ("what's on HN", "stop showing me crypto", "I like number 4"). Read a reference file only for the mode invoked. | Argument | Action | | :-- | :-- | | none | Daily brief, below | | `explore` | `$REF/explore.md`, which also takes a range | | `interests\|add\|forget\|keep\|setup` | `$REF/interests.md` | | `tracker\|settings` | `$REF/operations.md` | | anything else | A time range such as `yesterday` or `since monday`, passed to `--range` verbatim | Never convert a range to hours yourself. If the script rejects one it prints the grammar it accepts: translate into that once, rerun, and state the reading in a line above the brief. Twice means ask instead. ## Daily brief One Bash call: ```bash hn-brief brief --range "<range or empty>" ``` It applies pending clicks, ages the profile and prints one payload. Rank from that, it carries the profile, settings and candidates, so nothing else needs querying. If `profile.interests` is empty, run setup instead. `notices.clicks` reports what the user's clicks changed. When something moved, open with one line like `Learned since