К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

caveman-discover — скилл для Claude Code: что делает и как установить

Находит точки вызова LLM в репозитории и размечает их воркфлоу для Caveman Cloud, чтобы расходы на токены не сливались в одну общую кучу.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add JuliusBrussee/caveman --skill caveman-discover -a claude-code
Открыть на GitHub

Что делает caveman-discover

Скилл обходит кодовую базу от точек входа — HTTP-эндпоинтов, очередей, cron-задач, CLI-скриптов и графов агентов. Он группирует вызовы языковых моделей по конкретным задачам вроде support-reply или eval-suite, а не по названиям библиотек. Код меняется только с вашего согласия: сначала агент выводит таблицу со всеми найденными сценариями и местами правок.

Для каждого воркфлоу формируется слаг из строчных латинских букв, цифр и дефисов длиной от 1 до 96 символов. Разметка добавляется через заголовок x-cave-workflow, параметры @caveman-ai/sdk, флаги caveman wrap или переменные окружения. Скилл не трогает код, который ещё не идёт через шлюз Caveman, и не меняет общие хелперы вроде llm.ts, размечая именно вызывающие функции.

Если проект уже подключен к шлюзу Caveman, но трафик падает в категорию unlabeled-workflow, этот скилл избавит от ручной разметки файлов. Если шлюз ещё не настроен, ставить его рано, потому что метки передаются только внутри трафика шлюза.

Какие задачи решает

  • разметить вызовы LLM по сценариям для дашборда Caveman Cloud
  • найти точки вызова нейросетей в фоновых задачах, воркерах и эндпоинтах
  • проверить формат слагов перед отправкой в шлюз Caveman
  • разделить общую статистику расходов токенов по задачам

Примеры запросов агенту

  • Найди все LLM-воркфлоу в репозитории и предложи разметку для Caveman
  • discover workflows in this repository
  • Разбей расходы на LLM по воркфлоу для Caveman Cloud

Как установить caveman-discover

1Через Skills CLI (Vercel)

npx skills add JuliusBrussee/caveman --skill caveman-discover -a claude-code

2Вручную: положить файлы

~/.claude/skills/caveman-discover/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/caveman-discover/

Из того же набора22

Весь набор →
caveman JuliusBrussee Убирает вежливые фразы и лишние слова из ответов ИИ-агента, сохраняя код и факты. Включается командой /caveman и действует всю сессию. Claude Code CX Codex Cursor +1 591 500установок caveman-commit JuliusBrussee Формирует краткие коммит-сообщения по стандарту Conventional Commits без лишних слов. Пригодится, когда нужно сфокусироваться на сути изменений. Claude Code CX Codex Cursor +1 414 700установок caveman-review JuliusBrussee Формирует сжатое ревью кода по одной строке на замечание с указанием места, проблемы и исправления. Без лишних вежливых фраз. Claude Code CX Codex Cursor +1 410 700установок caveman-compress JuliusBrussee Переписывает CLAUDE.md и списки задач в сжатый телеграфный стиль, чтобы модель читала меньше токенов. Исходник затирается, читаемая копия остаётся в отдельной папке. Claude Code CX Codex Cursor +1 410 300установок caveman-help JuliusBrussee Справка по режимам и командам Caveman для Claude Code и других поддерживаемых платформ. Нужна, когда вы настраиваете стиль ответов и связанные скиллы. Claude Code CX Codex Cursor +1 401 800установок cavecrew JuliusBrussee cavecrew распределяет поиск кода, небольшие правки и ревью между тремя субагентами. Подходит, когда контекст главного агента нужно расходовать экономно. Claude Code CX Codex Cursor +1 357 900установок caveman-stats JuliusBrussee Выводит статистику токенов и активный режим сессии или направляет к штатным отчётам хоста. Полезен для контроля расхода токенов вывода и кэша. Claude Code CX Codex Cursor +1 356 700установок caveman-explore JuliusBrussee Read-only скилл ищет нужные места в репозитории и возвращает ссылки на файлы со строками. Подходит для первого знакомства с кодовой базой. Claude Code CX Codex Cursor +1 106 500установок

