CommunityCodierung & Entwicklunggithub.com

mowgliph/everything-agents-skills

Fähigkeit zur Verwaltung von Projektkontexten für Claude Code (mit ck-Befehlen).

Was ist everything-agents-skills?

Diese Fähigkeit (Skill) für Claude Code/Agenten bietet eine Reihe von Befehlen (`/ck:init`, `/ck:save`, `/ck:resume`, `/ck:info`, `/ck:list`, `/ck:forget`, `/ck:migrate`), um Projektkontexte strukturiert zu speichern, abzurufen und zu verwalten. Sie ist besonders nützlich, um den Arbeitsstand über mehrere Sitzungen hinweg zu verfolgen, Entscheidungen zu dokumentieren und nahtlos an vorherigen Punkten weiterzuarbeiten. Der Skill unterstützt Claude Code sowie andere terminalbasierte KI-Agenten und speichert die Daten in JSON-Dateien unter `~/.claude/ck/`. Ein SessionStart-Hook kann optional automatisch den aktuellen Projektkontext beim Start einer neuen Sitzung laden. Die Befehle arbeiten über Node.js-Skripte, die eine konsistente und fehlerresistente Datenhaltung gewährleisten – direkte Bearbeitung der Kontextdateien ist untersagt.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add mowgliph/everything-agents-skills

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

Datenstruktur

~/.claude/ck/
├── projects.json              ← Pfad → {name, contextDir, lastUpdated}
└── contexts/<name>/
    ├── context.json           ← QUELLE DER WAHRHEIT (strukturiertes JSON, v2)
    └── CONTEXT.md             ← generierte Ansicht — nicht von Hand bearbeiten

Befehle

/ck:init — Ein Projekt registrieren

node "$HOME/.claude/skills/ck/commands/init.mjs"

Das Skript gibt JSON mit automatisch erkannten Informationen aus. Präsentiere es als Bestätigungsentwurf:

Folgendes wurde gefunden — bestätige oder bearbeite:
Projekt:     <Name>
Beschreibung: <Beschreibung>
Stack:       <Stack>
Ziel:        <Ziel>
Nicht-Tuns:  <Einschränkungen oder "Keine">
Repo:        <Repo oder "kein">

Warte auf die Zustimmung des Benutzers. Wende alle Änderungen an. Leite dann das bestätigte JSON an save.mjs --init weiter:

echo '<bestätigtes-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init

Schema des bestätigten JSON: {"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }


/ck:save — Sitzungszustand speichern

Dies ist der einzige Befehl, der eine LLM-Analyse erfordert. Analysiere das aktuelle Gespräch:

  • summary: ein Satz, max. 10 Wörter, was erreicht wurde
  • leftOff: woran aktiv gearbeitet wurde (spezifische Datei/Funktion/Fehler)
  • nextSteps: geordnetes Array mit konkreten nächsten Schritten
  • decisions: Array von {what, why} für Entscheidungen dieser Sitzung
  • blockers: Array aktueller Blocker (leeres Array, wenn keine)
  • goal: aktualisierte Zielzeichenkette nur wenn es sich in dieser Sitzung geändert hat, sonst auslassen

Zeige dem Benutzer eine Entwurfszusammenfassung: "Sitzung: '<summary>' — speichern? (ja / bearbeiten)" Warte auf Bestätigung. Leite dann an save.mjs weiter:

echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"

JSON-Schema (exakt): {"summary":"...","leftOff":"...","nextSteps":["..."],"decisions":[{"what":"...","why":"..."}],"blockers":["..."]} Gib die stdout-Bestätigung des Skripts wortwörtlich aus.


/ck:resume [Name|Nummer] — Ausführliches Briefing

node "$HOME/.claude/skills/ck/commands/resume.mjs" [Argument]

Gib die Ausgabe wortwörtlich aus. Frage dann: "Hier weitermachen? Oder hat sich etwas geändert?" Wenn der Benutzer Änderungen meldet → führe sofort /ck:save aus.


/ck:info [Name|Nummer] — Kurze Übersicht

node "$HOME/.claude/skills/ck/commands/info.mjs" [Argument]

Gib die Ausgabe wortwörtlich aus. Keine Rückfrage.


/ck:list — Portfolio-Ansicht

node "$HOME/.claude/skills/ck/commands/list.mjs"

Gib die Ausgabe wortwörtlich aus. Wenn der Benutzer mit einer Nummer oder einem Namen antwortet → führe /ck:resume aus.


/ck:forget [Name|Nummer] — Ein Projekt entfernen

Löse zuerst den Projektnamen auf (führe bei Bedarf /ck:list aus). Frage: "Dies wird den Kontext für '' dauerhaft löschen. Bist du sicher? (ja/nein)" Wenn ja:

node "$HOME/.claude/skills/ck/commands/forget.mjs" [Name]

Gib die Bestätigung wortwörtlich aus.


/ck:migrate — v1-Daten in v2 konvertieren

node "$HOME/.claude/skills/ck/commands/migrate.mjs"

Führe zuerst einen Probelauf durch:

node "$HOME/.claude/skills/ck/commands/migrate.mjs" --dry-run

Gib die Ausgabe wortwörtlich aus. Migriert alle v1 CONTEXT.md + meta.json-Dateien in v2 context.json. Originale werden als meta.json.v1-backup gesichert — es wird nichts gelöscht.


SessionStart-Hook

Der Hook unter ~/.claude/skills/ck/hooks/session-start.mjs muss in ~/.claude/settings.json registriert werden, um den Projektkontext automatisch beim Start einer Sitzung zu laden:

{
  "hooks": {
    "SessionStart": [
      { "hooks": [{ "type": "command", "command": "node \"~/.claude/skills/ck/hooks/session-start.mjs\"" }] }
    ]
  }
}

Der Hook injiziert ~100 Tokens pro Sitzung (kompakte 5-zeilige Zusammenfassung). Er erkennt auch ungespeicherte Sitzungen, Git-Aktivitäten seit dem letzten Speichern und Zielkonflikte mit CLAUDE.md.


Regeln

  • Erweitere ~ in Bash-Aufrufen immer zu $HOME.
  • Befehle sind groß-/kleinschreibungsunabhängig: /CK:SAVE, /ck:save, /Ck:Save funktionieren alle.
  • Wenn ein Skript mit Exit-Code 1 endet, gib seine stdout als Fehlermeldung aus.
  • Bearbeite context.json oder CONTEXT.md niemals direkt — verwende immer die Skripte.
  • Wenn projects.json fehlerhaft ist, informiere den Benutzer und biete an, es auf {} zurückzusetzen.

Verwandte Skills