tstack erklärt: die Agent-Skills von Theo für Pull Requests
tstack ist die Sammlung von neun Agent-Skills, die der Entwickler und YouTuber Theo Browne nach eigener Aussage täglich nutzt. Sie führen Claude Code und Codex durch den ganzen Weg einer Änderung bis zum Pull Request. Wir haben den Skill modernize wörtlich auf einen veralteten Branch in einem Demo-Projekt angewendet.

Was ist tstack? tstack ist eine Sammlung von neun Skills für Claude Code und Codex, die der Entwickler Theo Browne veröffentlicht hat. Jeder Skill ist eine Markdown-Datei, die dem Coding-Agenten einen Arbeitsablauf rund um Pull Requests vorgibt: Änderungen beweisen, Reviews einholen, Pull Requests einreichen, CI überwachen und alte Branches auf den neusten Stand bringen.
Ein Pull Request ist dabei ein Vorschlag, eine Änderung in den Hauptzweig eines Git-Projekts zu übernehmen. CI (Continuous Integration) sind die automatischen Prüfungen, die bei jedem solchen Vorschlag laufen.
Warum tstack gerade so gefragt ist
Das Repository t3dotgg/tstack wurde am 24.10.2026 angelegt und zählte am 04.11.2026 2'865 Sterne und 197 Forks (Stand 04.11.2026, Quelle: GitHub). Der erste Commit trägt die Nachricht «publish everyday agent skills», danach kamen bis zum 28.10.2026 kleinere Erweiterungen, etwa dass council die Bewertungen der Prüfmodelle in die Pull-Request-Beschreibung schreibt.
Theo Browne betreibt den YouTube-Kanal t3.gg und das Werkzeug T3 Code. Das README beschreibt tstack als «the agent skills I use every day, cleaned up so anyone can use them». Die grosse Reichweite des Autors dürfte den schnellen Zuwachs erklären; einen weiteren belegten Auslöser haben wir nicht gefunden.
So funktioniert es
Die neun Skills laut README:
| Skill | Auslöser | Aufgabe |
|---|---|---|
| full-send | «full send» | Änderung selbständig bis zum gemergten Pull Request |
| full-stop | «full stop» | wie full-send, aber Halt vor dem Merge |
| council | «council» | Review durch drei Modelle verschiedener Anbieter |
| sol-loop | «sol loop» | Review-Schleife mit GPT Sol |
| file-pr | «file a PR» | kurzer Pull Request, der mit dem Problem beginnt |
| takeover | «take over» | fremde Arbeit fertigstellen, Urheberschaft bewahren |
| babysit-pr | «babysit» | Pull Request durch CI und Review-Bots begleiten |
| modernize | «modernize» | alten Pull Request aktualisieren und prüfen, ob er noch Sinn ergibt |
| leaving-pr-comments | automatisch | Kommentare im Namen des Nutzers kennzeichnen |
Die Skills rufen sich gegenseitig auf: full-send nutzt sol-loop, file-pr und babysit-pr. Auffällig sind die harten Regeln gegen das Ausufern von Änderungen. sol-loop begrenzt die Review-Runden auf drei, babysit-pr verlangt, unnötige Vorschläge der Bots mit schriftlicher Begründung abzulehnen. Bei full-send ist «Proof» zentral: ein selbst beobachteter Beleg, etwa ein Test, der vor der Korrektur scheitert und danach durchläuft.
Installation
Laut README:
git clone https://github.com/t3dotgg/tstack
cp -R tstack/skills/* ~/.claude/skills/ # Claude Code
cp -R tstack/skills/* ~/.codex/skills/ # Codex
Diese Befehle haben wir nicht ausgeführt. Wir haben die Skill-Dateien als Text von GitHub gelesen (Commit 1085050 vom 28.10.2026) und angewendet. Das einzige Skript im Repository, pr-wait aus babysit-pr, wurde nicht ausgeführt. Es fragt laut Beschreibung den Status eines Pull Requests bei GitHub ab.
Unser Test
Die meisten tstack-Skills brauchen einen echten Pull Request auf GitHub. Für einen sauberen Test ohne fremde Repositories haben wir ein lokales Demo-Projekt gebaut: «offerten-demo», eine kleine TypeScript-Bibliothek, die Frankenbeträge formatiert (Node.js 22.23, Tests mit node:test). Darin gibt es einen alten Branch fix/rappen-runden, der Beträge auf 5 Rappen runden soll. Auf main hat sich in der Zwischenzeit viel getan: Die Formatierung läuft neu über Intl.NumberFormat, und die Datei ist umgezogen.
Wir haben den Skill modernize in Claude Code (Modell Claude Opus 5.5) wörtlich angewendet: «Modernize den Branch fix/rappen-runden.»

Der Skill verlangt, zuerst die Absicht des Pull Requests festzuhalten und zu prüfen, was sich auf dem Basis-Branch geändert hat. Erst danach fällt der Entscheid: MODERNIZE, REWORK oder CLOSE. Weil main noch nicht rundet und die Rundung als eine Zeile in die neue Umsetzung passt, lautete er MODERNIZE. Der Rebase lief in einem eigenen Worktree und erzeugte zwei Konflikte. Sie wurden nach der Absicht des Branches gelöst: Die alte Datei fiel weg, die Rundung kam in die neue. Danach verlangt der Skill einen Vergleich vorher und nachher mit gitGit ist ein Versionskontrollsystem, das jede Änderung am Code einer Software oder Website mit Zeitpunkt, Autor und Beschreibung speichert. Damit lassen sich…Mehr erfahren → range-diff und die Tests.
Am Ende stehen drei grüne Tests und ein Bericht im vorgegebenen Format: Entscheid zuerst, dann Änderungen auf main, Konflikte, Push, Checks und offene Punkte. Gepusht wurde nichts, weil das Demo-Repo kein Remote hat; der Skill sieht dafür ohnehin nur --force-with-lease vor. Zusätzlich haben wir mit file-pr den Text des Pull Requests geschrieben. Er beginnt wie verlangt mit dem Problem («Offerten zeigten Beträge wie CHF 19.97, die bar nicht bezahlbar sind») statt mit einer Liste der Änderungen und endet mit Modell und Werkzeug.
Was gut war: modernize zwingt zu einer Entscheidung, bevor Code bewegt wird. Ein mechanischer Rebase hätte hier die alte Datei samt Regex zurückgebracht. Die Frage «Ist das Problem schon gelöst?» und der Vergleich mit range-diff sind genau die Schritte, die man unter Zeitdruck gern auslässt. Der Bericht trennt beobachtete Fakten von Einschätzungen und nennt eine offene Frage, statt sie still zu entscheiden.
Was weniger gut war: Ohne GitHub fällt ein grosser Teil weg. full-send, babysit-pr und sol-loop lassen sich lokal nicht sinnvoll testen, council und sol-loop brauchen Modelle von drei Anbietern, in Claude Code also zusätzliche Einrichtung. Die Skills sind auf Theos eigenen Werkzeugkasten zugeschnitten, etwa auf T3 Code und die Review-Bots Greptile und Macroscope.
Beispiele aus der Praxis
- Agenturen mit liegengebliebenen Branches: modernize eignet sich, um alte Pull Requests systematisch durchzugehen und begründet zu entscheiden, welche noch gebraucht werden.
- Kleine Entwicklerteams: file-pr und leaving-pr-comments sorgen dafür, dass Texte, die ein Agent im Namen eines Menschen schreibt, kurz und als solche gekennzeichnet sind.
- Wartung von Kundenprojekten: full-stop ist für Teams interessant, die Agenten Abhängigkeiten aktualisieren lassen wollen, den Merge aber selbst freigeben.
Grenzen, Risiken, Lizenz
Die Lizenz ist MIT. full-send erteilt dem Agenten ausdrücklich das Recht zu mergen und überschreibt laut SKILL.md auch Projektregeln, die vor Tests nachfragen lassen. Das ist für eigene Projekte gedacht; in Kundenrepositories sollte man full-stop wählen und die Rechte der GitHub-Anmeldung eng halten. Beim Review durch Modelle anderer Anbieter geht der Code an diese Anbieter; für Kundencode ist das mit Blick auf Verträge und das Datenschutzgesetz (DSG)Das Datenschutzgesetz (DSG) regelt in der Schweiz, wie Unternehmen und Bundesorgane Personendaten bearbeiten dürfen. Die revidierte Fassung (revDSG) gilt seit…Mehr erfahren → vorher zu klären. Grundsätzliches zu Risiken steht in unserem Artikel über sicheres Vibe-Coding.
Für wen lohnt sich tstack?
Für Entwicklerinnen und Entwickler, die mit Claude Code oder Codex regelmässig Pull Requests auf GitHub erstellen und den Ablauf vereinheitlichen wollen. Auch wer die Skills nicht installiert, kann modernize und file-pr als Checkliste nutzen. Wie wir Agenten in eigenen Projekten einsetzen, steht im Artikel über Claude Code im Unternehmen; wenn Sie eine Web-AppEine Web-App ist eine Anwendung, die im Browser läuft und sich wie ein Programm bedienen lässt — mit Login, Eingaben, gespeicherten Daten und Abläufen. Anders…Mehr erfahren → mit sauberem Entwicklungsprozess brauchen, lohnt ein Blick auf Web-App entwickeln lassen.
Weitere Projekte aus dieser Serie finden Sie in der Übersicht über alle 20 GitHub-Trends vom November 2026.
Häufige Fragen
Was ist tstack?+
tstack ist ein Repository mit neun Skills für Claude Code und Codex von Theo Browne (t3.gg). Die Skills beschreiben Arbeitsabläufe rund um Pull Requests: eine Änderung beweisen, prüfen lassen, einreichen, durch CI und Review-Bots begleiten und auf Wunsch zusammenführen.
Was bedeutet «full send» in tstack?+
full-send ist der Skill für vollständig selbständige Arbeit: Der Agent nimmt eine Änderung bis zum zusammengeführten Pull Request mit, inklusive Merge, sobald alle Bedingungen erfüllt sind. full-stop macht dasselbe, hält aber vor dem Merge an und übergibt an den Menschen.
Was braucht man für tstack?+
Laut README eine angemeldete GitHub-Kommandozeile gh und python3 für das Warte-Skript von babysit-pr. Die Skills council und sol-loop setzen zusätzlich Subagenten mit Modellen anderer Anbieter voraus, etwa über T3 Code.
Ist tstack für Teams ohne GitHub nutzbar?+
Nur teilweise. Die meisten Skills sind auf GitHub-Pull-Requests ausgelegt. Der Skill modernize funktioniert in seinen Grundschritten auch lokal, wie unser Test zeigt, und lässt dann Push und Pull Request weg.
Über den Autor
Daniel MüllerSenior Developer & SEO-Stratege
Daniel Müller ist Senior Developer und SEO-Stratege bei DLM Digital in Zürich. Mit über 10 Jahren Erfahrung in Webentwicklung, SEO, GEO/AEO und KI-Integration begleitet er Schweizer KMU bei der digitalen Transformation. Im DLM Magazin schreibt er über KI, Vibe Coding und moderne Suchmaschinen-Sichtbarkeit.


