alex20-create/resume-project

Routine zum Fortsetzen eines Projekts mit Verlauf oder eines Dachprojekts, das mehrere umfasst: sammelt, was frühere Sitzungen hinterlassen haben, gleicht es ab, fasst den Stand zusammen und übergibt die Antwort an einen Skill zur Skill-Auswahl.

Was ist resume-project?

Dieser Skill dient als Startroutine für AI-Assistenten-Sitzungen, bei denen ein Projekt fortgesetzt werden soll. Er sammelt verteilte Informationen aus früheren Sitzungen (z. B. aus Notion, Sitzungsprotokollen, Git, Obsidian, Übergaben, Chats, Memory und Projektdateien), gleicht sie mit den aktuellsten verfügbaren Daten ab und fasst dem Benutzer in wenigen Zeilen zusammen, wo alles steht. Der Benutzer entscheidet dann, woran er heute arbeiten möchte, und die Antwort wird an einen Skill zur Skill-Auswahl übergeben, falls installiert. Er unterstützt Plattformen wie Claude Code, Cursor und andere Terminal-basierte Agenten und liest ausschließlich Daten, ohne in Dateien, Notizen oder Datenbanken zu schreiben. Die Quellenauswahl erfolgt dynamisch basierend auf den in der Sitzung verfügbaren Tools (z. B. Terminal, Dateizugriff, GitHub-CLI, Projektmanager-Connector), nicht anhand des Umgebungsnamens. Der Skill stellt am Ende eine Frage und gibt die Antwort weiter, ohne die Sitzung zu archivieren.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/alex20-create/session-routines/tree/HEAD/resume-project

Installed? Explore more Produktivität & Zusammenarbeit skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

Projekt fortführen

Wenn eine Sitzung geöffnet wird, sind die wichtigen Informationen aus früheren Sitzungen über mehrere Orte verstreut. Dieser Skill schafft den Weg zurück: Er sammelt sie, gleicht sie mit den aktuellsten verfügbaren Informationen ab und teilt sie dem Benutzer in wenigen Zeilen mit, damit dieser entscheiden kann, woran er heute arbeiten möchte, ohne sich an etwas erinnern zu müssen.

Vier Dinge bestimmen, wie er funktioniert:

  • Nur lesen. Er schreibt in keine Datei, Notiz, Datenbank oder in kein Memory. Deshalb fragt er nicht für jeden Schritt um Erlaubnis: Lesen ändert nichts. Das Kopieren einer Datei vom Computer des Benutzers in die Sitzung zum Lesen zählt als Lesen. Der einzige zulässige Schreibvorgang ist git fetch --prune, und nur, wenn references/claude-code.md dies vorsieht. Der Sitzung Zugriff auf ein neues Repository zu gewähren, ist nicht nur Lesen: Tun Sie dies nicht eigenmächtig (siehe die GitHub-Zeile in Schritt 0). Hooks von anderen Plugins können beim Öffnen der Sitzung schreiben (Memory konsolidieren, Protokolle speichern): Dies ist kein Schreiben durch diesen Skill und muss nicht erwähnt werden, es sei denn, es ändert eine Quelle, die Sie gleich lesen werden.
  • Liest Dateien, startet keine Workflows. Mehrere Skills schreiben beim Starten Telemetrie oder Status, erstellen Ordner, fragen nach ihrem eigenen Ausgabeformat oder enden mit ihrer eigenen Frage. Wenn Sie wissen, wo ein Skill seine Daten speichert, lesen Sie diese Datei direkt. Starten Sie den Skill nur, wenn es keinen anderen Weg gibt, und nehmen Sie in diesem Fall seine Daten, überspringen Sie seine abschließende Frage und sein Format und stoppen Sie jeden Schritt, der schreibt.
  • Projektanweisungen haben Vorrang. Wenn die Projektanweisungen, eine CLAUDE.md oder die Benutzereinstellungen angeben, wo der Status lebt, welche Ordner gelesen werden dürfen, wie Konflikte gelöst werden oder wie der Tag geplant wird, hat dies Vorrang vor diesem Skill.
  • Endet mit einer Frage und einer Übergabe. Ein Skill zum Abschließen einer Sitzung (z. B. wrap-up) endet mit der Aussage, dass die Sitzung archiviert werden kann; dieser Skill endet damit, zu fragen, woran heute gearbeitet werden soll, und die Antwort weiterzugeben (Schritt 6).

0. Inventar: Was Sie tatsächlich lesen können

