2 pointsby gjkim0422 hours ago1 comment
  • gjkim0422 hours ago
    Hello HN, I built Axon because I wanted to run Claude Code fully autonomously but didn't want to give it free reign over my laptop. The insight was simple: Kubernetes already solves the hard problems. Isolation? Pods. Ephemeral environments? Jobs. Credential scoping? RBAC + Secrets. Scheduling dozens of agents? That's just scheduling. So --dangerously-skip-permissions inside an ephemeral Pod isn't actually dangerous — the blast radius is zero for the host.

    Axon is a Kubernetes controller (a few CRDs, no external dependencies) that wraps AI coding agents as Jobs. You apply a Task, Axon spins up an isolated Pod, the agent works autonomously, and you get back a branch name, PR URL, and exact cost in USD.

    The part I'm most excited about is TaskSpawner. It polls GitHub Issues and creates a Task for each match. I use this to develop Axon itself — every open issue gets picked up by an agent that investigates, opens a PR, and self-reviews. If it gets stuck, it labels the issue axon/needs-input and stops. Remove the label, it re-queues on the next poll. The full setup is here: https://github.com/axon-core/axon/blob/main/self-development...

    Current state: Claude Code is the primary agent today. The agent type is pluggable (single switch in job_builder.go) and I added Codex, Gemini CLI, and OpenCode support. Written in Go, Apache 2.0 licensed — fully open source.

    A few things I'd genuinely love feedback on: * Is the CRD design (Task / Workspace / AgentConfig / TaskSpawner) intuitive or over-abstracted? * Would a web UI add value, or is kubectl + CLI enough for this kind of tool? * Anyone running autonomous agents in production today? Curious what problems you've hit.

    Happy to answer questions about the architecture or the experience of letting agents develop their own framework. Contributions welcome!