Agent skill

Operator Migration

by vipshop in vipshop/cache-dit

A skill your agent uses when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing…

Apache-2.0Auto-check passedBackend & APIs

Install Operator Migration

skills CLI
$ npx skills add vipshop/cache-dit --skill operator-migration -a claude-code

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

GitHub CLI
$ gh skill install vipshop/cache-dit operator-migration --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/vipshop/cache-dit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/operator-migration .claude/skills/operator-migration && 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
operator-migration
GitHub stars
1.3k
Token cost
~3.8k tokens
SKILL.md length
1,875 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing…

  • Works in 6 steps: Gather Before Coding → Survey the Existing Design → Decide the Migration Shape → …
  • Doing operator migration
  • SKILL.md covers Goal, When to Use, Core Rule and Reference Style Rule, plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Operator Migration is an agent skill from vipshop/cache-dit. Use when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing operator registration and public wrappers; wiring build and packaging for optional extensions; or reviewing an operator migration plan. Guides survey, minimal-closure migration, API design, extension loading, packaging, and layered validation. Do not use for blind copy-paste ports.

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

It sits in Backend & APIs, covering API design. It works with CUDA and Python. The repository describes itself as: A PyTorch-native inference engine with cache, parallelism, quantization and cpu offload for DiTs. The licence is Apache-2.0.

When your agent uses it

  • Doing operator migration
  • Kernel migration for CUDA
  • Custom ops in cache-dit
  • Porting kernels from nunchaku

Example prompts

  • “/operator-migration”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Gather Before Coding
  2. Survey the Existing Design
  3. Decide the Migration Shape
  4. Implement the Migration
  5. Validate in Layers, Kernels, and Modules
  6. Packaging and Documentation

What it can do on your machine

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

Operator Migration loads about 3.8k tokens when it runs. Until then it costs about 119 tokens; SKILL.md has 1,875 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~119
When it runs · the whole SKILL.md, loaded when a task matches
~3.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 vipshop/cache-dit at commit a7898aa, republished under its Apache-2.0 licence (© vipshop). 1,875 words, ~3,774 tokens.

