19 Commits
Author SHA1 Message Date
jackwener f4a36f2358 refactor: fix all code review issues
Bug fixes (P0):
- _extract_cursor: both branches now check cursorType=='Bottom',
  preventing Top cursor from corrupting pagination state
- _api_get: add retry loop with exponential backoff for HTTP 429
  and JSON error code 88 rate limits

Improvements (P1):
- _deep_get: support int keys for list index access
- Extract BEARER_TOKEN/USER_AGENT into constants.py (was duplicated
  in auth.py and client.py)

Code quality (P2):
- fetch_likes: add override_base_variables=True to avoid sending
  latestControlAvailable/requestContext which Likes endpoint rejects
- CLI: extract _fetch_and_display() helper to dedup favorite/likes
- _get_client(): remove useless try/except that re-raised same error
- formatter: remove no-op tweets_to_json wrapper
- _as_int/_as_float: filter.py now imports from config.py

Polish (P3):
- _parse_tweet_result: split into _extract_media + _extract_author
- CLI module docstring: add likes command
- verify_cookies: increase timeout from 3s to 10s
2026-03-07 21:41:33 +08:00
jackwener 18842bc25d fix: correct fetch_likes response path and add missing variables
- Fix response path: timeline.timeline -> timeline_v2.timeline
- Add missing extra_variables: includePromotedContent, withClientEventToken,
  withBirdwatchNotes, withVoice
2026-03-07 20:39:31 +08:00
jackwener e675e879fb Merge pull request #1 from Huxingyu/feat/likes
feat: add likes command to fetch authenticated user's liked tweets
2026-03-07 20:37:04 +08:00
jackwener 0f26e20abb Revert npx skills install examples in README 2026-03-06 21:23:32 +08:00
jackwener 7146d60fda Remove preferred wording for npx skills install 2026-03-06 21:22:20 +08:00
jackwener 0df8f3af9b Improve skill metadata and npx skills docs 2026-03-06 21:16:29 +08:00
jackwener cc65c74a53 ci make ClawHub publish workflow dispatch-safe 2026-03-06 00:08:39 +08:00
jackwener c7570732c0 ci add auto publish to ClawHub on version tags 2026-03-06 00:06:52 +08:00
jackwener 733ce4d5f9 docs: add xhs-cli and bilibili-cli recommendations to README header 2026-03-05 22:18:27 +08:00
jackwener 81486e31d5 docs: add skill metadata frontmatter for ClawHub publish 2026-03-05 16:54:08 +08:00
jackwener dc1a76ddbb docs: add AI skill and ClawHub sections with SKILL.md 2026-03-05 16:52:04 +08:00
jackwener b1a0447523 docs: document scoring formula and filter modes in README 2026-03-05 16:33:58 +08:00
jackwener 05867556a4 docs: upgrade README with bilingual structure, badges, auth and troubleshooting 2026-03-05 16:29:06 +08:00
jackwener 34de425a4c ci: allow ci workflow to be reused by publish workflow 2026-03-05 16:21:47 +08:00
jackwener 1ca62d4635 chore: add pypi publish workflow and uv-first install docs 2026-03-05 16:16:00 +08:00
jackwener 6f322ff2d6 test+ci: add regression tests and GitHub Actions workflow 2026-03-05 16:14:05 +08:00
jackwener 4c08d09304 refactor: harden CLI/client/config and centralize serialization 2026-03-05 16:13:54 +08:00
jackwener 7238b932ab feat: add user commands, auto-detect browser, optimize performance
- Add user/user-posts/followers/following commands
- Add UserProfile model and GraphQL API methods
- Add print_user_profile and print_user_table formatters
- Auto-detect browser for cookies (Chrome → Edge → Firefox → Brave)
- Remove --browser option from all commands
- Remove cookie verification (v1.1 endpoints are gone)
- Use hardcoded fallback query IDs first (skip slow JS bundle scan)
- Update FEATURES from latest twitter-openapi config
- Fix user-posts: add required withVoice variable
- Add tweet URL links in feed output
- Add error handling to all user commands
2026-03-05 00:41:26 +08:00
jackwener 16752c3115 Initial commit: twitter-cli v0.1.0 2026-03-04 17:56:42 +08:00