feat(twitter): migrate from xreach to bird CLI#193
Merged
Panniantong merged 1 commit intomainfrom Mar 23, 2026
Merged
Conversation
- Replace xreach CLI with bird (@steipete/bird) as Twitter/X backend - bird uses AUTH_TOKEN/CT0 env vars (simpler than xreach's session.json) - Accept both 'bird' and 'birdx' binary names - Remove version detection logic (bird v0.8.0 is the baseline) - Write credentials.env to ~/.config/bird/ for easy sourcing - Keep xfetch session.json sync for backward compatibility - Update SKILL.md commands: bird search/read/user-tweets/thread - Update install/uninstall to use npm @steipete/bird - All 52 tests pass
This was referenced Mar 23, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
改动
把 Twitter/X 渠道后端从 xreach CLI 迁移到 bird CLI (@steipete/bird)。
为什么迁移: xreach 对长推文(note_tweet)和 X Article 支持不稳定,bird v0.8.0 原生支持这些场景。
具体改动
agent_reach/channels/twitter.py— 核心改动:xreach → bird,去掉版本检测逻辑,接受 bird/birdx 两种二进制名agent_reach/cli.py— 安装/卸载/检测/cookie配置 全部切到 birdagent_reach/cookie_extract.py— 新增~/.config/bird/credentials.env写入(AUTH_TOKEN/CT0),保留 xfetch session.json 向后兼容agent_reach/skill/SKILL.md— 命令示例更新:bird search/read/user-tweets/threadtests/test_twitter_channel.py— 5 个新测试覆盖:auth ok / auth missing / not found / birdx binary / generic failure验证
bird 认证方式
agent-reach configure twitter-cookies自动配置