JuliusBrussee/caveman-discover

Findet und kennzeichnet jeden LLM-Workflow im Repository, damit Caveman Cloud Ausgaben nach Workflow statt als ein Bucket gruppiert. Nutzen Sie dies zum „Discover Workflows“ oder zur Aufschlüsselung der LLM-Ausgaben nach Workflow.

Was ist caveman-discover?

Diese Fähigkeit (Skill) identifiziert und kennzeichnet automatisch alle LLM-Workflows in einem Repository für die Caveman Cloud Plattform. Ein Workflow wird dabei als eine logische Aufgabe definiert – wie „Support-Ticket beantworten“ oder „Nacht-Digest erstellen“ – nicht als eine Technologie. Jeder API-Gateway-Request kann mit einem Workflow-Label versehen werden; unmarkierter Traffic landet in einem `unlabeled-workflow` Bucket. Der Skill durchläuft einen mehrstufigen Prozess: Inventarisierung von Einstiegspunkten (HTTP/RPC-Handler, Cron-Jobs, CLI-Befehle, Evaluierungsumgebungen), Benennung der Workflows mit Slug-Grammatik, Vorschlag einer Tabelle mit Benutzerfreigabe und schließlich die Verkabelung der Labels mit dem leichtesten verfügbaren Mechanismus (SDK-Optionen, `defaultHeaders`, `extra_headers`). Unterstützt werden gängige Frameworks wie @caveman-ai/sdk, caveman_cloud SDK, OpenAI, Anthropic, LangChain, LiteLLM, Vercel sowie rohe HTTP-Aufrufe. Der Skill arbeitet idempotent – eine erneute Ausführung auf einem bereits gekennzeichneten Repository ändert nichts – und erfordert vor Code-Änderungen die Zustimmung des Benutzers, wobei Änderungen dem normalen Review-Prozess unterliegen.

Funktioniert mit✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/JuliusBrussee/caveman/tree/main/skills/caveman-discover

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

Sie kennzeichnen die LLM-Workflows dieses Repositorys für Caveman Cloud. Ein Workflow ist eine Aufgabe, die der Code ausführt – „Support-Ticket beantworten“, „Den Nacht-Digest erstellen“, „Die Evaluierungssuite ausführen“ – keine Technologie. Jeder Gateway-Request kann ein Workflow-Label tragen; unmarkierter Traffic landet in einem unlabeled-workflow Bucket. Ihre Aufgabe: die Workflows finden, gut benennen, die Labels verknüpfen und sicherstellen, dass nichts kaputtgeht.

Dies ändert Code und durchläuft daher den normalen Review-Prozess des Benutzers: Schlagen Sie zuerst die Tabelle vor, wenden Sie sie erst an, nachdem der Benutzer zugestimmt hat. Eine erneute Ausführung auf einem bereits gekennzeichneten Repository darf nichts ändern (idempotent).

Dieser Skill wird vom Benutzer aufgerufen. Eine unlabeled-traffic Cave Plan Beobachtung ist nur zur Überprüfung gedacht und erstellt keine Advisory-Datei, keinen Vorschlag und kein Draft-PR. Leiten Sie nicht ab, dass Telemetrie eine Aufrufstelle ausgewählt oder eine Bearbeitung autorisiert hat. Inventarisieren Sie das Repository eigenständig, präsentieren Sie die Kennzeichnungstabelle und warten Sie auf die Zustimmung des Benutzers, bevor Sie Code ändern.

Schritt 1 — Workflows inventarisieren

Durchsuchen Sie das Repository von seinen Einstiegspunkten aus, nicht von seinen Importen:

  • HTTP/RPC-Handler, die ein LLM aufrufen (direkt oder durch Schichten)
  • Geplante Jobs: Cron-Definitionen, Queue-Consumer, Worker, GitHub Actions, die LLM-Code aufrufen
  • CLI-Befehle und Skripte (scripts/, bin/, package.json-Skripte)
  • Evaluierungs- / Test-Harnesses, die echte Tokens verbrauchen
  • Verschiedene Agenten oder Chains innerhalb eines Frameworks (jeder LangGraph-Graph, jedes Crew-Team, jede Agentendefinition ist normalerweise ein eigener Workflow)

