Communitygithub.com

Backend-Autoritäres Laufzeit-Refactoring

Refaktoriere Apps, sodass das Backend die Laufzeitwahrheit besitzt und die UI nur Momentaufnahmen projiziert. Verwende dies, wenn Werkzeuge geteilte Autorität haben. Nicht für kosmetische UI-Arbeiten oder neue Funktionen, bevor die Abweichung beseitigt ist.

Was ist Backend-Autoritäres Laufzeit-Refactoring?

Diese Fähigkeit dient dem Refactoring von Anwendungen, bei denen die Autorität über den Laufzeitzustand zwischen Frontend und Backend geteilt ist. Sie zielt darauf ab, das Backend als alleinige Quelle der Wahrheit zu etablieren, während die UI nur projizierte Zustände (Snapshots) anzeigt. Die Fähigkeit wird typischerweise in KI-Agenten wie Claude Code, Cursor oder Codex eingesetzt und basiert auf einer detaillierten SKILL.md-Dokumentation. Sie beschreibt einen strukturierten Arbeitsablauf: Zuerst wird die „geteilte Intelligenz“ inventarisiert, dann wird ein Vertrag aus Befehlen, Abfragen und Ereignissen definiert, die Zustandsverantwortlichkeiten werden normalisiert, aktive Kompatibilitätsbrüche werden gelöscht, und schließlich werden Evaluatoren zur Überprüfung der Korrektheit hinzugefügt. Die Fähigkeit ist besonders nützlich in Szenarien, in denen die UI Laufzeitlogik enthält (z. B. Graph- oder Phasenerstellung), die das Backend nicht kennt, und wo ein Neustart oder eine erneute Verbindung den sichtbaren Zustand ändert, weil das Frontend zwischengespeicherte Autorität besaß. Sie ist nicht für rein kosmetische UI-Arbeiten, isolierte Komponenten-Refactorings oder die Einführung neuer Funktionen gedacht, bevor die Autoritätstrennung beseitigt wurde. Die Qualitätssicherung umfasst acht Prüfpunkte, darunter die Sicherstellung, dass die UI keine Laufzeitwahrheit erfinden kann und dass der Zustand nach einem Neustart allein aus der Backend-Wahrheit wiederhergestellt wird.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/curiositech/windags-skills/tree/HEAD/skills/backend-authoritative-runtime-refactor

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht Backend-Autoritäres Laufzeit-Refactoring?

Führe das Refactoring nur durch, wenn du genau sagen kannst, wo die Ausführungswahrheit lebt und wie die UI sie liest.

Wann verwenden

  • Die UI synthetisiert Graphen, Phasen oder Provider-Auswahlen, die das Backend nicht versteht.
  • Ein Neustart oder eine erneute Verbindung ändert den sichtbaren Laufzeitzustand, weil das Frontend die Autorität zwischengespeichert hat.
  • Alte und neue Schemata, Starterformate oder Knotentypen koexistieren im aktiven Authoring-Pfad.
  • Genehmigung, Überprüfung oder nachgelagerte Ausführung hängen von einer Frontend-Rekonstruktion ab.

Nicht geeignet für

  • Kosmetische visuelle Bereinigung ohne Änderung der Laufzeitbesitzer.
  • Isolierte Komponenten-Refactorings, bei denen der Backend-Vertrag bereits autoritär ist.
  • Auslieferung neuer Geschäftsfunktionen, bevor die Nahtstelle geteilter Autorität entfernt wurde.
  • Reine Backend-Performance-Arbeiten, wenn die Architektur bereits eine einzige Quelle der Wahrheit hat.

Entscheidungspunkte

