Inspiration
Managing databases and infrastructure at scale is stressful. On-call engineers get woken up at 3 AM for high CPU alerts, storage warnings, or slow queries, only to run the exact same standard CLI commands to triage the issue. We wanted to see if a truly autonomous LLM agent could handle this "Level 1" triage and remediation securely, while retaining persistent memory of past incidents so it gets smarter over time.
What it does
AgentOS is an autonomous SRE dashboard. When a critical alert fires, the AI agent spins up, pulls real-time cluster metrics via CockroachDB CLI/API tools, identifies the root cause (e.g., a rogue unindexed query), and executes a remediation strategy (like killing the query).
Crucially, it then writes a detailed post-mortem to a CockroachDB Vector database. When future incidents occur, the agent performs a semantic search against this vector store via pgvector to recall past solutions and contextual history before taking action.
How we built it
We built a custom Python backend utilizing the Amazon Bedrock API (Claude 3.5 Sonnet) with native function calling (tool use). The agent is equipped with Python tools to query CockroachDB clusters, retrieve metrics, and execute AWS EC2 health checks.
For our persistent agentic memory, we provisioned a CockroachDB Serverless cluster. We used pgvector to store incident summaries alongside embedding vectors generated by Amazon Titan Embeddings v2 (via Bedrock). The frontend is a sleek, glassmorphic HTML/Vanilla CSS dashboard.
Challenges we ran into
Vector Dimension Mismatches: We initially struggled when saving embeddings because Amazon Titan v2 outputs 1024-dimensional vectors, while our CockroachDB schema was expecting 1536. We had to carefully drop and recreate our cloud database schema to match the embedding model.
Vector Serialization in Postgres: pgvector on CockroachDB requires arrays to be strictly formatted as string literals like [x,y,z] when doing raw SQL inserts via psycopg. We spent hours debugging SQL syntax before writing a custom vector string parser.
Deployment Dependencies: We ran into conflicts between psycopg pure-python and C-compiled binaries when moving from our local Windows environment to our Linux cloud host on Render, requiring us to explicitly configure psycopg[binary].
Accomplishments that we're proud of
We are incredibly proud of successfully chaining Amazon Bedrock's function calling with CockroachDB's pgvector to create true "Agentic Memory". The agent doesn't just blindly act; it actually remembers previous outages and references them.
What we learned
We learned how to deeply integrate CockroachDB Serverless as a highly scalable vector store, how to structure prompt instructions for autonomous tool-calling loops without timing out, and how powerful (and fast) Claude on Amazon Bedrock can be when given the right CLI and database access.
What's next for AgentOS: Autonomous SRE Dashboard
We plan to implement full Slack integration (so the agent triages directly in Slack channels), multi-agent architectures (where a "Database Agent" talks to an "AWS Infra Agent"), and RBAC (requiring human-in-the-loop approval via mobile push notifications for destructive commands).
Built With
- amazon-bedrock
- amazon-web-services
- cockroachdb
- css
- html
- javascript
- pgvector
- python

Log in or sign up for Devpost to join the conversation.