Finance-skills yc-reader
git clone https://github.com/himself65/finance-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/himself65/finance-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/social-readers/skills/yc-reader" ~/.claude/skills/himself65-finance-skills-yc-reader && rm -rf "$T"
plugins/social-readers/skills/yc-reader/SKILL.mdY Combinator Reader (Read-Only)
Fetches Y Combinator company data from the yc-oss/api, an unofficial open-source API that indexes all publicly launched YC companies. The data is sourced from YC's Algolia search index and updated daily via GitHub Actions.
This is a read-only data source. It provides company profiles, batch listings, industry/tag breakdowns, hiring status, and diversity data. No write operations exist — the API serves static JSON files.
No authentication required. The API is public and free. Just use
curl to fetch JSON endpoints.
Step 1: Verify Prerequisites
This skill only needs
curl (to fetch data) and jq (to parse/filter JSON). Both are pre-installed on most systems.
!`(command -v curl > /dev/null && echo "CURL_OK" || echo "CURL_MISSING") && (command -v jq > /dev/null && echo "JQ_OK" || echo "JQ_MISSING")`
If
JQ_MISSING, install it:
# macOS brew install jq # Linux (Debian/Ubuntu) sudo apt-get install jq
If
jq is unavailable, you can still fetch raw JSON with curl and parse it inline with Python or other tools — but jq makes filtering much easier.
Step 2: Identify What the User Needs
Match the user's request to the appropriate endpoint. See
references/api_reference.md for full details.
| User Request | Endpoint | Notes |
|---|---|---|
| Overall YC stats | | Company count, batch list, industry/tag lists |
| All companies | | Full dataset (~5,700 companies) — large response |
| Top companies | | ~91 top-performing YC companies |
| Companies hiring | | ~1,400 currently hiring |
| Non-profit companies | | YC-backed non-profits |
| Diversity data | , , | Founder diversity |
| Specific batch | | e.g., , |
| By industry | | e.g., , |
| By tag | | e.g., , |
Batch name format
Batches use
{season}-{year} format: winter-2025, summer-2024, fall-2025. Older batches use the same pattern back to summer-2005.
Industry and tag name format
Use lowercase with hyphens for multi-word names:
real-estate, developer-tools, machine-learning.
Step 3: Execute the Request
Base URL
https://yc-oss.github.io/api/
General pattern
# Fetch and pretty-print curl -s https://yc-oss.github.io/api/companies/top.json | jq . # Count companies in a result curl -s https://yc-oss.github.io/api/batches/winter-2025.json | jq length # Filter by field (e.g., hiring companies in a batch) curl -s https://yc-oss.github.io/api/batches/winter-2025.json | jq '[.[] | select(.isHiring == true)]' # Extract specific fields curl -s https://yc-oss.github.io/api/companies/top.json | jq '.[] | {name, one_liner, batch, team_size, website}' # Search by name (case-insensitive) curl -s https://yc-oss.github.io/api/companies/all.json | jq '[.[] | select(.name | test("stripe"; "i"))]'
Key rules
- Use
flag with curl to suppress progress output-s - Pipe through
for readable output and filteringjq - Avoid fetching
unless necessary — it's a large response (~5,700 companies). Prefer more specific endpoints (batches, industries, tags) when possiblecompanies/all.json - Use
select/filter to narrow results client-side when the API doesn't have a specific endpoint for what the user wantsjq - Batch names are lowercase with hyphens —
notwinter-2025
orWinter 2025W25 - Tag and industry names are lowercase with hyphens —
notdeveloper-toolsDeveloper Tools
Common jq filters
| Filter | Purpose |
|---|---|
| Count results |
| First company |
| First 10 companies |
| Only hiring companies |
| Only active companies |
| Companies with 100+ employees |
| Select specific fields |
| Search by name |
| Top 10 by team size |
Step 4: Present the Results
After fetching data, present it clearly for startup/venture research:
- Summarize key data — company name, one-liner, batch, team size, status, and website
- Highlight hiring status — note which companies are actively hiring (growth signal)
- Include website URLs when the user might want to visit the company
- For batch listings, summarize the batch size and notable companies
- For industry/tag queries, highlight trends (how many companies, which are top/hiring)
- For research queries, provide aggregate stats (count, common industries, team size distribution)
- Note the data freshness — the API updates daily, so data is near-real-time
Step 5: Diagnostics
If a request fails:
| Error | Cause | Fix |
|---|---|---|
| Invalid batch, industry, or tag name | Check for valid names |
Empty array | No companies match the query | Broaden the search or check spelling |
| No internet connection | Check network connectivity |
| Large/slow response | Fetching (5,700+ entries) | Use a more specific endpoint or add filters |
To discover valid batch, industry, and tag names:
# List all batches curl -s https://yc-oss.github.io/api/meta.json | jq '.batches[].name' # List all industries curl -s https://yc-oss.github.io/api/meta.json | jq '.industries[].name' # List all tags (there are 333+) curl -s https://yc-oss.github.io/api/meta.json | jq '.tags[].name'
Reference Files
— Complete endpoint reference with company schema, all endpoint URLs, and research workflow examplesreferences/api_reference.md
Read the reference file when you need the exact company field schema, valid batch/industry/tag names, or detailed research workflow patterns.