retype

SKILL.md

retype-cli

TypeScript refactoring CLI built on ts-morph. AST-aware, safe refactoring.

Commands

Command Purpose
search Find entities (functions, classes, types)
rename Rename entity across all files
extract Move entity to different file
references Find all usages of an entity
unused Find unused exports
fix-imports Fix missing imports

Search

# Find function by name
bunx retype-cli search linearGraphQL -p ./src --list

# Find exported functions only
bunx retype-cli search --kind function --exported -p ./src --list

# Find by regex pattern
bunx retype-cli search "create.*Component" --regex -p ./src --list

# Show code body
bunx retype-cli search myFunction --body -p ./src

References

# Find all usages of a function
bunx retype-cli references linearGraphQL -p ./src --list

# Show all references (not truncated)
bunx retype-cli references linearGraphQL -p ./src --list --all

Rename

# Rename with preview (dry run)
bunx retype-cli rename oldName newName -p ./src --preview

# Rename without confirmation
bunx retype-cli rename oldName newName -p ./src --yes

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

Extract

Move entity to a different file, updating all imports automatically.

# Extract function to new file
bunx retype-cli extract linearGraphQL ./src/api/linear.ts -p ./src --yes

# Interactive extraction
bunx retype-cli extract myHelper ./src/utils/helpers.ts -p ./src

Fix Imports

# Find and fix missing imports
bunx retype-cli fix-imports -p ./src

Unused Exports

# Find unused exported entities
bunx retype-cli unused -p ./src --list

Common Workflows

Extract API to separate module

# 1. Find the function
bunx retype-cli search linearGraphQL -p ./src --list

# 2. Check current references
bunx retype-cli references linearGraphQL -p ./src --list

# 3. Extract to new file (updates all imports)
bunx retype-cli extract linearGraphQL ./src/api/linear.ts -p ./src --yes

# 4. Verify
bun run typecheck

Rename across codebase

# 1. Preview changes
bunx retype-cli rename createComponent createWidget -p ./src --preview

# 2. Apply changes
bunx retype-cli rename createComponent createWidget -p ./src --yes

Clean up unused exports

# 1. Find unused
bunx retype-cli unused -p ./src --list

# 2. Review and remove manually

Options

Option Description
-p, --path Project root path
-c, --config Path to tsconfig.json
--list Output as simple list
--yes Skip confirmation
--preview Dry run (rename only)
--exact Exact match (rename only)
--all Show all results (references)

vs ast-grep

Task retype-cli ast-grep
Rename symbol ✅ Best ⚠️ Manual
Extract to file ✅ Best ❌ No
Update imports ✅ Auto ⚠️ Manual
Find references ✅ Best ✅ Good
Pattern-based search ⚠️ Limited ✅ Best
Multi-language ❌ TS only ✅ Many
Complex rewrites ❌ No ✅ Best

Use retype-cli for: TypeScript refactoring (rename, move, extract) Use ast-grep for: Pattern matching, multi-language, complex rewrites

Weekly Installs
10
Repository
knoopx/pi
GitHub Stars
16
First Seen
Feb 27, 2026
Installed on
cline10
github-copilot10
codex10
kimi-cli10
gemini-cli10
cursor10