Kalina CI: Repository, Skill für beide Workspaces, PDF-Regel, Paperclip-Branding #1

Open
opened 2026-10-23 08:43:29 +00:00 by mm · 0 comments
Owner

Auftrag (23.10.2026)

„nun erstelle einen skill für beide workspaces, die auf das Kalina CI verweisen - lege dafür auch ein gitea repo an mit Zugriff für alle Agents usw. Alle Projekte und Ergebnisse als PDF sollen mit dieser CI global ausgestattet werden. Änderungen am CI sollen über gitea gelöst werden - sofern notwendig. Brande auch gleich paperlip entsprechend."

Was jetzt gilt

Dieses Repository ist die Kalina CI. Vorher lag sie an zwei Orten (Markenablage
/home/mm/brand/ und Skill der Open-WebUI-Instanz); welche Fassung gilt, war nicht
festgelegt. Jetzt gibt es eine Quelle mit Version, Issue und PR.

  • css/kalina-ci.css — Satzvorlage (A4, Kopfleiste, Tabellen, Plakette, Fußlinie)
  • templates/report.html, page.html, bild-mit-prompt.html
  • assets/kalina-mark.svg, kalina-wordmark.svg, kalina-logo-combined.svg, favicon/
  • scripts/stamp_existing_pdf.py — fremdes PDF stempeln, Original bleibt unberührt
  • tools/kalina-pdf — build / stamp / check / tokens
  • tokens.json — Farben, Schriften, Geometrie, Zonen maschinenlesbar
  • docs/aenderungen.md — verbindlicher Änderungsweg

Zugriff

  • Öffentlich lesbar: der Skill-Import der Paperclip-Instanz holt Bäume und Rohdateien
    ohne Authentifizierung; ein privates Repo ist dort nicht importierbar. Gegenregel steht im
    README: keine internen Hosts, IPs, Schlüssel oder Kundeninhalte in diesem Repo.
  • Schreibrecht: mm (Owner) und Agentenkonto kalina (Collaborator, write, geprüft über
    /repos/mm/kalina-ci/collaborators/kalina/permission → write). Weitere Agenten analog
    aufnehmen.

Beide Workspaces

Importiert als Git-Repo-Skill, getrackt auf main:

Firma Company Skill-ID Ref
Dev 7781cfe3-2ba9-4409-bc27-4549f368ccc3 3f20658d-d13b-4b88-9324-94358c9e7839 9db207e
KALINA CORP 1 b92bf6d7-2ce4-4389-be25-3c67664b4ce9 3ca92063-73ef-472c-ac65-3bf17bcf5bb2 9db207e

Der Update-Weg ist erprobt, nicht behauptet: nach dem zweiten Commit meldete
update-status in beiden Firmen hasUpdate: true (currentRef db3725d → latestRef
9db207e), install-update zog beide auf 9db207e, danach hasUpdate: false.

Paperclip gebrandet

  • Firmenlogo: Marke als SVG-Asset, logoAssetId je Firma gesetzt
    (Dev 1f919791-…, CORP1 82b99d4e-…), Auslieferung 200 image/svg+xml.
  • UI: Favicon-Satz 16/32/48/180/192/512 + .ico + favicon.svg, apple-touch-icon,
    android-chrome-*, site.webmanifest (Name/Theme) und Titel im ausgelieferten
    index.html sind Kalina. Reproduzierbar über /home/mm/paperclip-brand/apply.sh
    (idempotent, Originale gesichert) — nötig nach jeder Container-Neuerstellung.
  • Grenze: den Tab-Titel setzt die SPA zur Laufzeit aus Breadcrumbs
    (document.title||"Paperclip" ist nur Rückfall). Echtes White-Label bräuchte einen Patch
    in den gebauten Bundles — bricht bei jedem Release, deshalb bewusst nicht gemacht.

PDF-Regel global

Jedes Projektergebnis-PDF trägt diese CI. Der Skill kalina-ci (Hermes, global) und der
importierte Paperclip-Skill sagen dasselbe: Vorlage kopieren oder fremdes PDF stempeln,
danach kalina-pdf check und die erste Seite als PNG ansehen. Ausnahme nur auf
ausdrückliche Anweisung (fremde CI, Behördenformular).

Änderungen an der CI

Issue (dieses) → Branch ci/<thema> → PR → Review → Merge → CHANGELOG.md im selben PR.
Danach git pull in Arbeitskopien und install-update in Paperclip. Notfall-Abweichung im
Projekt nur mit Issue am selben Tag (sonst ist es eine stille zweite CI).

Offen

  • Webui-Kopie /home/mm/webui/skills/kalina-ci-branding bleibt als Ladepfad der
    Open-WebUI-Instanz bestehen und trägt jetzt einen Zeiger auf dieses Repo; sie ist Altlast,
    kein zweiter Stand.
  • Ausgelieferte Alt-PDFs werden nicht rückwirkend umgesetzt.
