All skills
simota avatar

/shift

@e307415
by shingo imotasimota/agent-skills85 stars
15

Orchestrating migrations, upgrades, and modernization across frameworks, libraries, APIs, databases, and dependencies. Generates codemods, applies Strangler Fig, verifies equivalence, plans rollback.

Use this Skill: https://skilld.dev/gh/simota/agent-skills/shift

This session only. Nothing lands on disk.

referencenative-replacements.md

≈721 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Common Native Replacements

Snapshot of mainstream library → native API replacements (verified 2026-05). "Since" refers to first stable availability in the dominant runtime (browser baseline or Node.js LTS). Always confirm with caniuse / node --version against the target environment.

Library Native Alternative Since
moment.js / moment-timezone Temporal (Stage 4, ES2026) + Intl.DateTimeFormat Chrome/Edge 144 (2026-01), Firefox 139 (2025-05); Safari TP only — use @js-temporal/polyfill until Safari ships TC39
lodash.get Optional chaining (?.) ES2020 (all evergreen browsers, Node 14+)
lodash.cloneDeep structuredClone() Node 17+, Chrome 98, Firefox 94, Safari 15.4
lodash.groupBy Object.groupBy() / Map.groupBy() Baseline 2024 — Chrome 117, Firefox 119, Safari 17.4, Node 20.12+
lodash set ops (union/intersection/difference) Set.prototype.union/.intersection/.difference/.symmetricDifference/.isSubsetOf/.isSupersetOf/.isDisjointFrom ES2025 — Chrome 122, Safari 17, Firefox 127, Node 22+
lodash chain / iteration utilities Iterator helpers (.map/.filter/.take/.drop/.flatMap/.reduce) Baseline Newly Available 2025-03 — Chrome 122, Firefox 131, Safari 18.4, Node 22+
Promise.all over async iterables Array.fromAsync() Chrome 121, Firefox 115, Safari 16.4; Baseline Widely Available target 2026-07
uuid crypto.randomUUID() Node 19+, all evergreen browsers (Secure Context)
node-fetch / axios (simple cases) global fetch() Node 18+ (stable in 21+)
ws (WebSocket client) native WebSocket Node 22.4+ (stable)
glob fs.glob() / fs.promises.glob() Node 22+ (stable in 24)
path-to-regexp (route matching) URLPattern (global) Node 24+, Chrome 95, Safari 18, Firefox 142
dotenv --env-file flag Node 20+
ts-node / tsx (erasable syntax only) Built-in TypeScript stripping Node 24+ (default for .ts)
better-sqlite3 (embedded/prototype) node:sqlite Node 24+ (stable)
jest / mocha (simple suites) node:test + node:assert Node 20+ (stable)
chalk util.styleText() Node 21+ (stable in 22+)
classnames Template literals or clsx (smaller) Always
underscore Array methods (.map/.filter/.flat/.flatMap) ES2015+ / ES2019

Sources (verified 2026-05): TC39 Temporal, Node.js v26 docs, MDN Object.groupBy, web.dev Iterator helpers Baseline, Array.fromAsync feature explorer.

Source: SKILL.md on GitHub

1 warning13d4 checks · Risk SAFE
  • Gen Agent Trust Hub13d

    The 'shift' skill is a highly structured framework for orchestrating software migrations and modernization. It provides comprehensive documentation and automation strategies for framework jumps (React 19, Next.js 16, Svelte 5, Spring Boot 4), language transitions (JS to TS, Python 2 to 3), and database evolution. The skill emphasizes best practices like the Strangler Fig pattern, AST-based codemods, and behavioral equivalence testing. No malicious patterns, obfuscation, or unauthorized data access were detected; the skill proactively includes security advisories regarding compromised packages (e.g., the 2026 Axios supply chain alert) and promotes the use of official, trusted migration tools.

  • Socket13d

    1 alert: gptAnomaly

  • Snyk13d

    Risk: LOW · No issues

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at e307415. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 days ago.

Activeupdated 2 weeks ago

README badge

README badge for simota/agent-skills/shift