Wählen Sie die Quellen nicht anhand des Umgebungsnamens aus. Dieselbe Sitzung kann gleichzeitig in der Cloud, innerhalb eines claude.ai-Projekts und mit dem Computer des Benutzers verbunden sein. Bevor Sie etwas lesen, schauen Sie sich die Tools an, die die Sitzung hat (auch die zurückgestellten, indem Sie danach suchen), und notieren Sie, welche dieser Fähigkeiten vorhanden sind:

FähigkeitSo erkennen Sie sieQuellen, die sie öffnet
Terminal im RepositoryDer Arbeitsordner ist eines der Repositories des Benutzers, oder es gibt ein Terminal auf seinem Computer (device_bash oder ähnlich) mit dem Repository in einem verbundenen OrdnerGit und das Remote (C), mit references/claude-code.md
Computerdateien ohne TerminalTools zum Auflisten und Kopieren von Dateien vom Computer, ohne TerminalVault (D), Sitzungsprotokoll (B, falls das Setup eines schreibt) und Übergaben (E), wenn sie sich in einem verbundenen Ordner befinden, und die CLAUDE.md eines Repositories, dessen Ordner verbunden ist (D). Nicht lokales Git
GitHub ohne Terminal im Repositorygh in der Sitzung installiert oder ein Tool zum Hinzufügen von Repositories zur SitzungPull Requests, Branches und Commits auf dem Remote (C2)
ProjektmanagerEin Notion-Connector oder ein anderer Projektmanager, plus Anweisungen oder eine CLAUDE.md, die besagen, welche Datenbank oder Seite die Projekte enthältStatus, nächster Schritt und Aufgaben (A)
Frühere ChatsTools zum Durchsuchen oder Auflisten von ChatsChats (F), mit references/claude-ai.md
Claude Code SitzungenTools zum Auflisten oder Durchsuchen der Sitzungen der Desktop-App (list_sessions, search_session_transcripts, list_events oder ähnlich)Frühere Sitzungen (F2), mit references/claude-code.md
Veröffentlichte ArtefakteTools zum Auflisten veröffentlichter Artefakte, Seiten oder Dokumente (Artifact mit list oder ähnlich)Liefergegenstände außerhalb des Repositorys (I)
MemoryMemory im Kontext oder Memory-ToolsMemory (G)
claude.ai-ProjektProjektanweisungen oder -dateien im Kontext oder ein Projekt-ToolAnweisungen und Dateien (H)

Die Referenzen geben die Details für Git (references/claude-code.md), für claude.ai-Chats (references/claude-ai.md) und für ein projektspezifisches Sitzungsprotokoll, das von einem Hook geschrieben wird (references/session-log.md). Lesen Sie nur die Referenz, die durch eine Fähigkeit geöffnet wird, die Sie haben, und session-log.md nur, wenn das Setup ein solches Protokoll schreibt. Wenn eine Referenz sagt, dass etwas nicht vorhanden ist (Vault, Festplatte, Git) und das Inventar sagt, dass es vorhanden ist, gewinnt das Inventar. Wenn eine Referenz fehlt, machen Sie mit dem weiter, was diese Datei sagt.

Wenn die Sitzung viele zurückgestellte Tools hat, laden Sie nicht alle, um das Inventar aufzunehmen: Suchen Sie nach den Wörtern in der Tabelle (notion, session, transcript, chat, memory, project, repository, artifact) und laden Sie das Schema nur für die, die Sie verwenden werden. gh ist kein Sitzungs-Tool, sondern ein Programm: Überprüfen Sie es mit gh auth status. Wenn die Namen der zurückgestellten Tools bereits im Kontext sichtbar sind, wählen Sie aus dieser Liste aus und laden Sie nur diese, ohne zu suchen.

Die Quellenbuchstaben in dieser Datei (A bis I) sind nicht die von claude-code.md (A bis H): E steht hier für Übergaben, während E in dieser Referenz für die CLAUDE.md steht. Wenn diese Datei eine Kategorie von claude-code.md zitiert, zitiert sie sie mit Namen; suchen Sie sie nach dem Namen, nicht nach dem Buchstaben.

Erlaubte Ordner. Lesen Sie nur die Ordner, die der Benutzer mit der Sitzung verbunden hat oder die deren Anweisungen Ihnen zu lesen erlauben, und die die Sitzung tatsächlich erreichen kann. Bitten Sie nicht um Zugriff auf einen von ihnen, um fortzufahren. Fassen Sie alles, was außerhalb der Reichweite liegt, in einer einzigen „Hinweis“-Zeile zusammen:

  • Nützliche Quellen außerhalb der verbundenen Ordner (z. B. ~/.gstack im Home-Ordner, in einer Sitzung ohne Terminal);
  • Ordner, deren Lektüre die Anweisungen erlauben, die aber nicht verbunden sind (z. B. der eigene Ordner eines Projekts). Wenn einer zu einem Projekt gehört, das in der Zusammenfassung erscheint, fügen Sie hinzu, dass alles, was über dieses Projekt bekannt ist, das ist, was der Projektmanager sagt.