flowchart TD
  A[Anfrage zum Workflow-Refactoring] --> B{Kann die UI immer noch Laufzeitwahrheit erfinden?}
  B -->|Nein| C[Verwende eine engere Domäne oder UI-Fähigkeit]
  B -->|Ja| D[Inventarisiere Befehls-, Abfrage- und Ereignisbrüche]
  D --> E{Kann jede Benutzeraktion einem Befehl, einer Abfrage oder einem Ereignis zugeordnet werden?}
  E -->|Nein| F[Friere den Vertrag ein, bevor Feature-Arbeit beginnt]
  E -->|Ja| G[Trenne den Projektionszustand vom Backend-eigenen Zustand]
  G --> H{Sind Legacy-Kompatibilitätspfade noch aktiv?}
  H -->|Ja| I[Verschiebe sie in Migrationskanten oder lösche sie]
  H -->|Nein| J[Füge Evaluatoren, wiedergabesichere Startabfragen und Ereignisabonnements hinzu]
  I --> J
  J --> K[Validiere Wiederherstellung, Genehmigung und nachgelagerte Bereitschaft]

Verwende zuerst dieses Routing-Modell:

  • Wenn die UI nicht als Befehl -> Backend-Übergang -> Abfrage- oder Ereignisprojektion beschrieben werden kann, ist die Nahtstelle noch falsch.
  • Wenn sich ein „temporärer Kompatibilitäts“-Pfad im heißen Pfad befindet, behandle ihn als Refactoring-Schuld, nicht als Feature.
  • Wenn ein Neustart oder eine erneute Verbindung den sichtbaren Zustand nicht allein aus der Backend-Wahrheit rekonstruieren kann, ist das Refactoring unvollständig.

Arbeitsmethode

1. Inventarisiere die geteilte Intelligenz

Finde alle Stellen, an denen die UI:

  • Ausführungswahrheit erzeugt oder mutiert
  • Phasen erfindet, die das Backend nicht kennt
  • Ausführung in aktiven Codepfaden simuliert
  • Sowohl alte als auch neue Schemata im selben Authoring-Pfad beibehält
  • Abstrakte Routing-Ebenen mit genauen Provider-IDs vermischt

2. Friere den Vertrag ein

Definiere nur drei Klassen:

  • Befehle: starten, stoppen, genehmigen, fortsetzen, mutieren
  • Abfragen: Startzustand, Prüf-Payload, Ausführungs-Snapshot, Provider-Health
  • Ereignisse: autoritäre Übergänge, Bewerterentscheidungen, Gate-Status, Wiedergabe-Marker

Wenn eine UI-Aktion nicht als eine dieser Klassen ausgedrückt werden kann, ist die Architektur noch unscharf.

3. Normalisiere die Zustandsverantwortung

Teile Stores auf in:

  • Vertragseingabezustand
  • Backend-Snapshot-Projektionszustand
  • UI-Layout-Zustand

Erlaube keinem Store, sowohl Laufzeitwahrheit als auch Layout-Belange zu besitzen.

4. Lösche aktive Kompatibilitätsbrüche

Bevorzuge Löschen gegenüber „beides vorerst unterstützen“.

Typische Löschungen:

  • Einzel- und Plural-Schema-Kompatibilität im aktiven Authoring
  • Browser- oder Demo-Simulation im aktiven Desktop-Laufzeitsystem
  • Veraltete Knotentypen im Hauptpfad
  • Doppelte Prüfzusammenfassungen
  • Mehrere Starter- oder Importformate

5. Füge Evaluatoren hinzu, bevor du dem Refactoring vertraust

Jeder Implementierungsknoten sollte haben:

  • einen lokalen Ausgabe-Evaluator für Korrektheit
  • einen nachgelagerten Bereitschafts-Evaluator für Vertragssicherheit
  • einen Neustart- oder Wiederverbindungspfad, der aus der Backend-Wahrheit rehydriert, nicht aus Frontend-Schätzungen

Fehlermodi

Projektion, die als Autorität auftritt

Symptom: Die UI sieht „schreibgeschützt“ aus, setzt aber leise Phasen-, Graph- oder Provider-Wahrheit lokal zusammen.