Похожие

browser-use browser-use Даёт агенту живой Chrome через CDP: клики, ввод, скриншоты и страницы, которым нужен JS или ваша логин-сессия. Claude Code CX Codex Cursor +1 98 100установок last30days mvanhorn Собирает посты и реакции по любой теме за последние 30 дней из Reddit, X, YouTube, TikTok, Hacker News, Polymarket, GitHub и веба. Пригодится, когда нужно понять, что реально говорят люди, а не что пишут в обзорах. Claude Code CX Codex Cursor +1 52 400установок discernment-nudge официальный anthropics Добавляет к важным ответам вопросы для проверки фактов, логики и контекста. Нужен перед решениями, планами и рекомендациями, на которые пользователь будет опираться. Claude Code Claude.ai 12 227установок skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. Claude Code Claude.ai 414 180установок writing-for-agents Matt Pocock Помогает писать скиллы и документы с инструкциями для агентов. Пригодится при правках AGENTS.md, CLAUDE.md и связанных справочных файлов. Claude Code 466 719установок media-use heygen-com Находит и генерирует ассеты для видео в HyperFrames — музыку, дикторский голос, аватары и эффекты. Сохраняет всё локально в assets. Claude Code CX Codex Cursor +1 1 100 000установок mcp-builder официальный anthropics Скилл проводит через создание MCP-сервера на TypeScript или Python: от изучения протокола до тестов и оценки качества. Claude Code Claude.ai 130 949установок subagent-driven-development Jesse Vincent Скилл выполняет план через отдельных субагентов для каждой задачи и проверяет результат после каждого шага. Подходит для независимых задач в одной сессии. Claude Code CX Codex 237 746установок

Вопросы о caveman-discover

Как установить caveman-discover в Claude Code?

Выполните команду npx skills add JuliusBrussee/caveman --skill caveman-discover -a claude-code. Также можно сохранить файл скилла в ~/.claude/skills/caveman-discover/SKILL.md.

Что делает caveman-discover?

Он инвентаризирует вызовы моделей в репозитории и прописывает заголовок x-cave-workflow либо параметры SDK. Это позволяет Caveman Cloud группировать расходы по конкретным операциям вместо общей категории unlabeled-workflow.

Изменит ли caveman-discover код без подтверждения?

Нет. Скилл сначала выводит таблицу найденных воркфлоу и мест вызова, ждет одобрения пользователя и только потом вносит правки.

Исходный текст

SKILL.md · Apache-2.0
---
name: caveman-discover
description: >
  Find and label every LLM workflow in the repository so Caveman Cloud groups
  spend by workflow instead of one bucket. Use for "discover workflows" or
  breaking LLM spend down by workflow.
---

You are labeling this repository's LLM workflows for Caveman Cloud. A
*workflow* is a job the code performs — "answer a support ticket", "build the
nightly digest", "run the eval suite" — not a technology. Every gateway
request can carry a workflow label; unlabeled traffic all lands in one
`unlabeled-workflow` bucket. Your job: find the workflows, name them well,
wire the labels, and verify nothing broke.

This changes code, so it goes through the user's normal review: **propose the
table first, apply after the user agrees.** Re-running on an already-labeled
repo must change nothing (idempotent).

This skill is operator-invoked. An `unlabeled-traffic` Cave Plan observation is
review-only and does not create an advisory file, proposal, or Draft PR. Do not
infer that telemetry selected a callsite or authorized an edit. Independently
inventory the repository, present the labeling table, and wait for the user's
approval before changing code.

## Step 1 — Inventory the workflows

Walk the repo from its entry points, not from its imports:

- HTTP/RPC handlers that call an LLM (directly or through layers)
- Scheduled jobs: cron definitions, queue consumers, workers, GitHub Actions
  that invoke LLM code
- CLI commands and scripts (`scripts/`, `bin/`, package.json scripts)
- Eval / test harnesses that burn real tokens
- Distinct agents or chains inside a framework (each LangGraph graph, each
  crew, each agent definition is usually its own workflow)

One workflow = one job a human would name. Ten callsites inside the same
request handler are one workflow; one shared `llm.ts` helper used by three
jobs is three workflows (label at the callers, never the shared helper).

## Step 2 — Name them

Slug grammar (the gateway enforces this): lowercase `[a-z0-9_-]`, 1–96 chars.
Name the job, not the tech:

- Good: `support-reply`, `nightly-digest`, `pr-review`, `eval-suite`,
  `onboarding-email`
- Bad: `openai-calls` (tech), `main` (says nothing), `SupportReply` (invalid),
  `johns-test-3` (won't age)

Names are forever-ish — renaming later splits the spend history. When a job's
purpose isn't clear from the code, derive the slug from the file name and mark
it `review` in the table rather than inventing a purpose.

## Step 3 — Propose, then apply

Present this table and ask to proceed:

```
| workflow | job | where | how it gets labeled |
|---|---|---|---|
| support-reply | answers inbound tickets | src/bot/reply.ts:41 | defaultHeaders on the reply client |
| nightly-digest | 02:00 summary job | jobs/digest.ts:12 | header on the digest client |
| eval-suite (review) | scripts/eval.ts:8 — purpose inferred from filename | scripts/eval.ts:8 | env override at invocation |
```

Then wire each label with the lightest mechanism available at that callsite:

- **@caveman-ai/sdk / caveman_cloud SDK**: per-trace `workflow` option, or
  `defaultWorkflow` on the client a single-job service constructs.
- **Raw provider SDKs** (OpenAI/Anthropic/LangChain/LiteLLM/Vercel): add
  `"x-cave-workflow": "<slug>"` to the same `defaultHeaders` /
  `default_headers` / `extra_headers` block that already carries
  `x-cave-api-key`. Shared client used by several jobs → pass the header per
  call (every SDK above accepts per-request header overrides), or give each
  job its own thin client.
- **Wrapped coding agents** (`caveman wrap`): `--workflow <slug>` flag or
  `CAVE_WORKFLOW=<slug>` env at the invocation site (cron line, CI step).
- **Raw HTTP**: add the `x-cave-workflow` header to the request.

Label the callers, keep the diff minimal, match the repo's style. If a
callsite is not routed through the Caveman gateway at all, don't label it —
list it under "not wired" in the report (labels only travel on gateway
traffic; wiring is the caveman-setup skill's job).

## Step 4 — Verify

Run whatever the repo already uses to exercise one labeled path (a test, a
dev script, one curl). Then confirm: the request still succeeds (the gateway
rejects an invalid label with 400 `cave_invalid_request_header` — fix the slug
if so). Labeled spend appears on the dashboard at `/activity?tab=workflows` as
each workflow next runs; jobs on a schedule show up when the schedule fires,
and that's worth saying in the report rather than pretending they're live.

## Step 5 — Report

```
## Workflows labeled

| workflow | job | where |
|---|---|---|
| support-reply | answers inbound tickets | src/bot/reply.ts:41 |
| nightly-digest | 02:00 summary job | jobs/digest.ts:12 |

Verified: <the labeled path you actually exercised, and what you observed>
Lands at: <DASHBOARD>/activity?tab=workflows — each row appears as that workflow
next runs. Anything still unlabeled shows as `unlabeled-workflow`.
Not wired (no gateway routing, so no label): <list or "none">
Marked review: <slugs whose purpose was inferred from filenames, or "none">
```

If you found no LLM entry points at all: say exactly that, and point at the
setup skill (`<docs origin>/docs/agent-setup.md`) instead of manufacturing a
table.

© JuliusBrussee · Apache-2.0 · JuliusBrussee/caveman

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой