AgentSkillsCN

sync-lint-docs

从文档中移除 ESLint/Prettier 自动强制执行的规则,以消除重复项。通常在修改 ESLint/Prettier 配置后使用。在仅对文档进行修改,或进行代码实现时,则不宜使用此功能。

SKILL.md
--- frontmatter
name: sync-lint-docs
description: ESLint/Prettier で自動強制されているルールをドキュメントから削除し、重複を解消する。 ESLint/Prettier の設定を変更した後に使用する。 ドキュメントのみの変更時や、コード実装時には使用しない。
allowed-tools: Read, Edit, Glob, Grep

Lint/Docs同期

Use when

  • ESLint や Prettier の設定を変更した後
  • コーディングガイドラインと Lint ルールの重複を整理したい時

Don't use when

  • コード実装やレビュー(→ /implement, /tdd, /review)
  • ドキュメントの新規作成

進捗管理

スキル開始時に全ステップを TaskCreate で登録し、各ステップの開始・完了時に TaskUpdate で状態を更新すること。

タスク一覧:

  1. Step 1: 設定ファイル確認(activeForm: "設定ファイルを確認中")
  2. Step 2: 重複特定(activeForm: "重複を特定中")
  3. Step 3: 編集実行(activeForm: "ドキュメントを編集中")
  4. Step 4: 検証(activeForm: "編集結果を検証中")

ESLint/Prettierの設定とコーディングドキュメントを比較し、自動化されているルールをドキュメントから削除する。

対象ファイル

  • ESLint: apps/web/eslint.config.mjs
  • Prettier: .prettierrc
  • ドキュメント:
    • docs/coding-guidelines/*

実行手順

1. 設定ファイルの確認

ESLint設定を読み込み、有効なルールを抽出:

  • error で設定 → ドキュメントから削除候補
  • warn で設定 → ドキュメントから削除候補
  • off で設定 → ドキュメントに残す(推奨事項として価値あり)

2. 重複の特定

各ドキュメントを読み込み、以下の基準で重複を判定:

削除対象:

  • ルール名を直接言及している記述
  • ルールの内容を言い換えた記述(例: 「未使用の変数は削除すること」← no-unused-vars
  • Prettier が自動整形する内容(例: 「インデントは2スペース」← tabWidth: 2

削除しない:

  • ルールの理由・背景の説明
  • 例外ケースの説明
  • Lint で強制できない運用ルール

判定例

Before(ドキュメント):

  • const を優先、再代入が必要な場合のみ letvar は使用しない)
  • 厳密等価演算子(=== / !==)を使う
  • 変数名はキャメルケースで(チーム慣習として統一)

ESLint: no-var: error, eqeqeq: error

After:

  • 変数名はキャメルケースで(チーム慣習として統一)

no-vareqeqeq で強制される記述を削除。命名規約は Lint で強制できないため残す。

3. 編集実行

削除対象の記述をドキュメントから削除。空になったセクションも削除。

4. 検証

削除後のドキュメントを確認し、構造が崩れていないことを確認。

完了報告

code
## Lint/Docs 同期完了

### 削除した記述
| ファイル | 削除内容 | 根拠ルール |
|----------|----------|------------|
| {path} | {削除した記述} | {ESLint/Prettier ルール名} |

### 変更ファイル
- {ファイル一覧}

### 確認事項
- 構造崩れ: なし / あり(詳細)
- 理由・背景の保持: OK / NG(詳細)