ai-news-skill
install
source · Clone the upstream repo
git clone https://github.com/frankzch/ai-news-skill
Claude Code · Install into ~/.claude/skills/
git clone --depth=1 https://github.com/frankzch/ai-news-skill ~/.claude/skills/frankzch-ai-news-skill-ai-news-skill
manifest:
SKILL.mdsource content
AI Intelligence Skill
When to use this skill
Use when the user wants to:
- Get the latest AI/ML news and announcements
- Browse trending open-source AI projects from GitHub
- Read AI discussion highlights from Reddit, X (Twitter), HackerNews
- See what AI KOLs (Key Opinion Leaders) are saying
- Get a comprehensive daily AI briefing
Workflow
Default: Fetch latest AI briefing
Run the fetcher script from the skill directory:
uv run scripts/pulse_fetcher.py
If
uv is not available, install dependencies manually and use:
pip install requests pyyaml python scripts/pulse_fetcher.py
Filtered fetch
Map the user's intent to CLI flags:
| User says | Flags |
|---|---|
| "Only Reddit discussions" | |
| "Open source, no Github" | |
| "50 items, past 48 hours" | |
| "Show full summaries with links" | |
| "AI news in Chinese" | |
Available options
Run
uv run scripts/pulse_fetcher.py --help for the full list. Key flags:
— Only fetch these categories:--include-categories "cat1,cat2"
,news
,opensource
,discussionkol
— Skip these categories--exclude-categories "cat1,cat2"
— Only from these sources--include-sources "src1,src2"
— Skip these sources--exclude-sources "src1,src2"
— Time window in hours (default: 24)--hours INT
— Max items to request. The server clamps to the tier cap (guest=3 / free=6 / member=100); anything larger is silently truncated.--limit INT
— Output language (default: auto-detect from system locale)--language en|zh
— Show short summary (default: true)--show-short-summary true|false
— Show long summary (default: false)--show-long-summary true|false
— Show article URLs (default: false)--show-link true|false
— Export full JSON to file (default: pulse_output.json). Pass empty string to disable.--output-file FILE
Output format
Each item is printed as:
1. [NEWS] Title of the article (from TechCrunch) Short Summary: One-line summary text ----------------------------------------
When
--output-file is used, the full JSON response is saved to disk. See references/API.md for the response schema.
Gotchas
- HTTP 429 means the user hit an IP rate limit (anti-spam interval or daily cap). Tell them to wait a few minutes and try again.
- Tier caps on result count. The response includes a
field and items are capped per request based on it:tier
(no / invalidguest
): max 3 itemsapi_key
(logged in, non-member): max 6 itemsfree
: max 100 items If the user asks for more items than the tier cap, the server silently clamps to the cap. To raise the cap, tell the user to register at InBrief.info, open Settings → PulseAI Agent Skill, copy the API Key, and paste it into themember
field ofapi_key
(see assets/config.default.yaml).config.yaml
- Use
when links are included — terminal line-wrapping can corrupt long URLs.--output-file - If
exists in the skill root, it overrides default settings. See assets/config.default.yaml for the template.config.yaml - The
flags take precedence over--include-*
flags for the same dimension.--exclude-*