refactor-module — скилл для Claude Code: разбор Terraform на модули
Скилл превращает монолитную конфигурацию Terraform в переиспользуемые модули с понятными переменными и выводами. Пригодится, когда один main.tf разросся и его страшно трогать.
npx skills add hashicorp/agent-skills --skill refactor-module -a claude-codeЧто делает refactor-module
Скилл анализирует существующий код Terraform и разбирает его на модули по принципам дизайна HashiCorp. Сначала идёт фаза анализа: агент группирует ресурсы по логическим функциям, ищет повторяющиеся паттерны, строит карту зависимостей и оценивает сложность переноса состояния. Потом проектируется интерфейс модуля — переменные с валидацией и выходные значения.
Дальше код переписывается: вместо россыпи однотипных ресурсов появляются for_each, locals и корневая конфигурация, которая вызывает модуль через source. Отдельный шаг — миграция состояния: перед блоками moved и командами state mv агент смотрит текущее состояние через terraform state list и terraform show -json, чтобы сопоставить старые адреса ресурсов с новыми. Тут и главный риск: если адреса не сойдутся, terraform plan покажет удаление и создание ресурсов вместо переноса.
На вход скилл берёт путь к конфигурации, имя модуля и флаг сохранения совместимости состояния. Уровень абстракции выбирается из «simple», «intermediate» и «advanced», по умолчанию стоит intermediate. Нужен доступ к состоянию и понимание зависимостей между ресурсами — без этого миграцию не спланировать.
Какие задачи решает
- разбить разросшийся
main.tfна модули с чёткими границами - вынести повторяющиеся блоки ресурсов в один модуль с
for_each - описать переменные и выводы модуля как контракт
- спланировать перенос существующего состояния без пересоздания ресурсов
- отделить связанные по жизненному циклу ресурсы от сквозных задач вроде тегирования
Примеры запросов агенту
- разбери конфигурацию в
./infraна модульvpc, состояние сохрани - вынеси подсети и интернет-шлюз в модуль
network, уровень абстракции advanced - спланируй миграцию состояния для нового модуля и покажи блоки
moved
Как установить refactor-module
1Через Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill refactor-module -a claude-code2Вручную: положить файлы
~/.claude/skills/refactor-module/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/refactor-module/
1Через Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill refactor-module -a codex2Вручную: положить файлы
.agents/skills/refactor-module/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill refactor-module -a cursor2Вручную: положить файлы
.cursor/skills/refactor-module/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install hashicorp/agent-skills refactor-module2Вручную: положить файлы
.github/skills/refactor-module/SKILL.md1Через Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill refactor-module -a gemini-cli2Командой платформы
gemini skills install https://github.com/hashicorp/agent-skills --path plugins/terraform/skills/refactor-moduleВручную: положить файлы
.devin/skills/refactor-module/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add hashicorp/agent-skills --skill refactor-module -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о refactor-module
Как установить refactor-module в Claude?
Выполните npx skills add hashicorp/agent-skills --skill refactor-module -a claude-code. Скилл окажется в ~/.claude/skills/refactor-module/SKILL.md.
Что делает refactor-module?
Разбирает монолитную конфигурацию Terraform на модули: проектирует переменные и выводы, переписывает ресурсы и планирует миграцию состояния.
Что нужно для работы скилла?
Существующая конфигурация Terraform, доступ к состоянию через terraform state list и terraform show -json, а также понимание зависимостей между ресурсами.