Generated banner for Yc Reader
Generated logo for Yc Reader

Yc Reader

Alex YangCommunityCreated by Alex Yang

  • Skill
  • Tool integration
  • Data and AI
  • MIT
  • Low risk

From the author

Look up Y Combinator companies and batches from the public yc-oss API, a static JSON dataset refreshed daily: company profiles, batch rosters (e.g. W25, S24), companies by industry or tag, top companies, who is hiring, founder-diversity lists, and overall YC stats. Use this skill whenever the user asks about YC-backed startups, a YC batch, YC companies in a sector or tag or that are hiring, the Y Combinator portfolio, or startup and venture research that draws on YC data. Read-only.
— the description by Alex Yang

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

The yc-reader skill provides a structured way to query the public yc-oss API, which contains a daily-refreshed dataset of Y Combinator-backed startups. It allows users to retrieve information about specific companies, batch cohorts, industry-specific lists, and diversity-focused founder data. The skill is designed for research and analysis, enabling users to filter and aggregate data to understand trends within the YC portfolio.

What it does

  • Retrieves profiles for individual YC-backed companies
  • Lists companies belonging to specific YC batches
  • Filters startups by industry, tag, or hiring status
  • Provides access to aggregated statistics and metadata about the YC ecosystem
  • Supports queries for diversity-focused founder lists
  • Enables custom data filtering using JSON processing tools

When to use it

  • When researching the YC portfolio or specific startup performance
  • When identifying YC companies currently hiring in a specific sector
  • When analyzing trends across different YC batches
  • When looking for companies categorized by specific tags or industries

Advantages

  • Provides access to a comprehensive, daily-updated dataset
  • Allows for precise filtering of company data
  • Enables quick lookup of company profiles and batch rosters
  • Facilitates data-driven research on the startup ecosystem

Usage examples

“Which companies in the winter-2025 batch are currently hiring?”
The agent fetches the winter-2025 batch data and filters the list to display only those companies where the hiring status is active.
“Show me the top-performing companies in the developer-tools industry.”
The agent queries the developer-tools industry endpoint and cross-references the results to highlight companies marked as top performers.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/himself65/yc-reader/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip yc-reader.zip -d .agents/skills

Documentation by Alex Yang

