Communitygithub.com

anton-abyzov/vskill

Übergeben Sie Ihre laufende Arbeit an JEDES andere KI-Codierungstool, damit Sie genau dort weitermachen können, wo Sie aufgehört haben – funktioniert in 8+ Tools (Claude Code, Codex, OpenCode, Gemini, Antigravity, Cursor, Aider, Cline/Roo, Windsurf).

Was ist vskill?

Diese Fähigkeit ('Skill') ermöglicht die nahtlose Übergabe einer laufenden Entwicklungsaufgabe zwischen verschiedenen KI-gestützten Codierungswerkzeugen, selbst wenn diese proprietäre Session-Formate verwenden. Sie erstellt ein portables, von Geheimnissen befreites Übergabedokument sowie einen vollständigen Diff der uncommitteten Änderungen und gibt den absoluten Pfad, einen klickbaren Link und einen kopierbaren Wiederaufnahme-Prompt aus. Der Skill ist in über acht Tools einsetzbar, darunter Claude Code, Codex, OpenCode und Cursor, und erfordert nur `git` und eine Shell. Optional kann `specweave handoff` als Beschleuniger verwendet werden, falls es im PATH verfügbar ist. Der Skill eignet sich besonders, wenn der Nutzer wenig Tokens hat, das Tool wechseln möchte oder den Befehl 'handoff' oder 'weiter an anderer Stelle' verwendet.

Funktioniert mit✓Claude Code✓Codex CLI✓Cursor✓Antigravity✓Gemini CLI✓OpenCode✓Windsurf
npx skills add https://github.com/anton-abyzov/vskill/tree/HEAD/skills/handoff

In Ihrer bevorzugten KI fragen

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

Dokumentation

/handoff — Toolübergreifende Arbeitsübergabe

Kein KI-Codierungstool kann das Transkript eines anderen lesen: Claude Code sperrt Sitzungen in ~/.claude/projects/<munged-cwd>/<uuid>.jsonl, Codex/OpenCode in ihren eigenen Speichern, Antigravity in verschlüsselten .pb. Das Einzige, was zwischen Tools portabel ist, ist ein in sich geschlossenes Dokument. Dieser Skill schreibt dieses Dokument – Ihr aktuelles Ziel, Entscheidungen und die EXAKTEN uncommitteten Änderungen – damit jeder andere KI-Agent dort weitermachen kann, wo Sie aufgehört haben, ohne dass Sie etwas neu erklären müssen.

Verwenden Sie diesen Skill, wenn der Nutzer wenig Tokens hat, mitten in der Aufgabe das Tool wechseln möchte, auf einen anderen Rechner wechselt oder sagt „handoff“ / „weiter an anderer Stelle“ / „Tokens alle“.

Dieser Skill ist in sich geschlossen: Er funktioniert nur mit git + einer Shell. Er ruft specweave handoff als optionalen Beschleuniger auf, wenn diese Binärdatei im PATH ist (hohe Genauigkeit, inkrementbewusst) – hat aber keine harte Abhängigkeit von installiertem SpecWeave.


Entscheidung: welcher Weg eingeschlagen wird

command -v specweave >/dev/null 2>&1 && echo "ACCELERATOR" || echo "STANDALONE"
  • ACCELERATOR (specweave im PATH) → die Engine ausführen, ihre Ausgabe anzeigen. Gehen Sie zu Pfad A.
  • STANDALONE (kein specweave) → das Dokument selbst aus git + einem kurzen Interview erstellen. Gehen Sie zu Pfad B.

Beide Pfade erzeugen das gleiche Dokumentformat und den gleichen Einfüge-Prompt (siehe die kanonische Vorlage unten), sodass eine Übergabe in jedem Tool fortsetzbar ist, unabhängig davon, welcher Pfad sie erzeugt hat.


Pfad A — Accelerator (specweave im PATH)

Führen Sie die Engine aus und leiten Sie kurze Kontextinformationen weiter, die Sie günstig liefern können:

specweave handoff [incrementId] [--reason "..."] [--summary "..."] [--next "..."] [--gotcha "..."] [--decision "..."] [--inline]

