<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
    <id>https://muench.dev/feed/atom</id>
    <title type="text">muench.dev Articles</title>
    <subtitle type="text">muench.dev Feed</subtitle>
    <link xmlns="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="https://muench.dev/feed/atom"/>
    <updated>2026-07-01T11:17:52+02:00</updated>
    <generator uri="https://github.com/mitydigital/feedamic" version="3.0.13">Feedamic: the Atom and RSS Feed generator for Statamic</generator>
    <entry>
        <title type="text">mage-remote-run mit JSON Body Support und anderen neuen Features</title>
        <link href="https://muench.dev/post/2026-06-mage-remote-run-mit-json-body-support-in-virtual-commands"/>
        <id>https://muench.dev/post/2026-06-mage-remote-run-mit-json-body-support-in-virtual-commands</id>
        <published>2026-06-25T07:00:00+00:00</published>
        <updated>2026-06-25T20:28:48+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Zwei Releases an einem Tag - das passiert, wenn Features bereit sind. Am 17. Juni 2026 haben ich v1.9.0 und v1.10.0 von &lt;a href=&quot;https://github.com/muench-dev/mage-remote-run&quot;&gt;mage-remote-run&lt;/a&gt; veröffentlicht. Das Highlight in v1.9: Virtual Commands unterstützen jetzt JSON Request Bodies — POST- und PUT-Requests gegen die Magento REST API sind damit ohne eigenen JavaScript-Code möglich. v1.10 bringt eine sauberere Plugin-Infrastruktur: Inkompatible Plugins werden jetzt beim Laden erkannt und mit klarer Fehlermeldung abgewiesen.&lt;/p&gt;
