---
name: "Apply repeatable JavaScript and TypeScript codemods across large codebases with jscodeshift"
slug: "apply-repeatable-javascript-and-typescript-codemods-across-large-codebases-with-jscodeshift"
description: "Use jscodeshift when an agent needs AST-based JavaScript or TypeScript codemods for bulk migrations, API rewrites, and large refactors with reviewable diffs."
github_stars: 9983
verification: "listed"
source: "https://github.com/facebook/jscodeshift"
author: "Meta"
publisher_type: "organization"
category: "Code Quality & Review"
framework: "Multi-Framework"
tool_ecosystem:
  github_repo: "facebook/jscodeshift"
  github_stars: 9983
  npm_package: "jscodeshift"
  npm_weekly_downloads: 27093990
---

# Apply repeatable JavaScript and TypeScript codemods across large codebases with jscodeshift

Use jscodeshift when an agent needs AST-based JavaScript or TypeScript codemods for bulk migrations, API rewrites, and large refactors with reviewable diffs.

## Prerequisites

Node.js, npm or pnpm, Git

## Installation

Use the upstream install or setup path that matches your environment:
- $ npm install -g jscodeshift
- make the transform more readable.
- To update docs in /docs, use npm run docs.
- To view these docs locally, use npx http-server ./docs

Requirements and caveats from upstream:
- const {run: jscodeshift} = require('jscodeshift/src/Runner')
- const path = require('node:path');
- An AST node is a plain JavaScript object with a specific set of fields, in

Basic usage or getting-started notes:
- Get jscodeshift from [npm](https://www.npmjs.com/package/jscodeshift):
- This will install the runner as jscodeshift.
- ## VSCode Debugger

- Source: https://github.com/facebook/jscodeshift
- Extracted from upstream docs: https://raw.githubusercontent.com/facebook/jscodeshift/HEAD/README.md

## Documentation

- https://jscodeshift.com

## Source

- [Agent Skill Exchange](https://agentskillexchange.com/skills/apply-repeatable-javascript-and-typescript-codemods-across-large-codebases-with-jscodeshift/)