Behebung: Verschiebe diese Logik in Backend-Befehle oder -Abfragen und behandle das Frontend als Projektor.

Verkalkung des Kompatibilitätsbrüches

Symptom: „Beides vorerst unterstützen“ bleibt wochenlang im heißen Pfad und wird zur tatsächlichen Architektur.

Behebung: Verschiebe Kompatibilität auf unidirektionale Migrationskanten mit explizitem Löschdatum oder entferne sie jetzt.

Genehmigung ohne Prüfbarkeit

Symptom: Ein Mensch kann Arbeit genehmigen, die er nicht prüfen kann, weil die Prüf-Payload unvollständig oder vom Frontend synthetisiert ist.

Behebung: Das Backend muss die exakte Prüf-Payload emittieren; die UI rendert sie nur.

Wiedergabefeindlicher Start

Symptom: Ein Neustart der App ändert den sichtbaren Zustand oder verliert die Gate-Position, weil das Frontend die Autorität zwischengespeichert hat.

Behebung: Der Start muss eine Abfrage gegen die Backend-Wahrheit plus Ereigniswiedergabe sein, keine Store-Rekonstruktion.

Erkennungsmerkmal

Wenn ein Neustart der App den sichtbaren Laufzeitzustand ohne ein neues Backend-Ereignis ändert, ist die Autorität immer noch geteilt.

Ausgearbeitetes Beispiel

Tauri-Workflow-Editor mit Frontend-eigener Phasenlogik

Problem:

  • React-Stores authored den Graphen, leiteten den Phasenzustand ab und normalisierten Provider-Ebenen.
  • Die Backend-Ausführung verwendete einen anderen Vertrag, sodass Prüf- und Neustartflüsse auseinanderdrifteten.

Refactoring-Pfad:

  1. Inventarisiere jede Stelle, an der die UI Ausführungswahrheit erfand.
  2. Reduziere Laufzeitinteraktionen auf Befehle, Abfragen und Ereignisse.
  3. Verschiebe Provider-Normalisierung und Phasenübergänge hinter Backend-Befehle.
  4. Lösche Starter-Format-Vereinigungen aus dem aktiven Authoring-Pfad.
  5. Füge Evaluator-Gates hinzu, sodass nachgelagerte Arbeit nur von Backend-validierten Ausgaben ausgeht.

Erfolgsbedingung:

  • Beim Neustart rekonstruiert die UI denselben sichtbaren Zustand aus dem Backend-Snapshot plus Ereignissen.
  • Genehmigungsbildschirme rendern eine vom Backend emittierte Prüf-Payload, keine React-Rekombination.

Fork-Anleitung

Forke, wenn die Arbeit sich sauber trennen lässt:

  • Vertragsspur: Inventarisiere geteilte Autoritätsbrüche und definiere Befehle, Abfragen und Ereignisse.
  • Löschspur: Entferne Kompatibilitätsschichten, veraltete Knotentypen und Starter-Format-Vereinigungen.
  • Verifikationsspur: Füge Evaluator-Gates, Wiedergabetests und Neustart- oder Wiederverbindungsabdeckung hinzu.

Behalte endgültige Besitzentscheidungen in der übergeordneten Spur, sodass ein Akteur entscheidet, was das Backend wirklich besitzt.

Qualitätstore

  • Die UI kann Graph-, Phasen-, Provider- oder Gate-Wahrheit nicht lokal erfinden.
  • Jede Benutzeraktion ist einem Befehl, einer Abfrage oder einem Ereignis zugeordnet.
  • Der Laufzeitzustand überlebt Neustart und erneute Verbindung allein aus der Backend-Wahrheit.
  • Prüf- und Genehmigungs-Payloads werden vom Backend emittiert und von der UI gerendert.
  • Kompatibilitätslogik lebt nur auf Migrationskanten, nicht im aktiven Pfad.
  • Die nachgelagerte Ausführung stoppt bei Vertragsverletzung des Upstreams.
  • Exakte Provider-IDs und Modellauswahlen sind an der Vertragsgrenze sichtbar.
  • Tests decken Neustart-, Wiederverbindungs-, Genehmigungs- und Evaluatorfehlerpfade ab.

