Bold Little Oracle – Automation Plan
Created: April 3, 2026 Goal: Automate 99% of BLO growth operations using the Cambium agent roster Target: 0 to 10K downloads with $0 ad spend Agent roster: Growth Orchestrator, Vega (marketing), Tesla (research), Shade (UX/reviews), Cipher (QA)
Agent Roster Quick Reference
| Agent | Role | Handles |
|---|---|---|
| Growth Orchestrator | Meta-agent | Metrics, opportunity detection, agent spawning, experiment tracking |
| Vega | Marketing/Growth | ASO, social content, conversion optimization, competitor monitoring |
| Tesla | Innovation/Research | Hypotheses, AutoResearch loops, feature ideation, trend detection |
| Shade | UX/Reviews | Review sentiment, UX analysis, onboarding optimization, retention |
| Cipher | QA/Validation | Build verification, screenshot validation, regression detection, store listing audit |
1. Content Automation
1.1 Daily Social Content Pipeline
The 30-day content calendar defines the weekly rhythm. Agents execute it, not improvise it.
Card-of-the-Day Post Generation
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 7 * * * (daily 7am) |
| Agent | Tesla generates card selection + copy, Vega produces final post |
| Output | Platform-ready post: caption, hashtag set, card screenshot(s), CTA |
| Approval | First 7 days: human approval via Discord #blo-growth. Day 8+: auto-post unless format is new |
| Success metric | Posts go out on schedule; engagement rate > 3% |
How it works:
- Tesla picks today’s card using a rotation algorithm across the 72 cards x 2 tones, weighted by: - Theme rotation (Action -> Boundaries -> Self -> Clarity cycle) - Day-of-week format from the content calendar (Monday = theme spotlight, Friday = Sassy Friday, Sunday = weekly pull, etc.) - Cards not yet featured get priority
- Tesla drafts the caption using the content calendar’s format specification for that day
- Vega selects the hashtag set (A, B, or C per calendar rules), writes the CTA based on app status phase (in review / live / conversion push), and assembles the final post package
- Post package is written to
content/posts/YYYY-MM-DD-{platform}.mdwith all metadata - During approval period (days 1-7): post is sent to Discord #blo-growth for human approval with a 4-hour window before scheduled post time
- After approval period: post is auto-queued to the scheduling tool (Buffer, Later, or native scheduling)
Platform-specific rules: - TikTok: video-first, trending sound suggestions included, Set A hashtags for reach - Instagram Reels: same video with platform-specific aspect ratio, Set B hashtags for engagement - Instagram Stories (Tuesdays): poll/quiz slides generated as image assets - Instagram Carousels: Canva template populated with card content
Card rotation tracking:
- content/card-rotation-log.yaml tracks which cards have been featured, on which platform, in which tone
- Tesla checks this before selecting the next card to ensure full deck coverage over ~36 days (72 cards / 2 per day)
1.2 Weekly Email Automation (Beehiiv)
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 8 * * 1 (Monday 8am) |
| Agent | Tesla selects card + writes both tone readings, Vega formats for email |
| Output | Beehiiv draft email with “Card of the Week” in both Gentle and Sassy tones |
| Approval | First 3 emails: human approval. Then auto-send. |
| Success metric | Open rate > 40%, click rate > 5% |
How it works:
- Tesla selects a card that was NOT used in social content that week (to keep email subscribers getting exclusive content)
- Tesla writes a short intro paragraph connecting the card to the week ahead
- Vega formats the email using the Beehiiv template, including: - Card name as heading - Gentle reading (full text) - Sassy reading (full text) - CTA: “Pull your own card” linking to App Store - Footer: social links, unsubscribe
- Email is scheduled for Monday 9am delivery via Beehiiv API
- Growth Orchestrator tracks open rate, click rate, unsubscribe rate after 48 hours
1.3 Content Calendar Execution
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 6 * * * (daily 6am, 1 hour before content generation) |
| Agent | Growth Orchestrator reads calendar, dispatches tasks |
| Output | Task assignments to Vega/Tesla for the day’s content |
| Approval | No – this is internal orchestration |
| Success metric | 100% of calendar items executed on time |
How it works:
- Growth Orchestrator reads
docs/content-calendar-30day.mdand the current date - Identifies today’s required content: platform, format, theme, concept
- Dispatches to Tesla (content ideation) and Vega (asset production) with the day’s spec
- Tracks completion in
content/execution-log.yaml - If a post is missed (agent failure, approval timeout), Growth Orchestrator flags it in the 8pm report and reschedules for next available slot
After Day 30: Growth Orchestrator generates the next 30-day calendar based on: - Performance data from month 1 (which formats performed best) - Remaining un-featured cards - Any new formats Tesla has proposed through AutoResearch
1.4 Approval Workflow
Graduated autonomy model:
| Phase | Timeframe | Rule |
|---|---|---|
| Full approval | Days 1-7 | Every external post goes to Discord #blo-growth for approval |
| Format approval only | Days 8-21 | Known formats auto-post. New formats need approval. |
| Exception-only | Day 22+ | All auto-post. Only flagged items need approval (negative sentiment, risky content, new platform) |
Approval mechanism: - Post preview sent to Discord #blo-growth with reaction buttons - Thumbs up = approved, post queues immediately - Thumbs down = rejected, Vega revises and resubmits - No response within 4 hours = auto-post (after day 7) - No response within 4 hours = hold and flag (days 1-7)
What always needs approval (the hard gates): - First post in any new format never used before - Any post mentioning pricing changes - Responses to controversy or negative PR - Paid promotion or ad spend (even $1)
2. ASO and Store Optimization
2.1 Keyword Monitoring
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 9 * * 1 (weekly Monday 9am) |
| Agent | Vega collects data, Tesla analyzes trends |
| Output | Keyword ranking report posted to Discord #blo-growth |
| Approval | No (monitoring only) |
| Success metric | Keyword positions tracked for 20+ terms, impressions trending up week-over-week |
Tracked keyword categories: - Primary: oracle cards, oracle card app, daily oracle, tarot app - Differentiator: sassy oracle, oracle two tones, honest oracle cards - Adjacent: daily card pull, spiritual guidance app, self reflection app - Competitor brand: (tracked but not targeted in copy)
How it works:
- Vega queries App Store Connect API for impression data by keyword (Search Ads data or third-party ASO tool API)
- Tesla compares this week vs. last week, calculates rank changes
- Report format:
Keyword Report -- Week of [date] UP: "oracle cards" #12 -> #9 (+3) DOWN: "tarot app" #45 -> #52 (-7) NEW: "sassy oracle" -- first appearance at #28 - If any primary keyword drops more than 10 positions, Growth Orchestrator triggers the ASO optimization workflow
2.2 A/B Test Listing Copy
| Attribute | Value |
|---|---|
| Trigger | Bi-weekly (every other Monday), or when keyword monitoring detects a drop |
| Agent | Tesla generates variants, Vega deploys via App Store Connect, Growth Orchestrator measures |
| Output | New listing variant deployed; results after 7 days |
| Approval | Yes – listing changes always need human sign-off |
| Success metric | Conversion rate (impressions to downloads) improves by 5%+ |
What gets tested:
| Element | Rotation cadence | Variants per test |
|---|---|---|
| Subtitle | Bi-weekly | 2 variants |
| Screenshots (order) | Monthly | 2 orderings |
| Description (first 3 lines) | Bi-weekly | 2 variants |
| Promotional text | Weekly (no review needed) | 2 variants |
How it works:
- Tesla generates 2 variant copies based on keyword data and competitor analysis
- Vega formats them for App Store Connect (character limits, formatting rules)
- Package sent to Discord #blo-growth for approval with both variants shown side by side
- Approved variant deployed via App Store Connect API
- Growth Orchestrator measures conversion rate delta after 7 days
- Winner becomes the new baseline; loser informs the next hypothesis
2.3 Competitor Monitoring
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 10 * * 3 (weekly Wednesday 10am) |
| Agent | Tesla researches, Vega assesses competitive impact |
| Output | Competitor update in weekly deep dive report |
| Approval | No (intelligence only; action items go through normal approval) |
| Success metric | No competitor move goes undetected for more than 7 days |
Monitored competitors (top 5 oracle/tarot apps by downloads):
- Track: pricing changes, new features, rating changes, keyword changes, screenshot updates
- Tesla maintains a competitor profile file per app in research/competitors/
- Any significant move triggers a Growth Orchestrator alert + recommended response
How it works:
- Tesla checks each competitor’s App Store listing for changes (description, screenshots, price, version notes)
- Tesla checks their social media for new campaigns or viral content
- Significant changes logged to
research/competitors/changelog.yaml - If a competitor launches a feature BLO doesn’t have, Tesla adds it to the feature ideation backlog with a priority score
- If a competitor drops price, Growth Orchestrator flags for strategic pricing discussion (human decision)
2.4 Review Monitoring and Response
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 10 * * * (daily 10am) |
| Agent | Shade |
| Output | Review summary + draft responses in Discord #blo-growth |
| Approval | Positive reviews (4-5 stars): auto-respond after day 14. Negative reviews (1-3 stars): always human approval. |
| Success metric | All reviews responded to within 24 hours; average rating stays above 4.5 |
How it works:
- Shade pulls new reviews from App Store Connect API
- Each review is classified:
- Positive (4-5 stars): Draft a brief, genuine thank-you response. Reference something specific from their review.
- Constructive (3 stars): Draft a response acknowledging the feedback, mentioning if it’s on the roadmap.
- Negative (1-2 stars): Draft a response, flag in Discord with the label
NEEDS-HUMAN, include sentiment analysis and suggested action. - Bug report in review: Flag for Cipher to investigate. Draft response promising a fix timeline. - Shade also extracts recurring themes from reviews and logs them to
research/review-themes.yaml - If 3+ reviews mention the same issue in a 7-day window, Growth Orchestrator creates a priority issue
Response tone guidelines (Shade follows these): - Never defensive, never corporate - Match the user’s energy – casual reviewer gets casual response, detailed reviewer gets detailed response - Always mention something specific from their review (no canned responses) - If they mention the Sassy tone positively, lean into it slightly in the response
3. Growth Experiments
3.1 AutoResearch Loops
| Attribute | Value |
|---|---|
| Trigger | On-demand (Growth Orchestrator spawns when opportunity detected) or weekly |
| Agent | Tesla generates hypothesis, Vega executes, Growth Orchestrator measures |
| Output | Experiment log entry with hypothesis, method, result, decision |
| Approval | No for internal experiments. Yes if the experiment changes external-facing content. |
| Success metric | 2+ experiments running at all times; 30%+ produce actionable wins |
The AutoResearch cycle:
1. HYPOTHESIZE (Tesla)
"If we post card-of-the-day content at 7pm instead of 10am,
engagement will increase by 15% because our audience is most
active in the evening."
2. DESIGN (Tesla)
Method: A/B by day. Mon/Wed/Fri = 10am, Tue/Thu = 7pm.
Duration: 2 weeks. Metric: engagement rate per post.
Minimum sample: 5 posts per time slot.
3. EXECUTE (Vega)
Adjust posting schedule for the test period.
Ensure content quality is comparable across both groups.
4. MEASURE (Growth Orchestrator)
After 2 weeks, compare engagement rates.
Statistical significance check (is the sample large enough?).
5. DECIDE (Growth Orchestrator)
Keep: adopt the winning variant permanently.
Discard: revert and log the learning.
Iterate: refine the hypothesis and run again.
6. LOG (Growth Orchestrator)
Write to research/experiments/YYYY-MM-DD-{name}.yaml
Include: hypothesis, method, data, result, decision, learnings.
Experiment categories (Tesla draws from these): - Posting time optimization - Caption length (short punchy vs. storytelling) - Hashtag set performance - CTA wording variants - Card theme engagement (which of the 4 themes resonates most) - Gentle vs. Sassy ratio in posts - Video length (15s vs. 30s vs. 45s) - Thumbnail/cover image styles
3.2 Pricing Experiments
| Attribute | Value |
|---|---|
| Trigger | Growth Orchestrator proposes when conversion data is sufficient (500+ impressions with current price) |
| Agent | Tesla designs experiment, Growth Orchestrator measures |
| Output | Pricing recommendation with data |
| Approval | Always human approval – pricing is a strategic decision |
| Success metric | Revenue per 1000 impressions (RPM) increases |
Pricing test plan:
| Phase | Price | Duration | Minimum sample |
|---|---|---|---|
| Baseline | EUR 4.99 | Weeks 1-4 | 500 impressions |
| Test A | EUR 6.99 | Weeks 5-6 | 500 impressions |
| Test B | EUR 3.99 | Weeks 7-8 | 500 impressions |
| Decision | Winner | Week 9+ | Based on RPM |
How it works:
- Tesla proposes the test when baseline data is sufficient
- Growth Orchestrator sends pricing change proposal to Discord #blo-growth with projected impact
- Human approves or modifies
- Price changed via App Store Connect
- Growth Orchestrator tracks conversion rate and revenue daily during test
- After minimum sample reached, Growth Orchestrator calculates RPM for each price point
- Recommendation posted to Discord with full data table
What we’re optimizing: Revenue per 1000 impressions (RPM), not just conversion rate. A lower price might convert better but earn less per impression.
3.3 Referral Program Optimization
| Attribute | Value |
|---|---|
| Trigger | Phase 2 (weeks 5-8), when there’s a user base to refer from |
| Agent | Tesla designs mechanics, Vega promotes, Growth Orchestrator tracks |
| Output | Referral performance dashboard in weekly report |
| Approval | Yes for any incentive that costs money |
| Success metric | 10%+ of new downloads come from referrals |
Referral mechanics to test: 1. Share a card reading (screenshot with App Store link) – frictionless, no incentive needed 2. “Pull a card for a friend” – in-app feature that generates a shareable card image 3. Unlock a bonus card for referring 3 friends (requires app code change – flag for human)
Tesla generates hypotheses about which mechanic will work best. Vega creates the social prompts (“share your card pull”). Growth Orchestrator tracks referral-attributed downloads via campaign links.
3.4 Content A/B Testing
| Attribute | Value |
|---|---|
| Trigger | Continuous – every post is a data point |
| Agent | Vega tracks, Tesla analyzes weekly |
| Output | Content performance ranking in weekly report |
| Approval | No |
| Success metric | Top-performing format identified and doubled down on by week 3 |
Dimensions tracked per post:
| Dimension | Values |
|---|---|
| Format | Reel, carousel, story, static image, talking head |
| Tone emphasis | Gentle-led, Sassy-led, balanced |
| Theme | Action, Boundaries, Self, Clarity |
| CTA type | Link in bio, comment prompt, share prompt, save prompt |
| Post time | Morning (7-9am), midday (12-2pm), evening (6-8pm), night (8-10pm) |
| Caption length | Short (<50 words), medium (50-100), long (100+) |
Weekly analysis (Tesla): - Rank all posts by engagement rate - Identify which dimension values correlate with top performance - Recommend next week’s content mix based on findings - Flag any format that consistently underperforms for elimination
4. Metrics and Reporting
4.1 Daily Metrics Collection
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 19 * * * (daily 7pm, 1 hour before report) |
| Agent | Growth Orchestrator |
| Output | metrics/daily/YYYY-MM-DD.yaml |
| Approval | No |
| Success metric | Zero missed collection days |
Data sources and metrics:
| Source | Metrics | Collection method |
|---|---|---|
| App Store Connect API | Downloads, impressions, conversion rate, proceeds, crashes | API call |
| App Store Connect API | Ratings count, average rating, new reviews | API call |
| Beehiiv API | Subscribers, open rate, click rate, unsubscribes | API call |
| TikTok Business API | Views, likes, comments, shares, profile visits, follower count | API call |
| Instagram Graph API | Reach, impressions, engagement, profile visits, follower count | API call |
| Cloudflare Analytics API | Website visits, unique visitors, page views, country breakdown | API call |
| In-app analytics (if implemented) | DAU, session length, cards pulled, tone preference, theme preference | Supabase or on-device aggregate |
Daily metrics file format:
date: 2026-04-15
app_store:
downloads: 47
impressions: 1230
conversion_rate: 0.038
proceeds_eur: 14.97
rating_average: 4.7
rating_count: 23
new_reviews: 2
social:
tiktok:
views: 3400
followers: 892
new_followers: 34
instagram:
reach: 2100
followers: 645
new_followers: 21
email:
subscribers: 312
open_rate: 0.43
website:
visits: 187
unique_visitors: 156
4.2 Daily Discord Report
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 20 * * * (daily 8pm) |
| Agent | Growth Orchestrator |
| Output | Discord message in #blo-growth (channel ID: 1489571455799791696) |
| Approval | No |
| Success metric | Report posted every day; contains actionable insights, not just numbers |
Report format:
BLO Daily Report -- April 15, 2026
DOWNLOADS: 47 today (312 total) -- target: 2000 by week 4
REVENUE: EUR 14.97 today (EUR 89.82 total)
RATING: 4.7 (23 ratings) -- target: 4.5
SOCIAL
TikTok: 3,400 views | +34 followers (892 total)
Instagram: 2,100 reach | +21 followers (645 total)
Top post: "Sassy Friday #2" -- 1,200 views, 89 saves
EMAIL: 312 subscribers | 43% open rate
SIGNALS
Positive: Save rate up 15% this week -- Sassy content driving saves
Watch: Conversion rate dipped to 3.8% -- below 4% target
Action: Vega testing new screenshot order tomorrow
EXPERIMENTS RUNNING
1. Post time test (7pm vs 10am) -- day 4 of 14
2. Caption length test -- day 2 of 7
4.3 Weekly Deep Dive
| Attribute | Value |
|---|---|
| Trigger | Cron: 0 20 * * 6 (Saturday 8pm, replaces daily report) |
| Agent | Growth Orchestrator compiles, Tesla analyzes trends |
| Output | Discord thread in #blo-growth with full analysis |
| Approval | No |
| Success metric | Identifies at least 1 actionable opportunity per week |
Weekly report sections:
- Week summary – downloads, revenue, rating, social growth (with week-over-week deltas)
- Funnel analysis – impressions -> page views -> downloads -> premium conversion, with conversion rates at each step
- Content performance – every post ranked by engagement, with top 3 and bottom 3 called out
- Keyword movement – ASO keyword ranking changes
- Review digest – new reviews, sentiment trend, recurring themes
- Competitor moves – anything notable from the competitive landscape
- Experiment results – any experiments that concluded this week, with data and decisions
- Recommendations – Tesla’s top 3 suggested actions for next week, ranked by expected impact
- Goal tracker – progress toward Phase 1 goals (2000 downloads, 200 DAU, 4.5 rating, 50 reviews)
4.4 Alert Triggers
| Attribute | Value |
|---|---|
| Trigger | Event-driven (checked during daily metrics collection) |
| Agent | Growth Orchestrator detects, dispatches to relevant specialist |
| Output | Immediate Discord alert with severity and recommended action |
| Approval | No for alerts. Yes for any remediation that changes external content. |
| Success metric | Alert fires within 24 hours of threshold breach; remediation action within 48 hours |
Alert definitions:
| Alert | Condition | Severity | Auto-action |
|---|---|---|---|
| Rating drop | Average rating drops below 4.0 | Critical | Shade analyzes recent reviews, drafts action plan |
| Download cliff | Downloads drop 20%+ vs 7-day average | High | Tesla investigates (ASO change? Competitor? Seasonal?) |
| Negative review spike | 3+ reviews under 3 stars in 24 hours | High | Shade priority-reviews all, flags common theme |
| Conversion drop | Store conversion rate drops below 3% | Medium | Vega audits current listing, proposes changes |
| Social engagement drop | Engagement rate drops below 2% for 3 consecutive posts | Medium | Tesla analyzes what changed, Vega adjusts content |
| Build failure | EAS build fails | High | Cipher investigates, posts diagnostic to Discord #app |
| Website down | Cloudflare Pages returns non-200 | Critical | Cipher checks deploy, alerts human immediately |
| Email bounce spike | Beehiiv bounce rate exceeds 5% | Medium | Growth Orchestrator flags for list hygiene |
5. Infrastructure
5.1 Cloudflare Pages Auto-Deploy
| Attribute | Value |
|---|---|
| Trigger | Push to main branch of bold-little-oracle repo |
| Agent | Cipher (post-deploy verification) |
| Output | Deploy confirmation + screenshot validation |
| Approval | No (CI/CD is automatic) |
| Success metric | Zero broken deploys reaching production |
How it works:
- GitHub Actions workflow triggers on push to main
- Builds static site and deploys to Cloudflare Pages (project:
bold-little-oracle, account:bc0c90d4bc8c0d8b4b247f42c57aa65b) - Cipher runs post-deploy checks:
- HTTP 200 on
boldlittleoracle.unicorn.land- Screenshot comparison vs. previous deploy (visual regression) - All critical links working (App Store link, social links) - If any check fails, Cipher posts to Discord #app with the failure details
5.2 EAS Build Automation
| Attribute | Value |
|---|---|
| Trigger | Push to main branch with changes in app source code |
| Agent | Cipher (build monitoring) |
| Output | Build status posted to Discord #app |
| Approval | No for builds. Yes for App Store submissions. |
| Success metric | Builds succeed on first attempt 90%+ of the time |
How it works:
- GitHub Actions detects code changes in the app directory
- Triggers EAS Build for iOS and Android
- Cipher monitors the build queue
- On success: posts build artifact links to Discord #app
- On failure: Cipher reads build logs, identifies the error, posts diagnostic with suggested fix
- App Store submission is always a manual human action (too high-stakes to automate)
5.3 Beehiiv Integration
| Attribute | Value |
|---|---|
| Trigger | Daily (subscriber count in daily metrics), weekly (email performance in weekly report) |
| Agent | Growth Orchestrator (data collection), Vega (content scheduling) |
| Output | Subscriber metrics in daily report; email drafts for weekly sends |
| Approval | No for metrics. Yes for first 3 email sends, then auto. |
| Success metric | Subscriber growth 10%+ week-over-week in Phase 1 |
API integration points:
- GET /publications/{id}/subscriptions – subscriber count and growth
- GET /publications/{id}/posts/{id}/stats – open rate, click rate, per-email metrics
- POST /publications/{id}/posts – create draft email (Vega uses this for Card of the Week)
- POST /publications/{id}/posts/{id}/publish – schedule email for send
5.4 App Store Connect API
| Attribute | Value |
|---|---|
| Trigger | Daily at 7pm (metrics collection) |
| Agent | Growth Orchestrator |
| Output | Download, revenue, and rating data in daily metrics file |
| Approval | No |
| Success metric | Data collected every day without gaps |
API integration points: - Sales and Trends API: downloads, proceeds, units by source type - Ratings and Reviews API: new reviews, rating distribution, average rating - App Analytics API: impressions, product page views, conversion rate, sessions - App metadata API (for ASO changes): update subtitle, promotional text, keywords
Authentication: App Store Connect API key (JWT). Stored as a Cambium secret, never in repo.
6. What Stays Human (the 1%)
These items are explicitly excluded from automation. The agents will surface information and recommendations, but a human makes the call.
| Decision | Why it stays human |
|---|---|
| First social post in any new format | Brand voice calibration – agents learn from human feedback on early posts |
| App Store and Google Play account management | Account-level actions (submission, banking, tax) carry legal weight |
| Complex support emails | Edge cases need empathy and judgment that agents shouldn’t fake |
| Strategic pricing decisions | Pricing communicates brand value; requires business context beyond metrics |
| New feature prioritization | Product roadmap is a creative and strategic decision |
| Paid advertising (if ever) | Any spend requires human budget approval |
| Legal or PR issues | DMCA, trademark, controversy – humans only |
| App Store submission | Submitting a new build for review is high-stakes, low-frequency |
| Responding to influencer DMs | Relationship-building needs a real person |
| Beehiiv account/billing changes | Account-level admin stays human |
How agents request human input:
1. Post to Discord #blo-growth with the NEEDS-HUMAN label
2. Include: what they need decided, their recommendation, the data behind it, and a deadline
3. If no response within 24 hours, post a reminder
4. If no response within 48 hours, use the conservative default (don’t post, don’t change, don’t spend)
7. Implementation Phases
Week 1: Content Engine + Daily Reports
Goal: Social content flows automatically; daily metrics are visible.
| Day | Task | Owner | Done when |
|---|---|---|---|
| Mon | Set up metrics/daily/ directory structure and YAML schema |
Growth Orchestrator | First metrics file written |
| Mon | Connect App Store Connect API (JWT auth, test endpoint) | Cipher | Downloads data returned successfully |
| Mon | Connect Beehiiv API (API key, test subscriber count endpoint) | Cipher | Subscriber count returned |
| Tue | Build card rotation algorithm and card-rotation-log.yaml |
Tesla | Algorithm selects appropriate cards per content calendar rules |
| Tue | Wire up daily social content pipeline (Tesla -> Vega -> Discord approval) | Vega + Tesla | First post package appears in Discord for approval |
| Wed | Set up daily metrics collection cron job (7pm) | Growth Orchestrator | First daily metrics file written at 7pm |
| Wed | Set up daily Discord report cron job (8pm) | Growth Orchestrator | First report posted to #blo-growth at 8pm |
| Thu | Generate first 7 days of social posts in batch | Tesla + Vega | 7 post packages ready in content/posts/ |
| Fri | Human reviews and approves first batch of posts | Human | First posts scheduled for posting |
| Sat | Build weekly email template for Beehiiv Card of the Week | Vega | Template ready, first email drafted |
| Sun | First Sunday Card Pull auto-generated and posted (with approval) | Tesla + Vega | Post goes live |
Week 1 success criteria: - Daily Discord report posting reliably at 8pm - First 5+ social posts published with approval workflow working - Metrics collection running without gaps - Card rotation log tracking which cards have been featured
Week 2: ASO + Review Pipeline
Goal: App Store optimization is monitored; reviews are handled.
| Day | Task | Owner | Done when |
|---|---|---|---|
| Mon | Set up keyword tracking list (20 terms) and first baseline report | Vega | Keyword report posted to Discord |
| Mon | Connect App Store Connect Reviews API | Shade | New reviews fetched successfully |
| Tue | Build review classification pipeline (positive/constructive/negative) | Shade | Sample reviews classified correctly |
| Tue | Create competitor profile files for top 5 competitors | Tesla | research/competitors/ populated |
| Wed | Set up review response draft pipeline (Shade -> Discord approval) | Shade | First review response drafted and posted for approval |
| Thu | Run first competitor scan | Tesla | Competitor changelog has baseline entries |
| Fri | Generate first A/B test proposal for listing copy | Tesla + Vega | Proposal in Discord for human review |
| Sat | Weekly deep dive report runs for the first time | Growth Orchestrator + Tesla | Full weekly report in Discord #blo-growth |
Week 2 success criteria: - All new reviews detected within 24 hours - Response drafts posted to Discord for every review - First keyword ranking report delivered - Competitor baseline established
Week 3: Growth Experiments + AutoResearch
Goal: Experiment infrastructure running; first experiments producing data.
| Day | Task | Owner | Done when |
|---|---|---|---|
| Mon | Build experiment log structure (research/experiments/) |
Growth Orchestrator | Directory and schema ready |
| Mon | Tesla generates first 3 experiment hypotheses | Tesla | Hypotheses posted to Discord for review |
| Tue | Launch experiment #1: post time optimization | Vega | Posting schedule adjusted per experiment design |
| Wed | Launch experiment #2: caption length test | Vega | Two caption styles in rotation |
| Thu | Build content performance tracking (per-post metrics by dimension) | Growth Orchestrator | First content performance ranking generated |
| Fri | Review first week of social data – which formats are winning? | Tesla | Analysis posted to Discord with recommendations |
| Sat | Generate next 30-day content calendar based on Week 1-3 performance | Tesla + Vega | Draft calendar in Discord for review |
Week 3 success criteria: - 2 experiments actively running with data being collected - Content performance ranking identifies clear winners - AutoResearch loop has completed at least 1 full cycle (hypothesis -> execute -> measure -> decide) - Next month’s content calendar drafted
Week 4: Full Autonomous Operation
Goal: All systems running. Human involvement is approval gates only.
| Day | Task | Owner | Done when |
|---|---|---|---|
| Mon | Graduate social content to format-approval-only mode | Growth Orchestrator | Known formats auto-post without approval |
| Mon | Graduate positive review responses to auto-send | Shade | 4-5 star review responses go out without human review |
| Tue | Launch pricing experiment if sample size sufficient | Tesla + Growth Orchestrator | Pricing test proposal sent for human approval |
| Wed | All alert triggers tested with synthetic data | Cipher | Each alert fires correctly when conditions met |
| Thu | Full system health check – all cron jobs running, all APIs connected | Cipher | Health report posted to Discord |
| Fri | Growth Orchestrator generates Phase 1 goal progress report | Growth Orchestrator | Progress toward 2000 downloads, 200 DAU, 4.5 rating, 50 reviews |
| Sat | Human reviews the full autonomous system and adjusts approval gates | Human | Approval gate config updated in Cambium deployment |
Week 4 success criteria: - Social content posting daily without human intervention (except new formats) - Reviews responded to within 24 hours (positive auto, negative human-approved) - Daily and weekly reports posting reliably - Experiments running and producing decisions - All alerts configured and tested - Human involvement is under 15 minutes per day
Appendix A: File Structure
bold-little-oracle/
docs/
automation-plan.md # This document
content-calendar-30day.md # Month 1 content calendar
email-welcome-sequence.md # Beehiiv welcome series
marketing-assets.md # Outreach templates, Product Hunt draft
content/
posts/ # Generated social posts (YYYY-MM-DD-{platform}.md)
card-rotation-log.yaml # Which cards have been featured where
execution-log.yaml # Content calendar execution tracking
metrics/
daily/ # Daily metrics files (YYYY-MM-DD.yaml)
weekly/ # Weekly deep dive reports
research/
competitors/ # Competitor profile files
experiments/ # Experiment logs (YYYY-MM-DD-{name}.yaml)
review-themes.yaml # Recurring review themes
Appendix B: Cron Schedule Summary
| Time | Job | Agent | Frequency |
|---|---|---|---|
| 06:00 | Content calendar dispatch | Growth Orchestrator | Daily |
| 07:00 | Social content generation | Tesla + Vega | Daily |
| 08:00 | Growth Orchestrator daily check | Growth Orchestrator | Daily |
| 08:00 | Weekly email draft (Monday) | Tesla + Vega | Weekly Mon |
| 09:00 | ASO keyword monitoring (Monday) | Vega + Tesla | Weekly Mon |
| 10:00 | Review monitoring | Shade | Daily |
| 10:00 | Competitor scan (Wednesday) | Tesla | Weekly Wed |
| 19:00 | Daily metrics collection | Growth Orchestrator | Daily |
| 20:00 | Daily Discord report | Growth Orchestrator | Daily |
| 20:00 | Weekly deep dive (Saturday) | Growth Orchestrator + Tesla | Weekly Sat |
Appendix C: API Keys and Secrets Required
All stored as Cambium deployment secrets, never committed to the repository.
| Secret | Purpose | Where to get it |
|---|---|---|
ASC_API_KEY |
App Store Connect API (JWT key) | App Store Connect > Users and Access > Keys |
ASC_KEY_ID |
App Store Connect Key ID | Same as above |
ASC_ISSUER_ID |
App Store Connect Issuer ID | Same as above |
BEEHIIV_API_KEY |
Beehiiv email API | Beehiiv > Settings > API |
BEEHIIV_PUBLICATION_ID |
Beehiiv publication identifier | Beehiiv > Settings > API |
TIKTOK_ACCESS_TOKEN |
TikTok Business API | TikTok for Developers |
INSTAGRAM_ACCESS_TOKEN |
Instagram Graph API | Meta for Developers |
CLOUDFLARE_API_TOKEN |
Cloudflare Pages deploy + analytics | Cloudflare dashboard > API Tokens |
DISCORD_BOT_TOKEN |
Discord bot for reports and approvals | Already configured in Cambium |
DISCORD_CHANNEL_BLO_GROWTH |
Discord channel ID for #blo-growth | 1489571455799791696 (from config.yaml) |
DISCORD_CHANNEL_APP |
Discord channel ID for #app | 1469713224017641585 (from config.yaml) |