migrate-to-shoehorn SKILL.md skillA

migrate-to-shoehorn from akillness/jeo-skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add akillness/jeo-skills/migrate-to-shoehorn@v1.0

Pins v1.0 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
akillness/jeo-skills
Path
.agent-skills/migrate-to-shoehorn/SKILL.md
Versions recorded
4
Latest version
v1.0, committed Sep 11, 2026
First version recorded
May 4, 2026
Size
4,540 bytes
Repository stars
52
License
none declared

Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

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

# Migrate to Shoehorn

Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

This skill is imported from `mattpocock/skills` (MIT) and is **model-invoked** upstream.

## When to use this skill

- Migrate test files from `as` type assertions to @total-typescript/shoehorn.
- Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.

## Instructions

## Migrate to Shoehorn

### Why shoehorn?

`shoehorn` lets you pass partial data in tests while keeping TypeScript happy. It replaces `as` assertions with type-safe alternatives.

**Test code only.** Never use shoehorn in production code.

Problems with `as` in tests:

- Trained not to use it
- Must manually specify target type
- Double-as (`as unknown as Type`) for intentionally wrong data

### Install

```bash
npm i @total-typescript/shoehorn
```

### Migration patterns

#### Large objects with few needed properties

Before:

```ts
type Request = {
  body: { id: string };
  headers: Record<string, string>;
  cookies: Record<string, string>;
  // ...20 more properties
};
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add akillness/jeo-skills/migrate-to-shoehorn@sha256:fb17f8398cae8d85

The line at the top of this page pins the label v1.0, 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_rk6krfgorslu6e2x.svg)](https://markdownregistry.com/a/art_rk6krfgorslu6e2x)

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

Versions

The registry has recorded 4 versions of this file, between May 4, 2026 and Sep 11, 2026, about one every 43 days.

versioncommittedcommitsizeaudit
v1.0 latest2026-09-11 8052d3c 4,540 BA view · diff
v1.02026-07-28 6910059 3,764 BA view · diff
v1.02026-05-05 eb68a6f 3,970 BA view · diff
v1.02026-05-04 aab4b13 3,275 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 (4540 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

akillness/jeo-skills · 52 stars · license none declared · pushed 2026-11-05 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_rk6krfgorslu6e2x
GET https://markdownregistry.com/api/v1/resolve?ref=akillness/jeo-skills/migrate-to-shoehorn
GET https://markdownregistry.com/api/v1/blob/fb17f8398cae8d8597ab21e21d3436000a46200b1066468343578b43ab05395b

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 akillness/jeo-skills

a2a-protocol SKILL.md skill
akillness/jeo-skills · .agent-skills/a2a-protocol/SKILL.md · Agent-to-Agent horizontal messaging — Linux Foundation AAIF 2026 standard. Use when multiple agents across…
git:20260920.2a2b733 · audit A · 52 stars
ab-test-analysis SKILL.md skill
akillness/jeo-skills · .agent-skills/ab-test-analysis/SKILL.md · Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and…
git:20260919.9f2a908 · audit A · 52 stars
academic-research SKILL.md skill
akillness/jeo-skills · .agent-skills/academic-research/SKILL.md · Full academic research pipeline from discovery to publication — 4 reference pipelines, 27 modes, 39-agent ensemble…
v1.0.0 · audit A · 52 stars
agent-beacon SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-beacon/SKILL.md · Operate Asymptote-Labs/agent-beacon, the cross-harness coding-agent session history and self-improving memory layer…
v1.0.0 · audit A · 52 stars
agent-benchmarking SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-benchmarking/SKILL.md · Map agent capabilities to standard benchmarks (SWE-bench, WebArena, OSWorld, GAIA, TauBench) plus custom regression…
git:20260919.9f2a908 · audit A · 52 stars
agent-guardrails SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-guardrails/SKILL.md · Layered agent safety — prompt-injection defense, data exfiltration prevention, tool-misuse blocking via NeMo Guardrails…
git:20260919.9f2a908 · audit B · 52 stars
agent-manager SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-manager/SKILL.md · tmux + Python agent lifecycle manager — start, stop, monitor, and assign tasks to AI agents running in tmux sessions…
v1.0 · audit A · 52 stars
agent-memory-architecture SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-memory-architecture/SKILL.md · Design tiered agent memory — core / recall / archival — with backend selection (mem0, Letta, Zep/Graphiti, LangMem) and…
git:20260919.9f2a908 · audit A · 52 stars
agent-observability SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-observability/SKILL.md · Instrument LLM agents with traces, metrics, and replay. Use when an agent in production is silently failing…
git:20260919.9f2a908 · audit A · 52 stars
agent-principles SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-principles/SKILL.md · Core principles for collaborative development with AI agents. Defines divide-and-conquer, context management…
v2.0.0 · audit A · 52 stars
agent-pulse SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-pulse/SKILL.md · Operate and extend barretlee/agent-pulse, the evidence-backed AI industry intelligence system: inspect source catalog…
v1.0 · audit A · 52 stars
agent-reach SKILL.md skill
akillness/jeo-skills · .agent-skills/agent-reach/SKILL.md · Operate Panniantong/Agent-Reach, the MIT-licensed installer, doctor, and routing layer for platform-specific internet…
v1.0.0 · audit A · 52 stars

Every file in akillness/jeo-skills

Other files named migrate-to-shoehorn

migrate-to-shoehorn SKILL.md skill
vinvcn/mattpocock-skills-zh-cn · skills/misc/migrate-to-shoehorn/SKILL.md · 将测试文件从 `as` 类型断言迁移到 @total-typescript/shoehorn。适用于用户提到 shoehorn、想替换测试中的 `as`,或需要局部测试数据时。
git:20261008.5be0dc1 · audit A · 5,611 stars
migrate-to-shoehorn SKILL.md skill
mxyhi/ok-skills · migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260427.26d456f · audit A · 510 stars
migrate-to-shoehorn SKILL.md skill
asymmetric-al/core · .agents/skills/migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260430.3022c5f · audit A · 370 stars
migrate-to-shoehorn SKILL.md skill
rudycity/superagent · .agents/skills/migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260626.019dba9 · audit A · 64 stars
migrate-to-shoehorn SKILL.md skill
vodailocz/kilo-kit-mcp · skills/productivity/migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260821.05c0d52 · audit A · 27 stars
migrate-to-shoehorn SKILL.md skill
mambo-wang/codewiki-plus · .trae/skills/migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260916.5a385b8 · audit A · 21 stars
migrate-to-shoehorn SKILL.md skill
mambo-wang/codewiki-plus · .codebuddy/skills/migrate-to-shoehorn/SKILL.md · Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to…
git:20260916.5a385b8 · audit A · 21 stars
migrate-to-shoehorn SKILL.md skill
shumingyang-opencode/mattpocock-skills-zh-tw · skills/misc/migrate-to-shoehorn/SKILL.md · 將測試檔案從 `as` 型別斷言遷移到 @total-typescript/shoehorn。當使用者提到 shoehorn、想在測試中取代 `as`,或需要部分測試資料時使用。
git:20260806.5bfe60b · audit A · 4 stars

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