Twitter Skill (Read-Only)

Read Twitter/X for financial research using opencli (read-only).

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/twitter-reader, including the files SKILL.md points to.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit himself65/finance-skills/plugins/social-readers/skills/twitter-reader#main ~/.claude/skills/twitter-reader

For one project only, change the path to .claude/skills/twitter-reader. This skill also uses Node.js — copying SKILL.md alone won't be enough. See the folder on GitHub.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Twitter Skill (Read-Only)

Show the full text190 lines
namedescription
twitter-reader> Read Twitter/X for financial research using opencli (read-only). Use this skill whenever the user wants to read their Twitter feed, search for financial tweets, view bookmarks, look up user profiles, or gather market sentiment from Twitter/X. Triggers include: "check my feed", "search Twitter for", "show my bookmarks", who follows", "look up @user", "what's trending about", "market sentiment on Twitter", what are people saying about AAPL", "recent tweets from @elonmusk", "show me @user's posts", fintwit", any mention of Twitter/X in context of reading financial news or market research. This skill is READ-ONLY — it does NOT support posting, liking, retweeting, or any write operations.

Twitter Skill (Read-Only)

Reads Twitter/X for financial research using opencli, a universal CLI tool that bridges web services to the terminal via browser session reuse.

This skill is read-only. It is designed for financial research: searching market discussions, reading analyst tweets, tracking sentiment, and monitoring financial news on Twitter/X. It does NOT support posting, liking, retweeting, replying, or any write operations.

Important: opencli reuses your existing Chrome login session — no API keys or cookie extraction needed. Just be logged into x.com in Chrome and have the Browser Bridge extension installed.


Step 1: Ensure opencli Is Installed and Ready

Current environment status:

!`(command -v opencli && opencli doctor 2>&1 | head -5 && echo "READY" || echo "SETUP_NEEDED") 2>/dev/null || echo "NOT_INSTALLED"`

If the status above shows READY, skip to Step 2. If NOT_INSTALLED, install first:

# Install opencli globally
npm install -g @jackwener/opencli

If SETUP_NEEDED, guide the user through setup:

Setup

opencli requires Node.js >= 20 and a Chrome browser with the Browser Bridge extension:

  1. Install the Browser Bridge extension:
    • Download the latest opencli-extension-v{version}.zip from the GitHub Releases page
    • Unzip it, open chrome://extensions in Chrome, and enable Developer mode
    • Click Load unpacked and select the unzipped folder
  2. Login to x.com in Chrome — opencli reuses your existing browser session
  3. Verify connectivity:
opencli doctor

This auto-starts the daemon, verifies the extension is connected, and checks session health.

Common setup issues
Symptom Fix
Extension not connected Install Browser Bridge extension in Chrome and ensure it's enabled
Daemon not running Run opencli doctor — it auto-starts the daemon
No session for twitter.com Login to x.com in Chrome, then retry
CSRF token missing Refresh x.com in Chrome to regenerate the ct0 cookie

Step 2: Identify What the User Needs

Match the user's request to one of the read commands below, then use the corresponding command from references/commands.md.

User Request Command Key Flags
Setup check opencli doctor —
Home feed / timeline opencli twitter timeline --type for-you|following, --limit N (default 20)
Search tweets opencli twitter search "QUERY" --filter top|live, --limit N (default 15)
Trending topics opencli twitter trending --limit N (default 20)
Bookmarks opencli twitter bookmarks --limit N (default 20)
Recent tweets from a user opencli twitter tweets USERNAME --limit N (default 20)
View a specific thread opencli twitter thread TWEET_ID --limit N (default 50)
Twitter article opencli twitter article TWEET_ID —
User profile opencli twitter profile USERNAME — (defaults to logged-in user)
Followers opencli twitter followers USERNAME --limit N (default 50)
Following opencli twitter following USERNAME --limit N (default 50)
Notifications opencli twitter notifications --limit N (default 20)

Step 3: Execute the Command

General pattern
# Use -f json or -f yaml for structured output
opencli twitter timeline -f json --limit 20
opencli twitter timeline --type following --limit 20

# Recent tweets from a specific user
opencli twitter tweets elonmusk --limit 20 -f json