1. Um welches Projekt es sich handelt

  • Ein Repository, ein Ordner oder ein Name. Wenn sich die Sitzung in einem Repository befindet, ist dies das Projekt. Wenn der Benutzer es benennt, suchen Sie danach im Projektmanager (A) und im Vault (D), ohne Berücksichtigung der Groß-/Kleinschreibung und unter Verwendung der Aliase, die das Memory liefert: Die Namen stimmen möglicherweise nicht überein, und ein Projekt kann sich mitten in einer Umbenennung befinden.
  • Ein Dachprojekt. Wenn der Kontext ein Bereich mit mehreren Projekten ist (ein claude.ai-Projekt, das die gesamte Arbeit organisiert, ein Projektmanager mit einer Projektdatenbank, ein Vault mit mehreren Ordnern) und der Benutzer keines benennt, wählen Sie nicht stillschweigend. Schreiben Sie eine Multi-Projekt-Zusammenfassung (Schritt 4) mit denen, die die aktuellste Aktivität aufweisen, und denen, die die Anweisungen als kurzfristige Priorität markieren.
  • Was der Benutzer als gegeben voraussetzt. Wenn die Eröffnungsnachricht einen Zustand behauptet (eine unvollständige Git-Operation, einen Branch, einen PR, ein Deployment), überprüfen Sie ihn anhand der Quellen, sobald Sie sie lesen: den schnellen Git-Schnappschuss, GitHub oder, falls vorhanden, das Sitzungsprotokoll. Wenn es nicht übereinstimmt, sagen Sie dies in einer Zeile vor der Zusammenfassung, mit dem, was jede Quelle sagt. Wenn das, was es benennt, zu einem anderen Projekt gehört (ein anderer Ordner, ein anderes Repository, eine andere Notiz), fragen Sie, welches fortgesetzt wird, bevor Sie weiterlesen; in einer Sitzung ohne Benutzer fahren Sie mit dem Projekt des Arbeitsordners fort und sagen dies oben in der Zusammenfassung.
  • Nichts zum Fortsetzen. Keine Notizen, Protokolle, Chats oder Commits: Sagen Sie dies in einem Satz und fahren Sie mit Schritt 6 fort, mit dem, was der Benutzer tun möchte.

Wie dasselbe Projekt über Quellen hinweg abgeglichen wird

Der Projektmanager, der Vault und, falls vorhanden, das Sitzungsprotokoll benennen Projekte jeweils auf ihre eigene Weise. Gleichen Sie sie anhand von Schlüsseln ab, in dieser Reihenfolge, und nicht anhand des bloßen Namens:

  1. Pfad. Wenn das Setup ein Sitzungsprotokoll schreibt, dessen Pfad gegen das path:-Feld im Frontmatter der Vault-Notiz (D), wie es „Matching by path“ in references/session-log.md beschreibt.
  2. Projektmanager-Link. Das Feld des Projektmanagers, das auf die Notiz verweist (in Notion z. B. ein Feld wie „Obsidian note“), gegen den Ordner der Notiz.
  3. Name. Groß-/Kleinschreibung-unabhängig und mit den Aliasen aus dem Memory.

Wenn ein Projekt im Projektmanager nicht mit seiner Notiz verlinkt ist, die Notiz aber existiert (sie stimmt durch Pfad oder Namen überein), sagen Sie dies in einer „Hinweis“-Zeile.

2. Quellen, in Lesereihenfolge

Zuerst, was Ihnen sagt, wie viel jede Notiz wert ist (was wirklich passiert ist und wann), dann, was Ihnen sagt, was als nächstes kommt, und schließlich das Warum.

B. Sitzungsprotokoll, optional. Wenn das Setup eines schreibt, folgen Sie references/session-log.md.

C. Git und das Remote. Nur mit einem Terminal im Repository. Folgen Sie dem „Quick git snapshot“ und der Kategorie „Actual state of git and the remote“ von references/claude-code.md.