Y Combinator Reader (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.

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 RequestEndpointNotes
Overall YC statsmeta.jsonCompany count, batch list, industry/tag lists
All companiescompanies/all.jsonFull dataset (~5,700 companies) — large response
Top companiescompanies/top.json~91 top-performing YC companies
Companies hiringcompanies/hiring.json~1,400 currently hiring
Non-profit companiescompanies/nonprofit.jsonYC-backed non-profits
Diversity datacompanies/black-founded.json, hispanic-latino-founded.json, women-founded.jsonFounder diversity
Specific batchbatches/{batch-name}.jsone.g., winter-2026.json, spring-2026.json, fall-2025.json
Single company profilebatches/{batch-name}/{slug}.jsone.g., batches/summer-2009/stripe.json, batches/winter-2009/airbnb.json
By industryindustries/{industry}.jsone.g., fintech.json, healthcare.json
By tagtags/{tag}.jsone.g., ai.json, developer-tools.json
Batch name format

Batches use {season}-{year} format: winter-2026, spring-2026, summer-2026, fall-2025. Older batches follow the same pattern back to summer-2005. The short form (w09, s21) also works for the per-company endpoint.

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
  1. Use -s flag with curl to suppress progress output

  2. Pipe through jq for readable output and filtering

  3. Avoid fetching companies/all.json unless necessary — it's a large response (~5,700 companies). Prefer more specific endpoints (batches, industries, tags) when possible

  4. Use jq select/filter to narrow results client-side when the API doesn't have a specific endpoint for what the user wants

  5. Batch names are lowercase with hyphens — winter-2025 not Winter 2025 or W25

  6. Tag and industry names are lowercase with hyphens — developer-tools not Developer Tools

Common jq filters
FilterPurpose
jq lengthCount results
jq '.[0]'First company
jq '.[:10]'First 10 companies
jq '[.[] | select(.isHiring == true)]'Only hiring companies
jq '[.[] | select(.status == "Active")]'Only active companies
jq '[.[] | select(.team_size > 100)]'Companies with 100+ employees
jq '.[] | {name, one_liner, batch, website}'Select specific fields
jq '[.[] | select(.name | test("query"; "i"))]'Search by name
jq 'sort_by(-.team_size) | .[:10]'Top 10 by team size

Step 4: Present the Results

Summarize rather than dump JSON. For each company, give the name, one-liner, batch, team size, status, hiring status (a growth signal), and website. For a batch, lead with its size and notable companies; for an industry or tag, the count and which companies are top or hiring; for research questions, aggregate stats such as counts, common industries, and team-size distribution. Mention that the dataset refreshes daily.


Step 5: Diagnostics

If a request fails:

ErrorCauseFix
404 Not FoundInvalid batch, industry, or tag nameCheck meta.json for valid names
Empty array []No companies match the queryBroaden the search or check spelling
curl: Could not resolve hostNo internet connectionCheck network connectivity
Large/slow responseFetching companies/all.json (5,700+ entries)Use a more specific endpoint or add jq 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

  • references/api_reference.md — Complete endpoint reference with company schema, all endpoint URLs, and research workflow examples

Read the reference file when you need the exact company field schema, valid batch/industry/tag names, or detailed research workflow patterns.

Files

references/api_reference.md

yc-oss API Reference

Complete reference for the yc-oss/api, an unofficial open-source API indexing all publicly launched Y Combinator companies.

Base URL: https://yc-oss.github.io/api/

Authentication: None required — all endpoints are public.

Format: Static JSON files, updated daily via GitHub Actions.


Company Schema

Each company object contains:

FieldTypeDescription
idnumberInternal ID
namestringCompany name
slugstringURL-safe identifier
former_namesstring[]Previous company names
small_logo_thumb_urlstringLogo thumbnail URL
websitestringCompany website URL
all_locationsstringComma-separated locations
long_descriptionstringFull company description
one_linerstringOne-line summary
team_sizenumberCurrent team size
industrystringPrimary industry
subindustrystringSub-industry classification
launched_atnumberUnix timestamp of YC launch
tagsstring[]Category tags
tags_highlightedstring[]Featured tags
top_companybooleanWhether it's a top YC company
isHiringbooleanCurrently hiring
nonprofitbooleanNon-profit organization
batchstringYC batch (e.g., "Winter 2026", "Summer 2009")
statusstringCompany status ("Active", "Acquired", "Inactive", "Public")
industriesstring[]All industry classifications
regionsstring[]Geographic regions
stagestringCompany stage
urlstringYC profile URL (ycombinator.com)
apistringAPI endpoint URL for this company

Endpoints

Metadata
curl -s https://yc-oss.github.io/api/meta.json | jq .

Returns overall statistics: total company count, list of all batches (with counts), all industries (with counts), and all tags (with counts). Use this to discover valid batch/industry/tag names.

Company Collections
EndpointDescriptionApprox. Count
companies/all.jsonAll launched companies~5,700
companies/top.jsonTop-performing companies~91
companies/hiring.jsonCurrently hiring~1,400
companies/nonprofit.jsonNon-profit organizations~42
companies/black-founded.jsonBlack-founded companiesvaries
companies/hispanic-latino-founded.jsonHispanic/Latino-foundedvaries
companies/women-founded.jsonWomen-founded companiesvaries
# Top YC companies
curl -s https://yc-oss.github.io/api/companies/top.json | jq '.[:5] | .[] | {name, one_liner, batch, team_size}'

# Currently hiring
curl -s https://yc-oss.github.io/api/companies/hiring.json | jq length
Batches

Pattern: batches/{season}-{year}.json

Seasons: winter, spring, summer, fall

# Winter 2026 batch
curl -s https://yc-oss.github.io/api/batches/winter-2026.json | jq length

# Spring 2026 batch
curl -s https://yc-oss.github.io/api/batches/spring-2026.json | jq '.[:5] | .[] | {name, one_liner}'

# Fall 2025 batch
curl -s https://yc-oss.github.io/api/batches/fall-2025.json | jq .

Historical batches go back to summer-2005.

Single company profile

Pattern: batches/{batch-slug}/{company-slug}.json

Both long (winter-2009) and short (w09) batch slugs work. Company slug is the same lowercase-hyphenated form used in the slug field.

# Airbnb profile
curl -s https://yc-oss.github.io/api/batches/winter-2009/airbnb.json | jq .

# Stripe profile
curl -s https://yc-oss.github.io/api/batches/summer-2009/stripe.json | jq '{name, one_liner, team_size, status}'
Industries

Pattern: industries/{industry-name}.json

Use lowercase with hyphens for multi-word names.

Notable industries:

IndustryEndpointApprox. Count
B2Bindustries/b2b.json~2,876
Consumerindustries/consumer.json~866
Healthcareindustries/healthcare.json~656
Fintechindustries/fintech.json~607
Engineering/Product/Designindustries/engineering-product-and-design.json~585
Real Estate & Constructionindustries/real-estate-and-construction.json~138
Governmentindustries/government.json~75
Educationindustries/education.json~240
Infrastructureindustries/infrastructure.json~261
# Fintech companies
curl -s https://yc-oss.github.io/api/industries/fintech.json | jq '.[:10] | .[] | {name, one_liner, batch, isHiring}'

# Healthcare companies hiring
curl -s https://yc-oss.github.io/api/industries/healthcare.json | jq '[.[] | select(.isHiring == true)] | length'
Tags

Pattern: tags/{tag-name}.json

Use lowercase with hyphens for multi-word names.

Notable tags:

TagEndpointApprox. Count
SaaStags/saas.json~1,127
Artificial Intelligencetags/artificial-intelligence.json~908
AItags/ai.json~772
Developer Toolstags/developer-tools.json~537
Marketplacetags/marketplace.json~347
Open Sourcetags/open-source.json~179
Climatetags/climate.json~142
Crypto/Web3tags/crypto-web3.json~119
Roboticstags/robotics.json~78
Automationtags/automation.json~85
# AI-tagged companies
curl -s https://yc-oss.github.io/api/tags/ai.json | jq '.[:10] | .[] | {name, one_liner, batch}'

# Developer tools that are hiring
curl -s https://yc-oss.github.io/api/tags/developer-tools.json | jq '[.[] | select(.isHiring == true)] | .[:10] | .[] | {name, one_liner, website}'

Research Workflows

Analyze the latest YC batch
# Get batch companies
curl -s https://yc-oss.github.io/api/batches/winter-2026.json | jq length

# Summarize by industry
curl -s https://yc-oss.github.io/api/batches/winter-2026.json | jq 'group_by(.industry) | map({industry: .[0].industry, count: length}) | sort_by(-.count)'

# Find hiring companies in the batch
curl -s https://yc-oss.github.io/api/batches/winter-2026.json | jq '[.[] | select(.isHiring == true)] | .[] | {name, one_liner, website}'
Find fintech/finance startups
# All fintech companies
curl -s https://yc-oss.github.io/api/industries/fintech.json | jq '.[:20] | .[] | {name, one_liner, batch, team_size, status}'

# Active fintech companies that are hiring
curl -s https://yc-oss.github.io/api/industries/fintech.json | jq '[.[] | select(.isHiring == true and .status == "Active")] | .[:15] | .[] | {name, one_liner, batch, team_size, website}'
# Largest hiring companies
curl -s https://yc-oss.github.io/api/companies/hiring.json | jq 'sort_by(-.team_size) | .[:20] | .[] | {name, team_size, industry, batch}'

# Hiring companies in AI
curl -s https://yc-oss.github.io/api/tags/ai.json | jq '[.[] | select(.isHiring == true)] | sort_by(-.team_size) | .[:15] | .[] | {name, team_size, one_liner}'
Search for a specific company
# Search by name (case-insensitive)
curl -s https://yc-oss.github.io/api/companies/all.json | jq '[.[] | select(.name | test("stripe"; "i"))]'

# Search in one-liners
curl -s https://yc-oss.github.io/api/companies/all.json | jq '[.[] | select(.one_liner | test("payment"; "i"))] | .[:10] | .[] | {name, one_liner, batch}'
Top companies analysis
# Top companies with details
curl -s https://yc-oss.github.io/api/companies/top.json | jq '.[] | {name, one_liner, batch, team_size, status, industry}'

# Top companies by team size
curl -s https://yc-oss.github.io/api/companies/top.json | jq 'sort_by(-.team_size) | .[:10] | .[] | {name, team_size, batch}'
Diversity data
# Women-founded companies in latest batch
curl -s https://yc-oss.github.io/api/companies/women-founded.json | jq '[.[] | select(.batch == "Winter 2026")] | .[] | {name, one_liner}'

# Count by diversity category
curl -s https://yc-oss.github.io/api/companies/black-founded.json | jq length
curl -s https://yc-oss.github.io/api/companies/women-founded.json | jq length
Export for analysis
# CSV export (name, batch, industry, team_size, status)
curl -s https://yc-oss.github.io/api/companies/top.json | jq -r '.[] | [.name, .batch, .industry, .team_size, .status] | @csv' > yc_top.csv

# JSON subset for processing
curl -s https://yc-oss.github.io/api/industries/fintech.json | jq '[.[] | {name, one_liner, batch, team_size, website, isHiring}]' > fintech_yc.json

Discovering Valid Names

When the user asks for a batch, industry, or tag that you're not sure about, query meta.json:

# List all batch names
curl -s https://yc-oss.github.io/api/meta.json | jq '[.batches[] | .name]'

# List all industry names
curl -s https://yc-oss.github.io/api/meta.json | jq '[.industries[] | .name]'

# List all tag names (333+)
curl -s https://yc-oss.github.io/api/meta.json | jq '[.tags[] | .name]'

# Search for a tag name
curl -s https://yc-oss.github.io/api/meta.json | jq '[.tags[] | select(.name | test("fintech"; "i"))]'

Error Reference

ErrorCauseFix
404 Not FoundInvalid endpoint nameCheck meta.json for valid batch/industry/tag names
Empty array []No companies match filterBroaden the jq filter or check spelling
Network errorNo internet connectionCheck connectivity
Large/slow responsecompanies/all.json is ~5,700 entriesUse specific endpoints (batch, industry, tag) or pipe through jq '.[:N]' to limit

Limitations

  • Read-only — Static JSON files, no search API or query parameters

  • No founder details — Company profiles don't include individual founder names or bios

  • No funding data — Funding amounts, valuations, and investor details are not included

  • No revenue/financial data — Only public metadata (team size, hiring status, industry)

  • Updated daily — Data may be up to 24 hours behind YC's live directory

  • Publicly launched only — Stealth companies not yet launched on YC are excluded

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Needs network access, Needs a command-line tool

Security

What our scanner noticed· Low risk

  • Instructions that use the network

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Alex Yang
Publisher
Alex Yang (Community)
Source
himself65/finance-skills · plugins/social-readers/skills/yc-reader · commit a085078
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Alex Yang.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download yc-reader.zip