{"id":50985894,"url":"https://github.com/wanikua/OpenBusiness","last_synced_at":"2026-07-07T16:00:39.950Z","repository":{"id":360650757,"uuid":"1250143588","full_name":"wanikua/OpenBusiness","owner":"wanikua","description":"Open-source CLI for business model research. Collects public evidence, runs analyst agents, and marks report claims as verified, inferred, or missing.","archived":false,"fork":false,"pushed_at":"2026-06-02T03:43:00.000Z","size":2841,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-06-16T18:34:36.074Z","etag":null,"topics":["ai-agents","anthropic","business-model","business-model-canvas","cli","competitive-analysis","deepseek","evidence-research","go-to-market","langchain","langgraph","market-research","openai","python","startup-analysis","unit-economics"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/openbusiness/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wanikua.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-26T10:49:21.000Z","updated_at":"2026-06-15T01:22:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/wanikua/OpenBusiness","commit_stats":null,"previous_names":["wanikua/openbusiness"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/wanikua/OpenBusiness","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wanikua%2FOpenBusiness","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wanikua%2FOpenBusiness/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wanikua%2FOpenBusiness/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wanikua%2FOpenBusiness/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wanikua","download_url":"https://codeload.github.com/wanikua/OpenBusiness/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wanikua%2FOpenBusiness/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35234127,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-07T02:00:07.222Z","response_time":90,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","anthropic","business-model","business-model-canvas","cli","competitive-analysis","deepseek","evidence-research","go-to-market","langchain","langgraph","market-research","openai","python","startup-analysis","unit-economics"],"created_at":"2026-06-19T19:00:19.261Z","updated_at":"2026-07-07T16:00:39.943Z","avatar_url":"https://github.com/wanikua.png","language":"Python","funding_links":[],"categories":["Applications"],"sub_categories":["Multi-Agent Task Solver Projects"],"readme":"# OpenBusiness\n\n\u003e Business model research CLI that labels claims as verified, inferred, or\n\u003e missing.\n\n[![PyPI](https://img.shields.io/pypi/v/openbusiness?style=flat-square\u0026color=3775A9\u0026logo=pypi\u0026logoColor=white)](https://pypi.org/project/openbusiness/)\n[![Python 3.10+](https://img.shields.io/badge/Python-3.10%2B-3776AB?style=flat-square\u0026logo=python\u0026logoColor=white)](https://www.python.org/)\n[![LangGraph](https://img.shields.io/badge/Built%20with-LangGraph-1f2937?style=flat-square)](https://www.langchain.com/langgraph)\n[![Reports](https://img.shields.io/badge/Output-English%20%7C%20zh-0f766e?style=flat-square)](#bilingual-output)\n[![License](https://img.shields.io/badge/License-MIT-black?style=flat-square)](#license)\n\n\u003e **Install:** `pipx install openbusiness` \u0026nbsp;·\u0026nbsp; one-shot: `uvx openbusiness analyze \"Notion\" --domain notion.so`\n\nOpenBusiness is an open-source Python CLI, published on PyPI as `openbusiness`\n0.1.0, for business model research. It takes a company name, domain, and\noptional stock ticker, collects public evidence, runs LangGraph analyst agents,\nand produces a Markdown business model report. OpenBusiness differs from\ngeneric LLM prompting by labeling every claim as verified, inferred, or missing\nand by stress-testing the assumptions that would change the analysis. It is\nbuilt for founders, investors, consultants, product teams, and researchers who\nneed a first-pass company report before deeper diligence.\n\nIt is inspired by [TradingAgents](https://github.com/TauricResearch/TradingAgents),\nbut OpenBusiness is not a bull-vs-bear debate system. Business model analysis\nneeds decomposition, evidence tracking, and assumption pressure-testing, not a\nbuy/sell vote.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/openbusiness-demo.gif\" alt=\"OpenBusiness demo: analyze a company and generate an evidence-tagged report\" width=\"900\"\u003e\n\u003c/p\u003e\n\n![OpenBusiness terminal demo](docs/assets/openbusiness-terminal-demo.svg)\n\n![OpenBusiness report preview](docs/assets/openbusiness-report-preview.svg)\n\n## GUI Demo\n\nA static website GUI demo is available in [`site-demo/`](site-demo/). It shows\nthe analysis cockpit, evidence-label counters, LangGraph pipeline, report\npreview, sources, and run artifacts with GSAP animations.\n\nOpen it directly:\n\n```bash\nopen site-demo/index.html\n```\n\n## Highlights\n\n- Multi-agent business analysis pipeline built with LangGraph.\n- Evidence collection through Tavily search, Firecrawl scraping, and SEC EDGAR.\n- Business model canvas output with explicit evidence labels: verified, inferred,\n  or missing.\n- Domain analysis packs for SaaS, public companies, ecommerce, AI\n  infrastructure, consumer apps, investment screening, and general company\n  research.\n- Audience templates for standard analysis, investor memos, founder copycat\n  studies, competitor maps, market research, and decision memos.\n- Reproducible run artifacts with stage outputs, source extraction, and run\n  metadata.\n- Bilingual report generation with `--language en` and `--language zh`.\n- Provider support for OpenAI, Anthropic, and DeepSeek.\n- Local config wizard with hidden API-key input and `0600` config permissions.\n- Language-purity warnings when generated reports mix output languages.\n- Pure Markdown reports that can be archived, edited, or shared directly.\n\n## Use Cases\n\nOpenBusiness is useful when you need a structured first-pass business model\nresearch report before deeper diligence:\n\n| Audience | Common question | OpenBusiness output |\n| --- | --- | --- |\n| Founders | What can I copy, avoid, or attack in this market? | GTM motion, value proposition, moat, and fatal weakness. |\n| Investors | Is the company durable, fragile, or speculative? | Evidence-labeled thesis, claims, and stress test. |\n| Consultants | How does this company actually make money? | Business model canvas, profit engine, and unit economics. |\n| Product teams | Why do customers switch and stay? | JTBD, adoption friction, switching triggers, and alternatives. |\n| Researchers | What data is missing before making a stronger claim? | Missing-data inventory and validation plan. |\n\nSearch keywords: business model research CLI, business model canvas generator,\ncompany research tool, competitive analysis, unit economics, LangGraph agents,\nevidence-labeled reports.\n\n## Business Model Research Tool Comparison\n\n| Approach | Evidence source | Output format | Time per report | Cost per report | Evidence labeling | Stress test |\n| --- | --- | --- | --- | --- | --- | --- |\n| OpenBusiness | Web evidence, SEC EDGAR for public companies, and configured evidence APIs | Markdown business model report with run artifacts | 2-4 minutes per report | Reports cost about $0.10-$0.40 in API calls, depending on provider and evidence pack size | Yes | Yes |\n| Manual research (3-day analyst) | Analyst web research, interviews, filings, and paid databases | Slides, memo, spreadsheet, or custom document | About 3 working days | Analyst time plus any paid data sources | Partial | Partial |\n| Generic ChatGPT prompt | User-provided context and model training data | Chat response or copied document | Minutes | Chat subscription or API usage | No | Partial |\n| Other automated business analysis tools (generic) | Usually web search plus model training data | Web app report or PDF | Minutes | Subscription or per-report fee | Partial | Partial |\n\n## What It Produces\n\nOpenBusiness writes a final Markdown report with this shape:\n\n```markdown\n# OpenBusiness Business Model Reverse Engineering Report\n\n**Target:** Notion | **Confidence:** Plausible\n\n## 1. Business Model Canvas\n\n| Key Partners | Key Activities | Value Propositions | Customer Relationships | Customer Segments |\n| --- | --- | --- | --- | --- |\n| Stripe, AWS, app ecosystem [INFERRED] | Product development, collaboration workflows [VERIFIED:notion.so] | All-in-one workspace [VERIFIED:notion.so] | Self-serve PLG plus enterprise support [INFERRED] | Teams, startups, creators, enterprises [VERIFIED:notion.so] |\n\n## 2. Key Claim Layers\n\n### Verified Claims\n\n- Pricing includes Free, Plus, Business, and Enterprise tiers. [VERIFIED:notion.so/pricing]\n\n### Inferred Claims\n\n- Expansion likely depends on team-level workspace adoption. [INFERRED]\n\n### Missing Claims\n\n- Actual CAC, gross margin, and cohort retention are not publicly disclosed. [MISSING]\n\n## 3. Assumption Stress Test\n\n## 4. Next Steps\n```\n\n## Evidence Discipline\n\nThe central product principle is simple: know what is known, infer only when the\nevidence supports it, and mark the unknown instead of hiding it.\n\nEvidence labels are intentionally visible and treated as part of the claim\ncontract:\n\n| Label | Meaning |\n| --- | --- |\n| `[VERIFIED:url]` | The claim is supported by a source. |\n| `[INFERRED]` | The claim is a reasoned inference from available context. |\n| `[MISSING]` | The missing data materially affects confidence. |\n\nThese labels are part of the claim contract. OpenBusiness keeps them through\ncollection, analysis, synthesis, stress testing, and finalization. Analysis\npacks and report templates can change the lens of the analysis, but they must\nnot remove or soften the evidence labels.\n\n## Quick Start\n\n### 1. Clone\n\n```bash\ngit clone https://github.com/wanikua/OpenBusiness.git\ncd OpenBusiness\n```\n\n### 2. Install\n\n```bash\n./install.sh\n```\n\nThe installer asks you to choose English or Chinese first, checks Python,\ncreates a virtual environment if needed, installs the package in editable mode,\nand starts the configuration wizard in the selected language. That first\nlanguage choice becomes the default terminal UI language and the default report\nlanguage for `openbusiness analyze`, unless you explicitly override the report\nlanguage later.\n\nIf you accept the default `.venv` setup, the installer activates it for the\ninstallation session. In every new terminal, activate it again before running\n`openbusiness`:\n\n```bash\nsource .venv/bin/activate\n```\n\nIf you declined virtual environment creation, skip this activation step and use\nthe Python environment where you installed the package.\n\n### 3. Configure Or Reconfigure\n\n```bash\nopenbusiness config\n```\n\nThe installer normally starts this wizard automatically. Run it manually when\nyou skipped the wizard, changed terminals before completing setup, or need to\nupdate keys later.\n\nThe setup stores:\n\n| Setting | Required | Notes |\n| --- | --- | --- |\n| Interface language | Yes | Set by the installer or `openbusiness config --ui-language en`. |\n| LLM provider | Yes | `openai`, `anthropic`, or `deepseek` |\n| Report language | Yes | Defaults to the interface language; can be changed with `--language`. |\n| Provider API key | Yes | OpenAI, Anthropic, or DeepSeek key |\n| Tavily API key | No | Enables live search evidence |\n| Firecrawl API key | No | Enables page scraping evidence |\n\nConfig is saved to `~/.config/openbusiness/config.toml`.\n\n### 4. Run\n\n```bash\nsource .venv/bin/activate\nopenbusiness analyze \"Notion\" --domain notion.so --language en\n```\n\nIf your shell prompt already shows the virtual environment is active, you do not\nneed to run `source .venv/bin/activate` again in the same terminal.\n\nThe report is written to `output/notion_business_model.md`.\n\n## CLI\n\n```bash\nsource .venv/bin/activate\n\nopenbusiness config\nopenbusiness config --reset\nopenbusiness config --language en\nopenbusiness config --ui-language en\nopenbusiness show\nopenbusiness packs\nopenbusiness templates\n\nopenbusiness analyze \"Notion\" --domain notion.so\nopenbusiness analyze \"Costco\" --ticker COST\nopenbusiness analyze \"Vercel\" --domain vercel.com --output reports/\nopenbusiness analyze \"Notion\" --domain notion.so --language en\nopenbusiness analyze \"Notion\" --domain notion.so --language zh\nopenbusiness analyze \"Notion\" --domain notion.so --ui-language en --language zh\nopenbusiness analyze \"Notion\" --domain notion.so --depth deep\nopenbusiness analyze \"Vercel\" --domain vercel.com --pack saas --template investor-memo\n```\n\nAnalysis options:\n\n| Option | Description |\n| --- | --- |\n| `--domain`, `-d` | Official company domain for evidence gathering. |\n| `--ticker`, `-t` | Public-company ticker for SEC EDGAR lookup. |\n| `--output`, `-o` | Output directory. Defaults to `output/`. |\n| `--language`, `-l` | Report language for this run. Supports `en` and `zh`. |\n| `--ui-language` | Terminal interface language for this run. If `--language` is omitted, the report follows the resolved interface language by default. |\n| `--depth` | Research depth. Use `standard` for faster runs or `deep` for broader evidence collection. |\n| `--pack` | Built-in analysis pack id. Run `openbusiness packs` to list options. |\n| `--pack-file` | Custom analysis pack TOML file. |\n| `--template` | Built-in report template id. Run `openbusiness templates` to list options. |\n| `--template-file` | Custom report template Markdown file with TOML front matter. |\n\n`openbusiness analyze` does not ask for language choices at startup. The\nterminal UI language comes from install/config, and the report language follows\nthat UI language unless you explicitly set `--language`, `OPENBUSINESS_OUTPUT_LANGUAGE`,\nor `openbusiness config --language`.\n\n## Environment Variables\n\nEnvironment variables override local config. They are useful for CI, containers,\nand temporary provider switches.\n\n```bash\nexport OPENBUSINESS_PROVIDER=deepseek\nexport OPENBUSINESS_UI_LANGUAGE=en\nexport OPENBUSINESS_OUTPUT_LANGUAGE=en\nexport DEEPSEEK_API_KEY=sk-xxx\nexport DEEPSEEK_BASE_URL=https://api.deepseek.com\nexport DEEPSEEK_TIMEOUT=60\nexport DEEPSEEK_MAX_RETRIES=1\nexport DEEPSEEK_MAX_TOKENS=2048\nexport TAVILY_API_KEY=tvly-xxx\nexport FIRECRAWL_API_KEY=fc-xxx\n\nopenbusiness analyze \"Notion\" --domain notion.so\n```\n\nInterface language precedence:\n\n1. `openbusiness analyze --ui-language en`\n2. `OPENBUSINESS_UI_LANGUAGE=en`\n3. `ui_language = \"en\"` in local config\n4. Default: `zh`\n\nReport language precedence:\n\n1. `openbusiness analyze --language en`\n2. `OPENBUSINESS_OUTPUT_LANGUAGE=en`\n3. `output_language = \"en\"` in local config\n4. Resolved interface language\n\n## Analysis Packs And Templates\n\nAnalysis packs make the pipeline more domain-aware without hard-coding every\ncompany into one generic prompt. Built-in packs include:\n\n| Pack | Use it for |\n| --- | --- |\n| `general` | Default company research when the model is unclear or mixed. |\n| `saas` | Subscription software, PLG, sales-led SaaS, and B2B software. |\n| `public-company` | Listed companies where filings, segments, and margins matter. |\n| `ecommerce` | DTC, marketplace, retail commerce, and product businesses. |\n| `ai-infra` | Developer tools, model platforms, data tooling, and AI infrastructure. |\n| `consumer-app` | Consumer, prosumer, creator, media, and community products. |\n| `investment-scout` | VC, growth, acquisition, or strategic-investment screening. |\n\nReport templates change the reader lens:\n\n| Template | Use it for |\n| --- | --- |\n| `standard` | General OpenBusiness report. |\n| `investor-memo` | First-pass diligence, business quality, and downside risk. |\n| `founder-copycat` | What to copy, avoid, attack, or validate as a new entrant. |\n| `competitor-map` | Alternatives, likely competitive response, and positioning. |\n| `market-research` | Market definition, customer segments, pricing, GTM, and competitors. |\n| `decision-memo` | Bottom line, tradeoffs, risks, open questions, and next step. |\n\nExamples:\n\n```bash\nopenbusiness packs\nopenbusiness templates\nopenbusiness analyze \"Vercel\" --domain vercel.com --pack saas --template investor-memo\nopenbusiness analyze \"Costco\" --ticker COST --pack public-company\nopenbusiness analyze \"Ramp\" --domain ramp.com --pack investment-scout --template decision-memo\n```\n\nCustom packs are TOML files with `id`, `name`, `description`,\n`evidence_focus`, and `analyst_focus`. Custom templates are Markdown files with\nTOML front matter. Both are prompt guidance only: they cannot bypass evidence\nlabels or turn missing data into verified claims.\n\n## Run Artifacts\n\nEach run keeps the existing portable report path:\n\n```text\noutput/\u003ccompany\u003e_business_model.md\n```\n\nIt also writes a reproducible artifact folder:\n\n```text\noutput/\u003ccompany\u003e/\n├── report.\u003clanguage\u003e.md\n├── run.json\n├── evidence.json\n├── sources.md\n└── stages/\n    ├── 01_evidence.md\n    ├── 02_jtbd.md\n    ├── 03_value_prop.md\n    ├── 04_gtm.md\n    ├── 05_unit_econ.md\n    ├── 06_moat.md\n    ├── 07_canvas.md\n    ├── 08_stress_test.md\n    └── 09_final.md\n```\n\nThis makes reports easier to debug, compare, and improve. If a conclusion feels\ntoo shallow, inspect the stage files to see whether the weakness came from\nmissing evidence, weak inference, or final-report compression.\n\n## Bilingual Output\n\nOpenBusiness supports English and Simplified Chinese report generation:\n\n```bash\nopenbusiness analyze \"Notion\" --domain notion.so --language en\nopenbusiness analyze \"Notion\" --domain notion.so --language zh\nopenbusiness analyze \"Notion\" --domain notion.so --ui-language en --language zh\n```\n\nWithout `--language`, the report follows the terminal UI language selected\nduring installation or configuration. Use `--language` when you want the UI and\nreport languages to be different.\n\nThe language contract is applied to every analyst node. Final reports also run\na language-purity check:\n\n- English reports warn if generated content contains Chinese characters.\n- `zh` reports warn if generated content contains English section headings or\n  English-like prose lines.\n- Company names, URLs, tickers, metric abbreviations, API/tool names, model\n  names, and evidence tags are preserved intentionally.\n\n## Depth Mode\n\nUse `--depth deep` when you want a more serious research pass:\n\n```bash\nopenbusiness analyze \"Notion\" --domain notion.so --language zh --depth deep\n```\n\n`standard` keeps evidence collection bounded for faster runs. `deep` lets the\nevidence collector spend more tool rounds and use broader search depth for\ncustomer proof, hiring signals, ecosystem clues, competitor positioning, and\nnegative evidence. All analyst nodes still use the same depth standard: major\nconclusions must include mechanism, evidence quality, countercase, business\nimplication, and validation data.\n\n## Pipeline\n\n```text\nCompany name + optional domain + optional ticker\n  |\n  v\nEvidence Collector\n  |-- Tavily search\n  |-- Firecrawl scrape\n  |-- SEC EDGAR company data\n  v\nJTBD Analyst\n  v\nValue Proposition Analyst\n  v\nGTM Analyst\n  v\nUnit Economics Analyst\n  v\nMoat Analyst\n  v\nBusiness Model Synthesizer\n  v\nAssumption Stress Tester\n  v\nFinalizer\n  v\noutput/\u003ccompany\u003e_business_model.md\noutput/\u003ccompany\u003e/run.json + stage artifacts\n```\n\nCore design principles:\n\n- Evidence first: source material is collected before analysis.\n- Claims stay tagged: verified, inferred, and missing claims are\n  never flattened into one confidence level.\n- Built for decisions: reports surface the bottom line, countercase,\n  stage fit, competitive implications, and next validation step.\n- Tools do deterministic work: unit-economics calculations run in Python, not\n  inside model prose.\n- The final output is portable Markdown.\n- Analysis packs and templates can change the lens, but the evidence-label\n  contract stays fixed.\n\n## Providers\n\n| Provider | Config key | Notes |\n| --- | --- | --- |\n| OpenAI | `OPENAI_API_KEY` | Default provider. |\n| Anthropic | `ANTHROPIC_API_KEY` | Supported through LangChain Anthropic. |\n| DeepSeek | `DEEPSEEK_API_KEY` | Uses an OpenAI-compatible endpoint. |\n\nOptional evidence APIs:\n\n| Service | Config key | Purpose |\n| --- | --- | --- |\n| Tavily | `TAVILY_API_KEY` | Web search evidence. |\n| Firecrawl | `FIRECRAWL_API_KEY` | Website and page scraping. |\n\nIf Tavily or Firecrawl is not configured, the pipeline still runs, but more\nclaims will be marked `[INFERRED]` or `[MISSING]`.\n\n## Project Structure\n\n```text\nOpenBusiness/\n├── install.sh\n├── pyproject.toml\n├── README.md\n├── LICENSE\n├── CONTRIBUTING.md\n├── llms.txt\n├── .env.example\n├── docs/\n│   ├── PROMOTION.md\n│   ├── EXTENDING.md\n│   └── assets/\n│       ├── openbusiness-terminal-demo.svg\n│       └── openbusiness-report-preview.svg\n├── .github/\n│   └── workflows/\n│       └── ci.yml\n└── openbusiness/\n    ├── cli.py\n    ├── language.py\n    ├── profiles.py\n    ├── resources/\n    │   ├── packs/\n    │   └── templates/\n    ├── agents/\n    │   ├── analysts/\n    │   └── utils/\n    ├── graph/\n    ├── llm_clients/\n    └── tools/\n```\n\n## Development\n\n```bash\npython -m pip install -e \".[dev]\"\npython -m ruff check openbusiness\npython -m compileall openbusiness\nbash -n install.sh\npython -m openbusiness.cli packs\npython -m openbusiness.cli templates\n```\n\nSupply-chain and release hygiene:\n\n- CI installs from the checked-out package and runs lint, compile, installer\n  syntax, resource smoke tests, and the README English-only check.\n- Runtime resources are packaged through `pyproject.toml` package data instead\n  of fetched dynamically at install time.\n- Generated output, local config, API keys, and virtual environments must stay\n  out of commits.\n- README and top-level metadata stay English-only for GitHub and package-index\n  readability.\n\n## Community\n\nOpenBusiness is meant to be co-built with people who care about better business\nresearch. The goal is a shared open-source workflow for evidence-labeled\ncompany analysis.\n\n- Star the repository if OpenBusiness helps your research workflow.\n- Open an issue for bugs, missing providers, report-quality problems, or\n  company-analysis examples that expose weak reasoning.\n- Share real analysis examples that show where the pipeline is shallow, slow, or\n  missing important evidence.\n- Contribute domain packs, report templates, evidence connectors, or better\n  stage prompts when you can show how they improve evidence quality or reasoning\n  depth.\n- Read [CONTRIBUTING.md](CONTRIBUTING.md) before sending a pull request.\n- Use [docs/EXTENDING.md](docs/EXTENDING.md) when adding analysis packs, report\n  templates, or evidence tools.\n- Use [docs/PROMOTION.md](docs/PROMOTION.md) for launch copy, GitHub topic\n  suggestions, and community posting templates.\n- `llms.txt` is available for AI assistants, answer engines, and developer\n  tools that need a compact project summary.\n\n## Frequently Asked Questions About OpenBusiness\n\n### What is OpenBusiness?\n\nOpenBusiness is an open-source Python CLI for business model research. It takes\na company name, domain, and optional stock ticker, collects public evidence,\nruns LangGraph analyst agents, and writes a Markdown business model report with\neach claim labeled as verified, inferred, or missing.\n\n### How is OpenBusiness different from generic LLM business analysis?\n\nGeneric LLM prompting often blends sourced claims, inferred claims, and missing\ndata into one confident answer. OpenBusiness keeps those claim types visible in\nthe report. It also runs a fixed analyst pipeline, keeps run artifacts, performs\nunit-economics calculations in Python, and includes an assumption stress test.\n\n### Can OpenBusiness analyze private companies?\n\nYes, but private-company reports usually contain more inferred and missing\nclaims because private companies do not publish full financials, churn, CAC,\nARPU, or cohort data. OpenBusiness is designed to show those gaps instead of\nfilling them with invented numbers.\n\n### How much does OpenBusiness cost to run?\n\nReports cost about $0.10-$0.40 in API calls, depending on provider and evidence\npack size. The package is open source under the MIT License, and you bring your\nown OpenAI, Anthropic, DeepSeek, Tavily, and Firecrawl keys.\n\n### Which LLM providers does OpenBusiness support?\n\nOpenBusiness supports OpenAI, Anthropic, and DeepSeek. The provider is selected\nthrough local config or environment variables. Tavily and Firecrawl are optional\nevidence APIs; without them, more report claims are likely to be inferred or\nmissing.\n\n### What is the assumption stress test?\n\nThe assumption stress test identifies the assumptions that would most change the\nbusiness model report if they were wrong. For example, it can show how a churn,\nARPU, CAC, gross-margin, or revenue-mix assumption changes LTV/CAC and the\noverall business model judgment.\n\n### What does OpenBusiness output?\n\nOpenBusiness writes a Markdown report and a reproducible artifact folder. The\nreport includes a business model canvas, claim layers, unit economics, moat\nanalysis, assumption stress test, and next steps. The artifact folder includes\nrun metadata, evidence, sources, and stage outputs.\n\n## Troubleshooting\n\n### `./install.sh: Permission denied`\n\n```bash\nchmod +x install.sh\n./install.sh\n```\n\n### `openbusiness: command not found`\n\nActivate the virtual environment used during installation:\n\n```bash\nsource .venv/bin/activate\n```\n\n### The report is mostly inferred\n\nConfigure Tavily and Firecrawl so the evidence collector can gather live source\nmaterial:\n\n```bash\nopenbusiness config --reset\n```\n\n### The report language is mixed\n\nRun with an explicit language override:\n\n```bash\nopenbusiness analyze \"Notion\" --domain notion.so --language en\nopenbusiness analyze \"Notion\" --domain notion.so --language zh\n```\n\nIf the warning persists, retry with a model that follows formatting and\nlanguage constraints more strictly.\n\n## License\n\nOpenBusiness is released under the MIT License. See [LICENSE](LICENSE) for the\nfull license text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwanikua%2FOpenBusiness","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwanikua%2FOpenBusiness","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwanikua%2FOpenBusiness/lists"}