deac59d55a
Add workflow_dispatch-only deploy-app action, deploy-app.sh script, apps/_template for Cursor, and SOUL/README split between static webhook deploy and app compose profiles. Co-authored-by: Cursor <cursoragent@cursor.com>
3.1 KiB
3.1 KiB
SOUL.md — playground
Agent Quick Start
- What: Statische Experimentier-Site —
@cursorin Gitea-Issues erzeugt HTML unterpublic/<slug>/, Auto-Deploy per Push-Webhook auf boka. - Domain: https://playground.schwenk.online
- Gitea:
ssh://git@gitea.schwenk.online:2222/froxxxy/playground.git - Server: boka →
/home/frank/playground.schwenk.online - Commit policy: Session-Agent committet nicht;
@cursor-Bot pusht direkt aufmain(Workflow-Flag)
Product Name
playground
One-Liner
Cursor-gesteuerte Static-Site zum Ausprobieren — Inhalte per Gitea-Issue, live ohne Build-Pipeline.
Vision
Spielwiese für „recherchiere X, schreib einen Onepager“ und ähnliche Prompts: Gitea als Steuerung, Cursor als Autor, nginx als Auslieferung.
Audience
Fränky — und ggf. Gäste mit Link zu einem konkreten Pfad (/thema-xy/).
Tone & Wording
- Voice: direkt, sachlich, kein Marketing
- Formality: du
- Generated content: Deutsch, Quellen im Footer wo sinnvoll
- Forbidden: LinkedIn-Slop, „leverage“, leere Landing-Page-Floskeln
Non-Goals
- Keine zentrale Landing-Liste oder Startseiten-Index
- Kein Framework, kein Build-Step in der Testphase
- Kein PR-Review-Flow für Bot-Commits
- Kein Tracking, keine Analytics-Pflicht
Infrastructure (project-local)
- Workdir (boka):
/home/frank/playground.schwenk.online— Git-Clone dieses Repos - Webroot:
public/→ nginx - Deploy static: Push-Webhook →
hooks/deploy→git pullonly - Deploy apps:
.gitea/workflows/deploy-app.yml→ manualworkflow_dispatch - Cursor workflow:
.gitea/workflows/cursor.ymlmitpush_to_default_branch: "true"
Project-Specific Rules
Static content (public/)
- Content lebt verzeichnisbasiert unter
public/<kebab-slug>/— typischindex.html, keine feste Dateiliste. - Cursor entscheidet selbst: neues Verzeichnis vs.
index2.html/ Assets im bestehenden Ordner. - Plain HTML/CSS only — kein npm, kein Bundler.
- Kein
public/index.htmlund keine Pflege einer Übersichtsseite, außer Fränky fordert es explizit. - Push auf
main→ Webhook deployt nurgit pull(kein Build).
Apps (apps/<slug>/)
- Für Web-Apps, npm, Docker, Datenbank: Code unter
apps/<kebab-slug>/. compose.ymlum Service mitprofiles: ["<slug>"]ergänzen (Vorlage:apps/_template/README.md).- Deploy:
.gitea/workflows/deploy-app.yml— nurworkflow_dispatch(manuell in Gitea). Optional eigene.gitea/workflows/deploy-<slug>.ymlausapps/_template/workflow-deploy.yml.template. - Push-Webhook und
deploy-appnicht vermischen: Webhook = statisch; App-Workflow = Build +docker compose --profile <slug> up -d --build. - Nach Implementierung im Issue kommentieren: Workflow manuell starten.
Allgemein
@cursorin Issue-Kommentaren: Aufgabe erledigen, kurz kommentieren, aufmainpushen.- Neue Workflows nur unter
.gitea/workflows/; App-Deploy-Workflows nur mitworkflow_dispatch(keinpush-Trigger), außer Fränky sagt es explizit. - Keine Drive-by-Änderungen an Infra ohne Bezug zum Issue.