← ClaudeAtlas

homelab-new-repolisted

Create a new Flux cluster-content repository in the Blue-Sharp home lab from the Blue-Sharp/homelab-template GitHub template — scaffolds the files, substitutes the NAME token, creates the namespace, mints the read-only Flux deploy key, re-seals the Discord webhook, and registers the repo with Flux. Use this whenever the user wants to add a new piece of software to the cluster, mentions "new repo", "new namespace", "add <software> to the cluster", "self-register with Flux", or asks how to onboard anything into the home lab — even if they don't name the template. Also use it when they ask what a new cluster repo needs, since the answer is "run this and it does the parts that can be automated". Do NOT use it for disaster recovery of EXISTING repos — that is flux-system/dr-reseed.sh.
Pirat83/claude-code-skills · ★ 2 · Data & Documents · score 75
Install: claude install-skill Pirat83/claude-code-skills
# Adding a cluster-content repo to the home lab This automates the checklist in `flux-system/README.md`. Most of it is mechanical, and the mechanical part is exactly where it has gone wrong before: the three most recently created repos all silently missed `.claude/settings.json`, and a repo built by copying a sibling by eye shipped two naming defects. The template fixes what can be inherited; this skill fixes what has to be generated or created in the cluster. ## What you cannot decide for the user Ask before doing anything. These are the only real inputs, and guessing either one produces a repo that looks right and fails later: 1. **The name.** Repository name == namespace name, always. It is also the `secretRef.name` and the `sourceRef.name` — one token, `NAME`, drives every mechanical field and two filenames. 2. **What it `dependsOn`.** `kube-system` is always there (it carries sealed-secrets, without which no SealedSecret in the repo ever unseals). Anything else depends on what the repo contains — a Postgres `Cluster` needs `cnpg-system`, a `Redis` needs `redis-operator`, a plain HelmRelease usually needs nothing more. **Ask; do not infer from the name.** Get this wrong and the objects are applied before their CRDs exist, and the Kustomization fails in a way that reads like a manifest error. ## The sequence ```shell gh repo create Blue-Sharp/NAME --private --template Blue-Sharp/homelab-template gh repo edit Blue-Sharp/NAME --add-topic homelab --a