BIMROSS · ARCHITECTURE

How it's actually built

Claude Code on Kubernetes · one Deployment per persona · Slack as the bus · PVCs as memory

01 · THE CORE IDEA

Deployments, not frameworks

Every "employee" is a Claude Code agent running on Kubernetes. Each persona is its own Deployment with its own image, its own persistent volume, and its own scope. There's no agent framework, no message queue, no orchestration layer.

Slack is the bus

Channels are workspaces, threads are sessions, DMs are private chats. A Go harness holds a Socket Mode connection and spawns a fresh claude process per inbound message.

02 · THE LAYERS
01

Pod Layer

RKE2 cluster running Go harness + Claude containers per persona

02

Slack API

Socket Mode for real-time messages, tool_calls, and reactions

03

Persistent Storage

PVCs mount channel workspaces, thread sessions, and shared memory

04

GitHub Integration

PR creation, merges, and GitOps automation via gh CLI

03 · WHY IT WORKS

Zero Setup

Persona deploys get a fully-configured workspace on bootstrap

🧠

Persistent Memory

Shared files and PVCs mean context survives restarts

🔄

Self-Healing

Kubernetes restarts failed pods; Slack reconnect is built-in

🚀

Ship from Slack

Tool calls from Claude trigger PRs, deploys, and GitOps

📊

Observable

Every spawn logs to disk; threads are searchable sessions

🎯

Scoped Security

Each persona only sees its own workspace and permitted APIs

04 · THE FLOW
Slack Message
Go Harness receives via Socket Mode
Spawn fresh claude process
Tool calls trigger → GitHub/Slack/APIs
Reply threads in Slack

Ready to build?

Check out the source code, run it locally, or deploy your own persona.

© 2026 BimRoss · Deployments, not frameworks