Zum Inhalt springen
FINTERY

MARKETPLACE · OFFENER STANDARD

fintery.json: eine Datei, die ein System erklärt.

Jedes System auf dem Fintery Marketplace liefert ein Manifest mit: wie es startet, welche personenbezogenen Daten es speichert, welche KI es aufruft und wie es entstanden ist. Das Format ist offen, als JSON Schema veröffentlicht, und jeder Builder kann es heute schreiben.

FINTERY.JSON● MANIFEST_VERSION 0
  • ↳ runtimebootet in Compose
  • ↳ data_mapgegen das Schema geprüft
  • ↳ ai_surfacenur Alias-IDs
  • ↳ provenanceKI-Anteil offengelegt

geprüft, nicht behauptet

Warum ein Manifest

Prüfbar statt versprochen

Ein Manifest macht Aussagen, die sich nachprüfen lassen. Der Fintery Auditor startet das Archiv mit der deklarierten Compose-Datei, vergleicht die Datenübersicht mit dem tatsächlichen Schema und lehnt datierte Modell-IDs ab. Was im Manifest steht und nicht stimmt, wird zum Befund im veröffentlichten Audit.

Referenz

Jedes Feld, jede Regel

Alle Abschnitte sind Pflicht. Leere Listen sind erlaubt, wo ein System schlicht nichts zu deklarieren hat.

manifest_version

Die Version dieses Formats. Heute immer 0.

manifest_version

RegelDie Zahl 0

WozuÄndert sich das Format inkompatibel, steigt diese Zahl, und alte Manifeste bleiben lesbar.

system

Was das System ist und unter welcher Lizenz es verkauft wird.

system.slug

RegelKleinbuchstaben in kebab-case, zum Beispiel strategy-dashboard

WozuWird zur URL des Listings.

system.name

RegelMindestens zwei Zeichen

WozuDer Name, den Käufer sehen.

system.version

RegelSemver MAJOR.MINOR.PATCH, ohne v davor

WozuJedes Audit gilt für genau eine Version. Ein neues Archiv braucht eine neue Nummer.

system.category

RegelEine von: sales, hr-hiring, finance, operations, marketing, analytics, legal-compliance

WozuOrdnet das System der Aufgabe zu, die es erledigt.

system.license

RegelLizenzkennung, zum Beispiel fintery-perpetual-v1

WozuKäufer sollen vor dem Kauf wissen, was sie besitzen.

runtime

Wie das System startet. Docker Compose ist das einzige Ziel, damit jedes System gleich bootet.

runtime.target

Regel"docker-compose"

WozuDer Auditor startet jedes Archiv mit docker compose up und prüft, ob es antwortet.

runtime.compose_file

RegelPfad zur Compose-Datei im Archiv

WozuDamit niemand raten muss, welche Datei gemeint ist.

runtime.env[]

Regelname in UPPER_SNAKE_CASE, required als true oder false, description nicht leer

WozuJede Variable, die das System liest, wird erklärt. Eine undeklarierte Pflichtvariable ist ein Befund.

data_map

Welche personenbezogenen Daten das System speichert, wozu und wie lange. Die Grundlage für DSGVO-Verzeichnis und AVV.

data_map.personal_data[]

Regelfield, purpose und retention, jeweils nicht leer. Eine leere Liste ist erlaubt.

WozuDas Audit liest das Datenbankschema und vergleicht. Ein Feld, das der Code schreibt und die Liste verschweigt, gilt als Befund.

ai_surface

Welche KI das System aufruft. Transparenz im Sinne des EU AI Act.

ai_surface.agents[]

Regelname, optional protocol mit dem Wert mcp

WozuAgenten, die das System bereitstellt, sind auffindbar statt versteckt.

ai_surface.models[]

RegelAlias-IDs wie claude-sonnet-4-6. Datierte Snapshots mit -JJJJMMTT am Ende werden abgelehnt.

WozuDatierte Snapshots werden abgeschaltet, und ein gekauftes System soll nicht an einem Stichtag stehen bleiben.

provenance

Wie das System entstanden ist.

provenance.ai_generated

Regeltrue / false

WozuKI-Code ist willkommen. Verschwiegen werden darf er nicht.

provenance.tools[]

RegelWerkzeuge, zum Beispiel claude-code

WozuKäufer sehen, womit gebaut wurde.

provenance.human_reviewed

Regeltrue / false

WozuOb ein Mensch den Code gelesen hat, bevor er verkauft wird.

demo

Wie man das System mit Beispieldaten sieht.

demo.seed_command

RegelEin Befehl, nicht leer

WozuDer Auditor und jeder Käufer sollen in Minuten etwas Echtes sehen, nicht einen leeren Bildschirm.

Beispiel

Aus einem echten, gelisteten System

Gekürzt aus dem Manifest im Archiv des Landing + AI Concierge Kit 1.0.2. Es besteht dieselbe Prüfung, die jede Einreichung besteht.

{
  "$schema": "https://fintery.com/marketplace/fintery.schema.json",
  "manifest_version": 0,
  "system": {
    "slug": "landing-concierge-kit",
    "name": "Landing + AI Concierge Kit",
    "version": "1.0.2",
    "category": "marketing",
    "license": "fintery-perpetual-v1"
  },
  "runtime": {
    "target": "docker-compose",
    "compose_file": "docker-compose.yml",
    "env": [
      {
        "name": "CONTACT_WEBHOOK_URL",
        "required": false,
        "description": "Where contact form submissions are forwarded."
      },
      {
        "name": "OPENAI_API_KEY",
        "required": false,
        "description": "Enables the AI concierge. Without it the concierge falls back to scripted answers."
      },
      {
        "name": "NEXT_PUBLIC_SITE_URL",
        "required": false,
        "description": "Public URL of the site, used for canonical links."
      }
    ]
  },
  "data_map": {
    "personal_data": [
      {
        "field": "email (contact form)",
        "purpose": "Lead capture: lets you respond to the inquiry",
        "retention": "Forwarded to your CONTACT_WEBHOOK_URL, not stored by the kit"
      },
      {
        "field": "concierge chat messages",
        "purpose": "Answering visitor questions and turn by turn lead qualification",
        "retention": "Processed in memory per request; not stored by the kit"
      }
    ]
  },
  "ai_surface": {
    "agents": [],
    "models": [
      "gpt-4.1-mini"
    ]
  },
  "provenance": {
    "ai_generated": true,
    "tools": [
      "claude-code"
    ],
    "human_reviewed": true
  },
  "demo": {
    "seed_command": "npm ci && npm run dev"
  }
}

Das Listing dieses Systems ansehen

Selbst prüfen

Vor dem Einreichen validieren

Das Schema folgt JSON Schema Draft 2020-12 und funktioniert mit jedem gängigen Validator und mit Editoren, die $schema verstehen. Die eine Regel, die ein Schema nicht vollständig ausdrückt, steht dort trotzdem als Muster: Modell-IDs dürfen nicht auf ein Datum enden.