Ein Workflow = eine Aufgabe, die ein Mensch benennen würde. Zehn Aufrufstellen innerhalb desselben Request-Handlers sind ein Workflow; ein gemeinsam genutzter llm.ts-Helper, der von drei Jobs verwendet wird, sind drei Workflows (kennzeichnen Sie die Aufrufer, niemals den gemeinsam genutzten Helper).

Schritt 2 — Workflows benennen

Slug-Grammatik (vom Gateway durchgesetzt): nur Kleinbuchstaben [a-z0-9_-], 1–96 Zeichen. Benennen Sie die Aufgabe, nicht die Technologie:

  • Gut: support-reply, nightly-digest, pr-review, eval-suite, onboarding-email
  • Schlecht: openai-calls (Technologie), main (sagt nichts), SupportReply (ungültig), johns-test-3 (nicht zukunftssicher)

Namen sind quasi für immer – eine spätere Umbenennung teilt die Ausgabenhistorie. Wenn der Zweck einer Aufgabe aus dem Code nicht klar hervorgeht, leiten Sie den Slug aus dem Dateinamen ab und markieren Sie ihn in der Tabelle als review, anstatt einen Zweck zu erfinden.

Schritt 3 — Vorschlagen, dann anwenden

Präsentieren Sie diese Tabelle und fragen Sie nach Fortfahren:

| workflow | job | wo | wie es gekennzeichnet wird |
|---|---|---|---|
| support-reply | beantwortet eingehende Tickets | src/bot/reply.ts:41 | defaultHeaders auf dem reply-Client |
| nightly-digest | 02:00 Zusammenfassungs-Job | jobs/digest.ts:12 | Header auf dem digest-Client |
| eval-suite (review) | scripts/eval.ts:8 — Zweck aus Dateiname abgeleitet | scripts/eval.ts:8 | env-Override beim Aufruf |

Verknüpfen Sie dann jedes Label mit dem leichtesten Mechanismus, der an dieser Aufrufstelle verfügbar ist:

  • @caveman-ai/sdk / caveman_cloud SDK: Per-Trace workflow-Option oder defaultWorkflow auf dem Client, den ein Single-Job-Service erstellt.
  • Rohe Provider SDKs (OpenAI/Anthropic/LangChain/LiteLLM/Vercel): Fügen Sie "x-cave-workflow": "<slug>" zum selben defaultHeaders / default_headers / extra_headers-Block hinzu, der bereits x-cave-api-key trägt. Gemeinsam genutzter Client für mehrere Jobs → übergeben Sie den Header pro Aufruf (jedes SDK oben akzeptiert per-Request-Header-Überschreibungen) oder geben Sie jedem Job seinen eigenen schlanken Client.
  • Gewrappte Coding-Agenten (caveman wrap): --workflow <slug>-Flag oder CAVE_WORKFLOW=<slug>-Env an der Aufrufstelle (Cron-Zeile, CI-Schritt).
  • Rohes HTTP: Fügen Sie den x-cave-workflow-Header zum Request hinzu.

Kennzeichnen Sie die Aufrufer, halten Sie das Diff minimal, passen Sie sich dem Stil des Repositorys an. Wenn eine Aufrufstelle überhaupt nicht über das Caveman-Gateway geroutet wird, kennzeichnen Sie sie nicht – listen Sie sie unter „nicht verkabelt“ im Bericht auf (Labels reisen nur auf Gateway-Traffic; die Verkabelung ist Aufgabe des caveman-setup Skills).

Schritt 4 — Verifizieren

