Public-flip audit: env-driven paths, scrub audit-ticket prefixes, terser README

the host bind paths + LAN host pins replaced with env defaults. Repository URLs
→ git.sulkta.com. Audit-changelog scaffolding stripped from inline comments
(technical reasoning preserved). README sheds marketing scaffolding. AI-speak
in load-bearing prompts/SOULs left alone — that IS the product.
This commit is contained in:
Sulkta 2026-05-27 11:42:58 -07:00
parent 566ca05ea8
commit 564233cbff
20 changed files with 233 additions and 258 deletions

View file

@ -1,37 +1,42 @@
# Standalone compose stack for skald v0.1. Postgres lives in the
# same container — single deployable unit "till we have a real
# working tool" (Sulkta's call, 2026-05-13).
# Standalone compose stack for skald. Postgres lives inside the
# skald container — single deployable unit until the tool stabilises.
#
# To deploy on the host:
# sudo mkdir -p /srv/appdata/skald/{pgdata,seed}
# sudo cp <story>.md /srv/appdata/skald/seed/
# sudo cp skald.env /srv/appdata/secrets/skald.env # POSTGRES_PASSWORD=...
# docker compose -p skald up -d
# Set in .env (or the environment):
# POSTGRES_PASSWORD=... # required
# CLAWDFORGE_URL=http://...:8800 # if running gen / cleanup / audit
# CLAWDFORGE_TOKEN=cf_...
# SKALD_DATA=./pgdata # optional override; defaults to ./pgdata
# SKALD_SEED=./seed # optional override; defaults to ./seed
#
# To import the first story:
# docker exec skald skald import-markdown \
# docker compose exec skald skald import-markdown \
# --path /seed/<story>.md \
# --title "<title>"
name: skald
services:
skald:
image: registry.example.local:5000/skald:latest
build: .
image: skald:latest
container_name: skald
restart: unless-stopped
ports:
- "7780:7780"
env_file:
- /srv/appdata/secrets/skald.env
environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}
POSTGRES_USER: ${POSTGRES_USER:-skald}
POSTGRES_DB: ${POSTGRES_DB:-skald}
DATABASE_URL: ${DATABASE_URL:-postgresql://skald:${POSTGRES_PASSWORD}@localhost:5432/skald}
CLAWDFORGE_URL: ${CLAWDFORGE_URL:-}
CLAWDFORGE_TOKEN: ${CLAWDFORGE_TOKEN:-}
SKALD_MODEL: ${SKALD_MODEL:-opus}
F5_TTS_URL: ${F5_TTS_URL:-}
KOKORO_URL: ${KOKORO_URL:-}
TORTOISE_URL: ${TORTOISE_URL:-}
RUST_LOG: ${RUST_LOG:-info}
SKALD_LOG_FORMAT: ${SKALD_LOG_FORMAT:-json}
volumes:
# Postgres data — persist across container recreates.
- /srv/appdata/skald/pgdata:/var/lib/postgresql/data
# Markdown corpus to import via `docker exec skald skald import-markdown`.
- /srv/appdata/skald/seed:/seed:ro
environment:
RUST_LOG: ${RUST_LOG:-info}
SKALD_LOG_FORMAT: json
labels:
org.sulkta.domain: "sulkta"
org.sulkta.owner: "Sulkta"
org.sulkta.managed-by: "compose"
org.sulkta.role: "skald"
- ${SKALD_DATA:-./pgdata}:/var/lib/postgresql/data
# Markdown corpus to import via `skald import-markdown`.
- ${SKALD_SEED:-./seed}:/seed:ro