Agent skill

Sync ML Reports

by probabl-ai in probabl-ai/skills

Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination.

BSD-3-ClauseAuto-check passedDevOps & Cloud

Install Sync ML Reports

skills CLI
$ npx skills add probabl-ai/skills --skill sync-ml-reports -a claude-code

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

GitHub CLI
$ gh skill install probabl-ai/skills sync-ml-reports --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/probabl-ai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/sync-ml-reports .claude/skills/sync-ml-reports && 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
sync-ml-reports
GitHub stars
137
Token cost
~1.6k tokens
SKILL.md length
784 words
Files
2
Skills in repo
23
Repo updated
First seen
Licence
BSD-3-Clause

At a glance

Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination.

  • Works in 7 steps: Run python -m skore_skills status. Read… → If policy.skore_mode is unset: STOP.… → AskUserQuestion for any answer not… → …
  • The user asks to sync
  • SKILL.md covers Human-facing prose, Procedure, Stop conditions and End of turn
  • Calls python, pip and git; needs SKORE_HUB_API_KEY

What it does

Sync ML Reports is an agent skill from probabl-ai/skills. Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination. Trigger when the user asks to sync or migrate reports, switch skore mode, upload reports to Hub or MLflow, or pull Hub/MLflow reports onto disk. First G-SKORE-MODE pick stays evaluate-ml-pipeline.

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

It sits in DevOps & Cloud, covering MLOps. It works with MLflow. The repository describes itself as: Tabular Data Science Skills for guardrailing AI Agents. The licence is BSD-3-Clause.

When your agent uses it

  • The user asks to sync
  • Migrate reports
  • Switch skore mode
  • Upload reports to Hub

Example prompts

  • “/sync-ml-reports”

Requirements

  • Python 3
  • A credential in SKORE_HUB_API_KEY

Workflow steps

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

  1. Run python -m skore_skills status. Read policy.skore_mode
  2. If policy.skore_mode is unset: STOP. First pick is
  3. AskUserQuestion for any answer not already in the request.
  4. Destination extras: load add-python-package only if
  5. If Hub is source or destination: require SKORE_HUB_API_KEY in
  6. Build skore sync. If skore is not on PATH, name
  7. Switch intent only, after a successful (or empty) sync

What it can do on your machine

Read from SKILL.md and the folder at commit 73564e4. 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:

    • python
    • pip
    • git

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

  • Network

    Links to these hosts (documentation or services it may open):

    • skore.probabl.ai

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

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SKORE_HUB_API_KEY

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

Context cost

Sync ML Reports loads about 1.6k tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 784 words of instructions outside code blocks.

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

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 probabl-ai/skills at commit 73564e4, republished under its BSD-3-Clause licence (© probabl-ai). 784 words, ~1,553 tokens.

Download SKILL.mdSave it as .claude/skills/sync-ml-reports/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
sync-ml-reports
description
Copy skore reports between local, Hub, and MLflow with `skore sync`, and optionally switch the recorded upload destination. Trigger when the user asks to sync or migrate reports, switch skore mode, upload reports to Hub or MLflow, or pull Hub/MLflow reports onto disk. First G-SKORE-MODE pick stays evaluate-ml-pipeline.

Sync ML Reports

Copy reports with the skore CLI. Switch the default destination only when the user asked to. Do not evaluate, audit, or invent Project.sync Python.

Human-facing prose

Details: setup-workspace references/human_facing_prose.md. Ask where reports live (disk, Hub, MLflow) in those words. Do not name G-SKORE-MODE, skill ids, or the wrapper CLI in the question. skore sync output may appear in the close as the sync table.

