Skip to content
Development
Skill

/vertical-onboarding

Onboarding-and-switching playbook for SMB Product-Builder products. Defines the first-run experience that turns a prospect leaving an incumbent (ServiceTitan/Toast/Mindbody/Shopify/QuickBooks) into an activated user — import-first onboarding, the activation milestone,

From plugin
great-cto
11537 skills73 agents21 commands1 hook

Claude Code

$ npx -y skills add avelikiy/great_cto --skill vertical-onboarding --agent claude-code

SKILL.md

vertical-onboarding.SKILL.md
name: vertical-onboarding
description: Onboarding-and-switching playbook for SMB Product-Builder products. Defines the first-run experience that turns a prospect leaving an incumbent (ServiceTitan/Toast/Mindbody/Shopify/QuickBooks) into an activated user — import-first onboarding, the activation milestone, sample-data fallback, and the time-to-first-value target. Applied by migration-import-engineer and architect/pm so onboarding is designed as a funnel, not an afterthought. Our whole wedge is "low switching cost"; this skill makes that real on day one.
when_to_use: |
  Apply when:
  - migration-import-engineer designs the import that feeds first-run
  - architect/pm specs the first-run / activation flow for a new product
  - a product's adoption depends on leaving an incumbent (any of the 40 products)
  Do NOT apply for internal tools with no external onboarding.
effort: low
allowed-tools: Read, Write, Grep, Glob
paths:
  - "docs/data-import/**"
  - "docs/architecture/**"
  - "docs/design/**"

Vertical onboarding — switch them in, to first value, fast

The incumbent's moat is switching cost. Our wedge is dissolving it. Onboarding is where that promise is kept or broken. **Design onboarding as a funnel with one activation milestone, import-first.**

1. Import-first, not blank-slate

The default first-run path is **"bring your data from {incumbent}"**, powered by `migration-import-engineer`'s import contract — not an empty dashboard the user must fill by hand. A new user should see *their own* customers/jobs/menu/listings within minutes.

  • Offer the import on screen one, with the named incumbent ("Import from ServiceTitan").
  • Run it as a dry-run preview the user approves (the import contract's operator step).
  • Provide a **sample-data fallback** ("Explore with example data") for users who can't

export yet — never a dead empty state.

2. One activation milestone (define it per product)

Pick the single action that means "this user got value" — the north-star of onboarding. Everything in first-run drives toward it. Examples:

| product | activation milestone | |---|---| | quoting (home services) | sent first priced quote | | online-ordering (restaurants) | published menu + took first test order | | class-booking (fitness) | imported members + first class booked | | inventory (retail) | synced catalog + first reorder rule set | | transaction-coordination (real estate) | first transaction checklist created | | sponsorship-crm (creator) | first sponsor + deal stage |

Measure **time-to-first-value (TTFV)**; target minutes, not days. State the target in the architecture doc.

3. The onboarding funnel (spec these steps)

1. Identify incumbent → 2. Import (dry-run → approve) → 3. Verify own data
→ 4. Complete the one setup the product needs → 5. Activation milestone → 6. Invite team

Each step: a clear single CTA, skippable where safe, resumable, and with progress shown. Defer everything not on the path to the activation milestone.

4. Reduce setup to the minimum

  • Pre-fill from imported data wherever possible (branding from the website, hours from the

listing, tax rate from the address).

  • Sensible defaults over required choices; advanced config lives in settings, not onboarding.
  • One required integration max before activation (e.g. Stripe for quoting) — sequence the

rest after first value.

5. Trust + reversibility

  • Show what was imported and let the user undo a batch (ties to the import contract's

rollback) — trust comes from "you can't break anything."

  • Don't ask for payment details before the activation milestone unless the product is

charge-to-use.

Output

When applied, contribute an **Onboarding** section to the architecture or design doc:

## Onboarding
- incumbent(s): <names> → import via docs/data-import/IMPORT-{slug}.md
- activation milestone: <the one action>
- TTFV target: <minutes>
- funnel: identify → import(dry-run→approve) → verify → setup → activate → invite
- empty-state fallback: sample data
- required-before-activation: <≤1 integration>
Read more
@avelikiy
Ships withgreat-cto

You already have the agent. This is everything around it. great_cto runs Claude Code as a pipeline of 70 specialist agents — an independent model checks each stage before the next builds on it, spending caps refuse rather than warn, and three decisions stay yours: what gets built, how, and whether it ships.

11537 skills73 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
115
Star history of avelikiy/great_cto on GitHub, a chart by star-history.com

Other skills on great-cto.

aesthetic-instrument

aesthetic-instrument

great_cto's own committed aesthetic — the instrument panel. Dark five-step surface ladder, exactly one accent, two faces divided…

@avelikiy@avelikiyInstall Skill
anti-patterns

anti-patterns

Catalogue of known SDLC anti-patterns that great_cto agents must actively reject when reviewing architecture, plans, code, or…

@avelikiy@avelikiyInstall Skill
anydesign

anydesign

Analyze images, websites, and Figma files to extract their design and generate a `design.md` with token system, component…

@avelikiy@avelikiyInstall Skill
archetype-review-base

archetype-review-base

Shared review framework that every domain reviewer (pci, oracle, gov, edtech, healthcare, mlops, etc.) MUST follow. Defines the…

@avelikiy@avelikiyInstall Skill
artifact-retention

artifact-retention

After a build is delivered, delete its intermediate copies and old versions — keep exactly the version that runs and one previous…

@avelikiy@avelikiyInstall Skill
brainstorming

brainstorming

Structured idea generation + multi-LLM debate for the product-owner stage. Diverge (generate genuinely different bets), debate (a…

@avelikiy@avelikiyInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about vertical-onboarding.

Which coding agents can use vertical-onboarding?
vertical-onboarding installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.