Download SKILL.mdSave it as .claude/skills/operator-migration/SKILL.md (or your agent's skills folder).
name
operator-migration
description
Use when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing operator registration and public wrappers; wiring build and packaging for optional extensions; or reviewing an operator migration plan. Guides survey, minimal-closure migration, API design, extension loading, packaging, and layered validation. Do not use for blind copy-paste ports.
argument-hint
Describe the operator family, source repo, target public API, required backends or dtypes, and current migration status.
user-invocable
true

Operator Migration for cache-dit

Goal

Migrate one operator or kernel family into cache-dit in a way that is:

  • semantically correct
  • aligned with cache-dit repository conventions
  • safe to import when optional native extensions are absent
  • validated at multiple layers instead of by one smoke test

This skill is for migration work that touches native code, Python wrappers, operator registration, build packaging, or quantized module integration.

When to Use

Use this skill when you need to:

  • migrate a CUDA or Triton operator from another repo into cache-dit
  • port a nunchaku operator or kernel family into cache-dit
  • decide what native files are actually required for a migration
  • design cache-dit public wrappers for a newly migrated operator
  • register low-level ops through cache-dit's CUDA registry layer
  • add optional-extension build logic, submodule checks, or packaging guards
  • design layered validation for a migrated operator
  • review whether an operator migration plan is thoughtful or mechanical

Do not use this skill for:

  • generic model integration with no operator or kernel work
  • pure Python feature work unrelated to kernels or extensions
  • blind "copy upstream into csrc" execution

Core Rule

Do not mechanically replay upstream structure.

Treat the source repository as the reference for semantics, not as the required layout.

Before writing code, answer these questions:

  1. What behavior is essential to preserve?
  2. What is the smallest native and Python closure needed to preserve that behavior?
  3. Which names should remain source-compatible, and which should be renamed to match cache-dit conventions?
  4. What must be public, and what should remain private implementation detail?
  5. Which tests prove the migration works, instead of merely compiling?

If those questions are not answered yet, do not start copying files.

Reference Style Rule

Use portable references only.

  • For cache-dit files, use repo-relative paths such as src/cache_dit/kernels/ops.py or tests/kernels/test_svdquant_runtime.py.
  • For sibling or external repos, use repository-relative or GitHub-searchable paths such as nunchaku/nunchaku/models/linear.py or deepcompressor/deepcompressor/backend/nunchaku/utils.py.
  • Do not write machine-local absolute paths such as /abs/path/to/workspace/... into the skill or its supporting documentation.

Phase 0: Gather Before Coding

Collect the migration inputs first.

Required inputs
  1. Source operator and source repo Example: nunchaku/nunchaku/ops/gemm.py plus the native files it depends on.
  2. Target cache-dit user-facing surface Example: a low-level op wrapper, a quantized module, or both.
  3. Required backends, dtypes, and scope boundaries Example: "INT4 CUDA is required now; FP4 implementation may be retained but not gate current validation."
  4. Build and packaging requirements Example: optional extension, submodule dependency, or environment gate.
  5. Validation target Example: import safety, low-level parity, module parity, end-to-end inference, or shape rejection.
Gather checklist
  • Identify the source operator entry points.
  • Identify the native files that implement them.
  • Identify helper files that are truly required by those implementations.
  • Identify existing cache-dit abstractions that should host the migrated behavior.
  • Identify the minimum feature slice that must work first.
  • Identify what will explicitly not be validated in the current milestone.

Phase 1: Survey the Existing Design

Inspect both sides before making edits.

Survey the source implementation

Look for:

  • the true call chain from public API to kernel launch
  • required helper headers, interop layers, dispatch utilities, and packers
  • runtime assumptions such as shape, rank, alignment, architecture, or dtype restrictions
  • dependency assumptions such as vendored headers, submodules, or environment variables
  • test coverage that already encodes behavior worth preserving
Survey cache-dit integration points

Common anchor files include:

  • src/cache_dit/kernels/ops.py
  • src/cache_dit/kernels/cuda/_ops_registery.py
  • src/cache_dit/kernels/cuda/_<feature>.py
  • setup.py
  • pyproject.toml
  • tests/kernels/...

Ask these questions while surveying:

  1. Where should the public API live?
  2. Where should torch.library registration live?
  3. What should remain a private helper module under src/cache_dit/kernels/cuda/?
  4. How should optional extension loading fail when the extension is missing?
  5. Is there already a naming convention for this operator family?

Phase 2: Decide the Migration Shape

Make the design decisions before editing files.

1. Freeze the public surface first

Define the cache-dit-facing API early.

Examples of questions to settle:

  • Which operator names should be exposed publicly?
  • Should the public API be low-level only, module-level only, or both?
  • Should internal backend toggles be hidden from users?
  • Should wrapper functions be explicit rather than partial(...) so editors and type tools can see the real signature?

Default rule: keep backend-selection details private unless there is a strong user-facing reason to expose them.

2. Migrate the minimal viable closure

Do not import an entire subsystem if only one slice is needed.

Usually migrate:

  • the kernel implementation files that are actually on the call path
  • the minimum helper headers or Python utilities they require
  • the registry and wrapper plumbing needed to call them from cache-dit

Usually do not migrate yet:

  • unrelated kernels in the same source repo directory
  • optimization branches that are not needed for the current milestone
  • extra tooling, benchmark harnesses, or framework abstractions with no direct execution path impact
3. Preserve semantics before cleanup

During the first migration pass:

  • preserve behavior first
  • preserve shape and dtype rules first
  • preserve dataflow first

Do not mix the migration with optional cleanups such as naming polish, API reshaping, or algorithmic changes unless they are necessary for repository consistency or import safety.

Phase 3: Implement the Migration

Apply changes from lowest level to highest level.

A. Native code and dependency boundary

When migrating native code:

  1. Move only the required native closure into cache-dit's csrc tree.
  2. Rename namespaces and top-level identifiers where needed to match cache-dit ownership.
  3. Keep dispatch structure if it is functionally necessary; do not rewrite it just because it looks unfamiliar.
  4. Decide dependency strategy explicitly:
    • vendored in-tree
    • git submodule
    • preinstalled system dependency
  5. Add build-time validation for missing required dependencies.
B. Private CUDA helper layer

Use a private helper module under src/cache_dit/kernels/cuda/ for extension loading and low-level bridging.

Typical responsibilities:

  • delayed import of the optional extension
  • returning a cached load error
  • wrapping direct calls into the extension's ops and utils submodules
  • keeping internal details out of the public operator API

If the extension is optional, import cache_dit must remain safe.

C. Registry layer

Put low-level torch.library definitions and implementations in the CUDA registry layer, for example:

  • src/cache_dit/kernels/cuda/_ops_registery.py

Typical responsibilities:

  • define torch.library schemas
  • implement real CUDA behavior
  • add fake registrations where compile or tracing paths need them
  • keep the public kernel API separate from raw registration details

Registration and fake-implementation conventions:

  • name fake registrations explicitly as _fake_<operator_name>; do not use anonymous def _(...) helpers
  • apply this naming rule consistently across CUDA, Triton, CuTe DSL, and other operator backends in cache-dit
  • when adding or migrating operators, add unit tests in the same change
  • tests should cover at least one fake shape or dtype path and one runtime correctness or smoke path
D. Public kernel API layer

Expose user-facing wrappers from src/cache_dit/kernels/ops.py.

Default conventions:

  • expose explicit functions instead of partial(...) aliases when signature discoverability matters
  • keep public names repository-aligned
  • hide internal backend-selection knobs unless users truly need them
  • validate backend support centrally instead of scattering checks
Show full SKILL.md (750 more words)Show less
E. Higher-level modules and state adaptation

If the migration also adds a module abstraction such as a quantized nn.Module:

  1. keep the module's expected state keys stable
  2. adapt upstream raw export keys into cache-dit module keys explicitly
  3. do not leak source-repo naming into the public API if cache-dit already has a better convention

Phase 4: Validate in Layers, Kernels, and Modules

Do not rely on one test.

Validation should usually proceed in this order:

  1. Import safety
    • importing cache-dit without the optional extension should not crash
  2. Low-level smoke
    • low-level op runs with expected dtype, device, and shape
  3. Low-level correctness
    • compare operator output against a dense or reference implementation
  4. Module correctness
    • verify the higher-level module uses the migrated operator path correctly
  5. Round-trip or end-to-end validation
    • if serialization, quantization, or pipeline integration exists, test that explicitly
  6. Boundary tests
    • unsupported geometry, rank, alignment, or build conditions should fail clearly

When scope is intentionally limited, say so explicitly.

Example:

  • "INT4 CUDA path is the validation gate."
  • "FP4 code is retained but not currently gated by runtime correctness tests."

Do not imply feature maturity beyond what the tests actually cover.

Phase 5: Packaging and Documentation

Operator migration is incomplete if build and packaging are wrong.

Checklist:

  • update setup.py for optional extension build gates
  • update pyproject.toml if packaging metadata or dependencies changed
  • enforce submodule or dependency checks where needed
  • keep default install/import behavior safe without the optional extension
  • document only what is actually usable now

Do not advertise unfinished features in README or user docs ahead of validated capability.

Anti-Patterns

Avoid these failure modes.

Do not mechanically mirror upstream layout

Bad:

  • copying an entire source repo subtree into csrc/ because one operator needed two files from it

Better:

  • identify the minimum closure and migrate only that set
Do not expose internal control knobs casually

Bad:

  • exposing backend-selection or migration-only tuning arguments to end users because they were convenient during development

Better:

  • hardcode them at the internal wrapper layer until a real product need exists
Do not leak source-repo naming when cache-dit conventions already exist

Bad:

  • keeping raw upstream helper names or state keys in the public interface without evaluating cache-dit consistency

Better:

  • adapt them to the repository's public naming rules and keep the raw names private if needed
Do not let optional extensions break base imports

Bad:

  • importing the extension eagerly from top-level package import paths

Better:

  • delay extension import until the migrated operator is actually needed
Do not claim correctness from one smoke test

Bad:

  • compiling the extension and declaring the migration complete

Better:

  • prove import safety, low-level execution, low-level correctness, higher-level module behavior, and boundary failures
Do not write machine-local reference paths

Bad:

  • /abs/path/to/workspace/...

Better:

  • src/cache_dit/kernels/ops.py
  • nunchaku/nunchaku/models/linear.py
  • deepcompressor/deepcompressor/calib/smooth.py

Reference Case: SVDQ / Nunchaku Migration

Use this as an example of the workflow, not as a recipe to replay line by line.

What the migration demonstrated
  • native W4A4 closure can be migrated without importing an entire upstream project
  • public operator wrappers should remain explicit and repository-aligned
  • torch.library schemas and implementations belong in the CUDA registry layer
  • optional extension import should be delayed and load errors should be queryable
  • packaging may need submodule enforcement instead of hard-coded vendoring
  • layered tests should cover runtime, module, and end-to-end behaviors separately
Useful cache-dit reference files
  • src/cache_dit/kernels/ops.py
  • src/cache_dit/kernels/cuda/_ops_registery.py
  • src/cache_dit/kernels/cuda/_svdquant.py
  • src/cache_dit/quantization/svdquant/linear.py
  • tests/kernels/test_svdquant_runtime.py
  • tests/quantization/test_svdquant_quantizer.py
  • setup.py
Useful external reference cases
  • nunchaku/nunchaku/models/linear.py
  • nunchaku/nunchaku/ops/gemm.py
  • nunchaku/nunchaku/ops/quantize.py
  • deepcompressor/deepcompressor/backend/nunchaku/utils.py
  • deepcompressor/deepcompressor/calib/smooth.py
  • deepcompressor/deepcompressor/calib/lowrank.py
What was specific to that case

These details were important for SVDQ, but are not universal migration rules:

  • svdq_* naming convention
  • W4A4 INT4 and FP4 split in scope and validation
  • specific geometry and rank constraints
  • quantized module state adaptation rules
  • submodule choice for spdlog

If your operator family differs, keep the workflow but re-evaluate the decisions.

Suggested Execution Order

When this skill is invoked for a real migration, follow this order:

  1. summarize the target operator and current scope boundary
  2. list source files and cache-dit integration points
  3. identify the minimum viable closure
  4. freeze the public API and naming strategy
  5. migrate native code and private helper plumbing
  6. add registry entries and public wrappers
  7. add or adapt higher-level module code if needed
  8. validate in layers or kernel, module, and end-to-end tests
  9. document only validated scope

Exit Criteria

The migration is not done until all of these are true:

  • the public API is intentional and repository-aligned
  • optional extension behavior is safe
  • dependency strategy is explicit
  • tests prove correctness at the right layers, kernel and module level as needed
  • unsupported cases fail clearly
  • documentation matches validated reality

© vipshop, 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 .github/skills/operator-migration of vipshop/cache-dit.

Open the folder on GitHubat commit a7898aa

Compare with similar skills

Operator Migration 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.

Operator Migration compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Operator Migration this skillvipshop/cache-dit1.3k—~3.8kAutomated safety check: PassApache-2.0
Deepstream DevNVIDIA/skills3.5k—~3.3kAutomated safety check: PassApache-2.0
Backend AI Guidelablup/backend.ai-webui1331 repos~1.8kAutomated safety check: PassLGPL-3.0
Domodomo Backend Fastapidarknecrocities/DomoDomo---All-in-one-Tool240—~17kAutomated safety check: PassNone
Python API Designjohnku2011/boilerplates-with-ai-skills240—~449Automated safety check: PassMIT
Python Project Structurewshobson/agents40k—~1.6kAutomated safety check: PassMIT

Similar skills

  • Deepstream Dev

    NVIDIA/skills

    Official

    NVIDIA DeepStream SDK development with Python pyservicemaker API.

    3.5k GitHub stars~3.3k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Backend AI Guide

    lablup/backend.ai-webui

    Expert guide for Backend.AI distributed computing platform. An agent skill from lablup/backend.ai-webui.

    133 GitHub starsUsed in 1 repo~1.8k tokens
    Backend & APIsAuto-check passed
  • Domodomo Backend Fastapi

    darknecrocities/DomoDomo---All-in-one-Tool

    Maintain DomoDomo’s local FastAPI application, routers, SQLite models, local services, and Python utilities.

    240 GitHub stars~17k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Python API Design

    johnku2011/boilerplates-with-ai-skills

    A skill your agent uses when adding or changing FastAPI routes, dependencies, or tests in this Python service — keep endpoints typed, validated, and covered by pytest.

    240 GitHub stars~449 tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Python project organization, module architecture, and public API design.

    40k GitHub stars~1.6k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • Official

    cuOpt REST server — start server, endpoints, Python/curl client examples.

    3.5k GitHub stars~1.5k tokensUpdated yesterday
    Backend & APIsAuto-check passed

More from vipshop/cache-dit

  • High-level guide for integrating a new DiT model into cache-dit: Cache (BlockAdapter/ForwardPattern), Context Parallelism, Tensor Parallelism, Text Encoder Parallelism (TE-P), VAE Parallelism…

    1.3k GitHub stars~11k tokensUpdated 8 days ago
    Auto-check passed
  • Cuda Cpp Kernel

    vipshop/cache-dit

    A skill your agent uses when writing, debugging, porting, reviewing, or optimizing CUDA C++ or PTX kernels; investigating CUDA Runtime or Driver API behavior; profiling kernels with Nsight Systems…

    1.3k GitHub stars~2.3k tokensUpdated 8 days ago
    Auto-check passed
  • Cute Dsl Kernel

    vipshop/cache-dit

    A skill your agent uses when writing, modifying, porting, or optimizing CuTe DSL GPU kernels in Python; reading CuTe DSL API reference material; integrating a CuTe DSL kernel into a project; or…

    1.3k GitHub stars~2.8k tokensUpdated 8 days ago
    Auto-check passed
  • Cutlass Cpp Kernel

    vipshop/cache-dit

    A skill your agent uses when writing, debugging, porting, reviewing, or optimizing CUTLASS or CuTe C++ kernels and templates; navigating CUTLASS examples, collectives, epilogues, pipelines, GEMM…

    1.3k GitHub stars~2.2k tokensUpdated 8 days ago
    Auto-check passed
  • Ptq Workflow Integration

    vipshop/cache-dit

    A skill your agent uses when integrating a new PTQ workflow into cache-dit; designing quantize/load API shape, backend-specific config validation, save/load manifests, benchmark and regression…

    1.3k GitHub stars~2.8k tokensUpdated 8 days ago
    Auto-check passed
  • Triton Kernel

    vipshop/cache-dit

    Write optimized Triton GPU kernels for deep learning operations.

    1.3k GitHub stars~1.1k tokensUpdated 8 days ago
    Auto-check passed

Works with

Questions about Operator Migration

What does Operator Migration do?

A skill your agent uses when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing…. Operator Migration is an agent skill from vipshop/cache-dit. Use when doing operator migration or kernel migration for CUDA, Triton, or custom ops in cache-dit; porting kernels from nunchaku, deepcompressor, or other repos; designing operator registration and public wrappers; wiring build and packaging for optional extensions; or reviewing an operator migration plan.

When should I use Operator Migration?

Operator Migration fits situations like: doing operator migration; kernel migration for CUDA; custom ops in cache-dit; porting kernels from nunchaku.

How do I install Operator Migration in Claude Code?

Run `npx skills add vipshop/cache-dit --skill operator-migration -a claude-code`. Or copy the skill folder (.github/skills/operator-migration in vipshop/cache-dit) into .claude/skills/operator-migration in your project. Claude Code loads it when a task matches its description.

How do I install Operator Migration in Codex?

Run `npx skills add vipshop/cache-dit --skill operator-migration -a codex`. Or copy the skill folder (.github/skills/operator-migration in vipshop/cache-dit) into .agents/skills/operator-migration in your project. Codex loads it when a task matches its description.

Can I use Operator Migration 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 vipshop/cache-dit --skill operator-migration -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/operator-migration, .gemini/skills/operator-migration, .github/skills/operator-migration and .opencode/skills/operator-migration in your project.

What does Operator Migration need to run?

SKILL.md names no scripts, command-line tools or credentials: Operator Migration is instructions for the agent only. Our summary lists: Python 3.

Does Operator Migration 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 Operator Migration 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 Operator Migration use?

Operator Migration 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 Operator Migration use?

About 3.8k tokens (SKILL.md is roughly 15k 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 Operator Migration?

Skills that share tags, products or a category with Operator Migration: Deepstream Dev (NVIDIA/skills, 3.5k stars), Backend AI Guide (lablup/backend.ai-webui, 133 stars), Domodomo Backend Fastapi (darknecrocities/DomoDomo---All-in-one-Tool, 240 stars) and Python API Design (johnku2011/boilerplates-with-ai-skills, 240 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Operator Migration?

vipshop (a GitHub organization) maintains it in vipshop/cache-dit, which has 1,289 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 29, 2026.

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