Procedure

  1. Run python -m skore_skills status. Read policy.skore_mode and skills. Open experiments/ and audit/ for the skore.Project(...) init block: name=, Hub workspace=, MLflow tracking_uri=. Local store is always the workspace reports/ directory (absolute path). Never omit --from-workspace / --to-workspace on a local endpoint.

  2. If policy.skore_mode is unset: STOP. First pick is G-SKORE-MODE in evaluate-ml-pipeline. Do not ask local / hub / mlflow here. Load that skill only if status.skills.evaluate-ml-pipeline is true and the user asked to evaluate; else one-line skip. The close is only this stop: the destination is not chosen yet and is picked when a report is stored. Do not list local, Hub, or MLflow, a workspace name, or a tracking URI. Do not use the source-to-destination close below.

  3. AskUserQuestion for any answer not already in the request. Ahead of each question, state in 2–4 lines what the answer authorizes — which reports move where, whether skore_mode and the Project init lines get rewritten — and the facts it rests on: the current mode, the discovered report count, the endpoint. A file link is an addition, never the context.

    • Intent. Switch default destination (sync, then persist skore_mode and rewrite every Project init) vs copy only (sync, leave policy and experiment files).
    • Destination — same three options as G-SKORE-MODE: local (disk, no account), hub (https://skore.probabl.ai), mlflow (tracking server). Hub: ask the workspace name; it MUST NOT contain /. MLflow: ask tracking_uri; confirm a bare host:port as http://host:port. Do not default the URI.
    • Project name if name= is missing or disagrees across files.
    • Dry-run first vs transfer now.

    If intent is switch and destination equals policy.skore_mode, stop in one line.

  4. Destination extras: load add-python-package only if status.skills.add-python-package is true, for Skore at the destination mode (env add-skore --mode <dest>). If that skill is missing, name Skore for the destination and stop. Do not splice pip install / skore[...] here.

  5. If Hub is source or destination: require SKORE_HUB_API_KEY in the environment. Missing → name it and stop. Do not open a browser login. Do not read .skore for the key.

  6. Build skore sync. If skore is not on PATH, name skore-cli and stop. Do not call skore.Project.sync in Python.

    bash
    skore sync <project> --from=<source_mode> --to=<dest_mode>

    Source mode is policy.skore_mode. Add:

    EndpointFlags
    local--from-workspace or --to-workspace = resolved reports/
    hub--from-workspace or --to-workspace = Hub workspace name (required)
    mlflow--tracking-uri=...; never *-workspace

    --to-project only if the destination name differs. --hub-url only when SKORE_HUB_URI (or the user) names a non-default Hub. --both only if the user asked to copy missing reports both ways. Otherwise one-way.

    If the user picked dry-run first, run with --dry-run, show the plan, then ask to transfer. Live run omits --dry-run.

    Usage/auth/backend errors: name stdout/stderr and stop. Do not invent a Python fallback. Empty output No reports to synchronize. is success (nothing to copy; a switch may still continue).

  7. Switch intent only, after a successful (or empty) sync: python -m skore_skills policy set skore_mode <dest>. Rewrite every Project init in experiments/ and audit/ to the destination form in evaluate-ml-pipeline/references/g_skore_mode.md (audit must match the paired experiment, byte-for-byte modulo formatting). If dest is local, mkdir reports (exist_ok); no README. If hub or mlflow, do not create reports/. If journal/JOURNAL.md exists, insert a --- under History and one line skore_mode: <old> → <dest> (sync-ml-reports). Missing journal → skip in one line; do not paste a JOURNAL body.

    Copy-only: do not policy set, rewrite init, mkdir, or edit JOURNAL.

Show full SKILL.md (163 more words)Show less

Stop conditions

  • Do not steal first G-SKORE-MODE when skore_mode is unset.
  • Do not silently change a recorded mode; switch requires the switch intent (or an explicit user request to switch).
  • Do not git commit.
  • Do not evaluate, project.put, or audit.
  • Do not pass *-workspace on an MLflow endpoint.
  • Do not omit *-workspace on a local or Hub endpoint.

End of turn

User-facing close

This close applies only after a sync. An unset policy.skore_mode uses the step-2 stop instead.

Short story: source → destination, whether policy changed, and the skore sync table or No reports to synchronize. Do not dump experiment files.

Then python -m skore_skills git end-turn --stage evaluate (the persist bucket for this work; this is not a CV run). If JSON action is invoke, load persist-ml-git only if status.skills.persist-ml-git is true and stop; that skill returns to triage. If persist is missing, name the pending staged paths and stop. Otherwise load triage-ml-task only if status.skills.triage-ml-task is true; else stop. No git commit.

© probabl-ai, BSD-3-Clause. 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 skills/sync-ml-reports of probabl-ai/skills.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit 73564e4

Compare with similar skills

Sync ML Reports 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.

Sync ML Reports compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sync ML Reports this skillprobabl-ai/skills137—~1.6kAutomated safety check: PassBSD-3-Clause
ML Pipeline ExpertJeffallan/claude-skills12k1 repos~1.9kAutomated safety check: PassMIT
Senior ML Engineeralirezarezvani/claude-skills28k2 repos~2.4kAutomated safety check: PassMIT
Implementing Mlopsancoleman/ai-design-components5261 repos~9.2kAutomated safety check: PassMIT
Mlops Engineeraiskillstore/marketplace4308 repos~2.8kAutomated safety check: PassNone
ML Pipeline Automationsecondsky/claude-skills2271 repos~3.2kAutomated safety check: PassMIT

Similar skills

  • ML Pipeline Expert

    Jeffallan/claude-skills

    Designs ML pipeline infrastructure: experiment tracking with MLflow or Weights & Biases, Kubeflow and Airflow orchestration, Feast feature stores and model validation gates.

    12k GitHub starsUsed in 1 repo~1.9k tokens
    DevOps & CloudAuto-check passed
  • Senior ML Engineer

    alirezarezvani/claude-skills

    ML engineering skill for productionizing models, building MLOps pipelines, and integrating LLMs.

    28k GitHub starsUsed in 2 repos~2.4k tokens
    DevOps & CloudAuto-check passed
  • Implementing Mlops

    ancoleman/ai-design-components

    Strategic guidance for operationalizing machine learning models from experimentation to production.

    526 GitHub starsUsed in 1 repo~9.2k tokens
    DevOps & CloudAuto-check passed
  • Mlops Engineer

    aiskillstore/marketplace

    Build comprehensive ML pipelines, experiment tracking, and model registries with MLflow, Kubeflow, and modern MLOps tools.

    430 GitHub starsUsed in 8 repos~2.8k tokens
    DevOps & CloudAuto-check passed
  • ML Pipeline Automation

    secondsky/claude-skills

    Automate ML workflows with Airflow, Kubeflow, MLflow. An agent skill from secondsky/claude-skills.

    227 GitHub starsUsed in 1 repo~3.2k tokens
    DevOps & CloudAuto-check passed
  • ML Ops Engineer

    borghei/Claude-Skills

    MLOps across model deployment, ML pipelines, monitoring, and feature stores.

    881 GitHub stars~3.5k tokensUpdated yesterday
    DevOps & CloudAuto-check passed

More from probabl-ai/skills

All 23 skills in this repo
  • Add Python Package

    probabl-ai/skills

    Add a Python dependency through the project env manager, or ask the user to install it when env.managed is false.

    137 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Build ML Pipeline

    probabl-ai/skills

    Declare the pipeline from data source to predictor as a skrub DataOps graph.

    137 GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • Evaluate ML Pipeline

    probabl-ai/skills

    Evaluate one learner with skore.evaluate. An agent skill from probabl-ai/skills.

    137 GitHub stars~4.3k tokensUpdated today
    Auto-check passed
  • Setup Workspace

    probabl-ai/skills

    Detect an existing ML workspace or scaffold a fresh one via python -m skoreskills scaffold --package <pkg.

    137 GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • Audit ML Pipeline

    probabl-ai/skills

    Read-only audit of one persisted skore report: audit/NN<stem.py (jupytext percent), 1:1 with experiments/ and journal/.

    137 GitHub stars~9.4k tokensUpdated today
    Auto-check passed
  • Explore ML Data

    probabl-ai/skills

    Owns data understanding before any model is designed. An agent skill from probabl-ai/skills.

    137 GitHub stars~5.7k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Sync ML Reports

What does Sync ML Reports do?

Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination. Sync ML Reports is an agent skill from probabl-ai/skills. Copy skore reports between local, Hub, and MLflow with skore sync, and optionally switch the recorded upload destination.

When should I use Sync ML Reports?

Sync ML Reports fits situations like: the user asks to sync; migrate reports; switch skore mode; upload reports to Hub.

How do I install Sync ML Reports in Claude Code?

Run `npx skills add probabl-ai/skills --skill sync-ml-reports -a claude-code`. Or copy the skill folder (skills/sync-ml-reports in probabl-ai/skills) into .claude/skills/sync-ml-reports in your project. Claude Code loads it when a task matches its description.

How do I install Sync ML Reports in Codex?

Run `npx skills add probabl-ai/skills --skill sync-ml-reports -a codex`. Or copy the skill folder (skills/sync-ml-reports in probabl-ai/skills) into .agents/skills/sync-ml-reports in your project. Codex loads it when a task matches its description.

Can I use Sync ML Reports 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 probabl-ai/skills --skill sync-ml-reports -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sync-ml-reports, .gemini/skills/sync-ml-reports, .github/skills/sync-ml-reports and .opencode/skills/sync-ml-reports in your project.

What does Sync ML Reports need to run?

Going by SKILL.md and its folder, Sync ML Reports needs the command-line tools its instructions call (python, pip and git) and credentials named SKORE_HUB_API_KEY. Our summary lists: Python 3; A credential in SKORE_HUB_API_KEY.

Does Sync ML Reports access the network?

SKILL.md names 1 domain. As links in the text: skore.probabl.ai. This is read from the text; nothing was executed.

Is Sync ML Reports 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 Sync ML Reports use?

Sync ML Reports is published under the BSD-3-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sync ML Reports use?

About 1.6k tokens (SKILL.md is roughly 6.2k 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 Sync ML Reports?

Skills that share tags, products or a category with Sync ML Reports: ML Pipeline Expert (Jeffallan/claude-skills, 12k stars), Senior ML Engineer (alirezarezvani/claude-skills, 28k stars), Implementing Mlops (ancoleman/ai-design-components, 526 stars) and Mlops Engineer (aiskillstore/marketplace, 430 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sync ML Reports?

probabl-ai (a GitHub organization) maintains it in probabl-ai/skills, which has 137 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on October 7, 2026.

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