&lt;h2&gt;v1.9.0: Virtual Commands mit JSON Body, Choices und interaktiven Prompts&lt;/h2&gt;
&lt;p&gt;Virtual Commands sind seit v1.4 ein zentrales Erweiterungs-Feature: REST-Requests per Konfiguration definieren, ohne JavaScript schreiben zu müssen. Bisher waren sie auf GET-Requests beschränkt. Das ist jetzt Geschichte.&lt;/p&gt;
&lt;h3&gt;JSON Body Templates&lt;/h3&gt;
&lt;p&gt;Mit &lt;code&gt;body&lt;/code&gt; in der Command-Definition lassen sich POST- und PUT-Requests direkt aus der Konfiguration absetzen. Der Body ist ein JSON-Template. Optionen werden als Platzhalter eingebettet und zur Laufzeit ersetzt.&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-json hljs json&quot; data-lang=&quot;json&quot;&gt;{
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;name&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;customer update-email&quot;&lt;/span&gt;,
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;method&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;PUT&quot;&lt;/span&gt;,
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;endpoint&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;/V1/customers/:id&quot;&lt;/span&gt;,
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;description&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;Update customer email address&quot;&lt;/span&gt;,
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;body&quot;&lt;/span&gt;: {
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;customer&quot;&lt;/span&gt;: {
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;id&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;:id&quot;&lt;/span&gt;,
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;email&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;:email&quot;&lt;/span&gt;
    }
  },
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;options&quot;&lt;/span&gt;: {
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;id&quot;&lt;/span&gt;: {
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;type&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;string&quot;&lt;/span&gt;,
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;required&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-literal&quot;&gt;true&lt;/span&gt;,
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;description&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;Customer ID&quot;&lt;/span&gt;
    },
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;email&quot;&lt;/span&gt;: {
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;type&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;string&quot;&lt;/span&gt;,
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;required&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-literal&quot;&gt;true&lt;/span&gt;,
      &lt;span class=&quot;hljs-attr&quot;&gt;&quot;description&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;New email address&quot;&lt;/span&gt;
    }
  }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;mage-remote-run customer update-email --id 42 --email new@example.com
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Damit öffnet sich die gesamte Magento REST API für Virtual Commands und eben nicht nur lesende Operationen, sondern auch schreibende Workflows, ohne eigenen Plugin-Code.&lt;/p&gt;
&lt;p&gt;Die vollständige Dokumentation dazu findet ihr unter: &lt;a href=&quot;https://mage-remote-run.muench.dev/extensibility/virtual-commands&quot;&gt;mage-remote-run.muench.dev/extensibility/virtual-commands&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Choices für Options-Definitionen&lt;/h3&gt;
&lt;p&gt;Optionen können jetzt vordefinierte Auswahlwerte bekommen. Das macht Commands benutzerfreundlicher und verhindert ungültige Eingaben:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-json hljs json&quot; data-lang=&quot;json&quot;&gt;&lt;span class=&quot;hljs-string&quot;&gt;&quot;options&quot;&lt;/span&gt;: {
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;status&quot;&lt;/span&gt;: {
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;type&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;string&quot;&lt;/span&gt;,
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;required&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-literal&quot;&gt;true&lt;/span&gt;,
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;description&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;Order status&quot;&lt;/span&gt;,
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;choices&quot;&lt;/span&gt;: [&lt;span class=&quot;hljs-string&quot;&gt;&quot;pending&quot;&lt;/span&gt;, &lt;span class=&quot;hljs-string&quot;&gt;&quot;processing&quot;&lt;/span&gt;, &lt;span class=&quot;hljs-string&quot;&gt;&quot;complete&quot;&lt;/span&gt;, &lt;span class=&quot;hljs-string&quot;&gt;&quot;canceled&quot;&lt;/span&gt;]
  }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Im interaktiven Modus erscheinen die &lt;code&gt;choices&lt;/code&gt; als Auswahlmenü. Per CLI werden ungültige Werte direkt zurückgewiesen.&lt;/p&gt;
&lt;h3&gt;Interaktive Prompts für fehlende Pflichtoptionen&lt;/h3&gt;
&lt;p&gt;Virtual Commands fragen fehlende Required Options jetzt interaktiv ab anstatt mit einer Fehlermeldung abzubrechen. Das Verhalten hängt vom Kontext ab: Im Terminal erscheint ein Prompt, in CI/CD-Pipelines wird der Fehler wie bisher ausgegeben. Soweit möglich werden Variablen die bereits von CI/CD Systemen wie Gitlab-CI oder Github Actions standardmäßig definiert wurden (wie &lt;code&gt;CI=1&lt;/code&gt;), automatisch erkannt, sodass der interaktive Modus nicht die Pipeline blockieren kann.&lt;/p&gt;
&lt;p&gt;Für Pipelines lässt sich der interaktive Modus aber auch explizit deaktivieren:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;NON_INTERACTIVE=1 mage-remote-run my-command
&lt;span class=&quot;hljs-comment&quot;&gt;# alternativ:&lt;/span&gt;
NONINTERACTIVE=1 mage-remote-run my-command
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Beide Environment-Variablen werden als Alias akzeptiert an das Homebrew-Konvention-Feeling für Shell-Scripting.&lt;/p&gt;
&lt;h3&gt;Weitere Änderungen in v1.9&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Performance&lt;/strong&gt;: Config-I/O läuft jetzt vollständig asynchron (&lt;code&gt;fs.promises&lt;/code&gt; statt synchronem &lt;code&gt;fs&lt;/code&gt;) — spürbar bei häufigen Profil-Wechseln&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Performance&lt;/strong&gt;: &lt;code&gt;findRegisteredPluginIndex&lt;/code&gt; nutzt &lt;code&gt;Promise.all&lt;/code&gt; für parallele Prüfungen&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fix&lt;/strong&gt;: Verschluckte Fehler in Catch-Blöcken wurden repariert — Fehler sind jetzt sichtbar statt still ignoriert&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Refactoring&lt;/strong&gt;: Duplicated Filter-Matching-Logik wurde in &lt;code&gt;parseFilterOption&lt;/code&gt; extrahiert&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deps&lt;/strong&gt;: axios, zod, inquirer und @modelcontextprotocol/sdk auf aktuelle Versionen gehoben&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;v1.10.0: Plugin-Kompatibilitätsprüfung über peerDependencies&lt;/h2&gt;
&lt;p&gt;Plugins deklarieren seit v1.6 eine &lt;code&gt;peerDependency&lt;/code&gt; auf &lt;code&gt;mage-remote-run&lt;/code&gt;. Ab v1.10 wird diese beim Laden tatsächlich ausgewertet.&lt;/p&gt;
&lt;p&gt;Wenn ein Plugin eine Version von &lt;code&gt;mage-remote-run&lt;/code&gt; voraussetzt, die nicht mit der installierten übereinstimmt, bricht das Laden mit einer klaren Fehlermeldung ab — statt mit unerklärlichem Laufzeitverhalten.&lt;/p&gt;
&lt;p&gt;Das ist das übliche Prinzip: explizit schlechter als stumm falsch. Wer Plugins entwickelt oder nutzt, deklariert die &lt;code&gt;peerDependency&lt;/code&gt; in der &lt;code&gt;package.json&lt;/code&gt; des Plugins:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-json hljs json&quot; data-lang=&quot;json&quot;&gt;{
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;name&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;my-mage-remote-run-plugin&quot;&lt;/span&gt;,
  &lt;span class=&quot;hljs-attr&quot;&gt;&quot;peerDependencies&quot;&lt;/span&gt;: {
    &lt;span class=&quot;hljs-attr&quot;&gt;&quot;mage-remote-run&quot;&lt;/span&gt;: &lt;span class=&quot;hljs-string&quot;&gt;&quot;&amp;gt;=1.10.0&quot;&lt;/span&gt;
  }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Die Prüfung läuft beim Plugin-Laden — noch bevor Commands registriert werden. Inkompatible Plugins werden übersprungen und der Fehler protokolliert.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Update&lt;/h2&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;npm update -g mage-remote-run
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Oder direkt auf die aktuelle Version:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;npm install -g mage-remote-run@latest
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Feedback und Bugreports wie immer via &lt;a href=&quot;https://github.com/muench-dev/mage-remote-run/issues&quot;&gt;GitHub Issues&lt;/a&gt;. Wer Virtual Commands produktiv einsetzt oder Plugins entwickelt... ich freue mich über Erfahrungsberichte.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">valantic wird Anthropic Partner – und ich war dabei</title>
        <link href="https://muench.dev/post/2026-06-valantic-wird-anthropic-partner-und-ich-war-dabei"/>
        <id>https://muench.dev/post/2026-06-valantic-wird-anthropic-partner-und-ich-war-dabei</id>
        <published>2026-06-18T08:46:00+00:00</published>
        <updated>2026-06-18T10:56:47+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;valantic ist offiziell &lt;a href=&quot;https://www.valantic.com/de/blog/valantic-tritt-claude-partner-network-von-anthropic-bei/&quot;&gt;&lt;strong&gt;Select Partner im Claude Partner Network (Services Track)&lt;/strong&gt;&lt;/a&gt; von Anthropic geworden - eines der ersten Consulting- und Solutions-Unternehmen in Europa überhaupt. Ich durfte an diesem Prozess inhaltlich mitwirken und war selbst Teil der Schulung, die dazu notwendig war.&lt;/p&gt;
&lt;h2&gt;Was diese Partnerschaft bedeutet&lt;/h2&gt;
&lt;p&gt;Eine Partnerschaft mit Anthropic ist kein reines Marketing-Abkommen. Um Select Partner zu werden, muss man nachweisen, dass man die Materie wirklich versteht: Claude, das Anthropic-Ökosystem, die Architektur hinter Agenten-Systemen. Und man muss in der Lage sein, dieses Wissen weiterzugeben – intern an Kolleginnen und Kollegen, aber auch in Kundenprojekten und Schulungen.&lt;/p&gt;
&lt;p&gt;Der Gedanke dahinter ist nachvollziehbar: Anthropic will sicherstellen, dass Implementierungspartner nicht nur Lizenzen verkaufen, sondern echten Mehrwert liefern. Das setzt voraus, dass die Leute, die Kunden beraten, wissen, wovon sie reden.&lt;/p&gt;
&lt;h2&gt;London: Schulung zum Trainer&lt;/h2&gt;
&lt;p&gt;Ein Teil dieses Nachweises war eine Schulung in London, die ich zusammen mit meinem Kollegen Alexander Weinfurter besuchen durfte. Das Ziel war klar: Wir sollten das Wissen erwerben, um andere zu schulen – sowohl intern bei valantic als auch für Kunden.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-06/anthropic-partner-bootcamp-london-collage.png&quot; alt=&quot;Zwei Personen lächeln in die Kamera, während sie in einem Raum sitzen. Im Hintergrund sind ein Mann und ein Tisch mit Getränken zu sehen. Neben ihnen steht ein Schild mit der Aufschrift &amp;quot;Welcome to Partner Basecamp&amp;quot; und Informationen zu einem Programm. In der unteren Ecke sieht man die Themse und das London Eye im Hintergrund.&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Inhaltlich war es ein intensives Format. Wir haben uns tief mit der &lt;strong&gt;Evaluierung von Prompt-Ergebnissen&lt;/strong&gt; beschäftigt – ein Thema, das in der Praxis oft unterschätzt wird. Es reicht nicht, einen Prompt zu bauen, der auf den ersten Blick funktioniert. Man muss strukturiert messen können, ob ein Modell konsistent, korrekt und für den jeweiligen Use Case geeignet antwortet. Dafür gibt es Methoden und Frameworks, die wir in London durchgearbeitet haben.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-06/anthtropic-exercices-terminal-2026-06-18-um-10.05.36.png&quot; alt=&quot;Verzeichnisbaum mit Unterordnern für ein Projekt. Enthält Ordner für 'day1' und 'day2' mit verschiedenen Übungen, sowie eine README.md-Datei. Die Benutzerberechtigungen und Änderungsdaten sind angezeigt.&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Ein weiterer Schwerpunkt war das &lt;strong&gt;Erstellen und Deployment von Agenten in der Cloud&lt;/strong&gt;. Es ging darum wie man KI-Agenten produktionsreif aufsetzt, welche Infrastruktur dahintersteckt und wo die typischen Fallstricke liegen. Das ist genau der Bereich, der in vielen Projekten über Erfolg oder Misserfolg entscheidet: nicht das Modell selbst, sondern wie es eingebettet und verwendet wird.&lt;/p&gt;
&lt;p&gt;Wir haben außerdem verschiedene Anthropic-Modelle verglichen und ein Gefühl dafür bekommen, wann welches Modell für welchen Einsatzzweck sinnvoll ist.&lt;/p&gt;
&lt;p&gt;Was mich persönlich am meisten gefreut hat: der direkte Austausch mit Anthropic-Mitarbeitern und KI-Architekten und meinem valantic Kollegen. Alexander war zum Beispiel viel besser in der Optimierung der Prompts. So lernt man gegenseitig. Man bekommt in solchen Formaten einen anderen Einblick als durch Dokumentation und Blog-Posts. Fragen, die man im Alltag nicht einfach stellen kann, lassen sich dort direkt klären.&lt;/p&gt;
&lt;h2&gt;Was das für Kunden bedeutet&lt;/h2&gt;
&lt;p&gt;Wenn ich mir die valantic-Seite zur &lt;a href=&quot;https://www.valantic.com/de/ki/claude-implementierung/&quot;&gt;Claude Implementierung&lt;/a&gt; anschaue, sehe ich genau das abgebildet, was wir in London erarbeitet haben. Der Ansatz ist nicht &amp;quot;KI einschalten und fertig&amp;quot;, sondern ein strukturierter Prozess: von der ersten Sondierung über einen Pilot mit messbarem Business Case bis zum unternehmensweiten Rollout.&lt;/p&gt;
&lt;p&gt;Besonders wichtig finde ich den Aspekt, den valantic explizit benennt: Viele Unternehmen scheitern beim Sprung von einzelnen Tests zur produktiven Nutzung. Nicht weil das Modell schlecht ist, sondern weil Strategie, Governance und Integration fehlen. Das deckt sich mit dem, was ich in Projekten erlebe. Die Technologie ist selten das Problem.&lt;/p&gt;
&lt;p&gt;Als konkreten Einstieg bietet valantic &lt;strong&gt;Claude Code Workshops&lt;/strong&gt; für Entwicklungsteams an – ein direkter, praxisnaher Weg in Anthropics agentische Coding-Fähigkeiten. Für Entwickler, die verstehen wollen wie KI-gestützte Softwareentwicklung in der Praxis aussieht, ist das ein guter erster Schritt.&lt;/p&gt;
&lt;p&gt;Der Select Partner Status bedeutet außerdem: valantic hat direkten Zugang zu Anthropic-Expertise und -Roadmaps. Das ist in einem Bereich, der sich so schnell entwickelt, kein unwichtiger Punkt. Einen Vorsprung beim Zugriff auf Informationen oder Modelle ist gerade jetzt ein Wettbewerbsvorteil.&lt;/p&gt;
&lt;h2&gt;Fazit&lt;/h2&gt;
&lt;p&gt;Ich finde es gut, dass valantic diesen Schritt gemacht hat – und ich finde es noch besser, dass er mit echtem Substanz-Aufwand verbunden war. Eine Schulung in London, inhaltliche Auseinandersetzung mit Evaluierung, Deployment und Architektur, direkter Kontakt zu Anthropic. Das ist kein Badge auf der Website, sondern Grundlage für Projekte, die tatsächlich funktionieren.&lt;/p&gt;
&lt;p&gt;Wer das Thema Claude im Unternehmenskontext ernsthaft angehen will, hat bei valantic jetzt einen Ansprechpartner, der weiß, wovon er spricht.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Google Cloud Summit DACH 2026</title>
        <link href="https://muench.dev/post/2026-06-besuch-beim-google-cloud-summit-dach-2026-in-frankfurt"/>
        <id>https://muench.dev/post/2026-06-besuch-beim-google-cloud-summit-dach-2026-in-frankfurt</id>
        <published>2026-06-15T08:25:00+00:00</published>
        <updated>2026-06-15T10:28:00+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Letzte Woche war ich für valantic beim Google Coud Summit DACH in Frankfurt. Die Anreise war entspannt: mit dem Deutschlandticket per Zug, klimafreundlich und ohne Parkplatz-Stress. Schon das Rahmenprogramm hat gesetzt, was den Ton für die zwei Tage vorgab – groß, professionell, durchdacht. Mehrere Tausend Teilnehmer, kostenfreie Veranstaltung inklusive Essen und Getränken. Google lässt sich das was kosten.&lt;/p&gt;
&lt;h2&gt;Tag 1: Der AI Experience Walk&lt;/h2&gt;
&lt;p&gt;Der erste Tag stand für mich im Zeichen des &lt;strong&gt;AI Experience Walk&lt;/strong&gt; – einer Art begehbaren KI-Ausstellung, bei der Google seine Lösungen entlang der kompletten Wertschöpfungskette vorgestellt hat. Vom ersten Kundenkontakt bis zur internen Prozessautomatisierung war alles vertreten.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-06/google-cloud-summit-emea-2026-collage.png&quot; alt=&quot;Google Cloud Summit 2026 - Impressionen&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Google gab selbst Einblicke wie sich die Entwicklung aufgrund der Nutzung von KI geändert hat. Es gibt immer mehr Entwickler die nur noch mit Prompts arbeiten und die IDE selbst gar nicht mehr wirklich nutzen.&lt;br /&gt;
&lt;img src=&quot;/assets/content/blog/2026-06/ai-replaces-developers_20260609_101513660.jpg&quot; alt=&quot;AI isn't going to replace developers. But a develop using AI will replavce a developer sho isn't.&quot; /&gt;&lt;br /&gt;
Was für mich imer wieder durchkam war, dass das Thema &amp;quot;Grounding&amp;quot; einfach viel ernster genommen werden muss. Über Tests gilt es die Ergebnisse (gerade in Verbindung mit eigenen Daten) immer wieder zu automatisch zu überprüfen. Das Test-Driven-Development ist wieder da aber eben anders wie früher.&lt;/p&gt;
&lt;p&gt;Was mich am meisten beeindruckt hat: &lt;strong&gt;Live-Remote-Video-Übersetzung in 15 Sprachen&lt;/strong&gt;, in Echtzeit, direkt im Video-Stream. Das war kein Demo-Video und kein &amp;quot;coming soon&amp;quot; – das hat funktioniert. Solche Momente zeigen, wo KI gerade wirklich steht. Nicht alles ist noch Versprechen.&lt;/p&gt;
&lt;p&gt;Ein zweites großes Thema am ersten Tag war &lt;strong&gt;Digitale Souveränität&lt;/strong&gt;. Das ist kein neues Thema, aber es war auffällig, wie prominent Google es platziert hat. Wer kontrolliert die Infrastruktur, wer hat Zugriff auf die Daten, wo laufen die Modelle? Für viele Unternehmen sind das inzwischen keine akademischen Fragen mehr, sondern konkrete Entscheidungskriterien bei der Plattformwahl.&lt;/p&gt;
&lt;h2&gt;Tag 2: Hands-on statt Hype&lt;/h2&gt;
&lt;p&gt;Tag 2 war für mich der wertvollere. Weniger Bühne, mehr Werkstatt. In den Hands-on Sessions konnte man direkt selbst ran – und das macht einen Unterschied.&lt;/p&gt;
&lt;p&gt;Ich habe einen &lt;strong&gt;MCP Server live auf das Google ADK umgestellt&lt;/strong&gt; – direkt auf der Veranstaltung, nicht vorher vorbereitet, nicht in einer kontrollierten Demo-Umgebung. Das hat funktioniert, und das war ein gutes Signal. Das ADK ist praxistauglich genug, um spontan damit zu arbeiten.&lt;/p&gt;
&lt;p&gt;Besonders interessant war ein Vortrag zum Thema &lt;strong&gt;RAG (Retrieval-Augmented Generation)&lt;/strong&gt; am konkreten Anwendungsfall: Gesetzestexte. Die Herausforderung bei juristischen Dokumenten ist nicht nur, die richtige Passage zu finden – sondern sie auch korrekt zu zitieren, mit Paragraphen-Referenz und im richtigen Kontext. Genau das wurde gezeigt. Ein Anwendungsfall, der echte Anforderungen hat und bei dem schlechte Ergebnisse echte Konsequenzen hätten. RAG muss hier nicht nur &amp;quot;meistens&amp;quot; funktionieren.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-06/rag-is-hard_20260610_090752659.jpg&quot; alt=&quot;RAG is hard&quot; /&gt;&lt;/p&gt;
&lt;h2&gt;Google als einziger Full-Stack-KI-Anbieter&lt;/h2&gt;
&lt;p&gt;Eine Beobachtung zieht sich durch beide Tage: Google ist der einzige Anbieter, der &lt;strong&gt;Hardware, Software und Plattform&lt;/strong&gt; für KI aus einer Hand liefert. Eigene TPUs, eigene Modelle (Gemini), eigene Cloud-Infrastruktur, eigene Entwicklertools. Das ist eine andere Ausgangssituation als bei Anbietern, die sich auf externe Chip-Hersteller oder Drittanbieter-Infrastruktur verlassen.&lt;/p&gt;
&lt;p&gt;Ob das ein Vorteil ist, hängt davon ab, was man sucht. Wer tief in das Google-Ökosystem einsteigen will, hat eine konsistente Stack-Erfahrung. Wer Unabhängigkeit und Portabilität priorisiert, sieht das vielleicht anders. Ich finde es trotzdem bemerkenswert, dass kein anderer Hyperscaler diese Kombination in dieser Tiefe vorweisen kann.&lt;/p&gt;
&lt;h2&gt;Fazit&lt;/h2&gt;
&lt;p&gt;Zwei Tage, mehrere Tausend Teilnehmer, kein Eintrittsgeld. Google investiert sichtbar in Community und Sichtbarkeit – und das zahlt sich aus. Man verlässt so eine Veranstaltung nicht mit fertigen Entscheidungen, aber mit einem guten Gefühl dafür, wo die Reise hingeht.&lt;/p&gt;
&lt;p&gt;Für mich persönlich: Tag 2 hat mehr gebracht als Tag 1. Nicht weil der AI Experience Walk uninteressant war – sondern weil Hands-on-Erfahrung durch nichts zu ersetzen ist. Einen MCP Server live umzustellen und direkt Feedback zu bekommen, ist mehr wert als zehn Folien über dasselbe Thema.&lt;/p&gt;
&lt;p&gt;Wer die Möglichkeit hat, beim nächsten Google Summit dabei zu sein: lohnt sich.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">PHP Supply Chain Security: Composer und Packagist machen den nächsten Schritt</title>
        <link href="https://muench.dev/post/2026-05-php-supply-chain-security-composer-und-packagist-machen-den-naechsten-schritt"/>
        <id>https://muench.dev/post/2026-05-php-supply-chain-security-composer-und-packagist-machen-den-naechsten-schritt</id>
        <published>2026-05-28T07:00:00+00:00</published>
        <updated>2026-06-13T15:16:35+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Die letzten Wochen haben gezeigt, wie verwundbar auch das PHP-Ökosystem gegenüber Angriffen auf die Software-Lieferkette ist. Lange galt Supply Chain Security vor allem als NPM-Problem. Wer die jüngsten Vorfälle rund um &lt;code&gt;laravel-lang&lt;/code&gt; (22. Mai) und &lt;code&gt;intercom/intercom-php&lt;/code&gt; (30. April) verfolgt hat, weiß: PHP ist nicht weniger betroffen – wir haben es nur seltener auf dem Radar.&lt;/p&gt;
&lt;p&gt;In beiden Fällen haben Angreifer kompromittierte GitHub-Accounts oder gestohlene Access-Tokens genutzt, um schadhafte Git-Tags auf Paketen zu veröffentlichen, auf die sie keinen legitimen Zugriff hatten. Das Ergebnis: Schadcode in weit verbreiteten Paketen, der bei einem &lt;code&gt;composer update&lt;/code&gt; auf tausenden Systemen landet.&lt;/p&gt;
&lt;p&gt;Das Packagist-Team hat jetzt in einem ausführlichen &lt;a href=&quot;https://blog.packagist.com/an-update-on-composer-packagist-supply-chain-security/&quot;&gt;Blog-Post&lt;/a&gt; dargelegt, was bereits aktiv ist, was diese Woche ausgeliefert wird und wohin die Reise langfristig geht. Die Roadmap ist beeindruckend – und zeigt, dass hier seit fast einem Jahr konsequent an der Infrastruktur gearbeitet wird.&lt;/p&gt;
&lt;h2&gt;Was bereits funktioniert&lt;/h2&gt;
&lt;p&gt;Seit März 2026 ist &lt;strong&gt;Aikido&lt;/strong&gt;-Malware-Erkennung direkt in Packagist.org integriert. Wenn eine Version als schädlich markiert wird, erscheint das sowohl in der Packagist-UI als auch in den Metadaten, die Composer abruft. In den jüngsten Vorfällen hat Aikido die kompromittierten Versionen korrekt geflagged.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-05/screenshot_aikido_n98magerun2_20260528_112848.png&quot; alt=&quot;Dashboard einer Softwareanwendung zur Verwaltung von Magento-Projekten. Die Gesamtbewertung beträgt 100 %. Es werden keine Sicherheitsanfälligkeiten für das Paket angezeigt. Informationen zu verschiedenen Paketversionen und wöchentlichen Downloads sind ebenfalls enthalten.&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Parallel dazu gibt es bereits ein &lt;strong&gt;öffentliches Transparenz-Log&lt;/strong&gt; auf Packagist.org. Dieses Log zeichnet sicherheitsrelevante Ereignisse auf: Eigentümerwechsel, Maintainer-Änderungen, Versionsreferenz-Änderungen. Bei den aktuellen Angriffen – bei denen Angreifer bestehende Git-Tags im Nachhinein manipulierten – hat das Log genau das dokumentiert, was verändert wurde. Das ist solide forensische Infrastruktur.&lt;/p&gt;
&lt;h2&gt;Was diese Woche kommt: Composer 2.10&lt;/h2&gt;
&lt;p&gt;Das ist der Teil, der mich am meisten interessiert – und der unmittelbaren Handlungsbedarf schafft.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unveränderlichkeit stabiler Versionen&lt;/strong&gt; ist die wichtigste Änderung. Bisher konnte ein Angreifer (oder ein unvorsichtiger Maintainer) ein bestehendes Git-Tag einfach neu setzen – und Packagist aktualisierte die Referenz stillschweigend. Das ist vorbei. Ab diesem Deploy können stabile Versionen nicht mehr lautlos überschrieben werden. Tag-Änderungen am Upstream-Repository werden erkannt und abgelehnt; der Maintainer bekommt eine E-Mail-Benachrichtigung.&lt;/p&gt;
&lt;p&gt;Das klingt wie eine Kleinigkeit, ist es aber nicht. Mutable Releases bedeuten: Ein kompromittierter Account kann eine bereits millionenfach installierte, als vertrauenswürdig eingestufte Version mit Backdoor versehen. Wer dann &lt;code&gt;composer update&lt;/code&gt; ausführt, bekommt den manipulierten Code, ohne Warnung, ohne Versionsnummernänderung. Diese Angriffsfläche wird jetzt geschlossen.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Composer 2.10&lt;/strong&gt; führt außerdem ein einheitliches &lt;strong&gt;Dependency Policy Framework&lt;/strong&gt; ein. Malware-Flags, Sicherheitswarnungen und verwaiste Pakete werden damit über einen gemeinsamen, konfigurierbaren Mechanismus gesteuert statt als Einzelfeatures übereinander gestapelt. Das ist die richtige Architekturentscheidung, weil es einen klaren Erweiterungspunkt für künftige Policies schafft.&lt;/p&gt;
&lt;p&gt;Der &lt;strong&gt;Source-Fallback wird deprecated&lt;/strong&gt; und in Version 2.11 komplett entfernt. Bisher konnte Composer bei einem fehlgeschlagenen Dist-Download auf das Git-Repository als Quelle zurückfallen. Das ist ein Verhalten, das in bestimmten Angriffsszenarien zu unerwartetem Code-Download führen konnte. Gut, dass das weg kommt.&lt;/p&gt;
&lt;h2&gt;Was folgt: Cooldown-Phasen und MFA-Sichtbarkeit&lt;/h2&gt;
&lt;p&gt;Zwei geplante Features, die ich für besonders wirksam halte:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Minimum Release Age&lt;/strong&gt;: Eine Policy, die verhindert, dass brandneue Releases sofort in CI/CD-Pipelines installiert werden. Die meisten eingeschleusten schädlichen Versionen werden innerhalb von Stunden entdeckt und entfernt. Wer einen Cooldown von z.B. 24 Stunden erzwingt, nimmt Angreifern das entscheidende Zeitfenster. Diese Policy ist direkt abhängig von der oben beschriebenen Versions-Unveränderlichkeit – deswegen kam sie noch nicht, kommt aber bald.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MFA-Status wird öffentlich sichtbar&lt;/strong&gt;: Künftig wird der MFA-Status von Maintainern auf ihren Profilen und im Transparenz-Log erscheinen. Das erzeugt sozialen Druck was ich für einen wirkungsvollen Hebel halte. Wer als Maintainer eines viel genutzten Pakets ohne 2FA dasteht, wird das merken.&lt;/p&gt;
&lt;h2&gt;Was mich dazu bewogen hat, heute zu handeln&lt;/h2&gt;
&lt;p&gt;Ich pflege mehrere Pakete auf Packagist.org, unter anderem n98-magerun2. &lt;strong&gt;Ich habe heute meinen Packagist-Account mit 2FA abgesichert.&lt;/strong&gt;. Ehrlich gesagt hatte ich das gar nicht auf dem Schirm. Aber lieber spät als gar nicht.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-05/screenshot_composer_2fa_20260528_113133.png&quot; alt=&quot;Die Benutzeroberfläche von Packagist zeigt die Einstellungen für die Zwei-Faktor-Authentifizierung an. Ein Hinweis informiert, dass die Zwei-Faktor-Authentifizierung derzeit aktiviert ist.&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Nicht weil es mich jemand gezwungen hat. Sondern weil mir beim Lesen des Packagist-Blog-Posts klar wurde: Das ist keine hypothetische Bedrohung mehr. Die Vorfälle sind real, die Angriffsvektoren sind dokumentiert, und die Konsequenzen eines kompromittierten Accounts treffen nicht nur mich – sondern alle, die das Tool nutzen.&lt;/p&gt;
&lt;p&gt;Wer noch keinen guten Passwortmanager nutzt, sollte das ohnehin ändern. Tools wie &lt;strong&gt;1Password&lt;/strong&gt;, &lt;strong&gt;Bitwarden&lt;/strong&gt; oder &lt;strong&gt;KeePassXC&lt;/strong&gt; unterstützen heute alle TOTP-basiertes 2FA direkt – kein separates Authenticator-App-Chaos nötig. Ein Passwortmanager, der 2FA abdeckt, senkt die Hürde zur Aktivierung auf nahezu null. Es gibt keine sinnvolle Ausrede mehr.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vertrauen ist eine Währung.&lt;/strong&gt; Wer ein weit genutztes Open-Source-Paket pflegt, trägt Mitverantwortung für die Sicherheit der Systeme, auf denen es läuft. Das geht nicht an jemand anderen weiter. Nicht an Packagist, nicht an Composer, nicht an GitHub.&lt;/p&gt;
&lt;h2&gt;Was ich jedem Maintainer empfehle&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;2FA auf Packagist.org aktivieren – jetzt.&lt;/strong&gt; Der MFA-Status wird bald öffentlich einsehbar sein. Wer jetzt handelt, tut das aus Überzeugung und nicht aus Druck.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Composer auf 2.10 aktualisieren&lt;/strong&gt;, sobald die Version veröffentlicht ist. Das Source-Fallback-Verhalten allein ist ein guter Grund.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Keine shared Company Accounts&lt;/strong&gt; für Pakete nutzen. Das Packagist-Team baut gerade Organizational Package Ownership, um diesen Übergang zu erleichtern.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Das Transparenz-Log kennen.&lt;/strong&gt; Wer Pakete pflegt oder nutzt, sollte wissen, dass dort Änderungen protokolliert werden – und ab wann auch MFA-Ereignisse.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;Einordnung: Ein Ökosystem zieht die Schrauben an&lt;/h2&gt;
&lt;p&gt;NPM hatte obligatorisches 2FA für beliebte Pakete bereits früher eingeführt, PyPI machte es im Januar 2024 für alle Maintainer verpflichtend. Das Packagist-Team sagt selbst, dass Composer hier punktuell hinterherhinkt – aber die jetzt angekündigte Roadmap ist keine Ad-hoc-Reaktion. Versions-Unveränderlichkeit, ein Dependency Policy Framework, FIDO2-gestützte Release-Flows, SLSA-Provenance – das ist erkennbar über Monate geplante Arbeit. Die Sovereign Tech Agency hat Teile davon mitfinanziert, was zeigt, dass kritische Open-Source-Infrastruktur inzwischen als schützenswert gilt.&lt;/p&gt;
&lt;p&gt;KI hat hier übrigens Dynamik in beide Richtungen gebracht. Automatisierte Analyse hilft beim Erkennen von Anomalien – aber sie senkt auch die Hürde für Angreifer, überzeugende schädliche Commits zu erstellen. Das Wettrüsten ist real.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Was von uns als Community bleibt: unseren Teil tun.&lt;/strong&gt; Und der beginnt mit dem Aktivieren von 2FA. Das dauert fünf Minuten.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Coding Agents im Vergleich: Meine Erfahrungen – und was Claude Code anders macht</title>
        <link href="https://muench.dev/post/2026-04-coding-agents-im-vergleich-meine-erfahrungen-und-was-claude-code-anders-macht"/>
        <id>https://muench.dev/post/2026-04-coding-agents-im-vergleich-meine-erfahrungen-und-was-claude-code-anders-macht</id>
        <published>2026-04-14T07:00:00+00:00</published>
        <updated>2026-04-17T16:17:04+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;In den letzten Monaten habe ich mich intensiv mit Coding Agents beschäftigt. Angefangen mit dem GitHub Copilot Agent, über Google Jules, JetBrains Junie bis hin zu Kiro und OpenCode – ich habe fast alle relevanten Tools getestet und auf muench.dev beschrieben. Jetzt, wo ich (auch) Claude Code täglich im Einsatz habe, wird es Zeit für eine Zusammenfassung: Wo stehen die einzelnen Tools? Was unterscheidet Claude Code von der Konkurrenz? Und – eine Frage, die ich mir zunehmend stelle – wie schütze ich mich eigentlich vor einem Vendor-Lock-in?&lt;/p&gt;
&lt;h2&gt;Meine bisherigen Coding-Agent-Tests im Überblick&lt;/h2&gt;
&lt;p&gt;Wer meine Artikel kennt, weiß: Ich teste Dinge so lange, bis ich mir ein echtes Bild gemacht habe – mit echten Projekten, echten Fehlern und echten Erkenntnissen. Hier die Übersicht der bisher auf diesem Blog vorgestellten Agents:&lt;/p&gt;
&lt;h3&gt;JetBrains Junie&lt;/h3&gt;
&lt;p&gt;Mein erster &amp;quot;Wow, das klappt ja wirklich&amp;quot;-Moment in der Vibe-Coding-Serie. Junie ist tief in die JetBrains-IDE integriert, läuft serverbasiert und hat mich mit seinem iterativen Ansatz (Tests ausführen, Fehler korrigieren, weitermachen) wirklich beeindruckt. Einziger Nachteil: Rate-Limits treffen schnell, und wer nicht im JetBrains-Ökosystem lebt, ist außen vor.&lt;/p&gt;
&lt;h3&gt;Google Jules&lt;/h3&gt;
&lt;p&gt;Jules arbeitet in einer isolierten Cloud-Umgebung – asynchron und ohne dass man dabei sein muss. Interessanter Ansatz, aber die fehlende Interaktivität war für mich bei explorativer Entwicklung ein echtes Handicap. Für definierbare Batch-Aufgaben ein solider Kandidat.&lt;/p&gt;
&lt;p&gt;Jules lasse ich inzwischen Code-Verbesserungen in meinen Open Source Projekten automatisch vorschlagen. Das produziert auch einiges an guten Ergebnissen. Allerdings bin ich als Mensch beim Review selbst das Bottleneck. Aber hier habe ich selten Zeitdruck. Daher ist das alles in Ordnung für mich. Generell habe ich 100 Tasks pro Tag in meinem AI Pro Account. Das ist sehr großzügig. Im Hintergrund arbeitet ein Gemini Pro Modell. Mein Anfangstest war noch mit durchwachsenen Ergebnissen. Das ist inzwischen aber alles sehr gut und brauchbar was produziert wird.&lt;/p&gt;
&lt;p&gt;Ebenso sind die Sandboxes die Jules besser ausgestattet was den Speicherplatz angeht. Jetzt passen auch alle meine Projekte in deren Speicher.&lt;/p&gt;
&lt;h3&gt;GitHub Copilot Agent&lt;/h3&gt;
&lt;p&gt;Der bekannteste Name im Feld. VS Code-Integration ist unschlagbar, MCP-Support ist vorhanden und die Tiefe der Workspace-Analyse ist stark. Im direkten Vergleich mit Junie hatte ich allerdings etwas schlechtere Ergebnisse – und bei größeren Aufgaben musste ich die Arbeit auf mehrere Sessions aufteilen.&lt;/p&gt;
&lt;h3&gt;GitHub Copilot als asynchroner Agent&lt;/h3&gt;
&lt;p&gt;Spannend ist sicherlich die Nutzung des CoPilot auch als Helfer in GitHub Projekten selbst. Das kostet immer mindestens einen Premium-Request, wenn man eine Task verteilt. Davon habe ich in meinem Account 300 pro Monat. Geschäftlich hosten wir in unserem Team keine Kunden-Projekte in GitHub. Allerdings haben wir bei dem einen oder anderen Open Source Repository auch mal den GitHub CoPilot direkt Code prüfen gelassen. Der CoPilot meldet sich auch proaktiv in Pull Requests. Man kann das Ticket dann direkt dem CoPilot als Benutzer zuweisen und er arbeitet los.&lt;/p&gt;
&lt;p&gt;Das ist schon sehr praktisch. Allerdings nutze ich den CoPilot selbst nur selten.&lt;/p&gt;
&lt;h3&gt;OpenAI Codex&lt;/h3&gt;
&lt;p&gt;Das Cloud-basierte Modell von OpenAI direkt als Agent. Gut für isolierte Tasks, aber mit der bekannten Cloud-Abhängigkeit und den üblichen Datenschutz-Abwägungen.&lt;/p&gt;
&lt;p&gt;Ich habe Codex sehr zu schätzen gelernt. Er fragt weniger nach als Claude (mein subjektiver Eindruck). Die Ergebnisse von Codex bewerte ich meistens als sehr gut. Daher sehr zu empfehlen. Codex lässt sich auch über ein offizielles Plugin in Claude einbauen um dort Tokens zu sparen.&lt;/p&gt;
&lt;h3&gt;Codex CLI&lt;/h3&gt;
&lt;p&gt;Das CLI-Tool von OpenAI – kompakter als der vollständige Codex, aber flexibel einsetzbar. Für meinen Linux-Setup war es anfangs ein fester Bestandteil geworden. Hier nutze ich aber inzwischen Codex nur in Verbindung mit OpenCode.&lt;/p&gt;
&lt;h3&gt;Vibe-Coding mit Qwen Code&lt;/h3&gt;
&lt;p&gt;Qwen Code ist der Open-Source-Vertreter aus dem Hause Alibaba. Wer lokale Modelle bevorzugt oder keine Cloud-Daten möchte, wird hier fündig. Performance auf Augenhöhe mit den großen Playern – zumindest für eine bestimmte Klasse von Aufgaben. Qwen Code müsste ich mir neu anschauen. Daher habe ich keine aktualisierte Meinung.&lt;/p&gt;
&lt;h3&gt;Kiro&lt;/h3&gt;
&lt;p&gt;Kiro von AWS hat mich mit seinem &amp;quot;Spec-Driven Development&amp;quot;-Ansatz überrascht: erst Spezifikation, dann Implementierung. Der strukturierte Ansatz reduziert Missverständnisse zwischen Entwickler und Agent – aber auch hier: tief im AWS-Ökosystem verankert.&lt;/p&gt;
&lt;p&gt;Damals hatte ich nur so &amp;quot;semi gute&amp;quot; Ergebnisse. Das Tool müsste ich heute nochmal neu bewerten.&lt;/p&gt;
&lt;h3&gt;OpenCode&lt;/h3&gt;
&lt;p&gt;Mein Favorit für maximale Flexibilität. OpenCode läuft mit fast jedem Modell, unterstützt MCP, hat eine schicke TUI und hält mich unabhängig von einem einzelnen Anbieter. Genau darum geht es mir.&lt;/p&gt;
&lt;p&gt;Leider blocken sowohl Google als auch Anthropic die Nutzung über die Subscriptions. Man kann die Modelle aber per API anbinden.&lt;/p&gt;
&lt;p&gt;OpenCode gefällt mir weiterhin sehr gut. Die TUI ist einfach schön und gut bedienbar. Auch in Gitlab CI habe ich OpenCode an den Start gebracht. Das ist einfach ein tolles und vielseitiges Tool. OpenCode verwende ich wie oben schon geschrieben inzwischen nur noch mit Codex und ich habe auch meinen GitHub CoPilot Account verknüpft. Damit kann man einfache Tasks in z.B. Sub-Agents an das nicht Token-limitierte GPT 4.1 Modell delegieren.&lt;/p&gt;
&lt;h2&gt;Vendor-Lock-in&lt;/h2&gt;
&lt;p&gt;Zwischen all den Feature-Vergleichen und Benchmark-Diskussionen geht eine Frage oft unter: Was passiert, wenn das Tool, auf das ich mich eingelassen habe, plötzlich die Preise erhöht, den Dienst einstellt oder – wie im Fall von Anthropic und OpenCode – politisch eingreift?&lt;/p&gt;
&lt;p&gt;In meinem OpenCode-Artikel habe ich das bereits angesprochen: Anthropic hat zeitweise signalisiert, dass sie es nicht mögen, wenn Claude-Modelle über Drittanbieter-Tools wie OpenCode genutzt werden. OpenAI hat diesen Sachverhalt nun genutzt, um OpenCode öffentlich seine Unterstützung auszudrücken. Da ist Politik im Spiel – und das erinnert mich daran, dass ich meinen Tool-Stack nicht auf einem einzigen Anbieter aufbauen will.&lt;/p&gt;
&lt;div class=&quot;mermaid-diagram not-prose&quot;&gt;&lt;pre class=&quot;mermaid&quot;&gt;flowchart TD
    M[&quot;🔵 Modell\nNur Modell X? Erpressbar.\nPricing, Einschränkungen&quot;]
    T[&quot;🟡 Tool\nCLI / Extension gebunden.\nCopilot = MS-Ökosystem&quot;]
    W[&quot;🟢 Workflow\nCLAUDE.md, MCP, Skills.\nUmbau kostet Zeit&quot;]

    TRIGGER[&quot;⚡ Auslöser\nPreiserhöhung · Dienst eingestellt · Politischer Eingriff (Anthropic / OpenCode)&quot;]

    CONV[&quot;✅ Gute Nachricht: Konvergenz\nAgent Skills funktionieren plattformübergreifend.\nAblage im Dateisystem wird zunehmend genormt.\nPortabilität wächst — Diversifikation wird leichter.&quot;]

    SOL[&quot;🔷 Antwort: Pragmatische Diversifikation\nKein Purismus — kein Single Point of Failure&quot;]

    M --&gt; TRIGGER
    T --&gt; TRIGGER
    W --&gt; TRIGGER
    TRIGGER --&gt; CONV
    CONV --&gt; SOL

    style M fill:#EEEDFE,stroke:#534AB7,color:#3C3489
    style T fill:#FAEEDA,stroke:#854F0B,color:#633806
    style W fill:#E1F5EE,stroke:#0F6E56,color:#085041
    style TRIGGER fill:#F1EFE8,stroke:#5F5E5A,color:#2C2C2A
    style CONV fill:#EAF3DE,stroke:#3B6D11,color:#27500A
    style SOL fill:#E6F1FB,stroke:#185FA5,color:#0C447C
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Das Risiko ist real und betrifft mehrere Ebenen:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Modell-Abhängigkeit:&lt;/strong&gt; Wenn mein Workflow nur mit Modell X funktioniert, bin ich erpressbar. Ändert sich die Pricing-Struktur oder werden bestimmte Nutzungsszenarien eingeschränkt, stehe ich vor einem Migrations-Problem.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tool-Abhängigkeit:&lt;/strong&gt; Wenn das CLI-Tool oder die IDE-Extension nur mit einem bestimmten Backend kommuniziert, ist der Wechsel aufwändig. Copilot ist hier das Paradebeispiel: tief in das Microsoft/GitHub-Ökosystem eingebettet, was Stärke und Schwäche zugleich ist.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Workflow-Abhängigkeit:&lt;/strong&gt; Wenn ich meine &lt;code&gt;CLAUDE.md&lt;/code&gt;, meine MCP-Server-Konfiguration und meine Skills auf eine Plattform zugeschnitten habe, kostet ein Wechsel eventuell einiges an Arbeitszeit.&lt;/p&gt;
&lt;p&gt;Meine Antwort darauf ist kein Purismus, sondern pragmatische Diversifikation.&lt;/p&gt;
&lt;p&gt;Zum Glück gleichen sich aber auch die Agenten in bestimmten Bereichen immer mehr an. So können z.B. Agent Skills quasi in allen Systemen genutzt werden. Auch die Ablage der Skills im Dateisystem wird immer mehr genormt.&lt;/p&gt;
&lt;h2&gt;Und jetzt: Claude Code&lt;/h2&gt;
&lt;p&gt;Ich habe bereits über die Installation von Claude Desktop unter Linux geschrieben. Claude Code ist nochmal eine andere Geschichte – und aktuell mein bevorzugtes Tool für intensive Entwicklungsarbeit.&lt;/p&gt;
&lt;h3&gt;Was Claude Code von den anderen unterscheidet&lt;/h3&gt;
&lt;p&gt;Der entscheidende Unterschied liegt nicht in den Features – fast alle modernen Agents können heute Dateien lesen, Code schreiben, Tests ausführen und Fehler korrigieren. Claude Code unterscheidet sich aus meiner Sicht in vier Punkten:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Qualität der Code-Analyse:&lt;/strong&gt; Claude hat das tiefste Verständnis für bestehende Codebasen, das ich bisher erlebt habe. Es erkennt nicht nur, &lt;em&gt;was&lt;/em&gt; der Code tut, sondern auch &lt;em&gt;warum&lt;/em&gt; er so strukturiert ist. Das führt zu Vorschlägen, die sich nicht wie &amp;quot;generiert&amp;quot; anfühlen, sondern wie von einem Kollegen geschrieben, der den Code wirklich gelesen hat.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Das CLAUDE.md-Prinzip:&lt;/strong&gt; Ähnlich wie GitHub Copilots &lt;code&gt;copilot-instructions.md&lt;/code&gt; oder Kiros Spec-Ansatz setzt Claude Code auf eine &lt;code&gt;CLAUDE.md&lt;/code&gt;-Datei als Projekt-Kontext. Ich definiere einmal Coding-Standards, Architekturentscheidungen und Was-nicht-zu-tun-ist – und Claude Code arbeitet konsequent darin. Das spart enorm viel Korrekturaufwand.&lt;/p&gt;
&lt;p&gt;Was ich inzwischen auch mache ist die CLAUDE.md Datei auf die AGENTS.md verweisen zu lassen. In der Art wie Claude mit der Datei umgeht sehe ich schon Unterschiede zu den anderen Agenten. Hier ist Claude einfach das Maß der Dinge.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MCP als First-Class-Feature:&lt;/strong&gt; Das Model Context Protocol (MCP) ist nicht zufällig das Protokoll, das ich am meisten nutze – Anthropic hat es entwickelt. In Claude Code ist MCP keine Erweiterung, sondern der Kern des Tool-Konzepts. Das merkt man in der Stabilität der Integration und in der Tiefe der möglichen Automatisierungen.&lt;/p&gt;
&lt;p&gt;Wenn es sinnvoll ist und kein Skill ausreichend ist, erstelle ich MCP Server für wichtige Workflows wie z.B. das Anlegen von Drafts in meinem Blog.&lt;/p&gt;
&lt;p&gt;Oft reicht aber auch ein einfacher Agent Skill aus. Da auch die Agent Skills ebenfalls ursprünglich von Anthropic stammen sind diese natürlich auch bestens integriert. In vielen Fällen sind die Skills sogar effizienter als MCP selbst. Aber egal was ich davon nutze, Claude ist eben genau dabei immer etwas vor der Konkurrenz.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Desktop Integration&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Claude ist sehr gut in den Desktop integriert und ist hier Vorreiter. Die anderen Anbieter versuchen gerade nachzuziehen. Es gibt auch einen Codex Desktop oder OpenCode Desktop. Hier hat Anthropic einen guten Vorsprung und erlaubt es jetzt auch, dass auch Nicht-Entwickler das Tool im Arbeitsalltag einsetzen können.&lt;/p&gt;
&lt;h2&gt;Mein aktueller Stack&lt;/h2&gt;
&lt;p&gt;Nach all diesen Tests bin ich zu einer klaren Erkenntnis gekommen: Es gibt nicht den einen Coding Agent. Und ehrlich gesagt gilt das nicht nur für Agents – auch beim klassischen Chat-Interface setze ich bewusst auf mehrere Anbieter.&lt;/p&gt;
&lt;h3&gt;Coding Agents&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intensive Entwicklungsarbeit &amp;amp; Architekturentscheidungen:&lt;/strong&gt; Claude Code – hier ist die Modellqualität entscheidend, und die API-Kosten rechtfertigen sich durch die Ergebnisqualität. Skills und MCP-Server (die Anthropic selbst erfunden hat) sind hier am besten integriert. Auch das Ökosystem zum Teilen von Agents und Skills über Plugins und Marktplätze ist schon sehr ausgereift.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Daily Driver mit Provider-Flexibilität:&lt;/strong&gt; OpenCode mit OpenAI Codex als Backend – das gibt mir die Unabhängigkeit, die ich brauche, und hält mich nicht an ein einzelnes Modell gebunden.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Autonome Code-Verbesserungen:&lt;/strong&gt; Google Jules im Hintergrund – vor allem für automatische Vorschläge in meinen Open-Source-Projekten. Mit 100 Tasks pro Tag im AI Pro Account ist das sehr großzügig. Dass ich als Mensch beim Review das Bottleneck bin, nehme ich in Kauf. Bei Open-Source-Projekten habe ich selten Zeitdruck.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Antigravity:&lt;/strong&gt; Ebenfalls im Einsatz, wenn es darum geht, Coding-Aufgaben asynchron und toolgestützt zu delegieren.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Chat-Interfaces&lt;/h3&gt;
&lt;p&gt;Der Coding Agent ist aber nur eine Seite meines KI-Stacks. Für Recherche, Konzeption, Textentwürfe und ad-hoc-Fragen nutze ich ganz bewusst verschiedene Chat-Interfaces – und bin auch hier an keinen Anbieter gebunden:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Claude Desktop&lt;/strong&gt; – mein täglicher Begleiter, auch unter Linux. Ich habe das Setup bereits in einem eigenen Artikel beschrieben.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Google Gemini&lt;/strong&gt; – vor allem wenn es um große Kontextfenster geht oder ich eine zweite Meinung zu einer Architekturentscheidung brauche.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ChatGPT&lt;/strong&gt; – nach wie vor ein solides Interface, das ich regelmäßig nutze.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mistral&lt;/strong&gt; – als europäische Alternative schätze ich Mistral, gerade wenn es um datenschutzsensible Themen geht. Die Modelle haben sich in letzter Zeit deutlich verbessert.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Das ist kein dogmatisches Setup, sondern ein lebendiges. Wenn in drei Monaten ein neuer Agent oder ein neues Chat-Interface einen dieser Slots besser besetzt, tausche ich ihn aus. Genau das ist der Punkt: kein Lock-in, sondern Entscheidungsfreiheit.&lt;/p&gt;
&lt;p&gt;Was ist euer Stack? Und wie geht ihr mit dem Vendor-Lock-in-Thema um? Ich bin gespannt auf eure Perspektiven in den Kommentaren.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Adobe Commerce Optimizer: Das Unified Data Model unter der Haube</title>
        <link href="https://muench.dev/post/2026-04-adobe-commerce-optimizer-das-unified-data-model-unter-der-haube"/>
        <id>https://muench.dev/post/2026-04-adobe-commerce-optimizer-das-unified-data-model-unter-der-haube</id>
        <published>2026-04-13T07:00:00+00:00</published>
        <updated>2026-04-14T12:59:13+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Vor kurzem habe ich bei einem Adobe Event das Produkt &lt;strong&gt;Adobe Commerce Optimizer (ACO)&lt;/strong&gt; vorgestellt. Bei der Vorstellung wollte ich nicht mit den Standard-Demodaten arbeiten und wollte meine eigenen Demo-Daten nutzen. Dazu musste ich folgende Dinge klären: Welche API nimmt Daten entgegen? Wie ist das Datenmodell strukturiert? Und wie kommt das Ergebnis in mein Storefront (oder eigenes Frontend)?&lt;/p&gt;
&lt;h2&gt;Was ist das Unified Data Model?&lt;/h2&gt;
&lt;p&gt;Hinter ACO steckt eine SaaS-Schicht namens &lt;strong&gt;Merchandising Services&lt;/strong&gt;, die auf einem zentralisierten, quellenunabhängigen Datenspeicher basiert. Adobe spricht in diesem Zusammenhang von der &lt;strong&gt;CCDM&lt;/strong&gt;-Architektur – &lt;em&gt;Composable Catalog Data Model&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Der Kerngedanke: Produktdaten kommen aus beliebigen Quellen (ERP, PIM, Magento, Shopify, was auch immer), landen in einem einzigen Basiskatalog und werden dort nach einem einheitlichen Modell gespeichert. Die Storefront greift über GraphQL darauf zu – gefiltert durch &lt;strong&gt;Catalog Views&lt;/strong&gt; und &lt;strong&gt;Policies&lt;/strong&gt; (Regelwerk).&lt;/p&gt;
&lt;p&gt;Das Standardfrontend ist die neue Adobe Commerce Storefront auf Basis von &lt;strong&gt;Edge Delivery Services (EDS)&lt;/strong&gt;. Diese Storefront ist darauf ausgelegt, Produktdaten direkt über die GraphQL-Schicht von ACO zu konsumieren – ohne klassischen Magento-Applikationsstack dazwischen. Wer ein eigenes Headless-Frontend betreiben will, kann ebenfalls direkt auf den GraphQL-Endpoint aufsetzen; die EDS-Storefront bleibt aber der von Adobe vorgesehene und gepflegte Standardweg.&lt;/p&gt;
&lt;h2&gt;Datenerfassung: REST rein&lt;/h2&gt;
&lt;p&gt;Daten kommen über eine &lt;strong&gt;RESTful Data Ingestion API&lt;/strong&gt; in den ACO. Die Base-URL folgt diesem Schema:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-dust hljs dust&quot; data-lang=&quot;dust&quot;&gt;&lt;span class=&quot;xml&quot;&gt;https://&lt;/span&gt;&lt;span class=&quot;hljs-template-variable&quot;&gt;{region}&lt;/span&gt;&lt;span class=&quot;xml&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;hljs-template-variable&quot;&gt;{environment}&lt;/span&gt;&lt;span class=&quot;xml&quot;&gt;.api.commerce.adobe.com/&lt;/span&gt;&lt;span class=&quot;hljs-template-variable&quot;&gt;{tenantId}&lt;/span&gt;&lt;span class=&quot;xml&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alle Requests benötigen einen &lt;code&gt;Authorization&lt;/code&gt;-Header mit Bearer-Token (&lt;a href=&quot;https://experienceleague.adobe.com/de/docs/commerce-admin/start/admin/ims/adobe-ims-integration-overview&quot;&gt;IMS-Credential&lt;/a&gt;-basiert) sowie &lt;code&gt;Content-Type: application/json&lt;/code&gt;.&lt;/p&gt;
&lt;h3&gt;Schritt 1: Attribut-Metadaten definieren&lt;/h3&gt;
&lt;p&gt;Bevor ein einziges Produkt importiert werden kann, müssen die &lt;strong&gt;Attribut-Metadaten&lt;/strong&gt; angelegt werden – und das pro Locale. ACO muss vorab wissen, wie es mit jedem Attribut umgehen soll: Ist es filterbar? Sortierbar? Suchbar? Mit welchem Gewicht?&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -X POST \
  &lt;span class=&quot;hljs-string&quot;&gt;'https://na1-sandbox.api.commerce.adobe.com/{tenantId}/v1/catalog/products/metadata'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Content-Type: application/json'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Authorization: Bearer {accessToken}'&lt;/span&gt; \
  -d &lt;span class=&quot;hljs-string&quot;&gt;'[
    {
      &quot;code&quot;: &quot;name&quot;,
      &quot;source&quot;: { &quot;locale&quot;: &quot;en-US&quot; },
      &quot;label&quot;: &quot;Product Name&quot;,
      &quot;dataType&quot;: &quot;TEXT&quot;,
      &quot;visibleIn&quot;: [&quot;PRODUCT_DETAIL&quot;, &quot;PRODUCT_LISTING&quot;, &quot;SEARCH_RESULTS&quot;],
      &quot;filterable&quot;: false,
      &quot;sortable&quot;: true,
      &quot;searchable&quot;: true,
      &quot;searchWeight&quot;: 1,
      &quot;searchTypes&quot;: [&quot;AUTOCOMPLETE&quot;]
    },
    {
      &quot;code&quot;: &quot;brand&quot;,
      &quot;source&quot;: { &quot;locale&quot;: &quot;en-US&quot; },
      &quot;label&quot;: &quot;Brand&quot;,
      &quot;dataType&quot;: &quot;TEXT&quot;,
      &quot;visibleIn&quot;: [&quot;PRODUCT_LISTING&quot;, &quot;SEARCH_RESULTS&quot;],
      &quot;filterable&quot;: true,
      &quot;sortable&quot;: false,
      &quot;searchable&quot;: true,
      &quot;searchWeight&quot;: 1,
      &quot;searchTypes&quot;: [&quot;AUTOCOMPLETE&quot;, &quot;CONTAINS&quot;, &quot;STARTS_WITH&quot;]
    }
  ]'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Der &lt;code&gt;dataType&lt;/code&gt; kann &lt;code&gt;TEXT&lt;/code&gt;, &lt;code&gt;DECIMAL&lt;/code&gt;, &lt;code&gt;BOOLEAN&lt;/code&gt; oder &lt;code&gt;INT&lt;/code&gt; sein. &lt;code&gt;visibleIn&lt;/code&gt; steuert, wo das Attribut auf der Storefront erscheint: Produktdetailseite, Listing, Suchergebnisse, Vergleich.&lt;/p&gt;
&lt;h3&gt;Schritt 2: Produkte anlegen&lt;/h3&gt;
&lt;p&gt;Danach kommen die eigentlichen Produkte per POST. Das Produkt-Objekt trägt neben den Pflichtfeldern (&lt;code&gt;sku&lt;/code&gt;, &lt;code&gt;source&lt;/code&gt;, &lt;code&gt;name&lt;/code&gt;, &lt;code&gt;slug&lt;/code&gt;, &lt;code&gt;status&lt;/code&gt;) alle benutzerdefinierten Attribute als flache Key/Value-Liste im &lt;code&gt;attributes&lt;/code&gt;-Array. Über &lt;code&gt;routes&lt;/code&gt; wird das Produkt Kategorien zugeordnet.&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -X POST \
  &lt;span class=&quot;hljs-string&quot;&gt;'https://na1-sandbox.api.commerce.adobe.com/{tenantId}/v1/catalog/products'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Content-Type: application/json'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Authorization: Bearer {accessToken}'&lt;/span&gt; \
  -d &lt;span class=&quot;hljs-string&quot;&gt;'[
    {
      &quot;sku&quot;: &quot;aurora-battery-pro-100&quot;,
      &quot;source&quot;: { &quot;locale&quot;: &quot;en-US&quot; },
      &quot;name&quot;: &quot;Aurora Battery Pro 100&quot;,
      &quot;slug&quot;: &quot;aurora-battery-pro-100.html&quot;,
      &quot;status&quot;: &quot;ENABLED&quot;,
      &quot;description&quot;: &quot;High-performance 100Ah lithium battery for electric vehicles.&quot;,
      &quot;shortDescription&quot;: &quot;100Ah LiFePO4 traction battery&quot;,
      &quot;visibleIn&quot;: [&quot;CATALOG&quot;, &quot;SEARCH&quot;],
      &quot;metaTags&quot;: {
        &quot;title&quot;: &quot;Aurora Battery Pro 100&quot;,
        &quot;description&quot;: &quot;100Ah LiFePO4 battery for EVs&quot;,
        &quot;keywords&quot;: [&quot;battery&quot;, &quot;aurora&quot;, &quot;electric vehicle&quot;]
      },
      &quot;attributes&quot;: [
        { &quot;code&quot;: &quot;brand&quot;, &quot;values&quot;: [&quot;Aurora&quot;] },
        { &quot;code&quot;: &quot;location&quot;, &quot;values&quot;: [&quot;US&quot;] },
        { &quot;code&quot;: &quot;capacity_ah&quot;, &quot;values&quot;: [&quot;100&quot;] }
      ],
      &quot;images&quot;: [
        {
          &quot;url&quot;: &quot;https://example.com/images/aurora-battery-pro-100.jpg&quot;,
          &quot;label&quot;: &quot;Aurora Battery Pro 100&quot;,
          &quot;roles&quot;: [&quot;BASE&quot;, &quot;SMALL&quot;],
          &quot;customRoles&quot;: []
        }
      ],
      &quot;routes&quot;: [
        { &quot;path&quot;: &quot;batteries&quot; },
        { &quot;path&quot;: &quot;batteries/lithium&quot;, &quot;position&quot;: 1 }
      ]
    }
  ]'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Auffällig: Alle Attributwerte – egal ob &lt;code&gt;TEXT&lt;/code&gt;, &lt;code&gt;DECIMAL&lt;/code&gt; oder &lt;code&gt;INT&lt;/code&gt; – werden als Strings in &lt;code&gt;values&lt;/code&gt; übergeben. ACO konvertiert sie intern anhand der vorher definierten Metadaten. An manchen Stellen würde ich mir etwas mehr Tiefe im Datenmodell wünschen, um auch kompliziertere Datenstrukturen (z. B. strukturierte Variantenkonfigurationen) sauber abbilden zu können. Das Array-Modell ist funktional, aber manchmal etwas flach.&lt;/p&gt;
&lt;h3&gt;Schritt 3: Price Books und Preise&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Price Books&lt;/strong&gt; ermöglichen unterschiedliche Preisstrukturen für verschiedene Kundensegmente, Regionen oder Kanäle – ohne den Basiskatalog zu verändern. Price Books können hierarchisch aufgebaut werden: Ein Basis-Price-Book legt die Währung fest, Kind-Price-Books erben davon und können selektiv überschreiben.&lt;/p&gt;
&lt;p&gt;Zunächst werden die Price Books selbst angelegt:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -X POST \
  &lt;span class=&quot;hljs-string&quot;&gt;'https://na1-sandbox.api.commerce.adobe.com/{tenantId}/v1/catalog/price-books'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Content-Type: application/json'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Authorization: Bearer {accessToken}'&lt;/span&gt; \
  -d &lt;span class=&quot;hljs-string&quot;&gt;'[
    {
      &quot;priceBookId&quot;: &quot;us&quot;,
      &quot;name&quot;: &quot;US Base Price Book&quot;,
      &quot;currency&quot;: &quot;USD&quot;
    },
    {
      &quot;priceBookId&quot;: &quot;us-retail&quot;,
      &quot;parentId&quot;: &quot;us&quot;,
      &quot;name&quot;: &quot;US Retail&quot;
    },
    {
      &quot;priceBookId&quot;: &quot;us-wholesale&quot;,
      &quot;parentId&quot;: &quot;us&quot;,
      &quot;name&quot;: &quot;US Wholesale&quot;
    },
    {
      &quot;priceBookId&quot;: &quot;eu&quot;,
      &quot;name&quot;: &quot;EU Base Price Book&quot;,
      &quot;currency&quot;: &quot;EUR&quot;
    }
  ]'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ein Price Book ohne &lt;code&gt;parentId&lt;/code&gt; ist ein Root-Price-Book und muss eine &lt;code&gt;currency&lt;/code&gt; definieren. Kind-Price-Books erben die Währung vom Parent und brauchen kein eigenes &lt;code&gt;currency&lt;/code&gt;-Feld – nur eine &lt;code&gt;parentId&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Danach werden die Preise pro SKU und Price Book über einen separaten Endpoint gepflegt:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -X POST \
  &lt;span class=&quot;hljs-string&quot;&gt;'https://na1-sandbox.api.commerce.adobe.com/{tenantId}/v1/catalog/products/prices'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Content-Type: application/json'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Authorization: Bearer {accessToken}'&lt;/span&gt; \
  -d &lt;span class=&quot;hljs-string&quot;&gt;'[
    {
      &quot;sku&quot;: &quot;aurora-battery-pro-100&quot;,
      &quot;regular&quot;: 899.99,
      &quot;priceBookId&quot;: &quot;us&quot;
    },
    {
      &quot;sku&quot;: &quot;aurora-battery-pro-100&quot;,
      &quot;regular&quot;: 749.99,
      &quot;priceBookId&quot;: &quot;us-wholesale&quot;
    },
    {
      &quot;sku&quot;: &quot;aurora-battery-pro-100&quot;,
      &quot;regular&quot;: 849.00,
      &quot;priceBookId&quot;: &quot;eu&quot;
    }
  ]'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Dasselbe Produkt bekommt also je nach Price Book einen anderen Preis. Welchen Preis die GraphQL-API zurückliefert, steuert der &lt;code&gt;AC-Price-Book-ID&lt;/code&gt;-Header im Storefront-Request – ohne dass dafür die Produktdaten angepasst werden müssten.&lt;/p&gt;