Führen Sie aus, was das Repository bereits verwendet, um einen gekennzeichneten Pfad zu testen (einen Test, ein Dev-Skript, einen einzelnen Curl-Befehl). Bestätigen Sie dann: Der Request ist weiterhin erfolgreich (das Gateway lehnt ein ungültiges Label mit 400 cave_invalid_request_header ab – korrigieren Sie den Slug in diesem Fall). Gekennzeichnete Ausgaben erscheinen im Dashboard unter /activity?tab=workflows, sobald jeder Workflow das nächste Mal läuft; Jobs mit Zeitplan erscheinen, wenn der Zeitplan ausgelöst wird, und das ist es wert, im Bericht erwähnt zu werden, anstatt so zu tun, als wären sie live.

Schritt 5 — Bericht

## Gekennzeichnete Workflows

| workflow | job | wo |
|---|---|---|
| support-reply | beantwortet eingehende Tickets | src/bot/reply.ts:41 |
| nightly-digest | 02:00 Zusammenfassungs-Job | jobs/digest.ts:12 |

Verifiziert: <der tatsächlich getestete gekennzeichnete Pfad und was Sie beobachtet haben>
Landet in: <DASHBOARD>/activity?tab=workflows — jede Zeile erscheint, sobald dieser Workflow das nächste Mal läuft. Alles noch Unmarkierte wird als `unlabeled-workflow` angezeigt.
Nicht verkabelt (kein Gateway-Routing, daher kein Label): <Liste oder "keine">
Markiert review: <Slugs, deren Zweck aus Dateinamen abgeleitet wurde, oder "keine">

Wenn Sie überhaupt keine LLM-Einstiegspunkte gefunden haben: Sagen Sie genau das und verweisen Sie auf den Setup-Skill (<docs origin>/docs/agent-setup.md), anstatt eine Tabelle zu erfinden.

Individual skills in this repo

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

JuliusBrussee/caveman-evidence-review

Read-only review of Caveman Cloud evidence: cost, Cave Score, workflows, traces, latency, errors, routing, savings. Use when asked what Caveman found or where LLM spend goes.

JuliusBrussee/caveman-explore

Read-only repository explorer for cold-start orientation, broad cross-file localization, or when a direct search failed. Skip it when the exact file or symbol is already named. Returns path:line citations only; its reads stay out of main context.

JuliusBrussee/caveman-learn

Act on a Caveman learn report - review the ranked token sinks, apply cost-lowering fixes with per-edit consent, and report what those fixes returned. Use when asked to lower an agent's token cost, what caveman has saved, to trim a heavy CLAUDE.md, or to offload re-pasted context into cavemem.

JuliusBrussee/caveman-manage

Inspect Caveman Cloud's experiment lifecycle and block unsafe execution. Use when asked to start, approve, cancel, promote or roll back a Caveman experiment.

JuliusBrussee/caveman-optimize

Turn a Caveman optimization observation into an operator-chosen candidate with a paired baseline evaluation. Use when asked to inspect or evaluate a Caveman optimization report. Needs explicit approval.

JuliusBrussee/caveman-setup

Wire a repository through the Caveman Cloud gateway so every LLM request is measured, with no behavior change. Use for "set up caveman" or adding LLM spend observability.

JuliusBrussee/investigate-first

Diagnose ambiguous failures before editing. Use for unknown causes, intermittent behavior, performance regressions, or investigations needing evidence-ranked hypotheses.

JuliusBrussee/lean-build

Build feature work with high overbuilding risk. Use for new behavior, product slices, or integrations where repository reuse, strict scope, and an explicit stop condition matter.

JuliusBrussee/migration

Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.

JuliusBrussee/safe-refactor

Restructure code while preserving behavior. Use for extraction, consolidation, ownership moves, or cleanup where verification must bracket structural edits.

JuliusBrussee/surgical-patch

Fix bugs and small behavior changes at the narrowest responsible layer. Use when regression proof, preserved surrounding behavior, and task-relevant tests matter.

JuliusBrussee/verify-and-stop

Prove existing work meets acceptance conditions without expanding scope. Use for validation-only tasks, completion checks, focused gate runs, and last-mile proof.

Verwandte Skills