c662a5237b57d2d0d4ee1b192ea7bce7a4dac023
Option A: Add lifespan context manager to server.py - _ping_comfyui(): async health check against /system_stats - check_and_start_comfyui(): ping on startup; if down, launches ComfyUI via subprocess.Popen from COMFYUI_DIR (.venv/bin/python main.py) with HSA_OVERRIDE_GFX_VERSION=11.0.0 injected for AMD ROCm - Polls up to 30s for readiness after auto-start - New env var: COMFYUI_DIR (default ~/ComfyUI) - FastMCP lifespan= wired in; 34/34 tests still passing Option B: Add comfyui.service systemd user service file - Install: cp mcp/mcp-image-gen/comfyui.service ~/.config/systemd/user/ - Enable: systemctl --user enable --now comfyui - Sets HSA_OVERRIDE_GFX_VERSION=11.0.0, WorkingDirectory=%h/ComfyUI - Restart=on-failure, logs via journald docs: Update mcp-image-gen-ComfyUI-Setup.md - New Step 4: systemd service install + linger instructions - Step 5: manual start (moved from old Step 4) - Step 6/7 renumbered; COMFYUI_DIR env var documented - Architecture diagram added; troubleshooting rows updated
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.
Description
Languages
Java
33%
HTML
32.7%
Python
24.7%
TypeScript
3.8%
CSS
3.8%
Other
2%