bird
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseBird — Twitter/X CLI
Bird — Twitter/X CLI
Auth: Browser cookies auto-detected (run to check logged-in account)
bird whoami身份验证: 自动检测浏览器Cookie(运行来检查已登录的账户)
bird whoamiFirst use
首次使用
On the first bird command in a session, verify bird is installed:
bash
which bird 2>/dev/null || echo "NOT_INSTALLED"If :
NOT_INSTALLED- Tell the user: "bird isn't installed yet. want me to install it? (takes ~5 seconds)"
- Wait for a yes/no.
- If yes, run:
bash
curl -L https://github.com/zaydiscold/bird/releases/download/v0.8.0/bird -o /tmp/bird && \
chmod +x /tmp/bird && \
mkdir -p ~/.local/bin && \
mv /tmp/bird ~/.local/bin/bird && \
export PATH="$HOME/.local/bin:$PATH" && \
echo "installed: $(bird --version 2>/dev/null || bird whoami 2>/dev/null | head -1)"If is not in PATH, fall back to .
~/.local/binsudo mv /tmp/bird /usr/local/bin/bird- If the user declines, let them know they can install manually from https://github.com/zaydiscold/bird/releases (steipete's original brew tap may no longer be maintained) and stop there.
brew install steipete/tap/bird - After successful install, continue with the original request.
- Skip this check for subsequent commands in the same session.
在会话中首次运行bird命令时,请先验证bird是否已安装:
bash
which bird 2>/dev/null || echo "NOT_INSTALLED"如果返回:
NOT_INSTALLED- 告知用户:"bird尚未安装。需要我为您安装吗?(耗时约5秒)"
- 等待用户回复yes/no。
- 如果用户同意,运行:
bash
curl -L https://github.com/zaydiscold/bird/releases/download/v0.8.0/bird -o /tmp/bird && \
chmod +x /tmp/bird && \
mkdir -p ~/.local/bin && \
mv /tmp/bird ~/.local/bin/bird && \
export PATH="$HOME/.local/bin:$PATH" && \
echo "installed: $(bird --version 2>/dev/null || bird whoami 2>/dev/null | head -1)"如果不在PATH中,回退使用命令。
~/.local/binsudo mv /tmp/bird /usr/local/bin/bird- 如果用户拒绝安装,告知用户可以从https://github.com/zaydiscold/bird/releases手动安装(steipete的原brew tap 可能已不再维护),然后终止流程。
brew install steipete/tap/bird - 安装成功后,继续执行用户的原始请求。
- 同一会话中后续执行命令时跳过该检查。
When invoked without arguments
无参数调用时
Show a brief summary: "bird reads Twitter/X from your terminal. Try: paste a tweet URL, or say 'search [query]', 'my mentions', 'timeline'."
展示简短说明:"bird可在终端中读取Twitter/X内容。您可以尝试:粘贴推文链接,或者说'search [查询关键词]'、'我的提及'、'时间线'。"
When invoked with a URL or ID
携带URL或ID调用时
Run immediately — do not ask:
bash
bird read $ARGUMENTSThread detection — use instead of when:
bird threadbird read- User says "thread" or "conversation"
- URL path contains and user context implies a multi-tweet chain
/status/ - output shows "Replying to @..." at the top (suggest re-fetching with
bird readfor full context)bird thread
Default to for single URLs.
bird readbash
bird thread $ARGUMENTS # full conversation
bird thread $ARGUMENTS --all # all pages of a long thread直接运行,无需询问:
bash
bird read $ARGUMENTS推文串检测:满足以下条件时使用替代:
bird threadbird read- 用户提及"thread"或"conversation"
- URL路径包含且用户上下文暗示这是多条推文组成的推文串
/status/ - 的输出顶部显示"Replying to @..."(建议使用
bird read重新获取完整上下文)bird thread
单条URL默认使用。
bird readbash
bird thread $ARGUMENTS # full conversation
bird thread $ARGUMENTS --all # all pages of a long threadRead
读取内容
bash
bird read <url-or-id> # single tweet
bird thread <url-or-id> # full conversation
bird thread <url-or-id> --all # all pages
bird replies <url-or-id> # replies to a tweet
bird user-tweets @handle -n 20 # user's profile timelinebash
bird read <url-or-id> # single tweet
bird thread <url-or-id> # full conversation
bird thread <url-or-id> --all # all pages
bird replies <url-or-id> # replies to a tweet
bird user-tweets @handle -n 20 # user's profile timelineSearch
搜索功能
bash
bird search "query" -n 20
bird search "from:@handle keyword" -n 10
bird search "term" --all # all results, paginatedbash
bird search "query" -n 20
bird search "from:@handle keyword" -n 10
bird search "term" --all # all results, paginatedTimeline & Discovery
时间线与发现
bash
bird home -n 20 # For You feed
bird home --following -n 20 # Following (chronological)
bird mentions -n 20 # your mentions
bird mentions -u @handle -n 20 # another user's mentions
bird bookmarks -n 20
bird likes -n 20
bird news --ai-only # trending / AI-curated
bird news --with-tweets --tweets-per-item 3
bird lists # your lists
bird list-timeline <list-id-or-url>
bird about @handle # account origin & location
bird following -n 50
bird followers -n 50bash
bird home -n 20 # For You feed
bird home --following -n 20 # Following (chronological)
bird mentions -n 20 # your mentions
bird mentions -u @handle -n 20 # another user's mentions
bird bookmarks -n 20
bird likes -n 20
bird news --ai-only # trending / AI-curated
bird news --with-tweets --tweets-per-item 3
bird lists # your lists
bird list-timeline <list-id-or-url>
bird about @handle # account origin & location
bird following -n 50
bird followers -n 50Post & Engage
发帖与互动
Confirm before posting unless the user provided explicit text.
bash
bird tweet "text"
bird reply <url-or-id> "reply text"
bird follow @handle
bird unfollow @handle
bird unbookmark <url-or-id>除非用户提供了明确的文本内容,否则发帖前需要先确认。
bash
bird tweet "text"
bird reply <url-or-id> "reply text"
bird follow @handle
bird unfollow @handle
bird unbookmark <url-or-id>Media (up to 4 images or 1 video)
Media (up to 4 images or 1 video)
bird tweet "caption" --media /path/to/file.jpg --alt "description"
undefinedbird tweet "caption" --media /path/to/file.jpg --alt "description"
undefinedOutput Formats
输出格式
bash
bird read <id> --json # structured JSON
bird read <id> --json-full # JSON + raw API response
bird search "query" --plain # no color/emoji (for piping)bash
bird read <id> --json # structured JSON
bird read <id> --json-full # JSON + raw API response
bird search "query" --plain # no color/emoji (for piping)Auth Check
身份验证检查
bash
bird whoami # confirm logged-in account
bird check # check credential availabilitybash
bird whoami # confirm logged-in account
bird check # check credential availabilityBehavior Rules
行为规则
- If user pastes an x.com/twitter.com URL → immediately
bird read <url> - If user says "thread" or "conversation" →
bird thread <url> - For search/mentions/timeline → run the appropriate command and present results
- When processing output for analysis (not displaying directly), prefer to keep ANSI escape codes out of context
--plain - Do NOT open browser tabs or use WebFetch for Twitter content
- Do NOT make up tweet content — only report what bird returns
- Do NOT post, reply, follow, or unfollow without explicit user intent
- This skill handles CLI execution (reading, posting, searching). For content strategy, copywriting, or social media planning, defer to other skills like social-content
- 如果用户粘贴了x.com/twitter.com链接 → 立即运行
bird read <url> - 如果用户提及"thread"或"conversation" → 运行
bird thread <url> - 对于搜索/提及/时间线相关请求 → 运行对应的命令并展示结果
- 当处理输出用于分析(而非直接展示)时,优先使用参数避免ANSI转义码混入上下文
--plain - 禁止打开浏览器标签页或使用WebFetch获取Twitter内容
- 禁止编造推文内容,仅返回bird输出的内容
- 没有用户明确意图的情况下,禁止发帖、回复、关注或取消关注
- 本技能负责CLI执行(读取、发帖、搜索)。内容策略、文案写作或社交媒体规划相关需求请转接其他技能,例如social-content
Post Verification
发帖验证
After running or :
bird tweetbird reply- Check the command output for a tweet URL or ID confirming success
- If output contains a URL → confirm to the user with the link
- If output shows an error → report the error; do not claim the tweet was posted
运行或后:
bird tweetbird reply- 检查命令输出中是否有推文URL或ID确认发布成功
- 如果输出包含URL → 将链接返回给用户确认
- 如果输出显示错误 → 上报错误,不得声称推文已发布
Error Handling
错误处理
- /
unauthorized→ run401, report auth status, suggest re-opening Safari to refresh cookiesbird check - → wait 60s and retry once, then tell the user if still failing
rate limit - → tweet was likely deleted or account suspended, tell the user
not found - If Safari auth fails → try Chrome fallback:
bird --chrome-profile "Default" <command> - Command hangs >30s → kill it and report the timeout
- /
unauthorized→ 运行401,上报身份验证状态,建议用户重新打开Safari刷新Cookiebird check - → 等待60秒后重试一次,如果仍然失败告知用户
rate limit - → 告知用户推文可能已被删除或账户已被暂停
not found - 如果Safari身份验证失败 → 尝试回退到Chrome:
bird --chrome-profile "Default" <command> - 命令挂起超过30秒 → 终止进程并上报超时