Reviews anomalib model, data, callback, metric, and CLI integration conventions

Apache-2.0Auto-check passed

Install Models Data

skills CLI
$ npx skills add open-edge-platform/anomalib --skill models-data -a claude-code

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

GitHub CLI
$ gh skill install open-edge-platform/anomalib models-data --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/open-edge-platform/anomalib.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/models-data .claude/skills/models-data && 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
models-data
GitHub stars
6.2k
Token cost
~1.5k tokens
SKILL.md length
693 words
Files
1
Skills in repo
17
Repo updated
First seen
Licence
Apache-2.0

At a glance

Reviews anomalib model, data, callback, metric, and CLI integration conventions

  • SKILL.md covers Purpose and scope, Request changes when, Models and Data and dataclasses, plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Models Data is an agent skill from open-edge-platform/anomalib. Reviews anomalib model, data, callback, metric, and CLI integration conventions

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: An anomaly detection library comprising state-of-the-art algorithms and features such as experiment management, hyper-parameter optimization, and edge inference. The licence is Apache-2.0.

Example prompts

  • “Use the models-data skill to review anomalib model, data, callback, metric, and CLI integration conventions”
  • “/models-data”

What it can do on your machine

Read from SKILL.md and the folder at commit 6f54715. 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

    No scripts in the folder and no shell commands in SKILL.md.

    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

Models Data loads about 1.5k tokens when it runs. Until then it costs about 23 tokens; SKILL.md has 693 words of instructions outside code blocks.

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

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 open-edge-platform/anomalib at commit 6f54715, republished under its Apache-2.0 licence (© open-edge-platform). 693 words, ~1,471 tokens.

Download SKILL.mdSave it as .claude/skills/models-data/SKILL.md (or your agent's skills folder).
name
models-data
description
Reviews anomalib model, data, callback, metric, and CLI integration conventions

Anomalib Models and Data Review

Use this skill when reviewing changes under models, data, callbacks, metrics, pipelines, deployment, or CLI integration.

Purpose and scope

Use this skill for architectural fit. It is most useful when a change affects how anomalib models are built, configured, loaded, or connected to data, callbacks, metrics, or CLI/config entrypoints.

Request changes when

  • a model does not fit the established AnomalibModule-based architecture;
  • structured data is replaced with ad hoc dictionaries where anomalib already has typed item/batch dataclasses;
  • dataset-supplied paths or metadata are joined or opened without confinement checks (resolve_path_under_root, validate_path(..., base_dir=...));
  • file outputs or split directories are created without verifying confinement against the dataset/output root;
  • metadata fields (category, split, label) from CSV/JSON/Parquet files are used in path construction without allowlist/enum validation;
  • callback or engine behavior bypasses existing Lightning or anomalib extension points;
  • public metrics, models, or CLI components are added without matching exports, docs, or config compatibility;
  • user-facing constructor/config surfaces become opaque or harder to serialize.

Models

  • New trainable models should fit the existing AnomalibModule-based architecture.
  • Review whether the model integrates cleanly with existing model discovery and loading patterns in src/anomalib/models/__init__.py.
  • Prefer Lightning hooks and existing framework extension points over ad hoc training side effects inside model bodies.
  • Check that configurable constructor arguments are explicit and compatible with the repo's jsonargparse-driven config flow.

Data and dataclasses

  • Data should move through anomalib's typed dataclass system rather than ad hoc dictionaries where the library already has structured item/batch types.
  • Changes to shared dataclasses should preserve validation and batching behavior.
  • src/anomalib/data/dataclasses/generic.py is the main reference for FieldDescriptor, typed fields, update behavior, and batch/item patterns.
  • If a dataclass surface changes, review both runtime behavior and the corresponding public documentation.

Path validation, confinement, and data security

  • Treat all dataset content and metadata (CSV, Parquet, JSON, TXT, annotations, archives) as untrusted.
  • Never join dataset paths directly to a root using root / path or os.path.join(root, path) without confinement checks. Path traversal (../, absolute paths, Windows drive/UNC paths) enables arbitrary file disclosure or arbitrary file writes.
  • Use resolve_path_under_root(root, path) or validate_path(path, base_dir=root) from anomalib.data.utils.path.
  • When preparing datasets or copying files (e.g. shutil.copyfile, cv2.imwrite), confine both the source path and destination path to the expected root.
  • Validate categorical path components (category, split, label) against trusted allowlists or enums before using them to construct filesystem paths.
  • Ensure intermediate output directories are validated against root before calling mkdir() to prevent symlink traversal attacks outside the root.
  • In saving/visualization utilities, strip path traversal sequences and fall back to safe basenames (Path(filename).name) if the relative path escapes the output root.
  • Require path confinement regression tests for all new or modified loaders and datamodules (mirroring tests/unit/data/utils/test_path_confinement.py).
Show full SKILL.md (258 more words)Show less

Callbacks and engine integration

  • Training side effects such as checkpointing, timing, compression, or visualization should follow the callback-based patterns already present in src/anomalib/callbacks/.
  • New callback-style behavior should align with Lightning callback usage instead of bypassing the engine lifecycle.
  • Do not approve model/callback changes that tightly couple to trainer internals when a documented hook already exists.

Metrics

  • Metrics should align with the torchmetrics-based patterns in src/anomalib/metrics/base.py.
  • Review whether image-level and pixel-level metric handling remains clear and consistent.
  • If a metric becomes part of the public API, verify that exports and docs are updated too.

CLI and config compatibility

  • Review whether user-configurable types remain compatible with jsonargparse and the existing CLI/config structure.
  • Prefer explicit constructor parameters over opaque config plumbing when the component is user-facing.
  • If a new public component is configurable, ask whether config-driven usage and import paths are documented and tested.

Repo-grounded review anchors

  • src/anomalib/models/__init__.py
  • src/anomalib/data/dataclasses/generic.py
  • src/anomalib/data/utils/path.py
  • src/anomalib/callbacks/__init__.py
  • src/anomalib/metrics/base.py
  • src/anomalib/cli/cli.py

Review prompts

  • Does the change fit anomalib's module, data, and callback architecture?
  • Is structured data still flowing through the established dataclass/batch system?
  • Are all dataset-supplied file paths strictly confined to their expected root directory?
  • Are categorical folder names validated against trusted allowlists before constructing filesystem paths?
  • Will this remain usable from config files and CLI entrypoints?
  • Are public exports, docs, and integration points updated alongside the code?

Reviewer checklist

  • Check model architecture fit.
  • Check typed data flow.
  • Check path validation and root confinement for all dataset ingestion, file reads, and file writes.
  • Check callback and metric integration.
  • Check CLI/config compatibility.
  • Check exports and docs for new public surfaces.

© open-edge-platform, 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

Just SKILL.md in .agents/skills/models-data of open-edge-platform/anomalib.

Open the folder on GitHubat commit 6f54715

Compare with similar skills

Models Data 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.

Models Data compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Models Data this skillopen-edge-platform/anomalib6.2k—~1.5kAutomated safety check: PassApache-2.0
North Star Metricphuryn/pm-skills27k—~1kAutomated safety check: PassMIT
Investigate MetricPostHog/posthog40k—~1.9kAutomated safety check: PassCustom licence
Product Metrics Dashboard Designphuryn/pm-skills27k—~1.3kAutomated safety check: PassMIT
CI Metricspytorch/pytorch104k—~1.1kAutomated safety check: PassCustom licence
Startup Metrics Frameworkwshobson/agents40k—~2.5kAutomated safety check: PassMIT

Similar skills

  • North Star Metric

    phuryn/pm-skills

    Define a North Star Metric and 3-5 supporting input metrics that form a metrics constellation.

    27k GitHub stars~1k tokensUpdated 23 days ago
    Product & Project ManagementAuto-check passed
  • Investigate Metric

    PostHog/posthog

    Official

    Diagnose why a product metric changed (dropped, spiked, or plateaued) by orchestrating breakdowns, actors, paths, lifecycle, retention, and annotations queries.

    40k GitHub stars~1.9k tokensUpdated today
    Product & Project ManagementAuto-check passed
  • Designs a product metrics dashboard: a North Star and input metrics, a definition table with data sources, chart types and alert thresholds, and a screen layout.

    27k GitHub stars~1.3k tokensUpdated 23 days ago
    Product & Project ManagementAuto-check passed
  • CI Metrics

    pytorch/pytorch

    Query PyTorch CI, GitHub Actions, HUD, Grafana, and infrastructure metrics.

    104k GitHub stars~1.1k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Track, calculate, and optimize key performance metrics for SaaS, marketplace, consumer, and B2B startups from seed through Series A, including unit economics, growth efficiency, and cash management.

    40k GitHub stars~2.5k tokensUpdated 3 days ago
    Business, Finance & HRAuto-check passed
  • Official

    Build reusable activation models — an activation-rate metric and a per-user/per-account activated flag — on either PostHog data-warehouse views (HogQL) or an external dbt project.

    40k GitHub stars~1.4k tokensUpdated today
    Data & AnalyticsAuto-check passed

More from open-edge-platform/anomalib

All 17 skills in this repo
  • Anomalib Adding A Datamodule

    open-edge-platform/anomalib

    Adds a new dataset/datamodule to anomalib under src/anomalib/data/.

    6.2k GitHub stars~3.7k tokensUpdated today
    Auto-check passed
  • Anomalib Adding A Model

    open-edge-platform/anomalib

    Adds a new anomaly-detection model to anomalib under src/anomalib/models/.

    6.2k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Anomalib Benchmarking

    open-edge-platform/anomalib

    Runs the anomalib benchmarking pipeline to train/evaluate a grid of model + dataset (+ category) combinations and collect metrics into a results CSV.

    6.2k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Anomalib Tiled Ensemble

    open-edge-platform/anomalib

    Runs and configures the anomalib tiled-ensemble pipeline, which trains/evaluates one model per image tile and merges results (with optional seam smoothing) for high-resolution anomaly detection.

    6.2k GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Anomalib Training

    open-edge-platform/anomalib

    Trains an anomalib model on a dataset via the Python API or CLI, including training on a custom folder-structured dataset with the Folder datamodule.

    6.2k GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Model Sample Image Export

    open-edge-platform/anomalib

    Export, validate, and publish model sample-result images into docs/source/images and reference them from README/docs pages.

    6.2k GitHub stars~874 tokensUpdated today
    Auto-check passed

Questions about Models Data

What does Models Data do?

Reviews anomalib model, data, callback, metric, and CLI integration conventions. Models Data is an agent skill from open-edge-platform/anomalib.

How do I install Models Data in Claude Code?

Run `npx skills add open-edge-platform/anomalib --skill models-data -a claude-code`. Or copy the skill folder (.agents/skills/models-data in open-edge-platform/anomalib) into .claude/skills/models-data in your project. Claude Code loads it when a task matches its description.

How do I install Models Data in Codex?

Run `npx skills add open-edge-platform/anomalib --skill models-data -a codex`. Or copy the skill folder (.agents/skills/models-data in open-edge-platform/anomalib) into .agents/skills/models-data in your project. Codex loads it when a task matches its description.

Can I use Models Data 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 open-edge-platform/anomalib --skill models-data -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/models-data, .gemini/skills/models-data, .github/skills/models-data and .opencode/skills/models-data in your project.

What does Models Data need to run?

SKILL.md names no scripts, command-line tools or credentials: Models Data is instructions for the agent only.

Does Models Data 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 Models Data 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 Models Data use?

Models Data 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 Models Data use?

About 1.5k tokens (SKILL.md is roughly 5.9k 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 Models Data?

Skills that share tags, products or a category with Models Data: North Star Metric (phuryn/pm-skills, 27k stars), Investigate Metric (PostHog/posthog, 40k stars), Product Metrics Dashboard Design (phuryn/pm-skills, 27k stars) and CI Metrics (pytorch/pytorch, 104k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Models Data?

open-edge-platform (a GitHub organization) maintains it in open-edge-platform/anomalib, which has 6,226 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on October 7, 2026.

Source: open-edge-platform/anomalib on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.