# Migrate Skills Between Libraries

> Use when moving skills between library workspaces or upgrading from a personal library to a team library. Export from one workspace, import into another.

- Skill: `tomevault-io/migrate-skills-between-libraries` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/migrate-skills-between-libraries`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/migrate-skills-between-libraries/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/migrate-skills-between-libraries

---


# Migrate Skills Between Libraries

## Goal

Move skills from one library workspace to another without losing metadata, breaking dependencies, or duplicating entries.

## Guardrails

- Always use `--dry-run` before any mutating command in the target workspace.
- Always use `--list` to inspect the source library before importing.
- Always use `--format json` for structured output when scripting migrations.
- Never import skills without checking for name collisions in the target workspace first.
- Always run `build-docs` in the target workspace after migration.

## Workflow

### Export: Identify skills to migrate from the source library

1. List all skills in the source workspace.

```bash
cd /path/to/source-library
npx ai-agent-skills list --format json --fields name,tier,workArea,collections
```

2. For house copies, note the skill folder paths. For upstream picks, note the installSource.

### Import: Add skills to the target workspace

3. For house copies, use `vendor` to copy the skill folder into the target:

```bash
cd /path/to/target-library
npx ai-agent-skills vendor /path/to/source-library --skill <name> --area <workArea> --branch <branch> --why "Migrated from source library." --dry-run
npx ai-agent-skills vendor /path/to/source-library --skill <name> --area <workArea> --branch <branch> --why "Migrated from source library."
```

4. For upstream picks, use `catalog` to re-catalog from the original source:

```bash
npx ai-agent-skills catalog <owner>/<repo> --skill <name> --area <workArea> --branch <branch> --why "Migrated from source library." --dry-run
npx ai-agent-skills catalog <owner>/<repo> --skill <name> --area <workArea> --branch <branch> --why "Migrated from source library."
```

5. Rebuild docs in the target workspace.

```bash
npx ai-agent-skills build-docs
```

6. Validate the target workspace.

```bash
npx ai-agent-skills validate
```

## Gotchas

- Skill names must be unique per workspace. Check for collisions before importing.
- House copies are full folder copies — the source and target are independent after migration.
- Upstream picks re-catalog from the original upstream source, not the intermediate library.
- Dependencies (`requires` field) must also be migrated. Check `info --format json` for each skill's dependency graph.
- Collection membership does not transfer automatically. Use `curate --collection <id>` to add migrated skills to target collections.

---
> Source: [MoizIbnYousaf/Ai-Agent-Skills](https://github.com/MoizIbnYousaf/Ai-Agent-Skills) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-20 -->

