Growth engine skill

python3 telemetry/versioncheck.py 2>/dev/null || true

by ericosiu·MIT license·★ 3,615 Stars on the repo·GitHub ↗

Use now

Files of Growth engine

ericosiu/main1 file shown
SKILL.md
Show the full text145 lines

Growth Engine

Preamble (runs on skill start)

# Version check (silent if up to date)
python3 telemetry/version_check.py 2>/dev/null || true

# Telemetry opt-in (first run only, then remembers your choice)
python3 telemetry/telemetry_init.py 2>/dev/null || true

Privacy: This skill logs usage locally to ~/.ai-marketing-skills/analytics/. Remote telemetry is opt-in only. No code, file paths, or repo content is ever collected. See telemetry/README.md.


Autonomous growth experimentation framework based on Karpathy's autoresearch pattern applied to marketing. Creates experiments with hypotheses, logs data points, runs statistical analysis (bootstrap CI + Mann-Whitney U), auto-promotes winners to a living playbook, and suggests next experiments. Supports batch mode (up to 10 variants simultaneously).

Usage

Use this skill when:

  • Creating or managing A/B or multivariate experiments for any marketing channel
  • Logging experiment data points after content is published or campaigns run
  • Scoring experiments to determine statistical winners
  • Checking the playbook for proven best practices before creating new content
  • Generating weekly scorecards across all channels
  • Monitoring campaign pacing and health

