„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.
Ö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 checkund 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.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Auftrag (23.10.2026)
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 nichtfestgelegt. 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.htmlassets/kalina-mark.svg,kalina-wordmark.svg,kalina-logo-combined.svg,favicon/scripts/stamp_existing_pdf.py— fremdes PDF stempeln, Original bleibt unberührttools/kalina-pdf—build/stamp/check/tokenstokens.json— Farben, Schriften, Geometrie, Zonen maschinenlesbardocs/aenderungen.md— verbindlicher ÄnderungswegZugriff
ohne Authentifizierung; ein privates Repo ist dort nicht importierbar. Gegenregel steht im
README: keine internen Hosts, IPs, Schlüssel oder Kundeninhalte in diesem Repo.
mm(Owner) und Agentenkontokalina(Collaborator,write, geprüft über/repos/mm/kalina-ci/collaborators/kalina/permission→write). Weitere Agenten analogaufnehmen.
Beide Workspaces
Importiert als Git-Repo-Skill, getrackt auf
main:7781cfe3-2ba9-4409-bc27-4549f368ccc33f20658d-d13b-4b88-9324-94358c9e78399db207eb92bf6d7-2ce4-4389-be25-3c67664b4ce93ca92063-73ef-472c-ac65-3bf17bcf5bb29db207eDer Update-Weg ist erprobt, nicht behauptet: nach dem zweiten Commit meldete
update-statusin beiden FirmenhasUpdate: true(currentRefdb3725d→ latestRef9db207e),install-updatezog beide auf9db207e, danachhasUpdate: false.Paperclip gebrandet
logoAssetIdje Firma gesetzt(Dev
1f919791-…, CORP182b99d4e-…), Auslieferung200 image/svg+xml..ico+favicon.svg,apple-touch-icon,android-chrome-*,site.webmanifest(Name/Theme) und Titel im ausgeliefertenindex.htmlsind Kalina. Reproduzierbar über/home/mm/paperclip-brand/apply.sh(idempotent, Originale gesichert) — nötig nach jeder Container-Neuerstellung.
(
document.title||"Paperclip"ist nur Rückfall). Echtes White-Label bräuchte einen Patchin 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 derimportierte Paperclip-Skill sagen dasselbe: Vorlage kopieren oder fremdes PDF stempeln,
danach
kalina-pdf checkund die erste Seite als PNG ansehen. Ausnahme nur aufausdrückliche Anweisung (fremde CI, Behördenformular).
Änderungen an der CI
Issue (dieses) → Branch
ci/<thema>→ PR → Review → Merge →CHANGELOG.mdim selben PR.Danach
git pullin Arbeitskopien undinstall-updatein Paperclip. Notfall-Abweichung imProjekt nur mit Issue am selben Tag (sonst ist es eine stille zweite CI).
Offen
/home/mm/webui/skills/kalina-ci-brandingbleibt als Ladepfad derOpen-WebUI-Instanz bestehen und trägt jetzt einen Zeiger auf dieses Repo; sie ist Altlast,
kein zweiter Stand.