C2. GitHub ohne Terminal. Verwenden Sie es, um zu bestätigen, was die lokalen Quellen nicht wissen können: ob ein Branch gepusht wurde, ob er einen Pull-Request hat und ob er gemergt wurde. Holen Sie sich owner/repository aus der Vault-Notiz des Projekts (url:-Feld oder eine github.com/...-Zeile), aus der CLAUDE.md oder, falls ein Sitzungsprotokoll vorhanden ist, aus seinen Merge pull request #N von <owner>/...-Commits.

  • Überprüfen Sie zuerst, ob die Sitzung bereits Zugriff mit einem Lesevorgang hat: gh api "repos/<owner>/<repo>/pulls?state=all&sort=updated&direction=desc&per_page=10". Verwenden Sie die REST-API (gh api repos/...): gh pr list kann fehlschlagen, weil GraphQL nicht immer verfügbar ist. Jeder PR hat created_at und merged_at: Wann er eingegangen ist, wird durch merged_at angegeben, nicht durch das Erstellungsdatum.
  • Wenn es antwortet, lesen Sie auch die Branches (repos/<owner>/<repo>/branches) und die letzten Commits auf dem Haupt-Branch (repos/<owner>/<repo>/commits?per_page=5). Damit wird ein ungemergter Branch, den eine andere Quelle nennt, zu „hat offenen PR #N“, „gemergt“ oder „nicht auf dem Remote“.
  • Lesen Sie auch die CI des Haupt-Branches (repos/<owner>/<repo>/actions/runs?branch=<main>&per_page=1). Wenn der letzte Lauf fehlgeschlagen ist, kommt er in „Ausstehend“; wenn er bestanden hat, erwähnen Sie es nicht, und wenn es überhaupt keinen Lauf gibt (das Repository hat keine CI), erwähnen Sie das auch nicht.
  • Wenn es antwortet, dass das Repository für die Sitzung nicht aktiviert ist, fügen Sie es nicht eigenmächtig hinzu: Der Zugriff auf ein Repository zu gewähren, ist nicht nur Lesen. Notieren Sie es in „Hinweis“ und bieten Sie es in Schritt 5 als Option an („Auf GitHub bestätigen“). Überspringen Sie es in einer Sitzung ohne Benutzer.

A. Projektmanager. Wenn die Anweisungen besagen, dass Status, Priorität oder nächster Schritt in einem Projektmanager (Notion oder einem anderen) leben, lesen Sie ihn: Er ist die Quelle dafür, was als nächstes kommt. Holen Sie sich die Datenbankadresse aus den Anweisungen oder der CLAUDE.md; suchen Sie nicht nach Namen, wenn Sie sie bereits haben.

  • In Notion: Holen Sie sich das Datenbankschema und fragen Sie die Zeilen mit ihrem Link (url), Name, Bereich oder Branch, Status, Priorität, Schlüsseldatum, nächstem Schritt und Notiz ab.
  • Archiviert. Entfernen Sie die Zeilen, die Notion archiviert hat, und, wenn die Datenbank auch ein eigenes Kontrollkästchen oder einen eigenen Status dafür hat (z. B. ein „Archiviert“-Kontrollkästchen oder einen „Geschlossen“-Status), auch diejenigen, bei denen dies gesetzt ist.
  • Bearbeitungsdaten. Die Abfrage gibt nicht das Datum der letzten Bearbeitung zurück. Öffnen Sie die Seite der Zeilen, die Sie anhand einer anderen Quelle überprüfen werden, und in einem Dachprojekt auch die der Projekte, die die Anweisungen als kurzfristige Priorität markieren, selbst wenn sie kein Protokoll oder keine Notiz haben: So können Projekte ohne Code ebenfalls in „Wo Sie aufgehört haben“ landen.
  • Massenbearbeitungen. Wenn mehrere Seiten in derselben Datenbank Bearbeitungsdaten haben, die nur wenige Sekunden auseinander liegen, war es eine Änderung, die an allen gleichzeitig vorgenommen wurde (ein neues Feld, ein Import, eine Vorlage), keine Arbeit an diesen Projekten. Verwenden Sie dieses Datum nicht als Aktivität: Lassen Sie diese Projekte undatiert, es sei denn, eine andere Quelle gibt ihnen ein Datum.
  • Aufgaben. Wenn die Anweisungen eine Aufgabendatenbank nennen, holen Sie sich deren Schema und fragen Sie die unerledigten Aufgaben ab, die überfällig sind oder in den nächsten sieben Tagen fällig werden. Nur die von Projekten, die in der Zusammenfassung erscheinen, zählen: Die von pausierten, geschlossenen oder nicht in der Zusammenfassung enthaltenen Projekten sind nicht ausstehend, selbst wenn sie überfällig sind. Sie kommen in „Ausstehend“ unter dem Eintrag ihres Projekts, mit ihrem Datum. Fragen Sie für Prioritätsprojekte ohne nächsten Schritt auch ihre offenen Aufgaben ohne Datumsfilter ab (siehe unten).
  • Aufgaben ohne Projekt. Sie kommen nicht in „Ausstehend“. Aber wenn eine mit einer „Hinweis“-Warnung übereinstimmt (z. B. eine Aufgabe, die Notizen zu verknüpfen, wenn ein Projekt seine eigene Notiz nicht verknüpft), nennen Sie die Aufgabe in dieser Warnung, anstatt sie als neuen Fund zu präsentieren.
  • Eine Zeile ohne nächsten Schritt ist kein ausstehender Punkt: Erfinden Sie keinen. Wenn das Projekt ein Prioritätsprojekt ist, setzen Sie es in „Ausstehend“ als „kein nächster Schritt“. Wenn es offene Aufgaben hat, mit oder ohne Datum, nennen Sie die erste (die mit dem nächsten Datum oder die erste undatierte): „Kein nächster Schritt; offene Aufgabe: ". Dies sind Daten aus dem Projektmanager, kein Vorschlag. Priorität bedeutet das, was die Anweisungen als kurzfristige Priorität markieren, plus die erste ihrer langfristigen Prioritäten; wenn die Anweisungen keine Prioritäten setzen, die höchste Priorität im Projektmanager. Der Projektmanager, der „Hoch“ sagt, reicht nicht aus, wenn die Anweisungen andere setzen.
  • Wenn sie nicht passen. „Ausstehend“ hat maximal fünf Elemente. Wenn es mehr einzubeziehende Projekte gibt, kommen die kurzfristigen und die mit einem nächsten Schritt oder etwas Halbfertigem zuerst; Prioritätsprojekte, die nur „kein nächster Schritt“ hinzufügen würden, werden zu einer „Hinweis“-Zeile zusammengefasst: „Kein nächster Schritt: X, Y und Z“.
  • Wenn der Status des Projektmanagers eindeutig einer anderen, aktuelleren Quelle widerspricht (z. B. „Idee“ im Projektmanager und die Vault-Notiz mit erledigter Arbeit), sagen Sie dies in „Hinweis“ mit beiden Daten.