Referenzkarte

  • references/architecture-patterns.md — Backend-eigene Workflow-Vertragsmuster und Zustandsbesitz-Trennungen.
  • references/windags-lessons.md — konkrete Lehren aus einer echten Migration geteilter Autorität zur Laufzeit.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

curiositech/windags-skills

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

curiositech/windags-skills

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

curiositech/windags-skills

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

curiositech/windags-skills

Implement WCAG 2.2 AA/AAA compliance with automated testing, keyboard navigation, screen reader support, and focus management. Activate on: accessibility audit, WCAG compliance, keyboard navigation, screen reader, aria attributes, axe-core, focus trap. NOT for: design-level accessibility review (use design-accessibility-auditor), color contrast only (use css-in-js-architect).

curiositech/windags-skills

Time-blind friendly planning, executive function support, and daily structure for ADHD brains. Specializes in realistic time estimation, dopamine-aware task design, and building systems that actually work for neurodivergent minds.

curiositech/windags-skills

Designs digital experiences for ADHD brains using neuroscience research and UX principles. Expert in reducing cognitive load, time blindness solutions, dopamine-driven engagement, and compassionate design patterns. Activate on 'ADHD design', 'cognitive load', 'accessibility', 'neurodivergent UX', 'time blindness', 'dopamine-driven', 'executive function'. NOT for general accessibility (WCAG only), neurotypical UX design, or simple UI styling without ADHD context.

curiositech/windags-skills

>- Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

curiositech/windags-skills

Extend and modify the admin dashboard, developer portal, and operations console. Use when adding new admin tabs, metrics, monitoring features, or internal tools. Activates for dashboard development, analytics, user management, and internal tooling.

curiositech/windags-skills

Conversation patterns and interaction protocols for multi-agent systems. Covers request/response, pub/sub, blackboard, delegation chains, debate, critique, consensus, fan-out/fan-in, supervisor-worker, and peer negotiation. Deep analysis of AutoGen conversation patterns, CrewAI delegation, LangGraph state passing, and FIPA-ACL performatives. Teaches how to design what agents say to each other and in what order. Activate on: "agent conversation", "agent protocol", "multi-agent debate", "agent delegation", "supervisor worker pattern", "agent voting", "consensus protocol", "fan-out fan-in", "agent negotiation", "blackboard pattern", "agent dialogue", "conversation topology", "agent handoff". NOT for: wire format or serialization (use agent-interchange-formats), orchestration infrastructure (use agentic-infrastructure-2026), single agent behavior (use agentic-patterns).

curiositech/windags-skills

Meta-agent for creating new custom agents, skills, and MCP integrations. Expert in agent design, MCP development, skill architecture, and rapid prototyping. Activate on 'create agent', 'new skill', 'MCP server', 'custom tool', 'agent design'. NOT for using existing agents (invoke them directly), general coding (use language-specific skills), or infrastructure setup (use deployment-engineer).

curiositech/windags-skills

AI-powered calendar management and agent-based scheduling coordination. Covers calendar APIs (Google Calendar, CalDAV/iCal), AI scheduling assistants (Reclaim, Clockwise, Motion, Cal.com), building custom calendar agents with MCP, multi-calendar merging, timezone management, focus block protection, meeting fatigue detection, and agent-to-agent meeting negotiation protocols. Activate on: "calendar agent", "AI scheduling", "calendar coordination", "meeting scheduling", "calendar API", "focus time protection", "calendar optimization", "Google Calendar MCP", "Reclaim", "Clockwise", "Motion", "Cal.com", "smart scheduling", "calendar-aware agent", "timezone scheduling", "agent negotiation meetings". NOT for: manual calendar UI component design (use form-validation-architect), project management scheduling or Gantt charts (use project-management-guru-adhd), general time-tracking or pomodoro apps (use adhd-daily-planner for time-awareness), building the agent itself from scratch (use agent-creator).

