Dokumentation

Alles was Sie brauchen, um mit STH in Minuten zu starten.

Installation

STH v0.2.43
Veröffentlicht am 15. September 2026
Versionshinweise anzeigen

Alpha v0.2.43

macOS / Linux — Homebrew

# Ajouter le tap STH (une seule fois)
brew tap skills-transfer-hub/sth

# Approuver le tap — requis pour un tap tiers depuis Homebrew 6.0 (une seule fois)
brew trust skills-transfer-hub/sth

# Installer
brew install skills-transfer-hub/sth/sth

# Vérifier
sth version

Die Schritte tap und trust sind nur einmal nötig — trust ist das Sicherheits-Gate von Homebrew 6.0 für Drittanbieter-Taps. Danach aktualisieren Sie STH mit brew upgrade sth, nicht mit sth update self.

Windows — winget oder Chocolatey

# winget
winget install STH.STH

# Scoop
scoop bucket add sth https://github.com/Skills-transfer-hub/scoop-sth
scoop install sth

# Chocolatey
choco install sth

Binary aus GitHub Releases

Wenn Sie eine manuelle Installation bevorzugen oder eine nicht unterstützte Plattform nutzen, laden Sie das passende Archiv von der Releases-Seite herunter (jedes Archiv enthält eine SHA256SUMS-Datei zur Integritätsprüfung), und legen Sie das Binary in Ihren PATH.

# macOS / Linux
tar -xzf sth-darwin-arm64.tar.gz   # ou linux-amd64, darwin-amd64
chmod +x sth
sudo mv sth /usr/local/bin/

# Windows : extraire sth-windows-amd64.zip et déplacer sth.exe dans un dossier de %PATH%

Installation prüfen

sth version

Erste Schritte

Aus dem Projekt-Root (typischerweise ein Ordner mit .claude/) :

sth init
? Fournisseur          › github | gitlab | azure-devops | bitbucket
? Dépôt / org-projet   › acme-corp/skills
? Branche / ref        › main
? Catalogue            › SKILLS.md
? Dossier cible        › .claude/skills

Die Konfiguration wird in .sth/project.json geschrieben (Schema v2). Es werden keine Secrets gespeichert — STH liest Git-Tokens aus Ihrer Umgebung.

sth ohne Argument in einem interaktiven Terminal öffnet das geführte Menü und schlägt die nächste sinnvolle Aktion vor (init, list, install, update, buddy…).

Start-Banner

sth ohne Argument in einem interaktiven Terminal spielt eine kurze Aufwach-Animation — 💤 dann 👀 — und friert Buddy dann auf dem realen Projektstatus ein. Alles in einem 78 Zeichen breiten Rahmen.

╭────────────────────────────────────────────────────────────────────────────╮
│                                                                            │
│      💧                                                                    │
│    ╭─────╮   STH dev                                                       │
│    │ >/< │   Skills Transfer Hub.                                          │
│    ╰─────╯                                                                 │
│                                                                            │
│  Astuce : tapez `sth help` pour voir la liste des commandes.               │
│  STH gère .claude/skills depuis un dépôt distant.                          │
│                                                                            │
╰────────────────────────────────────────────────────────────────────────────╯

Außerhalb eines TTY (umgeleitete Ausgabe, CI-Lauf) wird nur der finale Frame ausgegeben — keine Animation, kein Buffer-Rewrite.

Provider-Authentifizierung

STH stützt sich auf Ihre Shell-Umgebungsvariablen für Git-Provider. Die generische STH_TOKEN wird zuerst probiert, gefolgt von der provider-spezifischen Variable. Kein Secret wird in .sth/ persistiert.

ProviderVariableErforderliche Berechtigung
GitHubSTH_TOKEN oder GITHUB_TOKENContents: Read
GitLabSTH_TOKEN oder GITLAB_TOKENread_repository
Azure DevOpsSTH_TOKEN, AZURE_DEVOPS_EXT_PAT oder AZURE_DEVOPS_TOKENCode: Read
BitbucketSTH_TOKEN oder BITBUCKET_TOKEN (Atlassian-API-Token)Repositories: Read

Für CI exportieren Sie den passenden PAT im Pipeline-Kontext. Self-hosted Installationen (GitHub Enterprise, self-managed GitLab) werden noch nicht unterstützt — öffnen Sie ein Issue, wenn der Bedarf kritisch ist.

Skills-Katalog

STH kann Ihre Skills auf drei Arten erkennen — wählen Sie diejenige, die zu Ihrem Repo passt.

1. SKILLS.md (explizites Manifest)

| Type  | Name           | Folder | Source                    | Description           |
| ----- | -------------- | ------ | ------------------------- | --------------------- |
| skill | analyse-risque | skills | skills/analyse-risque.md  | Check-list QSE        |
| agent | reviewer       | agents | agents/reviewer.md        | Revue de PR auto      |

2. Auto-Erkennung (Bundles)

Folgt Ihr Repo der Konvention category/folder/SKILL.md, erkennt STH Bundles automatisch:

