[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-2060":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":23,"readmeContent":24,"aiSummary":25,"trendingCount":15,"starSnapshotCount":15,"syncStatus":26,"lastSyncTime":27,"discoverSource":28},2060,"StartupKit","mohamedameen-io\u002FStartupKit","mohamedameen-io","Interactive startup ideation toolkit powered by Claude Code. Walk through a structured brainstorming process to go from \"I want to start a business\" to a validated business idea with competitive intelligence, market positioning, a complete offer, go-to-market plan, and investor-ready pitch.","",null,"JavaScript",143,22,1,0,8,4.09,"MIT License",false,"main",true,[],"2026-06-12 02:00:36","# StartupKit\n\n\u003Cdiv align=\"center\">\n\n**A deterministic, phase-sequenced founder-board orchestrator for Claude Code business ideation.**\n\n[![Node 18+](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fnode-18+-brightgreen.svg)](https:\u002F\u002Fnodejs.org\u002F)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-blue.svg)](LICENSE)\n[![Phases](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fphases-11-informational)](#phases)\n[![Claude Code skills](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FClaude_Code-skills-8A2BE2)](skills\u002F)\n[![Contract-enforced](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Finstall-contract_enforced-success)](CONTRACTS.md)\n\n[Why StartupKit](#why-use-startupkit) · [Phases](#phases) · [Architecture](#architecture) · [Install](#install) · [Contracts](CONTRACTS.md) · [CLI](#cli-reference) · [Non-goals](#non-goals)\n\n\u003C\u002Fdiv>\n\n---\n\n## What it is\n\nStartupKit is an **installable, contract-enforced, reality-grounded ideation pipeline** for Claude Code. It decomposes the business-ideation problem into a bounded sequence of 11 phases — _diverge → niche → competitors → positioning → offer → validate → money → leads → skills → pitch → export_ — each implemented as a Claude Code skill with its own prompt, required output sections, and session artifacts. A thin Node CLI ([bin\u002Fcli.js](bin\u002Fcli.js)) deterministically installs the skills and shared templates under `~\u002F.claude\u002Fskills\u002F`, writes a content-hashed install manifest, and classifies every subsequent file transition as `added` \u002F `updated` \u002F `skipped` \u002F `conflict` \u002F `unchanged`. Session state lives as **YAML frontmatter** inside `00-session.md`, so progress is a machine-readable artifact rather than a prose log. Every installable asset is declared in [`.install-contract.json`](.install-contract.json) and constrained by [CONTRACTS.md](CONTRACTS.md), enforced in CI via [`.github\u002Fworkflows\u002Fci.yml`](.github\u002Fworkflows\u002Fci.yml). No API keys, no telemetry, no background agents.\n\n---\n\n## Why use StartupKit\n\n- **Structured ideation over open-ended prompting.** An 11-phase pipeline enforces a discipline of diverge → converge → validate → monetize → pitch, backed by one skill per phase in [skills\u002F](skills\u002F). You never start from a blank prompt.\n- **Collective founder counsel, not name-dropping.** Seven Domain Expert Boards convene per phase (primary + secondary) via the mapping in [skills\u002Fstartupkit\u002FSKILL.md](skills\u002Fstartupkit\u002FSKILL.md). Every decision point surfaces **agreement, disagreement, and application** instead of quoting one founder.\n- **Deterministic installer.** [bin\u002Fcli.js](bin\u002Fcli.js) uses SHA-256 content hashes and an install manifest at `~\u002F.claude\u002Fskills\u002Fstartupkit\u002F.install-manifest.json` to classify every file transition; locally edited files surface as `conflict` and require `--force` to overwrite.\n- **Machine-readable session state.** `00-session.md` begins with YAML frontmatter (`session`, `phases`, `export`, `goldNiche`) defined in [templates\u002Fsession-template.md](templates\u002Fsession-template.md). Dashboards and phase advancement read from structured data, not prose regex.\n- **Single source of truth.** [CONTRACTS.md](CONTRACTS.md) declares the canonical asset layout (`skills\u002F\u003Cname>\u002FSKILL.md`, `skills\u002F\u003Cname>\u002Freferences\u002F*.md`, `templates\u002F*.md`). Duplicate mirrors (for example `.claude\u002Fskills\u002F`) are explicitly forbidden.\n- **Reference-by-design.** Heavy phases (competitors, positioning, pitch) carry declared **mode contracts** (`quick` \u002F `standard` \u002F `deep`) and **output contracts** under each skill's `references\u002F` directory. Downstream phases consume only the sections a contract declares.\n- **Local-only, subscription-driven.** Every LLM call is a Claude Code session. No API keys, no per-token billing, no outbound telemetry.\n- **CI guardrails.** [`.github\u002Fworkflows\u002Fci.yml`](.github\u002Fworkflows\u002Fci.yml) runs `node bin\u002Fcli.js doctor` plus an install dry-run on every push and pull request.\n\n---\n\n## Design principles\n\n| Principle | Mechanism |\n|---|---|\n| **One source of truth per asset** | [CONTRACTS.md](CONTRACTS.md) declares canonical locations; [`.install-contract.json`](.install-contract.json) enumerates every shipped asset |\n| **Deterministic install, not `cp -r`** | [bin\u002Fcli.js](bin\u002Fcli.js) hashes every source and destination file and classifies the transition explicitly |\n| **Manifest-tracked local edits** | `~\u002F.claude\u002Fskills\u002Fstartupkit\u002F.install-manifest.json` records prior hashes; drift becomes a first-class `conflict` action |\n| **Structured session state** | YAML frontmatter in `00-session.md` drives phase status and next-step logic |\n| **Phase skills carry their own contracts** | Each heavy skill declares `references\u002Fmode-contracts.md` and `references\u002Foutput-contracts.md` |\n| **Fresh-context domain boards** | Seven named boards (see below) are convened per phase with agreement\u002Fdisagreement\u002Fapplication structure |\n| **CI-backed contract enforcement** | The CI workflow runs `doctor` and a dry-run install on every push and pull request |\n| **No background agents, no telemetry** | Everything happens inside the user's Claude Code session and the local filesystem |\n\n---\n\n## Phases\n\n`\u002Fstartupkit` is the orchestrator, not a numbered phase. It creates sessions, renders the dashboard from frontmatter, and routes the user to the next skill.\n\n| # | Phase | Command | Role |\n|---|---|---|---|\n| 1 | Diverge | `\u002Fsk-diverge` | Brainstorm skills, passions, and problems |\n| 2 | Niche | `\u002Fsk-niche` | Score and rank niche ideas |\n| 3 | Competitors | `\u002Fsk-competitors` | Analyze competitors and pricing |\n| 4 | Positioning | `\u002Fsk-positioning` | Build market positioning |\n| 5 | Offer | `\u002Fsk-offer` | Build a Grand Slam Offer |\n| 6 | Validate | `\u002Fsk-validate` | Plan interviews, outreach, MVP validation |\n| 7 | Money | `\u002Fsk-money` | Build pricing and revenue model |\n| 8 | Leads | `\u002Fsk-leads` | Design lead channels and nurture strategy |\n| 9 | Skills | `\u002Fsk-skills` | Map AI skill opportunities to the offer |\n| 10 | Pitch | `\u002Fsk-pitch` | Build investor pitch materials |\n| 11 | Export | `\u002Fsk-export` | Generate final one-pager |\n\n---\n\n## How a session flows\n\n```text\n1. \u002Fstartupkit      → create session, render dashboard from frontmatter\n2. \u002Fsk-diverge      → raw idea surface (no judging)\n3. \u002Fsk-niche        → converge via Taki Moore 3Q + Hormozi 4-criteria\n4. \u002Fsk-competitors  → research, mode=quick|standard|deep\n5. \u002Fsk-positioning  → Dunford 5+1, mode-contracted output\n6. \u002Fsk-offer        → Grand Slam Offer (Six P's + Value Equation)\n7. \u002Fsk-validate     → discovery calls, outreach, MVP plan\n8. \u002Fsk-money        → pricing, offer ladder, projections\n9. \u002Fsk-leads        → channels + nurture sequence\n10. \u002Fsk-skills      → AI skill integration plan\n11. \u002Fsk-pitch       → investor pitch materials (mode-contracted)\n12. \u002Fsk-export      → one-pager summary\n```\n\nAt every step, the active skill writes back into `00-session.md` frontmatter (`phases[id=N].status`, `session.activePhase`, `session.nextPhase`, `session.updated`) as defined in [skills\u002Fstartupkit\u002Freferences\u002Fsession-state-protocol.md](skills\u002Fstartupkit\u002Freferences\u002Fsession-state-protocol.md).\n\n---\n\n## Session state machine\n\n```mermaid\nstateDiagram-v2\n    [*] --> notStarted\n    notStarted --> inProgress: user opens phase\n    inProgress --> complete: skill writes phase artifact + updates frontmatter\n    inProgress --> notStarted: user resets phase\n    complete --> inProgress: user redoes phase\n    complete --> [*]: final phase completes\n```\n\nEach of the 11 phases is a row in `phases[]`. `session.activePhase` tracks the currently focused phase; `session.nextPhase` is the recommended next command.\n\n---\n\n## Architecture\n\n```mermaid\nflowchart TB\n    subgraph Repo [\"Repository\"]\n        skillsDir[\"skills\u002F\"]\n        templatesDir[\"templates\u002F\"]\n        contractJson[\".install-contract.json\"]\n        contractsMd[\"CONTRACTS.md\"]\n    end\n\n    subgraph CLI [\"bin\u002Fcli.js\"]\n        init[\"init \u002F upgrade \u002F force \u002F dry-run \u002F verbose\"]\n        doctor[\"doctor\"]\n        uninstall[\"uninstall\"]\n    end\n\n    subgraph Home [\"~\u002F.claude\u002Fskills\"]\n        installedSkills[\"&lt;skill&gt;\u002FSKILL.md + references\u002F\"]\n        installedTemplates[\"startupkit\u002Ftemplates\u002F*.md\"]\n        manifest[\".install-manifest.json\"]\n    end\n\n    subgraph Session [\"workspace\u002Fsessions\u002F#123;name#125;\"]\n        sessionMd[\"00-session.md (YAML frontmatter)\"]\n        phaseArtifacts[\"01-..11-*.md artifacts\"]\n    end\n\n    Repo --> CLI\n    CLI --> Home\n    Home --> Session\n    contractsMd --> CLI\n    contractJson --> CLI\n```\n\n- **Serial by construction.** One phase at a time. No background daemons, no multi-agent parallelism.\n- **Install target is stable.** Skills always land in `~\u002F.claude\u002Fskills\u002F\u003Cskill>\u002F`. Shared templates always land in `~\u002F.claude\u002Fskills\u002Fstartupkit\u002Ftemplates\u002F`.\n\n---\n\n## Domain Expert Boards\n\nSeven boards, mapped per phase. Each skill convenes its **primary** board and consults its **secondary** board.\n\n```mermaid\nflowchart LR\n    subgraph Boards\n        OV[Opportunity and Vision]\n        MF[Market Focus]\n        CS[Competitive Strategy]\n        VP[Value and Pricing]\n        CV[Customer and Validation]\n        SP[Storytelling and Persuasion]\n        CE[Craft and Execution]\n    end\n\n    P1[1 Diverge] --> OV\n    P2[2 Niche] --> MF\n    P3[3 Competitors] --> CS\n    P4[4 Positioning] --> CS\n    P5[5 Offer] --> VP\n    P6[6 Validate] --> CV\n    P7[7 Money] --> VP\n    P8[8 Leads] --> CV\n    P9[9 Skills] --> CE\n    P10[10 Pitch] --> SP\n    P11[11 Export] --> SP\n```\n\nThe full primary\u002Fsecondary mapping lives in [skills\u002Fstartupkit\u002FSKILL.md](skills\u002Fstartupkit\u002FSKILL.md).\n\n---\n\n## Observability\n\nEverything is on disk, in a form you can grep, diff, and replay.\n\n```text\nworkspace\u002Fsessions\u002F{name}\u002F\n├── 00-session.md          # YAML frontmatter + progress tracker (source of truth)\n├── 01-diverge.md          # Raw idea surface\n├── 02-niches.md           # Scored niches + Gold selection\n├── 03-competitors.md      # Competitive summary\n├── 03-competitors\u002F        # Full deliverables (battle cards, pricing, matrix)\n├── 04-positioning.md      # Positioning summary\n├── 04-positioning\u002F        # Full deliverables (statements, alternatives, messaging)\n├── 05-offer.md            # Grand Slam Offer\n├── 06-validation.md       # Validation plan\n├── 07-money-model.md      # Pricing, offer ladder, projections\n├── 08-lead-strategy.md    # Channels + nurture\n├── 09-skills-match.md     # AI skill recommendations\n├── 10-pitch.md            # Investor pitch summary + scorecard\n├── 10-pitch\u002F              # Full pitch deliverables\n└── 11-one-pager.md        # Final one-pager export\n```\n\n`00-session.md` is authoritative for phase status. The orchestrator renders the dashboard from its frontmatter.\n\n---\n\n## Install\n\nTwo equal paths. Both leave the same result on disk: skills under `~\u002F.claude\u002Fskills\u002F`, shared templates under `~\u002F.claude\u002Fskills\u002Fstartupkit\u002Ftemplates\u002F`, and an install manifest alongside.\n\n### Option A — npm CLI\n\n```bash\nnpx startup-ideation-kit init\n```\n\nThe package is `startup-ideation-kit`; the binary is `startupkit`. Once available on your `PATH`:\n\n```bash\nstartupkit init\nstartupkit init --upgrade\nstartupkit init --dry-run --upgrade\nstartupkit uninstall\n```\n\n### Option B — skill registry\n\n```bash\nnpx skills add mohamedameen-io\u002FStartupKit\n```\n\n---\n\n## Installer behavior\n\nOn `init`, every source file is classified against the install manifest and the current destination:\n\n| Action | Meaning |\n|---|---|\n| `added` | destination did not exist |\n| `updated` | source differed, applied under `--upgrade` or `--force` |\n| `skipped` | source and destination identical, or `--upgrade` \u002F `--force` not set |\n| `conflict` | destination differs from manifest (local edits); requires `--force` |\n| `unchanged` | identical under `--upgrade` |\n\nFlags:\n\n| Flag | Effect |\n|---|---|\n| `--upgrade` | Apply changes where source differs, preserving local edits as `conflict` |\n| `--force` | Overwrite even on `conflict` |\n| `--dry-run` | Classify without writing |\n| `--verbose` | Print per-file decisions including `unchanged` |\n\nA report is printed at the end of every run summarizing totals per action.\n\n---\n\n## Session output\n\nSession files are written under the current working directory: `workspace\u002Fsessions\u002F{name}\u002F`. Each phase skill updates the frontmatter in `00-session.md` after its save step. The export skill sets `export.generated: true` and updates `session.status`.\n\n---\n\n## Contracts\n\nStartupKit treats the repository layout as a contract, not a convention.\n\n- **Canonical sources** — declared in [CONTRACTS.md](CONTRACTS.md):\n  - `skills\u002F\u003Cname>\u002FSKILL.md`\n  - `skills\u002F\u003Cname>\u002Freferences\u002F*.md`\n  - `templates\u002F*.md`\n- **Enumerated assets** — [`.install-contract.json`](.install-contract.json) lists every shipped skill and template; CI fails if filesystem and contract drift.\n- **Forbidden mirrors** — tracking duplicate skill content under `.claude\u002F` or other mirror directories is disallowed.\n- **No absolute local paths** — absolute host paths (for example `\u002FUsers\u002F...`) are forbidden inside any `SKILL.md`.\n\n---\n\n## CLI reference\n\n| Command | Purpose |\n|---|---|\n| `startupkit init` | Install skills and shared templates under `~\u002F.claude\u002Fskills\u002F` |\n| `startupkit init --upgrade` | Apply changed source files, preserving local edits as `conflict` |\n| `startupkit init --force` | Overwrite local edits during upgrade |\n| `startupkit init --dry-run` | Classify transitions without writing |\n| `startupkit init --verbose` | Include `unchanged` entries in the per-file log |\n| `startupkit doctor` | Run repository contract checks (script under [scripts\u002Fdoctor\u002F](scripts\u002Fdoctor\u002F)) |\n| `startupkit uninstall` | Remove installed skills, templates, and manifest |\n| `startupkit help` | Print usage |\n\nCommands not in this table are not implemented in [bin\u002Fcli.js](bin\u002Fcli.js).\n\n---\n\n## Doctor and CI\n\n- **doctor** is wired in [bin\u002Fcli.js](bin\u002Fcli.js) and dispatches to `scripts\u002Fdoctor\u002Findex.js`; it runs repository contract checks against [CONTRACTS.md](CONTRACTS.md) and [`.install-contract.json`](.install-contract.json).\n- **CI** is defined in [`.github\u002Fworkflows\u002Fci.yml`](.github\u002Fworkflows\u002Fci.yml). On every push and pull request, it runs:\n  - `npm ci`\n  - `node bin\u002Fcli.js doctor`\n  - `node bin\u002Fcli.js init --dry-run --upgrade` under a temporary `$HOME`\n\nThis is the same `doctor` the local CLI runs — CI has no parallel implementation to drift from.\n\n---\n\n## How it compares\n\n| Capability | StartupKit | Single-chat ideation | Generic template pack |\n|---|---|---|---|\n| 11-phase pipeline with named skills | Yes (phases 1–11) | No | Partial |\n| Machine-readable session state | Yes (YAML frontmatter) | No | No |\n| Deterministic installer with manifest | Yes (SHA-256 + action classes) | N\u002FA | No |\n| Conflict-aware upgrade | Yes (`--upgrade` \u002F `--force`) | N\u002FA | No |\n| Contract-enforced asset layout | Yes ([CONTRACTS.md](CONTRACTS.md), [`.install-contract.json`](.install-contract.json)) | No | No |\n| Mode contracts for heavy phases | Yes (`quick` \u002F `standard` \u002F `deep`) | No | No |\n| CI-enforced contract checks | Yes ([`.github\u002Fworkflows\u002Fci.yml`](.github\u002Fworkflows\u002Fci.yml)) | No | No |\n| Local-only, no API keys | Yes | Depends | Yes |\n| No telemetry | Yes | Depends | Yes |\n\n---\n\n## Non-goals\n\nStartupKit intentionally does **not** do these things:\n\n- **No background agents.** Phases are serial and user-driven. Nothing runs on a daemon.\n- **No in-context delegation.** Skills do not `@mention` each other mid-conversation.\n- **No hidden CLI surface.** If it is not in the CLI reference above, it is not implemented. Commands like `founders search` do not exist.\n- **No API keys.** StartupKit depends on your Claude Code session, not direct LLM APIs.\n- **No telemetry.** Nothing phones home. All state lives under `workspace\u002F` and `~\u002F.claude\u002Fskills\u002F`.\n- **No duplicate mirrors.** `.claude\u002Fskills\u002F` and other install mirrors are not tracked; [CONTRACTS.md](CONTRACTS.md) forbids them.\n- **No silent overwrites.** Locally modified installed files surface as `conflict` until you pass `--force`.\n\n---\n\n## Project structure\n\n```text\nStartupKit\u002F\n  bin\u002F                        # Node CLI entrypoint (startupkit)\n  skills\u002F                     # Skill definitions and per-skill references\n  templates\u002F                  # Canonical shared templates\n  scripts\u002Fdoctor\u002F             # Repository contract checks\n  docs\u002F                       # Register \u002F evidence \u002F project docs\n  workspace\u002Fsessions\u002F         # Session outputs (local)\n  .install-contract.json      # Enumerated installable assets\n  CONTRACTS.md                # Source-of-truth path contract\n  .github\u002Fworkflows\u002Fci.yml    # doctor + install dry-run on push\u002FPR\n```\n\n---\n\n## Requirements\n\n- [Claude Code](https:\u002F\u002Fclaude.ai\u002Fcode)\n- Node.js 18+ (for both `npx skills add ...` and `npx startup-ideation-kit ...`)\n\n---\n\n## Attribution\n\nFrameworks used across phases draw from Alex Hormozi, April Dunford, Taki Moore, Geoffrey Moore, Marty Neumeier, Ali Abdaal, Rob Fitzpatrick, and the founder-biography corpus that informs the Domain Expert Boards. All credit for the underlying business frameworks goes to their respective creators.\n\n## License\n\nMIT License. See [LICENSE](LICENSE).\n","StartupKit 是一个基于 Claude Code 的交互式创业构思工具包，旨在帮助用户从“我想创业”的想法出发，逐步形成经过验证的商业创意。它通过11个阶段（包括发散思考、市场定位、竞争分析等）引导用户完成整个创业构思过程，并最终生成一份包含市场定位、完整产品服务、上市计划和面向投资者的演讲稿。该项目使用 JavaScript 编写，具有结构化的创新流程、专家委员会集体决策支持以及确定性的安装程序等特点。适合初创企业创始人或团队在寻找并验证商业机会时使用。",2,"2026-06-11 02:47:50","CREATED_QUERY"]