Add comprehensive news/trending feature that fetches AI-generated news headlines from Twitter's "For You" page. This feature specifically targets the AI-curated news items that Twitter displays under "Today's News" section, not generic trending hashtags. - Uses Twitter's ExplorePage GraphQL API endpoint to access the Explore page timeline data where AI headlines are located - AI headlines are identified by the explicit `is_ai_trend: true` flag in the API response - Fallback heuristic detection for full-sentence headlines (5+ words) with "News" or time indicators in social context - Headlines are found in "stories-*" modules within the initialTimeline structure under a "Today's News" header - Follows the existing mixin pattern (withNews) for composability - Supports both AI-only filtering and mixed trending/AI results - `bird news` - Fetch news and trending topics (mixed results) - `bird news --ai-only` - Fetch ONLY AI-curated headlines - `bird news -n <count>` - Limit number of results - `bird news --json` - Output as JSON - `bird news --json-full` - Include raw API response - `bird news --with-tweets` - Enrich with related tweets - `bird trending` - Alias for news command - AI headlines are clearly marked with "AI · " category prefix - Automatic deduplication of duplicate headlines - Rich formatting with category, time, post count, and URLs - src/commands/news.ts - CLI command implementation - src/lib/twitter-client-news.ts - Core news fetching functionality - tests/commands.news.test.ts - Command validation tests (7 tests) - tests/twitter-client-coverage.news.test.ts - API coverage tests (7 tests) - README.md - Added documentation for news command - src/cli/program.ts - Registered news command - src/lib/index.ts - Exported news-related types - src/lib/twitter-client.ts - Integrated withNews mixin - src/lib/query-ids.json - Added ExplorePage query ID - src/lib/twitter-client-constants.ts - Added ExplorePage constant - src/lib/twitter-client-features.ts - Added buildExploreFeatures() - scripts/update-query-ids.ts - Added ExplorePage to update script - All 268 existing tests continue to pass - Added 14 new tests covering command validation and API functionality - Tested with real Twitter data confirming AI headline detection - All TypeScript compilation and linting checks pass Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
17 lines
618 B
JSON
17 lines
618 B
JSON
{
|
|
"CreateTweet": "nmdAQXJDxw6-0KKF2on7eA",
|
|
"CreateRetweet": "LFho5rIi4xcKO90p9jwG7A",
|
|
"FavoriteTweet": "lI07N6Otwv1PhnEgXILM7A",
|
|
"DeleteBookmark": "Wlmlj2-xzyS1GN3a6cj-mQ",
|
|
"TweetDetail": "_NvJCnIjOW__EP5-RF197A",
|
|
"SearchTimeline": "6AAys3t42mosm_yTI_QENg",
|
|
"Bookmarks": "RV1g3b8n_SGOHwkqKYSCFw",
|
|
"BookmarkFolderTimeline": "KJIQpsvxrTfRIlbaRIySHQ",
|
|
"Following": "mWYeougg_ocJS2Vr1Vt28w",
|
|
"Followers": "SFYY3WsgwjlXSLlfnEUE4A",
|
|
"Likes": "ETJflBunfqNa1uE1mBPCaw",
|
|
"ExploreSidebar": "lpSN4M6qpimkF4nRFPE3nQ",
|
|
"ExplorePage": "kheAINB_4pzRDqkzG3K-ng",
|
|
"TrendHistory": "Sj4T-jSB9pr0Mxtsc1UKZQ"
|
|
}
|