Skip to content
cccskills
FreePublished on GitHub

trader-pelosi

The Pelosi Tracker. Watches the stock trades members of Congress must disclose under the STOCK Act: reads the House Clerk's public Periodic Transaction Reports (PTRs) as soon as they are posted, alerts once per new filing, and turns each PDF into clean rows (who, owner, stock, ticker, buy or sell, options strike and expiry, trade date, amount range, how many days it took to disclose). Flags trades in stocks you hold. Senate reports are covered by a documented manual route. Use when the user says "what is Pelosi buying", "track Nancy Pelosi", "Congress trades", "politician stock trades", "did any congressman buy X", "alert me when Pelosi files", or "run the Pelosi skill".

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (2)

  • SKILL.md7.1 KB
  • ptr.py22.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

trader-pelosi

Members of Congress have to report their trades, their spouse's and their dependent children's. The House Clerk posts every report as a PDF and lists them all in one index file per year. This skill reads that index, notices the moment a new report appears, and reads the report for you.

It is fast. It is not early. A PTR is due within 30 days of the member learning of the trade and never more than 45 days after it, so by the time anyone can read it the trade is days or weeks old. There is no inside information here: only public filings, read quickly. Say that every time.

Tool in this folder (standard library Python; pdftotext from poppler is optional, to read the PDFs locally):

python3 "${CLAUDE_SKILL_DIR}/ptr.py" --help

What it reads and writes

  • Reads https://disclosures-clerk.house.gov/public_disc/financial-pdfs/<YEAR>FD.zip (one <Member> per filing: name, district, FilingType, FilingDate, DocID) and each PTR at .../public_disc/ptr-pdfs/<YEAR>/<DocID>.pdf.
  • Writes trader/state/pelosi.json (the DocIDs already shown, so each PTR alerts once) and keeps downloaded PDFs in trader/state/ptr-pdfs/.
  • Reads trader/portfolio.json (if it exists) to flag trades in what you hold.

The rules

  • Quote the filing, not a tracker. Every row comes from the PTR PDF on the Clerk's site, with its DocID and link. Third-party trackers are fine for browsing but can be off (Capitol Trades showed Pelosi's trade dates one day earlier than her PTRs). The PTR wins.
  • Amounts are ranges. "$1,000,001 - $5,000,000", never "$3 million".
  • Owner matters. SP is the spouse, JT joint, DC a dependent child, blank the member. Pelosi's 2026 trades are all SP: Paul Pelosi.
  • Say the delay. Each row shows how many days passed between the trade and the filing; over 45 is flagged as late.
  • Options are options. A call bought with a strike and an expiry is not a share purchase. The tool reads contracts, strike and expiry from the description and marks exercises.

Step 1: what has been filed

python3 "${CLAUDE_SKILL_DIR}/ptr.py" index --member pelosi
python3 "${CLAUDE_SKILL_DIR}/ptr.py" index --since 2026-10-01        # every member
python3 "${CLAUDE_SKILL_DIR}/ptr.py" index --member "Josh Gottheimer" --year 2025

--member takes a last name, "First Last" or "Last, First", and repeats. --type '' lists every filing type (annual reports are type O).

Step 2: watch for new ones

python3 "${CLAUDE_SKILL_DIR}/ptr.py" new --member pelosi --read

Shows only PTRs not seen at the last check (the first run shows the last 45 days), downloads and reads them with --read, and records them in the state file. Exit code 1 means nothing new. In January it also checks last year's index. The Clerk rebuilds the index file about once a day (the copy read on 2026-10-13 was stamped 09:00 that morning), so checking every hour on weekdays is plenty: run it with /loop 1h or a scheduled task.

Step 3: read a report

python3 "${CLAUDE_SKILL_DIR}/ptr.py" fetch 20035143
python3 "${CLAUDE_SKILL_DIR}/ptr.py" parse ptr.txt --filed 2026-08-21 --json

fetch saves the PDF and, if pdftotext is installed, prints the rows. If it is not installed, open the saved PDF and read it directly: you can read PDFs. parse turns pdftotext -layout text into rows. Check the row count against the PDF when a report runs over several pages.

Example: the reel's alert

NEW Periodic Transaction Report: Hon. Nancy Pelosi (CA11) filed 2026-08-21, doc 20035143
  - spouse purchase, Bloom Energy Corporation Class A Common Stock (BE): 100 call
    options, $100 strike, expires 2027-06-17, $1,000,001 - $5,000,000, traded
    2026-07-24, disclosed 28 days later

The same PTR also shows 10,000 and 5,000 BE shares, a second block of 100 BE calls on 07/28, Intel shares and 50 Intel calls ($50 strike, 6/17/27), and a private real estate LLC with no ticker. Her other 2026 PTRs: 20033725 (01/23), 20034836 (06/23, Intel and Uber calls) and 20035553 (10/02, a real estate LLC). Then: "This is a public disclosure filed 28 days after the trade. It says what Paul Pelosi bought in July, not what anyone will buy next."