# Searching for financial topics
opencli twitter search "$AAPL earnings" --filter live --limit 10 -f json
opencli twitter search "Fed rate decision" --limit 20 -f yaml

# Trending topics
opencli twitter trending --limit 20 -f json
Key rules
  1. Check setup first — run opencli doctor before any other command if unsure about connectivity
  2. Use -f json or -f yaml for structured output when processing data programmatically
  3. Use -f csv when the user wants spreadsheet-compatible output
  4. Use --limit N to control result count — start with 10-20 unless the user asks for more
  5. For search, use --filter — top (default) for relevance, live for latest tweets
  6. NEVER execute write operations — this skill is read-only; do not post, like, retweet, reply, quote, follow, or delete
Output format flag (-f)
Format Flag Best for
Table -f table (default) Human-readable terminal output
JSON -f json Programmatic processing, LLM context
YAML -f yaml Structured output, readable
Markdown -f md Documentation, reports
CSV -f csv Spreadsheet export
Output columns

Tweet-listing commands (timeline, search, thread) include: id, author, text, created_at, likes, retweets, replies, views, url, has_media, media_urls.

tweets (per-user posts) also includes is_retweet.

bookmarks columns: author, text, likes, retweets, bookmarks, url.

trending columns: rank, topic, tweets, category.

Profile (profile) columns: screen_name, name, bio, location, url, followers, following, tweets, likes, verified, created_at.

followers / following columns: screen_name, name, bio, followers.

notifications columns: id, action, author, text, url.


Step 4: Present the Results

After fetching data, present it clearly for financial research:

  1. Summarize key content — highlight the most relevant tweets for the user's financial research
  2. Include attribution — show @username, tweet text, and engagement metrics (likes, views)
  3. Provide tweet URLs when the user might want to read the full thread
  4. For search results, group by relevance and highlight key themes, sentiment, or market signals
  5. For user profiles, present follower count, bio, and notable recent activity
  6. Flag sentiment — note bullish/bearish sentiment, consensus vs contrarian views
  7. Treat sessions as private — never expose browser session details

Step 5: Diagnostics

If something isn't working, run:

opencli doctor

This checks daemon status, extension connectivity, and browser session health.


Error Reference

Error Cause Fix
Extension not connected Browser Bridge not installed/enabled Install extension and enable it in Chrome
No session Not logged into x.com Login to x.com in Chrome
CSRF token missing Cookie expired or page needs refresh Refresh x.com in Chrome
Rate limited Too many requests Wait a few minutes, then retry

Reference Files

  • references/commands.md — Complete read command reference with all flags, research workflows, and usage examples
  • references/schema.md — Output format documentation and column definitions

Read the reference files when you need exact command syntax, research workflow patterns, or output details.