curiositech/windags-skills

Build and adopt production AI agent infrastructure in 2026. Covers framework selection (LangGraph, CrewAI, AutoGen, MCP), orchestration patterns, evaluation, observability, memory systems, and tool use. Also covers the SOCIAL dimension: how to sell agent infrastructure internally, change management, measuring ROI, building trust in autonomous systems, and scaling adoption across teams. Activate on: "agent infrastructure", "agent framework comparison", "which agent framework", "sell AI tools internally", "agent adoption", "agent observability", "agent evaluation", "MCP architecture", "agentic mesh", "enterprise AI agents", "AI change management", "agent ROI". NOT for: building specific agents (use ai-engineer), designing agent behavior patterns (use agentic-patterns), prompt tuning (use prompt-engineer).

curiositech/windags-skills

Fundamental patterns for effective agentic behavior. Teaches decomposition, tool orchestration, error recovery, context management, quality self-assessment, and knowing when to stop. Model-agnostic principles that make any agent more effective regardless of domain. Activate on: "how should I structure this agent", "agentic workflow", "agent patterns", "multi-step task", "tool orchestration", "/agentic-patterns", "decompose this", "agent best practices", "chain of actions", "when should the agent stop", "agent loop design". NOT for: creating agent infrastructure (use agent-creator), building DAGs (use windags-architect), specific tool implementation.

curiositech/windags-skills

Automated discovery and matching of agent skills for dynamic task routing and capability assessment

curiositech/windags-skills

Cryptographic security for agentic systems — zero-trust agent networking, signed message envelopes (JWS/JWE), capability-based security (ocaps), Merkle tree audit trails, WASM sandboxing, and formal verification. Covers CLI dev tool security, mTLS between agents, permission boundaries (least privilege for AI agents), and supply chain security for skills/plugins. Activate on: "agent security", "zero trust agents", "secure agent communication", "capability-based security", "ocap", "signed messages between agents", "agent audit trail", "sandbox agent execution", "agent permissions", "mTLS agents", "cryptographic verification", "agent supply chain", "OWASP agentic", "prove agent did X", "tamper-proof agent logs". NOT for: application-level SAST scanning (use security-auditor), network firewall rules (use infrastructure), SOC2/HIPAA compliance (organizational), or prompt injection defense (use prompt-engineer).

curiositech/windags-skills

Data structures and serialization formats for agent-to-agent communication. Covers message envelopes, structured output schemas, capability declarations, task handoff payloads, error/retry signaling, and context windows as data structures. Deep comparison of A2A protocol, MCP, OpenAI function calling, and LangChain message types. Teaches when to use rigid schemas vs free-form with validation, typed vs untyped, streaming vs batch. Activate on: "agent message format", "agent communication schema", "agent-to-agent protocol", "A2A protocol", "MCP message format", "structured output for agents", "agent interop", "interchange format", "agent serialization", "task handoff format", "capability declaration". NOT for: what agents say to each other (use agent-conversation-protocols), orchestration topology (use multi-agent-coordination), building agent infrastructure (use agentic-infrastructure-2026).

curiositech/windags-skills

Logic-based agent programming language implementing BDI architecture for practical autonomous agent development

curiositech/windags-skills

>- Design AgentSpeak(L)-style BDI agents with context-guarded plans, selection functions, and intention stacks. Use for interruptible autonomy, agent policy, and multi-agent orchestration in dynamic environments. NOT for simple rule engines, static planners, or centralized workflows.

curiositech/windags-skills

Foundational concurrent computation model where actors communicate exclusively through asynchronous message passing

curiositech/windags-skills

license: Apache-2.0 NOT for unrelated tasks outside this domain.

Verwandte Skills