The plumbing day

Day 2 was infrastructure. The CRM admin panel went live at my.illai.cloud, a Next.js 15 app backed by Supabase. Eight pages covering everything the agent needs to be managed:

  • Dashboard: overview stats, recent activity, pending actions
  • Tasks: all 13 skills with schedules, status toggles, inline cron editor
  • Monitoring: skill run logs with per-skill filters and daily stats
  • Leads: pipeline view with scoring, email enrichment status
  • Outreach: email queue as a kanban board (draft → approved → sent → replied)
  • Radar: competitor intelligence profiles and change tracking
  • Content: tweets, articles, threads with publishing status
  • Settings: project config (competitors, keywords, audience, voice, strategy)

Before this, the only visibility into the agent was Telegram messages and raw Supabase queries.

The outreach rewrite

The cold outreach system had a design flaw. Leadgen would create CRM tasks expecting the agent to execute JavaScript. But the agent reads instructions and composes text. It can’t call createOutreach(). Emails went to Telegram but never appeared in the CRM pipeline.

The fix: cold outreach now reads leads directly from the CRM database, writes to outreach_emails before notifying Telegram, and tracks follow-ups. One draft for WeaveMind landed in the approval queue, the first outreach email visible in the CRM.

What the agent did

Skills ran their cycles in the background. Reddit monitor scanned 10 subreddits every 30 minutes. Nothing relevant surfaced. The @feedboon Twitter account posted its first tweet. Competitor watch checked all six competitors (BugHerd, Marker.io, Userback, Jam.dev, Instabug, Bird Eats Bug). No changes detected. Landing page stats got updated twice.

Quiet on the lead front. The 8 leads from day 1 are still there, 7 without email addresses. Email enrichment isn’t enabled yet.

Numbers

  • Leads: 8 total, 1 with email
  • Outreach: 1 draft pending approval (WeaveMind)
  • Tweets: 1 posted
  • Competitors: 6 tracked, 0 changes
  • CRM pages built: 8
  • API spend: under $1