Initialize Mentilead GrowthOS marketing system for Shopify apps. Creates the marketing/ directory structure with portfolio-level and per-app state. Supports single-app and multi-app portfolios. Use when user mentions "growthOS", "marketing setup", "initialize marketing", "start marketing", "add app", or when marketing/ directory doesn't exist.
Before doing anything, determine the current state and route to the correct flow.
marketing/ directory exists in the user's project rootmarketing/ does NOT exist → proceed to Step 1 (fresh initialization)marketing/ exists:
a. Read marketing/MEMORY.md and marketing/STATUS.md
b. Read marketing/apps/ to list registered apps
c. Present current state to the user:Present this summary:
GrowthOS is already initialized for this project.
Brand: {brand_name}
Apps: {list of app names and their status}
Current phase: {current_phase from STATUS.md}
Active experiments: {count from STATUS.md}
After presenting current state, determine what the user wants:
marketing/ideas/ exists and contains a validated idea (frontmatter go_no_go: go), ask: "You have a validated idea — [idea_name]. Want to use it as the starting point for this app?" If yes, pre-populate Step 2 fields from the idea file: problem hypothesis → one-liner, ICP hypothesis → positioning basics, competitors → top competitors, pricing hypothesis → pricing model. Update the idea file status to graduated.If the user asks to "reinitialize" or "start over":
Gather brand-level information. Keep this conversational and quick.
Ask these questions in a natural conversational flow (not a rigid form):
If the user has only ONE app:
If the user has MULTIPLE apps:
Gather information about each app. This is the most detailed step — be conversational, not robotic.
For each app, gather:
b2b-onboard). Confirm with user.pre-launch — Still building, not on the App Store yetbeta — On the App Store, actively seeking early userslaunched — Live and accepting installsgrowing — Established with active user base, optimizing for growthscaling — Significant traction, expanding channels and partnershipsOnly ask these if the app's status is launched, growing, or scaling:
For pre-launch and beta apps, skip questions 6-10 entirely. Set these fields to defaults:
If the user has multiple apps:
Create the full marketing/ directory structure and populate files with gathered data.
marketing/
├── MEMORY.md
├── STATUS.md
├── logs/
│ └── .gitkeep
├── positioning/
│ ├── brand.md
│ ├── icp.md
│ └── jtbd.md
├── partnerships/
│ ├── pipeline.md
│ └── templates.md
├── content/
│ ├── strategy.md
│ └── ideas.md
├── outreach/
│ ├── templates.md
│ ├── targets.md
│ └── campaigns/
│ └── .gitkeep
├── experiments/
│ ├── backlog.md
│ └── .gitkeep
├── experiment/ (if experiment layer enabled)
│ ├── observations.md
│ ├── autonomy-log.md
│ ├── signals.md
│ └── drafts/
│ └── .gitkeep
├── metrics/
│ ├── portfolio.md
│ └── weekly/
│ └── .gitkeep
└── apps/
└── {slug}/ (one per app)
├── app.md
├── listing.md
├── keywords.md
├── positioning.md
├── funnel.md
├── reviews.md
└── experiments/
└── .gitkeep
Read each template from the plugin's templates/ directory, populate with gathered data, and write to the target path:
| Template Source | Target Path | Notes |
|---|---|---|
templates/portfolio-memory.md | marketing/MEMORY.md | Fill brand name, app list, budget, phase |
templates/portfolio-status.md | marketing/STATUS.md | Fill per-app overview, set initial priorities |
templates/app-identity.md | marketing/apps/{slug}/app.md | Fill all gathered app info |
templates/app-listing.md | marketing/apps/{slug}/listing.md | Fill app name, leave rest as workspace |
templates/experiment-backlog.md | marketing/experiments/backlog.md | Empty backlog, ready for experiments |
templates/portfolio-metrics.md | marketing/metrics/portfolio.md | Empty metrics, ready for tracking |
templates/brand-positioning.md | marketing/positioning/brand.md | Fill brand name, app-to-brand mapping |
templates/funnel-tracker.md | marketing/apps/{slug}/funnel.md | Empty tracker with benchmarks |
templates/positioning-statement.md | marketing/positioning/positioning.md | Fill competitor data from Step 2 |
templates/observations.md | marketing/experiment/observations.md | Experiment layer only |
templates/autonomy-log.md | marketing/experiment/autonomy-log.md | Experiment layer only |
templates/signals.md | marketing/experiment/signals.md | Experiment layer only |
After creating the standard directory structure, ask:
"Are you using GrowthOS to document a public experiment? (yes/no)"
If yes:
marketing/experiment/ directory with drafts/ subdirectory (.gitkeep)templates/observations.md → marketing/experiment/observations.mdtemplates/autonomy-log.md → marketing/experiment/autonomy-log.mdtemplates/signals.md → marketing/experiment/signals.mdexperiment_chapter: "Chapter 1: The Wager" in marketing/STATUS.md frontmatterreferences/experiment-thesis.md and add to marketing/MEMORY.md:
## Experiment Layer
- **Thesis:** {thesis from experiment-thesis.md}
- **Current Chapter:** Chapter 1: The Wager
- **Observations logged:** 0
- **Autonomy Score:** Not yet measured
If no: skip. No experiment files created.
After creating the directory structure (and optionally the experiment layer), ask: "Do you want to configure the COO agent? (recommended)"
If yes, ask:
references/coo-config.md Time Budgetdev_status: {app}: {phase} in marketing/STATUS.md frontmatterWrite answers to references/coo-config.md. Add last_coo_briefing: never to marketing/STATUS.md frontmatter. Create marketing/experiment/coo-log.md with header: "# COO Briefing Log\n\nDecisions and follow-ups from daily COO briefings."
If no: skip. User can configure later.
These files get placeholder content — they'll be populated by dedicated skills later:
marketing/positioning/icp.md — Header only: "# Ideal Customer Profile\n\nRun the Positioning skill to develop your ICP."marketing/positioning/jtbd.md — Header only: "# Jobs-to-be-Done Research\n\nRun the Positioning skill to start JTBD interviews."marketing/partnerships/pipeline.md — Header only: "# Partnership Pipeline\n\nRun the Partnerships skill to build your pipeline."marketing/partnerships/templates.md — Header only: "# Partnership Templates\n\nRun the Partnerships skill to generate templates."marketing/content/strategy.md — Header only: "# Content Strategy\n\nRun the Content Strategy skill to plan your content."marketing/content/ideas.md — Header only: "# Content Ideas\n\nRun the Content Strategy skill to generate ideas."marketing/outreach/templates.md — Header only: "# Outreach Templates\n\nRun the Outreach skill to create email templates."marketing/outreach/targets.md — Header only: "# Outreach Targets\n\nRun the Outreach skill to define target segments."marketing/apps/{slug}/keywords.md — Header only: "# Keyword Research — {App Name}\n\nRun the ASO Optimizer skill to research keywords."marketing/apps/{slug}/positioning.md — Header only: "# Positioning — {App Name}\n\nRun the Positioning skill to develop app-specific positioning."marketing/apps/{slug}/reviews.md — Header only: "# Reviews — {App Name}\n\nRun the Review Manager skill to build your review strategy."When populating templates with gathered data:
YYYY-MM-DD date placeholders with today's date[Brand Name] and [App Name] with actual namesProvide immediate value by generating a brief positioning assessment. This is NOT a full positioning exercise (that's the Positioning skill) — just enough to give the developer actionable direction.
Read these two files to inform the assessment:
references/merchant-segments.md — for segmentation frameworks and ICP patternsreferences/funnel-benchmarks.md — for realistic milestone expectations and conversion ratesBased on the gathered app information (category, status, competitors, differentiators), generate:
Using the segmentation data from merchant-segments.md, suggest:
Frame this as a hypothesis to validate, not a final answer:
"Based on your category and competitors, your initial ICP is likely: [hypothesis]. The Positioning skill will help you validate and refine this."
Based on the app's current status, recommend 3 specific first actions:
Pre-launch apps:
Beta apps:
Launched apps (few reviews):
Growing apps:
Write the competitive landscape summary and ICP hypothesis to:
marketing/positioning/positioning.md — append to the Competitive Context sectionDo NOT overwrite the positioning template structure. Add the assessment content within the existing template sections.
Based on the app's status, recommend the most impactful next skill to use.
Pre-launch:
"Your most impactful next step is defining your positioning and ICP. This determines everything — your listing copy, outreach targets, and content strategy." Recommended: Positioning skill — "Tell me to work on positioning" or "Help me define my ICP"
Beta:
"You need early users and feedback fast. Focus on direct outreach to merchants who already use competing apps, and start collecting honest reviews." Recommended: Outreach skill + Review Manager — "Help me find beta users" or "Help me get reviews"
Launched (few reviews, < 20):
"Your App Store listing is your #1 conversion tool — 70%+ of installs come from in-store search. Optimize it, then focus on getting to 20+ reviews for organic discovery." Recommended: ASO Optimizer + Review Manager — "Help me optimize my listing" or "Help me get more reviews"
Growing (20+ reviews):
"You have a validated product. Now it's time to experiment systematically and build scalable acquisition channels." Recommended: Experiment Engine + Content Strategy — "Help me run experiments" or "Help me plan content"
Scaling:
"Focus on partnerships for leverage and portfolio-wide optimization." Recommended: Partnerships + Metrics Dashboard — "Help me find partners" or "Show me my metrics"
For multi-app portfolios, base the recommendation on the app with the EARLIEST status. A portfolio with one pre-launch and one growing app should focus on the pre-launch app first.
After completing initialization, update persistent state.
Create marketing/logs/{today}.md where {today} is today's date in YYYY-MM-DD format:
# Session Log — {today}
## GrowthOS Initialized
- **Brand:** {brand_name}
- **Apps registered:** {count}
{for each app:}
- {app_name} ({slug}) — {status}
{end}
- **Monthly budget:** {budget_tier}
- **Initial assessment:** Generated competitive landscape and ICP hypothesis
- **Recommended next step:** {recommended skill from Step 5}
{if experiment layer enabled:}
- **Experiment layer:** Enabled — Chapter 1: The Wager
{if COO configured:}
- **COO agent:** Configured — {hours}hrs/week, {working_days}
Set initial priorities in STATUS.md based on the recommended next skill:
current_phase: Set to the earliest app status across all appsactive_app: For single-app, set to the app slug. For multi-app, set to the earliest-status app slug.This Week's Priorities: Populate with the 3 recommended first actions from Step 4Upcoming Actions: Add "Run {recommended skill}" as the first actionAfter everything is created, present a summary to the user:
GrowthOS is set up! Here's what was created:
marketing/
├── MEMORY.md — Your marketing knowledge base
├── STATUS.md — Your marketing dashboard
├── positioning/ — Brand and app positioning
├── apps/{slug}/ — {app_name} files (listing, funnel, reviews)
├── experiments/ — Experiment backlog
├── metrics/ — Portfolio metrics tracker
├── content/ — Content strategy (empty, ready for Content skill)
├── outreach/ — Outreach templates (empty, ready for Outreach skill)
├── partnerships/ — Partnership pipeline (empty, ready for Partnerships skill)
{if experiment layer enabled:}
├── experiment/ — Observation log, autonomy tracker, signals, drafts
{if COO configured:}
├── references/coo-config.md — COO operational preferences
└── logs/{today}.md — Today's session log
{Quick positioning assessment from Step 4}
Next step: {recommendation from Step 5}
Used when marketing/ already exists and the user wants to add a new app.
marketing/apps/{new-slug}/ with all 7 files (app.md, listing.md, keywords.md, positioning.md, funnel.md, reviews.md, experiments/.gitkeep)apps list in frontmatteractive_app to the new app slug## App Added: {app_name}
- **Slug:** {slug}
- **Status:** {status}
- **Assessment:** {brief competitive landscape note}
If this is the second app being added (transitioning from single to multi-app):
| Gathered Data | Template | Field |
|---|---|---|
| Brand name | portfolio-memory.md | frontmatter brand_name, heading, Brand Identity section |
| Brand name | brand-positioning.md | heading [Brand Name] |
| Brand name | portfolio-status.md | — (implicit in dashboard) |
| App count | portfolio-memory.md | frontmatter apps array |
| Monthly budget | portfolio-memory.md | Current Strategy → Monthly Budget |
| App name | app-identity.md | frontmatter app_name, heading, Identity section |
| App name | app-listing.md | App Name field (with character count) |
| App name | portfolio-status.md | Per-App Overview table |
| App slug | app-identity.md | frontmatter app_slug, Identity → App Slug |
| App slug | portfolio-memory.md | frontmatter apps array |
| One-liner | app-identity.md | Identity → One-liner |
| Category | app-identity.md | Identity → Category |
| Status | app-identity.md | frontmatter status |
| Status | portfolio-status.md | Per-App Overview → Phase |
| Status | portfolio-status.md | frontmatter current_phase |
| Pricing | app-identity.md | Identity → Pricing |
| Installs | app-identity.md | Current Metrics → Installs |
| Installs | portfolio-status.md | Per-App Overview → Installs |
| Reviews | app-identity.md | Current Metrics → Reviews |
| Reviews | portfolio-status.md | Per-App Overview → Reviews |
| Rating | app-identity.md | Current Metrics → Avg Rating |
| Rating | portfolio-status.md | Per-App Overview → Rating |
| MRR | app-identity.md | Current Metrics → MRR |
| MRR | portfolio-status.md | Per-App Overview → MRR, Portfolio Summary → Combined MRR |
| Shopify plan | app-identity.md | Identity → Shopify Plan Required |
| Differentiators | app-identity.md | Positioning → Key Differentiators |
| Competitors | positioning-statement.md | Competitive Context table |
| Competitors | app-identity.md | Positioning → Primary Competitor |
| Today's date | All templates | frontmatter created, last_updated |
| Recommended actions | portfolio-status.md | This Week's Priorities (3 items) |
| Recommended skill | portfolio-status.md | Upcoming Actions (first item) |