linkedin-reader — Claude Code skill: read LinkedIn for finance
Pulls your LinkedIn feed and finance or trading job listings through opencli. Read-only: no posting, liking or applying.
npx skills add himself65/finance-skills --skill linkedin-reader -a claude-codeWhat linkedin-reader does
The skill gives your agent two things: your LinkedIn feed and job search with filters for location, seniority, job type, remote, company and posting date. Handy when you want to see what analysts are saying about a company or a market, gauge sentiment ahead of earnings, or line up quant and trading roles.
It runs on opencli, a CLI that reuses your existing Chrome session. No API keys, no cookie extraction — just be logged into linkedin.com in Chrome with the Browser Bridge extension installed. Node.js 20 or newer is required. opencli doctor checks connectivity, starts the daemon and reports session health.
Commands stay short: opencli linkedin timeline --limit 20 -f json for the feed, opencli linkedin search "quantitative analyst" --location "New York" --limit 15 -f json for jobs. Output format comes from -f: table by default, plus json, yaml, md and csv. An expired LinkedIn session throws AuthRequiredError — refresh linkedin.com in Chrome and log back in. The skill never posts, likes, comments or applies to anything.
What it helps with
- check what analysts are posting about a company before earnings
- pull your LinkedIn feed as JSON for further parsing
- find finance jobs filtered by remote and posting date
- gauge market sentiment from professional posts
- export job listings to CSV for a spreadsheet
Example prompts for the agent
- show my LinkedIn feed, last posts, json output
- find quantitative analyst jobs in New York, remote only
- what are analysts saying about this company — collect posts with reactions
How to install linkedin-reader
1Skills CLI (Vercel)
npx skills add himself65/finance-skills --skill linkedin-reader -a claude-code2Manually: put the files in place
~/.claude/skills/linkedin-reader/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/linkedin-reader/
1Skills CLI (Vercel)
npx skills add himself65/finance-skills --skill linkedin-reader -a codex2Manually: put the files in place
.agents/skills/linkedin-reader/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add himself65/finance-skills --skill linkedin-reader -a cursor2Manually: put the files in place
.cursor/skills/linkedin-reader/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install himself65/finance-skills linkedin-reader2Manually: put the files in place
.github/skills/linkedin-reader/SKILL.md1Skills CLI (Vercel)
npx skills add himself65/finance-skills --skill linkedin-reader -a gemini-cli2Platform CLI
gemini skills install https://github.com/himself65/finance-skills --path plugins/social-readers/skills/linkedin-readerManually: put the files in place
.devin/skills/linkedin-reader/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add himself65/finance-skills --skill linkedin-reader -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about linkedin-reader
How do I install linkedin-reader in Claude?
Run npx skills add himself65/finance-skills --skill linkedin-reader -a claude-code. The skill lands at ~/.claude/skills/linkedin-reader/SKILL.md.
What does linkedin-reader do?
It reads your LinkedIn feed and searches jobs with filters for location, seniority, job type, remote, company and date. Everything goes through opencli, read-only.
What do I need to run it?
Node.js 20 or newer, Chrome with the Browser Bridge extension, and an active linkedin.com session. No API keys — opencli reuses your browser session.
Source text
SKILL.md · MIT
---
name: linkedin-reader
description: >
Read LinkedIn for financial research through opencli: the user's feed, and job
search with location, seniority, job type, remote, company, and date filters. Use
this skill whenever the user wants to check their LinkedIn feed, see what
professionals or analysts are posting about a company, market, or earnings, gauge
professional sentiment, or search finance and trading jobs on LinkedIn. Read-only:
it cannot post, like, comment, connect, message, or apply.
---
# LinkedIn Skill (Read-Only)
If your host has not already executed the shell probes below (for example, in Codex), run the commands inside the `!` wrappers with its shell tool before choosing a setup path. Use the actual output; if shell access is unavailable, report that limitation.
Reads LinkedIn 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.
**This skill is read-only.** It is designed for financial research: reading professional commentary on markets, monitoring analyst posts, searching finance/trading jobs, and tracking professional sentiment. It does NOT support posting, liking, commenting, connecting, messaging, or any write operations.
**Important**: opencli reuses your existing Chrome login session — no API keys or cookie extraction needed. Just be logged into linkedin.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:
```bash
# 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](https://github.com/jackwener/opencli/releases)
- Unzip it, open `chrome://extensions` in Chrome, and enable **Developer mode**
- Click **Load unpacked** and select the unzipped folder
2. **Login to linkedin.com** in Chrome — opencli reuses your existing browser session
3. **Verify connectivity:**
```bash
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 linkedin.com` | Login to linkedin.com in Chrome, then retry |
| `AuthRequiredError` | LinkedIn session expired — refresh linkedin.com in Chrome and log in again |
---
## 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 / posts | `opencli linkedin timeline` | `--limit N` (default 20, max 100) |
| Search for jobs | `opencli linkedin search "QUERY"` | `--location`, `--limit N` (default 10, max 100), `--details` |
| Finance job search | `opencli linkedin search "QUERY"` | `--experience-level`, `--job-type`, `--remote`, `--company`, `--date-posted`, `--start` |
---
## Step 3: Execute the Command
### General pattern
```bash
# Read LinkedIn feed posts
opencli linkedin timeline --limit 20 -f json
# Search for finance/trading jobs
opencli linkedin search "quantitative analyst" --limit 10 -f json
opencli linkedin search "portfolio manager" --location "New York" --limit 15 -f json
# Detailed job listings with descriptions
opencli linkedin search "financial analyst" --details --limit 10 -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 job search, use filters** — `--location`, `--experience-level`, `--job-type`, `--remote`, `--date-posted` to narrow results
6. **Read-only** — don't post, like, comment, connect, message, or apply to jobs
### 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
**Timeline** posts include: `rank`, `author`, `author_url`, `headline`, `text`, `posted_at`, `reactions`, `comments`, `url`.
**Job search** results include: `rank`, `title`, `company`, `location`, `listed`, `salary`, `url`. With `--details`: also `description`, `apply_url`.
---
## Step 4: Present the Results
Lead with what matters for the user's research question rather than a raw dump. For feed posts, attribute each one (author, headline, text, reactions and comments, URL), highlight market commentary, analyst takes, and earnings reactions, and note the bullish or bearish lean and where views are consensus or contrarian. For job results, give title, company, location, salary when available, posting date, and the listing URL. Keep browser session details private.
---
## Step 5: Diagnostics
If something isn't working, run:
```bash
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 linkedin.com | Login to linkedin.com in Chrome |
| `AuthRequiredError` | LinkedIn login wall detected | Refresh linkedin.com and log in again |
| `EmptyResultError` | No results found for query | Broaden search terms or check feed has content |
| 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
Read the reference file when you need exact command syntax, research workflow patterns, or output details.
© himself65 · MIT · himself65/finance-skills