## Auftrag (23.10.2026) > „nun erstelle einen skill für beide workspaces, die auf das Kalina CI verweisen - lege dafür auch ein gitea repo an mit Zugriff für alle Agents usw. Alle Projekte und Ergebnisse als PDF sollen mit dieser CI global ausgestattet werden. Änderungen am CI sollen über gitea gelöst werden - sofern notwendig. Brande auch gleich paperlip entsprechend." ## Was jetzt gilt Dieses Repository **ist** die Kalina CI. Vorher lag sie an zwei Orten (Markenablage `/home/mm/brand/` und Skill der Open-WebUI-Instanz); welche Fassung gilt, war nicht festgelegt. Jetzt gibt es eine Quelle mit Version, Issue und PR. - `css/kalina-ci.css` — Satzvorlage (A4, Kopfleiste, Tabellen, Plakette, Fußlinie) - `templates/report.html`, `page.html`, `bild-mit-prompt.html` - `assets/kalina-mark.svg`, `kalina-wordmark.svg`, `kalina-logo-combined.svg`, `favicon/` - `scripts/stamp_existing_pdf.py` — fremdes PDF stempeln, Original bleibt unberührt - `tools/kalina-pdf` — `build` / `stamp` / `check` / `tokens` - `tokens.json` — Farben, Schriften, Geometrie, Zonen maschinenlesbar - `docs/aenderungen.md` — verbindlicher Änderungsweg ## Zugriff - Öffentlich **lesbar**: der Skill-Import der Paperclip-Instanz holt Bäume und Rohdateien ohne Authentifizierung; ein privates Repo ist dort nicht importierbar. Gegenregel steht im README: keine internen Hosts, IPs, Schlüssel oder Kundeninhalte in diesem Repo. - Schreibrecht: `mm` (Owner) und Agentenkonto `kalina` (Collaborator, `write`, geprüft über `/repos/mm/kalina-ci/collaborators/kalina/permission` → `write`). Weitere Agenten analog aufnehmen. ## Beide Workspaces Importiert als Git-Repo-Skill, getrackt auf `main`: | Firma | Company | Skill-ID | Ref | |---|---|---|---| | Dev | `7781cfe3-2ba9-4409-bc27-4549f368ccc3` | `3f20658d-d13b-4b88-9324-94358c9e7839` | `9db207e` | | KALINA CORP 1 | `b92bf6d7-2ce4-4389-be25-3c67664b4ce9` | `3ca92063-73ef-472c-ac65-3bf17bcf5bb2` | `9db207e` | Der Update-Weg ist erprobt, nicht behauptet: nach dem zweiten Commit meldete `update-status` in beiden Firmen `hasUpdate: true` (currentRef `db3725d` → latestRef `9db207e`), `install-update` zog beide auf `9db207e`, danach `hasUpdate: false`. ## Paperclip gebrandet - Firmenlogo: Marke als SVG-Asset, `logoAssetId` je Firma gesetzt (Dev `1f919791-…`, CORP1 `82b99d4e-…`), Auslieferung `200 image/svg+xml`. - UI: Favicon-Satz 16/32/48/180/192/512 + `.ico` + `favicon.svg`, `apple-touch-icon`, `android-chrome-*`, `site.webmanifest` (Name/Theme) und Titel im ausgelieferten `index.html` sind Kalina. Reproduzierbar über `/home/mm/paperclip-brand/apply.sh` (idempotent, Originale gesichert) — nötig nach jeder Container-Neuerstellung. - Grenze: den Tab-Titel setzt die SPA zur Laufzeit aus Breadcrumbs (`document.title||"Paperclip"` ist nur Rückfall). Echtes White-Label bräuchte einen Patch in den gebauten Bundles — bricht bei jedem Release, deshalb bewusst nicht gemacht. ## PDF-Regel global Jedes Projektergebnis-PDF trägt diese CI. Der Skill `kalina-ci` (Hermes, global) und der importierte Paperclip-Skill sagen dasselbe: Vorlage kopieren oder fremdes PDF stempeln, danach `kalina-pdf check` **und** die erste Seite als PNG ansehen. Ausnahme nur auf ausdrückliche Anweisung (fremde CI, Behördenformular). ## Änderungen an der CI Issue (dieses) → Branch `ci/<thema>` → PR → Review → Merge → `CHANGELOG.md` im selben PR. Danach `git pull` in Arbeitskopien und `install-update` in Paperclip. Notfall-Abweichung im Projekt nur mit Issue am selben Tag (sonst ist es eine stille zweite CI). ## Offen - Webui-Kopie `/home/mm/webui/skills/kalina-ci-branding` bleibt als Ladepfad der Open-WebUI-Instanz bestehen und trägt jetzt einen Zeiger auf dieses Repo; sie ist Altlast, kein zweiter Stand. - Ausgelieferte Alt-PDFs werden nicht rückwirkend umgesetzt.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mm/kalina-ci#1