06dba9a4ad
- Add branch naming convention: type/scope/short-description - Update gitea-push skill: branch guard in Step 1 (never commit to main) - Update rules-mcp-builder: create branch before any MCP build - Update rules-bigmind: create branch before any BigMind task - Update rules-homelab: create branch before any homelab task - Add Section 11 to REPO_STRATEGY.md: full branching strategy doc (types, scopes, workflow, Lumen responsibilities, examples) - Ticketing decision: Gitea Issues only, no Docker ticketing service
45 lines
2.4 KiB
Markdown
45 lines
2.4 KiB
Markdown
# Homelab Mode Behavior — Roo Code
|
|
|
|
## Active Persona: Tinkerer Patrick
|
|
|
|
Patrick is in homelab mindset. He is experimenting, building, and maintaining his personal infrastructure ecosystem. No corporate constraints — full admin rights on everything.
|
|
|
|
## Infrastructure Context (always active in this mode)
|
|
|
|
| Asset | Details |
|
|
|-------|---------|
|
|
| Workstation | Fedora Linux, Ryzen 5900X, RX 7900 XTX (24GB VRAM), 8TB NVMe |
|
|
| Server | TrueNAS.local @ 192.168.188.119, Ryzen 5900X, Docker, 1.2TB SSD pool |
|
|
| Gitea | http://192.168.188.119:30008/ — homelab git server, source of truth |
|
|
| AI | Ollama (local models), Grok Code (prepaid), Claude Code ($50 prepaid) |
|
|
| MCP base | ~/pi_mcps/ — all MCP servers live here |
|
|
|
|
## Before Starting Any Homelab Task
|
|
1. **Search Infrastructure Facts:** `memory_search_facts("TrueNAS Docker")` + `memory_search_facts("Gitea homelab")`
|
|
2. **Check for Existing MCP Server:** Does a pi_mcps server already handle this task? Check before building ad-hoc
|
|
3. **Create a branch (MANDATORY — never work on main):**
|
|
```bash
|
|
git checkout -b feat/homelab/short-description
|
|
# or chore/homelab/short-description for config/maintenance
|
|
```
|
|
4. **Announce Focus (include branch name):** `memory_announce_focus(session_id, "Homelab: X on branch feat/homelab/X", files=["docker-compose.yml"], ide_hint="VS Code")`
|
|
5. **Form Hypothesis:** `memory_add_hypothesis(session_id, "This service will run on TrueNAS Docker with X config")`
|
|
|
|
## Homelab Coding Patterns
|
|
- **Prefer Docker Compose** over ad-hoc docker run commands
|
|
- **CLI-first:** Prefer terminal solutions over GUI navigation
|
|
- **Paths:** Everything on TrueNAS lives under /mnt/ (ZFS datasets). Workstation workspace: ~/pi_mcps/
|
|
- **Networking:** Direct LAN access — no VPN/firewall between workstation and TrueNAS.local
|
|
- **Local AI:** When using Ollama, check VRAM headroom (RX 7900 XTX = 24GB). ROCm stack on Fedora
|
|
- **uv for Python:** Never use pip directly on the workstation
|
|
|
|
## Gitea Workflow
|
|
- Push all homelab repos to Gitea first
|
|
- PAT stored in BigMind (fact id 93) — never commit tokens to code
|
|
- Conventional commit format: `type(scope): description`
|
|
|
|
## After Homelab Changes
|
|
1. **Store Infrastructure Fact:** `memory_store_fact("environment-config", "Service X running on TrueNAS at port Y with config Z")`
|
|
2. **Commit to Gitea:** Use conventional commits, push to homelab Gitea
|
|
3. **Resolve Hypothesis:** Update based on what actually worked
|