&lt;h2&gt;Das Datenmodell: Catalog Views und Policies&lt;/h2&gt;
&lt;p&gt;Der eigentlich interessante Teil der CCDM-Architektur ist nicht der Import, sondern die &lt;strong&gt;Filterschicht&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Catalog Views&lt;/strong&gt; definieren eine Geschäftseinheit: ein Händler, eine Marke, ein Markt. Jede View ist mit einer Katalogquelle (Locale) und einer Menge von Policies verknüpft.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Policies&lt;/strong&gt; sind Datenzugriffsfilter auf Basis von Produktattributen. Eine Policy &lt;code&gt;Brand&lt;/code&gt; mit Wert &lt;code&gt;Aurora&lt;/code&gt; liefert beispielsweise ausschließlich Produkte, die das Attribut &lt;code&gt;brand = Aurora&lt;/code&gt; tragen.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Das bedeutet: Derselbe Basiskatalog kann über verschiedene Catalog Views mit verschiedenen Policies völlig unterschiedliche Produktmengen ausliefern – ohne Datenduplizierung. Für Szenarien mit mehreren Marken, Märkten oder Vertriebskanälen ist das ein erheblicher architektonischer Vorteil.&lt;/p&gt;
&lt;p&gt;Ein konkretes Beispiel aus der offiziellen Dokumentation: Ein fiktives Unternehmen (&lt;em&gt;Zenith Automotive&lt;/em&gt;) pflegt einen einzigen Katalog für zwei Marken und zwei Märkte. Statt vier separate Instanzen zu betreiben, wird ein View mit zwei Policies konfiguriert:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Policy &lt;code&gt;Location&lt;/code&gt; filtert nach Zielmarkt (USA, UK)&lt;/li&gt;
&lt;li&gt;Policy &lt;code&gt;Brand&lt;/code&gt; filtert nach Marke (Aurora, Bolt)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ein Produkt trägt die entsprechenden Attribute. Welche Produkte ein API-Aufruf zurückliefert, hängt ausschließlich von den übergebenen Policy-Headern ab – nicht von der Datenstruktur selbst.&lt;/p&gt;
&lt;h2&gt;Datenzugriff: GraphQL raus&lt;/h2&gt;
&lt;p&gt;Die Storefront – ob EDS-basiert oder eine eigene Headless-Implementierung – greift auf die Daten per &lt;strong&gt;GraphQL Merchandising API&lt;/strong&gt; zu. Authentifizierung ist auf dieser Ebene nicht erforderlich; die Steuerung läuft über HTTP-Header:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Header&lt;/th&gt;
&lt;th&gt;Bedeutung&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AC-View-ID&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pflichtfeld – welche Catalog View soll verwendet werden?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AC-Policy-{Name}&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Optional – Filterung nach Policy-Wert, z. B. &lt;code&gt;AC-Policy-Brand: Aurora&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;AC-Price-Book-ID&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Optional – welches Price Book soll für die Preisberechnung genutzt werden?&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Eine typische Produktsuche sieht so aus:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -X POST \
  &lt;span class=&quot;hljs-string&quot;&gt;'https://na1-sandbox.api.commerce.adobe.com/{tenantId}/graphql'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'Content-Type: application/json'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'AC-View-ID: {catalogViewId}'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'AC-Policy-Brand: Aurora'&lt;/span&gt; \
  -H &lt;span class=&quot;hljs-string&quot;&gt;'AC-Price-Book-ID: us-wholesale'&lt;/span&gt; \
  -d &lt;span class=&quot;hljs-string&quot;&gt;'{
    &quot;query&quot;: &quot;query ProductSearch($search: String!) {
      productSearch(phrase: $search, page_size: 10) {
        items {
          productView {
            sku
            name
            description
            images { url }
            ... on SimpleProductView {
              price {
                regular {
                  amount { value currency }
                }
              }
            }
          }
        }
      }
    }&quot;,
    &quot;variables&quot;: { &quot;search&quot;: &quot;battery&quot; }
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Die Response enthält ausschließlich Produkte, die zur konfigurierten View und Policy passen. Das Frontend muss nur die richtigen Header mitschicken – die gesamte Kataloglogik liegt in der ACO-Konfiguration.&lt;/p&gt;
&lt;h2&gt;Praktische Use Cases&lt;/h2&gt;
&lt;p&gt;Wo ist dieser Ansatz in der Praxis relevant?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Multi-Brand-Händler ohne Datensilos:&lt;/strong&gt; Wer heute für jede Marke eine separate Magento-Instanz betreibt, kennt den Aufwand: Doppelte Pflege, doppelte Synchronisation, doppelter Upgrade-Aufwand. Mit CCDM ist das ein einziger Basiskatalog mit konfigurierten Views – und die organisatorische Trennung bleibt über Policies erhalten.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Internationalisierung ohne Datenduplizierung:&lt;/strong&gt; Verschiedene Märkte, verschiedene Preise, verschiedene Sortimente – über Price Books und Policies steuerbar, ohne den Katalog zu kopieren.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Headless-Storefronts mit beliebigem Backend:&lt;/strong&gt; ACO ist explizit darauf ausgelegt, dass das datenliefernde System kein Adobe Commerce sein muss. ERP, PIM, Shopify, ein eigenes System – alles kann über die REST Ingestion API einspeisen. Die EDS-Storefront konsumiert dann via GraphQL. Wer die EDS-Storefront nicht nutzen will, kann mit einem eigenen Frontend direkt an den GraphQL-Endpoint andocken. Ich habe das exemplarisch umgesetzt unter &lt;a href=&quot;https://aco.demo.muench.dev&quot;&gt;aco.demo.muench.dev&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Warenkorb und Checkout bleiben flexibel:&lt;/strong&gt; ACO stellt bewusst keinen Warenkorb bereit. Der wird über API Mesh oder App Builder an ein bestehendes System angebunden. Das ist pragmatisch – und verhindert, dass für einen Storefront-Umbau die gesamte Transaktionslogik angefasst werden muss.&lt;/p&gt;
&lt;h2&gt;Ehrliche Einschätzung&lt;/h2&gt;
&lt;p&gt;Das Modell ist relativ einfach aufgebaut (mir manchmal zu einfach). Die klare Trennung zwischen Ingestion (REST), Konfiguration (Catalog Views/Policies) und Delivery (GraphQL) ist sauber durchdacht. Gerade für komplexe Multi-Brand- oder Multi-Market-Setups ist das eine Architektur, die in klassischen Magento-Projekten mit erheblich mehr Aufwand gebaut werden muss.&lt;/p&gt;
&lt;p&gt;Allerdings bietet ACO keine Transaktionslogik direkt von Haus aus an. Alles was komplizierter ist, muss momentan selbst angebaut werden.&lt;/p&gt;
&lt;p&gt;Dazu kommt: ACO ist &lt;strong&gt;SaaS-only&lt;/strong&gt;. Für Händler, die ihre Datenhaltung im eigenen Rechenzentrum behalten müssen oder wollen – ein Thema, das ich im &lt;a href=&quot;&quot;&gt;Tech-Trends-Post für 2026&lt;/a&gt; unter dem Stichwort Sovereign Commerce ausgeführt habe – ist ACO in seiner aktuellen Form keine Option.&lt;/p&gt;
&lt;p&gt;Für die richtige Zielgruppe dagegen – Enterprise-Händler mit komplexen Katalogstrukturen, die ihren bestehenden Backend-Stack behalten und die Storefront-Experience modernisieren wollen – ist ACO ein überzeugender Ansatz.&lt;/p&gt;
&lt;p&gt;Für alle die vielleicht schon eine sehr heterogene Landschaft haben und sowieso vieles auf Services verteilt haben, ist ACO echt spannend. Die Stärken von ACO sind auch immer in Verbindung mit einem hochskalierenden Frontend auf Basis von Adobe Edge Delivery Services zu sehen. Wer nur einach Daten halten und ausspielen will, für den ist ACO vielleicht nicht das richtige. Das heisst aber nicht, dass es nicht auch spannend sein kann ein eigenes Frontend direkt auf die GraphQL Schnittstelle zu setzen.&lt;/p&gt;
&lt;h2&gt;Fazit&lt;/h2&gt;
&lt;p&gt;Das &lt;strong&gt;Unified Data Model&lt;/strong&gt; hinter Adobe Commerce Optimizer ist keine Abstraktionsschicht ohne Substanz. Es ist ein einfaches, quellenunabhängiges Katalogmodell: Daten kommen per REST-API rein, werden über Catalog Views und Policies konfiguriert und per GraphQL ausgeliefert – an die EDS-Storefront oder ein eigenes Frontend.&lt;/p&gt;
&lt;p&gt;Wer das selbst erkunden will: Die offizielle Dokumentation ist inzwischen gut aufgestellt. Einstiegspunkte sind die &lt;a href=&quot;https://developer.adobe.com/commerce/services/optimizer/data-ingestion/using-the-api/&quot;&gt;Developer-Doku zur Data Ingestion API&lt;/a&gt; und der &lt;a href=&quot;https://developer.adobe.com/commerce/services/optimizer/ccdm-use-case/&quot;&gt;End-to-End Use Case&lt;/a&gt; in der Adobe-Dokumentation. Ihr braucht dann zum Ausprobieren eine Sandbox von Adobe oder lasst es euch von mir zeigen. :-)&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Agentic Commerce: Wenn KI-Agenten den Einkaufswagen übernehmen</title>
        <link href="https://muench.dev/post/2026-04-agentic-commerce-wenn-ki-agenten-den-einkaufswagen-uebernehmen"/>
        <id>https://muench.dev/post/2026-04-agentic-commerce-wenn-ki-agenten-den-einkaufswagen-uebernehmen</id>
        <published>2026-04-10T05:00:00+00:00</published>
        <updated>2026-06-29T13:28:56+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;In den letzten Monaten beschäftigt mich ein Thema mehr als jedes andere im E-Commerce-Umfeld: &lt;strong&gt;Agentic Commerce&lt;/strong&gt;. KI-Agenten, die autonom einkaufen, verhandeln und bezahlen – ohne dass ein Mensch auch nur einen Button klickt. Das klingt nach Science-Fiction, ist aber bereits Realität. Und wer im Magento/Adobe-Commerce-Ökosystem unterwegs ist, sollte jetzt genauer hinschauen. Aus diesem Grund gibt es in diesem Blog-Beitrag auch einen Blick ins Magento Ökosystem.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.mckinsey.com/capabilities/quantumblack/our-insights/the-automation-curve-in-agentic-commerce&quot;&gt;McKinsey&lt;/a&gt; beziffert das globale Marktpotenzial auf &lt;strong&gt;3–5 Billionen US-Dollar bis 2030&lt;/strong&gt;, &lt;a href=&quot;https://www.gartner.com/en/articles/strategic-predictions-for-2026&quot;&gt;Gartner&lt;/a&gt; prognostiziert, dass 90 % aller B2B-Einkäufe bis 2028 von KI-Agenten abgewickelt werden. Gleichzeitig zeigt ein nüchterner Blick auf die aktuellen Daten: Der Hype ist der realen Nutzeradoption weit voraus. OpenAI hat sein Instant Checkout in ChatGPT Anfang 2026 bereits wieder auf Händler-Apps umgestellt. Deutsche Verbraucher würden einem KI-Agenten im Schnitt maximal 50 Euro pro Monat anvertrauen.&lt;/p&gt;
&lt;p&gt;Ich versuche in diesem Post, das Thema strukturiert aufzudröseln: Was ist Agentic Commerce überhaupt? Welche Protokolle setzen sich durch? Wer sind die relevanten Player? Und was bedeutet das konkret für das Magento/Adobe-Ökosystem?&lt;/p&gt;
&lt;h2&gt;Was Agentic Commerce vom klassischen E-Commerce unterscheidet&lt;/h2&gt;
&lt;p&gt;Der entscheidende Unterschied liegt in der Rollenverteilung. Im traditionellen E-Commerce sucht, vergleicht und kauft der Mensch aktiv. Bei Conversational Commerce führt ein Chatbot ein Gespräch, aber der Mensch entscheidet. Bei &lt;strong&gt;Agentic Commerce delegiert der Mensch&lt;/strong&gt; – er definiert Ziele, Budget und Präferenzen, und der Agent handelt innerhalb dieser Leitplanken eigenständig.&lt;/p&gt;
&lt;p&gt;Deloitte beschreibt vier evolutionäre Stufen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Assisted Discovery&lt;/strong&gt; – KI hilft bei der Produktsuche&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agentic Shopping&lt;/strong&gt; – Agent übernimmt Teilschritte autonom&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Autonomous Shopping&lt;/strong&gt; – vollständig eigenständige Käufe&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent-to-Agent Commerce&lt;/strong&gt; – Käufer- und Verkäufer-Agenten verhandeln direkt miteinander, ohne dass je ein Mensch einen Bildschirm sieht&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Wir stehen gerade zwischen Stufe 1 und 2. Stufe 4 ist Zukunft – aber die Infrastruktur dafür entsteht jetzt.&lt;/p&gt;
&lt;h2&gt;Der Protokoll-Stack: Kein Krieg, sondern Schichten&lt;/h2&gt;
&lt;p&gt;Anfangs gab es viel Lärm um einen angeblichen „Protocol War&amp;quot; zwischen MCP, A2A, UCP und ACP. Das hat sich inzwischen differenziert. Die Protokolle sind &lt;strong&gt;keine Konkurrenten, sondern Schichten eines gemeinsamen Stacks&lt;/strong&gt;.&lt;/p&gt;
&lt;h3&gt;MCP – die universelle Datenschicht&lt;/h3&gt;
&lt;p&gt;Das &lt;a href=&quot;https://en.wikipedia.org/wiki/Model_Context_Protocol&quot;&gt;Model Context Protocol (MCP)&lt;/a&gt;, im November 2024 von Anthropic vorgestellt, ist mittlerweile der De-facto-Standard dafür, wie Sprachmodelle auf externe Daten, APIs und Tools zugreifen. Es funktioniert wie „USB-C für KI&amp;quot; – eine standardisierte Schnittstelle, unabhängig vom Modell-Hersteller.&lt;/p&gt;
&lt;p&gt;Im Dezember 2025 übergab Anthropic MCP an die &lt;strong&gt;&lt;a href=&quot;https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation&quot;&gt;Agentic AI Foundation (AAIF)&lt;/a&gt;&lt;/strong&gt; unter dem Dach der Linux Foundation. Gründungsmitglieder sind AWS, Google, Microsoft und OpenAI – inzwischen sind über 10.000 öffentliche MCP-Server registriert. Das ist ein starkes Signal für langfristige Stabilität.&lt;/p&gt;
&lt;h3&gt;A2A – Agenten reden miteinander&lt;/h3&gt;
&lt;p&gt;Googles &lt;strong&gt;&lt;a href=&quot;https://www.ibm.com/think/topics/agent2agent-protocol&quot;&gt;Agent-to-Agent Protocol (A2A)&lt;/a&gt;&lt;/strong&gt;, im April 2025 vorgestellt, ermöglicht Agenten unterschiedlicher Hersteller, einander zu entdecken und Aufgaben zu delegieren. Kernkonzept sind &lt;strong&gt;Agent Cards&lt;/strong&gt; – JSON-Metadaten unter &lt;code&gt;/.well-known/agent.json&lt;/code&gt;, die Fähigkeiten und Auth-Anforderungen beschreiben. Quasi eine Visitenkarte für Agenten. Im Juni 2025 ebenfalls an die Linux Foundation übergeben, inzwischen mit 150+ unterstützenden Organisationen.&lt;/p&gt;
&lt;h3&gt;UCP vs. ACP – die eigentliche Protokollfrage im Commerce&lt;/h3&gt;
&lt;p&gt;Das ist die Frage, die mich im Moment am meisten beschäftigt. Die Kollegen bei valantic haben dazu einen lesenswerten &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-protocol/&quot;&gt;Deep-Dive zum Agentic Commerce Protocol&lt;/a&gt; veröffentlicht, der die technischen Unterschiede beider Ansätze gut herausarbeitet.&lt;/p&gt;
&lt;p&gt;Das &lt;strong&gt;Universal Commerce Protocol (UCP)&lt;/strong&gt; wurde im Januar 2026 auf der NRF von Google und Shopify gemeinsam vorgestellt. Es deckt den kompletten Commerce-Lebenszyklus ab – von Discovery über Checkout bis Post-Purchase-Support. Transport-agnostisch, mit REST-, MCP- und A2A-Bindings. Die Koalition dahinter ist beeindruckend: Walmart, Target, Etsy, Wayfair, Zalando, Mastercard, Visa, Stripe und 20+ weitere Partner.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/ucp-checkout.png&quot; alt=&quot;UCP Checkout&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Universal Commerce Protocol: Checkout Sequenz&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Layered Architecture&lt;/strong&gt;: UCP trennt die Verantwortlichkeiten in Schichten. Der Shopping Service definiert die Grundbausteine (Warenkorb, Status), während Capabilities (Checkout, Catalog, Orders) und Extensions (z. B. spezielle Liefermodelle) flexibel hinzugefügt werden können.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Discovery via /.well-known&lt;/strong&gt;: Ähnlich wie bei A2A nutzt UCP einen standardisierten Pfad (/.well-known/ucp), über den Agenten die &amp;quot;Fähigkeiten&amp;quot; eines Shops entdecken und aushandeln können, welche Protokollversionen beide Seiten beherrschen.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;State-Management&lt;/strong&gt;: Ein Checkout im UCP durchläuft definierte Zustände: incomplete (fehlende Daten), requires_escalation (Eingriff nötig) und ready_for_complete (bereit zum Abschluss). Dies ermöglicht den nahtlosen Übergang zwischen KI-Automatisierung und menschlicher Interaktion über das Embedded Checkout Protocol (ECP).&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Das &lt;strong&gt;Agentic Commerce Protocol (ACP)&lt;/strong&gt; wurde von OpenAI und Stripe entwickelt und trieb ChatGPTs „Instant Checkout&amp;quot; an. &lt;a href=&quot;https://www.digitalcommerce360.com/2026/03/06/openai-shifts-checkout-plans-agentic-commerce-strategy/&quot;&gt;OpenAI hat diesen Ansatz Anfang März 2026 jedoch bereits angepasst&lt;/a&gt;: Der Checkout-Prozess verlagert sich zunehmend in händlerspezifische „ChatGPT Apps&amp;quot;, weil die Komplexität des Handels – dynamische Preise, Echtzeit-Bestände, Steuerregeln – besser in kontrollierten Händler-Umgebungen abgebildet werden kann. Walmart meldete eine 3x schlechtere Conversion als auf walmart.com direkt.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/acp-checkout.png&quot; alt=&quot;ACP Checkout&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Agentic Commerce Protocol: Checkout Sequenz&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Minimalistische Architektur&lt;/strong&gt;: Das Protokoll beschränkt sich auf die vier Endpunkte Create, Update, Complete und Cancel Checkout, um die Komplexität für Händler gering zu halten.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shared Payment Token (SPT)&lt;/strong&gt;: Dies ist der entscheidende Sicherheitsmechanismus. Der Agent (z. B. ChatGPT) sieht niemals die echten Kreditkartendaten des Nutzers. Er erhält lediglich einen &amp;quot;selbstzerstörenden&amp;quot;, einmaligen Token von Stripe, den er an den Händler weiterreicht.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Merchant of Record&lt;/strong&gt;: Im ACP-Modell bleibt der Händler der rechtliche Verkäufer (&amp;quot;Merchant of Record&amp;quot;) und behält die Kontrolle über die Abwicklung, Steuern und den Kundensupport.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Voraussetzung&lt;/strong&gt;: Händler müssen ihre Produktkataloge maschinenlesbar (Product Feed) bereitstellen und ihre Checkout-Logik über die ACP-Schnittstellen zugänglich machen.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Strategisch klug aufgestellt sind Stripe und Shopify&lt;/strong&gt; – beide sind in beiden Lagern vertreten. Das macht sie zu Gewinnern unabhängig vom Ausgang.&lt;/p&gt;
&lt;h3&gt;AP2 und ANP als Ergänzungen&lt;/h3&gt;
&lt;p&gt;Googles &lt;strong&gt;Agent Payments Protocol (AP2)&lt;/strong&gt; regelt die kryptographisch abgesicherte Payment-Autorisierung durch Agenten, mit drei abgestuften Autonomie-Levels.&lt;/p&gt;
&lt;p&gt;Das AP2 nutzt das Konzept der Verifiable Credentials (VC), um Vertrauen in autonomen Systemen zu schaffen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intent Mandate (Absicht)&lt;/strong&gt;: Erteilt dem Agenten den Auftrag, innerhalb bestimmter Leitplanken (z. B. „maximal 150 €“) zu suchen und zu verhandeln. Es dient als Beweis, dass der Agent nicht eigenmächtig handelt.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cart Mandate (Warenkorb)&lt;/strong&gt;: Dieses Dokument wird vom Händler und vom Nutzer signiert. Es fixiert den Preis und die Artikelmenge, sodass der Agent den Preis während des Checkouts nicht mehr (zuungunsten des Nutzers) verändern kann.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Payment Mandate (Zahlung)&lt;/strong&gt;: Ein minimaler Datensatz, der an die Bank übermittelt wird. Er signalisiert dem Zahlungsnetzwerk, ob der Nutzer gerade anwesend ist (Human-Present) oder ob der Agent eine vorab genehmigte Daueraufgabe ausführt (Human-Not-Present).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/ap2.png&quot; alt=&quot;AP2 Mandat&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Das &lt;strong&gt;Agent Network Protocol (ANP)&lt;/strong&gt; verfolgt den ambitioniertesten Ansatz mit dezentraler Agenten-Entdeckung via W3C DIDs – ist aber ohne starkes Unternehmens-Backing noch deutlich weniger reif.&lt;/p&gt;
&lt;p&gt;ANP verfolgt im Gegensatz zu den meist Client-Server-basierten Protokollen wie ACP oder UCP einen radikal dezentralen &lt;strong&gt;Peer-to-Peer (P2P)&lt;/strong&gt; Ansatz. Es wird oft als das „HTTP des Agentic Web“ bezeichnet und setzt konsequent auf Web-Standards wie W3C DIDs (Decentralized Identifiers) und Semantic Web Technologien.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/anp.png&quot; alt=&quot;ANP Protokoll&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Mandat im ANP Protokoll&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Computer Use als pragmatischer Fallback&lt;/h3&gt;
&lt;p&gt;Für die vielen Websites ohne API-Anbindung bleibt Browser-Automatisierung der Fallback. Claudes Computer Use erreicht inzwischen 72,5 % auf dem OSWorld-Benchmark (von 14,9 % bei Launch). Langsamer und fehleranfälliger als saubere APIs – aber sofort einsetzbar. McKinsey sieht Web-Crawling als Zwischenschritt, bevor Merchants standardisierte Protokolle implementieren.&lt;/p&gt;
&lt;h2&gt;Wer baut die Infrastruktur?&lt;/h2&gt;
&lt;h3&gt;Shopify hat den größten Vorsprung&lt;/h3&gt;
&lt;p&gt;Shopify ist der aggressivste Akteur. Seit den Summer '25 Editions hat &lt;strong&gt;jeder Shopify-Store einen eigenen MCP-Endpoint&lt;/strong&gt; (&lt;code&gt;your-store.myshopify.com/api/mcp&lt;/code&gt;). Der &lt;strong&gt;Shopify Catalog&lt;/strong&gt; kategorisiert Milliarden von Produkten für KI-Agenten. &lt;strong&gt;Agentic Storefronts&lt;/strong&gt; ermöglichen es Händlern, ihre Markenpräsenz auf ChatGPT, Perplexity, Google Gemini und Microsoft Copilot direkt aus dem Admin zu steuern.&lt;/p&gt;
&lt;p&gt;Besonders interessant: Der neue &lt;strong&gt;Agentic Plan&lt;/strong&gt; öffnet den Shopify Catalog explizit für Marken auf Magento, Salesforce Commerce Cloud und Custom-Stacks – ohne Migration. Das ist eine aggressive Einladung an unsere Community.&lt;/p&gt;
&lt;h3&gt;Google baut den vollständigsten Stack&lt;/h3&gt;
&lt;p&gt;Google hat: eigene Protokolle (A2A, AP2), gemeinsam mit Shopify entwickelten Commerce-Standard (UCP), 50 Milliarden indexierte Produkte im Shopping Graph, KI-Shopping in AI Mode und Gemini sowie eine neue Enterprise-Plattform mit Kroger, Lowe's und Woolworths als Live-Kunden. Über eine Milliarde Shopping-Interaktionen täglich laufen durch Google-Oberflächen.&lt;/p&gt;
&lt;h3&gt;Adobe Commerce ist drin – aber noch nicht live&lt;/h3&gt;
&lt;p&gt;Für unser Ökosystem ist die Situation ehrlich gesagt gemischt. &lt;a href=&quot;https://business.adobe.com/blog/adobe-commerce-commits-to-agentic-commerce-standards&quot;&gt;Adobe hat am 18. Februar 2026 offiziell die Unterstützung von UCP, ACP und AP2 angekündigt&lt;/a&gt; – aber noch kein Live-Shopping über KI-Plattformen. Während Shopify-Händler bereits über ChatGPT und Gemini verkaufen, baut Adobe seine Grundlagen noch auf.&lt;/p&gt;
&lt;p&gt;Adobe nennt dabei beeindruckende Zahlen aus dem &lt;a href=&quot;https://www.digitalcommerce360.com/2026/02/23/adobe-commerce-platform-agentic-ai-standards/&quot;&gt;Adobe Digital Insights Report vom Januar 2026&lt;/a&gt;: KI-Referrals erzielen eine 31 % höhere Konversionsrate, 254 % mehr Umsatz pro Besuch und 45 % längere Verweildauer gegenüber herkömmlichem Traffic.&lt;/p&gt;
&lt;p&gt;Adobes Strategie hat drei Säulen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Discovery Layer&lt;/strong&gt; mit dem LLM Optimizer (GA seit Oktober 2025) – macht Produktkataloge für KI-Agenten auffindbar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent-to-Agent Commerce Layer&lt;/strong&gt; durch UCP/ACP-Unterstützung (angekündigt, noch nicht live)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Brand-Owned Experience&lt;/strong&gt; mit dem Adobe Brand Concierge als konversationelle KI-Schicht auf AEP-Profildaten&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Der &lt;strong&gt;&lt;a href=&quot;https://business.adobe.com/summit/2025/sessions/optimize-your-commerce-experiences-with-catalog-s304.html&quot;&gt;Adobe Commerce Optimizer&lt;/a&gt;&lt;/strong&gt; ist das vielversprechendste neue Produkt: ein eigenständiges Commerce-Frontend auf Edge Delivery Services mit Lighthouse-Score 100, einer GraphQL-Merchandising API für Agents und Frontends sowie einer Data Ingestion REST API. Entscheidend: Es arbeitet mit jedem Commerce-Backend, nicht nur Adobe Commerce.&lt;/p&gt;
&lt;p&gt;Die &lt;strong&gt;&lt;a href=&quot;https://experienceleague.adobe.com/en/docs/experience-cloud-ai/experience-cloud-ai/agents/agent-orchestrator&quot;&gt;AEP Agent Orchestrator&lt;/a&gt;&lt;/strong&gt; Plattform (GA September 2025) ist das technische Fundament: 10 zweckgebundene KI-Agenten, ein Reasoning Engine, Agent SDK und Agent Registry. Über 70 % der berechtigten AEP-Kunden nutzen bereits den AI Assistant.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/media_1ff35d548470de5ced1d492e199ffe9e831b256fd.webp&quot; alt=&quot;Components of Agent Orchestrator&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Bildquelle: Adobe&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Das Magento MCP-Ökosystem lebt&lt;/h3&gt;
&lt;p&gt;Was mich positiv überrascht hat: Das MCP-Ökosystem rund um Magento ist überraschend lebendig. Neben dem offiziellen &lt;strong&gt;Adobe Commerce Extensibility MCP Server&lt;/strong&gt; (mit RAG-Zugriff auf die gesamte Dokumentation und 7 AI-Agent-Skills) gibt es mindestens 10 Community-Server:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://dev.to/rafaelcg/why-i-built-an-adobe-commerce-dev-mcp-server-and-how-it-can-help-you-code-faster-5ac9&quot;&gt;Rafael Corrêa Gomes' GraphQL-basierter Dev MCP&lt;/a&gt; (Practice Director bei Valtech)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://mirasvit.com/magento-2-mcp-ai-integration.html&quot;&gt;Mirasvits kommerzieller AI Agent Connector&lt;/a&gt; – ermöglicht Befehle wie „Reduziere alle Sommerprodukte, die sich 30 Tage nicht verkauft haben, um 15 %&amp;quot;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://commercemarketplace.adobe.com/partner/Freento&quot;&gt;Freentos Extension auf dem Adobe Marketplace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://magenable.com.au/data-science/connect-your-magento-or-adobe-commerce-store-with-openai-agent-builder/&quot;&gt;Magenable Magento MPC&lt;/a&gt; für OpenAI Agent Builder&lt;/li&gt;
&lt;li&gt;Magendoos REST- und GraphQL-MCP-Server mit 594 Endpoints und weitere&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://mage-remote-run.muench.dev/command-docs/mcp&quot;&gt;mage-remote-run MCP&lt;/a&gt; - Der Vollständigkeit wegen liste ich hier auch den MCP Server meines eigenen neuen Tools über den mal auch beliebige Shops flexibel andocken kann ohne etwas in dem jeweiligen Shop zu installieren.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Die Community reagiert schnell. Ob das reicht, um mit Shopifys nativem MCP-Endpoint pro Store mitzuhalten – das ist die Frage, die mich treibt.&lt;/p&gt;
&lt;h3&gt;ACP-Module für Magento 2: Die Community liefert bereits&lt;/h3&gt;
&lt;p&gt;Parallel zum MCP-Ökosystem entstehen erste Open-Source-Implementierungen des Agentic Commerce Protocol direkt für Magento 2. Zwei Projekte, die ich im Blick habe:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/run-as-root/ACP-for-Magento-2&quot;&gt;run-as-root/ACP-for-Magento-2&lt;/a&gt;&lt;/strong&gt; ist das technisch ausgefeilteste der beiden. Das Modul der Würzburger Agentur run_as_root setzt zu 95 % die OpenAI-ACP-Spezifikation um: vollständige Checkout Session API mit fünf Endpunkten, ACP-konformer Product Feed (inkl. Varianten, Gallery-Images, Echtzeit-Inventory), HMAC-Signaturvalidierung, Idempotency-Key-Handling via Redis und Replay-Attack-Schutz. Die Stripe-Integration für Delegated Payments ist dabei, ebenso wie 39 Unit- und Integrationstests.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/magebitcom/magento2-agentic-commerce-module&quot;&gt;magebitcom/magento2-agentic-commerce-module&lt;/a&gt;&lt;/strong&gt; kommt von der lettischen Agentur Magebit und bezeichnet sich selbst als erstes öffentlich verfügbares Open-Source-ACP-Modul für Magento 2. Der Funktionsumfang ist ähnlich: ChatGPT-kompatibler Product Feed Export, Instant Checkout, Delegated Payment via Stripe, Webhooks. Wichtig: Das Modul ist &lt;strong&gt;Hyva- und Adobe Commerce Cloud-kompatibel&lt;/strong&gt; – das ist für viele Projekte entscheidend.&lt;/p&gt;
&lt;h3&gt;Salesforce und Amazon der Vollständigkeit halber&lt;/h3&gt;
&lt;p&gt;Salesforce hat mit Agentforce Commerce (GA November 2025) über 6.000 bezahlte Deals abgeschlossen. Die KI-gestützte Intent-Aware Search basiert auf einem Commerce-optimierten Small Language Model. Salesforce-eigene Daten: KI-Agenten beeinflussten 17 % ($13,5 Mrd.) der Holiday-Weekend-Bestellungen 2025.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://ppc.land/amazons-ai-shopping-assistant-drove-12-billion-in-sales-for-2025/&quot;&gt;Amazon betreibt mit Rufus&lt;/a&gt; (300 Millionen aktive Nutzer, geschätzt 12 Mrd. Dollar inkrementeller Jahresumsatz) und der „Buy for Me&amp;quot;-Funktion ein geschlossenes Ökosystem. Alle OpenAI-Crawler blockiert, nicht in ACP oder UCP integriert. &lt;strong&gt;40 % des US-E-Commerce sind damit für externe KI-Agenten unsichtbar&lt;/strong&gt; – eine strategische Entscheidung, die Amazon teuer werden könnte.&lt;/p&gt;
&lt;h3&gt;Stripe als Payment-Schicht beider Welten&lt;/h3&gt;
&lt;p&gt;Stripe hat mit der Agentic Commerce Suite (Dezember 2025) eine vollständige Lösung: Katalog-Syndizierung, Checkout, Payments und Fraud Detection. &lt;strong&gt;&lt;a href=&quot;https://defiprime.com/stripe-mpp-vs-x402&quot;&gt;Shared Payment Tokens (SPT)&lt;/a&gt;&lt;/strong&gt; – einmal verwendbar, widerrufbar, programmierbar – lösen das Problem, wie Agenten sicher bezahlen können, ohne Zahlungsdaten offenzulegen. Parallel dazu treiben Coinbase und Cloudflare den &lt;strong&gt;&lt;a href=&quot;http://www.rootdata.com/news/584290&quot;&gt;x402-Standard&lt;/a&gt;&lt;/strong&gt; voran – optimiert für Micropayments im Machine-to-Machine-Bereich. Bis März 2026 wurden darüber bereits 50 Millionen Transaktionen abgewickelt, durchschnittlich 0,20 US-Dollar je Transaktion.&lt;/p&gt;
&lt;p&gt;Was der Wandel für PSPs konkret bedeutet, beleuchtet valantic in einem separaten Artikel: &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-payment-service-provider/&quot;&gt;Agentic Commerce und Payment Service Provider&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Was Agentic Commerce konkret bedeutet&lt;/h2&gt;
&lt;h3&gt;Im B2C noch in der Frühphase&lt;/h3&gt;
&lt;p&gt;Amazons „Buy for Me&amp;quot; (Beta seit April 2025), Googles entsprechendes Feature in Gemini, ChatGPT Shopping mit 50 Millionen täglichen Anfragen – die erste Welle läuft. Autonomous Reordering durch IoT-Geräte, Preisvergleichs-Agenten, die dutzende Retailer simultan scannen und beim optimalen Zeitpunkt kaufen – das sind die ersten real nutzbaren Use Cases.&lt;/p&gt;
&lt;p&gt;Laut &lt;a href=&quot;https://martech.org/how-ai-agents-shaped-the-record-breaking-2025-holiday-season/&quot;&gt;Adobe&lt;/a&gt; beeinflussten KI-Agenten in der Weihnachtssaison 2025 bereits &lt;strong&gt;262 Milliarden US-Dollar&lt;/strong&gt; des globalen Online-Umsatzes. KI-generierte Produktempfehlungen erzielen eine 4,4-fach höhere Konversionsrate als die traditionelle Suche.&lt;/p&gt;
&lt;h3&gt;Im B2B liegt der eigentliche Hebel&lt;/h3&gt;
&lt;p&gt;Hier sehe ich das größte Potenzial. Procurement-Agenten überwachen Verbrauchssignale, validieren Vertragspreise und platzieren Orders automatisch unter Budgetlimits. Auf der Verkäuferseite reagiert ein Sales Agent dynamisch, passt Rabatte und Lieferkonditionen an und schließt die Bestellung ab – alles in Sekunden. &lt;a href=&quot;https://www.digitalcommerce360.com/2025/11/28/gartner-ai-agents-15-trillion-in-b2b-purchases-by-2028/&quot;&gt;Gartner prognostiziert bis 2028 ein B2B-Beschaffungsvolumen von 15 Billionen US-Dollar&lt;/a&gt; durch KI-vermittelte Einkäufe.&lt;/p&gt;
&lt;h3&gt;Die unbequemen Fragen: Vertrauen, Haftung, Sichtbarkeit&lt;/h3&gt;
&lt;p&gt;Was die Adoption bremst, sind nicht die Protokolle – sondern &lt;strong&gt;Vertrauen und ungelöste Haftungsfragen&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Eine Riverty/Adyen-Umfrage (1.000 Deutsche, Dezember 2025) zeigt: 50 % würden KI-Agenten maximal 50 Euro pro Monat anvertrauen. 46 % assoziieren KI-Shopping mit Skepsis. 93 % verlangen, KI-Entscheidungen jederzeit einsehen und stoppen zu können.&lt;/p&gt;
&lt;p&gt;Die Haftungsfrage ist juristisch ungeklärt. Wer haftet, wenn der Agent falsch kauft? Vermutlich bleibt es am Merchant hängen. Hinzu kommt ein 25 % Anstieg bösartiger Händleraktivitäten im Zusammenhang mit Agentic Commerce (Visa) – Betrüger manipulieren agentische Shopping-Ergebnisse gezielt.&lt;/p&gt;
&lt;p&gt;Und dann ist da noch &lt;strong&gt;Agent Optimization&lt;/strong&gt; – der Nachfolger von SEO. Wenn nicht mehr Menschen, sondern KI-Agenten die ersten „Kunden&amp;quot; sind, braucht es maschinenlesbare Produktdaten, strukturierte Kataloge und API-First-Architektur. &lt;a href=&quot;https://www.creatuity.com/insights/agentic-ai-commerce-adobe-commerce-readiness/&quot;&gt;Creatuity empfiehlt&lt;/a&gt; dabei konkret: vollständige Produktattribute (technische Daten, Materialien, Zertifizierungen), GraphQL-Abdeckung (reduziert Payload um 30–50 %) und korrektes Schema.org Markup. Gartner prognostiziert einen 25 % Rückgang des traditionellen Suchvolumens bis 2026. Der KI-getriebene Traffic zu US-Retail-Sites stieg laut Adobe im Juli 2025 um 4.700 % im Jahresvergleich.&lt;/p&gt;
&lt;p&gt;Eine zentrale strategische Frage bleibt dabei oft ungestellt: &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-webshop-strategie/&quot;&gt;Brauchen wir in Zukunft überhaupt noch eigene Webshops?&lt;/a&gt; Die valantic-Kollegen haben das klar eingeordnet: Der Webshop verschwindet nicht, seine Rolle verschiebt sich aber vom zentralen Einstiegspunkt zum Fundament eines vernetzten Vertriebssystems. Wer eine modulare, API-basierte Architektur betreibt, ist klar im Vorteil.&lt;/p&gt;
&lt;h2&gt;Mein Fazit (bisher)&lt;/h2&gt;
&lt;p&gt;Agentic Commerce ist weder bloßer Hype noch unmittelbare Revolution – es ist eine &lt;strong&gt;fundamentale Infrastruktur-Transformation&lt;/strong&gt;, deren Nutzung der Technologie um 12–24 Monate hinterherhinkt.&lt;/p&gt;
&lt;p&gt;Für das Magento/Adobe-Commerce-Ökosystem sehe ich eine gemischte Lage: Wir haben eine lebendige MCP-Community, reichhaltige APIs und mit dem Commerce Optimizer ein zukunftsfähiges Produkt. Der Rückstand auf Shopifys native Agentic Storefronts ist aber real – und die Community holt aktiv auf, wie die ersten ACP-Module zeigen.&lt;/p&gt;
&lt;p&gt;Was ich jedem empfehle, der heute im Commerce-Bereich entwickelt:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;MCP-Server für den eigenen Shop evaluieren&lt;/strong&gt; – ob offiziell, kommerziell oder aus der Community&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ACP-Modul testen&lt;/strong&gt; – Magebit oder run-as-root bieten funktionierende Ausgangspunkte&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strukturierte Produktdaten optimieren&lt;/strong&gt; – Schema.org, JSON-LD und maschinenlesbare Kataloge sind die Grundlage&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adobe Commerce Optimizer imf Auge behalten&lt;/strong&gt; – als potenzieller Weg zu Agent-fähigen Storefronts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shopifys Agentic Plan beobachten&lt;/strong&gt; – Shopify ist hier vorne und sollte immer im Blick sein. Das gilt auch dann, wenn man selbst nicht auf Shopify setzt.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Die nächsten 12 Monate werden von &lt;em&gt;Low-Consideration-Käufen&lt;/em&gt; dominiert sein – Nachbestellungen, Standardprodukte, Commodity-Elektronik. Die wirkliche Disruption im High-Engagement-Commerce kommt später, aber langsamer als die Keynote-Slides vermuten lassen.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;API-First ist kein Nice-to-have mehr, sondern existenzkritisch.&lt;/strong&gt; Wer heute maschinenlesbare, gut dokumentierte APIs betreibt, wird morgen von KI-Agenten gefunden. Wer sich ausschließlich auf menschliche Browser-Interaktion verlässt, wird zunehmend unsichtbar.&lt;/p&gt;
&lt;h2&gt;Weiterführende Artikel&lt;/h2&gt;
&lt;p&gt;Das Thema ist breit – hier ein paar Beiträge von direkten Kollegen von mir, die ich empfehle um einen Überblick zu bekommen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;valantic:&lt;/strong&gt; &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-interview/&quot;&gt;Agentic Commerce – Interview und Einordnung&lt;/a&gt; – Was Agentic Commerce wirklich bedeutet und wo wir heute stehen&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;valantic:&lt;/strong&gt; &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-protocol/&quot;&gt;Das Agentic Commerce Protocol im Detail&lt;/a&gt; – Technischer Deep-Dive zu ACP und UCP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;valantic:&lt;/strong&gt; &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-payment-service-provider/&quot;&gt;Agentic Commerce und Payment Service Provider&lt;/a&gt; – Was der Wandel für PSPs und Zahlungsinfrastruktur bedeutet&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;valantic:&lt;/strong&gt; &lt;a href=&quot;https://www.valantic.com/de/blog/agentic-commerce-webshop-strategie/&quot;&gt;Brauchen wir noch eigene Webshops?&lt;/a&gt; – Strategische Einordnung der Rolle des eigenen Shops im Zeitalter von KI-Agenten&lt;/li&gt;
&lt;/ul&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Stabil vs. Volatil: Wann klassische Automatisierung die bessere Wahl ist – und wann nicht</title>
        <link href="https://muench.dev/post/2026-04-stabil-vs-volatil-wann-klassische-automatisierung-die-bessere-wahl-ist-und-wann-nicht"/>
        <id>https://muench.dev/post/2026-04-stabil-vs-volatil-wann-klassische-automatisierung-die-bessere-wahl-ist-und-wann-nicht</id>
        <published>2026-04-07T07:00:00+00:00</published>
        <updated>2026-04-07T10:45:14+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Wer mich kennt, weiß: Ich liebe Automatisierung, die einfach funktioniert. Um ein Prinzip zu verdeutlichen, das mir gerade durch den Kopf geht, habe ich ein kleines Gedankenexperiment in n8n aufgebaut. Es ist ein fiktives Szenario, das aber ein reales Problem moderner Workflows auf den Punkt bringt. Ich habe zwei parallele Wege konstruiert, um nützliche Daten zu generieren.&lt;/p&gt;
&lt;p&gt;Auf der einen Seite: Ein simpler Code-Node – mein &amp;quot;Fels in der Brandung&amp;quot;. Er tut exakt das, was er soll, jedes Mal gleich, nahezu kostenlos. Auf der anderen Seite: Ein AI-Agent, befeuert durch OpenRouter. Das &amp;quot;kreative Chaos&amp;quot;, das Lösungen findet, die man nicht hart codieren kann, aber eben auch eine gewisse Unberechenbarkeit mitbringt.&lt;/p&gt;
&lt;p&gt;Mir kamen dann die Begriffe &lt;strong&gt;Stabil&lt;/strong&gt; oben in Grün und &lt;strong&gt;Volatil&lt;/strong&gt; unten in Gelb in den Sinn.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/n8n-automatisierung-vs-ki-2026-04-04.png&quot; alt=&quot;n8n Workflow: Stabil vs. Volatil – zwei Automatisierungswege im Vergleich&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Zwei fiktive Wege in einem n8n Workflow&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Das ist keine Wertung. Es ist eine Kategorisierung. Und genau darum geht es mir in diesem Post: Wann greife ich zu welchem Werkzeug – und warum?&lt;/p&gt;
&lt;h2&gt;Was &amp;quot;stabil&amp;quot; bedeutet&lt;/h2&gt;
&lt;p&gt;Klassische Automatisierung – also regelbasierte Systeme, Skripte, Code-Nodes, Regex – arbeitet &lt;strong&gt;deterministisch&lt;/strong&gt;. Gleiche Eingabe, gleiches Ergebnis. Immer. Das klingt langweilig, ist aber in vielen Kontexten genau das, was ich brauche.&lt;/p&gt;
&lt;p&gt;Nehmen wir ein konkretes Beispiel aus der Forschung: Bei der Extraktion von &lt;a href=&quot;https://radiopaedia.org/articles/breast-imaging-reporting-and-data-system-bi-rads-2&quot;&gt;BI-RADS-Scores&lt;/a&gt; aus radiologischen Berichten (Röntgenbilder) wurde Regex direkt mit LLMs verglichen &lt;a href=&quot;#ref-1&quot;&gt;[1]&lt;/a&gt;. Die Genauigkeit? Nahezu identisch. Der Unterschied: Regex war &lt;strong&gt;28.120-mal schneller&lt;/strong&gt;. Nicht ein bisschen schneller. 28.000-mal. Das ist kein akademisches Detail – das ist ein Architektur-Argument.&lt;/p&gt;
&lt;p&gt;Stabile Automatisierung ist auch aus Sicht der Betriebskosten attraktiv. Ein Code-Node in n8n kostet mich nichts extra. Ein LLM-Aufruf schon. Und bei jedem Zyklus wieder. Wer Workflows mit hohem Durchsatz betreibt, merkt das am Ende des Monats.&lt;/p&gt;
&lt;p&gt;Was klassische Automatisierung braucht: &lt;strong&gt;saubere, strukturierte Daten&lt;/strong&gt; und &lt;strong&gt;klar definierte Regeln&lt;/strong&gt;. Wenn ich weiß, was rein geht und was raus kommen soll, ist ein Code-Node die überlegene Wahl. Keine Überraschungen, keine Halluzinationen, kein Token-Verbrauch.&lt;/p&gt;
&lt;h2&gt;Was &amp;quot;volatil&amp;quot; bedeutet – und warum das kein Fehler ist&lt;/h2&gt;
&lt;p&gt;KI ist &lt;em&gt;nicht instabil&lt;/em&gt;. KI ist in einer gewissen Weise &lt;strong&gt;kreativ&lt;/strong&gt; (KI im Sinne von Generative KI). Das ist ein wichtiger Unterschied.&lt;/p&gt;
&lt;p&gt;Wenn ich einem AI Agent eine Aufgabe gebe, bekomme ich nicht zwingend das identische Ergebnis bei identischer Eingabe. Das klingt nach Nachteil – ist aber oft genau das, was ich brauche. Nämlich dann, wenn:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;die Eingabedaten &lt;strong&gt;unstrukturiert&lt;/strong&gt; sind (Freitexte, E-Mails, PDFs ohne Schema)&lt;/li&gt;
&lt;li&gt;ich &lt;strong&gt;keine vollständigen Regeln&lt;/strong&gt; definieren kann, weil die Varianz zu groß ist&lt;/li&gt;
&lt;li&gt;ich &lt;strong&gt;Kontext und Intention&lt;/strong&gt; verstehen muss, nicht nur Muster matchen&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ein Beispiel: Ich möchte eingehende Support-Anfragen automatisch kategorisieren und priorisieren. Kein Regex der Welt kommt damit klar, wenn Kunden auf zwölf verschiedene Arten schreiben, dass ihr Shop-Login nicht funktioniert. Ein LLM versteht das – auch in holprigem Deutsch, mit Rechtschreibfehlern und ohne klare Struktur.&lt;/p&gt;
&lt;p&gt;Das ist die Stärke der volatilen Seite. Kein Regelbuch nötig. Dafür: Laufzeitkosten, potenziell variierende Ergebnisse und – wichtig – höherer Ressourcenverbrauch.&lt;/p&gt;
&lt;h2&gt;Das Demokratisierungsproblem&lt;/h2&gt;
&lt;p&gt;Hier wird es interessant – und ehrlich gesagt auch ein bisschen heikel.&lt;/p&gt;
&lt;p&gt;KI-Tools haben die Automatisierung &lt;strong&gt;demokratisiert&lt;/strong&gt;. Wer früher einen Entwickler brauchte, um einen Workflow zu bauen, kann heute in n8n einen AI Agent hinwerfen, einen Prompt schreiben und loslegen. Das ist großartig. Im Prinzip.&lt;/p&gt;
&lt;p&gt;In der Praxis sehe ich aber immer häufiger, dass Nicht-Techniker – und leider auch manche Dienstleister – &lt;strong&gt;AI Agents einsetzen, wo ein einfacher Code-Node die bessere Lösung wäre&lt;/strong&gt;. Nicht aus Böswilligkeit, sondern weil:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Der AI Agent &amp;quot;einfach funktioniert&amp;quot; – zumindest beim ersten Test&lt;/li&gt;
&lt;li&gt;Die Kosten und Konsequenzen erst später sichtbar werden&lt;/li&gt;
&lt;li&gt;Das Verständnis fehlt, was unter der Haube passiert&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Konkret: Wer eine Bestellbestätigung per E-Mail versendet und dafür einen LLM-Aufruf macht, weil &amp;quot;das KI kann&amp;quot;, zahlt sinnlose Token-Kosten für eine Aufgabe, die ein Template mit drei Variablen in Millisekunden löst. Sicher ist das nicht zwingend teuer – aber es skaliert schlecht. Und es ist fehleranfälliger: Was, wenn das Modell mal kreativ wird und den Inhalt der E-Mail leicht variiert?&lt;/p&gt;
&lt;p&gt;Noch kritischer wird es bei &lt;strong&gt;sicherheitsrelevanten Prozessen&lt;/strong&gt;. KI-generierter Output ist kein deterministischer Output. Wer das in Berechtigungsprüfungen einbaut, ohne das zu verstehen, baut sich ein Problem auf Vorrat.&lt;/p&gt;
&lt;p&gt;Schon im Jahr 2020 haben Kollegen von mir bei einer Studie in Deutschland große Defizite bei Expertise zu KI, Prozessoptimierung und Automatisierung &lt;a href=&quot;#ref-2&quot;&gt;[2]&lt;/a&gt; festgestellt. Ob wir jetzt in 2026 viel besser darstehen?&lt;/p&gt;
&lt;h2&gt;Ressourcen, Kosten, Geschwindigkeit&lt;/h2&gt;
&lt;p&gt;Ein paar Zahlen, die ich im Hinterkopf behalte:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ein einfacher Code-Node: &lt;strong&gt;nahezu keine Laufzeitkosten&lt;/strong&gt;, Ausführung in Millisekunden&lt;/li&gt;
&lt;li&gt;Ein LLM-Aufruf via API: Token-Kosten, die sich bei hohem Durchsatz summieren – und das nicht linear, sondern kumulativ, weil bei Multi-Turn-Konversationen der gesamte Verlauf mitbezahlt wird&lt;/li&gt;
&lt;li&gt;Reasoning-Modelle (die mit explizitem &amp;quot;Thinking&amp;quot;): bis zu &lt;strong&gt;50-facher CO₂-Ausstoß&lt;/strong&gt; gegenüber kompakten Modellen – für oft marginale Genauigkeitsgewinne &lt;a href=&quot;#ref-3&quot;&gt;[3]&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Das bedeutet nicht, KI zu vermeiden. Es bedeutet, &lt;strong&gt;bewusst zu wählen&lt;/strong&gt;. Brauche ich wirklich ein Reasoning-Modell für das Taggen von Blog-Posts? Nein. Reicht ein kleineres, schnelles Modell für die Sentiment-Klassifikation von Kundenbewertungen? Ja, in den meisten Fällen.&lt;/p&gt;
&lt;p&gt;In meinem privaten n8n habe ich die Metriken immer im Blick.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/grafana-dashboard-used-ai-models-in-my-n8n.png&quot; alt=&quot;n8n Metriken&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Dashboard in Grafana&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Die meisten meiner n8n Prozesse sind immer noch klassisch ohne KI oder nur an gewissen Stellen mit KI ergänzt. Es gibt aber auch Workflows die nur auf KI basieren.&lt;/p&gt;
&lt;h2&gt;Wann ich zur KI muss&lt;/h2&gt;
&lt;p&gt;Es gibt Aufgaben, bei denen ich mit klassischer Automatisierung schlicht nicht weiterkomme:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unstrukturierte Eingaben verstehen&lt;/strong&gt; – Freitexte, OCR-Ergebnisse, gescannte Dokumente&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Inhaltliche Bewertung&lt;/strong&gt; – Ist diese Produktbeschreibung vollständig? Klingt dieser Text professionell?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kontextabhängige Entscheidungen&lt;/strong&gt; – Was ist die passende Antwort auf diese Kundenfrage, abhängig von Bestellhistorie und aktuellem Kontext?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Kreative Aufgaben&lt;/strong&gt; – Texte generieren, variieren, übersetzen, zusammenfassen&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Für alles davon gibt es keine Regex. Kein if-else-Baum wächst hoch genug. Hier ist KI nicht die bequeme Option – sie ist die einzig sinnvolle.&lt;/p&gt;
&lt;h2&gt;Der hybride Weg: Determinismus als Leitplanke&lt;/h2&gt;
&lt;p&gt;Meine persönliche Architektur-Präferenz sieht so aus: &lt;strong&gt;deterministischer Rahmen, KI dort wo nötig&lt;/strong&gt; &lt;a href=&quot;#ref-4&quot;&gt;[4]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In n8n bedeutet das konkret: Ich prüfe zuerst, ob ich ein Problem regelbasiert lösen kann. Wenn ja, Code-Node. Wenn nein, AI Agent – aber mit klaren Leitplanken: definierten Eingabeformaten, validierten Ausgaben, und einem deterministischen Weiterverarbeitungsschritt danach.&lt;/p&gt;
&lt;p&gt;Das Diagramm am Anfang dieses Posts zeigt genau das: Beide Wege laufen in denselben Output. Ich entscheide pro Aufgabe, welcher Pfad sinnvoller ist. Das ist keine Entweder-oder-Frage. Es ist eine Designentscheidung.&lt;/p&gt;
&lt;h2&gt;Wo steckt bei mir überall KI drin?&lt;/h2&gt;
&lt;p&gt;Wichtig finde ich auch, dass man seine KI-Prozesse im Blick hat. Auch diese benötigen eine Wartung und müssen immer mal wieder angepasst werden. Gerade, wenn neue Modelle auf den Markt kommen.&lt;/p&gt;
&lt;p&gt;In meinen Fall habe ich verschiedene Dashboards in meinen Grafana erstellt. Unter anderem eines, dass mir eine Übersicht der in den n8n Workflows genutzten Modelle und Provider bietet.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-04/n8n-prod-statistics-2026-04-04.png&quot; alt=&quot;Grafana Dashboard - Genutzte Modelle &quot; /&gt;&lt;br /&gt;
&lt;em&gt;Metriken in n8n&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Gelöst habe ich das über einen n8n Workflow der mir täglich alle anderen Workflows analyisiert und die Metadaten dann in meiner Postgres Datenbank abgelegt.&lt;/p&gt;
&lt;p&gt;Eine weiterer wichtiger Teil ist, dass man seine KI Modelle auch mit Testdaten testet. Dazu gibt es aber bestimmt mal einen eigenen Blog-Post von mir.&lt;/p&gt;
&lt;h2&gt;Fazit&lt;/h2&gt;
&lt;p&gt;KI ist kein Allheilmittel – und klassische Automatisierung ist kein Relikt. Beides hat seinen Platz. Die Kunst liegt darin zu erkennen, &lt;strong&gt;welches Werkzeug für welche Aufgabe geeignet ist&lt;/strong&gt; &lt;a href=&quot;#ref-5&quot;&gt;[5]&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Was mich bei der aktuellen Entwicklung beschäftigt: Immer mehr Menschen automatisieren, ohne die Implikationen zu verstehen. Das ist erst mal gut – Automatisierung ist wichtig. Aber die Wahl des falschen Werkzeugs produziert Systeme, die teurer, langsamer, fehleranfälliger und schwerer wartbar sind als nötig.&lt;/p&gt;
&lt;p&gt;Meine Faustregel: Wenn ich das Problem vollständig beschreiben kann, brauche ich keine KI. Wenn nicht – dann schon.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Literatur&lt;/h2&gt;
&lt;p&gt;&lt;a id=&quot;ref-1&quot;&gt;&lt;/a&gt;[1] Lacoste et al. (2025): &lt;em&gt;A Comparative Performance Analysis of Regular Expressions and an LLM-Based Approach to Extract the BI-RADS Score from Radiological Reports.&lt;/em&gt; medRxiv.&lt;br /&gt;
&lt;a href=&quot;https://www.medrxiv.org/content/10.1101/2025.06.01.25328636v1.full-text&quot;&gt;https://www.medrxiv.org/content/10.1101/2025.06.01.25328636v1.full-text&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a id=&quot;ref-2&quot;&gt;&lt;/a&gt;[2] valantic (2020): &lt;em&gt;Exklusive valantic-Studie: Große Defizite bei Expertise zu KI, Prozessoptimierung und Automatisierung&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.valantic.com/de/presse/exklusive-valantic-studie-mit-luenendonk/&quot;&gt;https://www.valantic.com/de/presse/exklusive-valantic-studie-mit-luenendonk/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a id=&quot;ref-3&quot;&gt;&lt;/a&gt;[3] ScienceDaily (2025): &lt;em&gt;Thinking AI models emit 50x more CO2 — and often for nothing.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.sciencedaily.com/releases/2025/06/250619035520.htm&quot;&gt;https://www.sciencedaily.com/releases/2025/06/250619035520.htm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a id=&quot;ref-4&quot;&gt;&lt;/a&gt;[4] Elementum AI (2025): &lt;em&gt;Deterministic vs. Probabilistic AI: Enterprise Workflow Guide.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.elementum.ai/blog/deterministic-vs-probabilistic-ai&quot;&gt;https://www.elementum.ai/blog/deterministic-vs-probabilistic-ai&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a id=&quot;ref-5&quot;&gt;&lt;/a&gt;[5] ECI Software Solutions: &lt;em&gt;AI vs. Automation: Why the Difference Matters for SMB Growth.&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.ecisolutions.com/blog/ai-vs-automation-smb-difference/&quot;&gt;https://www.ecisolutions.com/blog/ai-vs-automation-smb-difference/&lt;/a&gt;&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Claude Desktop unter Linux</title>
        <link href="https://muench.dev/post/2026-03-claude-desktop-unter-linux"/>
        <id>https://muench.dev/post/2026-03-claude-desktop-unter-linux</id>
        <published>2026-03-31T16:12:00+00:00</published>
        <updated>2026-04-07T16:22:15+02:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Ich arbeite seit Jahren auf Fedora. Linux ist für mich kein Experiment, sondern Alltag. Umso mehr hat es mich gestört, dass Anthropic Claude Desktop offiziell nur für macOS und Windows anbietet. Für Linux: Fehlanzeige.&lt;/p&gt;
&lt;p&gt;Mein Kollege bei valantic, &lt;a href=&quot;https://github.com/patrickjaja&quot;&gt;&lt;strong&gt;Patrick Schönfeld&lt;/strong&gt;&lt;/a&gt;, hat das nicht einfach hingenommen. Er ist KI-Experte, Open-Source-Enthusiast – und jemand, der lieber Probleme löst als darüber redet.&lt;/p&gt;
&lt;p&gt;Das Ergebnis: &lt;a href=&quot;https://github.com/patrickjaja/claude-desktop-bin&quot;&gt;claude-desktop-bin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;/assets/content/blog/2026-03/screenshot_claude_desktop_linux_20260331_200608-1.png&quot; alt=&quot;Claude Desktop unter Linux&quot; /&gt;&lt;br /&gt;
&lt;em&gt;Hier ein Screenshot von meinem Fedora Desktop&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;Installation: Für jede Distribution&lt;/h2&gt;
&lt;p&gt;Patrick hat wirklich alle großen Distributionen bedacht. Kein halbgarer Single-Distro-Port.&lt;/p&gt;
&lt;h3&gt;Arch Linux / Manjaro&lt;/h3&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;yay -S claude-desktop-bin
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Updates kommen automatisch über den AUR-Helper – nichts weiter zu tun.&lt;/p&gt;
&lt;h3&gt;Debian / Ubuntu&lt;/h3&gt;
&lt;p&gt;Der empfohlene Weg über das APT-Repository bringt automatische Updates mit:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;curl -fsSL https://patrickjaja.github.io/claude-desktop-bin/install.sh | sudo bash
sudo apt install claude-desktop-bin
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Wer kein fremdes Install-Script ausführen möchte – das ist ein vollkommen legitimer Standpunkt – greift zum &lt;code&gt;.deb&lt;/code&gt; direkt von den Releases:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;wget https://github.com/patrickjaja/claude-desktop-bin/releases/latest/download/claude-desktop-bin_1.1.5749-1_amd64.deb
sudo dpkg -i claude-desktop-bin_*_amd64.deb
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Fedora / RHEL&lt;/h3&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;wget https://github.com/patrickjaja/claude-desktop-bin/releases/latest/download/claude-desktop-bin-1.1.4088-1.x86_64.rpm
sudo dnf install ./claude-desktop-bin-*-1.x86_64.rpm
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;NixOS&lt;/h3&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;hljs-comment&quot;&gt;# Ausprobieren ohne Installation&lt;/span&gt;
nix run github:patrickjaja/claude-desktop-bin

&lt;span class=&quot;hljs-comment&quot;&gt;# Dauerhaft ins Profil&lt;/span&gt;
nix profile install github:patrickjaja/claude-desktop-bin
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Wer es direkt in die Systemkonfiguration übernehmen will:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-nix hljs nix&quot; data-lang=&quot;nix&quot;&gt;{
  inputs.claude-desktop.&lt;span class=&quot;hljs-attr&quot;&gt;url&lt;/span&gt; = &lt;span class=&quot;hljs-string&quot;&gt;&quot;github:patrickjaja/claude-desktop-bin&quot;&lt;/span&gt;;

  environment.&lt;span class=&quot;hljs-attr&quot;&gt;systemPackages&lt;/span&gt; = [
    inputs.claude-desktop.packages.x86_64-linux.default
  ];
}
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;AppImage (alle anderen)&lt;/h3&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;wget https://github.com/patrickjaja/claude-desktop-bin/releases/latest/download/Claude_Desktop-1.1.5749-x86_64.AppImage
chmod +x Claude_Desktop-*-x86_64.AppImage
./Claude_Desktop-*-x86_64.AppImage
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Cowork unter Linux&lt;/h2&gt;
&lt;p&gt;Cowork ist Anthropics agentic Workspace-Feature – Dateioperationen, Desktop-Automatisierung, Task-Management direkt vom Desktop aus. Auch hier: offiziell kein Linux-Support.&lt;/p&gt;
&lt;p&gt;Patrick hat den Windows Service &lt;strong&gt;reverse-engineered&lt;/strong&gt; und unter Linux lauffähig gemacht. Das Projekt: &lt;a href=&quot;https://github.com/patrickjaja/claude-cowork-service&quot;&gt;claude-cowork-service&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Der Service ist optional. Claude Desktop funktioniert auch ohne Cowork. Wer ihn möchte:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;hljs-comment&quot;&gt;# Schnellinstallation, jede Distribution&lt;/span&gt;
curl -fsSL https://raw.githubusercontent.com/patrickjaja/claude-cowork-service/main/scripts/install.sh | bash

