Commit Graph
54 Commits
Author SHA1 Message Date
Zhe LiandClaude Sonnet 4.5 ebcd1618f9 feat: make --max-pages imply --all for list-timeline
- Remove requirement for --max-pages to be used with --all
- Update help text to clarify --max-pages implies --all
- Add list-timeline documentation to README with examples

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
2026-01-11 11:17:27 +00:00
Mariano Belinky 04a0c98362 feat: add unbookmark command to remove bookmarks 2026-01-05 02:10:10 +00:00
Haoli 56ca7b9841 Add paged bookmark export with gating and retries 2026-01-03 15:51:49 +01:00
Peter Steinberger d8c2181dfb refactor: split cli and library entry 2026-01-01 12:31:02 +01:00
Peter Steinberger e9922c2901 docs: align readme with cli 2026-01-01 12:20:27 +01:00
Peter Steinberger 19841a6a75 fix: default cookie timeout 30s 2026-01-01 12:10:36 +01:00
Peter Steinberger 14ad6cf73f fix: allow cookie timeout config 2026-01-01 12:00:02 +01:00
Peter Steinberger 11f8c8cb19 refactor: camelcase user json output 2026-01-01 11:42:36 +01:00
Peter Steinberger 9dccb6a3b9 chore: merge origin/main 2026-01-01 11:31:29 +01:00
Peter Steinberger 48722d8462 chore: merge origin/main 2026-01-01 10:46:10 +01:00
Peter Steinberger 529403e386 docs: document quoted tweet depth 2026-01-01 10:45:25 +01:00
Peter Steinberger d1a3d1f289 chore: merge origin/main 2026-01-01 10:00:06 +01:00
Peter Steinberger cbe81a1230 docs: add likes command docs 2026-01-01 09:54:56 +01:00
Alex HillmanandClaude Opus 4.5 c90d3f9ab4 Add native quote tweet support to TweetData
- Add quoted_status_result to GraphqlTweetResult type
- Add quotedTweet field to TweetData interface
- Extract and map quoted tweets in mapTweetResult()
- Works for getTweet, getBookmarks, search, etc.
- Document JSON output schema in README

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
2025-12-31 21:58:48 +00:00
Tyler Seymour ee9c89018e feat: add folder support for bookmarks command 2025-12-31 15:20:36 -05:00
thelockmeister 34f45fece7 feat: add following and followers commands
Add two new commands to list users:
- `bird following` - list users that you (or another user) follow
- `bird followers` - list users that follow you (or another user)

Both commands support:
- `--user <userId>` to query another user's following/followers
- `-n <count>` to limit results
- `--json` for structured output

Uses Twitter's GraphQL Following/Followers endpoints with proper
feature flags and query ID rotation support.
2026-01-01 09:06:17 +13:00
Peter Steinberger 2ba0eff1e6 test: cover bookmarks 2025-12-31 12:04:24 +01:00
Peter Steinberger c495fb5078 refactor(cookies): use sweet-cookie 2025-12-27 13:23:39 +01:00
Peter Steinberger dfdb7452f6 docs: add undocumented API disclaimer 2025-12-26 22:34:25 +01:00
Peter Steinberger 1007d051e4 fix(tweet): fallback to statuses/update on 226 2025-12-26 21:57:36 +01:00
Peter Steinberger e8e98e641a refactor(auth)!: replace allow toggles with cookieSource 2025-12-26 21:28:27 +01:00
Peter Steinberger 1744f4cc24 feat(auth): allow selecting cookie source 2025-12-26 21:17:20 +01:00
Peter Steinberger b5e701770a docs(readme): add homebrew install 2025-12-26 20:34:56 +01:00
Peter Steinberger a4686f90ee feat: add Safari cookie extraction 2025-12-26 17:51:41 +01:00
Peter Steinberger 02d12b4e87 refactor!: remove Sweetistics engine
bird is GraphQL-only; bump to 0.3.0
2025-12-26 17:41:43 +01:00
Peter Steinberger 013fa5da95 docs: explain GraphQL query ID refresh 2025-12-26 16:47:39 +01:00
Peter Steinberger 0bf7190c95 feat(graphql): support video uploads 2025-12-26 15:27:35 +01:00
Peter Steinberger 3be2e3ae7e feat(graphql): upload media 2025-12-26 15:22:53 +01:00
Peter Steinberger dee304235b fix(engine): disable Sweetistics fallback when forcing graphql 2025-12-26 15:10:10 +01:00
Peter Steinberger 978d07f60f feat(graphql): runtime query-id refresh 2025-12-26 14:58:03 +01:00
Peter Steinberger 472d666eee docs: document output flags + help 2025-12-26 14:26:29 +01:00
Peter Steinberger c35e937b2a feat(cli): add plain/no-emoji/no-color + help 2025-12-26 14:14:31 +01:00
Peter Steinberger 88651f669d chore: bump version to 0.2.0 2025-12-26 12:41:48 +01:00
Peter Steinberger 6669ba9912 test(cli): validate mentions handle 2025-12-26 12:34:16 +01:00
Peter Steinberger 3661f784cb fix: default engine auto with graphql primary 2025-12-25 14:00:35 +01:00
Peter Steinberger ddd9802a14 docs: rewrite readme and changelog 2025-12-20 11:29:53 +01:00
Peter Steinberger 51e5856a6c docs: cut 0.1.0 changelog and refresh README 2025-12-06 00:40:53 +01:00
Peter Steinberger da22ef25d3 Add Sweetistics media uploads and CLI flags 2025-12-04 14:25:59 +00:00
Peter Steinberger 689b10e280 Document GraphQL rate limits 2025-12-04 14:07:19 +00:00
Peter Steinberger 35c0f28997 Add Sweetistics request timeout and docs 2025-12-04 14:06:57 +00:00
Peter Steinberger 5c90785b07 docs: expand config explanation for engines and sources 2025-12-03 16:32:47 +00:00
Peter Steinberger 6ecfe57018 feat: allow disabling cookie sources and default to firefox/graphql 2025-12-03 16:31:55 +00:00
Peter Steinberger e0ca146567 feat: default to graphql+firefox, fallback to sweetistics 2025-12-03 16:29:16 +00:00
Peter Steinberger 5797c00882 docs: clarify transport vs credentials; show engine+source in whoami 2025-12-03 16:26:21 +00:00
Peter Steinberger 9ae44b8812 docs: add tagline to README header 2025-12-03 16:05:23 +00:00
Peter Steinberger 8a220f6809 docs: refresh bird tagline 2025-12-03 16:04:50 +00:00
Peter Steinberger cef8af07b5 docs: clarify browser cookies and add releasing guide 2025-12-03 16:03:54 +00:00
Peter Steinberger 7df04c481f docs: update examples and config guidance 2025-12-03 15:39:15 +00:00
Peter Steinberger 0f6cc5c663 Add engine switch and Sweetistics endpoints for tweet reading 2025-12-02 14:53:35 +00:00
Peter Steinberger 850d59e68d Add Sweetistics API posting support to bird 2025-12-02 12:36:54 +00:00