skills/k3s/SKILL.md
k3s Kubernetes cluster running in WSL2 Ubuntu 24.04. Use when troubleshooting the cluster itself, nodes, networking, storage, or WSL2 integration.
npx skillsauth add abix-/claude-blueprints k3sInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
4 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
k3s is a lightweight Kubernetes distribution running inside WSL2 Ubuntu 24.04 on this Windows 10 machine.
kubectl is NOT on Windows PATH. Always use the WSL wrapper:
wsl -d Ubuntu-24.04 -- bash -c "sudo k3s kubectl ..."
nerdctl (container builds) also requires the WSL wrapper:
wsl -d Ubuntu-24.04 -- bash -c "sudo nerdctl --address /run/k3s/containerd/containerd.sock --namespace k8s.io ..."
The Windows host talks to k3s via the WSL2 NAT IP. If WSL has no active session, the NAT goes stale and k8s API calls return empty/timeout. Fix: wake WSL first:
wsl -d Ubuntu-24.04 -- bash -c "echo ok"
All agent workloads run in claude-agents namespace.
| PVC | Mount | Purpose | |-----|-------|---------| | cargo-target | /cargo-target | shared Rust build artifacts (ext4) | | cargo-home | /cargo-home | crate registry cache | | workspaces | /workspaces | persistent git clones per agent slot |
Skills/commands/CLAUDE.md mounted read-only from ~/.claude via hostPath.
Images are built with nerdctl directly into the k3s containerd namespace (no registry):
wsl -d Ubuntu-24.04 -- bash -c "cd /mnt/c/code/k3sc && sudo nerdctl --address /run/k3s/containerd/containerd.sock --namespace k8s.io build -t claude-agent:latest image/"
Pods use imagePullPolicy: Never. If you see ErrImageNeverPull, rebuild with --namespace k8s.io.
--namespace k8s.iowsl -d Ubuntu-24.04 -- bash -c "sudo k3s kubectl get nodes"wsl -d Ubuntu-24.04 -- bash -c "sudo k3s kubectl describe pod <name> -n claude-agents"development
YAML standards for config files, Ansible playbooks, k8s manifests, GitHub Actions, docker-compose, and any project config. Built from the YAML 1.2 spec, yamllint defaults, and the practical pitfalls (Norway problem, type coercion, anchor gotchas).
development
--- name: ueforge description: ueforge framework: the base layer every UE4SS Rust mod in the Grounded2Mods workspace builds on. Authoritative on the composition model (Effect/Trigger/Skill), the Def/Registry/Instance/Controller pattern, hot reload, discovery, hardening doctrine, and the five framework modules (rpg, stacks, difficulty, inventory, damage). Use when writing or modifying code under `ueforge/` in [abix-/Grounded2Mods](https://github.com/abix-/Grounded2Mods), or when promoting a patte
tools
TypeScript and JavaScript standards. Sourced from [abix-/chromium-extensions](https://github.com/abix-/chromium-extensions) (Hush + filter-anything-everywhere). Use when writing TS/JS, including browser extension bootstrap shims, MV3 service workers, and small web frontends.
development
--- name: schedule1 description: Modding Schedule 1 (TVGS, IL2CPP Unity + MelonLoader + Harmony). Authoritative on Schedule 1 game specifics: engine type, MelonLoader/Il2CppInterop references, eMployee mod root-cause findings, vanilla CookRoutine + StartMixingStationBehaviour internals, certainty-tracking discipline. Mod code lives in [`abix-/Schedule1Mods`](https://github.com/abix-/Schedule1Mods) (the `EmployeeReset` sidecar is the current shipped mod). Not for playing the game. user-invocable: