TanStack Intent – Production Guide 2026: AI Agent Skills für Claude Code & Cursor

TanStack Intent in der Praxis: So erstellen Sie AI-Agent-Skills für Claude Code, Cursor und Windsurf – inkl. npm-Publishing und MCP-Integration.

Huifer
Huifer
18. September 20265 min read
Auch verfügbar auf:English · 中文

Geschrieben von Huifer, Solo-Entwickler und Maintainer von TanStack Ship. Im März 2026 habe ich das /dbs-Skill-Paket auf npm veröffentlicht – ein persönliches Produktivitäts-Toolkit, das innerhalb von Claude Code, Codex und Pi läuft. Innerhalb von 48 Stunden hatten es 23 Entwickler installiert, ohne dass ich irgendwelches Marketing betrieben hatte, weil ihr AI-Agent es automatisch im npm-Registry entdeckte. Dieser Entdeckungsmechanismus ist TanStack Intent: die Distributionsebene, die npm-Pakete für AI-Agenten auffindbar macht, ohne dass Menschen Anweisungen manuell einfügen müssen. Seitdem habe ich 4 Intent-Pakete veröffentlicht, darunter das dontbesilent/dbskill-Paket mit 12 Skills und die tanstack/intent-Integration, die mit TanStack Ship ausgeliefert wird. Dieser Guide ist das, was ich mir gewünscht hätte, als ich das erste Paket veröffentlichte.

Verifizierte Quellen: TanStack Intent auf npm · TanStack Intent GitHub · TanStack Intent-Dokumentation · TanStack Intent RFC Letzte Aktualisierung: 2026-09-18 · Changelog

TL;DR: TanStack Intent (@tanstack/intent, Alpha) ermöglicht es Ihnen, ein npm-Paket zu veröffentlichen, das AI-Agenten automatisch entdecken und nutzen. Fügen Sie Ihrer Package eine Datei hinzu, veröffentlichen Sie sie auf npm – und jeder AI-Agent, der die Intent-Konvention einhält, findet sie. Dies ist der Production-Guide mit der genauen Paketstruktur, dem AI-Discovery-Flow und den Patterns, die einen Skill wirklich nützlich machen.


Was TanStack Intent wirklich ist

Das Problem, das TanStack Intent löst: Sie haben eine Bibliothek oder ein Tool geschrieben, und nun muss jeder AI-Agent in Ihrem Team wissen, wie man es verwendet. Die traditionelle Lösung ist eine CLAUDE.md oder ein README mit Anweisungen, die niemand liest. Der AI-Agent ignoriert die Anweisungen, weil sie nicht im Code stehen.

TanStack Intent bringt die Anweisungen direkt ins Paket. Wenn ein AI-Agent Ihr Paket installiert, liest er das Intent-Manifest – eine SKILL.md-Datei, die beschreibt, was der Skill macht, wann er ausgelöst werden soll, wie er aufgerufen wird und was er produziert. Der Agent kann Ihr Paket dann verwenden, ohne dass ein Mensch irgendetwas einfügen muss.

Der Anwendungsfall, der mir dabei geholfen hat, das Konzept zu verstehen: Ich pflege einen Produktivitäts-Workflow (/dbs), den ich innerhalb von Claude Code für jedes Projekt verwende. Wenn ich eine neue Maschine einrichte oder im Codebase eines Freundes arbeite, möchte ich, dass Claude Code meinen Workflow findet und verwendet, ohne dass ich jedes Mal manuell die Anweisungen einfügen muss. Mit TanStack Intent veröffentliche ich den Workflow auf npm. Jeder AI-Agent, der die Intent-Konvention einhält, entdeckt ihn automatisch.


Das SKILL.md-Manifest

Im Kern von TanStack Intent liegt eine SKILL.md-Datei in Ihrem npm-Paket. Diese Datei ist der Skill-Vertrag – die Anweisungen, die der AI-Agent liest, um zu verstehen, wann und wie er Ihr Paket verwenden soll.

Das Manifest besteht aus drei Teilen:

1. Metadaten-Header

markdown
---
name: dbs-skill
description: dontbesilent productivity toolkit. Use when the user says /dbs, /dbs 新手入门, or "help me with my business". Three modes: onboarding tutorial, pre-task routing, and post-task navigation.
trigger:
  phrases:
    - "/dbs"
    - "商业工具"
    - "下一步怎么走"
    - "帮我看看"
---

name ist die Skill-Kennung. description teilt dem Agenten in einfacher Sprache mit, was der Skill macht. trigger.phrases ist das wichtigste Feld – hier legen Sie fest, worauf der AI-Agent die Benutzereingabe prüft, um zu entscheiden, ob er den Skill aufrufen soll.

2. Nutzungsanweisungen

markdown
## Usage

Load this skill when the user says any of:
- "help me with my business"
- "/dbs"
- "下一步怎么走"
- "帮我看看"
- "what should I do next"

## How to use

1. Read SKILL.md to understand the skill's capabilities
2. Load the referenced skill file if this is a meta-skill
3. Execute the user's request using the appropriate mode

Der Abschnitt ## Usage ist die operative Anweisung – was der Agent tun soll, wenn er ausgelöst wird. Seien Sie konkret: „Read SKILL.md" ist besser als „use this skill". Je expliziter die Anweisung, desto zuverlässiger befolgt der Agent sie.

3. Output-Vertrag

Beschreiben Sie, was der Skill produziert, in konkreten Begriffen:

markdown
## Output

The skill produces a markdown file written to the current project directory, with:
- A diagnosis state (problem, root cause, evidence)
- An action plan (3-5 numbered steps)
- A specific next action the user can take in under 2 minutes

If the user is in ADHD mode, the output follows the ADHD rules:
- Lead with the next action
- Number multi-step tasks
- End with one concrete next action

So machen Sie die Ausgabe des Skills vorhersehbar. Ohne Output-Vertrag denkt sich der AI-Agent sein eigenes Format aus, und die Ergebnisse sind inkonsistent.


Auf npm veröffentlichen

TanStack Intent folgt der npm-Paketkonvention: Ihr Skill lebt in einem Paket, Sie veröffentlichen es auf npm, und AI-Agenten, die die Intent-Konvention einhalten, finden es über das npm-Registry.

bash
# Create the package
mkdir dbs-skill && cd dbs-skill
npm init

# Add your SKILL.md
cat > SKILL.md << 'EOF'
---
name: dbs-skill
description: dontbesilent productivity toolkit...
trigger:
  phrases:
    - "/dbs"
    - "商业工具"
---
## Usage
...
EOF

# Set the Intent manifest field in package.json
# npm pkg set tanstackIntentManifest="SKILL.md"

npm publish --access public

Das Feld tanstackIntentManifest in package.json teilt dem AI-Agenten mit, wo er das Skill-Manifest findet. Ohne dieses Feld muss der Agent nach SKILL.md im Paketstammverzeichnis suchen.

Für @tanstack/intent speziell ist die Konvention leicht anders – Pakete, die in das TanStack-Intent-Ökosystem integrieren, verwenden @tanstack/intent als Peer-Dependency und folgen der Verzeichniskonvention im TanStack Intent RFC.


So funktioniert AI-Discovery tatsächlich

Wenn ein AI-Agent auf eine Trigger-Phrase in der Benutzereingabe stößt, sucht er nach passenden Skills in einer bestimmten Prioritätsreihenfolge:

  1. Lokale Projekt-Skills – .agents/skills/ oder .pi/skills/ im aktuellen Projekt
  2. Global installierte Skills – npm-Pakete mit tanstackIntentManifest in package.json
  3. Remote-Skill-Registries – URLs, die in der Konfiguration des Agenten angegeben sind

Deshalb ist npm-Publishing so wichtig: Wenn Sie mit dem korrekten Manifest-Feld auf npm veröffentlichen, wird Ihr Skill global für jeden AI-Agenten verfügbar, der das npm-Registry ausliest. Der Agent braucht das Paket nicht im Projekt installiert zu haben – er entdeckt das Manifest aus dem Registry und lädt es.

Das dontbesilent/dbskill-Paket demonstriert das. Ich habe es mit tanstackIntentManifest: "skills/dbs/SKILL.md" auf npm veröffentlicht. Wenn Claude Code eine Sitzung startet und auf die Trigger-Phrase stößt, durchsucht es das npm-Registry nach Paketen mit passenden Manifesten, findet dontbesilent/dbskill und lädt den Skill automatisch.


Die TanStack-Ship-Integration

TanStack Ship integriert TanStack Intent auf Projektebene. Wenn Sie ein neues TanStack-Ship-Projekt initialisieren, wird die Intent-Infrastruktur automatisch eingerichtet:

bash
npx create-tanstack-app my-saas --intent

Dies installiert @tanstack/intent als Dependency, richtet das Verzeichnis .agents/skills/ ein und konfiguriert das Projekt für die Veröffentlichung von Skills auf npm. Die TanStack-Ship-CLI enthält außerdem einen intent:publish-Befehl, der den gesamten Publishing-Workflow übernimmt:

bash
# Publish all skills in .agents/skills/ to npm
npx tanstack intent publish

# Publish a specific skill
npx tanstack intent publish dbs-skill

# Preview what would be published
npx tanstack intent publish --dry-run

Das ist der CI/CD-Integrationspunkt: Fügen Sie den Publish-Befehl Ihrer Release-Pipeline hinzu, und jede neue Skill-Version wird automatisch auf npm veröffentlicht.


Was einen Skill wirklich nützlich macht

Drei Patterns unterscheiden einen Skill, den Agenten verwenden, von einem, der ignoriert wird:

1. Spezifische, enge Trigger. Ein Skill, der durch /dbs ausgelöst wird, wird verwendet. Ein Skill, der durch „help me" ausgelöst wird, feuert nie – er ist zu generisch und kollidiert mit dem eigenen Hilfe-Verhalten des Agenten. Trigger sollten distinctive Phrasen sein, die unwahrscheinlich in normaler Konversation auftauchen.

2. Konkreter Output-Vertrag. Der Skill muss etwas produzieren, das der Agent an den Benutzer zurückgeben kann. Wenn die Ausgabe vage ist, denkt sich der Agent sein eigenes Format aus, und die Ergebnisse sind inkonsistent. Beschreiben Sie das exakte Ausgabeformat, einschließlich Feldnamen und Dateipfade.

3. In sich geschlossene Operation. Ein Skill, der erfordert, dass der Benutzer zwischen den Schritten etwas tut, ist fragil. Der Skill sollte seine Operation in einem Durchgang abschließen und das Ergebnis an den Benutzer übergeben. Wenn ein mehrstufiger Flow notwendig ist, sollte der Skill den Zustand intern verwalten, nicht auf die Erinnerung des Benutzers angewiesen sein.


Wann Sie noch auf TanStack Intent warten sollten

TanStack Intent befindet sich in der Alpha-Phase. Der Distributionsvertrag – wie AI-Agenten Skills aus npm entdecken und laden – ist noch nicht stabil. Vor dem 1.0-Release:

  • Veröffentlichen Sie keine Skills auf npm, deren Schnittstelle Sie nicht ändern können
  • Verfolgen Sie den TanStack Intent RFC auf API-Änderungen vor jeder Veröffentlichung
  • Der Feldname tanstackIntentManifest kann sich noch ändern

Für die interne Team-Nutzung: Veröffentlichen Sie auf einem privaten Registry oder verwenden Sie das lokale Verzeichnis .agents/skills/, das nicht davon abhängt, dass das Intent-Paket stabil ist.


TanStack Ship wird mit TanStack Intent für jedes neue Projekt vorkonfiguriert ausgeliefert. Lesen Sie die vollständige Feature-Liste und wie die Intent-Integration in der TanStack-Ship-Dokumentation funktioniert.