#652 by GitHub stars

Jakeschincariol/trader-skill

11 Claude skills that copy the investors you trust, watch the news and Congress, size every trade to your budget, and never place an order without your yes.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

trader-alerts/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-analyst/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-broker/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-budget/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-copycat/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-news/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-pelosi/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-rebalance/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-risk/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-screener/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

trader-tax/SKILL.md

Week of Oct 26, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

5189e79b9a48 → 5189e79b9a48

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 5189e79b9a480755a3733ac9713f5353981dbe18

git clone --filter=blob:none --no-checkout https://github.com/Jakeschincariol/trader-skill.git .hotskills/jakeschincariol-trader-skill && git -C .hotskills/jakeschincariol-trader-skill checkout --detach 5189e79b9a480755a3733ac9713f5353981dbe18 # Copy each selected skill directory from .hotskills/jakeschincariol-trader-skill into .claude/skills/<skill-name>/
1.5kGitHub stars
463stars in 7 days
11skills in this repository
1commit in 30 days

Heat

8.2
  • Star growth, last 7 daysAhead of 100% of tracked repositories
  • Star growth, last 24 hoursAhead of 100% of tracked repositories
  • Rank movement, last 7 daysAhead of 100% of tracked repositories
  • Commits, last 30 daysAhead of 54% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 7, 20261,469

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

trader-alerts

When your agent uses it

Price Alerts. Rings when a price target, a stop or the opening bell hits: above / below / stop rules, percent moves from the previous close, and the NYSE opening bell, each ringing once so you are not spammed. Knows NYSE hours with the 2026 and 2027 holidays and 1:00 p.m. early closes, fetches free delayed quotes (Yahoo chart JSON, Stooq CSV) one ticker at a time, and writes trader/prices.json for the other skills. Use when the user says "alert me when", "tell me if AAPL hits", "set a stop", "price target", "watch my stocks", "is the market open", "when does the market open", "get me prices", or to refresh prices before sizing, risk or tax.

What it loads into context

Frontmatter

200 tokens

Always available to the agent

SKILL.md

1,639 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. What it reads and writes
  2. Rule types
  3. Quotes
  4. The NYSE clock
  5. Steps
  6. Example: the reel's portfolio
  7. What it never does
  8. Safety

Scripts executed separately

  • alerts.py

Files

  • ../.claude-plugin/marketplace.jsonasset703 bytes
  • ../.claude-plugin/plugin.jsonasset630 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • SKILL.mdcore5,811 bytes
  • alerts.example.jsonasset408 bytes
  • alerts.pyruns24,190 bytes
Read SKILL.md

# trader-alerts

Price Alerts watches the numbers so the user does not have to. An alert is
information, never an order: when a stop rings, nothing is sold. If the user
wants to act, the normal path runs (size, risk, their yes).

`${CLAUDE_SKILL_DIR}` below is this skill's folder (where this SKILL.md lives).

