Kubernetes
A reusable Kustomize base lives under deploy/kubernetes/base in the q15 repo.
What the base includes
Section titled “What the base includes”- Deployments for
q15-agent,q15-exec, andq15-proxy(allreplicas: 1) - Services for
q15-exec(:50051) andq15-proxy(:50052,:18080) - ConfigMap generators for agent config and proxy policy examples
Supported topology
Section titled “Supported topology”One namespace per q15 stack. Each stack contains:
- One
q15-agent, oneq15-exec, oneq15-proxy - Stack-local ConfigMaps and Secrets
- Stack-owned persistent volumes for
/workspace,/memory,/skills,/nix, and/var/lib/q15/proxy
The namespace is the isolation boundary. Downstream multi-stack deployments repeat this stack in separate namespaces.
Required PVCs
Section titled “Required PVCs”| PVC | Mount | Purpose |
|---|---|---|
q15-workspace |
/workspace |
Durable project tree |
q15-memory |
/memory |
Agent memory |
q15-skills |
/skills |
Skill artifacts |
q15-exec-nix |
/nix |
Nix store (must preserve bootstrap on first mount) |
q15-proxy-state |
/var/lib/q15/proxy |
Proxy state |
Image tags
Section titled “Image tags”The checked-in base uses the moving :main tag as a placeholder:
ghcr.io/q15co/q15-agent:mainghcr.io/q15co/q15-exec:mainghcr.io/q15co/q15-proxy:mainFor production, replace with one pinned sha-<short-sha> tag across all three services.
Validate the base
Section titled “Validate the base”kubectl kustomize deploy/kubernetes/baseIntended workflow
Section titled “Intended workflow”- The q15 repo publishes images to GHCR on verified pushes to
main. - A separate deployment repo pins those images and owns environment-specific overlays.
- The deployment repo rolls out the updated pod set.