If the user wants to act on it, it goes the long way: shares only (the config has allow_options: false), sized by /trader-budget, checked by /trader-risk, placed by /trader-broker only after their yes.

The Senate: the manual route

Senate reports live at https://efdsearch.senate.gov. Before searching, the site asks you to tick a box agreeing to the legal limits on how the reports may be used. That is an agreement for the person to accept, so this skill does not click it or automate it. The route:

  1. The user opens https://efdsearch.senate.gov/search/ in their browser and accepts the agreement themselves.
  2. They pick the report type "Periodic Transactions", type the senator's last name, set the date range and search.
  3. They open the report: electronic filings show a table of transactions, paper filings are scanned images.
  4. They paste the table (or a screenshot, or the saved page) into the chat, and you write it up in the same shape as the House rows, with the report link, and the same 45-day caveat.

What it never does

  • Never says or implies a member has inside information, or that copying a politician beats the market. No return claims.
  • Never presents a range as an exact dollar figure or a tracker's date as the trade date.
  • Never places an order, and never copies options trades.
  • Never automates the Senate agreement or any login.

Safety

  • Education and tooling, not financial advice. Nothing in this pack is a recommendation to buy or sell anything.
  • Paper trading by default ("paper": true in trader/config.json).
  • Nothing places an order except /trader-broker, and only after /trader-risk passes AND the user types an explicit yes for that order in the chat, AND the brokerage tool is set to "Needs approval" in Claude (Customize > Connectors > tool permissions) so Claude's own "Allow once / Deny" card appears too. Never "Always allow" an order tool.
  • No options, margin, shorting or leverage unless the config allows it and the user confirms.
  • Congressional trades are PUBLIC disclosures filed up to 45 days after the trade (STOCK Act). This skill reads them fast; it has no inside information, and it says so.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

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.

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

The Earnings Analyst. Reads a company's reported numbers straight from SEC EDGAR (XBRL company facts from its 10-Qs and 10-Ks, plus the latest earnings 8-K and its press release) and sums up what changed: revenue, gross, operating and net margins, net income and diluted EPS, quarter by quarter, each against the same quarter a year earlier, with the trailing twelve months. Writes a metrics file the screener reads. Use when the user says "how did Apple's earnings look", "analyze the earnings", "what changed this quarter", "is revenue growing", "check the 10-Q", "compare margins", or "run the analyst on my holdings".

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

Order Executor. Places APPROVED orders through your brokerage connector, one at a time, and never without your explicit yes. Shows each order as a plain ticket plus the exact JSON for Alpaca's place_stock_order, records your yes word for word, then Claude's own Allow once / Deny card asks again. Covers setting up Alpaca's official MCP server in Claude Desktop (paper trading by default, keys in env vars, never in chat), the Interactive Brokers connector (orders go to your IBKR account for your approval), and setting order tools to "Needs approval". Use when the user says "place the orders", "buy it", "execute", "send it to my broker", "connect Alpaca", "connect Interactive Brokers", "set up paper trading", or after /trader-risk passes.

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

Budget Manager. Sizes every position to your budget before anything is bought: keeps a cash buffer, caps any one stock (the excess is shared out to the others), drops slices under your minimum order, rounds so every dollar is used, supports fractional or whole shares, and writes the proposed buy orders to trader/orders.json in the exact shape of Alpaca's place_stock_order (notional as a string). Nothing is placed. Use when the user says "I have $5,000", "size my trades", "how much of each should I buy", "manage my budget", "split my money", "keep 10% in cash", "no stock over 25%", "set my rules", or after /trader-copycat writes targets.

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

The Reverse Engineer. Reads a famous investor's public SEC filings (the quarterly 13F-HR, plus Form 4 if you want the insider trades) and rebuilds their portfolio as weights you can copy: every position, its share of the fund, what they bought, added, trimmed and sold since the last quarter, with tickers matched to every CUSIP. Then it writes trader/targets.json so the budget skill can size it to your money. Use when the user says "copy Buffett", "copy Berkshire", "what does Ackman own", "reverse engineer this investor", "show me their 13F", "what did they buy last quarter", "copy the top 5", or names any fund or famous investor.

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

The News Monitor. Watches breaking market news and SEC filings for the stocks you hold (or are about to copy): Yahoo Finance headlines per ticker and each company's 8-K filings on SEC EDGAR (earnings, CEO changes, deals, restatements, bankruptcy). Shows only what is new since the last check, newest first, flags what touches your positions and why it matters, and never repeats an item. Use when the user says "any news on my stocks", "what's happening with Apple", "monitor the news", "watch my portfolio", "did anything break", "check the 8-Ks", or "morning briefing".

The English summary is being prepared. Showing the original description.

Jakeschincariol/trader-skill450Updated Oct 15, 2026

See all skills by Jakeschincariol

Report a problem with this skill