opencli-reader skill
✓ 인증됨금융, 소셜 커뮤니티, 연구 및 미디어 플랫폼을 포함하여 지원되는 100개 이상의 웹사이트에서 데이터를 가져오는 읽기 전용 폴백 기능을 제공합니다.
- GitHub 스타
- 3,526
- 파일
- 4
- 마지막 커밋
- 2026년 11월 4일
- 라이선스
- MIT
- 허용된 도구
- —
opencli-reader skill은 무엇을 하나요?
opencli-reader은(는) agent skill입니다. 금융, 소셜 커뮤니티, 연구 및 미디어 플랫폼을 포함하여 지원되는 100개 이상의 웹사이트에서 데이터를 가져오는 읽기 전용 폴백 기능을 제공합니다.
skill의 SKILL.md에서 생성된 요약입니다.
opencli-reader skill 정보
opencli-reader는 금융 플랫폼, 소셜 커뮤니티, 연구 저장소와 같은 다양한 웹 소스에서 데이터를 가져올 수 있게 해줍니다. Twitter, LinkedIn 또는 Discord와 같은 플랫폼을 위한 전용 SKILL을 사용할 수 없을 때 에이전트를 위한 읽기 전용 폴백 역할을 수행합니다. 100개 이상의 지원 사이트가 포함된 어댑터 레지스트리에 접근하여 Bloomberg, Reddit, arXiv, Substack 등에서 구조화된 정보를 검색할 수 있습니다.
사용자가 전용 리더가 지원하지 않는 사이트의 정보를 요청할 때 에이전트는 이 SKILL을 로드해야 합니다. 이 SKILL은 opencli CLI 도구에 의존하며, 단순한 공개 HTTP 요청부터 쿠키 또는 UI 자동화를 사용하는 브라우저 기반 상호작용에 이르기까지 다양한 연결 전략을 활용할 수 있습니다. 신뢰할 수 있는 처리를 위해 이 SKILL은 가급적 JSON 형식의 구조화된 데이터를 생성합니다. 읽기 작업으로 엄격히 제한되며, 어떤 플랫폼에서도 게시, 좋아요, 댓글을 다는 명령을 실행하지 않습니다.
agent가 수행할 수 있는 작업
- 1금융 시장 헤드라인 가져오기Bloomberg에서 최신 시장 뉴스 및 헤드라인을 가져옵니다.
- 2학술 연구 논문 검색arXiv에서 특정 주제를 검색하여 최신 논문을 찾습니다.
- 3소셜 커뮤니티 트렌드 모니터링Reddit의 특정 subreddit에서 인기 게시물을 읽습니다.
- 4주식 시장 순위 추적Eastmoney에서 현재 인기 주식 순위를 가져옵니다.
skill의 SKILL.md를 기반으로 작성되었습니다. 모든 사용 사례는 해당 문서의 인용구와 대조 확인되었습니다.
opencli-reader skill 설치 방법
각 명령은 skill 폴더를 클라이언트의 skills 디렉터리에 복사합니다. 클라이언트를 재시작하거나 새 세션을 시작하여 로드하세요.플러그인에 opencli-reader skill 설치
/plugin marketplace add himself65/finance-skills /plugin install finance-social-readers@finance-skills
Claude Code에 opencli-reader skill 설치
~/.claude/skills/opencli-reader/SKILL.md
$ npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader ~/.claude/skills/opencli-readerClaude Code (project)에 opencli-reader skill 설치
.claude/skills/opencli-reader/SKILL.md
$ npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader .claude/skills/opencli-readerCodex에 opencli-reader skill 설치
~/.agents/skills/opencli-reader/SKILL.md
$ npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader ~/.agents/skills/opencli-readerGemini CLI에 opencli-reader skill 설치
~/.gemini/skills/opencli-reader/SKILL.md
$ npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader ~/.gemini/skills/opencli-readerClaude.ai에 opencli-reader skill 설치
npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader opencli-reader && zip -r opencli-reader.zip opencli-reader # claude.ai → Customize → Skills → + → Create skill → Upload a skill → opencli-reader.zip
자동 검사
2026년 11월 15일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 보안 감사는 아닙니다. 에이전트가 실행하기 전에 스크립트를 읽어 보세요. 검사 방식
- 소스 저장소 연결 및 접근 가능himself65/finance-skills/plugins/social-readers/skills/opencli-reader is public and reachablegithub.com/himself65/finance-skills/tree/HEAD/plugins/social ↗통과
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit 2026-11-04github.com/himself65/finance-skills/commits ↗통과
- 스크립트에 다운로드 후 실행이나 자격 증명 탈취가 없음No scripts in the skill folder통과
- SKILL.md에 숨겨진 지침 없음No override phrases, safeguard switches, credential requests or hidden charactersgithub.com/himself65/finance-skills/blob/HEAD/plugins/social ↗통과
- 사전 허용 도구가 제한됨No pre-approved tools; the agent asks before using onegithub.com/himself65/finance-skills/blob/HEAD/plugins/social ↗통과
- SKILL.md가 Agent Skills 형식을 따름Valid name and description; says when to use it; 252 linesgithub.com/himself65/finance-skills/blob/HEAD/plugins/social ↗통과
SKILL.md
GitHub에서 보기opencli Reader (Generic Fallback, 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.
Generic fallback for any source opencli supports via its adapter registry (100+ sites, growing). Use this skill only when no dedicated finance-skill covers the source — the specialized skills (twitter-reader, linkedin-reader, discord-reader, telegram-reader, yc-reader) are always preferred when the request matches one of them.
This skill is read-only. Write commands that opencli exposes (post, like, comment, send, save, upvote, subscribe, follow, delete, reply-dm, etc.) must not be invoked.
Step 1: Decide Whether to Use This Skill
Only use this skill if the request cannot be handled by a more specific skill.
| If the user asks about… | Use this skill instead |
|---|---|
| Twitter/X | twitter-reader |
linkedin-reader |
|
| Discord | discord-reader |
| Telegram | telegram-reader |
| Y Combinator | yc-reader |
| Anything else opencli supports (Yahoo Finance, Bloomberg, Reuters, Reddit, HackerNews, Eastmoney, Xueqiu, Substack, arXiv, etc.) | this skill |
If the source is not in opencli's registry either, stop and tell the user the request isn't covered — don't fall back to ad-hoc scraping.
Step 2: Ensure opencli Is 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 NOT_INSTALLED:
npm install -g @jackwener/opencli
If SETUP_NEEDED, guide the user through Browser Bridge setup (only required for adapters whose strategy is COOKIE, HEADER, INTERCEPT, or UI — PUBLIC and LOCAL adapters work without a browser):
- Download the latest
opencli-extension-v{version}.zipfrom the GitHub Releases page - Unzip it, open
chrome://extensionsin Chrome, enable Developer mode - Click Load unpacked and select the unzipped folder
- Make sure Chrome is logged into the target site, then re-run
opencli doctor
Requires Node.js >= 20 (or Bun >= 1.0).
Step 3: Discover the Right Command
Do not guess command names or flags — the registry has 500+ commands and changes weekly. Instead:
# Full registry (grouped by site), machine-readable JSON
opencli list -f json
# Filter to a site
opencli list | grep -i <site>
# Site-level help (all commands + flags)
opencli <site> --help
# Command-level help (positional args + flags + defaults)
opencli <site> <command> --help
The opencli list -f json entry for each command includes:
site— adapter namespace (e.g.,yahoo-finance)name— subcommand (e.g.,quote)strategy—PUBLIC/COOKIE/HEADER/INTERCEPT/UI/LOCAL— tells you if a browser login is neededdescription,args,columns— canonical metadata
Use opencli list -f json as the source of truth. Never paste a site list into the plan from memory; adapters are added every week.
Quick map of the most common finance / research sources
The table below is a shortlist, not exhaustive — always confirm with opencli <site> --help.
| Source | Site slug | Common commands |
|---|---|---|
| Yahoo Finance | yahoo-finance |
quote |
| Bloomberg | bloomberg |
markets, economics, industries, tech, politics, opinions, news, businessweek, feeds, main |
| Reuters | reuters |
search |
| Eastmoney (东方财富) | eastmoney |
quote, rank, kline, sectors, etf, holders, money-flow, northbound, longhu, kuaixun, convertible, index-board, announcement, hot-rank |
| Xueqiu (雪球) | xueqiu |
stock, hot-stock, hot, feed, comments, watchlist, search, groups, fund-snapshot, fund-holdings, earnings-date, kline |
| Sinafinance | sinafinance |
(see --help) |
| TDX / THS | tdx, ths |
(see --help) |
| Barchart (options) | barchart |
quote, options, flow, greeks |
reddit |
hot, popular, frontpage, search, subreddit, read, user, user-posts, user-comments, saved |
|
| HackerNews | hackernews |
top, best, new, ask, show, jobs, user, search |
| Substack | substack |
feed, publication, search |
| Medium | medium |
(see --help) |
| arXiv | arxiv |
(see --help) |
| Google Scholar | google-scholar |
(see --help) |
weibo |
(see --help) |
|
| Bilibili | bilibili |
hot, video + more |
| Xiaohongshu (小红书) | xiaohongshu |
(see --help) |
| Rednote (小红书 international) | rednote |
(see --help — mirrors xiaohongshu) |
| Zhihu | zhihu |
(see --help) |
| Baidu Scholar | baidu-scholar |
(see --help) |
| Wanfang | wanfang |
(see --help) |
| 36kr | 36kr |
(see --help) |
| Jike | jike |
(see --help) |
| Bluesky | bluesky |
(see --help) |
| Apple Podcasts | apple-podcasts |
(see --help) |
| Xiaoyuzhou (podcasts) | xiaoyuzhou |
(see --help) |
| Spotify | spotify |
(see --help) |
| YouTube | youtube |
(see --help) |
| Weixin Official Account | weixin |
(see --help — drafts is read; create-draft is write) |
| Toutiao | toutiao |
articles |
| Government policy / law | gov-policy, gov-law |
(see --help) |
| Web download / reader | web |
read, download |
For anything not listed, run opencli list -f json and filter.
Step 4: Check the Adapter's Strategy Before Running
Run opencli list -f json (or opencli <site> <command> --help) and read the strategy field:
| Strategy | What it means | Preconditions |
|---|---|---|
PUBLIC |
Pure HTTP; no browser needed | None |
LOCAL |
Talks to a local endpoint | Local service running |
COOKIE / HEADER |
Reuses your Chrome login for the site | Chrome logged into the site + Browser Bridge extension loaded |
INTERCEPT |
Opens an automation window to capture a signed request | Same as COOKIE; be patient — may take several seconds |
UI |
Full DOM interaction | Same as COOKIE; slowest; results depend on the site's current layout |
If the user doesn't have a login and the adapter's strategy is not PUBLIC / LOCAL, tell them they need to log into the site in Chrome before retrying.
Step 5: Execute the Command
General pattern
opencli <site> <command> [positional-args] [flags] -f json
Universal flags
| Flag | Effect |
|---|---|
-f json |
Structured JSON — always prefer this for agent processing |
-f yaml / -f csv / -f md / -f table / -f plain |
Other formats |
-v |
Verbose logging (also sets OPENCLI_VERBOSE=1) |
--live |
Keep the automation window open after the command (browser-backed adapters only) |
--focus |
Open the automation window in the foreground (browser-backed adapters only) |
Command-specific flags (--limit, --filter, --type, etc.) are not universal — always check opencli <site> <command> --help.
Examples
# Yahoo Finance quote (PUBLIC)
opencli yahoo-finance quote AAPL -f json
# Reddit hot posts in a subreddit (COOKIE or PUBLIC depending on subreddit)
opencli reddit subreddit wallstreetbets --limit 20 -f json
opencli reddit search "SPY options" --limit 15 -f json
# HackerNews top (PUBLIC)
opencli hackernews top --limit 20 -f json
# Eastmoney hot rank (PUBLIC)
opencli eastmoney hot-rank -f json
# Xueqiu hot stocks (PUBLIC or COOKIE)
opencli xueqiu hot-stock -f json
opencli xueqiu stock SH600519 -f json
# Bloomberg markets headlines (COOKIE)
opencli bloomberg markets -f json
# arXiv paper search (PUBLIC)
opencli arxiv search "volatility surface" --limit 10 -f json
# Substack feed
opencli substack feed --limit 20 -f json
# Web page → readable markdown (PUBLIC)
opencli web read "https://example.com/article" -f json
Key rules
- Always use
opencli <site> <command> --helpbefore constructing a command you haven't run this session — don't assume flag names. - Use
-f jsonfor programmatic processing. - Start with a small
--limit(10–20) to validate the shape before pulling more. - Check
strategybefore running a browser-backed adapter — if the user isn't logged in, aCOOKIE/UIadapter will fail. - Read-only — skip write commands. Common write command names across adapters:
post,reply,comment,like,unlike,upvote,save,subscribe,unsubscribe,follow,unfollow,block,unblock,delete,bookmark,unbookmark,send,create-draft,reply-dm,accept. If you're unsure whether a command is read or write, check thedescriptioninopencli list -f json; if it suggests a mutation, skip it.
Step 6: Handle Failures
If a command returns empty or errors out, the site may have changed its selectors / API. opencli has a built-in self-repair loop:
# Re-run with diagnostic context
OPENCLI_DIAGNOSTIC=1 opencli <site> <command> <args>
This emits a structured RepairContext that identifies the failing adapter's source path. Possible responses:
- If the user has the
opencli-autofixskill installed, tell them to run that skill. - If not, suggest they file an issue at https://github.com/jackwener/opencli/issues with the
RepairContextoutput. - Don't silently fall back to hand-rolled scraping — that hides the bug from the upstream registry.
Rate limits on the target site can also cause empty results; wait and retry.
Step 7: Present the Results
- Summarize the data for the user's actual question, don't just dump the raw JSON.
- Include source attribution — site name + URL for each item where available.
- For market data, surface price / % change / volume / market cap and flag anomalies.
- For news/posts, highlight headlines, timestamps, and key quotes.
- For research (arXiv, Scholar), include title, authors, abstract, and link.
- Treat browser sessions as private — never echo CDP endpoints, cookies, or auth tokens.
Reference Files
references/discovery.md— How to navigateopencli list,opencli <site> --help, and the JSON schema of registry entriesreferences/finance-sources.md— Detailed notes on the finance-heavy adapters (Yahoo Finance, Bloomberg, Eastmoney, Xueqiu, Barchart, Reuters, Reddit, HackerNews) and which commands are read vs write
Read these reference files when you need concrete examples for a specific site, or when the user asks for a capability not covered by one of the dedicated readers.
이 스킬의 파일
4opencli-reader skill 질문
Claude Code에 opencli-reader skill을 어떻게 설치하나요?
npx degit himself65/finance-skills/plugins/social-readers/skills/opencli-reader ~/.claude/skills/opencli-reader를 실행합니다. Claude Code는 ~/.claude/skills(모든 프로젝트) 또는 .claude/skills(한 프로젝트)에서 skills를 로드하며, 설명이 작업과 일치할 때 skill을 사용합니다.
opencli-reader skill을 사용할 수 있는 클라이언트는 무엇인가요?
Agent Skills 형식을 읽는 모든 클라이언트(Claude Code, Codex, Gemini CLI, claude.ai(ZIP으로 업로드))가 사용할 수 있습니다. skill 내 스크립트는 클라이언트가 코드 실행을 허용하는 경우에만 실행됩니다.
opencli-reader SKILL은 언제 사용해야 하나요?
twitter-reader 또는 discord-reader와 같은 전용 특화 SKILL을 사용할 수 없는 경우, opencli가 지원하는 모든 소스에 대한 범용 폴백으로 이 SKILL을 사용하십시오.
이 SKILL로 웹사이트에 게시물을 올리거나 댓글을 달 수 있나요?
아니요, 이 SKILL은 엄격하게 읽기 전용이며 게시, 좋아요, 팔로우와 같은 쓰기 명령을 실행하는 데 사용해서는 안 됩니다.
로그인이 필요한 사이트의 경우 어떻게 해야 하나요?
COOKIE, HEADER, INTERCEPT 또는 UI 전략을 사용하는 어댑터의 경우, Chrome에서 대상 사이트에 로그인되어 있어야 하며 Browser Bridge 확장이 로드되어 있어야 합니다.