Skip to main content
Glama
danielsoimu

altweb-context

by danielsoimu

ALTWEB — signierte Kontextkapseln

Schreibe Markdown. Liefere es als eigenständiges, verifizierbares, optional verschlüsseltes Artefakt aus. Lass KI-Agenten es nur laden, wenn die Signatur gültig ist.

KI-Agenten laufen auf Klartext-Kontext: Anweisungen, Personas, Fähigkeiten, Speicherdateien. Nichts davon hat eine Herkunft — alles, was diese Dateien schreiben kann, kann sie vergiften. ALTWEB gibt Kontext eine Herkunftskette und lässt den Loader alles ablehnen, dem eine fehlt:

  • Kapsel — Markdown, kompiliert in eine einzelne .altweb.html-Datei (oder URL): Inhalt komprimiert (deflate), optional verschlüsselt (AES-256-GCM), optional signiert (ECDSA P-256). Eigenständig — öffnet in jedem Browser, verifiziert offline, benötigt keinen Server: Du gibst jemandem eine Datei, keine Datenbank.

  • Verifiziertes Kontext-Laden — der altweb-context-MCP-Server lädt eine Kapsel in deinen Agenten nur dann, wenn die Signatur gültig ist und der öffentliche Schlüssel des Unterzeichners in deiner Vertrauensdatei liegt. Unsigierte, manipulierte oder nicht vertrauenswürdige Kapseln werden beim Laden mit einem expliziten Grund abgelehnt. Ablehnung ist der Standard: Eine leere Vertrauensdatei lehnt alles ab, signiert oder nicht.

you write MD ──► altweb compile --sign ──► capsule (.altweb.html / URL)
                                              │
agent asks for context ──► altweb-context ──► verify signature + trust
                                              │
                              trusted ──► markdown injected
                          everything else ──► REFUSED (reason)

Pakete

Paket

Was es ist

@altweb/core

Headless-Engine: Inhaltsmodell, Codec, Krypto, Markdown, Sanitize

@altweb/cli

altweb compile / decode / verify / keygen

@altweb/mcp

altweb-context — MCP-Server: load_capsule, verify_capsule, list_trusted_keys

@altweb/editor

Notion-artiger Editor (auf Novel aufgebaut) mit Ein-Klick-Kapsel-Export

site/

Dokumentationsseite (Astro + Starlight)

Related MCP server: repolens

Schnellstart

npm install
npm run build

# create your signing identity (deterministic from a passphrase; only the
# public key + fingerprint are stored, in ~/.altweb/identity.json)
node packages/cli/dist/altweb.mjs keygen --save

# write, compile, sign
echo "# My agent's operating notes" > notes.md
node packages/cli/dist/altweb.mjs compile notes.md -o notes.altweb.html --sign

# verify anywhere, offline
node packages/cli/dist/altweb.mjs verify notes.altweb.html

Binde den Loader in einen MCP-Client ein (Claude-Code-Beispiel):

claude mcp add altweb-context -- node "$(pwd)/packages/mcp/dist/altweb-context.mjs"

Vertraue einem Unterzeichner, indem du seinen vollständigen öffentlichen Schlüssel zu ~/.altweb/trusted-keys.json hinzufügst (die UNTRUSTED_KEY-Ablehnungsmeldung liefert dir den fertigen Eintrag; der kurze Fingerabdruck ist ein menschliches Etikett, kein Vertrauensanker):

{ "keys": [ { "name": "Me", "publicKey": "<base64url SPKI>", "fingerprint": "ab:12:..." } ] }

Was eine Signatur beweist — und was nicht

Eine gültige Signatur beweist, wer die Kapsel verfasst hat und dass die Bytes intakt sind. Sie macht den Inhalt nicht sicher oder wahr. Die Vertrauensdatei ist deine Richtlinie; halte sie kurz.

Wähle eine lange Passphrase. Identitäten werden deterministisch aus deiner Passphrase mit einem festen globalen Salt abgeleitet (das macht sie portabel, ohne dass etwas gespeichert wird) — die Entropie der Passphrase ist also die gesamte Sicherheit der Identität. Verwende eine Phrase im Diceware-Stil mit 16+ Zeichen; die Werkzeuge erzwingen eine Mindeststärke.

Sicherheit

Inhalt wird beim Dekodieren mit DOMPurify bereinigt; Artefakte tragen eine CSP; der Codec validiert die Struktur mit zod. Siehe site/-Dokumentation → Sicherheitsmodell für die vollständige Beschreibung, einschließlich der Einschränkung der verschlüsselten Kapsel (die Signatur deckt die entschlüsselte Nutzlast ab, die Verifizierung erfolgt also nach der Entschlüsselung).

Danksagungen

Auf exzellenter Open Source aufgebaut: Novel (Apache-2.0) und Tiptap (MIT) für den Editor; DOMPurify, marked, pako, zod, @noble/curves in der Engine. Siehe NOTICE.

Lizenz

ALTWEB ist dual-lizenziert:

  • Open Source: AGPL-3.0-or-later. Frei zum Nutzen, Studieren, Modifizieren und Teilen — mit einer zentralen Verpflichtung: Wenn du ALTWEB modstest und verteilst oder als Netzwerkdienst betreibst (z. B. altweb-context für andere hostest), musst du deinen modifizierten Quellcode unter der AGPL veröffentlichen.

  • Kommerziell: nach Vereinbarung. Um ALTWEB in einem Closed-Source-Produkt oder als gehosteten Dienst zu nutzen, ohne deine Änderungen zu veröffentlichen, benötigst du eine separate kommerzielle Lizenz. Siehe COMMERCIAL.md.

Copyright © 2026 Daniel C. ȘOIMU. Gebündelte Drittanbieter-Komponenten behalten ihre eigenen (permissiven) Lizenzen — siehe NOTICE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to sign and verify actions with ML-DSA-65 digital signatures, providing tamper-proof receipts that can be verified offline without any secrets.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables LLM agents to acquire token-budgeted, deterministic context packs from repositories, with hash-chained provenance for auditability.
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to read, search, and preview governed markdown memories with explicit state and sensitivity, plus quarantine-only write, while never mutating canonical memory or exposing undeclared content.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to operate through a local, signed boundary that blocks prompt injection and secret leakage, verifies outputs, preserves cross-session memory, and provides offline-verifiable receipts. It also exposes 900+ MCP tools for discoverable agent actions.
    7
    MIT