&lt;span class=&quot;hljs-comment&quot;&gt;# Arch Linux per AUR&lt;/span&gt;
yay -S claude-cowork-service
systemctl --user &lt;span class=&quot;hljs-built_in&quot;&gt;enable&lt;/span&gt; --now claude-cowork
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Voraussetzung ist die &lt;strong&gt;Claude Code CLI&lt;/strong&gt; – sie muss installiert und im Pfad erreichbar sein. Die Pfade &lt;code&gt;/usr/bin/claude&lt;/code&gt;, &lt;code&gt;~/.local/bin/claude&lt;/code&gt; und &lt;code&gt;/usr/local/bin/claude&lt;/code&gt; werden automatisch erkannt.&lt;/p&gt;
&lt;h2&gt;Was dahintersteckt&lt;/h2&gt;
&lt;p&gt;Das ist kein Quick-Port. Das Paket enthält eine ganze Reihe gezielter Patches, die aus Claude Desktop – einer Electron-App, primär für macOS entwickelt – eine funktionale Linux-Anwendung machen. Tray-Icon-Integration, DBus-Handling, MCP-Server-Support, Computer Use via &lt;code&gt;xdotool&lt;/code&gt; und &lt;code&gt;scrot&lt;/code&gt; – alles dabei.&lt;/p&gt;
&lt;p&gt;Ein automatisierter CI-Job prüft täglich auf neue Claude-Desktop-Versionen, validiert alle Patches in Docker und stellt sicher, dass nur funktionierende Builds ins AUR kommen. Das ist solide Arbeit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ein Hinweis für Wayland-Nutzer:&lt;/strong&gt; Der globale Shortcut (&lt;code&gt;Ctrl+Alt+Space&lt;/code&gt;) funktioniert nur unter X11. Wer auf einem Wayland-Compositor unterwegs ist, startet Claude Desktop so:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash hljs bash&quot; data-lang=&quot;bash&quot;&gt;claude-desktop --ozone-platform=x11
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Das lässt sich auch dauerhaft in der &lt;code&gt;.desktop&lt;/code&gt;-Datei eintragen.&lt;/p&gt;
&lt;h2&gt;Fazit&lt;/h2&gt;
&lt;p&gt;Es ist inzwischen ein bekanntes Muster: Hersteller ignoriert Linux, Community oder engagierte Entwickler wie mein Kollege Patrick übernehmen.&lt;/p&gt;
&lt;p&gt;Danke, Patrick – für die Arbeit, die da drin steckt. Das Ergebnis ist wirklich brauchbar.&lt;/p&gt;
&lt;p&gt;Habt ihr Claude Desktop unter Linux schon ausprobiert? Auf welcher Distribution läuft es bei euch?&lt;/p&gt;
&lt;h2&gt;Update 7. April 2026&lt;/h2&gt;
&lt;p&gt;Ich habe den Text nach Feedbacl von Patrick nochmal angepasst. Bei RPMs und AppImage hatte ich geschrieben, dass es keine automatischen Update gibt. Das war nicht korrekt. Patrick hat auch für diese Installationen ein automatisches Update bereitgestellt.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
    <entry>
        <title type="text">Rückblick: Magento Stammtisch Stuttgart – Remote dabei mit mage-remote-run</title>
        <link href="https://muench.dev/post/2026-03-rueckblick-magento-stammtisch-stuttgart-remote-dabei-mit-mage-remote-run"/>
        <id>https://muench.dev/post/2026-03-rueckblick-magento-stammtisch-stuttgart-remote-dabei-mit-mage-remote-run</id>
        <published>2026-03-27T07:00:00+00:00</published>
        <updated>2026-03-28T16:29:58+01:00</updated>
        <summary/>
        <content type="html">&lt;p&gt;Am 25. März 2026 fand der Magento Stammtisch Stuttgart statt – und ich war dabei. Nicht vor Ort, wie ich es mir gewünscht hätte, sondern von zuhause aus. Eine Erkältung hat mir einen Strich durch die Reisepläne gemacht. Zum Glück war eine Remote-Teilnahme möglich, und so konnte ich trotzdem meinen Beitrag über &lt;strong&gt;mage-remote-run&lt;/strong&gt; halten ... ganz schön viel &amp;quot;remote&amp;quot; :-)&lt;/p&gt;
&lt;p&gt;Persönlich vor Ort zu sein hat natürlich einen anderen Charakter. Die spontanen Gespräche am Rande, das gemeinsame Abendessen, das Netzwerken beim Getränk in der Hand – das lässt sich nicht durch einen Video-Call ersetzen. Aber die Community hat das unkompliziert möglich gemacht, und dafür bin ich dankbar.&lt;/p&gt;
&lt;h2&gt;Mein Beitrag: mage-remote-run in der Praxis&lt;/h2&gt;
&lt;p&gt;Ich habe &lt;a href=&quot;https://mage-remote-run.muench.dev&quot;&gt;&lt;strong&gt;mage-remote-run&lt;/strong&gt;&lt;/a&gt; vorgestellt – mein Tool für die Remote-Verwaltung von Magento-Instanzen ohne SSH-Zugriff. Gerade in Cloud-nativen Umgebungen wie Adobe Commerce as a Cloud Service oder abgesicherten Kubernetes-Clustern stößt man schnell an Grenzen, wenn man gewohnte Shell-Werkzeuge einsetzen will. mage-remote-run setzt deshalb konsequent auf einen &lt;strong&gt;API-first&lt;/strong&gt;-Ansatz und kommuniziert über HTTPS mit dem Shop.&lt;/p&gt;
&lt;p&gt;Die Vorstellung beim Stammtisch gibt es als Video – ich verlinke es hier, sobald es verfügbar ist.&lt;/p&gt;
&lt;p&gt;Neu war das Plugin-System in mage-remote-run, dass ich erstmals beim Stammtisch vorstellen konnte.&lt;/p&gt;
&lt;h2&gt;MageForge: Ein Build-Tool für Frontend-Entwickler&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Mathias Elle&lt;/strong&gt;, Magento- und Hyvä-Frontend-Experte, hat zusammen mit Thomas Hauschild an &lt;a href=&quot;https://github.com/OpenForgeProject/mageforge&quot;&gt;&lt;strong&gt;MageForge&lt;/strong&gt;&lt;/a&gt; gearbeitet und beim Stammtisch vorgestellt, was dahintersteckt. MageForge ist ein Tool, das speziell auf die Bedürfnisse von Frontend-Entwicklern im Magento-Ökosystem ausgelegt ist – mit dem Fokus auf Build-Prozesse.&lt;/p&gt;
&lt;p&gt;Wer schon mal mit Hyvä gearbeitet hat, weiß, dass der Frontend-Stack dort deutlich moderner ist als im klassischen Magento. Genau da setzt MageForge an: Es soll die Build-Workflows vereinfachen und beschleunigen, ohne dass man tief in die Konfigurationsdetails einsteigen muss. Ich bin gespannt, wie sich das Tool weiterentwickelt – das ist genau die Art von pragmatischer Tooling-Arbeit, die der Community gut tut.&lt;/p&gt;
&lt;p&gt;Auch in einer CI/CD Pipeline oder beim Reparieren von kaputten Frontend-Setups kann das Tool gute Dienste leisten.&lt;/p&gt;
&lt;p&gt;Beeindrucken ist auch, dass es auf dem höchsten PhpStan-Level getestet wurde.&lt;br /&gt;
Weil es so gut ist, wird es in der nächsten n98-magerun2 Version ein neues Kommando &lt;code&gt;mageforge:install&lt;/code&gt; geben damit ihr es schnell in euer Magento System installieren könnt.&lt;/p&gt;
&lt;h2&gt;Claude-AI-Benchmarks: Wie sehr machen Regeln den Unterschied?&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Anton Gudkov&lt;/strong&gt;, Magento-zertifizierter Entwickler, hat sich mit einem Thema beschäftigt, das mich ebenfalls intensiv begleitet: dem Einsatz von &lt;strong&gt;Claude-AI-Modellen&lt;/strong&gt; in der Entwicklung. Kudos auch dafür, dass er beim Stammtisch seinen ersten Vortrag hielt. Sein Fokus lag auf einem konkreten und spannenden Aspekt – dem Benchmark unterschiedlicher Einstellungen und Regelwerke.&lt;/p&gt;
&lt;p&gt;Die Kernfrage: Wie stark beeinflussen die Konfiguration und die definierten Regeln das Ergebnis, das ein Modell wie Claude liefert? Das ist etwas, was in der Praxis oft unterschätzt wird. Man gibt dem Modell einen Prompt, bekommt eine Antwort – und denkt wenig darüber nach, was passiert, wenn man die Rahmenbedingungen systematisch variiert. Anton hat genau das gemacht und die Ergebnisse verglichen.&lt;/p&gt;
&lt;p&gt;Mein Fazit (aus der Ferne): Das ist wertvolle Arbeit. Gerade wenn man KI-Modelle in bestehende Entwicklungsprozesse integriert, lohnt es sich, diese Stellschrauben zu verstehen – und nicht einfach mit den Standardeinstellungen zu leben.&lt;/p&gt;
&lt;p&gt;Ich hoffe, beim nächsten Mal persönlich dabei zu sein. Stuttgart wäre es wert gewesen. Danke an Phoenix Media für die wie immer tolle Orga.&lt;/p&gt;</content>
        <author>
            <name>Christian Münch</name>
        </author>
    </entry>
</feed>
