99c7255db5778cbbc02c8b6cbc1008035be66681
One repo, one git protocol, one deploy script. Merged from the two former AGENTS.md files: - Overview: both workloads, both hosts, the 2026-08-22 merge note, current LLM fleet topology (frank-default-small :7770 Dankserver, frank-default-large :52625 Dankclaw) - Git workflow + testing (serverAppConfigs protocol, test step kept) - Deployment: the unified deploy.sh (stack + LLM per target) - Secret rules: no passwords in the repo; FRANK_SUDO_PW covers headless sudo (the live sudo password is NOT carried forward) - Deletion & Trash Policy (from the vllmScripts 2026-08-22 commit) - Benchmarking policy (stop the service before any bench) - Pi model config, runtime & troubleshooting (v3 CIRU active, Kairic/DFlash2/FastMTP retired), HIP env naming rule, crash-loop procedure, operational quirks (passwordless sudo verified 2026-08-22), Dankclaw memory model
Server App Configs
Podman deployment configuration for two homelab servers: Dankserver and Dankclaw.
Targets
| Host | User | IP | Stack |
|---|---|---|---|
| dankclaw | dank | 192.168.0.143 | AI, search, development, observability |
| dankserver | dank | 192.168.0.235 | media and library |
Active Services
| Service | Host | Hostname | Port |
|---|---|---|---|
| RomM | dankserver | romm.dankserver.local | 8085 |
| Copyparty | dankserver | files.dankserver.local | 3923 |
| Calibre-Web | dankserver | books.dankserver.local | 8083 |
| SearXNG | dankclaw | search.dankclaw.local | 8081 |
| ComfyUI | dankclaw | comfyui.dankclaw.local | 8188 |
| OpenWebUI | dankclaw | chat.dankclaw.local | 3000 |
| Hermes | dankclaw | hermes.dankclaw.local | 8090 |
| Gitea | dankclaw | gitea.dankclaw.local | 3001 |
| Grafana | dankclaw | grafana.dankclaw.local | 3002 |
| Prometheus | dankclaw | prometheus.dankclaw.local | 9090 |
Structure
dankserver/— compose.yaml + Caddyfile + .env.example for the Dankserver stackdankclaw/— compose.yaml + Caddyfile + .env.example for the Dankclaw stackshared/— homepage, prometheus config, deploy helpersscripts/— deploy.sh and stack control scriptsdocs/— project knowledge base (Obsidian vault, wikilinks)tests/— bats test suite (see Testing Policy)
Deployment
See [docs/Architecture/Deployment Flow.md](docs/Architecture/Deployment Flow.md). Run ./scripts/deploy.sh <dankclaw|dankserver> after pushing committed changes.
Knowledge Base
The docs/ directory is an Obsidian vault. Start at docs/index.md.
Testing
Run ./tests/run.sh before every push. See [docs/Architecture/Testing Policy.md](docs/Architecture/Testing Policy.md).
Also See
- vllmScripts (local:
../vllmScripts) — the model-serving scripts this stack consumes:frank-default-large(llama.cpp PP head,:7770, backend of OpenWebUI) andfrank-default-small(FastFlowLM NPU,:52625)
Languages
Shell
60.4%
Python
21%
HTML
6.2%
Jinja
3.9%
C++
3.9%
Other
4.6%