Do NOT use for:

  • One-off content creation (use the playbook output as input, but don't run the engine)
  • Non-experiment analytics or reporting
  • Campaign setup in external platforms (this tracks experiments, not campaign config)

Commands

Create an experiment
python3 experiment-engine.py create \
  --agent <agent_name> \
  --hypothesis "What you expect to happen" \
  --variable "<variable_name>" \
  --variants '["variant_a", "variant_b"]' \
  --metric "<primary_metric>" \
  --cycle-hours 24

Add --batch-mode for 3-10 variant tests. Add --min-samples N to override auto-detection.

Log a data point
python3 experiment-engine.py log \
  --agent <agent_name> \
  --experiment-id <EXP-ID> \
  --variant "<variant_name>" \
  --metrics '{"metric_name": value}'
Score an experiment
python3 experiment-engine.py score --agent <agent_name> --experiment-id <EXP-ID>

Statuses: running → trending → keep (winner) or discard (loser)

Winners auto-promote to the playbook. Requires p < 0.05 AND ≥ 15% lift.

List experiments
python3 experiment-engine.py list --agent <agent_name> [--status running|trending|keep|discard]
Check the playbook
python3 experiment-engine.py playbook --agent <agent_name>

Always check the playbook before creating new content to apply proven best practices.

Suggest next experiments
python3 experiment-engine.py suggest --agent <agent_name>
Generate weekly scorecard
python3 autogrowth-weekly-scorecard.py [--weeks N] [--output file.md]
Check campaign pacing
python3 pacing-alert.py [--json]

Exit code 0 = on pace, 1 = alerts present.

Workflow

  1. Before creating content: playbook → apply proven rules
  2. When publishing: log → record which variant was used and its metrics
  3. Periodically: score → check if experiments have reached statistical significance
  4. Weekly: autogrowth-weekly-scorecard.py → review all channels
  5. After completing experiments: suggest → pick the next variable to test

Configuration

Required Environment Variables
Variable Description
GROWTH_ENGINE_DATA_DIR Data directory (default: ./data/experiments)
GROWTH_ENGINE_AGENTS Comma-separated agent names (default: content,email,linkedin,seo,blog)
Optional Tuning
Variable Default Description
HIGH_VOLUME_AGENTS content,email Agents needing only 10 samples/variant
LOW_VOLUME_AGENTS seo,linkedin,blog Agents needing 30 samples/variant
P_WINNER 0.05 p-value threshold for winner
P_TREND 0.10 p-value threshold for trending
LIFT_WIN 15.0 Minimum % lift for keep decision
BOOTSTRAP_ITERATIONS 1000 Bootstrap resamples for CI
BATCH_MODE_MAX_VARIANTS 10 Max variants in batch mode
Pacing Alert Variables
Variable Description
PIPELINE_API_URL Pipeline/CRM API endpoint
PIPELINE_AUTH_TOKEN Bearer token for pipeline API
RECRUITING_API_URL Recruiting API endpoint
RECRUITING_AUTH_TOKEN Bearer token for recruiting API
EMAIL_API_URL Email platform API base URL
EMAIL_AUTH_TOKEN Bearer token for email platform
OUTBOUND_CAMPAIGNS JSON: {"name": "campaign-id"}
RECRUITING_CAMPAIGNS JSON: {"name": "campaign-id"}
DAILY_LEAD_TARGET Leads/day target (default: 10)
WEEKLY_CANDIDATE_TARGET Candidates/week target (default: 400)
Dependencies
pip install numpy scipy
1# Growth Engine
2 
3## Preamble (runs on skill start)
4 
5```bash
6# Version check (silent if up to date)
7python3 telemetry/version_check.py 2>/dev/null || true
8 
9# Telemetry opt-in (first run only, then remembers your choice)
10python3 telemetry/telemetry_init.py 2>/dev/null || true
11```
12 
13> **Privacy:** This skill logs usage locally to `~/.ai-marketing-skills/analytics/`. Remote telemetry is opt-in only. No code, file paths, or repo content is ever collected. See `telemetry/README.md`.
14 
15---
16 
17Autonomous growth experimentation framework based on Karpathy's autoresearch pattern applied to marketing. Creates experiments with hypotheses, logs data points, runs statistical analysis (bootstrap CI + Mann-Whitney U), auto-promotes winners to a living playbook, and suggests next experiments. Supports batch mode (up to 10 variants simultaneously).
18 
19## Usage
20 
21Use this skill when:
22- Creating or managing A/B or multivariate experiments for any marketing channel
23- Logging experiment data points after content is published or campaigns run
24- Scoring experiments to determine statistical winners
25- Checking the playbook for proven best practices before creating new content
26- Generating weekly scorecards across all channels
27- Monitoring campaign pacing and health
28 
29Do NOT use for:
30- One-off content creation (use the playbook output as input, but don't run the engine)
31- Non-experiment analytics or reporting
32- Campaign setup in external platforms (this tracks experiments, not campaign config)
33 
34## Commands
35 
36### Create an experiment
37```bash
38python3 experiment-engine.py create \
39 --agent <agent_name> \
40 --hypothesis "What you expect to happen" \
41 --variable "<variable_name>" \
42 --variants '["variant_a", "variant_b"]' \
43 --metric "<primary_metric>" \
44 --cycle-hours 24
45```
46 
47Add `--batch-mode` for 3-10 variant tests. Add `--min-samples N` to override auto-detection.
48 
49### Log a data point
50```bash
51python3 experiment-engine.py log \
52 --agent <agent_name> \
53 --experiment-id <EXP-ID> \
54 --variant "<variant_name>" \
55 --metrics '{"metric_name": value}'
56```
57 
58### Score an experiment
59```bash
60python3 experiment-engine.py score --agent <agent_name> --experiment-id <EXP-ID>
61```
62 
63Statuses: `running` → `trending` → `keep` (winner) or `discard` (loser)
64 
65Winners auto-promote to the playbook. Requires p < 0.05 AND ≥ 15% lift.
66 
67### List experiments
68```bash
69python3 experiment-engine.py list --agent <agent_name> [--status running|trending|keep|discard]
70```
71 
72### Check the playbook
73```bash
74python3 experiment-engine.py playbook --agent <agent_name>
75```
76 
77Always check the playbook before creating new content to apply proven best practices.
78 
79### Suggest next experiments
80```bash
81python3 experiment-engine.py suggest --agent <agent_name>
82```
83 
84### Generate weekly scorecard
85```bash
86python3 autogrowth-weekly-scorecard.py [--weeks N] [--output file.md]
87```
88 
89### Check campaign pacing
90```bash
91python3 pacing-alert.py [--json]
92```
93 
94Exit code 0 = on pace, 1 = alerts present.
95 
96## Workflow
97 
981. Before creating content: `playbook` → apply proven rules
992. When publishing: `log` → record which variant was used and its metrics
1003. Periodically: `score` → check if experiments have reached statistical significance
1014. Weekly: `autogrowth-weekly-scorecard.py` → review all channels
1025. After completing experiments: `suggest` → pick the next variable to test
103 
104## Configuration
105 
106### Required Environment Variables
107 
108| Variable | Description |
109|----------|-------------|
110| `GROWTH_ENGINE_DATA_DIR` | Data directory (default: `./data/experiments`) |
111| `GROWTH_ENGINE_AGENTS` | Comma-separated agent names (default: `content,email,linkedin,seo,blog`) |
112 
113### Optional Tuning
114 
115| Variable | Default | Description |
116|----------|---------|-------------|
117| `HIGH_VOLUME_AGENTS` | `content,email` | Agents needing only 10 samples/variant |
118| `LOW_VOLUME_AGENTS` | `seo,linkedin,blog` | Agents needing 30 samples/variant |
119| `P_WINNER` | `0.05` | p-value threshold for winner |
120| `P_TREND` | `0.10` | p-value threshold for trending |
121| `LIFT_WIN` | `15.0` | Minimum % lift for keep decision |
122| `BOOTSTRAP_ITERATIONS` | `1000` | Bootstrap resamples for CI |
123| `BATCH_MODE_MAX_VARIANTS` | `10` | Max variants in batch mode |
124 
125### Pacing Alert Variables
126 
127| Variable | Description |
128|----------|-------------|
129| `PIPELINE_API_URL` | Pipeline/CRM API endpoint |
130| `PIPELINE_AUTH_TOKEN` | Bearer token for pipeline API |
131| `RECRUITING_API_URL` | Recruiting API endpoint |
132| `RECRUITING_AUTH_TOKEN` | Bearer token for recruiting API |
133| `EMAIL_API_URL` | Email platform API base URL |
134| `EMAIL_AUTH_TOKEN` | Bearer token for email platform |
135| `OUTBOUND_CAMPAIGNS` | JSON: `{"name": "campaign-id"}` |
136| `RECRUITING_CAMPAIGNS` | JSON: `{"name": "campaign-id"}` |
137| `DAILY_LEAD_TARGET` | Leads/day target (default: 10) |
138| `WEEKLY_CANDIDATE_TARGET` | Candidates/week target (default: 400) |
139 
140### Dependencies
141 
142```
143pip install numpy scipy
144```
145 

Discussion