1---
2name: twitter-reader
3description: >
4 Read Twitter/X for financial research using opencli (read-only).
5 Use this skill whenever the user wants to read their Twitter feed, search for financial tweets,
6 view bookmarks, look up user profiles, or gather market sentiment from Twitter/X.
7 Triggers include: "check my feed", "search Twitter for", "show my bookmarks",
8 "who follows", "look up @user", "what's trending about", "market sentiment on Twitter",
9 "what are people saying about AAPL", "recent tweets from @elonmusk", "show me @user's posts",
10 "fintwit", any mention of Twitter/X in context of reading financial news or market research.
11 This skill is READ-ONLY — it does NOT support posting, liking, retweeting, or any write operations.
12---
13 
14# Twitter Skill (Read-Only)
15 
16Reads Twitter/X for financial research using [opencli](https://github.com/jackwener/opencli), a universal CLI tool that bridges web services to the terminal via browser session reuse.
17 
18**This skill is read-only.** It is designed for financial research: searching market discussions, reading analyst tweets, tracking sentiment, and monitoring financial news on Twitter/X. It does NOT support posting, liking, retweeting, replying, or any write operations.
19 
20**Important**: opencli reuses your existing Chrome login session — no API keys or cookie extraction needed. Just be logged into x.com in Chrome and have the Browser Bridge extension installed.
21 
22---
23 
24## Step 1: Ensure opencli Is Installed and Ready
25 
26**Current environment status:**
27 
28```
29!`(command -v opencli && opencli doctor 2>&1 | head -5 && echo "READY" || echo "SETUP_NEEDED") 2>/dev/null || echo "NOT_INSTALLED"`
30```
31 
32If the status above shows `READY`, skip to Step 2. If `NOT_INSTALLED`, install first:
33 
34```bash
35# Install opencli globally
36npm install -g @jackwener/opencli
37```
38 
39If `SETUP_NEEDED`, guide the user through setup:
40 
41### Setup
42 
43opencli requires Node.js >= 20 and a Chrome browser with the Browser Bridge extension:
44 
451. **Install the Browser Bridge extension:**
46 - Download the latest `opencli-extension-v{version}.zip` from the [GitHub Releases page](https://github.com/jackwener/opencli/releases)
47 - Unzip it, open `chrome://extensions` in Chrome, and enable **Developer mode**
48 - Click **Load unpacked** and select the unzipped folder
492. **Login to x.com** in Chrome — opencli reuses your existing browser session
503. **Verify connectivity:**
51 
52```bash
53opencli doctor
54```
55 
56This auto-starts the daemon, verifies the extension is connected, and checks session health.
57 
58### Common setup issues
59 
60| Symptom | Fix |
61|---------|-----|
62| `Extension not connected` | Install Browser Bridge extension in Chrome and ensure it's enabled |
63| `Daemon not running` | Run `opencli doctor` — it auto-starts the daemon |
64| `No session for twitter.com` | Login to x.com in Chrome, then retry |
65| `CSRF token missing` | Refresh x.com in Chrome to regenerate the ct0 cookie |
66 
67---
68 
69## Step 2: Identify What the User Needs
70 
71Match the user's request to one of the read commands below, then use the corresponding command from `references/commands.md`.
72 
73| User Request | Command | Key Flags |
74|---|---|---|
75| Setup check | `opencli doctor` | — |
76| Home feed / timeline | `opencli twitter timeline` | `--type for-you\|following`, `--limit N` (default 20) |
77| Search tweets | `opencli twitter search "QUERY"` | `--filter top\|live`, `--limit N` (default 15) |
78| Trending topics | `opencli twitter trending` | `--limit N` (default 20) |
79| Bookmarks | `opencli twitter bookmarks` | `--limit N` (default 20) |
80| Recent tweets from a user | `opencli twitter tweets USERNAME` | `--limit N` (default 20) |
81| View a specific thread | `opencli twitter thread TWEET_ID` | `--limit N` (default 50) |
82| Twitter article | `opencli twitter article TWEET_ID` | — |
83| User profile | `opencli twitter profile USERNAME` | — (defaults to logged-in user) |
84| Followers | `opencli twitter followers USERNAME` | `--limit N` (default 50) |
85| Following | `opencli twitter following USERNAME` | `--limit N` (default 50) |
86| Notifications | `opencli twitter notifications` | `--limit N` (default 20) |
87 
88---
89 
90## Step 3: Execute the Command
91 
92### General pattern
93 
94```bash
95# Use -f json or -f yaml for structured output
96opencli twitter timeline -f json --limit 20
97opencli twitter timeline --type following --limit 20
98 
99# Recent tweets from a specific user
100opencli twitter tweets elonmusk --limit 20 -f json
101 
102# Searching for financial topics
103opencli twitter search "$AAPL earnings" --filter live --limit 10 -f json
104opencli twitter search "Fed rate decision" --limit 20 -f yaml
105 
106# Trending topics
107opencli twitter trending --limit 20 -f json
108```
109 
110### Key rules
111 
1121. **Check setup first** — run `opencli doctor` before any other command if unsure about connectivity
1132. **Use `-f json` or `-f yaml`** for structured output when processing data programmatically
1143. **Use `-f csv`** when the user wants spreadsheet-compatible output
1154. **Use `--limit N`** to control result count — start with 10-20 unless the user asks for more
1165. **For search, use `--filter`** — `top` (default) for relevance, `live` for latest tweets
1176. **NEVER execute write operations** — this skill is read-only; do not post, like, retweet, reply, quote, follow, or delete
118 
119### Output format flag (`-f`)
120 
121| Format | Flag | Best for |
122|---|---|---|
123| Table | `-f table` (default) | Human-readable terminal output |
124| JSON | `-f json` | Programmatic processing, LLM context |
125| YAML | `-f yaml` | Structured output, readable |
126| Markdown | `-f md` | Documentation, reports |
127| CSV | `-f csv` | Spreadsheet export |
128 
129### Output columns
130 
131Tweet-listing commands (`timeline`, `search`, `thread`) include: `id`, `author`, `text`, `created_at`, `likes`, `retweets`, `replies`, `views`, `url`, `has_media`, `media_urls`.
132 
133`tweets` (per-user posts) also includes `is_retweet`.
134 
135`bookmarks` columns: `author`, `text`, `likes`, `retweets`, `bookmarks`, `url`.
136 
137`trending` columns: `rank`, `topic`, `tweets`, `category`.
138 
139Profile (`profile`) columns: `screen_name`, `name`, `bio`, `location`, `url`, `followers`, `following`, `tweets`, `likes`, `verified`, `created_at`.
140 
141`followers` / `following` columns: `screen_name`, `name`, `bio`, `followers`.
142 
143`notifications` columns: `id`, `action`, `author`, `text`, `url`.
144 
145---
146 
147## Step 4: Present the Results
148 
149After fetching data, present it clearly for financial research:
150 
1511. **Summarize key content** — highlight the most relevant tweets for the user's financial research
1522. **Include attribution** — show @username, tweet text, and engagement metrics (likes, views)
1533. **Provide tweet URLs** when the user might want to read the full thread
1544. **For search results**, group by relevance and highlight key themes, sentiment, or market signals
1555. **For user profiles**, present follower count, bio, and notable recent activity
1566. **Flag sentiment** — note bullish/bearish sentiment, consensus vs contrarian views
1577. **Treat sessions as private** — never expose browser session details
158 
159---
160 
161## Step 5: Diagnostics
162 
163If something isn't working, run:
164 
165```bash
166opencli doctor
167```
168 
169This checks daemon status, extension connectivity, and browser session health.
170 
171---
172 
173## Error Reference
174 
175| Error | Cause | Fix |
176|-------|-------|-----|
177| `Extension not connected` | Browser Bridge not installed/enabled | Install extension and enable it in Chrome |
178| `No session` | Not logged into x.com | Login to x.com in Chrome |
179| `CSRF token missing` | Cookie expired or page needs refresh | Refresh x.com in Chrome |
180| Rate limited | Too many requests | Wait a few minutes, then retry |
181 
182---
183 
184## Reference Files
185 
186- `references/commands.md` — Complete read command reference with all flags, research workflows, and usage examples
187- `references/schema.md` — Output format documentation and column definitions
188 
189Read the reference files when you need exact command syntax, research workflow patterns, or output details.
190 

Discussion

Alternatives

Also in Posting & schedulingSee all 364 in Marketing →
Linkedin comment drafterDraft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary. Use when the user pastes a post URL and asks to comment, engage, be first commenter, or repost with their thoughts. Produces 1-3 variants in the user's voice, picks a reaction, and publishes via Publora on approval. Not for replying to existing comments (use linkedin-reply-handler).Marketing · MITLinkedin content plannerGenerate a 7-day LinkedIn content plan from a theme, audience, and pillars. Produces per-day post pillar, format, hook type, CTA, posting time, daily comment targets, and a weekly inbound-readiness check. Use when the user wants to plan a week or month of content, not draft a single post (use linkedin-post-writer).Marketing · MITLinkedin employee advocacyStand up and run a LinkedIn employee advocacy program for a marketing or sales team. Covers 14-day launch playbook, brand-guideline governance, per-post time budget, cadence benchmarks, and team ROI (reach, engagement, pipeline). Triggers on "employee advocacy", "get the team posting", "scale LinkedIn across team", "advocacy ROI". Not for planning one person's own calendar (use linkedin-content-planner).Marketing · MITInstagram Audience InsightsRead your Instagram niche and profile from real data via Apify, no login. Scan a hashtag for the posts traveling now (likes, comments, owner) to see the format and hook that works. Pull profile stats for any handle, yours or a competitor's: followers, posts, bio, category. Instagram hides who liked or commented on other accounts, so this is discovery plus profiles, not engagers. Triggers on "what works in my niche", "scan the hashtag", "competitor stats". Not for writing captions (use ig-caption-writer).Marketing · MIT