Template
A Gitea template repo (D76, option A): Shikigami generates a new app's
repo from it with one API call. .gitea/template names the files and
paths where Gitea expands $REPO_NAME (and _SNAKE for the package);
unknown $names - CI's ${{ }} and shell variables - are left alone.
A FastAPI app with /heartbeat, check.sh (ruff, ty, uv lock, pytest),
Thoth's CI minus the database, Echo's Dockerfile, and deploy/values.yaml
without the deploy/meru.yaml marker: Shikigami adds that last, once the
app's fence, key and build credentials exist, so the template itself is
never deployed. The template repo's own CI is skipped (no runner).
Checked by rendering it as golem and my-app with a stand-in for Gitea's
expansion: check.sh passes on both; golem's image builds and answers
/heartbeat read-only as user 10001.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01MdS1HcT3JpVno881Z46fei