Agent skill

Anserini Reproduction

by castorini in castorini/anserini

Reproduce experimental results with Anserini. An agent skill from castorini/anserini.

Apache-2.0Auto-check passed

Install Anserini Reproduction

skills CLI
$ npx skills add castorini/anserini --skill anserini-reproduction -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install castorini/anserini anserini-reproduction --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/castorini/anserini.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/anserini-reproduction .claude/skills/anserini-reproduction && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
anserini-reproduction
GitHub stars
1.2k
Token cost
~1.8k tokens
SKILL.md length
721 words
Files
2
Skills in repo
4
Repo updated
First seen
Licence
Apache-2.0

At a glance

Reproduce experimental results with Anserini. An agent skill from castorini/anserini.

  • Works in 2 steps: Reproductions with Prebuilt Indexes → Reproductions from Raw Document…
  • Explain Anserini reproduction workflows for published
  • SKILL.md covers Overview, Workflow, Reproductions with Prebuilt… and Reproductions from Raw…
  • Calls jq

What it does

Anserini Reproduction is an agent skill from castorini/anserini. Reproduce experimental results with Anserini. Use to run or explain Anserini reproduction workflows for published or reported results, including reproductions with prebuilt indexes, reproductions from raw document collections, reproduction YAMLs, run generation, evaluation, and metric verification.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

The repository describes itself as: Anserini is a Lucene toolkit for reproducible information retrieval research. The licence is Apache-2.0.

When your agent uses it

  • Explain Anserini reproduction workflows for published
  • Reported results
  • Including reproductions with prebuilt indexes
  • Reproductions from raw document collections

Example prompts

  • “/anserini-reproduction”

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Reproductions with Prebuilt Indexes
  2. Reproductions from Raw Document Collections

What it can do on your machine

Read from SKILL.md and the folder at commit e2a19f5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Anserini Reproduction loads about 1.8k tokens when it runs. Until then it costs about 80 tokens; SKILL.md has 721 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~80
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from castorini/anserini at commit e2a19f5, republished under its Apache-2.0 licence (© castorini). 721 words, ~1,756 tokens.

Download SKILL.mdSave it as .claude/skills/anserini-reproduction/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
anserini-reproduction
description
Reproduce experimental results with Anserini. Use to run or explain Anserini reproduction workflows for published or reported results, including reproductions with prebuilt indexes, reproductions from raw document collections, reproduction YAMLs, run generation, evaluation, and metric verification.
metadata.version
v0.2.1

Anserini Reproduction

Overview

Use this skill to reproduce experimental results with Anserini after the source checkout or fatjar is available. Prefer established reproduction commands, reproduction definitions, and checked evaluation tools over ad hoc command construction.

Do not run reproductions that trigger large index or collection downloads unless the user explicitly asks to execute them.

When the user asks broadly about reproduction types, experiment types, or related terminology, follow progressive disclosure: first summarize only the two main reproduction types, then ask which one they want to dive into:

  1. Reproductions with Prebuilt Indexes
  2. Reproductions from Raw Document Collections

Keep the first answer concise. Do not enumerate command-line options or implementation details until the user chooses a type or asks for more detail.

Workflow

  1. Identify the reproduction target:
    • dataset/collection
    • index type or prebuilt index name
    • retrieval model and parameters
    • topics and qrels
    • expected metrics and tolerances
  2. Confirm the environment is ready:
    • use $install-anserini-dev-env for source builds and Java/Maven setup
    • use $install-anserini-fatjar for released fatjar-only reproduction
    • use $anserini-cli for command syntax, catalog lookup, search, and REST examples
  3. Prefer checked reproduction definitions bundled with Anserini when available.
  4. Run the reproduction, capture the run output path, evaluate with the appropriate tool, and compare against expected metrics.
  5. Report exact commands, generated run files, metrics, and any deviation from expected results.

Reproductions with Prebuilt Indexes

Use main class io.anserini.reproduce.ReproduceFromPrebuiltIndexes for reproductions that start from Anserini prebuilt indexes rather than rebuilding indexes from raw document collections.

For current source-checkout workflows, the latest supported configs, generated reproduction pages, and command guidance are maintained at:

text
https://github.com/castorini/anserini/blob/master/docs/ref-reproduce-from-prebuilt-indexes.md

Consult that page before giving detailed config lists, exact commands, or dataset/model coverage. For pinned release or fatjar workflows, prefer the docs bundled with or tagged for that release when they differ from master.

