Agent Skills: retype-cli

Refactors TypeScript codebases with AST-aware rename, extract, and reference finding. Use for moving functions between files, renaming across codebase, or finding all usages of a symbol.

UncategorizedID: knoopx/pi/retype

Install this agent skill to your local

pnpm dlx add-skill https://github.com/knoopx/pi/tree/HEAD/agent/skills/retype

Skill Files

Browse the full folder contents for retype.

Download Skill

Loading file tree…

agent/skills/retype/SKILL.md

Skill Metadata

Name
retype
Description
Refactors TypeScript codebases with AST-aware rename, extract, and reference finding. Use for moving functions between files, renaming across codebase, or finding all usages of a symbol.

retype-cli

TypeScript refactoring built on ts-morph. AST-aware — safe renames, extractions, and reference finding across the entire codebase.

Finding Symbols

Search for functions, classes, or types:

bunx retype-cli search linearGraphQL -p ./src --list
bunx retype-cli search "create.*Component" --regex -p ./src --list
bunx retype-cli search myFunction --body -p ./src   # Show code body

Finding References

See every usage of a symbol:

bunx retype-cli references linearGraphQL -p ./src --list
bunx retype-cli references linearGraphQL -p ./src --list --all  # Don't truncate

Renaming

Preview changes before applying:

bunx retype-cli rename oldName newName -p ./src --preview
bunx retype-cli rename oldName newName -p ./src --yes   # Apply without confirmation
bunx retype-cli rename oldName newName -p ./src --exact --yes  # Exact match only

Extracting to New Files

Move a symbol to a different file, updating all imports automatically:

bunx retype-cli extract linearGraphQL ./src/api/linear.ts -p ./src --yes

Fixing Imports & Finding Unused Exports

bunx retype-cli fix-imports -p ./src        # Fix missing imports
bunx retype-cli unused -p ./src --list      # Find unused exports

Typical Workflow: Extract a Module

  1. Find the function: bunx retype-cli search linearGraphQL -p ./src --list
  2. Check references: bunx retype-cli references linearGraphQL -p ./src --list
  3. Extract to new file: bunx retype-cli extract linearGraphQL ./src/api/linear.ts -p ./src --yes
  4. Verify with typecheck

Typical Workflow: Rename Across Codebase

  1. Preview changes: bunx retype-cli rename createComponent createWidget -p ./src --preview
  2. Apply: bunx retype-cli rename createComponent createWidget -p ./src --yes