```bash
python3 "${CLAUDE_SKILL_DIR}/alerts.py" clock                         # NYSE open or closed, next open
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote AAPL KO --write         # -> trader/prices.json
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote --holdings --write      # portfolio + targets tickers
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol AAPL --above 350
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol BAC --stop 50 --note "my stop"
View the complete source on GitHub

Skills included

  • trader-alerts
  • trader-analyst
  • trader-broker
  • trader-budget
  • trader-copycat
  • trader-news
  • trader-pelosi
  • trader-rebalance
  • trader-risk
  • trader-screener
  • trader-tax

Repository facts

License
MIT
Created
Oct 14, 2026
Last pushed
Oct 14, 2026
Forks
278
Open issues
3
Project activity
Active

Rank over the last 12 weeks

Now #652 · best #652

  1. #802 on Nov 2
  2. #776 on Nov 3
  3. #742 on Nov 4
  4. #693 on Nov 5
  5. #657 on Nov 6
  6. #652 since Nov 7
5 earlier periods
  1. #974 on Oct 28
  2. #934 on Oct 29
  3. #901 on Oct 30
  4. #865 on Oct 31
  5. #824 on Nov 1

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 3, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 58 notes
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-alerts/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-analyst/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-analyst/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-analyst/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-broker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-broker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-broker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-broker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-broker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • trader-budget/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 128 signals by file

.claude-plugin/marketplace.json

  • Network accessline 1
    {   "$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
  • Network accessline 2
    "$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
  • Network accessline 5
    "owner": {     "name": "Jake Schincariol",     "url": "https://opusjake.ai"
  • Network accessline 6
    "name": "Jake Schincariol",     "url": "https://opusjake.ai"   },
  • Network accessline 7
    "url": "https://opusjake.ai"
  • Network accessline 13
    "source": "./",       "category": "productivity",       "homepage": "https://github.com/Jakeschincariol/trader-skill"
  • Network accessline 14
    "category": "productivity",       "homepage": "https://github.com/Jakeschincariol/trader-skill"     }
  • Network accessline 15
    "homepage": "https://github.com/Jakeschincariol/trader-skill"

.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "Jake Schincariol",     "url": "https://opusjake.ai"
  • Network accessline 6
    "name": "Jake Schincariol",     "url": "https://opusjake.ai"   },
  • Network accessline 7
    "url": "https://opusjake.ai"
  • Network accessline 8
    },   "homepage": "https://github.com/Jakeschincariol/trader-skill",   "repository": "https://github.com/Jakeschincariol/trader-skill",
  • Network accessline 9
    "homepage": "https://github.com/Jakeschincariol/trader-skill",
  • Network accessline 10
    "repository": "https://github.com/Jakeschincariol/trader-skill",

trader-alerts/alerts.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 26
    Quotes (free, delayed, for alerts only, never for placing orders):   yahoo   https://query1.finance.yahoo.com/v8/finance/chart/AAPL (unofficial
  • Network accessline 27
    yahoo   https://query1.finance.yahoo.com/v8/finance/chart/AAPL (unofficial
  • Network accessline 28
    JSON, one request per ticker; the default)   stooq   https://stooq.com/q/l/?s=aapl.us&f=sd2t2ohlcv&h&e=csv (Stooq's free           CSV; it answered 404 on 2026-10-13, kept for when it is back)
  • Network accessline 29
    stooq   https://stooq.com/q/l/?s=aapl.us&f=sd2t2ohlcv&h&e=csv (Stooq's free
  • Network accessline 33
    NYSE calendar: the 2026 and 2027 holidays and 1:00 p.m. early closes as published at https://www.nyse.com/markets/hours-calendars (read 2026-10-13).
  • Network accessline 34
    published at https://www.nyse.com/markets/hours-calendars (read 2026-10-13).
  • Network accessline 49
    UA = "Mozilla/5.0 (compatible; trader-skill/1.0; +https://github.com/Jakeschincariol/trader-skill)" PAUSE = 0.5  # seconds between requests: be polite to free endpoints
  • Network accessline 182
    def stooq_url(sym):     return "https://stooq.com/q/l/?s=%s.us&f=sd2t2ohlcv&h&e=csv" % sym.lower().replace(".", "-")
  • Network accessline 183
    return "https://stooq.com/q/l/?s=%s.us&f=sd2t2ohlcv&h&e=csv" % sym.lower().replace(".", "-")
  • Network accessline 186
    def yahoo_url(sym):     return "https://query1.finance.yahoo.com/v8/finance/chart/%s?range=1d&interval=1d" % (
  • Network accessline 187
    return "https://query1.finance.yahoo.com/v8/finance/chart/%s?range=1d&interval=1d" % (
  • Network accessline 236
    def fetch(url, timeout=20):
  • Network accessline 237
    req = urllib.request.Request(url, headers={"User-Agent": UA, "Accept": "*/*"})
  • Network accessline 238
    try:         with urllib.request.urlopen(req, timeout=timeout) as r:             return r.read().decode("utf-8", "replace")
  • Network accessline 239
    with urllib.request.urlopen(req, timeout=timeout) as r:
  • Network accessline 261
    if i and pause:                     time.sleep(pause)                 text = fetch(stooq_url(sym) if source == "stooq" else yahoo_url(sym))
  • Network accessline 262
    time.sleep(pause)                 text = fetch(stooq_url(sym) if source == "stooq" else yahoo_url(sym))             quotes[sym] = parse_stooq(text, sym) if source == "stooq" else parse_yahoo(text, sym)
  • Network accessline 263
    text = fetch(stooq_url(sym) if source == "stooq" else yahoo_url(sym))

trader-analyst/SKILL.md

  • Network accessline 34
    - Reads `https://data.sec.gov/api/xbrl/companyfacts/CIK##########.json` (every

