espalier-migrate SKILL.md skillA

espalier-migrate from junhanliu-dev/espalier-engineering is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add junhanliu-dev/espalier-engineering/espalier-migrate@git:20261020.69759d1

Pins git:20261020.69759d1 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
junhanliu-dev/espalier-engineering
Path
skills/espalier-migrate/SKILL.md
Versions recorded
13
Latest version
git:20261020.69759d1, committed Oct 20, 2026
First version recorded
Sep 3, 2026
Size
137,065 bytes
Repository stars
69
License
MIT

Migrate an existing harness/espalier install to the current Espalier version — auto-detects which of v0.1→v0.2, v0.3→v0.4, v0.4→v0.5, the v0.5.3 coder-agent patch, v0.5→v0.6 (Stage 1 grill), v0.6→v0.7 (read-only /espalier-ask lane), v0.7→v0.8 (requirements approval gate), the v0.8.1 impact-analysis agent patch, the v0.8.2 re-review fixpoint loop, the v0.9.0 security audit, the v0.9.1 configurable escalation caps, the v0.9.2 correctness patch, the v0.9.3 skill-clarity patch, the v0.9.4…

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Espalier Migration Runner

## When to Use
- "Migrate to Espalier" / "Upgrade my Espalier install"
- "Upgrade my harness to the latest version"
- "Rename harness/ to espalier/"
- "/espalier-migrate"

## When NOT to Use
- Fresh project with no existing `harness/` or `espalier/` dir → use `/espalier-init` instead.
- Already fully up to date — `/espalier-migrate` detects this itself and exits cleanly with no changes.

## Instructions

You are running a migration of an existing install to the current Espalier
version. Up to FORTY-ONE migrations may apply, always in this order:

1. **v0.1.x → v0.2.x** — typed `harness/changes/{type}/{slug}/` layout,
   `/harness-fix` lane, squash-merge decision. Mechanical:
   `scripts/migrate-v0.1-to-v0.2.sh`.
2. **v0.3.x → v0.4.0** — `harness/` → `espalier/` directory + skill rename
   (`harness-run` → `espalier`, `harness-{coding,…}` → `espalier-*`).
   Mechanical: `scripts/migrate-v0.3-to-v0.4.sh`.
3. **v0.4.x → v0.5.0** — doc-drift detection: drift hooks, the
   `/espalier-prune` + `/espalier-doctor` skills, the post-merge dispatcher,
   `.doctor-cadence`. Mechanical: `scripts/migrate-v0.4-to-v0.5.sh`.
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add junhanliu-dev/espalier-engineering/espalier-migrate@sha256:c66fa6e47b1d63a4

The line at the top of this page pins the label git:20261020.69759d1, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_pn5cn543pmms7hlg.svg)](https://markdownregistry.com/a/art_pn5cn543pmms7hlg)

2 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 13 versions of this file, between Sep 3, 2026 and Oct 20, 2026, about one every 4 days.

versioncommittedcommitsizeaudit
git:20261020.69759d1 latest2026-10-20 69759d1 137,065 BA view · diff
git:20261009.c3700f62026-10-09 c3700f6 132,369 BA view · diff
git:20261009.ad5a9552026-10-09 ad5a955 132,364 BA view · diff
git:20260918.0e095982026-09-18 0e09598 130,683 BA view · diff
git:20260915.0b0d13b2026-09-15 0b0d13b 120,819 BA view · diff
git:20260915.ae4827e2026-09-15 ae4827e 125,841 BA view · diff
git:20260915.f23ba0f2026-09-15 f23ba0f 116,301 BA view · diff
git:20260915.ffc6d862026-09-15 ffc6d86 129,150 BA view · diff
git:20260909.21011a02026-09-09 21011a0 111,203 BA view · diff
git:20260909.2de0a592026-09-09 2de0a59 107,873 BA view · diff
git:20260909.9895a6c2026-09-09 9895a6c 108,615 BA view · diff
git:20260909.c4dcb352026-09-09 c4dcb35 107,291 BA view · diff
git:20260903.910585f2026-09-03 910585f 100,063 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (137065 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

junhanliu-dev/espalier-engineering · 69 stars · license MIT · pushed 2026-10-20 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_pn5cn543pmms7hlg
GET https://markdownregistry.com/api/v1/resolve?ref=junhanliu-dev/espalier-engineering/espalier-migrate
GET https://markdownregistry.com/api/v1/blob/c66fa6e47b1d63a43e597f3dbcc68287adb710dbb394605626fd7dd16cd1e198

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from junhanliu-dev/espalier-engineering

CLAUDE.md@eval/coder/project/scoped/services CLAUDE.md file
junhanliu-dev/espalier-engineering · eval/coder/project/scoped/services/CLAUDE.md
git:20260909.c4dcb35 · audit A · 69 stars
espalier-init SKILL.md skill
junhanliu-dev/espalier-engineering · skills/espalier-init/SKILL.md · Analyze any existing codebase, discover its patterns and best practices, and generate an Espalier structure (rules…
git:20261020.69759d1 · audit A · 69 stars

Every file in junhanliu-dev/espalier-engineering

Browse by kind, by grade A, or by owner.