x-bookmarksFetch, summarize, and manage X/Twitter bookmarks via bird CLI or X API v2. Use when: (1) user says "check my bookmarks", "what did I bookmark", "bookmark dig...
Install via ClawdBot CLI:
clawdbot install sharbelayy/x-bookmarksTurn X/Twitter bookmarks from a graveyard of good intentions into actionable work.
Core philosophy: Don't just summarize ā propose actions the agent can execute.
This skill supports two backends. Pick the first one that works:
npm install -g bird-clibird whoami ā if this prints a username, you're good1. Check if `bird` command exists ā try `bird whoami`
2. If bird works ā use bird CLI path
3. If not ā check for X API tokens (~/.config/x-bookmarks/tokens.json)
4. If tokens exist ā use X API path (auto-refresh)
5. If neither ā guide user through setup (offer both options)
# Latest 20 bookmarks (default)
bird bookmarks --json
# Specific count
bird bookmarks -n 50 --json
# All bookmarks (paginated)
bird bookmarks --all --json
# With thread context
bird bookmarks --include-parent --thread-meta --json
# With Chrome cookie auth
bird --chrome-profile "Default" bookmarks --json
# With manual tokens
bird --auth-token "$AUTH_TOKEN" --ct0 "$CT0" bookmarks --json
If user has a .env.bird file or env vars AUTH_TOKEN/CT0, source them first: source .env.bird
# First-time setup (opens browser for OAuth)
python3 scripts/x_api_auth.py --client-id "YOUR_CLIENT_ID" --client-secret "YOUR_SECRET"
# Fetch bookmarks (auto-refreshes token)
python3 scripts/fetch_bookmarks_api.py -n 20
# All bookmarks
python3 scripts/fetch_bookmarks_api.py --all
# Since a specific tweet
python3 scripts/fetch_bookmarks_api.py --since-id "1234567890"
# Pretty print
python3 scripts/fetch_bookmarks_api.py -n 50 --pretty
The API script outputs the same JSON format as bird CLI, so all downstream workflows work identically.
Token management is automatic: tokens are stored in ~/.config/x-bookmarks/tokens.json and refreshed via the saved refresh_token. If refresh fails, the agent should guide the user to re-run x_api_auth.py.
If the user already has a Bearer token (e.g., from another tool), they can skip the OAuth dance:
X_API_BEARER_TOKEN="your_token" python3 scripts/fetch_bookmarks_api.py -n 20
Each bookmark returns:
{
"id": "tweet_id",
"text": "tweet content",
"createdAt": "2026-02-11T01:00:06.000Z",
"replyCount": 46,
"retweetCount": 60,
"likeCount": 801,
"bookmarkCount": 12,
"viewCount": 50000,
"author": { "username": "handle", "name": "Display Name" },
"media": [{ "type": "photo|video", "url": "..." }],
"quotedTweet": { "id": "..." }
}
The key differentiator: don't just summarize, propose actions the agent can execute.
Format output as:
š CATEGORY (count)
⢠Bookmark summary (@author)
ā š¤ I CAN: [specific action the agent can take]
Set up a recurring bookmark check. Suggest this cron config to the user:
Schedule: daily or weekly
Payload: "Check my X bookmarks for new saves since last check.
Fetch bookmarks, compare against last digest, summarize only NEW ones.
Categorize and propose actions. Deliver to me."
Track state by saving the most recent bookmark ID processed. Store in workspace:
memory/bookmark-state.json ā { "lastSeenId": "...", "lastDigestAt": "..." }
When user asks for content ideas from bookmarks:
When user has enough bookmark history:
--all)For stale bookmarks:
bird unbookmark (bird only)| Error | Cause | Fix |
|-------|-------|-----|
| bird: command not found | bird CLI not installed | Use X API path instead, or npm i -g bird-cli |
| "No Twitter cookies found" | Not logged into X in browser | Log into x.com in Chrome/Firefox, or use X API |
| EPERM on Safari cookies | macOS permissions | Use Chrome/Firefox or X API instead |
| Empty results | Cookies/token expired | Re-login or re-run x_api_auth.py |
| Rate limit (429) | Too many API requests | Wait and retry, use --count to limit |
| "No X API token found" | Haven't run auth setup | Run x_api_auth.py --client-id YOUR_ID |
| Token refresh failed | Refresh token expired | Re-run x_api_auth.py to re-authorize |
-n 20 for quick digests, --all for deep analysis--include-parent for thread context on repliesbookmarkCount and viewCount (bird may not)--folder-id Generated Mar 1, 2026
Content creators use this skill to automatically generate new content ideas from their saved tweets, turning bookmarks into draft tweets, videos, or articles. The agent categorizes bookmarks by topic and proposes specific actions like drafting content in the user's voice, helping maintain a consistent posting schedule.
Researchers or analysts employ the skill to summarize and organize bookmarked tweets on topics like AI, crypto, or marketing trends. The agent extracts actionable insights, flags stale information, and suggests deeper research or implementation steps, enhancing productivity in fast-moving fields.
Individuals use the skill to manage their X bookmarks as a personal knowledge base, automatically categorizing saved tweets into topics like tools, advice, or news. The agent proposes follow-up actions such as testing tools or implementing strategies, helping users act on saved information rather than letting it accumulate.
Teams in agencies or startups set up scheduled digests to share relevant bookmarked tweets among members. The agent fetches new bookmarks, summarizes them by category, and proposes collaborative actions like content creation or strategy discussions, fostering team alignment and idea sharing.
Offer a basic version of the skill for free with limited bookmark processing and actions, then charge for advanced features like AI-powered categorization, priority support, and integration with other tools. Revenue comes from monthly subscriptions, targeting individual professionals and small teams.
License the skill to larger organizations for internal use, providing custom integrations, enhanced security, and dedicated support. Revenue is generated through annual contracts, focusing on industries like marketing agencies or tech companies that rely on social media insights.
Offer paid services to help users set up the skill, including authentication configuration, cron scheduling, and custom workflow tuning. Revenue comes from one-time setup fees or ongoing maintenance packages, appealing to non-technical users or businesses seeking tailored solutions.
š¬ Integration Tip
Ensure users have either bird CLI installed or X API tokens configured; guide them through setup with clear error messages and fallback options for smooth integration.
Fetch and read transcripts from YouTube videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
Fetch and summarize YouTube video transcripts. Use when asked to summarize, transcribe, or extract content from YouTube videos. Handles transcript fetching via residential IP proxy to bypass YouTube's cloud IP blocks.
Browse, search, post, and moderate Reddit. Read-only works without auth; posting/moderation requires OAuth setup.
Interact with Twitter/X ā read tweets, search, post, like, retweet, and manage your timeline.
LinkedIn automation via browser relay or cookies for messaging, profile viewing, and network actions.
Search YouTube videos, get channel info, fetch video details and transcripts using YouTube Data API v3 via MCP server or yt-dlp fallback.