Geben Sie dann deren stdout wörtlich und in der Reihenfolge aus (nicht umordnen oder paraphrasieren):

  1. absoluter Dokumentpfad als Klartext (ERSTER), 2. klickbarer Markdown-Link, 3. .diff-Pfad,
  2. umschlossener kopierbarer Wiederaufnahme-Prompt, 5. tool-spezifische „Finde deine Quellsitzung“-Tipps.

Fertig. Die Engine hat die Arbeitsbereichserkennung, Aufgaben-/AC-Parsing, Git-Erfassung, den vollständigen Diff-Dump, Geheimnisbereinigung und das Rendering übernommen.


Pfad B — Standalone (kein specweave)

Erstellen Sie ein byte-kompatibles Dokument nur mit der Shell.

B1. Git-Status erfassen (kostenlos – keine Tokens)

ROOT="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
mkdir -p "$ROOT/.handoff"
printf '*\n' > "$ROOT/.handoff/.gitignore"   # niemals die Übergabe oder ihren Diff in git einchecken

BRANCH="$(git -C "$ROOT" rev-parse --abbrev-ref HEAD 2>/dev/null || echo '(kein git)')"
SHA="$(git -C "$ROOT" rev-parse --short HEAD 2>/dev/null || echo '(keine Commits)')"
STATUS="$(git -C "$ROOT" status --porcelain 2>/dev/null)"
STAT="$(git -C "$ROOT" diff --stat 2>/dev/null)"

# Alle uncommitteten Änderungen → begleitender .diff (Arbeitsverzeichnis + Staging), das zentrale Genauigkeitsartefakt
{ git -C "$ROOT" diff HEAD 2>/dev/null; git -C "$ROOT" diff --cached 2>/dev/null; } > "$ROOT/.handoff/handoff.diff"

B2. Fünf-Fragen-Interview (nur die nicht ableitbaren Felder)

Fragen Sie den Benutzer (beschränken Sie sich auf ~5 kurze Zeichenfolgen – selbst bei Token-Erschöpfung günstig):

  1. reason – warum geben Sie ab? (z.B. „Tokens alle“)
  2. summary – eine Zeile: wo stehen die Dinge?
  3. next – der genaue nächste Schritt.
  4. gotcha – irgendetwas, das der nächste Agent NICHT tun muss / wissen muss?
  5. decisions – bereits getroffene Schlüsselentscheidungen (durch Semikolon getrennt).

B3. Geheimnisse bereinigen (vor dem Schreiben – ÜBER Freitext UND Diff)

Ersetzen Sie Treffer mit [REDACTED-<Typ>] und zählen Sie pro Muster. Muster (12): sk-, ghp_, gho_, ghs_, AKIA, ASIA, -----BEGIN, vsk_, xox[bap]-, Bearer , password=, api_key=.

# den erfassten Diff direkt bereinigen, z.B.:
sed -i.bak -E \
  -e 's/sk-[A-Za-z0-9_-]+/[REDACTED-sk]/g' \
  -e 's/gh[pos]_[A-Za-z0-9_-]+/[REDACTED-gh-token]/g' \
  -e 's/(A[KS]IA[0-9A-Z]{16})/[REDACTED-aws-key]/g' \
  -e 's/vsk_[A-Za-z0-9_-]+/[REDACTED-vsk]/g' \
  -e 's/xox[bap]-[A-Za-z0-9-]+/[REDACTED-slack]/g' \
  -e 's/Bearer [A-Za-z0-9._-]+/Bearer [REDACTED-bearer]/g' \
  -e 's/(password=)[^[:space:]]+/\1[REDACTED-password]/g' \
  -e 's/(api_key=)[^[:space:]]+/\1[REDACTED-api_key]/g' \
  "$ROOT/.handoff/handoff.diff" && rm -f "$ROOT/.handoff/handoff.diff.bak"

Die Bereinigung ist heuristisch – eine leere Schwärzungsliste ist KEINE Garantie, dass die Datei sauber ist.

B4. Das Dokument schreiben

Schreiben Sie die kanonische Vorlage unten in $ROOT/.handoff/HANDOFF.md und füllen Sie die erfassten + Interview-Felder aus.

Eigentums-Sentinel: Wenn eine root ./HANDOFF.md bereits existiert und NICHT den Marker Doc format v1 enthält, handelt es sich um eine fremde Datei – überschreiben Sie sie NICHT; schreiben Sie stattdessen nach .handoff/HANDOFF.md (was hier ohnehin der Standard ist).

