Single SPEC source regenerates machine-readable JSON for agents and dark HTML for humans so architecture survives lost chat sessions.
1.4 KiB
1.4 KiB
Agent notes (arr-stack)
Project specification (read first)
| File | Audience |
|---|---|
specification.json |
Coding agents / tools — structured index of the whole stack |
specification.html |
Humans — same content, readable |
Do not edit those two files by hand. Update scripts/generate-specification.py (SPEC dict), then run:
./scripts/generate-specification.py
Commit both outputs together so they stay in lockstep. Prefer JSON over HTML for agent context.
Git
- Remote:
origin→ssh://git@192.168.8.123:2222/tim/stack.git(Forgejotim/stack) - After any meaningful change set: commit and push to
mainwith a clear, complete-sentence message (what changed and why). - Never commit secrets:
.env,wireguard/wg0.conf,config/, GGUF models,ansible/.secrets/. - Prefer SSH push (
GIT_SSH_COMMANDwith~/.ssh/id_ed25519if needed). - Server checkout:
/opt/stackis the same repo (git pullon ser5). Ansible usesstack_deploy_method: git. - Prefer
.envfor config (see.env.example). Demo creds:DEMO_USER=timDEMO_PASS=asdfasdf. Fresh host:./scripts/bootstrap-stack.sh. - Secrets live in
secrets/.env(gitignored). After edits: see quickstart.md → After changing secrets (Usenet →configure-usenet.sh; Cloudflare →render-cloudflare-ddns-env.sh+ recreate container; NZBgeek → Prowlarr UI; WireGuard →wg0.conf+ gluetun recreate/watch).