ac878-news-evaluate

star 0

Evaluate and rank aggregated news stories for AC878 radio bulletins. Use after news aggregation to score, deduplicate, and select the best stories for each bulletin segment (Finance, Australian, China/Asia, International). Outputs a curated story list as JSON for the script writer. Can optionally use PinchTab for deep-scraping top stories.

ac878media By ac878media schedule Updated 3/7/2026

name: ac878-news-evaluate description: Evaluate and rank aggregated news stories for AC878 radio bulletins. Use after news aggregation to score, deduplicate, and select the best stories for each bulletin segment (Finance, Australian, China/Asia, International). Outputs a curated story list as JSON for the script writer. Can optionally use PinchTab for deep-scraping top stories.

AC878 News Evaluate

Score, rank, and select news stories from the aggregated news brief for radio bulletin production.

Input

Read the latest aggregated brief:

BRIEF=$(ls -t /Users/jackycheung/.openclaw/workspace/news/raw/news_brief_*.md | head -1)

Process

1. Parse Stories

Extract all stories from the brief. For each story capture: headline, summary, source tier, category.

2. Score Each Story (0-100)

Factor Weight Criteria
Recency 25 Published <6h=25, <12h=15, <24h=5
Relevance 25 AU audience interest (AU domestic=25, China/HK=20, International=15, Niche=5)
Impact 20 Affects many people=20, moderate=10, limited=5
Source tier 15 Tier 1=15, Tier 2=10, Tier 3=5
Uniqueness 15 Not covered in recent bulletins=15, partially covered=5, duplicate=0

3. Deduplicate

Group stories about the same event. Keep highest-scored version only.

4. Categorize and Select

Allocate stories to 4 segments:

  • Segment 1 (Finance): Markets, RBA, property, energy, trade — pick 6-8 stories
  • Segment 2 (Australian): Domestic news + weather cities — pick 6-8 stories
  • Segment 3 (China/Asia): China, HK, Taiwan, ASEAN, Japan, Korea — pick 6-8 stories
  • Segment 4 (International): US, Europe, Middle East, global — pick 6-8 stories

5. Deep-Scrape Top Stories (Optional — PinchTab)

For the top 3 stories per segment that need more detail:

pinchtab nav "<story_url>"
pinchtab text

This extracts full article text token-efficiently (~800 tokens vs screenshots). Use the extra detail to enrich the script writer's input.

6. Check Previous Bulletin

Read the most recent bulletin scripts to avoid repeating stories:

# Morning check afternoon, afternoon check morning
ls -t /Users/jackycheung/.openclaw/workspace/news/bulletin-file-*.txt | head -4
ls -t /Users/jackycheung/.openclaw/workspace/news/afternoon-file-*.txt | head -4

Mark any story already covered as duplicate: true.

Output

Write curated story list to:

  • Morning: news/evaluated/morning-stories.json
  • Afternoon: news/evaluated/afternoon-stories.json

JSON schema:

{
  "evaluatedAt": "ISO timestamp",
  "briefSource": "path to brief file",
  "segments": {
    "finance": [
      {
        "headline": "...",
        "summary": "...",
        "score": 85,
        "sourceUrl": "...",
        "sourceTier": 1,
        "enrichedText": "... (if deep-scraped)",
        "duplicate": false
      }
    ],
    "australian": [...],
    "china_asia": [...],
    "international": [...]
  },
  "totalStories": 28,
  "duplicatesRemoved": 5
}

Filters (Hard Rules)

  • EXCLUDE HK national security law stories
  • EXCLUDE stories older than 48 hours
  • EXCLUDE opinion pieces / editorials (unless very significant)
  • PREFER stories with cross-source verification (appeared in 2+ sources)
  • NEVER include source names in output (no ABC, Reuters, etc.)

PinchTab Setup

PinchTab must be running for deep-scrape:

# Check if running
curl -s http://localhost:9867/health

# Start if needed
pinchtab &

If PinchTab is unavailable, skip deep-scrape and proceed with brief summaries only.

Install via CLI
npx skills add https://github.com/ac878media/ac878-openclaw-skills --skill ac878-news-evaluate
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator