Generated Mar 11, 2026. All times ET. Comprehensive inventory of every cron, launchd agent, n8n workflow, and orchestrator step.
Everything stopped producing data after ~Feb 27. The launchd agents are loaded but failing (missing env vars, broken paths). All n8n workflows show active=false. The morning orchestrator was never scheduled after being written.
| Step | Script | What It Does | Last Output | Status |
| 1. Pharma Intel Scan |
pharma_intel_scan.py |
Scans news/web for pharma industry moves, FDA approvals, competitor activity. Feeds into briefing. |
Unknown |
Dead |
| 2. Copper Snapshot |
copper_analytics/snapshot_daily.py |
Pulls all open opportunities, pipeline stages, and deal values from Copper CRM. Creates daily snapshot for trend tracking. |
Feb 27 |
Dead |
| 3. Copper Activities |
copper_analytics/fetch_activities.py |
Fetches latest activity (notes, emails, updates) per deal. Identifies stale deals with no recent touch. |
Feb 27 |
Dead |
| 4. Copper Contact Audit |
copper_analytics/fetch_contact_audit.py |
Classifies contacts on open deals as decision-maker/influencer/other. Flags deals with no DM engaged. |
Feb 27 |
Dead |
| 5. Gong Snapshot |
gong_snapshot_daily.py |
Fetches yesterday's Gong calls: summaries, participants, action items, call grades. Powers "flagged calls" section of briefing. |
Feb 27 |
Dead |
| 6. QMD Reindex |
qmd update && qmd embed |
Re-indexes the knowledge base and generates fresh embeddings for semantic search. |
Ongoing (separate) |
Separate |
| 7. Morning Enrichment |
chief_of_staff.py --morning |
AI-powered prep: researches today's calendar meetings, pulls context on attendees, prepares talking points and strategic angles. |
Feb 25 |
Dead |
| 8. HTML Briefing |
build_html_briefing.py |
Compiles all data into a visual HTML dashboard: deal movements, pipeline changes, stale deals, call summaries. |
Feb 27 |
Dead |
| 9. Text Briefing |
build_daily_briefing.py |
Same data as HTML but formatted for inline Telegram delivery. The "morning briefing" message. |
Feb 27 |
Dead |
| 10. QA Check |
qa_dashboard_check.py |
Validates briefing outputs: checks for empty sections, stale data, missing fields. Catches pipeline failures before delivery. |
Unknown |
Dead |
| # | Workflow | Schedule | What It Does | Status |
| 02 |
Delta Sync |
Every 4 hours |
Gmail inbox delta sync. Fetches new emails since last checkpoint, indexes into knowledge base for search. |
Inactive |
| 03 |
QMD Update |
6:55 AM Mon-Fri |
Runs qmd update && qmd embed to refresh knowledge base index before morning briefing. |
Inactive |
| 04 |
Morning Briefing |
7:00 AM Mon-Fri |
Orchestrates the full morning pipeline and delivers briefing to Telegram. Parallel to morning_orchestrator.py. |
Inactive |
| 05 |
Chief of Staff Hourly |
Every hour 8AM-10PM Mon-Fri |
Quick state review: checks for urgent emails, deal changes, overdue commitments. Spawns small autonomous tasks. |
Inactive |
| 06 |
Chief of Staff Nightly |
11 PM Sun-Thu |
Deep prep for tomorrow: researches calendar meetings, chases commitments, reviews deal pipeline, generates strategic prep. |
Inactive |
| 07 |
Email Radar |
9 AM, 1 PM, 5 PM Mon-Fri |
Scans Gmail for unanswered emails from important contacts (pharma execs, partners). Ranks by urgency, sends Telegram alert. |
Inactive |
| 08 |
Commitment Tracker Digest |
7:20 AM Mon-Fri |
Extracts commitments from recent emails/calls, tracks follow-through, sends digest of overdue items. |
Inactive |
| 09 |
Doer-Checker Orchestrator |
Every 15 min |
Polls task queue, dispatches work to sub-agents, monitors completion, retries failures. The autonomous work engine. |
Inactive |
| Agent | Schedule | What It Does | Current State | Status |
Dashboard Refresh
com.ada.dashboard-refresh |
Every 5 min |
SSHs to Mac B, queries task_queue postgres, generates HTML dashboard, deploys to Cloudflare Pages. |
Loaded but failing: env: node: No such file or directory |
Broken |
QMD Backup
com.clawd.backup-qmd |
Every 4 hours (midnight, 4, 8, 12, 16, 20) |
Backs up the 29GB QMD SQLite database. Safety net for knowledge base. |
Loaded but failing: cannot open backup file (disk space or permissions) |
Broken |
X/Twitter Daily Ingest
com.clawd.ingest-x-daily |
Daily 7 AM ET |
Fetches recent tweets from pharma execs and healthcare accounts via X API v2. Indexes into QMD. |
Loaded, exit code 1. Empty log file. |
Failing |
LinkedIn via Exa
com.clawd.ingest-linkedin-exa |
Daily 6 AM ET |
Searches for LinkedIn posts from target pharma execs using Exa neural search. Indexes into QMD. |
Loaded, exit code 1: EXA_API_KEY not set |
Broken (env) |
YouTube Channel Ingest
com.clawd.ingest-youtube-channel |
Weekly Sat 8 AM ET |
Fetches new episodes from pharma podcast YouTube channels, extracts transcripts via yt-dlp, indexes into QMD. |
Loaded, exit code 1. Empty log. |
Failing |
CMS Formulary Ingest
com.clawd.ingest-cms-formulary |
Monthly (1st, midnight) |
Downloads CMS Medicare Part D formulary data. Used for drug coverage analysis in Patient Finder context. |
Loaded, exit code 0 last run. No recent log content visible. |
Unclear |
CMS Chronic Conditions
com.clawd.ingest-cms-chronic |
Monthly (1st, 12:20 AM) |
Downloads CMS chronic condition prevalence data. Used for disease burden analysis. |
Loaded, exit code 0 last run. |
Unclear |
HCUPnet Ingest
com.clawd.ingest-hcupnet |
Monthly (1st, 12:10 AM) |
Downloads hospital utilization data from AHRQ HCUPnet. Used for healthcare utilization context. |
Loaded, exit code 0 last run. |
Unclear |
| Service | What It Does | Status |
Cloudflare Tunnel
com.littlemind.cloudflared |
Persistent tunnel exposing local services to the internet (dashboards, webhooks, etc.) |
Running (PID 693) |
LittleMind NextJS
com.littlemind.nextjs |
Kids AI app (personal project). Runs on port 3000. |
Running (PID 673) |
Objection Coach
com.littlemind.objection-coach |
Real-time sales call objection coaching app with Deepgram + OpenAI. Port 3847. |
Running (PID 696) |
Voice Clone Web
com.littlemind.voice-clone |
Voice cloning web interface (personal/experimental). |
Running (PID 682) |
War Room Live
com.littlemind.warroom |
Live deal war room dashboard. |
Running (PID 686) |
QMD MCP Server
com.qmd.mcp |
QMD semantic search exposed as MCP server. |
Running (PID 684) |
OpenClaw Gateway
ai.openclaw.gateway |
The OpenClaw agent gateway itself. |
Running |
| Script | What It Does | Notes |
gong_api_fetch.py |
Fetches Gong call data via API (auth with base64 creds) |
Used by gong_snapshot_daily.py and on-demand |
gong_transcript_fetcher.py |
Pulls full call transcripts from Gong for deep analysis |
On-demand |
gong_objection_pipeline.py |
Analyzes Gong calls for sales objections, builds objection library |
On-demand research tool |
plaud_auto_fetch.py |
Browser automation to download Plaud recordings |
Was never cron'd |
plaud_email_monitor.py |
Polls Gmail for Plaud transcript emails, extracts and processes |
Designed to be cron'd but never was |
plaud_processor.py |
Processes raw Plaud transcripts into structured meeting notes |
On-demand |
extract_commitments.py |
Scans Gmail for commitment language ("I will", "we'll send", etc.) |
Feeds commitment tracker |
todoist_manager.py |
Todoist API wrapper: add/list/complete tasks, morning summary |
CLI tool, not scheduled |
meeting_prebrief.py |
Generates pre-meeting briefs with attendee research and context |
Called by chief_of_staff.py |
strategic_prebrief.py |
Deep strategic prep for important meetings (competitor intel, deal history) |
Called by chief_of_staff.py |
contextual_prefetch.py |
Extracts entity mentions from text and pre-loads relevant QMD context |
Helper utility |
email_radar.py |
Identifies unanswered emails from important contacts ranked by urgency |
Called via n8n workflow 07 |
build_research_briefs.py |
Compiles research briefs for target companies/contacts |
On-demand |
clinicaltrials_fetcher.py |
Searches ClinicalTrials.gov for relevant trials by drug/condition |
On-demand research |
| Date | What Happened |
| ~Feb 18 | LaunchD agents created for data ingest (X, LinkedIn, YouTube, CMS, HCUPnet, QMD backup) |
| ~Feb 22-24 | LittleMind services set up (objection coach, voice clone, war room) |
| Feb 27 | Last day any pipeline data was produced. Copper snapshots, Gong snapshots, and briefings all stop after this date. |
| ~Feb 28+ | Something broke the pipeline (likely n8n deactivation or environment change). No morning briefings since. |
| Mar 10 | Dashboard refresh started failing: node: No such file or directory |
| Mar 11 | QMD backup failing: cannot open backup file (29GB DB, likely disk space) |
| Mar 11 | LinkedIn ingest failing: EXA_API_KEY not set |
Decision needed: What to keep?
Review each section above. For each job, decide: Keep, Kill, or Rethink.
The always-on services (Section D) are separate from the data pipeline. The core question is: which of the daily/hourly data fetches and briefings actually added value?