Useful commands:

  • Run with --help to inspect the current command-line options.
  • List available configs:
bash
bin/run.sh io.anserini.reproduce.ReproduceFromPrebuiltIndexes --list
  • Print a specific config:
bash
bin/run.sh io.anserini.reproduce.ReproduceFromPrebuiltIndexes --config <config> --show
  • Preview commands, expected scores, and referenced prebuilt-index sizes:
bash
bin/run.sh io.anserini.reproduce.ReproduceFromPrebuiltIndexes --config <config> --dry-run

High-level behavior:

  • Loads a YAML config.
  • Reads configured retrieval conditions, topic sets, eval/qrels keys, metrics, metric-specific trec_eval arguments, and expected scores.
  • Expands command placeholders such as $fatjar, $threads, $topics, $output, and $runs_directory.
  • Runs the configured retrieval command for each condition/topic pair.
  • Writes each result as a TREC run file.
  • Runs trec_eval for each expected metric.
  • Compares observed scores against expected values and reports whether each metric matches, is close, or fails.
Show full SKILL.md (329 more words)Show less

Reproductions from Raw Document Collections

Use main class io.anserini.reproduce.ReproduceFromDocumentCollection for reproductions that start from raw document collections and build indexes locally.

For current source-checkout workflows, the latest supported configs, generated reproduction pages, and command guidance are maintained at:

text
https://github.com/castorini/anserini/blob/master/docs/ref-reproduce-from-document-collections.md

Consult that page before giving detailed config lists, exact commands, or dataset/model coverage. For pinned release or fatjar workflows, prefer the docs bundled with or tagged for that release when they differ from master.

Config discovery:

bash
bin/run.sh io.anserini.reproduce.ReproduceFromDocumentCollection --list

The list is emitted as JSON. Use jq to browse or filter it, for example:

bash
bin/run.sh io.anserini.reproduce.ReproduceFromDocumentCollection --list | jq -r '.[]'
bin/run.sh io.anserini.reproduce.ReproduceFromDocumentCollection --list | jq -r '.[] | select(test("msmarco-v1-passage"))'

Document pages deterministically map from config name to:

text
https://github.com/castorini/anserini/blob/master/docs/reproduce/from-document-collection/<config>.md

For example, config msmarco-v1-passage maps to:

text
https://github.com/castorini/anserini/blob/master/docs/reproduce/from-document-collection/msmarco-v1-passage.md

Useful commands:

  • Run with --help to inspect the current command-line options.
  • --config <config> --show: print a specific config.
  • Use --dry-run before expensive indexing, search, or download work.
  • Combine workflow stages such as --download, --index, --verify, and --search as needed.

High-level behavior:

  • Loads a YAML config.
  • Reads the configured corpus, indexing, search, evaluation, and expected-result settings from the YAML file.
  • Optionally downloads and extracts the configured corpus with --download.
  • Builds the configured index with --index.
  • Verifies expected index statistics with --verify, using IndexReaderUtils for supported index types.
  • Runs configured retrieval models over configured topics with --search.
  • Runs optional conversion commands after search when the config defines conversions.
  • Evaluates generated run files using the configured metric commands.
  • Compares observed scores against expected values and reports whether each metric matches, is close, or fails.
  • Reports total elapsed time for non-dry-run executions.

Operational guidance:

  • Use this workflow when reproducing results requires building local indexes from raw document collections.
  • Run --list first if the config name is unknown.
  • Prefer --dry-run before expensive indexing or search runs.
  • Use --corpus-path when the collection is already available outside the configured search roots.
  • Do not use --download unless the user explicitly wants to fetch the configured collection.
  • Prefer --index --verify --search for an end-to-end reproduction from an already available collection.
  • Capture generated index paths, run files, verification output, observed metrics, expected scores, and any deviations.

© castorini, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/anserini-reproduction of castorini/anserini.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit e2a19f5

Compare with similar skills

Anserini Reproduction next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Anserini Reproduction compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Anserini Reproduction this skillcastorini/anserini1.2k—~1.8kAutomated safety check: PassApache-2.0
Experimental Designaiming-lab/AutoResearchClaw15k—~286Automated safety check: PassMIT
Logic Explainsickn33/agentic-awesome-skills47k1 repos~894Automated safety check: PassMIT
Faceless Explainer Videoheygen-com/hyperframes60k3 repos~7.7kAutomated safety check: NotesApache-2.0
Reproduce Issuenrwl/nx29k—~2.6kAutomated safety check: NotesMIT
Weather Data Reproducibilitysickn33/agentic-awesome-skills47k1 repos~2.9kAutomated safety check: PassMIT

Similar skills

  • Experimental Design

    aiming-lab/AutoResearchClaw

    Best practices for designing reproducible ML experiments. An agent skill from aiming-lab/AutoResearchClaw.

    15k GitHub stars~286 tokensUpdated 1 mo ago
    Research & ScienceAuto-check passed
  • Logic Explain

    sickn33/agentic-awesome-skills

    Explain what a specific piece of code actually does for a given input by producing a step-by-step execution trace (interprocedural, with name resolution and type transitions).

    47k GitHub starsUsed in 1 repo~894 tokens
    Auto-check passed
  • Faceless Explainer Video

    heygen-com/hyperframes

    Turns an article, notes or a topic brief into an explainer video whose visuals are invented per scene, built frame by frame in HyperFrames with no footage.

    60k GitHub starsUsed in 3 repos~7.7k tokens
    Media & CreativeAuto-check: notes
  • The single skill for reproducing an nx issue. An agent skill from nrwl/nx.

    29k GitHub stars~2.6k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Weather Data Reproducibility

    sickn33/agentic-awesome-skills

    Record and verify provenance manifests for weather-data inputs and derived artifacts, including object identity, selections, software versions, transformations, and hashes.

    47k GitHub starsUsed in 1 repo~2.9k tokens
    Research & ScienceAuto-check passed
  • PR Explainer

    mastra-ai/mastra

    A skill your agent uses when creating an approachable, self-contained HTML review aid for a pull request; explaining what changed, why it matters, how it works, and how it fits into the broader…

    29k GitHub stars~1.4k tokensUpdated today
    DevelopmentAuto-check passed

More from castorini/anserini

  • Anserini CLI

    castorini/anserini

    Run Anserini command-line and REST workflows from either a built fatjar or an Anserini source checkout.

    1.2k GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Install Anserini Dev Env

    castorini/anserini

    Set up and verify Anserini source-development environments. An agent skill from castorini/anserini.

    1.2k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Install Anserini Fatjar

    castorini/anserini

    Install and verify Anserini quickly by downloading the published fatjar from Maven Central instead of cloning or building the source repository.

    1.2k GitHub stars~1.3k tokensUpdated today
    Auto-check passed

Questions about Anserini Reproduction

What does Anserini Reproduction do?

Reproduce experimental results with Anserini. An agent skill from castorini/anserini. Anserini Reproduction is an agent skill from castorini/anserini. Reproduce experimental results with Anserini.

When should I use Anserini Reproduction?

Anserini Reproduction fits situations like: explain Anserini reproduction workflows for published; reported results; including reproductions with prebuilt indexes; reproductions from raw document collections.

How do I install Anserini Reproduction in Claude Code?

Run `npx skills add castorini/anserini --skill anserini-reproduction -a claude-code`. Or copy the skill folder (.agents/skills/anserini-reproduction in castorini/anserini) into .claude/skills/anserini-reproduction in your project. Claude Code loads it when a task matches its description.

How do I install Anserini Reproduction in Codex?

Run `npx skills add castorini/anserini --skill anserini-reproduction -a codex`. Or copy the skill folder (.agents/skills/anserini-reproduction in castorini/anserini) into .agents/skills/anserini-reproduction in your project. Codex loads it when a task matches its description.

Can I use Anserini Reproduction in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add castorini/anserini --skill anserini-reproduction -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/anserini-reproduction, .gemini/skills/anserini-reproduction, .github/skills/anserini-reproduction and .opencode/skills/anserini-reproduction in your project.

What does Anserini Reproduction need to run?

Going by SKILL.md and its folder, Anserini Reproduction needs the command-line tools its instructions call (jq).

Does Anserini Reproduction access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Anserini Reproduction safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Anserini Reproduction use?

Anserini Reproduction is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Anserini Reproduction use?

About 1.8k tokens (SKILL.md is roughly 7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Anserini Reproduction?

Skills that share tags, products or a category with Anserini Reproduction: Experimental Design (aiming-lab/AutoResearchClaw, 15k stars), Logic Explain (sickn33/agentic-awesome-skills, 47k stars), Faceless Explainer Video (heygen-com/hyperframes, 60k stars) and Reproduce Issue (nrwl/nx, 29k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Anserini Reproduction?

castorini (a GitHub organization) maintains it in castorini/anserini, which has 1,198 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 10, 2026.

Source: castorini/anserini on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.