Was macht Canvas?
canvas.n3wth.com bietet interaktives Markdown mit einer gerenderten Vorschau, identifiziert durch einen öffentlichen Slug. Geöffnete Ansichten auf der Freigabe-URL werden aktualisiert, wenn die Quelle geschrieben wird.
Dieses Skill kommuniziert mit der authentifizierten HTTP-Agent-API. Kein Browser. Keine Geheimnisse in dieser Datei – der Aufrufer stellt CANVAS_AGENT_TOKEN und die Convex-Site-Basis-URL aus seiner eigenen Umgebung bereit.
Wann verwenden
- Erstelle eine gemeinsame Arbeitsfläche, die ein anderer Mensch oder Agent öffnen kann
- Markdown pushen und einen stabilen Link zurückgeben
- Eine bestehende Canvas direkt aktualisieren, sodass offene Tabs neu rendern
- Aktuelle Quelle vor dem Bearbeiten lesen
Umgebungsvariablen, die der Aufrufer bereitstellen muss
| Variable | Bedeutung |
|---|---|
CANVAS_SITE_URL | Convex HTTP-Basis, z. B. https://.convex.site (kein abschließender Schrägstrich) |
CANVAS_AGENT_TOKEN | Gemeinsamer Bearer-Token, wenn die Deployment einen konfiguriert hat |
Öffentliche Freigabe-Links verwenden immer https://canvas.n3wth.com/c/{slug} (nicht den Convex-Site-Host).
Authentifizierung: Wenn CANVAS_AGENT_TOKEN in der Convex-Deployment gesetzt ist, erfordert jede der folgenden Agent-Routen Authorization: Bearer $CANVAS_AGENT_TOKEN. Ist der Token nicht gesetzt (lokal/Entwicklung), funktionieren dieselben Routen ohne Header – setze den Token in der Produktion.
API
Authentifizierung auf jeder mutierenden/lesenden Agent-Route:
Authorization: Bearer $CANVAS_AGENT_TOKEN
Content-Type: application/json
Erkennung (ohne Authentifizierung):
curl -sS "$CANVAS_SITE_URL/agent/v1"
1. Erstellen
curl -sS -X POST "$CANVAS_SITE_URL/agent/v1/canvases" \
-H "Authorization: Bearer $CANVAS_AGENT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Meine Canvas",
"source": "# Hallo\n\nDas ist **Markdown**."
}'
Die Antwort enthält slug, url, version. Gib url an den Benutzer zurück – das ist die Canvas, die unter https://canvas.n3wth.com/c/{slug} geöffnet wird.
2. Quelle schreiben
curl -sS -X PUT "$CANVAS_SITE_URL/agent/v1/canvases/$SLUG/source" \
-H "Authorization: Bearer $CANVAS_AGENT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"source":"# Aktualisiert\n\nNeuer Inhalt hier."}'
Offene Tabs auf https://canvas.n3wth.com/c/$SLUG rendern neu, ohne dass ein Neuladen erforderlich ist.
3. Aktuelle Quelle lesen
curl -sS "$CANVAS_SITE_URL/agent/v1/canvases/$SLUG" \
-H "Authorization: Bearer $CANVAS_AGENT_TOKEN"
4. Auflisten
curl -sS "$CANVAS_SITE_URL/agent/v1/canvases" \
-H "Authorization: Bearer $CANVAS_AGENT_TOKEN"
Gibt nur Metadaten zurück (keine Quelltexte).
Agenten-Workflow
- Stelle sicher, dass
CANVAS_SITE_URLundCANVAS_AGENT_TOKENin deiner Umgebung gesetzt sind (niemals committen). POST /agent/v1/canvasesmit optionalemtitle/source.- Teile dem Menschen/anderen Agenten die
urlaus der Antwort mit (https://canvas.n3wth.com/c/{slug}). - Iteriere mit
PUT .../source, während du verfeinerst. GET .../canvases/{slug}, wenn du die aktuelle Quelle vor dem Bearbeiten benötigst.
Fehler
| Status | Bedeutung |
|---|---|
| 401 | Fehlender/falscher Bearer-Token (nur wenn die Deployment CANVAS_AGENT_TOKEN gesetzt hat) |
| 404 | Unbekannter Slug |
| 400 | Validierung (Quellgröße, JSON) |
Quelle: Hard-Limit 512 KiB Zeichen.
Außerhalb des Gültigkeitsbereichs
Kein Zeichen-Widget, keine Drittanbieter-Canvas-Produkte. Diese API ist nur Erstellen / Quelle schreiben / Lesen / Auflisten.
Portabler Installationshinweis
Kopiere diesen Ordner in skills.n3wth.com oder ein beliebiges Haushalts-Agenten-Skills-Root-Verzeichnis als canvas/SKILL.md. Weise Agenten von AGENTS.md darauf hin. Kontakt: [email protected]. GitHub: https://github.com/n3wth.