react/form-wizard/SKILL.md         → bundle "react/form-wizard"
react/form-wizard/templates/...    → tous les fichiers synchronisés
commands/release-helper/SKILL.md   → bundle "commands/release-helper"

3. Enterprise / Multi-Stack-Layouts

Für größere Repositories, die mehrere Artefakt-Arten (Skills, Agenten, Befehle, sprachgebundene Anweisungen) in einer einzigen Wahrheitsquelle bündeln, liefert STH einen speziellen Multi-Stack-Scanner mit. Ein typisches Layout:

acme-skills/
├── manifest.json                       ← marqueur multi-stack
├── skills/
│   └── form-wizard/SKILL.md
├── agents/
│   └── reviewer.md                     ← frontmatter
├── commands/
│   ├── release-helper.md               ← fichier unique
│   └── fix-pr/SKILL.md                 ← variante skill-style
└── go/
    └── instructions/
        └── error-handling.instructions.md
  • skills/[name]/SKILL.md — vollständige Skills mit eigenem Ordner (Templates, Assets, usw.).
  • agents/[name].md — Single-File-Agenten mit Frontmatter deklariert.
  • commands/[name].md oder commands/[name]/SKILL.md — Single-File- oder Skill-Style-Befehle.
  • [lang]/instructions/[name].instructions.md — sprachgebundene Anweisungen (Copilot-Stil).

STH wechselt zum Multi-Stack-Scanner, sobald eine manifest.json im Repo-Root liegt oder mindestens zwei der vier oben genannten konventionellen Container vorhanden sind.

Ziele & Writer

STH kann installierte Ressourcen in ein oder mehrere KI-Werkzeug-Ziele schreiben. Die Auto-Erkennung sucht nach der konventionellen Markerdatei jedes Werkzeugs — niemals ein mehrdeutiges übergeordnetes Verzeichnis — sodass STH ein Ziel nur dann vorschlägt, wenn solide Belege vorliegen. Der Wizard zeigt die erkannten Ziele und überlässt Ihnen das letzte Wort.

ZielErkannt überVerwendetes Root-Verzeichnis
Google Antigravity.agents/agents/ · .agents/workflows/ · .agents/rules/.agents
Claude Code.claude · CLAUDE.md.claude
OpenAI Codex.codex · AGENTS.md.codex
GitHub Copilot.github/copilot-instructions.md · .github/instructions/.github
Cursor.cursor · AGENTS.md.cursor
Gemini CLI.gemini/agents/ · .gemini/commands/ · GEMINI.md.gemini

Sie können Ressourcen in mehrere Ziele im selben Projekt installieren — STH schreibt jede Datei unter den passenden Root-Ordner. Wird kein Ziel automatisch erkannt, fällt STH auf einen Claude-Only-Standard zurück.

Befehle

sth init

Schrittweise Konfiguration eines Git-Providers (GitHub, GitLab, Azure DevOps, Bitbucket).

sth init
sth list

Zeigt verfügbare Ressourcen aus dem Katalog (SKILLS.md oder Auto-Erkennung).

sth list
sth install <ref> [--dry-run] [--force]

Installiert ein Skill, einen Agent oder ein Bundle ins Zielverzeichnis.

sth install react/form-wizard --dry-run
sth update [self] [--dry-run]

Aktualisiert installierte Ressourcen. `sth update self` aktualisiert das STH-Binary selbst.

sth update
sth status [--json]

Zeigt den Status jeder Ressource (aktuell, veraltet, lokal verändert, gepinnt).

sth status --json
sth remove <name> [--yes]

Deinstalliert eine Ressource und räumt ihre verwalteten Dateien auf.

sth remove react/form-wizard --yes
sth buddy [--watch]

Zeigt das Maskottchen mit dem Projektstatus. --watch verfolgt Änderungen live.

sth buddy --watch
sth telemetry <status|off|anon|connect|output>

Telemetrie-Zustimmung prüfen oder ändern (off / anonymous / connected). `sth telemetry output` zeigt, was der Server zu Ihrer CLI-Aktivität gespeichert hat.

sth telemetry status

Nur für Alpha

Dieser Teil der Dokumentation beschreibt eine Funktion, die sich noch in der Alpha befindet. Melde dich mit einem Alpha-Konto an, um sie anzuzeigen.

sth help [command]

Globale oder gezielte Hilfe.

sth help install

Team-Bibliothek

Nur für Alpha

Dieser Teil der Dokumentation beschreibt eine Funktion, die sich noch in der Alpha befindet. Melde dich mit einem Alpha-Konto an, um sie anzuzeigen.

Konnektoren (MCP)

Nur für Alpha

Dieser Teil der Dokumentation beschreibt eine Funktion, die sich noch in der Alpha befindet. Melde dich mit einem Alpha-Konto an, um sie anzuzeigen.

Buddy, das Maskottchen

Buddy zeigt auf einen Blick den Projektstatus. Mit --watch reagiert es live auf Dateiänderungen.

  • 💧  >/< — Alles ist aktuell
  • ⚠️  o.O — Update verfügbar
  • 😶  ._. — Keine Konfiguration
  • ❌  x x — Fehler
  • ⏳  >_< — In Arbeit
  • ✅  ^.^ — Fertig

Konfiguration

Die Konfiguration liegt im Projekt-Root, in .sth/project.json. Sie können sie sicher committen — sie enthält nie Secrets. Schema v2 unterstützt mehrere Provider im providers-Array, jeder mit eigenem target_dir.

{
  "schema_version": 2,
  "providers": [
    {
      "id": "team-skills",
      "provider": "github",
      "repository_id": "acme-corp/skills",
      "catalog_ref": "main",
      "catalog_path": "SKILLS.md",
      "target_dir": ".claude/skills"
    },
    {
      "id": "shared-prompts",
      "provider": "gitlab",
      "repository_id": "acme/shared-prompts",
      "catalog_ref": "main",
      "catalog_path": "manifest.json",
      "target_dir": ".github/instructions"
    }
  ],
  "resources": [
    {
      "catalog_id": "skill::react::form-wizard",
      "provider_id": "team-skills",
      "pinned_ref": "v1.4.0"
    },
    {
      "catalog_id": "command::release-helper",
      "provider_id": "shared-prompts"
    }
  ]
}

Schema v2 unterstützt mehrere Provider und mehrere Zielverzeichnisse im selben Projekt. Jede Ressource referenziert ihren Quell-Provider über provider_id, und jeder Provider deklariert sein eigenes target_dir — so können Sie React-Skills aus einem privaten GitHub-Repo nach .claude/skills ziehen und gleichzeitig geteilte Prompts aus einem GitLab-Projekt nach .github/instructions.

Der Installationsstatus liegt in <target_dir>/sth-state.json (z. B. .claude/skills/sth-state.json). Pro Ressource: Quell-Provider, verwaltete Dateien, ihre SHA-256-Hashes und Status. sth status vergleicht Festplatte mit diesem Manifest, um lokale Änderungen zu erkennen.

Alpha-Einschränkungen

STH ist in der öffentlichen Alpha. Damit der Rahmen klar und beobachtbar bleibt, gelten ein paar temporäre Regeln:

  • Ein Projekt kann nur ein privates Git-Repo auf einmal referenzieren (github, gitlab, azure-devops oder bitbucket) — öffentliche Repos sind unbegrenzt.
  • Notfall-Umgehung: STH_ALPHA_GATE=0 deaktiviert diese CLI-seitige Einschränkung (auf eigene Verantwortung — wird bei Bug-Reports nicht unterstützt).
  • Möchten Sie die kostenpflichtigen Optionen während der Alpha testen? Führen Sie sth alpha request aus (ein Konto ist erforderlich — sth login). Das STH-Team prüft jede Anfrage und genehmigt oder lehnt sie ab.
  • Telemetrie ist eine ausdrückliche Nutzerentscheidung beim ersten sth init mit drei Modi — off, anonymous, connected. Siehe die Telemetrie-Richtlinie für das, was in jedem Modus gesendet wird, und wie Sie Ihre Entscheidung später per sth telemetry ändern.

Diese Regeln entfallen am Ende der Beta-Phase. Wenn eine davon ein Blocker für dich ist, öffne ein Issue — dein Fall kann den Zeitplan verändern.

STH Cloud

Nur für Alpha

Dieser Teil der Dokumentation beschreibt eine Funktion, die sich noch in der Alpha befindet. Melde dich mit einem Alpha-Konto an, um sie anzuzeigen.

Governance & Team-Zugang

Nur für Alpha

Dieser Teil der Dokumentation beschreibt eine Funktion, die sich noch in der Alpha befindet. Melde dich mit einem Alpha-Konto an, um sie anzuzeigen.

Häufige Fragen

Wie integriere ich STH in CI?

Laden Sie das Binary in einem setup-Schritt herunter (Homebrew/winget falls verfügbar, sonst Archiv aus Releases) und exportieren Sie den richtigen Token (STH_TOKEN für Git). Führen Sie dann sth update --dry-run aus, um zu prüfen, ob ein PR ein Bundle desynchronisiert hat.

Aktualisiert sich das Binary selbst?

STH prüft alle 24 Stunden, ob eine neue stabile Version verfügbar ist, und cacht das Ergebnis. Führen Sie sth update self aus, um das Update anzuwenden. Wenn Sie STH über Homebrew installiert haben, aktualisieren Sie es stattdessen mit brew upgrade sth.

Werden self-hosted Provider (GHE, self-managed GitLab) unterstützt?

Noch nicht — nur github.com, gitlab.com, dev.azure.com und bitbucket.org werden Git-seitig unterstützt. Sie können API/Raw-URLs über STH_GITHUB_API_BASE_URL, STH_GITLAB_API_BASE_URL, STH_AZURE_DEVOPS_BASE_URL, STH_BITBUCKET_API_BASE_URL überschreiben. Öffnen Sie ein Issue, wenn nativer self-hosted Support kritisch ist.

Fehler melden