D. Obsidian Vault. Die Projektnotiz im Projekte-Ordner des Vaults (die Anweisungen oder die CLAUDE.md sagen normalerweise, welcher; in einem PARA-Vault z. B. 2 Projekte/<Projekt>/) und ihr updated:. Ihr path:-Feld, falls vorhanden, ist ein Schlüssel zum Abgleichen (siehe Schritt 1). Lesen Sie die Kopfzeile und die neuesten Einträge, nicht die gesamte Notiz. Es ist kein Skill erforderlich, um sie zu lesen. In Claude Code sagt die Referenz, wann ein Vault-Skill gestartet werden soll und wann nicht.

  • Die CLAUDE.md des Repositorys. Wenn sie erreichbar ist (ein Terminal oder der Repository-Ordner verbunden), sind ihre Status- und Ausstehend-Abschnitte („Current state“, „Pending“) die zuverlässigste Liste ausstehender Punkte, die lokal verfügbar ist; lesen Sie nur diese Abschnitte. Mit einem Terminal folgen Sie den Anweisungen, die...

…

[gekürzt für die Übersetzung]

Individual skills in this repo

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

alex20-create/plan-admin

Work-planning routines for people who run several projects in parallel: a daily plan (today's blocks, each with its next action and a first step), a day close (where each block was left and the next actions for the next working day) and a weekly review (what went well, collisions, priorities). Reads the schedule, rules and project status from the user's project manager and project instructions, in claude.ai or in Claude Code. Use it whenever the user says 'what's on today', 'what should I do today', 'plan my day', 'where do I start today', 'I'm done for today', 'closing the day', 'weekly review', 'what have I got this week', or the equivalent in their language (in Spanish, for example, 'qué toca hoy', 'cierro el día' or 'revisión semanal'), even if the skill is not named. Do not use it to open a session on a project with history (that is a session-opening skill such as resume-project), to archive or close the chat, or to choose skills for a task.

alex20-create/wrap-up

Use when the user is about to archive the chat, close the session or finish for now ("voy a archivar", "cierro el chat", "wrap up", "/wrap-up"), in Claude Code or in claude.ai, even when they name none of the skills that save state, and also when the chat being closed is days old and later sessions have moved on. Not for the end of one task while the user keeps working, not for the daily close routine ("cierro el día", which belongs to the planning skill), and not for logging out of a website ("cerrar sesión" in that sense).

Verwandte Skills