Skip to main content

Destroy your startup idea before the market does.

Project description

IdeaKiller

Your startup idea destroyed in 60 seconds.

License: MIT Python 3.12 Tests

IdeaKiller runs your business idea through 7 adversarial lenses and returns a Survival Score (0–100) with evidence-backed findings. Built for founders who want brutal honesty before they burn runway.


Features

  • 7 adversarial lenses — market timing, unit economics, competition, customer acquisition, team risk, regulatory exposure, and technology feasibility
  • Weighted geometric mean scoring — a fatal flaw in any single lens tanks the overall score, as it should
  • Local-first LLM — uses Ollama by default; falls back to Anthropic API automatically
  • Three interfaces — CLI for scripts, REST API for integrations, Gradio UI for humans
  • Structured JSON output — machine-readable results for downstream tooling
  • Docker-ready — single-command deployment with health checks included

Survival Score

Score = exp(Σ weight_i × ln(survival_probability_i)) × 100
Score Verdict
0–20 DEAD ON ARRIVAL
21–40 CRITICAL
41–60 HIGH RISK
61–80 VIABLE
81–100 STRONG

Lens Weights

Lens Weight What it hunts
Market Timing 20% Too early? Too late? Macro headwinds?
Unit Economics 20% CAC/LTV death traps, margin collapse
Competition 15% Incumbent moats, funded clones
Customer Acquisition 15% Reachable customers, GTM viability
Team Risk 10% Skills gap, key-person risk
Regulatory 10% FDA, HIPAA, financial regs, IP landmines
Technology 10% Unproven tech, feasibility gaps

Quick Start

Install:

pip install -e .

Configure LLM backend (pick one):

# Option A — local inference via Ollama (recommended)
ollama pull llama3.2

# Option B — Anthropic API
export ANTHROPIC_API_KEY=sk-ant-...

Run:

# Plain-text analysis
ideakiller analyze "Uber for dog walking with AI routing"

# JSON output
ideakiller analyze --output json "Blockchain supply chain for farms"

# REST API server  →  http://localhost:8000
ideakiller serve

# Gradio web UI    →  http://localhost:7860
ideakiller ui

REST API:

curl -X POST http://localhost:8000/analyze \
  -H "Content-Type: application/json" \
  -d '{"idea": "AI therapist for Gen Z", "context": "mobile-first, US market"}'

Docker:

docker build -t ideakiller .
docker run -p 8000:8000 -e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY ideakiller

Architecture

ideakiller/
├── llm.py        # LLMClient — Ollama-first, Anthropic fallback
├── analyzer.py   # IdeaAnalyzer — 7-lens prompt engine, JSON extraction
├── scorer.py     # IdeaScorer — weighted geometric mean, verdict mapping
├── cli.py        # Click CLI — analyze / serve / ui commands
├── api.py        # FastAPI — POST /analyze, GET /health
└── app.py        # Gradio UI — form inputs, markdown output, examples

Request flow:

User input
  → IdeaAnalyzer  (7 × LLM calls, structured JSON per lens)
  → IdeaScorer    (geometric mean → 0-100 score → verdict)
  → Output        (CLI text | JSON | HTTP response | Gradio markdown)

LLM strategy: LLMClient probes Ollama at localhost:11434 on first call. If unavailable, it lazy-imports the Anthropic SDK and uses ANTHROPIC_API_KEY. No configuration required beyond setting the env var.


Development

pip install -e ".[dev]"
pytest -v
ruff check src/ tests/
bandit -r src/ -ll

Contributing

See CONTRIBUTING.md for guidelines on issues, pull requests, and coding standards.


License

MIT


Built by TechKnowMad Labs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ideakiller-0.1.0.tar.gz (26.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ideakiller-0.1.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file ideakiller-0.1.0.tar.gz.

File metadata

  • Download URL: ideakiller-0.1.0.tar.gz
  • Upload date:
  • Size: 26.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for ideakiller-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b5bbb83c516b4d02214c6c691119bb4378fccca4bdf87556d6693a3222c86abe
MD5 ddbc3223895915e472b53cd32f604bcc
BLAKE2b-256 47dd8806138cadadb136ed93353194d1b94b5f0723f3ad3cdf3ab076b023eb11

See more details on using hashes here.

File details

Details for the file ideakiller-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ideakiller-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for ideakiller-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aab1d896dcf470ed625ade8ee8b5ed1ea6b9c01e864bbcc87b00c75633a4a274
MD5 4bce2975b62cc01dabdd8bca2006d961
BLAKE2b-256 061c0a03da07292d9fb2e9d4886573b0d187b8c650b27987dc5817d76b9c65d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page