Kalina 6882349bf4 feat(shell): Kalina-CI-Prompt und Installer fuer weitere Maschinen (#2)
prompt.zsh: zweizeiliger zsh-Prompt aus den CI-Token (Tinte, Knochenweiss, Markenrot nur als Grafik, Text-Rot fuer Fehlercodes, Salbei nur an Git). install.sh: idempotent, sichert jede Datei, erkennt foot/qterminal/xfce4-terminal/xterm und prueft mit zsh -n, foot --check-config und xrdb.
2026-11-02 18:29:25 +01:00

KALINA CI

Corporate Identity der KALINA als versioniertes Artefakt: eine Satzvorlage (CSS), drei Dokumentvorlagen, die Marke als SVG, ein Stempel-Skript für fremde PDFs und eine CLI, die alle drei Wege bedient. Ein Dokument, das nach KALINA aussehen soll, nimmt diese Dateien — keine nachgebauten Farben, kein selbst gezeichnetes Logo.

css/kalina-ci.css          Satzvorlage: @page 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 mit Deckblatt/Marke/Fußzeile versehen
tools/kalina-pdf           CLI: build · stamp · check · tokens
tokens.json                Farben, Schriften, Geometrie, Zonen (maschinenlesbar)
SKILL.md                   Einstiegspunkt für Agenten (Frontmatter + Regeln + Fallen)
docs/aenderungen.md        der verbindliche Änderungsweg

Schnellstart

git clone <dieses-repo> kalina-ci && cd kalina-ci

cp templates/report.html bericht.html        # «Platzhalter» füllen
tools/kalina-pdf build bericht.html --stamp --titel "Angebot 2026-17"

tools/kalina-pdf stamp fremd.pdf -o fremd-kalina.pdf --titel "Rechnung 4711"
tools/kalina-pdf check bericht.pdf --raster raster/

Voraussetzungen: weasyprint (Layout), pymupdf (Messung/Raster), matplotlib + pypdf (Stempel), pdftoppm optional für Sichtprüfung.

Farben

Ink #0B0F14 · Bone #F5F5EF · Kalina-Rot #C1121F · Steel #3A4250 · Muted #8A94A2

Wie Agenten das nutzen

Zwei Wege, gleicher Inhalt:

  1. Als Skill importiert (Paperclip: POST /api/companies/<id>/skills/import mit {"source": "<URL dieses Repos>"}). Der Import liest SKILL.md und alle Dateien darunter, hält ref und trackingRef fest und meldet Aktualisierungen über update-status.
  2. Als Arbeitskopie (Hermes, Skripte, Cron): Repo klonen, tools/kalina-pdf aus der Kopie aufrufen. Die CLI findet CSS, Vorlagen und Stempel relativ zu sich selbst.

Zugriff

Das Repo ist öffentlich lesbar — nicht aus Bequemlichkeit: der Skill-Import der Paperclip-Instanz holt Bäume und Rohdateien ohne Authentifizierung, ein privates Repo wäre dort nicht importierbar. Deshalb gilt die Inhaltsregel:

Keine internen Hostnamen, keine IP-Adressen, keine Zugangsschlüssel, keine Kundeninhalte. Interne Verdrahtung gehört in die jeweilige Betriebsdoku, nicht hierher.

Schreibzugriff haben mm (Owner) und das Agenten-Konto kalina (Collaborator, write). Weitere Agenten werden als Collaborator mit write aufgenommen — die CI ist kein Diskussionsgegenstand, sondern eine Vorlage, die Agenten anwenden.

Änderungen

Nicht ad hoc. Der Weg steht in docs/aenderungen.md: Issue im Repo → Branch ci/<thema> → PR → Review → Merge → CHANGELOG.md ergänzen. Wer die CI in einem Projekt „schnell anders" braucht, ändert das Projekt, nicht die CI.

S
Description
KALINA Corporate Identity - Marke, Satzvorlage, Vorlagen, Stempel, CLI. Öffentlich lesbar, damit Skill-Importe ohne Token funktionieren.
Readme
642 KiB
0 Stars 1 Watchers 0 Forks
Languages
Shell 35.5%
Python 34.9%
HTML 22.5%
CSS 7.1%