# 安全なリファクタ (safe-refactor)

> 振る舞いを保ったままコードを再構成し、構造変更の前後を同じ検証で挟みます。

- カテゴリ: [リファクタリング](https://www.myskills.tools/ja/categories/refactoring/)
- 提供元: コミュニティ · Julius Brussee
- リポジトリ: https://github.com/JuliusBrussee/caveman/tree/main/skills/safe-refactor (commit 82864c8)
- SKILL.md: https://github.com/JuliusBrussee/caveman/blob/main/skills/safe-refactor/SKILL.md
- インストールコマンド: `npx skills add JuliusBrussee/caveman --skill safe-refactor`
- ライセンス: Apache-2.0
- 対応ツール: Claude Code, Codex, Gemini CLI
- 権限: read-repo ✓, write-files ✓, shell ✓, network ✗
- 状態: スキャン済み
- ルールスキャンですべてのリスクを検出できるわけではありません。インストール前にこのスキルの SKILL.md を読み、権限を確認してください。

## 基本ルール

構造を変更する前に、振る舞いを保つ範囲を定め、検証手段を用意します。

## 実行フェーズ

1. **範囲と検証の確立** — 保つべき振る舞いを定め、編集前に検証方法を用意します。機能変更はリファクタに含めません。
2. **境界を一つずつ移動** — 責任範囲は一度に一つだけ移し、途中の状態もビルド・テスト可能に保ちます。
3. **インターフェース維持** — 範囲に明記されない限り、公開インターフェース、失敗時の挙動、順序、互換性を保ち、必要のない依存や設定は増やしません。
4. **同じ検証を再実行** — 変更後に同じ検証を実行し、振る舞いが一致し求める構造になったら終了します。

## 権限の説明（SKILL.md より）

| 機能 | 必要か | 説明 |
|---|---|---|
| ファイル書き込み | 必要 | リファクタの範囲内でコード構造を変更します。 |
| コマンド実行 | 一部で必要 | 振る舞いが変わらないことを示すビルドとテストのコマンドを実行します。 |
| 外部通信 | 不要 | スキルはネットワークアクセスを求めていません。 |

## SKILL.md のフロントマター（YAML）

```yaml
---
name: safe-refactor
description: Restructure code while preserving behavior. Use for extraction, consolidation, ownership moves, or cleanup where verification must bracket structural edits.
---
```

ホーム: https://www.myskills.tools/ja/ · URL: https://www.myskills.tools/ja/skills/safe-refactor/
