cultivar

작성자: pinecone-io

cultivar CLI를 구동하여 에이전트 스킬이 행동을 개선하는지 테스트 — 태스크를 스캐폴딩하고, 스킬 유무에 따라 Claude/Copilot/Gemini에서 실행 (로컬 또는…

npx skills add https://github.com/pinecone-io/cultivar --skill cultivar

cultivar

cultivar is a CLI that measures whether an agent skill actually improves an agent's behavior. For each task it runs the agent with the skill and without it (and optionally with the source docs), then an LLM grader scores each run against a natural-language rubric. Use this skill when the user wants to create, run, or interpret cultivar evals.

The loop

  1. cultivar init <skill> — scaffold tasks/<skill>.yaml + a SKILL.md stub.
  2. Edit the task file (intent + PASS/FAIL criteria) and the skill.
  3. cultivar run -s <skill> -r <runner> --grade — run all variants and grade.
  4. cultivar report / cultivar show latest -t <task> — read the outcome.
  5. Iterate on the skill; re-run; compare.

Always confirm the install first with cultivar hello (or cultivar hello --no-grade when no ANTHROPIC_API_KEY is available) — it runs a packaged smoke task end-to-end.

Commands

  • cultivar init <skill> [--skills-dir DIR] — scaffold task YAML + SKILL.md stub.
  • cultivar run -s <skill> -r <claude|copilot|gemini> — run. Key flags:
    • -t <task> one task · -v <with-skill|without-skill|with-docs> one variant
    • --remote run in isolated Modal sandboxes · -n N repeat · -p N parallelism
    • --grade grade after running · --title NAME label the run · --dry-run print the prompt + command without calling anything · --timeout S per-call budget (default 90)
  • cultivar grade <run|latest> -s <skill> [--report] — (re)grade an existing run.
  • cultivar report [run] — summary table across runners/variants.
  • cultivar show <run|latest> -t <task> [--grader|--conversation-only|--workdir] — inspect one run.

--dry-run is the safe way to preview exactly what will be sent before spending tokens.

Variants (the controls)

  • with-skill — skill loaded; prompt prefixed Use the /<skill>.
  • without-skill — no skill; identical otherwise. The baseline.
  • with-docs — no skill, but the task's ground_truth.context_refs files are prepended. Only runs for tasks that declare context_refs.

Read two deltas: with-skill vs without-skill ("does the skill do anything?") and with-skill vs with-docs ("is the distilled skill better than dumping the raw docs?").

Tasks

tasks/<skill>.yaml holds one or more tasks. Each task:

tasks:
  - id: a-short-id
    intent: "what you'd ask the agent to do"
    category: cli            # or: code-gen
    # setup / teardown / verify: optional shell hooks
    # env: ["SOME_KEY"]      # required env vars, checked upfront
    ground_truth:
      criteria: |
        PASS requires <2-3 concrete, checkable things>.
        FAIL if <a common failure mode>.
      # context_refs: [docs/ref.md]   # activates the with-docs variant

Guidance:

  • For code-gen tasks, the intent must say "write a file … in the current directory." Anything the agent writes to its cwd is captured and shown to the grader. A code-gen task that produces no file auto-fails.
  • Write criteria as crisp PASS conditions + at least one concrete FAIL mode — vague criteria produce vague grades.

Where skills live

cultivar tests exactly one skill per run (the -s one). It resolves the skills root as: --skills-dir flag → CULTIVAR_SKILLS_DIR env → ./.claude/skills. Keep skills-under-test outside .claude/ (e.g. ./skills, via CULTIVAR_SKILLS_DIR=skills) if you don't want your interactive coding agent to auto-load them.

Local vs remote

  • Local (default) — uses the runner CLI installed on your machine + its auth.
  • --remote — each (task, variant, repeat) runs in its own Modal sandbox: clean isolation, parallelism, reproducibility. Requires a Modal account (modal token new) and a secret holding the agent's ANTHROPIC_API_KEY (default secret name eval-sandbox-secrets; override with CULTIVAR_MODAL_SECRET). Prefer --remote for rigorous comparisons. The grader always runs locally and needs ANTHROPIC_API_KEY.

Reading results

results/<timestamp>[__title]/ holds per-run .json (stats), .md (readable trace), .jsonl (raw events), and .workdir/ (files the agent wrote). grades.json holds the verdicts. Use cultivar report for the table and cultivar show … --grader for the grader's reasoning + suggestions on a failure.

Gotchas

  • Grading needs ANTHROPIC_API_KEY (loaded from a .env in the cwd). hello --no-grade and run --dry-run need no key.
  • tasks/, examples/, and results/ are cwd-relative and user-owned.
  • One run is a sample, not a signal — use -n 3 (or more) for anything you'll act on.

pinecone-io의 다른 스킬

workdir-smoke
pinecone-io
평가 프레임워크의 workdir-capture 메커니즘을 스모크 테스트하는 데만 사용되는 플레이스홀더 스킬입니다. 실제 스킬이 아닙니다 — 실제 코드 생성 스킬이 생기면 삭제하세요.
official
pinecone:assistant
pinecone-io
Pinecone Assistant를 생성, 관리하고 대화하며 문서 Q&A 및 인용을 처리합니다. 모든 어시스턴트 작업(생성, 업로드, 동기화, 채팅, 컨텍스트 등)을 수행합니다.
official
pinecone:cli
pinecone-io
Pinecone CLI(pc)를 사용하여 터미널에서 Pinecone 리소스를 관리하는 가이드입니다. CLI는 모든 인덱스 유형(표준, 통합, 희소)과 모든…
official
pinecone:docs
pinecone-io
Pinecone으로 개발하는 개발자를 위한 선별된 문서 참고 자료입니다. 주제별로 정리된 공식 문서 링크와 데이터 형식 참조를 포함합니다. 다음 상황에서 사용하세요…
official
pinecone:full-text-search
pinecone-io
Pinecone 전체 텍스트 검색(FTS) 인덱스를 생성하고, 데이터를 수집하며, 프리뷰 API(2026-01.alpha, 공개 프리뷰)를 사용하여 쿼리합니다. 사용자나 에이전트가 요청할 때 사용합니다.
official
pinecone:help
pinecone-io
사용 가능한 모든 Pinecone 스킬의 개요와 사용자가 시작하기 위해 필요한 사항. 사용자가 어떤 스킬이 있는지, 어떻게 시작해야 하는지 물을 때 호출됩니다.
official
pinecone:mcp
pinecone-io
Pinecone MCP 서버 도구에 대한 참조 자료입니다. 사용 가능한 모든 도구(list-indexes, describe-index, describe-index-stats, create-index-for-model 등)를 문서화합니다.
official
pinecone:n8n
pinecone-io
n8n 워크플로우를 Pinecone Assistant 노드 또는 Pinecone Vector Store 노드를 사용하여 구축합니다. RAG 파이프라인, 문서 기반 채팅 워크플로우를 구축하거나 구성할 때 사용합니다.
official