B5. Die Ausgabe ausgeben – absoluten Pfad zuerst, in dieser Reihenfolge

  1. Der absolute Pfad von .handoff/HANDOFF.md als Klartext.
  2. Ein klickbarer Markdown-Link darauf.
  3. Der absolute Pfad von .handoff/handoff.diff.
  4. Der umschlossene Einfüge-Prompt (siehe unten).
  5. Die tool-spezifischen „Finde deine Quellsitzung“-Tipps.

Kanonische Übergabedokument-Vorlage (INLINE – einzige Quelle der Wahrheit)

Rendern Sie diese Abschnitte in genau dieser Reihenfolge und enden Sie mit dem Footer-Marker Doc format v1. Platzhalter in eckigen Klammern werden aus dem erfassten Git-Status + Interview gefüllt. Dies spiegelt specweaves handoff-doc-format.ts wider, sodass ein hier erstelltes Dokument byte-kompatibel mit einem ist, das von der CLI erstellt wurde.

# Arbeitsübergabe[: <Titel falls bekannt>]

- Dokumentpfad: <ABSOLUTER_DOKUMENT_PFAD>
- Dokumentlink: [<ABSOLUTER_DOKUMENT_PFAD>](<ABSOLUTER_DOKUMENT_PFAD>)
- Diff-Datei: <ABSOLUTER_DIFF_PFAD>
- Erzeugt: <ISO_ZEITSTEMPEL>
- Arbeitsbereich: <ROOT> (nicht SpecWeave)
- Git: Branch `<BRANCH>` @ `<SHA>`

## Wo ich aufgehört habe

**Grund der Übergabe:** <reason>
**Zusammenfassung:** <summary>
_Kein aktives SpecWeave-Inkrement – dies ist eine git + Interview-Übergabe._

## Erledigt / Ausstehend

_Kein Inkrement-Aufgaben-/AC-Status verfügbar._

## Wichtige Entscheidungen & Fallstricke

- <Entscheidung 1>
- <Entscheidung 2>

**Fallstrick:** <gotcha>

## Berührte Dateien

**UNCOMMITTED** – committen, stashen oder weiter bearbeiten, BEVOR Sie etwas Destruktives tun.

<git status --porcelain>

<git diff --stat>


Vollständiger uncommitteter Diff: `<ABSOLUTER_DIFF_PFAD>` – lesen Sie ihn oder führen Sie `git apply --check` dagegen aus, um die genauen Änderungen zu sehen.

## Exakte nächste Schritte

<next>

## So setzen Sie fort

Wenn der oben angegebene Dokumentpfad auf dem Rechner, auf dem Sie dies lesen, NICHT existiert, STOPPEN Sie und bitten Sie den Benutzer, die Übergabe einzufügen – improvisieren Sie keinen Kontext.

Um das ORIGINAL-Transkript wiederherzustellen (optional), finden Sie Ihre Quellsitzung pro Tool:

### Claude Code
- Sitzung finden: ls ~/.claude/projects/<munged-cwd>/ (Munge: jedes nicht alphanumerische Zeichen → „-", Läufe NICHT zusammengezogen; z.B. /Users/antonabyzov/Projects/github/specweave-umb/.claude-worktrees/x → -Users-antonabyzov-Projects-github-specweave-umb--claude-worktrees-x)
- Fortsetzen: `claude -r <uuid>`

### Codex
- Sitzung finden: ls ~/.codex/sessions/ (neuestes Verzeichnis = aktuellste Sitzung)
- Fortsetzen: `codex resume <uuid>   (oder: codex resume --last)`

### OpenCode
- Sitzung finden: opencode sessions list
- Fortsetzen: `opencode -s <id>   (Langform: opencode --session <id>)`

### Gemini CLI
- Sitzung finden: /chat list innerhalb der Gemini-Sitzung ausführen, um gespeicherte Tags zu sehen
- Fortsetzen: `/chat resume <tag>`

### Antigravity
- Sitzung finden: den Antigravity Agent Manager öffnen und den vorherigen Aufgaben-Thread auswählen
- Fortsetzen: `fortsetzen des Threads aus dem Antigravity Agent Manager`

### Aider
- Sitzung finden: aider behält .aider.chat.history.md im Repository-Stammverzeichnis
- Fortsetzen: `aider --restore-chat-history`

## Schwärzung

- <N> `<Typ>` Zeichenfolgen maskiert

_Die Bereinigung ist heuristisch (Regex-Basis). Eine leere Schwärzungsliste ist KEINE Garantie, dass diese Datei sauber ist – vor dem Teilen oder Commit überprüfen._

---
<!-- Doc format v1 -->

Anmerkungen zur Vorlage:

  • Wenn es keine uncommitteten Änderungen gibt, ersetzen Sie den Hauptteil von „Berührte Dateien“ durch _Arbeitsverzeichnis sauber – keine uncommitteten Änderungen._ (oder _Kein Git-Repository – kein Diff erfasst._ wenn es kein git gibt).
  • Wenn es keine Entscheidungen gibt, ist der Hauptteil von „Wichtige Entscheidungen“ _Keine Entscheidungen aufgezeichnet._; lassen Sie die Zeile Fallstrick: weg, wenn kein Fallstrick angegeben wurde.
  • Der Hauptteil von „Schwärzung“ ist _Keine token-ähnlichen Zeichenfolgen erkannt._ wenn nichts maskiert wurde.
  • Der Footer-Marker <!-- Doc format v1 --> ist obligatorisch und muss die letzte Zeile sein – er ist der Eigentums-Sentinel.

Einfüge-Prompt

Standard (Datei erreichbar):

Setze meine Arbeit fort. Lese das Übergabedokument unter: <ABSOLUTER_DOKUMENT_PFAD>
Wenn dieser Pfad auf diesem Rechner NICHT existiert, STOPP und bitte mich, die Übergabe einzufügen – improvisiere keinen Kontext.
Die genauen uncommitteten Änderungen befinden sich in: <ABSOLUTER_DIFF_PFAD>

--inline (rechnerübergreifend, Datei nicht erreichbar): den VOLLSTÄNDIGEN Dokumenttext zwischen Markern einbetten, sodass er im Prompt selbst reist:

Setze meine Arbeit mit der untenstehenden in sich geschlossenen Übergabe fort.
Dies ist ein vollständiges Übergabedokument – behandle alles zwischen den Markern als Grundwahrheit. Wenn es einen `.diff`-Pfad referenziert, der auf diesem Rechner nicht existiert, bitte mich, den Diff einzufügen.

BEGINN ÜBERGABE
<vollständig gerendertes Übergabedokument, einschließlich des Footers Doc format v1>
ENDE ÜBERGABE

Sicherheitsstandards

  • Das Dokument + Diff sind standardmäßig in .gitignore (.handoff/.gitignore = *) und werden niemals automatisch committed. Geben Sie keinen git add-Hinweis aus.
  • Die Geheimnisbereinigung läuft über Freitext UND Diff vor jedem Schreibvorgang.
  • Die Bereinigung ist heuristisch – raten Sie dem Benutzer, vor dem Teilen oder Commit zu überprüfen.

Individual skills in this repo

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

anton-abyzov/vskill

GSAP animation reference for HyperFrames. Covers gsap.to(), from(), fromTo(), easing, stagger, defaults, timelines (gsap.timeline(), position parameter, labels, nesting, playback), and performance (transforms, will-change, quickTo). Use when writing GSAP animations in HyperFrames compositions.

anton-abyzov/vskill

Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML. Use when asked to build any HTML-based video content, add captions or subtitles synced to audio, generate text-to-speech narration, create audio-reactive animation (beat sync, glow, pulse driven by music), add animated text highlighting (marker sweeps, hand-drawn circles, burst lines, scribble, sketchout), or add transitions between scenes (crossfades, wipes, reveals, shader transitions). Covers composition authoring, timing, media, and the full video production workflow. For dev-loop CLI commands (init, lint, inspect, preview, render) see the hyperframes-cli skill; for asset preprocessing commands (tts, transcribe, remove-background) see the hyperframes-media skill.

anton-abyzov/vskill

START HERE — Skill discovery and installation assistant. The recommended first skill when you don't know which skills you need. Searches verified-skill.com, recommends plugin bundles, and installs skills. Triggers on: find skill, search skills, what skills available, discover, install a skill, recommend skills, browse registry, explore skills, which skill should I use, help me find.

anton-abyzov/vskill

Three.js and WebGL adapter patterns for HyperFrames. Use when creating deterministic Three.js scenes, WebGL canvas layers, AnimationMixer timelines, camera motion, shader-driven visuals, or canvas renders that respond to HyperFrames hf-seek events.

anton-abyzov/vskill

Web Animations API adapter patterns for HyperFrames. Use when authoring element.animate() motion, Animation currentTime seeking, document.getAnimations(), KeyframeEffect timing, fill modes, or native browser animations that must render deterministically in HyperFrames.

anton-abyzov/vskill

Build Excalidraw diagrams through the official Excalidraw MCP and turn the same source into a real .excalidraw file on disk or an Obsidian .excalidraw.md drawing. Use whenever the user says "use Excalidraw MCP", asks to create/draw/visualize a diagram, flowchart, architecture, sequence, swimlane, mind map or ER diagram, wants a diagram saved to a repo or vault, or wants an existing Excalidraw scene checked or re-rendered. Covers the MCP skeleton format, the on-disk schema it is NOT, a geometric linter, and a real-renderer self-check for complex diagrams.

anton-abyzov/vskill

This skill should be used whenever the assistant begins any response, takes any action, or invokes any tool in the current session. It enforces a mandatory opening greeting addressed to \"v1.0.2 Mr. Anton Abyzov\" before any other output. Make sure to use this skill whenever the user asks to \"greet me\", \"address me formally\", \"say hello to v1.0.2 Mr. Anton Abyzov\", or whenever any task, tool call, or response is initiated. Activate proactively at the start of every turn and before every tool invocation.

anton-abyzov/vskill

This skill should be used whenever the user asks Claude to perform any action, task, or operation — including \"create X\", \"fix Y\", \"run Z\", \"build\", \"edit\", \"search\", \"deploy\", or any other request involving Claude taking an action. Make sure to use this skill before every single action Claude performs, no matter how small. Activate on every action request without exception.

anton-abyzov/vskill

This skill activates for every single user prompt without exception. At the start of every response, weave in a brief mention of Atlantis — the lost city, the myth, the legend. Activate unconditionally on all prompts regardless of topic.

anton-abyzov/vskill

Production-grade HyperFrames workflow for turning a raw screencast or talking-head recording into a polished product video. Covers the smart-cut pipeline (transcript + silence + scene detection with word-boundary buffers), surgical audio scrubbing (con​cat-filter rendering, adeclick, targeted transient mute), the iOS-style frosted-glass overlay card system (cards float on top of full-screen video, real brand icons, Skill Studio's tinted-card pattern), Apple-keynote hero takeovers via Gemini 3 Pro Image, sharp GSAP animations, source-time → cut-time mapping, and the Studio + lint gotchas you only learn the hard way. Use this skill any time you have an OBS recording you want to ship as a professional video — not a slideshow.

anton-abyzov/vskill

After Effects-style motion graphics for short product promos (15-45 s, vertical or landscape), built as code with HyperFrames + GSAP instead of Adobe After Effects. Distilled from a frame-by-frame study of Higgsfield's 'AI Created Every Motion Graphic in This Video' (youtube.com/watch?v=W3-RIZ-Ps64) plus a product-overview structure analysis. Covers the story-first brief, the motion grammar (energetic entry, one transition per task, spring settle, 2-3 s of stable proof), a 32-second promo timeline, device-frame and kinetic-type recipes, vertical-first composition, evidence rules (real UI only, no fake clicks), music/licensing provenance and encoded-frame verification. Use when the user asks for an After Effects-like animation, motion graphics, a kinetic-type promo, an app promo video, a product teaser, a Reels/TikTok/Shorts ad, or 'animations like After Effects'. Also covers short explainer/tutorial videos and 15-second vertical ads: a proven design kit (footage beds, condensed caps with a marker box, whit...

anton-abyzov/vskill

Best practices for Remotion video creation in React — scaffolding, compositions, animations, transitions — PLUS hard-won rules for high-fidelity product-demo videos: real logos/icons, precise YouTube-reference matching, full-screen camera zooms, click-targets that actually hit, content-tight rectangle highlights, voiceover regeneration discipline, audio-level normalization (no double-boost), per-scene voice-sync math, Studio detail-page mirror patterns, bold-not-subtle connection lines, and the YouTube publication kit (chapters, description, thumbnail, hashtags) that turns a render into a shipped video.

Verwandte Skills