Patrick Plate 9453aecf0b fix(roo): add anti-loop guardrails to prevent autonomous session resumption
- Add Rule 9 (Anti-Loop Guardrail) to 01-bigmind-core.md: detect 2+ identical
  partial sessions and surface the loop to user instead of auto-resuming
- Add partial=history clause to Rule 1: partial/blocked/abandoned outcomes are
  historical records only, never task queue items
- Add focus guard to memory_announce_focus: must reflect current user message,
  not prior session outcome; use 'Awaiting user task assignment' if no task yet
- Add .roo/rules/06-anti-loop.md: global injection for ALL modes overriding
  any mode-specific 'do the task immediately' behavior
- Add mode interaction safety clause to 00-identity.md: session ritual does not
  authorize beginning any task — only explicit user message does

Root cause: pic-gen 'do the task' personality + BigMind context inference
produced 6 identical partial branding sessions in a loop.
2026-04-10 23:27:32 +02:00

Workshop — Patrick's Homelab Monorepo

A polyglot monorepo for personal engineering projects: MCP servers, Java web apps, and whatever comes next. Hosted on Gitea @ TrueNAS.local.

See plans/REPO_STRATEGY.md for the full structure rationale and conventions.


📂 Structure

workshop/
├── mcp/          Python MCP servers (FastMCP + uv)
├── java/         Java web projects (Maven + Jakarta EE)
├── plans/        Architecture & strategy docs
└── .roo/         IDE config (Roo Code, MCP wiring)

📖 Wiki

Full documentation lives in the Gitea wiki.

Wiki source: docs/wiki/pages/ — edit here, deploy with:

./docs/wiki/deploy_wiki.sh

MCP Servers (mcp/)

Server Description Stack
mcp/bigmind/ Persistent AI memory — sessions, facts, hypotheses, profile UI Python, FastMCP, SQLite, Flask
mcp/webscraper/ Web scraping, search — fetch, links, tables, Brave Search Python, FastMCP, httpx, BeautifulSoup
mcp/mcp-image-gen/ AI image generation — text-to-image via ComfyUI + FLUX.1-schnell Python, FastMCP, httpx, ComfyUI

Run a server:

cd mcp/bigmind   # or mcp/webscraper
./run.sh

Each server is an independent Python package. uv sync handles dependencies, no shared virtualenv.


Java Projects (java/)

Project Description Stack
java/mss-failsafe/ MSS Failsafe — multi-module Java EE web application Java EE, Maven, WildFly
java/wellmann-shop/ Wellmann online shop — JSF/PrimeFaces e-commerce Java 8, JSF, PrimeFaces, EclipseLink, MySQL

Build a project:

cd java/wellmann-shop
mvn clean package

📐 Plans & Architecture (plans/)

Document Description
plans/REPO_STRATEGY.md Monorepo strategy, taxonomy, naming conventions, migration log

🔧 IDE Wiring

MCP servers are wired into VS Code via .roo/mcp.json.

BigMind memory DB lives at ~/.mcp/bigmind/memory.db (outside the repo — not committed).


License

MIT — personal homelab use.

S
Description
Homelab MCP servers monorepo
Readme 98 MiB
Languages
Java 33%
HTML 32.7%
Python 24.7%
TypeScript 3.8%
CSS 3.8%
Other 2%