The Big Picture
This is a largely autonomous system. It discovers events, monitors its own health, and fixes many of its own bugs β every day, with minimal human intervention. The Observatory exists to give transparency into this process so people can see how an autonomous AI system actually works. This isn't a black box.
How It Works
The whole system, end to end β it runs largely on its own, with a human reviewing only the riskiest changes.
Discovery Pipeline
β runs nightlyOpus reviews recent results and decides what to scrape and search today
Scans a dozen curated sources and the web for Austin AI events
Catches the same event listed on different platforms
AI confirms: real event? In Austin? AI-related?
Tags audience, skill level, and free/paid
Approved events appear on the calendar
Self-Monitoring
β evaluates every runCollects data on scraper health, error rates, source performance, and calendar coverage
The most powerful Claude model reviews everything, assigns a health grade, and identifies issues
Creates search queries, manages sources, and escalates code issues for the repair agent
Self-Healing
β runs daily, 2 hours after discoveryPicks up the highest-priority action item from the monitor
Diagnoses the root cause β fetching the live web page through a supervised relay, since the agent deliberately has no direct internet access
Reads the codebase, understands the bug, and writes a fix
Runs the full test suite, then tests the fix on a draft branch against the real live page β a fix that fails the rehearsal never touches production
Ships proven low-risk fixes to production automatically; flags riskier changes for a human to review first
The Independent Watchdog
A separate watchdogβ its own program, running outside this system on its own schedule β independently counts how many Austin AI events exist and compares that to how many the calendar has captured. Because it lives outside the agent, the system can't grade its own homework: if coverage quietly slips, the watchdog is the thing that catches it.
Multi-Model Architecture
Three Claude AI models split the work based on what each task needs β like having a junior analyst, a senior reviewer, and a strategic director on the same team.
Handles 80% of decisions β validation, classification, dedup
Evaluates new sources and extracts event details
The system brain β plans each run and monitors system health
Community Input
Anyone can submit an event the system missed using the βMissing an event?β button on the calendar. The agent scrapes the submitted URL, validates it, and adds it to the calendar β all in the same daily run. It also learns from each submission, adding new sources and search strategies to find similar events in the future.
Where It Goes
Each morning, Claude summarizes the overnight run β what it found, what broke, and what it cost β and emails it to the operator. It's how a human keeps an eye on the system without having to run it.
Every Sunday evening, anyone who's subscribed gets the week ahead in Austin AI events delivered straight to their inbox.
Agent Performance
What the agent is doing autonomously
Events Added (Last 30 Days)
Recent Activity
Under the Hood
How the agent thinks, decides, and sometimes fails
Health Report
Automated self-evaluation of system effectiveness
| Grade | Scraper Health | Sources | Error Rate | Activity |
|---|---|---|---|---|
| A | 80%+ | 4+ contributing | <5% | Events added in last 7d |
| B | 60-79% | 3+ contributing | <10% | Active discovery |
| C | 40-59% | 2-3 contributing | >10% | Some source issues |
| D | <40% | <2 contributing | High | Multiple broken scrapers |
| F | β | β | β | System not running |
Updated 2026-03-29: Grades now measure infrastructure health (what the agent controls), not event count or empty days (which reflect community activity). The agent still actively maximizes calendar coverage as a separate mission.
Human Stewardship
How humans guide the agent's growth
Human Stewardship
How humans guide the agent's growth using Claude Code
The daily repair agent went quiet on September 22 for 17 days. Its database connection began listing only an unrelated project, its instructions never named the right one, and each run stopped before writing anything while still reporting success. The monitor noticed the silence, but it phrased its alert as a fix the operator had already ruled out, so the filter that blocks repeat proposals blocked the alert too. Underneath that, the agent had never been able to read a web page: the helper it uses for that needs a GitHub permission its account lacks, so from mid-August each scraper repair ended as a skip.
The agent's instructions now name its database and stop with a notification if it can't be reached. The helper now starts through a GitHub trigger the agent's account is allowed to use, and it still runs only from the main branch, so the agent can't change its own tools. A plain check now raises the "repair loop is down" alarm directly when two daily runs in a row leave no trace, outside the reach of any model's wording. Ruled-out decisions about specific sources now only block alerts about those same sources.
Within the hour the agent fetched a live page for the first time, found that a junk-title filter was discarding real AICamp events, tested its fix against the live page, and shipped it. Three of the operator's decisions had been quietly hiding unrelated alerts; they no longer can.
This agent is developed iteratively with Claude Code. The collaboration is part of the project's identity.