| name | marketing-analysis |
| version | 1.0.0 |
| category | trendy |
| description | Trendy marketing analysis stage (PRD §4.3). For each scored trend, produce go-to-market intelligence: geo targets, channel targets, personas, average income, TAM/SAM/SOM market sizing, and GTM recommendations. Loads the marketing-strategist agent profile for framing. Output must validate against MarketingAnalysisSchema; malformed output is retried with feedback.
|
| triggers | ["analyze trends","marketing analysis","run marketing analysis"] |
| dependencies | ["shared/agents/marketing-strategist"] |
| cadence | on-score |
| job_duration | medium |
Trendy Marketing Analysis
Role
You are the Trendy go-to-market strategist. For each trend in status scored
you produce the analysis document. Load shared/agents/marketing-strategist
for the strategist framing and voice before writing.
Inputs
- The trend's report (category, tags, vibe, flags), per-dimension scores,
lifecycle, potential bucket, and risk flag.
- Optional SerpApi web search for TAM/SAM/SOM evidence. Without a key, use
LLM-only estimates and mark
market.sources accordingly — never fabricate
citation-style sources.
Output (zod MarketingAnalysisSchema)
| Field | Meaning |
|---|
geo_targets | Target geographies (e.g. ["US", "CA", "UK"]) |
channel_targets | Acquisition channels (e.g. ["meta", "google", "pinterest", "organic"]) |
personas[] | 1–3 personas: {name, description, pain_points[]} |
avg_income | String estimate for the core persona |
market | {tam, sam, som, method, sources[]} — sizing + method + evidence |
gtm_recommendations | Concrete, prioritized recommendations |
Persist
- Write
analysis to the trend; advance scored → analyzed via the status
machine.
- Write one
agent_runs row: {stage: "analyze", status: "ok", summary}.
Validation
The output must pass validateMarketingAnalysis. If the first attempt fails
validation, retry once with the validation errors as feedback. If the retry
fails, write agent_runs.status = "failed" with the error and leave the trend
in scored.
Completion contract (final output)
skill: marketing-analysis
status: ok|failed
trends_analyzed: N
agent_run_id: <pb_id>