trader-analyst/facts.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 15
    Sources (SEC; a User-Agent with your name and email is required, from --user-agent, SEC_USER_AGENT or sec_user_agent in trader/config.json):   https://www.sec.gov/files/company_tickers.json            ticker -> CIK
  • Network accessline 16
    --user-agent, SEC_USER_AGENT or sec_user_agent in trader/config.json):   https://www.sec.gov/files/company_tickers.json            ticker -> CIK   https://data.sec.gov/api/xbrl/companyfacts/CIK##########.json
  • Network accessline 17
    https://www.sec.gov/files/company_tickers.json            ticker -> CIK
  • Network accessline 18
    https://data.sec.gov/api/xbrl/companyfacts/CIK##########.json
  • Network accessline 19
    https://data.sec.gov/submissions/CIK##########.json        filings list
  • Network accessline 20
    https://www.sec.gov/Archives/edgar/data/<cik>/<accession>/index.json
  • Network accessline 53
    TICKERS_URL = "https://www.sec.gov/files/company_tickers.json"
  • Network accessline 54
    FACTS_URL = "https://data.sec.gov/api/xbrl/companyfacts/CIK%s.json"
  • Network accessline 55
    SUBMISSIONS_URL = "https://data.sec.gov/submissions/CIK%s.json"
  • Network accessline 56
    ARCHIVE_URL = "https://www.sec.gov/Archives/edgar/data/%d/%s/"
  • Access to secretsline 80
    [Credential-related source omitted]
  • Network accessline 107
    time.sleep(self.pause - gap)         self._last = time.time()         req = urllib.request.Request(url, headers={"User-Agent": self.ua,
  • Network accessline 108
    self._last = time.time()         req = urllib.request.Request(url, headers={"User-Agent": self.ua,                                                    "Accept-Encoding": "gzip"})
  • Network accessline 109
    req = urllib.request.Request(url, headers={"User-Agent": self.ua,
  • Network accessline 110
    "Accept-Encoding": "gzip"})         try:             with urllib.request.urlopen(req, timeout=60) as resp:
  • Network accessline 111
    try:             with urllib.request.urlopen(req, timeout=60) as resp:                 data = resp.read()
  • Network accessline 112
    with urllib.request.urlopen(req, timeout=60) as resp:

trader-broker/SKILL.md

  • Access to secretsline 64
    [Credential-related source omitted]
  • Network accessline 101
    Interactive Brokers publishes a verified connector: claude.ai/directory/interactive-brokers (connector URL `https://api.ibkr.com/v1/api/mcp`). Add it from Customize >
  • Network accessline 102
    (connector URL `https://api.ibkr.com/v1/api/mcp`). Add it from Customize >

trader-broker/claude_desktop_config.example.json

  • Access to secretsline 7
    [Credential-related source omitted]

trader-broker/ticket.py

  • Executable scriptline 1
    #!/usr/bin/env python3

trader-budget/size.py

  • Executable scriptline 1
    #!/usr/bin/env python3

trader-copycat/SKILL.md

  • Network accessline 117
    Form 4 (optional): insiders and 10% owners report their trades within two business days on Form 4. To see them, open `https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=4&owner=include`
  • Network accessline 118
    business days on Form 4. To see them, open `https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=4&owner=include` (or the filer's submissions list) and read the filings the user asks about.
  • Network accessline 119
    `https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=4&owner=include`

trader-copycat/edgar13f.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 16
    Every call to SEC carries a User-Agent with your name and email, as SEC requires (https://www.sec.gov/os/accessing-edgar-data). The tool reads it from
  • Network accessline 17
    requires (https://www.sec.gov/os/accessing-edgar-data). The tool reads it from
  • Network accessline 62
    SUBMISSIONS = "https://data.sec.gov/submissions/CIK%s.json"
  • Network accessline 63
    ARCHIVE = "https://www.sec.gov/Archives/edgar/data/%s/%s/"
  • Network accessline 64
    TICKERS_URL = "https://www.sec.gov/files/company_tickers.json"
  • Network accessline 65
    SEARCH_URL = "https://efts.sec.gov/LATEST/search-index?keysTyped=%s"
  • Network accessline 66
    FIGI_URL = "https://api.openfigi.com/v3/mapping"
  • Network accessline 71
    UA_HELP = (     "SEC requires a User-Agent with your name and email on every request "     "(https://www.sec.gov/os/accessing-edgar-data). Set it once, any of these:\n"
  • Network accessline 72
    "SEC requires a User-Agent with your name and email on every request "     "(https://www.sec.gov/os/accessing-edgar-data). Set it once, any of these:\n"     "  1. add  \"sec_user_agent\": \"Your Name you@example.com\"  to trader/config.json
  • Network accessline 73
    "(https://www.sec.gov/os/accessing-edgar-data). Set it once, any of these:\n"
  • Access to secretsline 88
    [Credential-related source omitted]
  • Network accessline 136
    headers = {"User-Agent": self.ua or "trader-skill/1.0",                    "Accept-Encoding": "gzip"}         return self._open(urllib.request.Request(url, headers=headers), url)
  • Network accessline 138
    return self._open(urllib.request.Request(url, headers=headers), url)
  • Network accessline 147
    h = {"Content-Type": "application/json", "User-Agent": "trader-skill/1.0"}         h.update(headers or {})         req = urllib.request.Request(url, data=json.dumps(payload).encode("utf-8"),
  • Network accessline 148
    h.update(headers or {})         req = urllib.request.Request(url, data=json.dumps(payload).encode("utf-8"),                                      headers=h, method="POST")
  • Network accessline 149
    req = urllib.request.Request(url, data=json.dumps(payload).encode("utf-8"),
  • Network accessline 154
    self._wait()         try:             with urllib.request.urlopen(req, timeout=60) as resp:
  • Network accessline 155
    try:             with urllib.request.urlopen(req, timeout=60) as resp:                 data = resp.read()
  • Network accessline 156
    with urllib.request.urlopen(req, timeout=60) as resp:
  • Access to secretsline 530
    [Credential-related source omitted]
  • Access to secretsline 533
    [Credential-related source omitted]
  • Access to secretsline 534
    [Credential-related source omitted]
  • Access to secretsline 831
    [Credential-related source omitted]
  • Access to secretsline 904
    [Credential-related source omitted]

trader-news/SKILL.md

  • Network accessline 30
    `trader/targets.json` weights (so it works right after `/trader-copycat`). - Headlines: Yahoo Finance's public headline RSS, one feed per ticker   (`https://feeds.finance.yahoo.com/rss/2.0/headline?s=AAPL&region=US&lang=en-US`).
  • Network accessline 31
    - Headlines: Yahoo Finance's public headline RSS, one feed per ticker   (`https://feeds.finance.yahoo.com/rss/2.0/headline?s=AAPL&region=US&lang=en-US`). - Filings: SEC EDGAR's company Atom feed, 8-K by default (`--forms 8-K,10-Q`
  • Network accessline 32
    (`https://feeds.finance.yahoo.com/rss/2.0/headline?s=AAPL&region=US&lang=en-US`).

trader-news/news.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 13
    Sources, one request each per ticker:   - Yahoo Finance headline RSS:     https://feeds.finance.yahoo.com/rss/2.0/headline?s=<TICKER>&region=US&lang=en-US
  • Network accessline 14
    - Yahoo Finance headline RSS:     https://feeds.finance.yahoo.com/rss/2.0/headline?s=<TICKER>&region=US&lang=en-US   - SEC EDGAR filings Atom feed for the company (8-K by default: earnings,
  • Network accessline 15
    https://feeds.finance.yahoo.com/rss/2.0/headline?s=<TICKER>&region=US&lang=en-US
  • Network accessline 16
    - SEC EDGAR filings Atom feed for the company (8-K by default: earnings,     executive changes, deals, restatements):     https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=8-K&count=10&output=atom
  • Network accessline 17
    executive changes, deals, restatements):     https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=8-K&count=10&output=atom     SEC needs a User-Agent with your name and email (sec_user_agent in
  • Network accessline 18
    https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=<CIK>&type=8-K&count=10&output=atom
  • Network accessline 45
    YAHOO = "https://feeds.finance.yahoo.com/rss/2.0/headline?s=%s&region=US&lang=en-US"
  • Network accessline 46
    SEC_FEED = ("https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=%s&type=%s"
  • Network accessline 47
    "&dateb=&owner=include&count=%d&output=atom") TICKERS_URL = "https://www.sec.gov/files/company_tickers.json" PLACEHOLDER = "you@example.com"
  • Network accessline 48
    TICKERS_URL = "https://www.sec.gov/files/company_tickers.json"
  • Network accessline 49
    PLACEHOLDER = "you@example.com" BROWSER_UA = "Mozilla/5.0 (compatible; trader-skill/1.0; +https://github.com/Jakeschincariol/trader-skill)" KEEP_DAYS = 30
  • Network accessline 50
    BROWSER_UA = "Mozilla/5.0 (compatible; trader-skill/1.0; +https://github.com/Jakeschincariol/trader-skill)"
  • Access to secretsline 105
    [Credential-related source omitted]
  • Network accessline 135
    self._last = time.time()         headers = {"User-Agent": self.sec_ua if sec else BROWSER_UA, "Accept-Encoding": "gzip"}         req = urllib.request.Request(url, headers=headers)
  • Network accessline 136
    headers = {"User-Agent": self.sec_ua if sec else BROWSER_UA, "Accept-Encoding": "gzip"}         req = urllib.request.Request(url, headers=headers)         try:
  • Network accessline 137
    req = urllib.request.Request(url, headers=headers)
  • Network accessline 138
    try:             with urllib.request.urlopen(req, timeout=30) as resp:                 data = resp.read()
  • Network accessline 139
    with urllib.request.urlopen(req, timeout=30) as resp:

trader-pelosi/SKILL.md

  • Network accessline 38
    - Reads `https://disclosures-clerk.house.gov/public_disc/financial-pdfs/<YEAR>FD.zip`
  • Network accessline 118
    Senate reports live at `https://efdsearch.senate.gov`. Before searching, the
  • Network accessline 123
    1. The user opens `https://efdsearch.senate.gov/search/` in their browser and

trader-pelosi/ptr.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 14
    Where the data comes from:   - The index: https://disclosures-clerk.house.gov/public_disc/financial-pdfs/<YEAR>FD.zip
  • Network accessline 15
    - The index: https://disclosures-clerk.house.gov/public_disc/financial-pdfs/<YEAR>FD.zip
  • Network accessline 16
    (a ZIP with <YEAR>FD.xml: one <Member> per filing, FilingType P = PTR).   - Each PTR: https://disclosures-clerk.house.gov/public_disc/ptr-pdfs/<YEAR>/<DocID>.pdf   - Reading a PDF needs `pdftotext` (poppler) if you want rows from this tool.
  • Network accessline 17
    - Each PTR: https://disclosures-clerk.house.gov/public_disc/ptr-pdfs/<YEAR>/<DocID>.pdf
  • Network accessline 48
    INDEX_URL = "https://disclosures-clerk.house.gov/public_disc/financial-pdfs/%d%s.zip"
  • Network accessline 49
    PTR_URL = "https://disclosures-clerk.house.gov/public_disc/ptr-pdfs/%d/%s.pdf"
  • Network accessline 50
    FD_URL = "https://disclosures-clerk.house.gov/public_disc/financial-pdfs/%d/%s.pdf"
  • Network accessline 51
    UA = "trader-skill/1.0 (+https://github.com/Jakeschincariol/trader-skill)"
  • Network accessline 82
    def download(url, timeout=60):     req = urllib.request.Request(url, headers={"User-Agent": UA})
  • Network accessline 83
    req = urllib.request.Request(url, headers={"User-Agent": UA})
  • Network accessline 84
    try:         with urllib.request.urlopen(req, timeout=timeout) as resp:             return resp.read()
  • Network accessline 85
    with urllib.request.urlopen(req, timeout=timeout) as resp:

trader-rebalance/rebalance.py

  • Executable scriptline 1
    #!/usr/bin/env python3

trader-risk/check.py

  • Executable scriptline 1
    #!/usr/bin/env python3

trader-screener/screen.py

  • Executable scriptline 1
    #!/usr/bin/env python3

trader-tax/lots.py

  • Executable scriptline 1
    #!/usr/bin/env python3

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 1 fact
Signal confidence: 113 facts

and 63 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md trader-alerts/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md trader-alerts/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md trader-alerts/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md trader-alerts/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md trader-alerts/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

Jakeschincariol/trader-skill: #652 on hotskills, 1.5k stars

[![Jakeschincariol/trader-skill on hotskills](https://hotskills.dev/badge/jakeschincariol-trader-skill.svg)](https://hotskills.dev/skill/jakeschincariol-trader-skill/)