🌑 lights out, 🟢 flight deck green, 🛡️ agents warded for an 8h+ run
I'm Kai Siren, a staff-level platform engineer, ten-plus years in. I build the governed platform layer that lets engineering teams develop, ship, and operate agentic systems safely. The work spans infrastructure, context composition, bounded execution, MCP delivery, model routing, observability, and the Kubernetes systems underneath.
The throughline is developer infrastructure. That has meant language-ecosystem tooling at Ruby Together, multi-cloud platforms at Textio, government infrastructure at Nava, and agentic debugging workflows at Kapwing.
Outside work, I run a two-site homelab and a public game server. Both are practical testbeds for the same platform, reliability, and observability questions I work on professionally.
coilysiren.me is the shorter, visual version of this project map.
The order is intentional: infrastructure first, then the agent platform, then products where the whole system gets used.
- agentic-os - cross-platform agent operating layer with dotfiles, skills, guarded tooling, and repository validators.
- infrastructure - infrastructure as code for my hosts and Kubernetes homelab, including Ansible convergence and observability.
- Operator context and automation - the private skill catalogue, fleet inventory, and cross-repository coordination behind my agent environments.
- Deployment control plane - the private Kubernetes declarations for always-on services across the homelab.
- agent-compose - context compiler that composes roles, personalities, skills, and tool inventories for agent harnesses.
- Ward - governed execution layer for unattended coding agents in isolated repository workflows.
- Ward MCP - MCP runtime that turns cli-guard policy files into guarded Streamable HTTP services and container images.
- Agent Proxy - observability and trajectory data plane with OpenAI-compatible proxying and LiteLLM.
- Eco App 🌎 - server, jobs, replay, and telemetry for the Eco community.
- Galaxy Gen 🌌 - procedural galaxy simulation in Rust and WebAssembly, rendered in the browser at galaxy-gen.coilysiren.me.
- Community operations 🤖 - private Discord tooling and agent workflows for the Sirens community.
- Many MCPs - narrow agent interfaces for personal finance, private feeds, games, browsers, project work, and adjacent systems.
Across those groups, the useful question is not whether an agent produced a diff. It is whether the system can explain what happened, recover from interruption, and prove the result.
The work is split across four namespaces:
Each tag shows how many repositories in that namespace carry it. Repository names stay on the organization profile pages.
![]() |
coilyco-flight-deck - public builds: the governed agent stack, shared developer environment, and fleet infrastructure. Organization profile.ai-agents (5) · ansible (1) · automation (7) · bluesky (1) · command-line (1) · devops (5) · dotfiles (1) · github-profile (1) · helm (1) · homelab (1) · homebrew (1) · infrastructure-as-code (1) · kubernetes (2) · llm (2) · mcp (6) · model-context-protocol (4) · observability (3) · opentelemetry (2) · personal-finance (1) · reddit (1) · rss (1) · scoop (1) · security (5) |
![]() |
coilyco-bridge - control surfaces: operator-specific context and deployment machinery. Organization profile.ai-agents (2) · automation (1) · benchmark (1) · comfyui (1) · data-visualization (1) · devops (4) · documentation (1) · generative-ai (1) · github-profile (1) · helm (1) · homelab (2) · kubernetes (1) · llm (1) · machine-learning (2) · mcp (1) · static-site (1) |
![]() |
coilyco-gaming - games and game tooling: games, simulations, mods, and game-service tooling. Organization profile.bevy (1) · discord (1) · eco-community-discord (1) · eco-game (4) · factorio (1) · game-development (1) · game-modding (3) · game-operations (1) · gaming (1) · github-profile (1) · go (1) · go-ops-tooling (1) · mcp (2) · message-dumps (1) · model-context-protocol (2) · procedural-galaxy-simulation (1) · rust (2) · rust-wasm (1) · steam (1) · telemetry (1) · unity (1) · webassembly (2) |
![]() |
coilysiren - personal work: this profile, coilysiren.me, and private coordination surfaces.ai-agents (2) · automation (1) · blog (1) · dataset (1) · devops (2) · documentation (1) · github-profile (1) · issue-tracker (1) · knowledge-base (1) · linkedin (1) · nlp (1) · observability (2) · personal-website (1) · project-management (1) · writing (1) |
The homelab spans two physical sites on one Tailscale mesh. The primary k3s cluster is the application and state plane. The second is the operations and recovery plane. GPU machines join on demand for local inference, while hosted frontier models handle work beyond the small local tier.
The durable choices are simple:
- Isolate state and keep recovery on a different power and network path.
- Put authentication, ingress, DNS, certificates, and secrets at explicit boundaries.
- Make agent sessions, model traffic, services, and cross-site reachability observable.
- Assume every compute node except the primary can disappear.
Core stack: Go, Python, TypeScript, Bash, and C#. AWS, Kubernetes, Terraform, Docker, and Tailscale. Prometheus, Grafana, Sentry, and OpenTelemetry. Codex, Claude Code, and MCP.
My current role is Senior Software Engineer at Kapwing. My background also includes urfave/cli maintainership, government infrastructure, multi-cloud platforms, and engineering management.
- 2025-now - Kapwing, Senior Software Engineer
- 2023-2025 - Nava, Principal Infrastructure Engineer
- 2022-2023 - Textio, Staff Infrastructure Engineer
- 2021-2022 - EnergyHub, DevOps Engineering Manager
- 2020-2021 - Bluelink, Senior Backend Engineer
- 2018-2020 - Textio, Senior Infrastructure Engineer
- 2016-2018 - Callisto, Senior Software Engineer
Older: Harlot, Quirell/CollectQT, NASA Goddard. Full résumé: coilysiren.me/resume.
coilysiren.me · Bluesky · X · LinkedIn
- AGENTS.md - agent bootstrap guide and operating rules.
- docs/FEATURES.md - inventory of what ships today.
- .ward/ward.yaml - repository command policy.











