fp-refactor – Coding skill for AI agents
Comprehensive guide for refactoring imperative TypeScript code to fp-ts functional patterns
Install the fp-refactor skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/fp-refactor-bf8ee.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /fp-refactor – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/fp-refactor-bf8ee.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $fp-refactor – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/fp-refactor-bf8ee.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /fp-refactor – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/fp-refactor-bf8ee.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /fp-refactor – then describe the task you want done.
SKILL.md content
Refactoring Imperative Code to fp-ts
This skill provides comprehensive patterns and strategies for migrating existing imperative TypeScript code to fp-ts functional programming patterns.
Detailed Guide
Read [the detailed guide](references/detailed-guide.md) before executing this skill. It retains the complete procedure and reference material. Treat its safety, prerequisites, and validation requirements as mandatory. For focused work, load the relevant sections; for end-to-end work, read the guide completely.
When to Use
- You are refactoring an existing imperative TypeScript codebase toward fp-ts patterns.
- The task involves converting
try/catch, null checks, callbacks, DI, or loops into functional equivalents. - You need migration guidance and tradeoffs, not just isolated fp-ts examples.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Related skills
- fp-taskeither-ref – Quick reference for TaskEither. Use when user needs async error handling, API calls, or…
- fp-ts-errors – Handle errors as values using fp-ts Either and TaskEither for cleaner, more predictable…
- fp-ts-pragmatic – A practical, jargon-free guide to fp-ts functional programming - the 80/20 approach that…
- fp-ts-react – Practical patterns for using fp-ts with React - hooks, state, forms, data fetching. Use…
- framework-migration-code-migrate – You are a code migration expert specializing in transitioning codebases between…
- framework-migration-deps-upgrade – You are a dependency management expert specializing in safe, incremental upgrades of…
- self-eval – Honestly evaluate AI work quality using a two-axis scoring system. Use after completing…
- frontend-architecture – A portable, framework-agnostic architecture style for any React or React Native…