market-sizing
Builds credible TAM/SAM/SOM analysis with external validation and sensitivity testing for startup fundraising. Supports top-down, bottom-up, or dual-methodology approaches.
npx skills add majiayu000/claude-skill-registry --skill market-sizing --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
The skill helps startup founders build credible TAM/SAM/SOM analysis with external validation and sensitivity testing for fundraising. It supports top-down, bottom-up, or dual-methodology approaches and produces structured artifacts (inputs, methodology, validation, sizing, sensitivity, checklist, and report). It runs inline in the main thread, orchestrating producer scripts, web research, and a market-sizing sub-agent for analytical steps. It deposits each artifact with a run_id and assembles a final report with cross-artifact validation, including post-compose coaching.
How it works
- Reads or creates founder context to establish the company context.
- Extracts inputs from provided files or conversation, and identifies existing claims if any into inputs.json.
- Writes methodology.json documenting the chosen approach (top-down, bottom-up, or both) with rationale.
- Validates that inputs and methodology are present before proceeding.
- Step A (Step A in workflow): outputs a chat summary describing extracted inputs and methodology choice, then Step B prompts the founder with a short yes/no style question via AskUserQuestion. If the founder selects Looks good, proceeds to external validation.
- Performs web research on the main thread (WebFetch/WebSearch) for both top-down and bottom-up data when applicable, triangulating numbers from multiple sources.
- Produces validation.json containing a structured set of assumptions with source metadata and confidence, and ensures all artifacts include the run_id metadata.
- Assembles the final report via compose_report.py and then offers a coaching section after report composition.
When to use it
Use when the user asks to size a market or validate market claims and has enough context (product/service description, a market segment, or a deck with TAM/SAM/SOM claims). Do not auto-invoke on general fundraising or strategy questions.
What it can touch
The skill touches artifacts including inputs.json, methodology.json, validation.json, sizing.json, sensitivity.json, checklist.json, and report.md/html. It uses sub-tools under market-sizing/scripts for market sizing, sensitivity analysis, and validation, and the main thread handles web research. It requires run_id metadata in all artifacts and deposits artifacts to a defined analysis directory.
Caveats
The workflow relies on external data sources; quality depends on the sources found (government/regulatory, analyst reports, industry associations, etc.). The process inserts run_id into artifacts and expects STRICT matching of run_id across artifacts; mismatches can trigger warnings. The execution pattern includes a two-step confirmation (Step A chat summary and Step B AskUserQuestion) before proceeding to external validation.
# Market Sizing Skill Help startup founders build credible, defensible TAM/SAM/SOM analysis — the kind that earns investor trust rather than raising eyebrows. Produce a structured, validated market sizing with external sources, sensitivity testing, and a self-check against common pitfalls. The tone is founder-first: a rigorous but supportive coaching session. ## Skill Metadata - **Author:** lool-ventures - **Version:** managed in `founder-skills/.claude-plugin/plugin.json` - **Compatibility:** Python 3.10+ and `uv` for script execution. - **Exports:** - `sizing.json` → `financial-model-review`, `ic-sim`, `fundraise-readiness` - `sensitivity.json` → `financial-model-review` - `checklist.json` → `ic-sim` ## Skill Execution Model (READ FIRST) This skill runs **inline in the main thread** (not as a sub-agent). The main thread has full tool access including Bash and WebFetch, and is responsible for orchestrating the full pipeline: running producer scripts, persisting artifacts, performing web research, and dispatching the market-sizing sub-agent at specific moments. **Two dispatch contexts for the sub-agent:** - **Context A — Per-step analytical dispatch (Mitigation 1):** Steps 5 and 6
- Skill Metadata
- Skill Execution Model (READ FIRST)
- Input Formats
- Available Scripts
- Available References
- Artifact Pipeline
- Workflow
- Step 0: Path Setup
- Step 1: Read or Create Founder Context
- Steps 2-3: Extract Inputs & Choose Methodology
- Gate: Confirm Methodology and Inputs
- Step 4: External Validation -> validation.json
- Sub-agent JSON staging (v0.4.2)
- Step 5: Calculate TAM/SAM/SOM -> sizing.json (Context A dispatch)
if ls "$(pwd)"/mnt/*/ >/dev/null 2>&1; then elif ls "$(pwd)"/sessions/*/mnt/*/ >/dev/null 2>&1; then else fi mkdir -p "$ANALYSIS_DIR" mkdir -p "$ANALYSIS_DIR/.staging" # for ad-hoc sub-agent JSON staging (v0.4.2) python3 "$SHARED_SCRIPTS/founder_context.py" read --artifacts-root "$ARTIFACTS_ROOT" --pretty python3 "$SHARED_SCRIPTS/founder_context.py" init \ cat <<'INPUTS_EOF' > "$ANALYSIS_DIR/inputs.json" cat <<'METH_EOF' > "$ANALYSIS_DIR/methodology.json"
What does the market-sizing skill do?
Builds credible TAM/SAM/SOM analysis with external validation and sensitivity testing for startup fundraising. Supports top-down, bottom-up, or dual-methodology approaches.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill market-sizing --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
